Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Exosuit UI Update + Equipment Refactor #1177

Closed
wants to merge 29 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
6e373db
part 1, mecha/working is no more
SapphicOverload Feb 8, 2024
323e2b5
part 2, ui and other stuff
SapphicOverload Feb 8, 2024
54992d8
request
SapphicOverload Feb 9, 2024
7d25c67
weight gauge
SapphicOverload Feb 9, 2024
f729fd9
heck
SapphicOverload Feb 10, 2024
2afafd0
droid/generator fix
SapphicOverload Feb 11, 2024
38c46f2
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Feb 13, 2024
83b9347
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Feb 13, 2024
eda28ae
Update mechfabricator_designs.dm
SapphicOverload Feb 13, 2024
aec9819
Update durand.dm
SapphicOverload Feb 13, 2024
7555615
why was this missing
SapphicOverload Feb 13, 2024
4e908c8
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Apr 14, 2024
0be5c98
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload May 4, 2024
75ce1ff
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Jun 30, 2024
1ee4c15
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Jun 30, 2024
1a9457a
Update AlertPane.tsx
SapphicOverload Jun 30, 2024
2ac1082
e
SapphicOverload Jun 30, 2024
125d358
Merge branch 'master' into mech-tgui
dwasint Aug 12, 2024
6e33724
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Aug 17, 2024
ab22c9c
guh
SapphicOverload Aug 17, 2024
1f6f9d2
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Aug 25, 2024
25b83e4
what the fuck?
SapphicOverload Sep 13, 2024
9686dfe
Revert "what the fuck?"
SapphicOverload Sep 13, 2024
743e123
Update rip_and_tear.dm
SapphicOverload Sep 13, 2024
155291c
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Sep 13, 2024
f8151b2
Update declarations.dm
SapphicOverload Sep 13, 2024
d5c8ac2
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Oct 23, 2024
26b5a55
Merge remote-tracking branch 'upstream/master' into mech-tgui
SapphicOverload Oct 23, 2024
8024b26
wack
SapphicOverload Oct 23, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
/turf/open/misc/asteroid/basalt/lava_land_surface,
/area/lavaland/surface/outdoors)
"d" = (
/obj/vehicle/sealed/mecha/working/ripley/mining,
/obj/vehicle/sealed/mecha/ripley/mining,
/turf/open/misc/asteroid/basalt/lava_land_surface,
/area/lavaland/surface/outdoors)
"e" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomRuins/SpaceRuins/mechtransport.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@
/turf/open/floor/mineral/titanium/yellow/airless,
/area/ruin/space/has_grav/powered/mechtransport)
"A" = (
/obj/vehicle/sealed/mecha/working/ripley,
/obj/vehicle/sealed/mecha/ripley,
/turf/open/floor/mineral/titanium/yellow/airless,
/area/ruin/space/has_grav/powered/mechtransport)
"B" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomZLevels/caves.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -1113,7 +1113,7 @@
},
/area/awaymission/caves/bmp_asteroid)
"gC" = (
/obj/vehicle/sealed/mecha/working/ripley/mining,
/obj/vehicle/sealed/mecha/ripley/mining,
/turf/open/floor/iron/recharge_floor,
/area/awaymission/caves/bmp_asteroid)
"gF" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomZLevels/snowdin.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -9503,7 +9503,7 @@
/turf/open/floor/iron/dark,
/area/awaymission/snowdin/post/mining_main/mechbay)
"In" = (
/obj/vehicle/sealed/mecha/working/ripley/mining,
/obj/vehicle/sealed/mecha/ripley/mining,
/obj/effect/turf_decal/bot,
/turf/open/floor/iron/recharge_floor,
/area/awaymission/snowdin/post/mining_main/mechbay)
Expand Down
2 changes: 1 addition & 1 deletion _maps/map_files/Deltastation/DeltaStation2.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -46008,7 +46008,7 @@
/turf/open/floor/iron,
/area/station/cargo/quartermaster)
"kOy" = (
/obj/vehicle/sealed/mecha/working/ripley/cargo,
/obj/vehicle/sealed/mecha/ripley/cargo,
/turf/open/floor/iron/recharge_floor,
/area/station/cargo/storage)
"kOA" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/map_files/KiloStation/KiloStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -60089,7 +60089,7 @@
/area/station/engineering/atmos)
"sTm" = (
/obj/effect/decal/cleanable/dirt,
/obj/vehicle/sealed/mecha/working/ripley/cargo,
/obj/vehicle/sealed/mecha/ripley/cargo,
/turf/open/floor/iron/recharge_floor,
/area/station/cargo/storage)
"sTo" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/map_files/MetaStation/MetaStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -33995,7 +33995,7 @@
/area/station/medical/treatment_center)
"lTZ" = (
/obj/effect/decal/cleanable/dirt,
/obj/vehicle/sealed/mecha/working/ripley/cargo,
/obj/vehicle/sealed/mecha/ripley/cargo,
/turf/open/floor/plating,
/area/station/cargo/warehouse)
"lUe" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/map_files/NorthStar/north_star.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -52200,7 +52200,7 @@
/turf/open/floor/iron,
/area/station/security/prison)
"nOj" = (
/obj/vehicle/sealed/mecha/working/ripley/cargo,
/obj/vehicle/sealed/mecha/ripley/cargo,
/obj/effect/turf_decal/siding/thinplating_new{
dir = 4
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@
/area/station/maintenance/starboard/lesser)
"y" = (
/obj/effect/decal/cleanable/dirt,
/obj/vehicle/sealed/mecha/working/ripley,
/obj/vehicle/sealed/mecha/ripley,
/obj/effect/decal/cleanable/oil,
/turf/open/floor/plating,
/area/station/maintenance/starboard/lesser)
Expand Down
4 changes: 2 additions & 2 deletions _maps/map_files/tramstation/tramstation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -13856,7 +13856,7 @@
/area/station/science/robotics/lab)
"doS" = (
/obj/effect/decal/cleanable/dirt,
/obj/vehicle/sealed/mecha/working/ripley,
/obj/vehicle/sealed/mecha/ripley,
/obj/effect/decal/cleanable/oil,
/turf/open/floor/plating,
/area/station/maintenance/starboard/lesser)
Expand Down Expand Up @@ -35766,7 +35766,7 @@
/turf/open/floor/iron/smooth,
/area/station/hallway/primary/tram/right)
"kqy" = (
/obj/vehicle/sealed/mecha/working/ripley/cargo,
/obj/vehicle/sealed/mecha/ripley/cargo,
/obj/machinery/requests_console/directional/north{
department = "Cargo Bay";
name = "Cargo Bay Requests Console"
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/cooldowns.dm
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
#define COOLDOWN_MECHA_SMOKE "mecha_smoke"
#define COOLDOWN_MECHA_SKYFALL "mecha_skyfall"
#define COOLDOWN_MECHA_MISSILE_STRIKE "mecha_missile_strike"
#define COOLDOWN_MECHA_CABIN_SEAL "mecha_cabin_seal"

//car cooldowns
#define COOLDOWN_CAR_HONK "car_honk"
Expand Down
19 changes: 11 additions & 8 deletions code/__DEFINES/mecha.dm
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
#define MECHA_INT_FIRE (1<<0)
#define MECHA_INT_TEMP_CONTROL (1<<1)
#define MECHA_INT_SHORT_CIRCUIT (1<<2)
#define MECHA_INT_TANK_BREACH (1<<3)
#define MECHA_CABIN_AIR_BREACH (1<<3)
#define MECHA_INT_CONTROL_LOST (1<<4)

#define ADDING_ACCESS_POSSIBLE (1<<0)
#define ADDING_MAINT_ACCESS_POSSIBLE (1<<1)
#define PANEL_OPEN (1<<0)
#define ID_LOCK_ON (1<<1)
#define CANSTRAFE (1<<2)
#define LIGHTS_ON (1<<3)
#define SILICON_PILOT (1<<4)
Expand Down Expand Up @@ -34,18 +34,18 @@
#define MECHA_POWER "mecha_power"
#define MECHA_ARMOR "mecha_armor"

#define MECHA_LOCKED 0
#define MECHA_SECURE_BOLTS 1
#define MECHA_LOOSE_BOLTS 2
#define MECHA_OPEN_HATCH 3

// Some mechs must (at least for now) use snowflake handling of their UI elements, these defines are for that
// when changing MUST update the same-named tsx file constants
#define MECHA_SNOWFLAKE_ID_SLEEPER "sleeper_snowflake"
#define MECHA_SNOWFLAKE_ID_SYRINGE "syringe_snowflake"
#define MECHA_SNOWFLAKE_ID_MODE "mode_snowflake"
#define MECHA_SNOWFLAKE_ID_EXTINGUISHER "extinguisher_snowflake"
#define MECHA_SNOWFLAKE_ID_EJECTOR "ejector_snowflake"
#define MECHA_SNOWFLAKE_ID_OREBOX_MANAGER "orebox_manager_snowflake"
#define MECHA_SNOWFLAKE_ID_RADIO "radio_snowflake"
#define MECHA_SNOWFLAKE_ID_AIR_TANK "air_tank_snowflake"
#define MECHA_SNOWFLAKE_ID_WEAPON_BALLISTIC "ballistic_weapon_snowflake"
#define MECHA_SNOWFLAKE_ID_GENERATOR "generator_snowflake"

#define MECHA_AMMO_INCENDIARY "Incendiary bullet"
#define MECHA_AMMO_BUCKSHOT "Buckshot shell"
Expand All @@ -54,3 +54,6 @@
#define MECHA_AMMO_MISSILE_PEP "PEP missile"
#define MECHA_AMMO_FLASHBANG "Flashbang"
#define MECHA_AMMO_CLUSTERBANG "Clusterbang"
#define MECHA_AMMO_PUNCHING_GLOVE "Punching glove"
#define MECHA_AMMO_BANANA_PEEL "Banana peel"
#define MECHA_AMMO_MOUSETRAP "Mousetrap"
5 changes: 4 additions & 1 deletion code/__DEFINES/traits/declarations.dm
Original file line number Diff line number Diff line change
Expand Up @@ -642,7 +642,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
#define TRAIT_WINE_TASTER "wine_taster"
#define TRAIT_BONSAI "bonsai"
#define TRAIT_LIGHTBULB_REMOVER "lightbulb_remover"
#define TRAIT_KNOW_ROBO_WIRES "know_cyborg_wires"
#define TRAIT_KNOW_ROBO_WIRES "know_robo_wires"
#define TRAIT_KNOW_ENGI_WIRES "know_engi_wires"
#define TRAIT_ENTRAILS_READER "entrails_reader"
#define TRAIT_SABRAGE_PRO "sabrage_pro"
Expand Down Expand Up @@ -958,6 +958,9 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
/// Similar trait given to temporary bodies inhabited by players
#define TRAIT_TEMPORARY_BODY "temporary_body"

/// Trait given to mechs that can have orebox functionality on movement
#define TRAIT_OREBOX_FUNCTIONAL "orebox_functional"

/// Trait given to objects with the wallmounted component
#define TRAIT_WALLMOUNTED "wallmounted"

Expand Down
4 changes: 3 additions & 1 deletion code/__DEFINES/wires.dm
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
#define WIRE_BACKUP1 "Auxiliary Power 1"
#define WIRE_BACKUP2 "Auxiliary Power 2"
#define WIRE_BEACON "Beacon"
#define WIRE_BOLTLIGHT "Bolt Lights"
#define WIRE_BOLTS "Bolts"
#define WIRE_BOOM "Boom Wire 1"
#define WIRE_BOOM2 "Boom Wire 2"
Expand All @@ -30,7 +31,7 @@
#define WIRE_IDSCAN "ID Scan"
#define WIRE_INTERFACE "Interface"
#define WIRE_LAWSYNC "AI Law Synchronization"
#define WIRE_LIGHT "Bolt Lights"
#define WIRE_LIGHT "Lights"
#define WIRE_LIMIT "Limiter"
#define WIRE_LOADCHECK "Load Check"
#define WIRE_LOCKDOWN "Lockdown"
Expand Down Expand Up @@ -59,6 +60,7 @@
#define WIRE_ZAP "High Voltage Circuit"
#define WIRE_ZAP1 "High Voltage Circuit 1"
#define WIRE_ZAP2 "High Voltage Circuit 2"
#define WIRE_OVERCLOCK "Overclock"

// Wire states for the AI
#define AI_WIRE_NORMAL 0
Expand Down
5 changes: 2 additions & 3 deletions code/_globalvars/bitfields.dm
Original file line number Diff line number Diff line change
Expand Up @@ -235,14 +235,13 @@ DEFINE_BITFIELD(mat_container_flags, list(
DEFINE_BITFIELD(internal_damage, list(
"MECHA_INT_FIRE" = MECHA_INT_FIRE,
"MECHA_INT_TEMP_CONTROL" = MECHA_INT_TEMP_CONTROL,
"MECHA_INT_TANK_BREACH" = MECHA_INT_TANK_BREACH,
"MECHA_CABIN_AIR_BREACH" = MECHA_CABIN_AIR_BREACH,
"MECHA_INT_CONTROL_LOST" = MECHA_INT_CONTROL_LOST,
"MECHA_INT_SHORT_CIRCUIT" = MECHA_INT_SHORT_CIRCUIT,
))

DEFINE_BITFIELD(mecha_flags, list(
"ADDING_ACCESS_POSSIBLE" = ADDING_ACCESS_POSSIBLE,
"ADDING_MAINT_ACCESS_POSSIBLE" = ADDING_MAINT_ACCESS_POSSIBLE,
"ID_LOCK_ON" = ID_LOCK_ON,
"CANSTRAFE" = CANSTRAFE,
"LIGHTS_ON" = LIGHTS_ON,
"SILICON_PILOT" = SILICON_PILOT,
Expand Down
2 changes: 1 addition & 1 deletion code/datums/components/armor_plate.dm
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
RegisterSignal(parent, COMSIG_ATOM_EXAMINE, PROC_REF(examine))
RegisterSignal(parent, COMSIG_ATOM_ATTACKBY, PROC_REF(applyplate))
RegisterSignal(parent, COMSIG_QDELETING, PROC_REF(dropplates))
if(istype(parent, /obj/vehicle/sealed/mecha/working/ripley))
if(istype(parent, /obj/vehicle/sealed/mecha/ripley))
RegisterSignal(parent, COMSIG_ATOM_UPDATE_OVERLAYS, PROC_REF(apply_mech_overlays))

if(_maxamount)
Expand Down
6 changes: 3 additions & 3 deletions code/datums/wires/airlock.dm
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
WIRE_BACKUP2,
WIRE_BOLTS,
WIRE_IDSCAN,
WIRE_LIGHT,
WIRE_BOLTLIGHT,
WIRE_OPEN,
WIRE_POWER1,
WIRE_POWER2,
Expand Down Expand Up @@ -142,7 +142,7 @@
A.close()
if(WIRE_TIMING)
A.normalspeed = !A.normalspeed
if(WIRE_LIGHT)
if(WIRE_BOLTLIGHT)
A.lights = !A.lights
A.update_appearance()
if(WIRE_UNRESTRICTED_EXIT) // Pulse to switch the direction around by 180 degrees (North goes to South, East goes to West, vice-versa)
Expand Down Expand Up @@ -206,7 +206,7 @@
A.autoclose = mend
if(A.autoclose && !A.density)
A.close()
if(WIRE_LIGHT) // Cut to disable lights, mend to re-enable.
if(WIRE_BOLTLIGHT) // Cut to disable lights, mend to re-enable.
A.lights = mend
A.update_appearance()
if(WIRE_ZAP1, WIRE_ZAP2) // Ouch.
Expand Down
78 changes: 78 additions & 0 deletions code/datums/wires/mecha.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
/datum/wires/mecha
holder_type = /obj/vehicle/sealed/mecha
proper_name = "Mecha Control"

/datum/wires/mecha/New(atom/holder)
wires = list(WIRE_IDSCAN, WIRE_DISARM, WIRE_ZAP, WIRE_OVERCLOCK)
var/obj/vehicle/sealed/mecha/mecha = holder
if(mecha.mecha_flags & HAS_LIGHTS)
wires += WIRE_LIGHT
add_duds(3)
..()

/datum/wires/mecha/interactable(mob/user)
if(!..())
return FALSE
var/obj/vehicle/sealed/mecha/mecha = holder
return mecha.mecha_flags & PANEL_OPEN

/datum/wires/mecha/get_status()
var/obj/vehicle/sealed/mecha/mecha = holder
var/list/status = list()
status += "The orange light is [mecha.internal_damage & MECHA_INT_SHORT_CIRCUIT ? "on" : "off"]."
status += "The red light is [mecha.overclock_mode ? "blinking" : "off"]."
status += "The green light is [(mecha.mecha_flags & ID_LOCK_ON) || mecha.dna_lock ? "on" : "off"]."
if(mecha.mecha_flags & HAS_LIGHTS)
status += "The yellow light is [mecha.light_on ? "on" : "off"]."
status += "The blue light is [mecha.equipment_disabled ? "on" : "off"]."
return status

/datum/wires/mecha/on_pulse(wire)
var/obj/vehicle/sealed/mecha/mecha = holder
switch(wire)
if(WIRE_IDSCAN)
mecha.mecha_flags ^= ID_LOCK_ON
mecha.dna_lock = null
if(WIRE_DISARM)
mecha.equipment_disabled = TRUE
mecha.set_mouse_pointer()
if(WIRE_ZAP)
mecha.internal_damage ^= MECHA_INT_SHORT_CIRCUIT
if(WIRE_LIGHT)
mecha.set_light_on(!mecha.light_on)
if(WIRE_OVERCLOCK)
mecha.toggle_overclock()

/datum/wires/mecha/on_cut(wire, mend, source)
var/obj/vehicle/sealed/mecha/mecha = holder
switch(wire)
if(WIRE_IDSCAN)
if(!mend)
mecha.mecha_flags &= ~ID_LOCK_ON
mecha.dna_lock = null
if(WIRE_DISARM)
mecha.equipment_disabled = !mend
mecha.set_mouse_pointer()
if(WIRE_ZAP)
if(mend)
mecha.internal_damage &= ~MECHA_INT_SHORT_CIRCUIT
else
mecha.internal_damage |= MECHA_INT_SHORT_CIRCUIT
if(WIRE_LIGHT)
mecha.set_light_on(!mend)
if(WIRE_OVERCLOCK)
if(!mend)
mecha.toggle_overclock(FALSE)

/datum/wires/mecha/ui_act(action, params)
. = ..()
if(.)
return
var/obj/vehicle/sealed/mecha/mecha = holder
if(!issilicon(usr) && mecha.internal_damage & MECHA_INT_SHORT_CIRCUIT && mecha.shock(usr))
return FALSE

/datum/wires/mecha/can_reveal_wires(mob/user)
if(HAS_TRAIT(user, TRAIT_KNOW_ROBO_WIRES))
return TRUE
return ..()
5 changes: 5 additions & 0 deletions code/datums/wires/mod.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,3 +55,8 @@
if(!issilicon(usr) && mod.seconds_electrified && mod.shock(usr))
return FALSE
return ..()

/datum/wires/mod/can_reveal_wires(mob/user)
if(HAS_TRAIT(user, TRAIT_KNOW_ROBO_WIRES))
return TRUE
return ..()
2 changes: 1 addition & 1 deletion code/game/machinery/doors/airlock.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1655,7 +1655,7 @@
wire["shock"] = !wires.is_cut(WIRE_SHOCK)
wire["id_scanner"] = !wires.is_cut(WIRE_IDSCAN)
wire["bolts"] = !wires.is_cut(WIRE_BOLTS)
wire["lights"] = !wires.is_cut(WIRE_LIGHT)
wire["lights"] = !wires.is_cut(WIRE_BOLTLIGHT)
wire["safe"] = !wires.is_cut(WIRE_SAFETY)
wire["timing"] = !wires.is_cut(WIRE_TIMING)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@

/datum/dimension_theme/radioactive
icon = 'icons/obj/ore.dmi'
icon_state = "Uranium ore"
icon_state = "uranium"
material = /datum/material/uranium
sound = 'sound/items/welder.ogg'

Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/effects/spawners/random/exotic.dm
Original file line number Diff line number Diff line change
Expand Up @@ -87,5 +87,5 @@
icon_state = "ripley"
loot = list(
/obj/structure/mecha_wreckage/ripley = 3,
/obj/vehicle/sealed/mecha/working/ripley/mining = 1,
/obj/vehicle/sealed/mecha/ripley/mining = 1,
)
2 changes: 1 addition & 1 deletion code/game/objects/items/stacks/bscrystal.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
/obj/item/stack/ore/bluespace_crystal
name = "bluespace crystal"
desc = "A glowing bluespace crystal, not much is known about how they work. It looks very delicate."
icon = 'icons/obj/telescience.dmi'
icon = 'icons/obj/ore.dmi'
icon_state = "bluespace_crystal"
singular_name = "bluespace crystal"
dye_color = DYE_COSMIC
Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/structures/showcase.dm
Original file line number Diff line number Diff line change
Expand Up @@ -64,13 +64,13 @@
/obj/structure/showcase/mecha/marauder
name = "combat mech exhibit"
desc = "A stand with an empty old Nanotrasen Corporation combat mech bolted to it. It is described as the premier unit used to defend corporate interests and employees."
icon = 'icons/mecha/mecha.dmi'
icon = 'icons/mob/mecha.dmi'
icon_state = "marauder"

/obj/structure/showcase/mecha/ripley
name = "construction mech exhibit"
desc = "A stand with a retired construction mech bolted to it. The clamps are rated at 9300PSI. It seems to be falling apart."
icon = 'icons/mecha/mecha.dmi'
icon = 'icons/mob/mecha.dmi'
icon_state = "firefighter"

/obj/structure/showcase/machinery/implanter
Expand Down
Loading
Loading