Goonstation 13 - Modules - Types

code/modules/admin/spacebee_extension/command_structure.dm

/datum/spacebee_extension_commandA command for the Spacebee extension thing
/datum/spacebee_extension_command/state_basedFor commands with multiple states (several stages of entering inputs, confirmation dialogs etc.). Define a proc for each state and use go_to_state(new_state) to go to that state. When the user inputs their next command instead of being processed by the Spacebee extension system it will get processed by said state of this command.
/datum/spacebee_extension_command/state_based/confirmationFor dangerous commands that the user should really doublecheck. Override prepare to check the validity of the vars and return a message (or null to cancel). User will need to reply with ;;yes to continue at which point do_it gets called.