painter  
| Vars | |
| module_list | List of any instanced /datum/painter's, to avoid spawning more than one of each. | 
|---|---|
| painter_icon_list | Associative list of painter types, with the value being the icon. (For use in the radial menu) | 
| painter_type_list | Associative list of painter types, with the value being the datum. (For use in the radial menu) | 
| selected_module | The /datum/painter which is currently active. | 
| Procs | |
| CtrlClick | Displays a radial menu for choosing a new painter module. | 
| afterattack__legacy__attackchain | If adjacent, calls paint_atom()on theselected_module, then plays theusesound. | 
| attack_self__legacy__attackchain | Calls pick_color()on theselected_module. | 
| change_module | Changes the selected_modulevariable tonew_module, and updates the painter to reflect the new type. | 
Var Details
module_list  
List of any instanced /datum/painter's, to avoid spawning more than one of each.
painter_icon_list  
Associative list of painter types, with the value being the icon. (For use in the radial menu)
painter_type_list  
Associative list of painter types, with the value being the datum. (For use in the radial menu)
selected_module  
The /datum/painter which is currently active.
Proc Details
CtrlClick
Displays a radial menu for choosing a new painter module.
afterattack__legacy__attackchain
If adjacent, calls paint_atom() on the selected_module, then plays the usesound.
attack_self__legacy__attackchain
Calls pick_color() on the selected_module.
change_module
Changes the selected_module variable to new_module, and updates the painter to reflect the new type.
If new_module is already present in module_list, then that will be used instead.
Otherwise a new datum will be spawned and added to module_list.
The Name, Description, Icon State, and Item State of the painter will be updated using variables from the new_module datum.
Arguments:
- datum/painter/new_module - The new painter datum which will be used.
- mob/user - The user interacting with the painter.