# Client Actor Usage Guide The client actor addon owns the player interaction menu and client-side actor repository. It is the main launcher for nearby player actions and other Forge client UIs. ## Open the Actor Menu ```sqf call forge_client_actor_fnc_openUI; ``` The actor menu opens `RscActorMenu`, loads `ui/_site/index.html`, and routes browser alerts through `forge_client_actor_fnc_handleUIEvents`. ## Repository `forge_client_actor_fnc_initRepository` creates `GVAR(ActorRepository)`. The repository: - requests actor initialization from the server - saves actor state through the server actor addon - caches client-visible actor fields - applies position, direction, stance, rank, and loadout on JIP sync when the relevant settings allow it - provides nearby interaction actions to the browser UI Initialize actor state through the repository: ```sqf GVAR(ActorRepository) call ["init", []]; ``` Save actor state through the server: ```sqf GVAR(ActorRepository) call ["save", [true]]; ``` ## Nearby Actions The menu asks for nearby actions with: ```text actor::get::actions ``` The repository scans objects within 5 meters and returns actions based on mission object variables:
Variable Action
storeType store
isAtm ATM
isBank bank
isGarage garage
garageType garage subtype
isLocker virtual arsenal action when VA is enabled
deviceType device action placeholder
nearby player unit player interaction placeholder
The response is pushed into the browser with `updateAvailableActions(...)`. ## Browser Events
Event Client behavior
actor::get::actions Refresh nearby actions.
actor::close::menu Close actor menu.
actor::open::atm Open bank UI in ATM mode.
actor::open::bank Open bank UI in bank mode.
actor::open::cad Open CAD UI.
actor::open::garage Open garage UI.
actor::open::vgarage Open virtual garage.
actor::open::org Open organization UI.
actor::open::vlocker Open ACE arsenal on FORGE_Locker_Box .
actor::open::phone Open phone UI.
actor::open::store Open store UI.
Device and player interaction events currently display placeholder feedback. ## Authoritative State Actor persistence is server-owned. The client repository requests and displays actor data, but actor creation, durable updates, and hot-state behavior are handled by the server actor addon and extension. ## Related Guides - [Actor Usage Guide](/server-modules/actor) - [Client Bank Usage Guide](/client-addons/bank) - [Client CAD Usage Guide](/client-addons/cad) - [Client Garage Usage Guide](/client-addons/garage) - [Client Locker Usage Guide](/client-addons/locker) - [Client Organization Usage Guide](/client-addons/organization) - [Client Phone Usage Guide](/client-addons/phone) - [Client Store Usage Guide](/client-addons/store)