mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-29 11:31:38 +00:00
Merge pull request #9101 from StarSmasher44/patch-3
Applies Icon Caching to battery racks, Fixed edition
This commit is contained in:
@@ -11,6 +11,7 @@
|
||||
icon_state = "gsmes"
|
||||
var/cells_amount = 0
|
||||
var/capacitors_amount = 0
|
||||
var/global/list/br_cache = null
|
||||
|
||||
/obj/machinery/power/smes/batteryrack/New()
|
||||
..()
|
||||
@@ -48,15 +49,26 @@
|
||||
/obj/machinery/power/smes/batteryrack/update_icon()
|
||||
overlays.Cut()
|
||||
if(stat & BROKEN) return
|
||||
|
||||
|
||||
if(!br_cache)
|
||||
br_cache = list()
|
||||
br_cache.len = 7
|
||||
br_cache[1] = image('icons/obj/power.dmi', "gsmes_outputting")
|
||||
br_cache[2] = image('icons/obj/power.dmi', "gsmes_charging")
|
||||
br_cache[3] = image('icons/obj/power.dmi', "gsmes_overcharge")
|
||||
br_cache[4] = image('icons/obj/power.dmi', "gsmes_og1")
|
||||
br_cache[5] = image('icons/obj/power.dmi', "gsmes_og2")
|
||||
br_cache[6] = image('icons/obj/power.dmi', "gsmes_og3")
|
||||
br_cache[7] = image('icons/obj/power.dmi', "gsmes_og4")
|
||||
|
||||
if (output_attempt)
|
||||
overlays += image('icons/obj/power.dmi', "gsmes_outputting")
|
||||
overlays += br_cache[1]
|
||||
if(inputting)
|
||||
overlays += image('icons/obj/power.dmi', "gsmes_charging")
|
||||
overlays += br_cache[2]
|
||||
|
||||
var/clevel = chargedisplay()
|
||||
if(clevel>0)
|
||||
overlays += image('icons/obj/power.dmi', "gsmes_og[clevel]")
|
||||
overlays += br_cache[3+clevel]
|
||||
return
|
||||
|
||||
|
||||
@@ -124,15 +136,15 @@
|
||||
if(stat & BROKEN) return
|
||||
|
||||
if (output_attempt)
|
||||
overlays += image('icons/obj/power.dmi', "gsmes_outputting")
|
||||
overlays += br_cache[1]
|
||||
if(inputting)
|
||||
overlays += image('icons/obj/power.dmi', "gsmes_charging")
|
||||
overlays += br_cache[2]
|
||||
if (overcharge_percent > 100)
|
||||
overlays += image('icons/obj/power.dmi', "gsmes_overcharge")
|
||||
overlays += br_cache[3]
|
||||
else
|
||||
var/clevel = chargedisplay()
|
||||
if(clevel>0)
|
||||
overlays += image('icons/obj/power.dmi', "gsmes_og[clevel]")
|
||||
overlays += br_cache[3+clevel]
|
||||
return
|
||||
|
||||
//This mess of if-elses and magic numbers handles what happens if the engies don't pay attention and let it eat too much charge
|
||||
|
||||
Reference in New Issue
Block a user