Daedalus Dock - Modules - TypesVar Details - Proc Details

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

colourAny client.color-valid value
fade_inIF non-zero, 'animate_client_colour(fade_in)' will be called instead of 'update_client_colour' when added.
fade_outSame as above, but on removal.
overrideWill this client_colour prevent ones of lower priority from being applied?
ownerThe mob that owns this client_colour.
priorityWe 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_colourSets 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.