diff --git a/code/game/objects/items/devices/suit_cooling.dm b/code/game/objects/items/devices/suit_cooling.dm index 0e87e867c5..d5baa6516b 100644 --- a/code/game/objects/items/devices/suit_cooling.dm +++ b/code/game/objects/items/devices/suit_cooling.dm @@ -2,8 +2,9 @@ name = "portable suit cooling unit" desc = "A portable heat sink and liquid cooled radiator that can be hooked up to a space suit's existing temperature controls to provide industrial levels of cooling." w_class = ITEMSIZE_LARGE - icon = 'icons/obj/device.dmi' + icon = 'icons/obj/suit_cooler.dmi' icon_state = "suitcooler0" + item_state = "coolingpack" slot_flags = SLOT_BACK //copied from tank.dm @@ -171,13 +172,32 @@ return ..() /obj/item/device/suit_cooling_unit/proc/updateicon() - if (cover_open) - if (cell) + cut_overlays() + if(cover_open) + if(cell) icon_state = "suitcooler1" else icon_state = "suitcooler2" - else - icon_state = "suitcooler0" + return + + icon_state = "suitcooler0" + + if(!cell || !on) + return + + switch(round(cell.percent())) + if(86 to INFINITY) + add_overlay("battery-0") + if(69 to 85) + add_overlay("battery-1") + if(52 to 68) + add_overlay("battery-2") + if(35 to 51) + add_overlay("battery-3") + if(18 to 34) + add_overlay("battery-4") + if(-INFINITY to 17) + add_overlay("battery-5") /obj/item/device/suit_cooling_unit/examine(mob/user) . = ..() @@ -218,7 +238,7 @@ /obj/item/device/suit_cooling_unit/emergency/attackby(obj/item/weapon/W as obj, mob/user as mob) if (W.is_screwdriver()) - to_chat(user, "This model has the cell permanently installed!") + to_chat(user, "This cooler's cell is permanently installed!") return return ..() diff --git a/icons/obj/suit_cooler.dmi b/icons/obj/suit_cooler.dmi new file mode 100644 index 0000000000..92f97ef8a6 Binary files /dev/null and b/icons/obj/suit_cooler.dmi differ