cyborg_customization 
Vars | |
| animation_image | Private native DMI carrier; its movement frames run on the chassis's client clock. |
|---|---|
| mask_image | The occlusion mask that cuts it, drawn only into its render target, null while there is none |
| occlusion_image | The chassis's own sprite viewers see above the parts, cut to its occlusion mask, null while there is none |
| owner | The borg whose parts we show |
| render_key | Everything the parts were last drawn from, so an update that changes none of it does nothing |
| render_layers | The part layers last built for the owner, null while none show - hidden or turned off |
Procs | |
| Destroy | Takes the occlusion, mask and motion map images back from every viewer |
| Initialize | Starts showing the parts to every player who opted in, now and as they log in, and follows the borg's transform |
| add_seer | Also shows a new viewer the occlusion, mask and motion map images, and stops showing them when they log out |
| build_animation | Pads the parts image for its displacement filter and returns the motion map image that drives it, or null. |
| generate_image | Returns the parts image - every layer placed, turned and scaled over the borg, kept together above it |
| on_changed_z_level | Redraws everything after a move to another z layer, as the parent only moves the parts image |
| on_owner_transform | Called when the borg's transform changes, and when it is tipped over or righted - redraws the parts from scratch |
| refresh_viewer | Shows or hides the parts for a player, by their preference |
| regenerate_image | Swaps in a new parts image, changed in place on viewers that already have one |
| remove_seer | Also takes the occlusion, mask and motion map images from a viewer |
| replace_image | Shows new_image to every seer in place of old_image. A seer keeps an image it already has, changed in place, so
turns, steps and poses cost no work per seer. Returns the image shown now, or null. |
| update_from_owner | Redraws the parts when the render key changed |
| update_occlusion | Shows viewers the chassis's own sprite above the parts, cut to its occlusion mask by an alpha filter, or takes it back while there is none |
| viewer_login | Called when a player logs in - shows them the parts if they opted in |
Var Details
animation_image 
Private native DMI carrier; its movement frames run on the chassis's client clock.
mask_image 
The occlusion mask that cuts it, drawn only into its render target, null while there is none
occlusion_image 
The chassis's own sprite viewers see above the parts, cut to its occlusion mask, null while there is none
owner 
The borg whose parts we show
render_key 
Everything the parts were last drawn from, so an update that changes none of it does nothing
render_layers 
The part layers last built for the owner, null while none show - hidden or turned off
Proc Details
Destroy
Takes the occlusion, mask and motion map images back from every viewer
Initialize
Starts showing the parts to every player who opted in, now and as they log in, and follows the borg's transform
add_seer
Also shows a new viewer the occlusion, mask and motion map images, and stops showing them when they log out
build_animation
Pads the parts image for its displacement filter and returns the motion map image that drives it, or null.
generate_image
Returns the parts image - every layer placed, turned and scaled over the borg, kept together above it
on_changed_z_level
Redraws everything after a move to another z layer, as the parent only moves the parts image
on_owner_transform
Called when the borg's transform changes, and when it is tipped over or righted - redraws the parts from scratch
refresh_viewer
Shows or hides the parts for a player, by their preference
regenerate_image
Swaps in a new parts image, changed in place on viewers that already have one
remove_seer
Also takes the occlusion, mask and motion map images from a viewer
replace_image
Shows new_image to every seer in place of old_image. A seer keeps an image it already has, changed in place, so
turns, steps and poses cost no work per seer. Returns the image shown now, or null.
update_from_owner
Redraws the parts when the render key changed
update_occlusion
Shows viewers the chassis's own sprite above the parts, cut to its occlusion mask by an alpha filter, or takes it back while there is none
viewer_login
Called when a player logs in - shows them the parts if they opted in