Commit Graph

4 Commits

Author SHA1 Message Date
PsiOmegaDelta
6089ccccea Makes events global.
Greatly decreases the number of objects that need to be created (currently 3 event handlers in total vs basically 3 per datum)
The price is a slower lookup of listeners but on a per round basis it should still be much less than the current startup time penalty.
2016-01-26 13:12:37 +01:00
PsiOmegaDelta
7d7aa4b50b Turns events into vars instead of a list, to greatly simplify qdel() cleanup. 2015-12-14 13:44:05 +01:00
PsiOmegaDelta
3d0417d622 Corrects and adds more sanity checking. 2015-11-15 14:45:36 +01:00
PsiOmegaDelta
7484385e0d Adds hacking tool.
In normal mode a hacking tool acts and functions just like any multitool. Use a screwdriver to toggle between normal and hacking mode.
Hacking attempts will take 20 +(0 to 20) seconds (triangular distribution, averages at +10 seconds).
Once an airlock has been successfully hacked the user will have full access to the door operation interface normally restricted to silicons.

A hacking tool will remember the last 6 to 8 hacked airlocks.  No time is needed to again hack remembered airlocks.
Once the limit has been reached the least recently accessed airlock is forgotten. Hacking a remembered airlock will update the last accessed time.

Also adds a basic observer/listener pattern implementation to, for example, make it easier to catch when objects have been destroyed and clear references.
2015-11-13 21:59:56 +01:00