deadchat_control
Deadchat Plays Things - The Componenting
Allows deadchat to control stuff and things by typing commands into chat. These commands will then trigger callbacks to execute procs!
Vars | |
ckey_to_cooldown | Assoc list of ckey:value pairings. In DEMOCRACY_MODE, value is the player's vote. In ANARCHY_MODE, value is world.time when their cooldown expires. |
---|---|
deadchat_mode | A bitfield containing the mode which this component uses (DEMOCRACY_MODE or ANARCHY_MODE) and other settings) |
generated_point_of_interest | Set to true if a point of interest was created for an object, and needs to be removed if deadchat control is removed. Needed for preventing objects from having two points of interest. |
input_cooldown | In DEMOCRACY_MODE, this is how long players have to vote on an input. In ANARCHY_MODE, this is how long between inputs for each unique player. |
inputs | Assoc list of key-chat command string, value-callback pairs. list("right" = CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(_step), src, EAST)) |
on_removal | Callback invoked when this component is Destroy()ed to allow the parent to return to a non-deadchat controlled state. |
orbiters | List of everything orbitting this component's parent. |
timerid | The id for the DEMOCRACY_MODE looping vote timer. |
Procs | |
async_handle_vv_topic | Async proc handling the alert input and associated logic for an admin removing this component via the VV dropdown. |
end_cooldown | Removes the ghost from the ckey_to_cooldown list and lets them know they are free to submit a command for the parent again. |
handle_vv_topic | Allows for this component to be removed via a dedicated VV dropdown entry. |
on_examine | Informs any examiners to the inputs available as part of deadchat control, as well as the current operating mode and cooldowns. |
waive_automute | Prevents messages used to control the parent from counting towards the automute threshold for repeated identical messages. |
Var Details
ckey_to_cooldown
Assoc list of ckey:value pairings. In DEMOCRACY_MODE, value is the player's vote. In ANARCHY_MODE, value is world.time when their cooldown expires.
deadchat_mode
A bitfield containing the mode which this component uses (DEMOCRACY_MODE or ANARCHY_MODE) and other settings)
generated_point_of_interest
Set to true if a point of interest was created for an object, and needs to be removed if deadchat control is removed. Needed for preventing objects from having two points of interest.
input_cooldown
In DEMOCRACY_MODE, this is how long players have to vote on an input. In ANARCHY_MODE, this is how long between inputs for each unique player.
inputs
Assoc list of key-chat command string, value-callback pairs. list("right" = CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(_step), src, EAST))
on_removal
Callback invoked when this component is Destroy()ed to allow the parent to return to a non-deadchat controlled state.
orbiters
List of everything orbitting this component's parent.
timerid
The id for the DEMOCRACY_MODE looping vote timer.
Proc Details
async_handle_vv_topic
Async proc handling the alert input and associated logic for an admin removing this component via the VV dropdown.
end_cooldown
Removes the ghost from the ckey_to_cooldown list and lets them know they are free to submit a command for the parent again.
handle_vv_topic
Allows for this component to be removed via a dedicated VV dropdown entry.
on_examine
Informs any examiners to the inputs available as part of deadchat control, as well as the current operating mode and cooldowns.
waive_automute
Prevents messages used to control the parent from counting towards the automute threshold for repeated identical messages.
Arguments: