Files
Batrachophreno eebb8b971c Materials Repath (#22388)
Soft-ish port of https://github.com/NebulaSS13/Nebula/pull/540. Except
we call them singletons.

Repaths all materials as singletons instead of datums, and replaces
material defines from strings to paths so that we can just run
GET_SINGLETON instead of needing to use SSMaterials. This is Step One.

This PR has no player-facing changes.

changes:
  - refactor: "Repaths /material to /singleton/material."
- refactor: "Replaces all material string defines to path defines,
replacing SSmaterials procs w/ GET_SINGLETON instead."
- refactor: "Removes all material var edited objects from all maps,
adding new presets where necessary."
- refactor: "Updates recipes unit test to run all recipes against all
material singletons."

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
Co-authored-by: kano-dot <bhutanlikanoxy@gmail.com>
2026-07-10 18:45:58 +00:00

192 lines
6.4 KiB
Plaintext

/mob/living/heavy_vehicle/premade/ripley
name = "power loader"
desc = "An ancient but well-liked cargo handling exosuit."
e_head = /obj/item/mech_component/sensors/ripley
e_body = /obj/item/mech_component/chassis/ripley/cell
e_arms = /obj/item/mech_component/manipulators/ripley
e_legs = /obj/item/mech_component/propulsion/ripley
e_color = COLOR_RIPLEY
h_l_hand = /obj/item/mecha_equipment/drill
h_r_hand = /obj/item/mecha_equipment/clamp
/mob/living/heavy_vehicle/premade/ripley/cargo
h_back = /obj/item/mecha_equipment/autolathe
/mob/living/heavy_vehicle/premade/ripley/loader
h_l_hand = /obj/item/mecha_equipment/clamp
/mob/living/heavy_vehicle/premade/ripley/loader/sol
name = "solarian powerloader"
e_color = COLOR_DARK_GREEN_GRAY
/mob/living/heavy_vehicle/premade/ripley/loader/sol/damaged
name = "damaged solarian powerloader"
h_l_hand = null
/mob/living/heavy_vehicle/premade/ripley/loader/tcaf
name = "TCAF powerloader"
e_color = COLOR_TCAF
/mob/living/heavy_vehicle/premade/ripley/janitorial
name = "janitorial power loader"
desc = "A standard cargo-handling power loader converted into a cleaning machine."
e_color = COLOR_PURPLE
h_l_hand = /obj/item/mecha_equipment/clamp
h_l_shoulder = /obj/item/mecha_equipment/mounted_system/grenadecleaner
h_r_shoulder = /obj/item/mecha_equipment/mounted_system/grenadecleaner
h_back = /obj/item/mecha_equipment/quick_enter
/obj/item/mech_component/manipulators/ripley
name = "exosuit arms"
exosuit_desc_string = "heavy-duty industrial lifters"
max_damage = 225
power_use = 1000
melee_damage = 40
desc = "The Xion Manufacturing Group Digital Interaction Manifolds allow you poke untold dangers from the relative safety of your cockpit."
punch_sound = 'sound/mecha/mech_punch_slow.ogg'
/obj/item/mech_component/propulsion/ripley
name = "exosuit legs"
exosuit_desc_string = "reinforced hydraulic legs"
desc = "Wide and stable but not particularly fast."
max_damage = 150
move_delay = 4
turn_delay = 4
power_use = 1000
trample_damage = 10
/obj/item/mech_component/sensors/ripley
name = "exosuit sensors"
gender = PLURAL
exosuit_desc_string = "simple collision detection sensors"
desc = "A primitive set of sensors designed to work in tandem with most MKI Eyeball platforms."
max_damage = 200
power_use = 0
/obj/item/mech_component/sensors/ripley/prebuild()
..()
software = new(src)
software.installed_software = list(MECH_SOFTWARE_UTILITY, MECH_SOFTWARE_ENGINEERING)
/obj/item/mech_component/chassis/ripley
name = "open exosuit chassis"
hatch_descriptor = "roll cage"
pilot_coverage = 40
exosuit_desc_string = "an industrial rollcage"
desc = "A Xion industrial brand roll cage. Technically OSHA compliant. Technically. This variant has an extra compartment for a copilot, but has no sealed atmosphere."
max_damage = 200
power_use = 500
/obj/item/mech_component/chassis/ripley/prebuild()
. = ..()
mech_armor = new /obj/item/robot_parts/robot_component/armor/mech(src)
/obj/item/mech_component/chassis/ripley/cell
cell_type = /obj/item/cell/mecha
/obj/item/mech_component/chassis/ripley/nuclear
cell_type = /obj/item/cell/mecha/nuclear
/obj/item/mech_component/chassis/ripley/Initialize()
pilot_positions = list(
list(
"[NORTH]" = list("x" = 8, "y" = 8),
"[SOUTH]" = list("x" = 8, "y" = 8),
"[EAST]" = list("x" = 8, "y" = 8),
"[WEST]" = list("x" = 8, "y" = 8)
),
list(
"[NORTH]" = list("x" = 8, "y" = 16),
"[SOUTH]" = list("x" = 8, "y" = 16),
"[EAST]" = list("x" = 0, "y" = 16),
"[WEST]" = list("x" = 16, "y" = 16)
)
)
. = ..()
/mob/living/heavy_vehicle/premade/firefighter
name = "firefighting exosuit"
desc = "A mix and match of industrial parts designed to withstand fires."
icon_state = "firefighter"
e_head = /obj/item/mech_component/sensors/ripley
e_body = /obj/item/mech_component/chassis/ripley/cell
e_arms = /obj/item/mech_component/manipulators/ripley
e_legs = /obj/item/mech_component/propulsion/ripley
e_color = "#385b3c"
h_l_hand = /obj/item/mecha_equipment/drill
h_r_hand = /obj/item/mecha_equipment/mounted_system/extinguisher
/mob/living/heavy_vehicle/premade/firefighter/Initialize()
. = ..()
material = GET_SINGLETON(MATERIAL_PLASTEEL)
/obj/item/mech_component/sensors/firefighter/prebuild()
..()
software = new(src)
software.installed_software = list(MECH_SOFTWARE_UTILITY, MECH_SOFTWARE_ENGINEERING)
/mob/living/heavy_vehicle/premade/firefighter/sol
name = "solarian firefighting exosuit"
e_color = COLOR_DARK_GREEN_GRAY
/mob/living/heavy_vehicle/premade/combatripley
name = "combat APLU \"Ripley\""
desc = "A large APLU unit fitted with specialized composite armor and fancy, though old targeting systems."
icon_state = "combatripley"
decal = "ripley_legion"
e_head = /obj/item/mech_component/sensors/combatripley
e_body = /obj/item/mech_component/chassis/ripley/nuclear
e_arms = /obj/item/mech_component/manipulators/ripley
e_legs = /obj/item/mech_component/propulsion/ripley
e_color = COLOR_TCAF
h_l_shoulder = /obj/item/mecha_equipment/mounted_system/combat/grenadesmoke
h_r_shoulder = /obj/item/mecha_equipment/mounted_system/flarelauncher
h_l_hand = /obj/item/mecha_equipment/mounted_system/combat/blaster
h_r_hand = /obj/item/mecha_equipment/mounted_system/combat/gauss
/mob/living/heavy_vehicle/premade/combatripley/Initialize()
. = ..()
body.mech_armor = new /obj/item/robot_parts/robot_component/armor/mech/combat(body)
/obj/item/mech_component/sensors/combatripley
name = "exosuit sensors"
gender = PLURAL
power_use = 50000
vision_flags = SEE_MOBS
lighting_alpha = LIGHTING_PLANE_ALPHA_SOMEWHAT_INVISIBLE
/obj/item/mech_component/sensors/combatripley/prebuild()
..()
software = new(src)
software.installed_software = list(MECH_SOFTWARE_UTILITY, MECH_SOFTWARE_WEAPONS)
/mob/living/heavy_vehicle/premade/ripley/remote
name = "remote power loader"
dummy_colour = "#ffc44f"
remote_network = REMOTE_GENERIC_MECH
does_hardpoint_lock = FALSE
/mob/living/heavy_vehicle/premade/ripley/remote_prison
name = "penal power loader"
dummy_colour = "#302e2b"
remote_network = REMOTE_PRISON_MECH
remote_type = /obj/item/remote_mecha/penal
/mob/living/heavy_vehicle/premade/ripley/remote_ai
name = "stationbound power loader"
e_color = COLOR_GREEN_GRAY
dummy_colour = COLOR_GREEN_GRAY
dummy_type = /mob/living/simple_animal/spiderbot/ai
remote_network = REMOTE_AI_MECH
remote_type = /obj/item/remote_mecha/ai
does_hardpoint_lock = FALSE
h_l_hand = /obj/item/mecha_equipment/toolset