Fixes machines not gaining the NOPOWER flag after a power failure
because they were turned off and had use_power set to 0.
Fixes machines not gaining the NOPOWER flag after being moved into an
area with no power.
Both bugs allowed power using machines to be used in areas with no
power.
- First issue is power monitoring consoles showing slightly inaccurate values. The code calculated some sort of level average which resulted in stupid values being reported (like load 500kW available 300kW). This also fixes APC load partially showing as Other load on the console.
- Second fixed issue (Fixes#7869) resolved gamebreaking bug that caused total irreversible failure of all powernets if makepowernets() was called. This, for example, includes large enough explosions, via admin command, or few other cases.
- Changed SMES NanoUI Online/Offline switch to reflect the current state
it is set to
- UI now also displays it's output status:
- Outputting = SMES is switched online and outputting normally
- Not Outputting = SMES is switched to offline
- Stored energy too low = SMES is set to online but can't output because
it doesn't have enough charge
- This removes the dreaded wireless wires bug, which caused wires disconnected by explosions to actually still conduct power until powernet was manually updated.
- This also adresses issue with (on bay unused) singularity, which exhibits similar behavior when eating wires (wireless wires bug)
- RCON consoles ignored SMES I/O limits, meaning you could set SMES to charge/discharge at unlimited values.
- SMESs now properly trim the value when it is above maximal limit (or below 0)
- Also commented the code, while i was in it
- Completely reworks the powernet sensor system that i created.
- Code mostly refactored to nice properly commented one.
- Sensors now have (currently unused) proc for returning HTML encoded string (it's there if someone needs it) and (newly added) proc that returns assoc list of data.
- Thanks to previous, the console has been fully reworked to utilize NanoUI.
- This addresses most issues with old UI which was harder to use and somewhat buggy at specific situations (such as, showing lower load than suposed)
- This fixes bugged powernet warning system. Electrocution now properly triggers warning even when short-circuit is caused by gloved user
- However, there is small difference. Causing sparks but not taking damage triggers only 5 tick warning, instead of 20 tick one. 20 tick warning is triggered when injury is caused.
This modifies the APC NanoUI to show power usage during charging. This is done in form of Total Load: 1234W (+2500W Charging). Charging panel only shows when it's really charging.
APCs now track how much power is actually used for charging. This prevents APC charging from showing up as "Other Load" in power monitoring console.
- Adds CELLRATE (and SMESRATE for SMESs) into drain_power proc.
- Adds "amount" parameter to drain power proc, sets the powersink module to 40kW draw (80 cell charge/s), which should correspond with normal cell recharger.
- Removes drain_power from all machinery, and adds drain_power to machinery/power. This means you can only drain from machines that have something to do with wiring or electricity.
Computer boards are now in /code/game/objects/items/weapons/circuitboards/computer/.
Buildable machinery boards are in /code/game/objects/items/weapons/circuitboards/machinery/.
Everything else is just in /code/game/objects/items/weapons/circuitboards/.
The circuitboard parent definition is in /code/game/objects/items/weapons/circuitboards/circuitboard.dm.
Did some minor renaming and capitalization fixes on the boards.
Everything in game/machinery/computers/ and modules/shuttles should now have properly (de)capitalized names. Computer, board and research names should now be coherent, too. Adds a research for employment records circuit board.
Also moved RCON console board and SMES board where they belong. Formatted some board code and fixed some typos, too.
Cloning console renamed to Cloning Control Console.
The teleporter console is now called Teleporter Control Console.
The power monitor is now called Power Monitoring Console.
SMES board glass and acid construction price normalized (though other resources are still required; is that a good thing? It would be better to just introduce a new expensive part that is used to build it (if the coils aren't enough) rather than have a single board with atypical price.
- Allows remote control of SMES units and Breaker Boxes.
- Adds wires to SMES units. Wires may be cut/pulsed for various effects. Signallers are supported.
- RCON console(s) may be used to monitor the SMES units (which have RCON enabled) remotely, showing output loads and charge percentages.
- SMESs may be quickly discharged by cutting the grounding wire. This however comes with little risk of overload which may damage APCs on output powernet.
This should have little/no gameplay effect right now, just paving the
way for directional lights.
Replaced handle_rotation() on buckly things with this.
Signed-off-by: Mloc-Argent <colmohici@gmail.com>