_std/macros/matrix.dm
UNDO_TRANSFORMATION | Returns a matrix representing what you get if you undo a series of transformations that happened at some point in the past. |
---|
Define Details
UNDO_TRANSFORMATION
Returns a matrix representing what you get if you undo a series of transformations that happened at some point in the past.
Relies on the fact that no one resets the matrix in the meantime and also on the fact that the transformations are reversible.
Example:
var/matrix/orignal = matrix(src.transform)
src.transform = src.Transform.Turn(180)
var/matrix/after = matrix(src.transform)
sleep(10 SECONDS) // more transformations might happen here!
src.transform = UNDO_TRANSFORMATION(original, after, src.transform)