Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.

Commit f759add

Browse files
authored
Adds a new traitor item: The IA-C01G AORTA 'Coral' Generator mech equipment (#22535)
* e * Update yogstation.dme * e * adjusted requests * bye gygax * fuck you
1 parent 1c1dde6 commit f759add

File tree

5 files changed

+61
-0
lines changed

5 files changed

+61
-0
lines changed

code/game/mecha/equipment/tools/other_tools.dm

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -575,3 +575,54 @@
575575
if(chassis)
576576
chassis.ejection_distance -= ejection_distance
577577
. = ..()
578+
579+
///// Coral Generator /////
580+
581+
/obj/item/mecha_parts/mecha_equipment/coral_generator
582+
name = "IA-C01G AORTA"
583+
desc = "A highly classified emergent technology, burns raw redspace crystal to enhance mech movement, as a side effect the mech will emit a red glow, greatly increasing energy usage."
584+
icon_state = "coral_engine"
585+
selectable = FALSE // your mech IS the weapon
586+
var/minimum_damage = 10
587+
var/structure_damage_mult = 4
588+
var/list/hit_list = list()
589+
equip_actions = list(/datum/action/innate/mecha/coral_overload_mode)
590+
591+
/obj/item/mecha_parts/mecha_equipment/coral_generator/can_attach(obj/mecha/new_mecha)
592+
if(istype(new_mecha, /obj/mecha/combat/gygax)) // no gygax stacking sorry
593+
return FALSE
594+
if(locate(type) in new_mecha.equipment)
595+
return FALSE // no stacking multiple
596+
return ..()
597+
598+
/datum/action/innate/mecha/coral_overload_mode
599+
name = "Coral Engine Overload"
600+
button_icon_state = "mech_coral_overload_off"
601+
602+
/datum/action/innate/mecha/coral_overload_mode/Activate(forced_state = null)
603+
604+
if(chassis?.equipment_disabled) // If a EMP or something has messed a mech up return instead of activating -- Moogle
605+
return
606+
if(!owner || !chassis || chassis.occupant != owner)
607+
return
608+
if(!isnull(forced_state))
609+
chassis.coral_leg_overload_mode = forced_state
610+
else
611+
chassis.coral_leg_overload_mode = !chassis.coral_leg_overload_mode
612+
button_icon_state = "mech_coral_overload_[chassis.coral_leg_overload_mode ? "on" : "off"]"
613+
chassis.log_message("Toggled coral engine overload.", LOG_MECHA)
614+
if(chassis.coral_leg_overload_mode)
615+
chassis.AddComponent(/datum/component/after_image, 0.5 SECONDS, 0.5, TRUE)
616+
chassis.coral_leg_overload_mode = 1
617+
chassis.step_in = min(1, round(chassis.step_in/2))
618+
chassis.step_energy_drain = max(chassis.overload_step_energy_drain_min,chassis.step_energy_drain*chassis.leg_overload_coeff)
619+
chassis.occupant_message(span_danger("You enable coral engine overload."))
620+
else
621+
var/datum/component/after_image/chassis_after_image = chassis.GetComponent(/datum/component/after_image)
622+
if(chassis_after_image)
623+
qdel(chassis_after_image)
624+
chassis.coral_leg_overload_mode = 0
625+
chassis.step_in = initial(chassis.step_in)
626+
chassis.step_energy_drain = chassis.normal_step_energy_drain
627+
chassis.occupant_message(span_notice("You disable coral engine overload."))
628+
build_all_button_icons()

code/game/mecha/mecha.dm

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,8 @@
124124
var/defence_mode = FALSE
125125
var/defence_mode_deflect_chance = 15
126126
var/leg_overload_mode = FALSE
127+
var/coral_leg_overload_mode = FALSE
128+
var/leg_overload_coeff = 100
127129
var/zoom_mode = FALSE
128130
var/smoke = 5
129131
var/smoke_ready = 1

code/modules/uplink/uplink_items.dm

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2521,6 +2521,14 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item))
25212521
manufacturer = /datum/corporation/traitor/cybersun
25222522
restricted_roles = list("Research Director", "Scientist", "Roboticist")
25232523

2524+
/datum/uplink_item/role_restricted/coral_generator
2525+
name = "IA-C01G AORTA 'Coral' Generator"
2526+
desc = "An experimental generator that can be attatched to a mech, provides a massive speedboost when active at the cost of greater power consumption."
2527+
item = /obj/item/mecha_parts/mecha_equipment/coral_generator
2528+
cost = 10
2529+
manufacturer = /datum/corporation/traitor/cybersun
2530+
restricted_roles = list("Research Director", "Scientist", "Roboticist")
2531+
25242532
/datum/uplink_item/role_restricted/gorillacubes
25252533
name = "Box of Gorilla Cubes"
25262534
desc = "A box with three Waffle Co. brand gorilla cubes. Eat big to get big. \

icons/mecha/mecha_equipment.dmi

534 Bytes
Binary file not shown.
531 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)