external
System for drawing organs with overlays. These overlays are drawn directly on the bodypart, attached to a person or not Works in tandem with the /datum/sprite_accessory datum to generate sprites Unlike normal organs, we're actually inside a persons limbs at all times
Vars | |
bodypart_overlay | The overlay datum that actually draws stuff on the limb |
---|---|
dna_block | With what DNA block do we mutate in mutate_feature() ? For genetics |
external_bodyshapes | Does this organ have any bodyshapes to pass to its bodypart_owner? |
external_bodytypes | Does this organ have any bodytypes to pass to its bodypart_owner? |
mutantpart_key | This is for associating an organ with a mutant bodypart. Look at tails for examples |
preference | The savefile_key of the preference this relates to. Used for the preferences UI. |
restyle_flags | Which flags does a 'modification tool' need to have to restyle us, if it all possible (located in code/_DEFINES/mobs) |
sprite_accessory_override | If not null, overrides the appearance with this sprite accessory datum |
use_mob_sprite_as_obj_sprite | Set to EXTERNAL_BEHIND, EXTERNAL_FRONT or EXTERNAL_ADJACENT if you want to draw one of those layers as the object sprite. FALSE to use your own This will not work if it doesn't have a limb to generate its icon with |
Procs | |
attempt_feature_restyle | Restyles the external organ from a list of valid options |
copy_to_mutant_bodyparts | Copies the organ's mutantpart_info to the owner's mutant_bodyparts |
get_valid_restyles | Helper proc to fetch a list of styles a player might want to restyle their features into during the round : returns list("Cabbage" = /datum/sprite_accessory/cabbage) |
mutate_feature | Update our features after something changed our appearance |
on_attempt_feature_restyle | Invoke async so we dont break signals |
simple_change_sprite | If you need to change an external_organ for simple one-offs, use this. Pass the accessory type : /datum/accessory/something |
transfer_mutantpart_info | Copies the mob's mutant_bodyparts data to an organ's mutantpart_info for consistency e.g. on organ removal |
Var Details
bodypart_overlay
The overlay datum that actually draws stuff on the limb
dna_block
With what DNA block do we mutate in mutate_feature() ? For genetics
external_bodyshapes
Does this organ have any bodyshapes to pass to its bodypart_owner?
external_bodytypes
Does this organ have any bodytypes to pass to its bodypart_owner?
mutantpart_key
This is for associating an organ with a mutant bodypart. Look at tails for examples
preference
The savefile_key of the preference this relates to. Used for the preferences UI.
restyle_flags
Which flags does a 'modification tool' need to have to restyle us, if it all possible (located in code/_DEFINES/mobs)
sprite_accessory_override
If not null, overrides the appearance with this sprite accessory datum
use_mob_sprite_as_obj_sprite
Set to EXTERNAL_BEHIND, EXTERNAL_FRONT or EXTERNAL_ADJACENT if you want to draw one of those layers as the object sprite. FALSE to use your own This will not work if it doesn't have a limb to generate its icon with
Proc Details
attempt_feature_restyle
Restyles the external organ from a list of valid options
copy_to_mutant_bodyparts
Copies the organ's mutantpart_info to the owner's mutant_bodyparts
get_valid_restyles
Helper proc to fetch a list of styles a player might want to restyle their features into during the round : returns list("Cabbage" = /datum/sprite_accessory/cabbage)
mutate_feature
Update our features after something changed our appearance
on_attempt_feature_restyle
Invoke async so we dont break signals
simple_change_sprite
If you need to change an external_organ for simple one-offs, use this. Pass the accessory type : /datum/accessory/something
transfer_mutantpart_info
Copies the mob's mutant_bodyparts data to an organ's mutantpart_info for consistency e.g. on organ removal