From 154c9ebe8283eb9fdedf9b12aaff3210a8dddc17 Mon Sep 17 00:00:00 2001 From: Thunder12345 Date: Mon, 8 May 2023 07:52:03 +0100 Subject: [PATCH] Stock Part Resprite (#75149) ## About The Pull Request Resprites stock parts to bring them up to date, changes manipulators to servo motors as I couldn't make manipulators work well at this scale. ![image](https://user-images.githubusercontent.com/5479091/236561493-b34da588-dee1-405a-8557-d11741ae3f21.png) (Power cells sold separately) ## Why It's Good For The Game The old stock parts are dated, in some cased quite ugly, and in the case of manipulators a ball of assorted pixels. Incidentally removed a couple of single letter var names. ## Changelog :cl: image: Stock parts have been resprited. code: Manipulators have been renamed to servo motors, all related types have been repathed to match. /:cl: --- .../mistake_inevitable.dmm | 12 +- .../SpaceRuins/anomaly_research.dmm | 2 +- _maps/RandomRuins/SpaceRuins/bus.dmm | 2 +- _maps/RandomRuins/SpaceRuins/oldstation.dmm | 2 +- .../SpaceRuins/russian_derelict.dmm | 14 +-- _maps/RandomZLevels/undergroundoutpost45.dmm | 4 +- _maps/map_files/Birdshot/birdshot.dmm | 8 +- .../map_files/Deltastation/DeltaStation2.dmm | 8 +- .../map_files/IceBoxStation/IceBoxStation.dmm | 14 +-- _maps/map_files/MetaStation/MetaStation.dmm | 12 +- _maps/map_files/NorthStar/north_star.dmm | 6 +- _maps/map_files/tramstation/tramstation.dmm | 4 +- code/_globalvars/lists/maintenance_loot.dm | 2 +- code/datums/components/crafting/equipment.dm | 6 +- .../datums/components/crafting/weapon_ammo.dm | 2 +- .../components/riding/riding_vehicle.dm | 4 +- code/game/machinery/autolathe.dm | 6 +- code/game/machinery/gulag_teleporter.dm | 2 +- code/game/machinery/launch_pad.dm | 4 +- code/game/machinery/limbgrower.dm | 4 +- code/game/machinery/quantum_pad.dm | 4 +- code/game/machinery/rechargestation.dm | 4 +- code/game/machinery/recycler.dm | 4 +- code/game/machinery/sleepers.dm | 4 +- .../machines/machine_circuitboards.dm | 106 +++++++++--------- .../items/storage/boxes/science_boxes.dm | 4 +- .../items/storage/boxes/service_boxes.dm | 2 +- .../components/electrolyzer/electrolyzer.dm | 4 +- .../exploration_events/trader.dm | 2 +- .../food_and_drinks/machinery/gibber.dm | 10 +- .../machinery/monkeyrecycler.dm | 4 +- .../food_and_drinks/machinery/processor.dm | 4 +- code/modules/hydroponics/biogenerator.dm | 8 +- code/modules/hydroponics/hydroponics.dm | 4 +- code/modules/hydroponics/seed_extractor.dm | 4 +- code/modules/power/singularity/emitter.dm | 4 +- .../chemistry/machinery/chem_dispenser.dm | 6 +- .../chemistry/machinery/reagentgrinder.dm | 4 +- .../chemistry/machinery/smoke_machine.dm | 12 +- code/modules/research/bepis.dm | 4 +- .../research/designs/stock_parts_designs.dm | 32 +++--- code/modules/research/experimentor.dm | 4 +- .../modules/research/machinery/_production.dm | 4 +- .../research/machinery/circuit_imprinter.dm | 4 +- code/modules/research/stock_parts.dm | 46 ++++---- .../research/stock_parts/stock_part_datum.dm | 18 +-- code/modules/research/techweb/all_nodes.dm | 10 +- .../modules/vehicles/mecha/mech_fabricator.dm | 4 +- code/modules/vehicles/motorized_wheelchair.dm | 8 +- code/modules/vending/assist.dm | 2 +- code/modules/vending/engineering.dm | 2 +- .../modules/wiremod/core/component_printer.dm | 8 +- .../wiremod/shell/brain_computer_interface.dm | 2 +- icons/obj/stock_parts.dmi | Bin 19785 -> 19411 bytes .../Scripts/75149_stock_part_resprite.txt | 3 + 55 files changed, 233 insertions(+), 230 deletions(-) create mode 100644 tools/UpdatePaths/Scripts/75149_stock_part_resprite.txt diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_inevitable.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_inevitable.dmm index 944b4c01e16..75e3cdb6200 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_inevitable.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_inevitable.dmm @@ -97,12 +97,12 @@ /obj/item/stock_parts/micro_laser/quadultra, /obj/item/stock_parts/micro_laser/quadultra, /obj/item/stock_parts/micro_laser/quadultra, -/obj/item/stock_parts/manipulator/femto, -/obj/item/stock_parts/manipulator/femto, -/obj/item/stock_parts/manipulator/femto, -/obj/item/stock_parts/manipulator/femto, -/obj/item/stock_parts/manipulator/femto, -/obj/item/stock_parts/manipulator/femto, +/obj/item/stock_parts/servo/femto, +/obj/item/stock_parts/servo/femto, +/obj/item/stock_parts/servo/femto, +/obj/item/stock_parts/servo/femto, +/obj/item/stock_parts/servo/femto, +/obj/item/stock_parts/servo/femto, /obj/structure/rack, /obj/effect/mapping_helpers/airalarm/syndicate_access, /obj/machinery/airalarm/directional/north, diff --git a/_maps/RandomRuins/SpaceRuins/anomaly_research.dmm b/_maps/RandomRuins/SpaceRuins/anomaly_research.dmm index 10bfee1222c..bfc2ce33e04 100644 --- a/_maps/RandomRuins/SpaceRuins/anomaly_research.dmm +++ b/_maps/RandomRuins/SpaceRuins/anomaly_research.dmm @@ -1190,7 +1190,7 @@ /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/table, /obj/item/stock_parts/micro_laser/ultra, -/obj/item/stock_parts/manipulator/pico, +/obj/item/stock_parts/servo/pico, /turf/open/floor/iron/white, /area/misc/anomaly_research) "Fs" = ( diff --git a/_maps/RandomRuins/SpaceRuins/bus.dmm b/_maps/RandomRuins/SpaceRuins/bus.dmm index 174755f0287..60e12bfecd2 100644 --- a/_maps/RandomRuins/SpaceRuins/bus.dmm +++ b/_maps/RandomRuins/SpaceRuins/bus.dmm @@ -265,7 +265,7 @@ /area/ruin/space) "Ds" = ( /obj/item/stack/rods/fifty, -/obj/item/stock_parts/manipulator/femto, +/obj/item/stock_parts/servo/femto, /turf/open/misc/asteroid/airless, /area/ruin/space) "ER" = ( diff --git a/_maps/RandomRuins/SpaceRuins/oldstation.dmm b/_maps/RandomRuins/SpaceRuins/oldstation.dmm index 6d2d44e03a9..8320f9dac78 100644 --- a/_maps/RandomRuins/SpaceRuins/oldstation.dmm +++ b/_maps/RandomRuins/SpaceRuins/oldstation.dmm @@ -4173,7 +4173,7 @@ /area/ruin/space/ancientstation/delta/rnd) "oj" = ( /obj/structure/table, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, /obj/item/stock_parts/capacitor, /obj/item/stock_parts/micro_laser, /obj/item/stack/cable_coil, diff --git a/_maps/RandomRuins/SpaceRuins/russian_derelict.dmm b/_maps/RandomRuins/SpaceRuins/russian_derelict.dmm index 8f251fa24d3..f94a92e06b0 100644 --- a/_maps/RandomRuins/SpaceRuins/russian_derelict.dmm +++ b/_maps/RandomRuins/SpaceRuins/russian_derelict.dmm @@ -53,7 +53,7 @@ "an" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, /obj/effect/mapping_helpers/broken_floor, /obj/structure/cable, /turf/open/floor/iron/airless, @@ -1018,7 +1018,7 @@ /turf/open/floor/wood, /area/ruin/space/ks13/service/chapel_office) "oD" = ( -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, /obj/item/stock_parts/scanning_module{ pixel_x = -11 }, @@ -3879,7 +3879,7 @@ /obj/item/stock_parts/capacitor{ pixel_y = 4 }, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, /turf/open/floor/iron/airless, /area/ruin/space/ks13/engineering/secure_storage) "DM" = ( @@ -5589,7 +5589,7 @@ /area/ruin/space/ks13/command/bridge_hall) "Nc" = ( /obj/structure/frame/machine, -/obj/item/stock_parts/manipulator{ +/obj/item/stock_parts/servo{ pixel_x = -5 }, /obj/effect/mapping_helpers/broken_floor, @@ -5605,7 +5605,7 @@ /area/ruin/space/ks13/engineering/atmos) "Nh" = ( /obj/structure/table, -/obj/item/stock_parts/manipulator{ +/obj/item/stock_parts/servo{ pixel_x = 3 }, /obj/item/stock_parts/matter_bin{ @@ -5764,7 +5764,7 @@ "NZ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/item/stock_parts/manipulator{ +/obj/item/stock_parts/servo{ pixel_x = -8; pixel_y = 7 }, @@ -7490,7 +7490,7 @@ /turf/open/floor/plating/airless, /area/ruin/space/ks13/medical/medbay) "WF" = ( -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating/airless, /area/ruin/space/ks13/engineering/grav_gen) diff --git a/_maps/RandomZLevels/undergroundoutpost45.dmm b/_maps/RandomZLevels/undergroundoutpost45.dmm index 1586d6d5a9a..292347baa98 100644 --- a/_maps/RandomZLevels/undergroundoutpost45.dmm +++ b/_maps/RandomZLevels/undergroundoutpost45.dmm @@ -2759,8 +2759,8 @@ /area/awaymission/undergroundoutpost45/research) "hG" = ( /obj/structure/table/glass, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, /obj/item/stock_parts/capacitor, /obj/item/stock_parts/capacitor, /obj/item/stock_parts/micro_laser, diff --git a/_maps/map_files/Birdshot/birdshot.dmm b/_maps/map_files/Birdshot/birdshot.dmm index 5fdc0103009..02a78ddcfb3 100644 --- a/_maps/map_files/Birdshot/birdshot.dmm +++ b/_maps/map_files/Birdshot/birdshot.dmm @@ -9225,10 +9225,10 @@ "dhf" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/table, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, /obj/item/stock_parts/micro_laser/high, /obj/item/stock_parts/micro_laser/high, /obj/item/stock_parts/micro_laser/high, diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 03b5f59ceb3..1605bf11197 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -6079,8 +6079,8 @@ pixel_y = 3 }, /obj/item/stock_parts/capacitor, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, /obj/machinery/light_switch/directional/east, /obj/effect/turf_decal/siding/purple{ dir = 8 @@ -77728,8 +77728,8 @@ pixel_y = 3 }, /obj/item/stock_parts/capacitor, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, /obj/machinery/airalarm/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, diff --git a/_maps/map_files/IceBoxStation/IceBoxStation.dmm b/_maps/map_files/IceBoxStation/IceBoxStation.dmm index 4a30c5df9e8..e9c5c5ad3ff 100644 --- a/_maps/map_files/IceBoxStation/IceBoxStation.dmm +++ b/_maps/map_files/IceBoxStation/IceBoxStation.dmm @@ -18843,10 +18843,10 @@ "fWl" = ( /obj/structure/table, /obj/item/stock_parts/micro_laser, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, /obj/item/stock_parts/capacitor, /obj/item/stock_parts/micro_laser/high, /obj/item/stock_parts/micro_laser/high, @@ -22228,7 +22228,7 @@ "gZF" = ( /obj/structure/table/glass, /obj/item/hemostat, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, /obj/item/storage/bag/trash, /turf/open/floor/iron, /area/station/maintenance/port/fore) @@ -51512,8 +51512,8 @@ /obj/item/stock_parts/micro_laser, /obj/item/stock_parts/capacitor, /obj/item/stock_parts/capacitor, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, /turf/open/floor/iron/white/side{ dir = 5 }, diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index a1ff2356821..f3797864d8a 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -49857,10 +49857,10 @@ "rTg" = ( /obj/structure/table, /obj/item/stock_parts/micro_laser, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, /obj/item/stock_parts/capacitor, /obj/item/stock_parts/micro_laser/high, /obj/item/stock_parts/micro_laser/high, @@ -57736,8 +57736,8 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, /turf/open/floor/iron, /area/station/science/lab) "uDP" = ( diff --git a/_maps/map_files/NorthStar/north_star.dmm b/_maps/map_files/NorthStar/north_star.dmm index e93563b0c36..8d1196dd826 100644 --- a/_maps/map_files/NorthStar/north_star.dmm +++ b/_maps/map_files/NorthStar/north_star.dmm @@ -260,7 +260,7 @@ pixel_y = 6 }, /obj/item/stock_parts/matter_bin, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, /obj/item/stack/cable_coil, /obj/item/stack/sheet/glass/fifty, /turf/open/floor/iron, @@ -3165,7 +3165,7 @@ "aOi" = ( /obj/structure/table, /obj/item/stock_parts/micro_laser, -/obj/item/stock_parts/manipulator{ +/obj/item/stock_parts/servo{ pixel_x = 15; pixel_y = 4 }, @@ -36718,7 +36718,7 @@ /area/station/maintenance/floor3/starboard/fore) "jNR" = ( /obj/structure/table, -/obj/item/stock_parts/manipulator{ +/obj/item/stock_parts/servo{ pixel_x = 2; pixel_y = -4 }, diff --git a/_maps/map_files/tramstation/tramstation.dmm b/_maps/map_files/tramstation/tramstation.dmm index 61daa4c0a1c..e1d6c55cc0b 100644 --- a/_maps/map_files/tramstation/tramstation.dmm +++ b/_maps/map_files/tramstation/tramstation.dmm @@ -19901,8 +19901,8 @@ pixel_y = 3 }, /obj/item/stock_parts/capacitor, -/obj/item/stock_parts/manipulator, -/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/servo, +/obj/item/stock_parts/servo, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, /turf/open/floor/iron/white, diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index 4ab5a5b6c0e..84e56679354 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -63,7 +63,7 @@ GLOBAL_LIST_INIT(trash_loot, list(//junk: useless, very easy to get, or ghetto c list(//tier 1 stock parts /obj/item/stock_parts/capacitor = 1, - /obj/item/stock_parts/manipulator = 1, + /obj/item/stock_parts/servo = 1, /obj/item/stock_parts/matter_bin = 1, /obj/item/stock_parts/micro_laser = 1, /obj/item/stock_parts/scanning_module = 1, diff --git a/code/datums/components/crafting/equipment.dm b/code/datums/components/crafting/equipment.dm index f7149d56ec9..9724e07da49 100644 --- a/code/datums/components/crafting/equipment.dm +++ b/code/datums/components/crafting/equipment.dm @@ -46,11 +46,11 @@ reqs = list( /obj/item/stack/sheet/iron = 10, /obj/item/stack/rods = 8, - /obj/item/stock_parts/manipulator = 2, + /obj/item/stock_parts/servo = 2, /obj/item/stock_parts/capacitor = 1, ) parts = list( - /obj/item/stock_parts/manipulator = 2, + /obj/item/stock_parts/servo = 2, /obj/item/stock_parts/capacitor = 1, ) tool_behaviors = list(TOOL_WELDER, TOOL_SCREWDRIVER, TOOL_WRENCH) @@ -74,7 +74,7 @@ /obj/item/stack/sheet/iron = 4, /obj/item/stack/rods = 4, /obj/item/stack/cable_coil = 10, - /obj/item/stock_parts/manipulator = 2, + /obj/item/stock_parts/servo = 2, /obj/item/assembly/signaler = 1, ) tool_behaviors = list(TOOL_WELDER, TOOL_SCREWDRIVER) diff --git a/code/datums/components/crafting/weapon_ammo.dm b/code/datums/components/crafting/weapon_ammo.dm index e7ad919c1de..912c3358ee7 100644 --- a/code/datums/components/crafting/weapon_ammo.dm +++ b/code/datums/components/crafting/weapon_ammo.dm @@ -6,7 +6,7 @@ /obj/item/rcd_ammo = 1, /datum/reagent/gunpowder = 10, /datum/reagent/consumable/ethanol/rum = 10, - /obj/item/stock_parts/manipulator = 2, + /obj/item/stock_parts/servo = 2, ) tool_behaviors = list(TOOL_SCREWDRIVER) time = 0.5 SECONDS diff --git a/code/datums/components/riding/riding_vehicle.dm b/code/datums/components/riding/riding_vehicle.dm index f7a16ce7481..5f0fe3c84e2 100644 --- a/code/datums/components/riding/riding_vehicle.dm +++ b/code/datums/components/riding/riding_vehicle.dm @@ -267,8 +267,8 @@ var/delay_multiplier = 6.7 // magic number from wheelchair code var/obj/vehicle/ridden/wheelchair/motorized/our_chair = parent - for(var/datum/stock_part/manipulator/manipulator in our_chair.component_parts) - speed += manipulator.tier + for(var/datum/stock_part/servo/servo in our_chair.component_parts) + speed += servo.tier vehicle_move_delay = round(CONFIG_GET(number/movedelay/run_delay) * delay_multiplier) / speed return ..() diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index e4c26ef0073..60fd0711426 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -346,9 +346,9 @@ materials.max_amount = mat_capacity var/efficiency=1.8 - for(var/datum/stock_part/manipulator/new_manipulator in component_parts) - efficiency -= new_manipulator.tier * 0.2 - creation_efficiency = max(1,efficiency) // creation_efficiency goes 1.6 -> 1.4 -> 1.2 -> 1 per level of manipulator efficiency + for(var/datum/stock_part/servo/new_servo in component_parts) + efficiency -= new_servo.tier * 0.2 + creation_efficiency = max(1,efficiency) // creation_efficiency goes 1.6 -> 1.4 -> 1.2 -> 1 per level of servo efficiency /obj/machinery/autolathe/examine(mob/user) . += ..() diff --git a/code/game/machinery/gulag_teleporter.dm b/code/game/machinery/gulag_teleporter.dm index 067a6b990a7..36f8048ea1f 100644 --- a/code/game/machinery/gulag_teleporter.dm +++ b/code/game/machinery/gulag_teleporter.dm @@ -176,7 +176,7 @@ The console is located at computer/gulag_teleporter.dm req_components = list( /obj/item/stack/ore/bluespace_crystal = 2, /datum/stock_part/scanning_module = 1, - /obj/item/stock_parts/manipulator = 1, + /obj/item/stock_parts/servo = 1, ) def_components = list(/obj/item/stack/ore/bluespace_crystal = /obj/item/stack/ore/bluespace_crystal/artificial) diff --git a/code/game/machinery/launch_pad.dm b/code/game/machinery/launch_pad.dm index 94c4b6590e4..c1d87cc2605 100644 --- a/code/game/machinery/launch_pad.dm +++ b/code/game/machinery/launch_pad.dm @@ -26,8 +26,8 @@ /obj/machinery/launchpad/RefreshParts() . = ..() var/max_range_multiplier = 0 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - max_range_multiplier += manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + max_range_multiplier += servo.tier range = initial(range) range *= max_range_multiplier diff --git a/code/game/machinery/limbgrower.dm b/code/game/machinery/limbgrower.dm index 6c751fe9c63..6f9332cca95 100644 --- a/code/game/machinery/limbgrower.dm +++ b/code/game/machinery/limbgrower.dm @@ -254,8 +254,8 @@ reagents.maximum_volume += our_beaker.volume our_beaker.reagents.trans_to(src, our_beaker.reagents.total_volume) production_coefficient = 1.25 - for(var/datum/stock_part/manipulator/our_manipulator in component_parts) - production_coefficient -= our_manipulator.tier * 0.25 + for(var/datum/stock_part/servo/our_servo in component_parts) + production_coefficient -= our_servo.tier * 0.25 production_coefficient = clamp(production_coefficient, 0, 1) // coefficient goes from 1 -> 0.75 -> 0.5 -> 0.25 /obj/machinery/limbgrower/examine(mob/user) diff --git a/code/game/machinery/quantum_pad.dm b/code/game/machinery/quantum_pad.dm index 014022ce1a1..4fdf26e2817 100644 --- a/code/game/machinery/quantum_pad.dm +++ b/code/game/machinery/quantum_pad.dm @@ -46,8 +46,8 @@ E += capacitor.tier power_efficiency = E E = 0 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - E += manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + E += servo.tier teleport_speed = initial(teleport_speed) teleport_speed -= (E*10) teleport_cooldown = initial(teleport_cooldown) diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index 71903cbf543..0eaf8e4c163 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -48,8 +48,8 @@ repairs = 0 for(var/datum/stock_part/capacitor/capacitor in component_parts) recharge_speed += capacitor.tier * 100 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - repairs += manipulator.tier - 1 + for(var/datum/stock_part/servo/servo in component_parts) + repairs += servo.tier - 1 for(var/obj/item/stock_parts/cell/cell in component_parts) recharge_speed *= cell.maxcharge / 10000 diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index 92440c95b65..bcb6d4b3f65 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -53,8 +53,8 @@ /obj/machinery/recycler/RefreshParts() . = ..() var/amt_made = 0 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - amt_made = 12.5 * manipulator.tier //% of materials salvaged + for(var/datum/stock_part/servo/servo in component_parts) + amt_made = 12.5 * servo.tier //% of materials salvaged amount_produced = min(50, amt_made) + 50 var/datum/component/butchering/butchering = GetComponent(/datum/component/butchering/recycler) butchering.effectiveness = amount_produced diff --git a/code/game/machinery/sleepers.dm b/code/game/machinery/sleepers.dm index 377fc71abc7..6f7cee63d87 100644 --- a/code/game/machinery/sleepers.dm +++ b/code/game/machinery/sleepers.dm @@ -70,8 +70,8 @@ min_health = initial(min_health) * matterbin_rating available_chems.Cut() - for(var/datum/stock_part/manipulator/manipulators in component_parts) - for(var/i in 1 to manipulators.tier) + for(var/datum/stock_part/servo/servos in component_parts) + for(var/i in 1 to servos.tier) available_chems |= possible_chems[i] reset_chem_buttons() diff --git a/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm index 747ea1784f9..db1c9612f99 100644 --- a/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm +++ b/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm @@ -15,7 +15,7 @@ build_path = /obj/machinery/bsa/front specific_parts = TRUE req_components = list( - /datum/stock_part/manipulator/tier4 = 5, + /datum/stock_part/servo/tier4 = 5, /obj/item/stack/cable_coil = 2) /obj/item/circuitboard/machine/bsa/middle @@ -33,7 +33,7 @@ specific_parts = TRUE req_components = list( /datum/stock_part/capacitor/tier3 = 5, - /datum/stock_part/manipulator/tier3 = 5, + /datum/stock_part/servo/tier3 = 5, /obj/item/stack/cable_coil = 2) //Engineering @@ -61,7 +61,7 @@ build_path = /obj/machinery/autolathe req_components = list( /datum/stock_part/matter_bin = 3, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/stack/sheet/glass = 1) /obj/item/circuitboard/machine/grounding_rod @@ -77,7 +77,7 @@ greyscale_colors = CIRCUIT_COLOR_ENGINEERING build_path = /obj/machinery/telecomms/broadcaster req_components = list( - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /obj/item/stack/cable_coil = 1, /datum/stock_part/filter = 1, /datum/stock_part/crystal = 1, @@ -88,7 +88,7 @@ greyscale_colors = CIRCUIT_COLOR_ENGINEERING build_path = /obj/machinery/telecomms/bus req_components = list( - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /obj/item/stack/cable_coil = 1, /datum/stock_part/filter = 1) @@ -97,7 +97,7 @@ greyscale_colors = CIRCUIT_COLOR_ENGINEERING build_path = /obj/machinery/telecomms/hub req_components = list( - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /obj/item/stack/cable_coil = 2, /datum/stock_part/filter = 2) @@ -106,7 +106,7 @@ greyscale_colors = CIRCUIT_COLOR_ENGINEERING build_path = /obj/machinery/telecomms/message_server req_components = list( - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /obj/item/stack/cable_coil = 1, /datum/stock_part/filter = 3) @@ -115,7 +115,7 @@ greyscale_colors = CIRCUIT_COLOR_ENGINEERING build_path = /obj/machinery/telecomms/processor req_components = list( - /datum/stock_part/manipulator = 3, + /datum/stock_part/servo = 3, /datum/stock_part/filter = 1, /datum/stock_part/treatment = 2, /datum/stock_part/analyzer = 1, @@ -129,7 +129,7 @@ req_components = list( /datum/stock_part/ansible = 1, /datum/stock_part/filter = 1, - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /datum/stock_part/micro_laser = 1) /obj/item/circuitboard/machine/telecomms/relay @@ -137,7 +137,7 @@ greyscale_colors = CIRCUIT_COLOR_ENGINEERING build_path = /obj/machinery/telecomms/relay req_components = list( - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /obj/item/stack/cable_coil = 2, /datum/stock_part/filter = 2) @@ -146,7 +146,7 @@ greyscale_colors = CIRCUIT_COLOR_ENGINEERING build_path = /obj/machinery/telecomms/server req_components = list( - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /obj/item/stack/cable_coil = 1, /datum/stock_part/filter = 1) @@ -177,7 +177,7 @@ build_path = /obj/machinery/power/emitter req_components = list( /datum/stock_part/micro_laser = 1, - /datum/stock_part/manipulator = 1) + /datum/stock_part/servo = 1) needs_anchored = FALSE /obj/item/circuitboard/machine/generator @@ -380,7 +380,7 @@ build_path = /obj/machinery/component_printer req_components = list( /datum/stock_part/matter_bin = 2, - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, ) /obj/item/circuitboard/machine/module_duplicator @@ -389,7 +389,7 @@ build_path = /obj/machinery/module_duplicator req_components = list( /datum/stock_part/matter_bin = 2, - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, ) /obj/item/circuitboard/machine/circuit_imprinter @@ -398,7 +398,7 @@ build_path = /obj/machinery/rnd/production/circuit_imprinter req_components = list( /datum/stock_part/matter_bin = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/reagent_containers/cup/beaker = 2) /obj/item/circuitboard/machine/circuit_imprinter/offstation @@ -440,7 +440,7 @@ build_path = /obj/machinery/launchpad req_components = list( /obj/item/stack/ore/bluespace_crystal = 1, - /datum/stock_part/manipulator = 1) + /datum/stock_part/servo = 1) def_components = list(/obj/item/stack/ore/bluespace_crystal = /obj/item/stack/ore/bluespace_crystal/artificial) /obj/item/circuitboard/machine/protolathe @@ -449,7 +449,7 @@ build_path = /obj/machinery/rnd/production/protolathe req_components = list( /datum/stock_part/matter_bin = 2, - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /obj/item/reagent_containers/cup/beaker = 2) /obj/item/circuitboard/machine/protolathe/offstation @@ -466,7 +466,7 @@ greyscale_colors = CIRCUIT_COLOR_GENERIC build_path = /obj/machinery/reagentgrinder/constructed req_components = list( - /datum/stock_part/manipulator = 1) + /datum/stock_part/servo = 1) needs_anchored = FALSE /obj/item/circuitboard/machine/smartfridge @@ -523,7 +523,7 @@ greyscale_colors = CIRCUIT_COLOR_GENERIC build_path = /obj/machinery/electrolyzer req_components = list( - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /datum/stock_part/capacitor = 2, /obj/item/stack/cable_coil = 5, /obj/item/stack/sheet/glass = 1) @@ -537,7 +537,7 @@ build_path = /obj/machinery/rnd/production/techfab req_components = list( /datum/stock_part/matter_bin = 2, - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /obj/item/reagent_containers/cup/beaker = 2) /obj/item/circuitboard/machine/techfab/department @@ -654,7 +654,7 @@ /datum/stock_part/crystal = 1, /datum/stock_part/scanning_module = 1, /datum/stock_part/micro_laser = 1, - /datum/stock_part/manipulator = 1,) + /datum/stock_part/servo = 1,) //Medical @@ -665,7 +665,7 @@ req_components = list( /datum/stock_part/matter_bin = 2, /datum/stock_part/capacitor = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/stack/sheet/glass = 1, /obj/item/stock_parts/cell = 1) def_components = list(/obj/item/stock_parts/cell = /obj/item/stock_parts/cell/high) @@ -677,7 +677,7 @@ req_components = list( /datum/stock_part/matter_bin/tier4 = 2, /datum/stock_part/capacitor/tier4 = 2, - /datum/stock_part/manipulator/tier4 = 2, + /datum/stock_part/servo/tier4 = 2, /obj/item/stack/sheet/glass = 1, /obj/item/stock_parts/cell/bluespace = 1, ) @@ -688,7 +688,7 @@ req_components = list( /datum/stock_part/matter_bin/tier4 = 2, /datum/stock_part/capacitor/tier4 = 2, - /datum/stock_part/manipulator/tier4 = 2, + /datum/stock_part/servo/tier4 = 2, /obj/item/stack/sheet/glass = 1, /obj/item/stock_parts/cell/bluespace = 1, ) @@ -702,7 +702,7 @@ req_components = list( /datum/stock_part/matter_bin/tier4 = 2, /datum/stock_part/capacitor/tier4 = 2, - /datum/stock_part/manipulator/tier4 = 2, + /datum/stock_part/servo/tier4 = 2, /obj/item/stack/sheet/glass = 1, /obj/item/stock_parts/cell/bluespace = 1, ) @@ -731,7 +731,7 @@ desc = "You can turn the \"mode selection\" dial using a screwdriver." req_components = list( /obj/item/reagent_containers/cup/beaker = 2, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/stack/sheet/glass = 1) needs_anchored = FALSE @@ -799,7 +799,7 @@ greyscale_colors = CIRCUIT_COLOR_MEDICAL build_path = /obj/machinery/limbgrower req_components = list( - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/reagent_containers/cup/beaker = 2, /obj/item/stack/sheet/glass = 1) @@ -808,7 +808,7 @@ greyscale_colors = CIRCUIT_COLOR_MEDICAL build_path = /obj/machinery/limbgrower req_components = list( - /datum/stock_part/manipulator/tier4 = 1, + /datum/stock_part/servo/tier4 = 1, /obj/item/reagent_containers/cup/beaker/bluespace = 2, /obj/item/stack/sheet/glass = 1) @@ -823,7 +823,7 @@ build_path = /obj/machinery/sleeper req_components = list( /datum/stock_part/matter_bin = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/stack/cable_coil = 1, /obj/item/stack/sheet/glass = 2) @@ -831,7 +831,7 @@ build_path = /obj/machinery/sleeper/syndie/fullupgrade req_components = list( /datum/stock_part/matter_bin/tier4 = 1, - /datum/stock_part/manipulator/tier4 = 1, + /datum/stock_part/servo/tier4 = 1, /obj/item/stack/cable_coil = 1, /obj/item/stack/sheet/glass = 2) @@ -846,7 +846,7 @@ req_components = list( /datum/stock_part/matter_bin = 2, /datum/stock_part/capacitor = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/stack/sheet/glass = 1, /obj/item/stock_parts/cell = 1) needs_anchored = FALSE @@ -857,7 +857,7 @@ build_path = /obj/machinery/stasis req_components = list( /obj/item/stack/cable_coil = 3, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /datum/stock_part/capacitor = 1) /obj/item/circuitboard/machine/medipen_refiller @@ -886,7 +886,7 @@ req_components = list( /datum/stock_part/capacitor = 2, /obj/item/stock_parts/cell = 1, - /datum/stock_part/manipulator = 1) + /datum/stock_part/servo = 1) def_components = list(/obj/item/stock_parts/cell = /obj/item/stock_parts/cell/high) /obj/item/circuitboard/machine/destructive_analyzer @@ -895,7 +895,7 @@ build_path = /obj/machinery/rnd/destructive_analyzer req_components = list( /datum/stock_part/scanning_module = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /datum/stock_part/micro_laser = 1) /obj/item/circuitboard/machine/experimentor @@ -904,7 +904,7 @@ build_path = /obj/machinery/rnd/experimentor req_components = list( /datum/stock_part/scanning_module = 1, - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /datum/stock_part/micro_laser = 2) /obj/item/circuitboard/machine/mech_recharger @@ -921,7 +921,7 @@ build_path = /obj/machinery/mecha_part_fabricator req_components = list( /datum/stock_part/matter_bin = 2, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /datum/stock_part/micro_laser = 1, /obj/item/stack/sheet/glass = 1) @@ -931,7 +931,7 @@ build_path = /obj/machinery/monkey_recycler req_components = list( /datum/stock_part/matter_bin = 1, - /datum/stock_part/manipulator = 1) + /datum/stock_part/servo = 1) needs_anchored = FALSE /obj/item/circuitboard/machine/processor/slime @@ -951,7 +951,7 @@ req_components = list( /obj/item/stack/ore/bluespace_crystal = 1, /datum/stock_part/capacitor = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/stack/cable_coil = 1) def_components = list(/obj/item/stack/ore/bluespace_crystal = /obj/item/stack/ore/bluespace_crystal/artificial) @@ -1049,7 +1049,7 @@ build_path = /obj/machinery/biogenerator req_components = list( /datum/stock_part/matter_bin = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/stack/cable_coil = 1, /obj/item/stack/sheet/glass = 1) @@ -1063,7 +1063,7 @@ req_components = list( /datum/stock_part/matter_bin/tier4 = 2, /datum/stock_part/capacitor/tier4 = 2, - /datum/stock_part/manipulator/tier4 = 2, + /datum/stock_part/servo/tier4 = 2, /obj/item/stack/sheet/glass = 1, /obj/item/stock_parts/cell/bluespace = 1, ) @@ -1078,7 +1078,7 @@ req_components = list( /datum/stock_part/matter_bin/tier4 = 2, /datum/stock_part/capacitor/tier4 = 2, - /datum/stock_part/manipulator/tier4 = 2, + /datum/stock_part/servo/tier4 = 2, /obj/item/stack/sheet/glass = 1, /obj/item/stock_parts/cell/bluespace = 1, ) @@ -1129,7 +1129,7 @@ build_path = /obj/machinery/dish_drive req_components = list( /obj/item/stack/sheet/glass = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /datum/stock_part/matter_bin = 2) var/suction = TRUE var/transmit = TRUE @@ -1156,7 +1156,7 @@ build_path = /obj/machinery/gibber req_components = list( /datum/stock_part/matter_bin = 1, - /datum/stock_part/manipulator = 1) + /datum/stock_part/servo = 1) needs_anchored = FALSE /obj/item/circuitboard/machine/hydroponics @@ -1165,7 +1165,7 @@ build_path = /obj/machinery/hydroponics/constructable req_components = list( /datum/stock_part/matter_bin = 2, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/stack/sheet/glass = 1) needs_anchored = FALSE @@ -1186,7 +1186,7 @@ build_path = /obj/machinery/processor req_components = list( /datum/stock_part/matter_bin = 1, - /datum/stock_part/manipulator = 1) + /datum/stock_part/servo = 1) needs_anchored = FALSE /obj/item/circuitboard/machine/processor/screwdriver_act(mob/living/user, obj/item/tool) @@ -1210,7 +1210,7 @@ greyscale_colors = CIRCUIT_COLOR_SERVICE build_path = /obj/machinery/recycler req_components = list( - /datum/stock_part/manipulator = 1) + /datum/stock_part/servo = 1) needs_anchored = FALSE /obj/item/circuitboard/machine/seed_extractor @@ -1219,7 +1219,7 @@ build_path = /obj/machinery/seed_extractor req_components = list( /datum/stock_part/matter_bin = 1, - /datum/stock_part/manipulator = 1) + /datum/stock_part/servo = 1) needs_anchored = FALSE /obj/item/circuitboard/machine/techfab/department/service @@ -1243,7 +1243,7 @@ /obj/item/stack/sheet/glass = 1, /datum/stock_part/matter_bin = 1, /datum/stock_part/micro_laser = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /obj/item/assembly/igniter = 1) needs_anchored = FALSE @@ -1266,7 +1266,7 @@ greyscale_colors = CIRCUIT_COLOR_SUPPLY build_path = /obj/machinery/mineral/stacking_machine req_components = list( - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /datum/stock_part/matter_bin = 2) /obj/item/circuitboard/machine/stacking_unit_console @@ -1289,7 +1289,7 @@ req_components = list( /obj/item/stack/cable_coil = 5, /datum/stock_part/capacitor = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, /datum/stock_part/micro_laser = 1, /datum/stock_part/scanning_module = 1) @@ -1299,7 +1299,7 @@ greyscale_colors = CIRCUIT_COLOR_SUPPLY build_path = /obj/machinery/sheetifier req_components = list( - /datum/stock_part/manipulator = 2, + /datum/stock_part/servo = 2, /datum/stock_part/matter_bin = 2) needs_anchored = FALSE @@ -1361,7 +1361,7 @@ req_components = list( /datum/stock_part/micro_laser = 2, /datum/stock_part/matter_bin = 1, - /datum/stock_part/manipulator = 2) + /datum/stock_part/servo = 2) /obj/item/circuitboard/machine/doppler_array name = "Tachyon-Doppler Research Array" @@ -1401,7 +1401,7 @@ req_components = list( /obj/item/stack/sheet/plasteel = 15, /datum/stock_part/scanning_module = 1, - /datum/stock_part/manipulator = 1, + /datum/stock_part/servo = 1, ) /obj/item/circuitboard/machine/tank_compressor diff --git a/code/game/objects/items/storage/boxes/science_boxes.dm b/code/game/objects/items/storage/boxes/science_boxes.dm index 754a0cb2f5b..871b80cc298 100644 --- a/code/game/objects/items/storage/boxes/science_boxes.dm +++ b/code/game/objects/items/storage/boxes/science_boxes.dm @@ -75,7 +75,7 @@ /obj/item/storage/box/stockparts/basic/PopulateContents() var/static/items_inside = list( /obj/item/stock_parts/capacitor = 3, - /obj/item/stock_parts/manipulator = 3, + /obj/item/stock_parts/servo = 3, /obj/item/stock_parts/matter_bin = 3, /obj/item/stock_parts/micro_laser = 3, /obj/item/stock_parts/scanning_module = 3, @@ -91,7 +91,7 @@ var/static/items_inside = list( /obj/item/stock_parts/capacitor/quadratic = 3, /obj/item/stock_parts/scanning_module/triphasic = 3, - /obj/item/stock_parts/manipulator/femto = 3, + /obj/item/stock_parts/servo/femto = 3, /obj/item/stock_parts/micro_laser/quadultra = 3, /obj/item/stock_parts/matter_bin/bluespace = 3, ) diff --git a/code/game/objects/items/storage/boxes/service_boxes.dm b/code/game/objects/items/storage/boxes/service_boxes.dm index 3ff3480817e..56f59b5572e 100644 --- a/code/game/objects/items/storage/boxes/service_boxes.dm +++ b/code/game/objects/items/storage/boxes/service_boxes.dm @@ -170,7 +170,7 @@ /obj/item/stack/cable_coil/five = 1, /obj/item/stack/sheet/glass = 1, /obj/item/stack/sheet/iron/five = 1, - /obj/item/stock_parts/manipulator = 1, + /obj/item/stock_parts/servo = 1, /obj/item/stock_parts/matter_bin = 2, /obj/item/wrench = 1, ) diff --git a/code/modules/atmospherics/machinery/components/electrolyzer/electrolyzer.dm b/code/modules/atmospherics/machinery/components/electrolyzer/electrolyzer.dm index e934ea5a769..6ca66620997 100644 --- a/code/modules/atmospherics/machinery/components/electrolyzer/electrolyzer.dm +++ b/code/modules/atmospherics/machinery/components/electrolyzer/electrolyzer.dm @@ -144,8 +144,8 @@ . = ..() var/power = 0 var/cap = 0 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - power += manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + power += servo.tier for(var/datum/stock_part/capacitor/capacitor in component_parts) cap += capacitor.tier diff --git a/code/modules/explorer_drone/exploration_events/trader.dm b/code/modules/explorer_drone/exploration_events/trader.dm index 2921d0bdaf7..8a0171c344c 100644 --- a/code/modules/explorer_drone/exploration_events/trader.dm +++ b/code/modules/explorer_drone/exploration_events/trader.dm @@ -70,7 +70,7 @@ deep_scan_description = "You detect a spot with unusal concentraction of edibles on the site." required_site_traits = list(EXPLORATION_SITE_HABITABLE,EXPLORATION_SITE_SURFACE) band_values = list(EXOSCANNER_BAND_LIFE=2) - required_path = /obj/item/stock_parts/manipulator/nano + required_path = /obj/item/stock_parts/servo/nano traded_path = list(/obj/item/seeds/tomato/killer,/obj/item/seeds/orange_3d,/obj/item/seeds/firelemon,/obj/item/seeds/gatfruit) amount = 1 diff --git a/code/modules/food_and_drinks/machinery/gibber.dm b/code/modules/food_and_drinks/machinery/gibber.dm index 3b474d0ff6f..5bf49c0778c 100644 --- a/code/modules/food_and_drinks/machinery/gibber.dm +++ b/code/modules/food_and_drinks/machinery/gibber.dm @@ -29,17 +29,17 @@ meat_produced = initial(meat_produced) for(var/datum/stock_part/matter_bin/matter_bin in component_parts) meat_produced += matter_bin.tier - for(var/datum/stock_part/manipulator/manipulator in component_parts) - gibtime -= 5 * manipulator.tier - if(manipulator.tier >= 2) + for(var/datum/stock_part/servo/servo in component_parts) + gibtime -= 5 * servo.tier + if(servo.tier >= 2) ignore_clothing = TRUE /obj/machinery/gibber/examine(mob/user) . = ..() if(in_range(user, src) || isobserver(user)) . += span_notice("The status display reads: Outputting [meat_produced] meat slab(s) after [gibtime*0.1] seconds of processing.") - for(var/datum/stock_part/manipulator/manipulator in component_parts) - if(manipulator.tier >= 2) + for(var/datum/stock_part/servo/servo in component_parts) + if(servo.tier >= 2) . += span_notice("[src] has been upgraded to process inorganic materials.") /obj/machinery/gibber/update_overlays() diff --git a/code/modules/food_and_drinks/machinery/monkeyrecycler.dm b/code/modules/food_and_drinks/machinery/monkeyrecycler.dm index fa5418d3030..1a9c8db1bb0 100644 --- a/code/modules/food_and_drinks/machinery/monkeyrecycler.dm +++ b/code/modules/food_and_drinks/machinery/monkeyrecycler.dm @@ -28,8 +28,8 @@ GLOBAL_LIST_EMPTY(monkey_recyclers) /obj/machinery/monkey_recycler/RefreshParts() //Ranges from 0.2 to 0.8 per monkey recycled . = ..() cube_production = 0 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - cube_production += manipulator.tier * 0.1 + for(var/datum/stock_part/servo/servo in component_parts) + cube_production += servo.tier * 0.1 for(var/datum/stock_part/matter_bin/matter_bin in component_parts) cube_production += matter_bin.tier * 0.1 diff --git a/code/modules/food_and_drinks/machinery/processor.dm b/code/modules/food_and_drinks/machinery/processor.dm index b8e5f9dfebe..ad397958e9d 100644 --- a/code/modules/food_and_drinks/machinery/processor.dm +++ b/code/modules/food_and_drinks/machinery/processor.dm @@ -45,8 +45,8 @@ . = ..() for(var/datum/stock_part/matter_bin/matter_bin in component_parts) rating_amount = matter_bin.tier - for(var/datum/stock_part/manipulator/manipulator in component_parts) - rating_speed = manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + rating_speed = servo.tier /obj/machinery/processor/examine(mob/user) . = ..() diff --git a/code/modules/hydroponics/biogenerator.dm b/code/modules/hydroponics/biogenerator.dm index fc35ffc1014..e1970f3d024 100644 --- a/code/modules/hydroponics/biogenerator.dm +++ b/code/modules/hydroponics/biogenerator.dm @@ -89,10 +89,10 @@ for(var/datum/stock_part/matter_bin/bin in component_parts) new_max_items += MAX_ITEMS_PER_RATING * bin.tier - for(var/datum/stock_part/manipulator/manipulator in component_parts) - new_productivity += manipulator.tier - new_efficiency += manipulator.tier - new_processed_items_per_cycle += PROCESSED_ITEMS_PER_RATING * manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + new_productivity += servo.tier + new_efficiency += servo.tier + new_processed_items_per_cycle += PROCESSED_ITEMS_PER_RATING * servo.tier max_items = new_max_items efficiency = new_efficiency diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index 38010c18075..80f48a2c615 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -167,8 +167,8 @@ var/tmp_capacity = 0 for (var/datum/stock_part/matter_bin/matter_bin in component_parts) tmp_capacity += matter_bin.tier - for (var/datum/stock_part/manipulator/manipulator in component_parts) - rating = manipulator.tier + for (var/datum/stock_part/servo/servo in component_parts) + rating = servo.tier maxwater = tmp_capacity * 50 // Up to 300 maxnutri = (tmp_capacity * 5) + STATIC_NUTRIENT_CAPACITY // Up to 50 Maximum reagents.maximum_volume = maxnutri diff --git a/code/modules/hydroponics/seed_extractor.dm b/code/modules/hydroponics/seed_extractor.dm index d9c445cde33..a6c4ccee2a1 100644 --- a/code/modules/hydroponics/seed_extractor.dm +++ b/code/modules/hydroponics/seed_extractor.dm @@ -80,8 +80,8 @@ . = ..() for(var/datum/stock_part/matter_bin/matter_bin in component_parts) max_seeds = initial(max_seeds) * matter_bin.tier - for(var/datum/stock_part/manipulator/manipulator in component_parts) - seed_multiplier = initial(seed_multiplier) * manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + seed_multiplier = initial(seed_multiplier) * servo.tier /obj/machinery/seed_extractor/examine(mob/user) . = ..() diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index 5333450b1fe..d165bf237f2 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -94,8 +94,8 @@ maximum_fire_delay = max_fire_delay minimum_fire_delay = min_fire_delay fire_delay = fire_shoot_delay - for(var/datum/stock_part/manipulator/manipulator in component_parts) - power_usage -= 50 * manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + power_usage -= 50 * servo.tier update_mode_power_usage(ACTIVE_POWER_USE, power_usage) /obj/machinery/power/emitter/examine(mob/user) diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index c66dee0fbaa..f00468d02fa 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -423,12 +423,12 @@ for(var/datum/stock_part/capacitor/capacitor in component_parts) recharge_amount *= capacitor.tier parts_rating += capacitor.tier - for(var/datum/stock_part/manipulator/manipulator in component_parts) - if (manipulator.tier > 3) + for(var/datum/stock_part/servo/servo in component_parts) + if (servo.tier > 3) dispensable_reagents |= upgrade_reagents else dispensable_reagents -= upgrade_reagents - parts_rating += manipulator.tier + parts_rating += servo.tier powerefficiency = round(newpowereff, 0.01) /obj/machinery/chem_dispenser/proc/replace_beaker(mob/living/user, obj/item/reagent_containers/new_beaker) diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm index e960587042a..8e5c0101594 100644 --- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm +++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm @@ -67,8 +67,8 @@ /obj/machinery/reagentgrinder/RefreshParts() . = ..() speed = 1 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - speed = manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + speed = servo.tier /obj/machinery/reagentgrinder/examine(mob/user) . = ..() diff --git a/code/modules/reagents/chemistry/machinery/smoke_machine.dm b/code/modules/reagents/chemistry/machinery/smoke_machine.dm index 160e0aa1788..0271c17d18b 100644 --- a/code/modules/reagents/chemistry/machinery/smoke_machine.dm +++ b/code/modules/reagents/chemistry/machinery/smoke_machine.dm @@ -54,8 +54,8 @@ /obj/machinery/smoke_machine/RefreshParts() . = ..() var/new_volume = REAGENTS_BASE_VOLUME - for(var/datum/stock_part/matter_bin/B in component_parts) - new_volume += REAGENTS_BASE_VOLUME * B.tier + for(var/datum/stock_part/matter_bin/matter_bin in component_parts) + new_volume += REAGENTS_BASE_VOLUME * matter_bin.tier if(!reagents) create_reagents(new_volume, INJECTABLE) reagents.maximum_volume = new_volume @@ -63,11 +63,11 @@ reagents.expose(loc, TOUCH) // if someone manages to downgrade it without deconstructing reagents.clear_reagents() efficiency = 18 - for(var/datum/stock_part/capacitor/C in component_parts) - efficiency += 2 * C.tier + for(var/datum/stock_part/capacitor/capacitor in component_parts) + efficiency += 2 * capacitor.tier max_range = 1 - for(var/datum/stock_part/manipulator/M in component_parts) - max_range += M.tier + for(var/datum/stock_part/servo/servo in component_parts) + max_range += servo.tier max_range = max(3, max_range) /obj/machinery/smoke_machine/on_set_is_operational(old_value) diff --git a/code/modules/research/bepis.dm b/code/modules/research/bepis.dm index fab66268f94..2f038b27511 100644 --- a/code/modules/research/bepis.dm +++ b/code/modules/research/bepis.dm @@ -94,8 +94,8 @@ for(var/datum/stock_part/capacitor/capacitor in component_parts) C += ((capacitor.tier - 1) * 0.1) power_saver = 1 - C - for(var/datum/stock_part/manipulator/manipulator in component_parts) - M += ((manipulator.tier - 1) * PART_CASH_OFFSET_AMOUNT) + for(var/datum/stock_part/servo/servo in component_parts) + M += ((servo.tier - 1) * PART_CASH_OFFSET_AMOUNT) positive_cash_offset = M for(var/datum/stock_part/micro_laser/Laser in component_parts) L += ((Laser.tier - 1) * PART_CASH_OFFSET_AMOUNT) diff --git a/code/modules/research/designs/stock_parts_designs.dm b/code/modules/research/designs/stock_parts_designs.dm index 8436cc8c9a6..82640246391 100644 --- a/code/modules/research/designs/stock_parts_designs.dm +++ b/code/modules/research/designs/stock_parts_designs.dm @@ -133,52 +133,52 @@ departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE //Maipulators -/datum/design/micro_mani - name = "Micro Manipulator" +/datum/design/micro_servo + name = "Micro Servo" desc = "A stock part used in the construction of various devices." - id = "micro_mani" + id = "micro_servo" build_type = PROTOLATHE | AWAY_LATHE | AUTOLATHE materials = list(/datum/material/iron =SMALL_MATERIAL_AMOUNT) - build_path = /obj/item/stock_parts/manipulator + build_path = /obj/item/stock_parts/servo category = list( RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1 ) lathe_time_factor = 0.2 departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE -/datum/design/nano_mani - name = "Nano Manipulator" +/datum/design/nano_servo + name = "Nano Servo" desc = "A stock part used in the construction of various devices." - id = "nano_mani" + id = "nano_servo" build_type = PROTOLATHE | AWAY_LATHE materials = list(/datum/material/iron = 150) - build_path = /obj/item/stock_parts/manipulator/nano + build_path = /obj/item/stock_parts/servo/nano category = list( RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_2 ) lathe_time_factor = 0.2 departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE -/datum/design/pico_mani - name = "Pico Manipulator" +/datum/design/pico_servo + name = "Pico Servo" desc = "A stock part used in the construction of various devices." - id = "pico_mani" + id = "pico_servo" build_type = PROTOLATHE | AWAY_LATHE materials = list(/datum/material/iron =SMALL_MATERIAL_AMOUNT * 2) - build_path = /obj/item/stock_parts/manipulator/pico + build_path = /obj/item/stock_parts/servo/pico category = list( RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_3 ) lathe_time_factor = 0.2 departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE -/datum/design/femto_mani - name = "Femto Manipulator" +/datum/design/femto_servo + name = "Femto Servo" desc = "A stock part used in the construction of various devices." - id = "femto_mani" + id = "femto_servo" build_type = PROTOLATHE | AWAY_LATHE materials = list(/datum/material/iron =SMALL_MATERIAL_AMOUNT * 2, /datum/material/diamond = 30, /datum/material/titanium = 30) - build_path = /obj/item/stock_parts/manipulator/femto + build_path = /obj/item/stock_parts/servo/femto category = list( RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_4 ) diff --git a/code/modules/research/experimentor.dm b/code/modules/research/experimentor.dm index a02e9d211b4..25169292919 100644 --- a/code/modules/research/experimentor.dm +++ b/code/modules/research/experimentor.dm @@ -110,8 +110,8 @@ . = ..() malfunction_probability_coeff = malfunction_probability_coeff_modifier resetTime = initial(resetTime) - for(var/datum/stock_part/manipulator/manipulator in component_parts) - resetTime = max(1, resetTime - manipulator.tier) + for(var/datum/stock_part/servo/servo in component_parts) + resetTime = max(1, resetTime - servo.tier) for(var/datum/stock_part/scanning_module/scanning_module in component_parts) malfunction_probability_coeff += scanning_module.tier * 2 for(var/datum/stock_part/micro_laser/micro_laser in component_parts) diff --git a/code/modules/research/machinery/_production.dm b/code/modules/research/machinery/_production.dm index 574b4d1c57f..fd3c4d7178b 100644 --- a/code/modules/research/machinery/_production.dm +++ b/code/modules/research/machinery/_production.dm @@ -207,8 +207,8 @@ var/total_rating = 1.2 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - total_rating -= manipulator.tier * 0.1 + for(var/datum/stock_part/servo/servo in component_parts) + total_rating -= servo.tier * 0.1 efficiency_coeff = max(total_rating, 0) diff --git a/code/modules/research/machinery/circuit_imprinter.dm b/code/modules/research/machinery/circuit_imprinter.dm index 850393eb85f..8127bc45d0a 100644 --- a/code/modules/research/machinery/circuit_imprinter.dm +++ b/code/modules/research/machinery/circuit_imprinter.dm @@ -11,8 +11,8 @@ var/rating = 0 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - rating += manipulator.tier // There is only one. + for(var/datum/stock_part/servo/servo in component_parts) + rating += servo.tier // There is only one. efficiency_coeff = 0.5 ** max(rating - 1, 0) // One sheet, half sheet, quarter sheet, eighth sheet. diff --git a/code/modules/research/stock_parts.dm b/code/modules/research/stock_parts.dm index 7f14aa37ec0..1b64d613297 100644 --- a/code/modules/research/stock_parts.dm +++ b/code/modules/research/stock_parts.dm @@ -163,7 +163,7 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good for(var/i in 1 to 10) new /obj/item/stock_parts/capacitor(src) new /obj/item/stock_parts/scanning_module(src) - new /obj/item/stock_parts/manipulator(src) + new /obj/item/stock_parts/servo(src) new /obj/item/stock_parts/micro_laser(src) new /obj/item/stock_parts/matter_bin(src) new /obj/item/stock_parts/cell/high(src) @@ -174,7 +174,7 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good for(var/i in 1 to 10) new /obj/item/stock_parts/capacitor/adv(src) new /obj/item/stock_parts/scanning_module/adv(src) - new /obj/item/stock_parts/manipulator/nano(src) + new /obj/item/stock_parts/servo/nano(src) new /obj/item/stock_parts/micro_laser/high(src) new /obj/item/stock_parts/matter_bin/adv(src) new /obj/item/stock_parts/cell/super(src) @@ -185,7 +185,7 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good for(var/i in 1 to 10) new /obj/item/stock_parts/capacitor/super(src) new /obj/item/stock_parts/scanning_module/phasic(src) - new /obj/item/stock_parts/manipulator/pico(src) + new /obj/item/stock_parts/servo/pico(src) new /obj/item/stock_parts/micro_laser/ultra(src) new /obj/item/stock_parts/matter_bin/super(src) new /obj/item/stock_parts/cell/hyper(src) @@ -196,7 +196,7 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good for(var/i in 1 to 10) new /obj/item/stock_parts/capacitor/quadratic(src) new /obj/item/stock_parts/scanning_module/triphasic(src) - new /obj/item/stock_parts/manipulator/femto(src) + new /obj/item/stock_parts/servo/femto(src) new /obj/item/stock_parts/micro_laser/quadultra(src) new /obj/item/stock_parts/matter_bin/bluespace(src) new /obj/item/stock_parts/cell/bluespace(src) @@ -207,7 +207,7 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good for(var/i in 1 to 10) new /obj/item/stock_parts/capacitor(src) new /obj/item/stock_parts/scanning_module(src) - new /obj/item/stock_parts/manipulator(src) + new /obj/item/stock_parts/servo(src) new /obj/item/stock_parts/micro_laser(src) new /obj/item/stock_parts/matter_bin(src) @@ -243,7 +243,7 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good icon = 'icons/obj/stock_parts.dmi' w_class = WEIGHT_CLASS_SMALL var/rating = 1 - ///Used when a base part has a different name to higher tiers of part. For example, machine frames want any manipulator and not just a micro-manipulator. + ///Used when a base part has a different name to higher tiers of part. For example, machine frames want any servo and not just a micro-servo. var/base_name var/energy_rating = 1 @@ -269,12 +269,12 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good icon_state = "scan_module" custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*0.5, /datum/material/glass=SMALL_MATERIAL_AMOUNT*0.2) -/obj/item/stock_parts/manipulator - name = "micro-manipulator" - desc = "A tiny little manipulator used in the construction of certain devices." - icon_state = "micro_mani" +/obj/item/stock_parts/servo + name = "micro-servo" + desc = "A tiny little servo motor used in the construction of certain devices." + icon_state = "micro_servo" custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*0.3) - base_name = "manipulator" + base_name = "servo" /obj/item/stock_parts/micro_laser name = "micro-laser" @@ -306,10 +306,10 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good energy_rating = 3 custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*0.5, /datum/material/glass=SMALL_MATERIAL_AMOUNT*0.2) -/obj/item/stock_parts/manipulator/nano - name = "nano-manipulator" - desc = "A tiny little manipulator used in the construction of certain devices." - icon_state = "nano_mani" +/obj/item/stock_parts/servo/nano + name = "nano-servo" + desc = "A tiny little servo motor used in the construction of certain devices." + icon_state = "nano_servo" rating = 2 energy_rating = 3 custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*0.3) @@ -348,10 +348,10 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good energy_rating = 5 custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*0.5, /datum/material/glass=SMALL_MATERIAL_AMOUNT*0.2) -/obj/item/stock_parts/manipulator/pico - name = "pico-manipulator" - desc = "A tiny little manipulator used in the construction of certain devices." - icon_state = "pico_mani" +/obj/item/stock_parts/servo/pico + name = "pico-servo" + desc = "A tiny little servo motor used in the construction of certain devices." + icon_state = "pico_servo" rating = 3 energy_rating = 5 custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*0.3) @@ -390,10 +390,10 @@ If you create T5+ please take a pass at mech_fabricator.dm. The parts being good energy_rating = 10 custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*0.5, /datum/material/glass=SMALL_MATERIAL_AMOUNT*0.2) -/obj/item/stock_parts/manipulator/femto - name = "femto-manipulator" - desc = "A tiny little manipulator used in the construction of certain devices." - icon_state = "femto_mani" +/obj/item/stock_parts/servo/femto + name = "femto-servo" + desc = "A tiny little servo motor used in the construction of certain devices." + icon_state = "femto_servo" rating = 4 energy_rating = 10 custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*0.3) diff --git a/code/modules/research/stock_parts/stock_part_datum.dm b/code/modules/research/stock_parts/stock_part_datum.dm index bb787bf6115..01b523e54b4 100644 --- a/code/modules/research/stock_parts/stock_part_datum.dm +++ b/code/modules/research/stock_parts/stock_part_datum.dm @@ -101,22 +101,22 @@ GLOBAL_LIST_INIT(stock_part_datums, generate_stock_part_datums()) tier = 4 physical_object_type = /obj/item/stock_parts/capacitor/quadratic -/datum/stock_part/manipulator +/datum/stock_part/servo tier = 1 - physical_object_type = /obj/item/stock_parts/manipulator - physical_object_base_type = /obj/item/stock_parts/manipulator + physical_object_type = /obj/item/stock_parts/servo + physical_object_base_type = /obj/item/stock_parts/servo -/datum/stock_part/manipulator/tier2 +/datum/stock_part/servo/tier2 tier = 2 - physical_object_type = /obj/item/stock_parts/manipulator/nano + physical_object_type = /obj/item/stock_parts/servo/nano -/datum/stock_part/manipulator/tier3 +/datum/stock_part/servo/tier3 tier = 3 - physical_object_type = /obj/item/stock_parts/manipulator/pico + physical_object_type = /obj/item/stock_parts/servo/pico -/datum/stock_part/manipulator/tier4 +/datum/stock_part/servo/tier4 tier = 4 - physical_object_type = /obj/item/stock_parts/manipulator/femto + physical_object_type = /obj/item/stock_parts/servo/femto /datum/stock_part/micro_laser tier = 1 diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index bcfe3317c9d..720b06429fd 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -68,7 +68,7 @@ "light_replacer", "light_tube", "mechfab", - "micro_mani", + "micro_servo", "miniature_power_cell", "newscaster_frame", "oven_tray", @@ -575,7 +575,7 @@ "high_cell", "high_micro_laser", "mesons", - "nano_mani", + "nano_servo", "oxygen_tank", "pacman", "plasma_tank", @@ -646,7 +646,7 @@ description = "Finely-tooled manufacturing techniques allowing for picometer-perfect precision levels." prereq_ids = list("engineering", "datatheory") design_ids = list( - "pico_mani", + "pico_servo", "super_matter_bin", ) research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 7500) @@ -709,7 +709,7 @@ design_ids = list( "bluespace_matter_bin", "bluespacebodybag", - "femto_mani", + "femto_servo", "quantum_keycard", "swapper", "triphasic_scanning", @@ -944,7 +944,7 @@ . = ..() if(!CONFIG_GET(flag/disable_secborg)) design_ids += "borg_upgrade_disablercooler" - + /datum/techweb_node/cyborg_upg_serv id = "cyborg_upg_serv" display_name = "Cyborg Upgrades: Service" diff --git a/code/modules/vehicles/mecha/mech_fabricator.dm b/code/modules/vehicles/mecha/mech_fabricator.dm index d38b1909ad3..7ae78576493 100644 --- a/code/modules/vehicles/mecha/mech_fabricator.dm +++ b/code/modules/vehicles/mecha/mech_fabricator.dm @@ -102,8 +102,8 @@ //building time adjustment coefficient (1 -> 0.8 -> 0.6) T = -1 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - T += manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + T += servo.tier time_coeff = round(initial(time_coeff) - (initial(time_coeff)*(T))/5,0.01) // Adjust the build time of any item currently being built. diff --git a/code/modules/vehicles/motorized_wheelchair.dm b/code/modules/vehicles/motorized_wheelchair.dm index 32c0c9ec9d1..21b3ec1b51c 100644 --- a/code/modules/vehicles/motorized_wheelchair.dm +++ b/code/modules/vehicles/motorized_wheelchair.dm @@ -15,8 +15,8 @@ var/panel_open = FALSE ///Parts used in building the wheelchair var/list/required_parts = list( - /datum/stock_part/manipulator, - /datum/stock_part/manipulator, + /datum/stock_part/servo, + /datum/stock_part/servo, /datum/stock_part/capacitor, ) ///power cell we draw power from @@ -41,8 +41,8 @@ /obj/vehicle/ridden/wheelchair/motorized/proc/refresh_parts() speed = 1 // Should never be under 1 - for(var/datum/stock_part/manipulator/manipulator in component_parts) - speed += manipulator.tier + for(var/datum/stock_part/servo/servo in component_parts) + speed += servo.tier var/chair_icon = "motorized_wheelchair[speed > delay_multiplier ? "_fast" : ""]" if(icon_state != chair_icon) wheels_overlay = image(icon, chair_icon + "_overlay", ABOVE_MOB_LAYER) diff --git a/code/modules/vending/assist.dm b/code/modules/vending/assist.dm index 012b2aea51e..229b19aeadb 100644 --- a/code/modules/vending/assist.dm +++ b/code/modules/vending/assist.dm @@ -10,7 +10,7 @@ /obj/item/assembly/signaler = 4, /obj/item/computer_disk/ordnance = 4, /obj/item/stock_parts/capacitor = 3, - /obj/item/stock_parts/manipulator = 3, + /obj/item/stock_parts/servo = 3, /obj/item/stock_parts/matter_bin = 3, /obj/item/stock_parts/micro_laser = 3, /obj/item/stock_parts/scanning_module = 3, diff --git a/code/modules/vending/engineering.dm b/code/modules/vending/engineering.dm index bf6ad0a7133..801a44e0f20 100644 --- a/code/modules/vending/engineering.dm +++ b/code/modules/vending/engineering.dm @@ -28,7 +28,7 @@ /obj/item/stock_parts/scanning_module = 5, /obj/item/stock_parts/micro_laser = 5, /obj/item/stock_parts/matter_bin = 5, - /obj/item/stock_parts/manipulator = 5, + /obj/item/stock_parts/servo = 5, ) refill_canister = /obj/item/vending_refill/engineering default_price = PAYCHECK_CREW diff --git a/code/modules/wiremod/core/component_printer.dm b/code/modules/wiremod/core/component_printer.dm index aad610adf43..c161239e8af 100644 --- a/code/modules/wiremod/core/component_printer.dm +++ b/code/modules/wiremod/core/component_printer.dm @@ -77,9 +77,9 @@ /obj/machinery/component_printer/proc/calculate_efficiency() var/rating = 0 - for(var/datum/stock_part/manipulator/manipulator in component_parts) + for(var/datum/stock_part/servo/servo in component_parts) ///we do -1 because normal manipulators rating of 1 gives us 1-1=0 i.e no decrement in cost - rating += manipulator.tier-1 + rating += servo.tier-1 ///linear interpolation between full cost i.e 1 & 1/8th the cost i.e 0.125 ///we do it in 6 steps because maximum rating of 2 manipulators is 8 but -1 gives us 6 @@ -348,9 +348,9 @@ var/rating = 0 - for(var/datum/stock_part/manipulator/manipulator in component_parts) + for(var/datum/stock_part/servo/servo in component_parts) ///we do -1 because normal manipulators rating of 1 gives us 1-1=0 i.e no decrement in cost - rating += manipulator.tier - 1 + rating += servo.tier - 1 ///linear interpolation between full cost i.e 1 & 1/8th the cost i.e 0.125 ///we do it in 6 steps because maximum rating of 2 manipulators is 8 but -1 gives us 6 diff --git a/code/modules/wiremod/shell/brain_computer_interface.dm b/code/modules/wiremod/shell/brain_computer_interface.dm index a9e718bbbbc..8b9a825ba48 100644 --- a/code/modules/wiremod/shell/brain_computer_interface.dm +++ b/code/modules/wiremod/shell/brain_computer_interface.dm @@ -525,5 +525,5 @@ build_path = /obj/machinery/bci_implanter req_components = list( /obj/item/stock_parts/micro_laser = 2, - /obj/item/stock_parts/manipulator = 1, + /obj/item/stock_parts/servo = 1, ) diff --git a/icons/obj/stock_parts.dmi b/icons/obj/stock_parts.dmi index f39c5915c659373f4ea47274962f9a3f09705a6e..d5d5475f32384faa8f036a6695cb7e1b4437f9da 100644 GIT binary patch literal 19411 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 literal 19785 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 diff --git a/tools/UpdatePaths/Scripts/75149_stock_part_resprite.txt b/tools/UpdatePaths/Scripts/75149_stock_part_resprite.txt new file mode 100644 index 00000000000..45ca533d0c1 --- /dev/null +++ b/tools/UpdatePaths/Scripts/75149_stock_part_resprite.txt @@ -0,0 +1,3 @@ +#comment This replaces all references to manipulator stock parts with servos https://github.com/tgstation/tgstation/pull/75149 + +/obj/item/stock_parts/manipulator/@SUBTYPES : /obj/item/stock_parts/servo/@SUBTYPES