/datum/component/shimmy_around
A component to act on the signal COMSIG_STRUCTURE_COLLIDED to shimmy around a dense structure NOTE: If any part of the Collided proc chain is overriden from obj/structure you must ensure the signal is sent
Vars | |
additional_offset | Whether to adjust the offset using the structure's offset as well |
---|---|
approach_dirs | Approachable directions bitfield |
approach_dirs_layer_override | Approach directions bitfield that override the mob's layer to be above our structure's |
east_offset | The pixel_y offset when approaching and facing EAST |
extra_delay | Extra time added to next_move to shimmy around |
north_offset | The pixel_x offset when approaching and facing NORTH |
parent_structure | The structure that we are bound to |
south_offset | The pixel_x offset when approaching and facing SOUTH |
west_offset | The pixel_y offset when approaching and facing WEST |
Procs | |
can_move | Determines whether the user can move to some turf relative to us |
on_collide | Signal handler for COMSIG_STRUCTURE_COLLIDED to start a shimmy |
on_mob_move | Signal handler for COMSIG_MOVABLE_MOVED to reset their pixel offsets |
on_mob_pre_move | Signal handler for COMSIG_MOVABLE_PRE_MOVE to prevent movement into us |
on_mob_shimmy_layer | Signal handler for COMSIG_LIVING_SHIMMY_LAYER to prevent layer reset from another shimmy component |
Var Details
additional_offset
Whether to adjust the offset using the structure's offset as well
approach_dirs
Approachable directions bitfield
approach_dirs_layer_override
Approach directions bitfield that override the mob's layer to be above our structure's
east_offset
The pixel_y offset when approaching and facing EAST
extra_delay
Extra time added to next_move to shimmy around
north_offset
The pixel_x offset when approaching and facing NORTH
parent_structure
The structure that we are bound to
south_offset
The pixel_x offset when approaching and facing SOUTH
west_offset
The pixel_y offset when approaching and facing WEST
Proc Details
can_move
Determines whether the user can move to some turf relative to us
on_collide
Signal handler for COMSIG_STRUCTURE_COLLIDED to start a shimmy
on_mob_move
Signal handler for COMSIG_MOVABLE_MOVED to reset their pixel offsets
on_mob_pre_move
Signal handler for COMSIG_MOVABLE_PRE_MOVE to prevent movement into us
on_mob_shimmy_layer
Signal handler for COMSIG_LIVING_SHIMMY_LAYER to prevent layer reset from another shimmy component