4 Commits
Author SHA1 Message Date
Leshana e74ebd9805 Use can_atmos_pass to reduce proc-calls in c_airblock()
- Add additional can_atmos_pass value ATMOS_PASS_PROC which indicates custom behavior requiring calling the CanZASPass proc.
  - The benefit being for the other three values we DON'T need to call CanZASPass at all!  We already know the behavior without the overhead of a proc call.
  - Obviously any atom with can_atmos_pass = ATMOS_PASS_PROC cannot now call ..() in CanZASPass() since the default behavior would be to (recursively) call CanZASPass()
  - This required re-numbering the constants, so I also fixed all code that assumed particular values for the constants.
- Switched all types which overrode CanZASPass with custom logic to be can_atmos_pass = ATMOS_PASS_PROC
- Changed /turf/c_airblock() to skip calling /atom/movable/c_airblock() for the three can_atmos_pass values that don't require calling the proc.
2020-05-04 13:47:52 -04:00
Leshana 35b7446a32 Fix return values of CanZASPass
- CanZASPass is supposed to return boolean.  Nobody noticed this bug because ATMOS_PASS_YES and ATMOS_PASS_NO happen to be defined as 1 and 0.  But thats not a good assumption to make, so lets fix it!
2020-05-04 13:47:08 -04:00
Neerti 76b077af4a Finishes seperating ZAS logic from CanPass(). 2019-02-10 01:46:38 -05:00
Neerti b571ed9c66 Continues work on the surface map 2017-03-21 16:11:13 -04:00