Power Code Cleanup + Conversion to Regional Powernets [Refactor Only] (#20598)

* initial edits

* more cleanup, yipee

* moving shit around

* dme fixes

* fixes file ticking issue

* more dme fixes + duplicate files???

* Apply suggestions from code review

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* glass floor fixes

* Apply suggestions from code review

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* requested reviews

* the most painful bugfix of my life

* forgot to remove some debug stuff

* fixed issues with excess power

* fuck powernets (fix)

* Update code/modules/power/powernets/README.md

Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>

---------

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>
Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
This commit is contained in:
Ryan
2023-05-31 20:55:10 -05:00
committed by GitHub
co-authored by Henri215 Contrabang SteelSlayer
parent 0541604174
commit 11717823df
60 changed files with 1604 additions and 1934 deletions
+9 -8
View File
@@ -11,6 +11,7 @@ SUBSYSTEM_DEF(machines)
var/list/processing = list()
var/list/currentrun = list()
/// All regional powernets (/datum/regional_powernet) in the world
var/list/powernets = list()
var/list/deferred_powernet_rebuilds = list()
@@ -27,15 +28,15 @@ SUBSYSTEM_DEF(machines)
.["custom"] = cust
/datum/controller/subsystem/machines/proc/makepowernets()
for(var/datum/powernet/PN in powernets)
for(var/datum/regional_powernet/PN in powernets)
qdel(PN)
powernets.Cut()
for(var/obj/structure/cable/PC in GLOB.cable_list)
if(!PC.powernet)
var/datum/powernet/NewPN = new()
NewPN.add_cable(PC)
propagate_network(PC,PC.powernet)
var/datum/regional_powernet/new_pn = new()
new_pn.add_cable(PC)
propagate_network(PC, PC.powernet)
/datum/controller/subsystem/machines/get_stat_details()
return "Machines: [processing.len] | Powernets: [powernets.len] | Deferred: [deferred_powernet_rebuilds.len]"
@@ -49,7 +50,7 @@ SUBSYSTEM_DEF(machines)
var/obj/O = currentrun[currentrun.len]
currentrun.len--
if(O && !QDELETED(O))
var/datum/powernet/newPN = new() // create a new powernet...
var/datum/regional_powernet/newPN = new() // create a new powernet...
propagate_network(O, newPN)//... and propagate it to the other side of the cable
deferred_powernet_rebuilds.Remove(O)
@@ -62,10 +63,10 @@ SUBSYSTEM_DEF(machines)
//cache for sanid speed (lists are references anyways)
var/list/currentrun = src.currentrun
while(currentrun.len)
var/datum/powernet/P = currentrun[currentrun.len]
var/datum/regional_powernet/P = currentrun[currentrun.len]
currentrun.len--
if(P)
P.reset() // reset the power state
P.process_power() // reset the power state
else
powernets.Remove(P)
if(MC_TICK_CHECK)
@@ -117,7 +118,7 @@ SUBSYSTEM_DEF(machines)
for(var/A in cables)
var/obj/structure/cable/PC = A
if(!PC.powernet)
var/datum/powernet/NewPN = new()
var/datum/regional_powernet/NewPN = new()
NewPN.add_cable(PC)
propagate_network(PC,PC.powernet)