client_colour
Client Colour Priority System By RemieRichards (then refactored by another contributor) A System that gives finer control over which client.colour value to display on screen so that the "highest priority" one is always displayed as opposed to the default of "whichever was set last is displayed".
Refactored to allow multiple overlapping client colours (e.g. wearing blue glasses under a yellow visor, even though the result is a little unsatured.) As well as some support for animated colour transitions.
Define subtypes of this datum
Vars | |
colour | Any client.color-valid value |
---|---|
fade_in | IF non-zero, 'animate_client_colour(fade_in)' will be called instead of 'update_client_colour' when added. |
fade_out | Same as above, but on removal. |
override | Will this client_colour prevent ones of lower priority from being applied? |
owner | The mob that owns this client_colour. |
priority | We prioritize colours with higher priority (lower numbers), so they don't get overriden by less important ones: eg: "Bloody screen" > "goggles colour" as the former is much more important |
Procs | |
update_colour | Sets a new colour, then updates the owner's screen colour. |
Var Details
colour
Any client.color-valid value
fade_in
IF non-zero, 'animate_client_colour(fade_in)' will be called instead of 'update_client_colour' when added.
fade_out
Same as above, but on removal.
override
Will this client_colour prevent ones of lower priority from being applied?
owner
The mob that owns this client_colour.
priority
We prioritize colours with higher priority (lower numbers), so they don't get overriden by less important ones: eg: "Bloody screen" > "goggles colour" as the former is much more important
Proc Details
update_colour
Sets a new colour, then updates the owner's screen colour.