Exosuit Nuclear Power Cores (#18268)

* Added power cores, a type of large battery cell that get used by
exosuits. The nuclear and phoron variants are self-charging.
* Combat mechs now start with nuclear power cores, allowing them to
sustain themselves indefinitely, so long as they stay out of the action
for a bit.
* Removed basic power cells from the mechfab, replaced with the mech
powercores.
* Mech cell statuses now instantly update as soon as the cell charges or
discharges.
* Added a stack of 10 uranium to the machinist's workshop, which can
print two nuclear power cores.
This commit is contained in:
Geeves
2024-06-09 21:14:59 +00:00
committed by GitHub
parent 566aeaa2da
commit 2bf39c7ee9
22 changed files with 178 additions and 74 deletions
@@ -41,6 +41,8 @@
head.color = e_color
if(!body && e_body)
body = new e_body(src)
if(body.cell)
RegisterSignal(body.cell, COMSIG_CELL_CHARGE, PROC_REF(handle_cell_charge))
if(e_color)
body.color = e_color
if(!arms && e_arms)
@@ -59,6 +59,8 @@
has_hardpoints = list(HARDPOINT_BACK)
power_use = 500
cell_type = /obj/item/cell/mecha/nuclear
/obj/item/mech_component/chassis/heavy/prebuild()
. = ..()
mech_armor = new /obj/item/robot_parts/robot_component/armor/mech/combat(src)
+8 -1
View File
@@ -76,12 +76,16 @@
)
. = ..()
/obj/item/mech_component/chassis/light/nuclear
cell_type = /obj/item/cell/mecha/nuclear
/mob/living/heavy_vehicle/premade/light/legion
name = "legion support exosuit"
desc = "A light and agile exosuit painted in the colours of the Tau Ceti Foreign Legion."
icon_state = "odysseus"
e_color = COLOR_TCFL
e_body = /obj/item/mech_component/chassis/light/nuclear
h_head = /obj/item/mecha_equipment/light
h_back = /obj/item/mecha_equipment/sleeper
@@ -96,6 +100,7 @@
icon_state = "odysseus"
e_color = COLOR_IAC
e_body = /obj/item/mech_component/chassis/light/nuclear
h_head = /obj/item/mecha_equipment/light
h_back = /obj/item/mecha_equipment/sleeper
@@ -109,6 +114,7 @@
desc = "A light and nimble exosuit, bearing the colour scheme of the Unathi Kataphracts."
e_color = COLOR_CHESTNUT
e_body = /obj/item/mech_component/chassis/light/nuclear
h_back = /obj/item/mecha_equipment/quick_enter
h_l_hand = /obj/item/mecha_equipment/clamp
@@ -120,8 +126,9 @@
desc = "A light and nimble recon exosuit, bearing the colour scheme of the Solarian Armed Forces."
e_color = COLOR_DARK_GREEN_GRAY
e_arms = /obj/item/mech_component/manipulators/combat
e_head = /obj/item/mech_component/sensors/combat
e_body = /obj/item/mech_component/chassis/light/nuclear
e_arms = /obj/item/mech_component/manipulators/combat
e_legs = /obj/item/mech_component/propulsion/hover/light
h_back = /obj/item/mecha_equipment/quick_enter
@@ -44,10 +44,10 @@
mech_health = 3500
power_use = 1500
cell_type = /obj/item/cell/mecha/nuclear
/obj/item/mech_component/chassis/superheavy/prebuild()
. = ..()
QDEL_NULL(cell)
cell = new /obj/item/cell/super(src)
mech_armor = new /obj/item/robot_parts/robot_component/armor/mech/combat(src)
/mob/living/heavy_vehicle/premade/superheavy
@@ -94,6 +94,8 @@
max_damage = 150
power_use = 250
cell_type = /obj/item/cell/mecha/nuclear
/obj/item/mech_component/chassis/pra_egg/armored/prebuild()
. = ..()
mech_armor = new /obj/item/robot_parts/robot_component/armor/mech/combat(src)