by Kaiochao
CrossedOther, UncrossedOther, BumpedBy
Procs for the atom on the other side of Crossed, Uncrossed, and Bump.
This library overrides the following procs to work:
  • atom.Crossed(M) calls M.CrossedOther(atom)
  • atom.Uncrossed(M) calls M.UncrossedOther(atom)
  • movable.Bump(A) calls A.BumpedBy(movable)
If you override any of these procs, be sure to call ..() for the other side's effect to be called.

This library adds overrides to the base atomic types. Whenever any atom is crossed, uncrossed, or bumped, these procs are called, adding overhead to most movements.

Proc Description
atom/movable/CrossedOther(atom/other) src crossed other
atom/Crossed(atom/movable/mover) src was crossed by mover
atom/movable/UncrossedOther(atom/other) src uncrossed other
atom/Uncrossed(atom/movable/mover) src was uncrossed by mover
atom/movable/Bump(atom/other) src bumped other
atom/BumpedBy(atom/movable/mover) src was bumped by mover