Commit Graph

1416 Commits

Author SHA1 Message Date
Leshana 10b0323d6f 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-04-30 14:50:57 -04:00
Leshana 4a2e8bb0c4 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-04-30 14:50:57 -04:00
Aronai Sieyes b3c1cfd29d Merge pull request #7516 from VOREStation/upstream-merge-7045
[MIRROR] Removes limits on eating, centralizes nutrition changing.
2020-04-29 19:23:55 -04:00
Aronai Sieyes b9c6107f26 Merge pull request #7513 from VOREStation/upstream-merge-7038
[MIRROR] Rewrite examine() to pass a list around
2020-04-29 18:38:26 -04:00
Aronai Sieyes 874baa1d2d Merge examine refactor for vorestation 2020-04-29 17:49:54 -04:00
Atermonera c3537b01e9 Merge pull request #7046 from Neerti/system_3_fixes
Tweaks and fixes for the new new event system.
2020-04-29 17:27:57 -04:00
Atermonera f1cabd6742 Removes limits on eating, centralizes nutrition changing. 2020-04-29 17:15:15 -04:00
Aronai Sieyes 6ebd249748 Rewrite examine() to pass a list around 2020-04-29 16:42:50 -04:00
Aronai Sieyes 82a41c8d7a Merge pull request #7507 from VOREStation/aro-gravytopple
Refine gravity generator FSM
2020-04-29 14:13:57 -04:00
Aronai Sieyes 390943784c Refine gravity generator FSM 2020-04-29 13:10:44 -04:00
Aronai Sieyes 49f5a1c4ed Have gravity generator ignore /area/shuttle 2020-04-29 09:31:18 -04:00
Aronai Sieyes 57f28af1fd Prevent protean repairs using fire and cables
Doesn't make much sense
2020-04-27 11:18:03 -04:00
Aronai Sieyes 36022c95f1 VS: Refactor move code 2020-04-26 16:44:08 -04:00
Aronai Sieyes d3da6ae4a5 Refactor move code 2020-04-26 16:42:50 -04:00
Aronai Sieyes 667fbebbc7 Merge pull request #7406 from VOREStation/vplk-optimize-for-static-power
Optimize some machines for static power
2020-04-25 15:06:50 -04:00
Aronai Sieyes e802abcbdc Fix in-round built void core icon updating 2020-04-25 14:26:04 -04:00
Leshana 4c6e6bc04c Terminals do not need to process! global.machines is a separate list from processing_machines 2020-04-24 22:06:20 -04:00
Leshana 763753648b Implements "static" area machinery power usage
- Instead of using auto_use_power to re-tally up machinery's power usage every cycle, track the steady "static" load separately from the transient "oneoff" usage.  Machines then only need to inform the area when they use oneoff power or *change* their steady usage.
- Remove auto_use_power and stop SSmachines from calling it.
- Add vars to track "static" usage for each of the three power channels to /area
- Rename the existing three vars to "oneoff" so its clear what they mean (and to catch people accidentally updating them directly)
- Update area power procs and APCs to use the new variables.
- Rename /area/proc/use_power() to use_power_oneoff() to make it clear what it is doing.
- Deprecate /obj/machinery/use_power() in favor of use_power_oneoff() but don't delete yet.  Can transition gradually.
- Add logic to the update_power procs on machines to calculate the deltas and update static area power whenever their usage changes.
- Add logic to machines to update area power when they are created, destroyed, or move.
- Moved /obj/machinery procs related to area power usage into machinery_power.dm to make them easier to find.
- Added or updated comments in several places to explain what is going on and how to use it.
2020-04-23 19:04:34 -04:00
Leshana f80c320c0f VS machinery power update procs. 2020-04-22 20:47:16 -04:00
Leshana 9bd2347966 Fix remaining code that directly modified use_power to call update_use_power. 2020-04-22 20:47:15 -04:00
Leshana 93fb3f7865 Call update procs instead of directly setting idle_power_usage or active_power_usage.
- Adds the update_idle_power_usage() and update_active_power_usage() procs for the respective vars.
- Switches all places modifying those vars directly to call the procs instead.
- This will let us react to the change appropriately, paving the way towards static area power.
- Adds update_power_channel proc for the sake of completeness, but no machines actually modify it so far.
2020-04-22 20:47:15 -04:00
Atermonera 1e4f5aa80e Merge pull request #7009 from atlantiscze/2020_04_17_EPRFix
Fixes supermatter monitoring EPR indicator showing Undefined
2020-04-22 15:48:21 -04:00
Aronai Sieyes fabf5e630b Merge pull request #7374 from VOREStation/aro-pgenfixes
Fix some power issues
2020-04-22 01:45:05 -04:00
Unknown 36bdebef12 Uses original values 2020-04-22 01:25:34 -04:00
Aronai Sieyes 5cfe563b72 Power Fixes 2020-04-22 01:23:58 -04:00
Unknown 8d41fd5782 Fixes broken nuclear reactor sprite
Again.
Adjusts power numbers
Another tweak
Fixes Portable Generators
200k safe output
This is incredibly dumb
2020-04-22 00:53:20 -04:00
Aronai Sieyes d71b127cdb Add micro laser to ARTGs 2020-04-22 00:27:11 -04:00
Aronai Sieyes ace05634f5 Merge pull request #7354 from VOREStation/aro-tweaks
Smol Fixes
2020-04-20 19:39:47 -04:00
Aronai Sieyes 638686039f Re-fix gravity gen icon 2020-04-20 14:21:57 -04:00
Aronai Sieyes d1cdea22a9 Fix gravy gen area detection happening too early 2020-04-20 13:53:23 -04:00
Aronai Sieyes f8d387f136 Tweak gravity generator icon 2020-04-20 13:47:36 -04:00
Unknown c4160b35bb Master Branch Bugfixes 2020-04-20 10:53:34 -04:00
Aronai Sieyes 583472d42e Merge pull request #7343 from VOREStation/aro-gravitygen
Adds G R A V Y
2020-04-20 00:21:16 -04:00
Novacat c8d6d06fee Merge pull request #7335 from VOREStation/aro-paholo
Swap PA computer to cooler holo computer
2020-04-19 23:43:22 -04:00
Aronai Sieyes 1d22a745e4 Add Gravity Generator, place on tether, update events 2020-04-19 23:37:10 -04:00
Aronai Sieyes 15fc474520 Portable generators, RTGs, void cores 2020-04-19 21:42:13 -04:00
Aronai Sieyes 82b3ce3036 Swap PA computer to cooler holo computer 2020-04-19 12:47:14 -04:00
Heroman b72e727d89 Ports tg cablecoils instead of bay's 2020-04-15 14:38:51 +10:00
Unknown 929df3b1de Merge remote-tracking branch 'VOREStation/master' into nova-pathfinder 2020-04-14 22:23:34 -04:00
Unknown 23e95899a6 Adds nuclear reactor, Fixes
- Adds Nuclear Reactor, 200 kw safe power, very efficient fuel usage. Emits radiation, should be designed around accordingly.
- Adds Old point defense batteries which use the old sprite.
- Fixes path errors on cruiser.dmm
2020-04-14 22:10:53 -04:00
Aronai Sieyes 0ee956a2dc Port some power sprites from Bay 2020-04-12 17:48:54 -04:00
Atermonera 5c03273ce8 Merge pull request #6884 from Neerti/event_system_fix
Rewrites the Rewritten Event System
2020-04-06 16:23:39 -04:00
Atermonera d7a9416bb8 Clean up various things 2020-04-03 03:15:06 -04:00
Atermonera df77f1bcf2 Port Bay computer icons 2020-04-02 10:30:21 -04:00
Aronai Sieyes 2ea1802f68 Shove APCs and air alarms up on the wall a bit higher 2020-03-24 15:37:39 -04:00
Atermonera cbb40196fc Machinery: Always use update_use_power() 2020-03-23 23:21:10 -04:00
Novacat 90e6e1fea2 Update lighting.dm 2020-03-21 16:47:52 -04:00
Atermonera 9f250ce3c9 Emergency lighting 2020-03-21 16:39:36 -04:00
Aronai Sieyes f946ee065e Remove vorestation edit for APC sprite 2020-03-19 18:44:14 -04:00
Leshana 3e3241eeb2 Make area.gravitychange not require being passed a reference to... itself. (#6838) 2020-03-16 05:32:20 -04:00