diff --git a/code/ATMOSPHERICS/chiller.dm b/code/ATMOSPHERICS/chiller.dm index 3aa8b0af271..b83d30e2045 100644 --- a/code/ATMOSPHERICS/chiller.dm +++ b/code/ATMOSPHERICS/chiller.dm @@ -50,14 +50,14 @@ ..(severity) /obj/machinery/space_heater/air_conditioner/attackby(obj/item/I, mob/user) - if(istype(I, /obj/item/weapon/cell)) + if(istype(I, /obj/item/weapon/stock_parts/cell)) if(open) if(cell) user << "There is already a power cell inside." return else // insert cell - var/obj/item/weapon/cell/C = usr.get_active_hand() + var/obj/item/weapon/stock_parts/cell/C = usr.get_active_hand() if(istype(C)) user.drop_item() cell = C @@ -138,7 +138,7 @@ if("cellinstall") if(open && !cell) - var/obj/item/weapon/cell/C = usr.get_active_hand() + var/obj/item/weapon/stock_parts/cell/C = usr.get_active_hand() if(istype(C)) usr.drop_item() cell = C diff --git a/code/_onclick/hud/human.dm b/code/_onclick/hud/human.dm index 8034c571818..2bbe14bea42 100644 --- a/code/_onclick/hud/human.dm +++ b/code/_onclick/hud/human.dm @@ -524,8 +524,10 @@ for(var/obj/item/clothing/accessory/AC in U.accessories) if(AC.icon_action_button) to_update += AC - if(I.icon_action_button && (!I in to_update)) - to_update += I + continue + if(I.icon_action_button) + to_update += I + continue for(var/obj/item/I in to_update) var/obj/screen/item_action/A = new(hud_used) diff --git a/code/datums/cargoprofile.dm b/code/datums/cargoprofile.dm index 22b8446aa74..8bf2e281bbb 100644 --- a/code/datums/cargoprofile.dm +++ b/code/datums/cargoprofile.dm @@ -264,7 +264,7 @@ name = "Devices & Tools" id = "tools" blacklist = null - whitelist = list(/obj/item/device,/obj/item/weapon/card,/obj/item/weapon/cartridge,/obj/item/weapon/cautery,/obj/item/weapon/cell,/obj/item/weapon/circuitboard, + whitelist = list(/obj/item/device,/obj/item/weapon/card,/obj/item/weapon/cartridge,/obj/item/weapon/cautery,/obj/item/weapon/stock_parts/cell,/obj/item/weapon/circuitboard, /obj/item/weapon/aiModule,/obj/item/weapon/airalarm_electronics,/obj/item/weapon/airlock_electronics,/obj/item/weapon/circular_saw, /obj/item/weapon/cloaking_device,/obj/item/weapon/crowbar,/obj/item/weapon/disk,/obj/item/weapon/firealarm_electronics,/obj/item/weapon/hand_tele, /obj/item/weapon/hand_labeler,/obj/item/weapon/hemostat,/obj/item/weapon/mop,/obj/item/weapon/locator,/obj/item/weapon/minihoe, diff --git a/code/datums/crafting/recipes.dm b/code/datums/crafting/recipes.dm index 6dda4d79622..4322fcc9f4a 100644 --- a/code/datums/crafting/recipes.dm +++ b/code/datums/crafting/recipes.dm @@ -38,9 +38,9 @@ reqs = list(/obj/item/weapon/handcuffs/cable = 1, /obj/item/stack/rods = 1, /obj/item/weapon/wirecutters = 1, - /obj/item/weapon/cell = 1) + /obj/item/weapon/stock_parts/cell = 1) time = 80 - parts = list(/obj/item/weapon/cell = 1) + parts = list(/obj/item/weapon/stock_parts/cell = 1) /datum/crafting_recipe/table/flamethrower name = "Flamethrower" @@ -90,7 +90,7 @@ /obj/item/stack/sheet/metal = 5, /obj/item/stack/cable_coil = 5, /obj/item/weapon/gun/energy/advtaser = 1, - /obj/item/weapon/cell = 1, + /obj/item/weapon/stock_parts/cell = 1, /obj/item/device/assembly/prox_sensor = 1, /obj/item/robot_parts/r_arm = 1) tools = list(/obj/item/weapon/weldingtool, /obj/item/weapon/screwdriver) diff --git a/code/datums/spells/charge.dm b/code/datums/spells/charge.dm index b4603f5e6b1..cabde8c7181 100644 --- a/code/datums/spells/charge.dm +++ b/code/datums/spells/charge.dm @@ -53,8 +53,8 @@ W.icon_state = initial(W.icon_state) charged_item = I break - else if(istype(item, /obj/item/weapon/cell/)) - var/obj/item/weapon/cell/C = item + else if(istype(item, /obj/item/weapon/stock_parts/cell/)) + var/obj/item/weapon/stock_parts/cell/C = item if(prob(80)) C.maxcharge -= 200 if(C.maxcharge <= 1) //Div by 0 protection @@ -66,8 +66,8 @@ else if(item.contents) var/obj/I = null for(I in item.contents) - if(istype(I, /obj/item/weapon/cell/)) - var/obj/item/weapon/cell/C = I + if(istype(I, /obj/item/weapon/stock_parts/cell/)) + var/obj/item/weapon/stock_parts/cell/C = I if(prob(80)) C.maxcharge -= 200 if(C.maxcharge <= 1) //Div by 0 protection diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index de49b586def..5c6ef778390 100755 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -464,10 +464,10 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/weapon/storage/toolbox/electrical, /obj/item/clothing/gloves/yellow, /obj/item/clothing/gloves/yellow, - /obj/item/weapon/cell, - /obj/item/weapon/cell, - /obj/item/weapon/cell/high, - /obj/item/weapon/cell/high) + /obj/item/weapon/stock_parts/cell, + /obj/item/weapon/stock_parts/cell, + /obj/item/weapon/stock_parts/cell/high, + /obj/item/weapon/stock_parts/cell/high) cost = 15 containertype = /obj/structure/closet/crate containername = "Electrical maintenance crate" @@ -627,8 +627,8 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/device/flash, /obj/item/device/flash, /obj/item/device/flash, - /obj/item/weapon/cell/high, - /obj/item/weapon/cell/high) + /obj/item/weapon/stock_parts/cell/high, + /obj/item/weapon/stock_parts/cell/high) cost = 10 containertype = /obj/structure/closet/crate/secure/gear containername = "Robotics Assembly" diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index 2e71bd1ac69..0ef743860d2 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -480,7 +480,7 @@ var/list/uplink_items = list() /datum/uplink_item/device_tools/medkit - name = "Syndicate Medical Supply Kit" + name = "Syndicate Combat Medic Kit" desc = "The syndicate medkit is a suspicious black and red. Included is a combat stimulant injector for rapid healing, a medical hud for quick identification of injured comrades, \ and other medical supplies helpful for a medical field operative." item = /obj/item/weapon/storage/firstaid/tactical diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index e8fba96a0d0..c5c01751482 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -596,7 +596,7 @@ item_state = "RPED" icon_override = 'icons/mob/in-hand/tools.dmi' w_class = 5 - can_hold = list("/obj/item/weapon/stock_parts","/obj/item/weapon/cell") + can_hold = list("/obj/item/weapon/stock_parts") storage_slots = 50 use_to_pickup = 1 allow_quick_gather = 1 diff --git a/code/game/gamemodes/events/ninja_equipment.dm b/code/game/gamemodes/events/ninja_equipment.dm index 894121ac5ec..9ed56032e33 100644 --- a/code/game/gamemodes/events/ninja_equipment.dm +++ b/code/game/gamemodes/events/ninja_equipment.dm @@ -37,7 +37,7 @@ ________________________________________________________________________________ reagents.my_atom = src for(var/reagent_id in reagent_list) reagent_id == "uranium" ? reagents.add_reagent(reagent_id, r_maxamount+(a_boost*a_transfer)) : reagents.add_reagent(reagent_id, r_maxamount)//It will take into account uranium used for adrenaline boosting. - cell = new/obj/item/weapon/cell/high//The suit should *always* have a battery because so many things rely on it. + cell = new/obj/item/weapon/stock_parts/cell/high//The suit should *always* have a battery because so many things rely on it. cell.charge = 9990//Starting charge should not be higher than maximum charge. It leads to problems with recharging. cell.maxcharge = 10000 // Due to Ponies' overhaul Ninjas began starting with a 15000 energy cell. This should fix that issue. @@ -880,14 +880,14 @@ ________________________________________________________________________________ U << "Replenished a total of [total_reagent_transfer ? total_reagent_transfer : "zero"] chemical units."//Let the player know how much total volume was added. return - else if(istype(I, /obj/item/weapon/cell)) + else if(istype(I, /obj/item/weapon/stock_parts/cell)) if(I:maxcharge>cell.maxcharge&&n_gloves&&n_gloves.candrain) U << "\blue Higher maximum capacity detected.\nUpgrading..." if (n_gloves&&n_gloves.candrain&&do_after(U,s_delay)) U.drop_item() I.loc = src I:charge = min(I:charge+cell.charge, I:maxcharge) - var/obj/item/weapon/cell/old_cell = cell + var/obj/item/weapon/stock_parts/cell/old_cell = cell old_cell.charge = 0 U.put_in_hands(old_cell) old_cell.add_fingerprint(U) @@ -1116,7 +1116,7 @@ ________________________________________________________________________________ U << "\red This SMES cell has run dry of power. You must find another source." if("CELL") - var/obj/item/weapon/cell/A = target + var/obj/item/weapon/stock_parts/cell/A = target if(A.charge) if (G.candrain&&do_after(U,30)) U << "\blue Gained [A.charge] energy from the cell." diff --git a/code/game/gamemodes/newobjective.dm b/code/game/gamemodes/newobjective.dm index df6b31dec48..7bccda38c63 100644 --- a/code/game/gamemodes/newobjective.dm +++ b/code/game/gamemodes/newobjective.dm @@ -883,7 +883,7 @@ datum return 2 hyper_cell - steal_target = /obj/item/weapon/cell/hyper + steal_target = /obj/item/weapon/stock_parts/cell/hyper explanation_text = "Steal a hyper capacity power cell." weight = 20 diff --git a/code/game/gamemodes/scoreboard.dm b/code/game/gamemodes/scoreboard.dm index 2617fe4e04e..91611404f86 100644 --- a/code/game/gamemodes/scoreboard.dm +++ b/code/game/gamemodes/scoreboard.dm @@ -133,7 +133,7 @@ // Check station's power levels for (var/obj/machinery/power/apc/A in machines) if (A.z != 1) continue - for (var/obj/item/weapon/cell/C in A.contents) + for (var/obj/item/weapon/stock_parts/cell/C in A.contents) if (C.charge < 2300) score_powerloss += 1 // 200 charge leeway // Check how much uncleaned mess is on the station diff --git a/code/game/gamemodes/steal_items.dm b/code/game/gamemodes/steal_items.dm index 47d181f9166..4b8cdc34dca 100644 --- a/code/game/gamemodes/steal_items.dm +++ b/code/game/gamemodes/steal_items.dm @@ -36,16 +36,17 @@ /datum/theft_objective/hand_tele name = "a hand teleporter" typepath = /obj/item/weapon/hand_tele - protected_jobs = list("Captain") + protected_jobs = list("Captain", "Research Director") /datum/theft_objective/rcd - name = "an RCD" + name = "a rapid-construction-device" typepath = /obj/item/weapon/rcd - protected_jobs = list("Chief Engineer") + protected_jobs = list("Chief Engineer", "Quartermaster", "Cargo Technician", "Research Director", "Scientist", "Roboticist") /datum/theft_objective/jetpack name = "a jetpack" typepath = /obj/item/weapon/tank/jetpack + protected_jobs = list("Chief Engineer") /datum/theft_objective/cap_jumpsuit name = "the captain's jumpsuit" @@ -64,9 +65,9 @@ datum/theft_objective/ai/check_special_completion(var/obj/item/device/aicard/C) return 0 /datum/theft_objective/defib - name = "a defibrillator" - typepath = /obj/item/weapon/defibrillator - protected_jobs = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Geneticist", "Virologist", "Psychiatrist", "Paramedic", "Brig Physician") + name = "a compact defibrillator" + typepath = /obj/item/weapon/defibrillator/compact + protected_jobs = list("Chief Medical Officer") /datum/theft_objective/magboots name = "the chief engineer's advanced magnetic boots" @@ -97,7 +98,7 @@ datum/theft_objective/ai/check_special_completion(var/obj/item/device/aicard/C) /datum/theft_objective/corgi name = "a piece of corgi meat" typepath = /obj/item/weapon/reagent_containers/food/snacks/meat/corgi - protected_jobs = list("Head of Personnel") + protected_jobs = list("Head of Personnel", "Quartermaster", "Cargo Technician") /datum/theft_objective/capmedal name = "the medal of captaincy" @@ -254,7 +255,7 @@ datum/theft_objective/ai/check_special_completion(var/obj/item/device/aicard/C) /datum/theft_objective/special/hyper_cell name = "hyper-capacity cell" - typepath = /obj/item/weapon/cell/hyper + typepath = /obj/item/weapon/stock_parts/cell/hyper /datum/theft_objective/number/special flags = THEFT_FLAG_SPECIAL diff --git a/code/game/machinery/bots/ed209bot.dm b/code/game/machinery/bots/ed209bot.dm index 6fb65f8a705..8e6855a8dbf 100644 --- a/code/game/machinery/bots/ed209bot.dm +++ b/code/game/machinery/bots/ed209bot.dm @@ -665,7 +665,7 @@ Auto Patrol[]"}, user << "Taser gun attached." if(9) - if(istype(W, /obj/item/weapon/cell)) + if(istype(W, /obj/item/weapon/stock_parts/cell)) build_step++ user << "You complete the ED-209." var/turf/T = get_turf(src) diff --git a/code/game/machinery/bots/mulebot.dm b/code/game/machinery/bots/mulebot.dm index bd1ee21a88c..f9016a1061f 100644 --- a/code/game/machinery/bots/mulebot.dm +++ b/code/game/machinery/bots/mulebot.dm @@ -43,7 +43,7 @@ var/global/mulebot_count = 0 var/auto_pickup = 1 // true if auto-pickup at beacon var/report_delivery = 1 // true if bot will announce an arrival to a location. - var/obj/item/weapon/cell/cell + var/obj/item/weapon/stock_parts/cell/cell var/datum/wires/mulebot/wires = null // the installed power cell @@ -96,8 +96,8 @@ var/global/mulebot_count = 0 if(toggle_lock(user)) user << "Controls [(locked ? "locked" : "unlocked")]." updateUsrDialog() - else if(istype(I,/obj/item/weapon/cell) && open && !cell) - var/obj/item/weapon/cell/C = I + else if(istype(I,/obj/item/weapon/stock_parts/cell) && open && !cell) + var/obj/item/weapon/stock_parts/cell/C = I user.drop_item() C.loc = src cell = C @@ -286,7 +286,7 @@ var/global/mulebot_count = 0 if("cellinsert") if(open && !cell) - var/obj/item/weapon/cell/C = usr.get_active_hand() + var/obj/item/weapon/stock_parts/cell/C = usr.get_active_hand() if(istype(C)) usr.drop_item() cell = C diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm index 16c39585dfa..5a9822d6531 100644 --- a/code/game/machinery/cell_charger.dm +++ b/code/game/machinery/cell_charger.dm @@ -8,7 +8,7 @@ idle_power_usage = 5 active_power_usage = 60 power_channel = EQUIP - var/obj/item/weapon/cell/charging = null + var/obj/item/weapon/stock_parts/cell/charging = null var/chargelevel = -1 proc updateicon() @@ -38,7 +38,7 @@ if(stat & BROKEN) return - if(istype(W, /obj/item/weapon/cell) && anchored) + if(istype(W, /obj/item/weapon/stock_parts/cell) && anchored) if(charging) user << "\red There is already a cell in the charger." return diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index c108e02822c..0d3dddbba8b 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -289,7 +289,7 @@ to destroy them and players will be able to make replacements. frame_desc = "Requires 5 pieces of cable, 5 Power Cells and 1 Capacitor." req_components = list( /obj/item/stack/cable_coil = 5, - /obj/item/weapon/cell = 5, + /obj/item/weapon/stock_parts/cell = 5, /obj/item/weapon/stock_parts/capacitor = 1) @@ -361,7 +361,7 @@ to destroy them and players will be able to make replacements. /obj/item/weapon/stock_parts/capacitor = 1, /obj/item/weapon/stock_parts/manipulator = 1, /obj/item/weapon/stock_parts/console_screen = 1, - /obj/item/weapon/cell = 1) + /obj/item/weapon/stock_parts/cell = 1) /obj/item/weapon/circuitboard/destructive_analyzer name = "Circuit board (Destructive Analyzer)" @@ -583,7 +583,7 @@ obj/item/weapon/circuitboard/rdserver frame_desc = "Requires 2 Capacitors, 1 Power Cell and 1 Manipulator." req_components = list( /obj/item/weapon/stock_parts/capacitor = 2, - /obj/item/weapon/cell = 1, + /obj/item/weapon/stock_parts/cell = 1, /obj/item/weapon/stock_parts/manipulator = 1) // Telecomms circuit boards: diff --git a/code/game/machinery/floodlight.dm b/code/game/machinery/floodlight.dm index b7203be245d..419b5f7b664 100644 --- a/code/game/machinery/floodlight.dm +++ b/code/game/machinery/floodlight.dm @@ -6,7 +6,7 @@ icon_state = "flood00" density = 1 var/on = 0 - var/obj/item/weapon/cell/high/cell = null + var/obj/item/weapon/stock_parts/cell/high/cell = null var/use = 5 var/unlocked = 0 var/open = 0 @@ -83,7 +83,7 @@ open = 1 user << "You remove the battery panel." - if (istype(W, /obj/item/weapon/cell)) + if (istype(W, /obj/item/weapon/stock_parts/cell)) if(open) if(cell) user << "There is a power cell already installed." diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index 5e69e5701af..94e0efa1e99 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -351,22 +351,6 @@ Class Procs: user << "[A.name] replaced with [B.name]." shouldplaysound = 1 break - // Power cell snowflake - for(var/obj/item/weapon/cell/A in component_parts) - for(var/D in CB.req_components) - if(ispath(A.type, D)) - P = D - break - for(var/obj/item/weapon/cell/B in W.contents) - if(istype(B, P) && istype(A, P)) - if(B.rating > A.rating) - W.remove_from_storage(B, src) - W.handle_item_insertion(A, 1) - component_parts -= A - component_parts += B - B.loc = null - user << "[A.name] replaced with [B.name]." - break RefreshParts() else user << "Following parts detected in the machine:" diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index 7b5ba784ef8..7292ee58a1d 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -19,7 +19,7 @@ component_parts += new /obj/item/weapon/stock_parts/capacitor(src) component_parts += new /obj/item/weapon/stock_parts/capacitor(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) - component_parts += new /obj/item/weapon/cell/high(src) + component_parts += new /obj/item/weapon/stock_parts/cell/high(src) RefreshParts() build_icon() @@ -28,7 +28,7 @@ component_parts += new /obj/item/weapon/stock_parts/capacitor/super(src) component_parts += new /obj/item/weapon/stock_parts/capacitor/super(src) component_parts += new /obj/item/weapon/stock_parts/manipulator/pico(src) - component_parts += new /obj/item/weapon/cell/hyper(src) + component_parts += new /obj/item/weapon/stock_parts/cell/hyper(src) RefreshParts() /obj/machinery/recharge_station/RefreshParts() @@ -38,7 +38,7 @@ recharge_speed += C.rating * 100 for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts) repairs += M.rating - 1 - for(var/obj/item/weapon/cell/C in component_parts) + for(var/obj/item/weapon/stock_parts/cell/C in component_parts) recharge_speed *= C.maxcharge / 10000 /obj/machinery/recharge_station/process() diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index 9a6849dcdf4..1dd7024a41c 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -5,7 +5,7 @@ icon_state = "sheater0" name = "space heater" desc = "Made by Space Amish using traditional space techniques, this heater is guaranteed not to set the station on fire." - var/obj/item/weapon/cell/cell + var/obj/item/weapon/stock_parts/cell/cell var/on = 0 var/open = 0 var/set_temperature = 50 // in celcius, add T0C for kelvin @@ -52,14 +52,14 @@ ..(severity) attackby(obj/item/I, mob/user) - if(istype(I, /obj/item/weapon/cell)) + if(istype(I, /obj/item/weapon/stock_parts/cell)) if(open) if(cell) user << "There is already a power cell inside." return else // insert cell - var/obj/item/weapon/cell/C = usr.get_active_hand() + var/obj/item/weapon/stock_parts/cell/C = usr.get_active_hand() if(istype(C)) user.drop_item() cell = C @@ -144,7 +144,7 @@ if("cellinstall") if(open && !cell) - var/obj/item/weapon/cell/C = usr.get_active_hand() + var/obj/item/weapon/stock_parts/cell/C = usr.get_active_hand() if(istype(C)) usr.drop_item() cell = C diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 2c5f099f53b..938af0c4cdc 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -979,8 +979,8 @@ icon_state = "engivend" icon_deny = "engivend-deny" req_access_txt = "11" //Engineering Equipment access - products = list(/obj/item/clothing/glasses/meson = 2,/obj/item/device/multitool = 4,/obj/item/weapon/airlock_electronics = 10,/obj/item/weapon/module/power_control = 10,/obj/item/weapon/airalarm_electronics = 10,/obj/item/weapon/cell/high = 10) - contraband = list(/obj/item/weapon/cell/potato = 3) + products = list(/obj/item/clothing/glasses/meson = 2,/obj/item/device/multitool = 4,/obj/item/weapon/airlock_electronics = 10,/obj/item/weapon/module/power_control = 10,/obj/item/weapon/airalarm_electronics = 10,/obj/item/weapon/stock_parts/cell/high = 10) + contraband = list(/obj/item/weapon/stock_parts/cell/potato = 3) premium = list(/obj/item/weapon/storage/belt/utility = 3) //This one's from bay12 @@ -993,7 +993,7 @@ products = list(/obj/item/clothing/under/rank/chief_engineer = 4,/obj/item/clothing/under/rank/engineer = 4,/obj/item/clothing/shoes/orange = 4,/obj/item/clothing/head/hardhat = 4, /obj/item/weapon/storage/belt/utility = 4,/obj/item/clothing/glasses/meson = 4,/obj/item/clothing/gloves/yellow = 4, /obj/item/weapon/screwdriver = 12, /obj/item/weapon/crowbar = 12,/obj/item/weapon/wirecutters = 12,/obj/item/device/multitool = 12,/obj/item/weapon/wrench = 12,/obj/item/device/t_scanner = 12, - /obj/item/stack/cable_coil/heavyduty = 8, /obj/item/weapon/cell = 8, /obj/item/weapon/weldingtool = 8,/obj/item/clothing/head/welding = 8, + /obj/item/stack/cable_coil/heavyduty = 8, /obj/item/weapon/stock_parts/cell = 8, /obj/item/weapon/weldingtool = 8,/obj/item/clothing/head/welding = 8, /obj/item/weapon/light/tube = 10,/obj/item/clothing/suit/fire = 4, /obj/item/weapon/stock_parts/scanning_module = 5,/obj/item/weapon/stock_parts/micro_laser = 5, /obj/item/weapon/stock_parts/matter_bin = 5,/obj/item/weapon/stock_parts/manipulator = 5,/obj/item/weapon/stock_parts/console_screen = 5) // There was an incorrect entry (cablecoil/power). I improvised to cablecoil/heavyduty. @@ -1008,7 +1008,7 @@ icon_deny = "robotics-deny" req_access_txt = "29" products = list(/obj/item/clothing/suit/storage/labcoat = 4,/obj/item/clothing/under/rank/roboticist = 4,/obj/item/stack/cable_coil = 4,/obj/item/device/flash = 4, - /obj/item/weapon/cell/high = 12, /obj/item/device/assembly/prox_sensor = 3,/obj/item/device/assembly/signaler = 3,/obj/item/device/healthanalyzer = 3, + /obj/item/weapon/stock_parts/cell/high = 12, /obj/item/device/assembly/prox_sensor = 3,/obj/item/device/assembly/signaler = 3,/obj/item/device/healthanalyzer = 3, /obj/item/weapon/scalpel = 2,/obj/item/weapon/circular_saw = 2,/obj/item/weapon/tank/anesthetic = 2,/obj/item/clothing/mask/breath/medical = 5, /obj/item/weapon/screwdriver = 5,/obj/item/weapon/crowbar = 5) //everything after the power cell had no amounts, I improvised. -Sayu diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index 2c723a2e530..26d9d066fd8 100644 --- a/code/game/mecha/combat/gygax.dm +++ b/code/game/mecha/combat/gygax.dm @@ -53,7 +53,7 @@ ME.attach(src) return -/obj/mecha/combat/gygax/dark/add_cell(var/obj/item/weapon/cell/C=null) +/obj/mecha/combat/gygax/dark/add_cell(var/obj/item/weapon/stock_parts/cell/C=null) if(C) C.forceMove(src) cell = C diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 97aef5f4afb..e62872c9664 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -29,7 +29,7 @@ var/deflect_chance = 10 //chance to deflect the incoming projectiles, hits, or lesser the effect of ex_act. //the values in this list show how much damage will pass through, not how much will be absorbed. var/list/damage_absorption = list("brute"=0.8,"fire"=1.2,"bullet"=0.9,"laser"=1,"energy"=1,"bomb"=1) - var/obj/item/weapon/cell/cell + var/obj/item/weapon/stock_parts/cell/cell var/state = 0 var/list/log = new var/last_message = 0 @@ -115,7 +115,7 @@ internal_tank = new /obj/machinery/portable_atmospherics/canister/air(src) return internal_tank -/obj/mecha/proc/add_cell(var/obj/item/weapon/cell/C=null) +/obj/mecha/proc/add_cell(var/obj/item/weapon/stock_parts/cell/C=null) if(C) C.forceMove(src) cell = C @@ -781,7 +781,7 @@ user << "You screw the cell in place" return - else if(istype(W, /obj/item/weapon/cell)) + else if(istype(W, /obj/item/weapon/stock_parts/cell)) if(state==4) if(!src.cell) user << "You install the powercell" diff --git a/code/game/objects/items/devices/suit_cooling.dm b/code/game/objects/items/devices/suit_cooling.dm index 9ef170a7d9b..f4dfd0bf245 100644 --- a/code/game/objects/items/devices/suit_cooling.dm +++ b/code/game/objects/items/devices/suit_cooling.dm @@ -17,7 +17,7 @@ var/on = 0 //is it turned on? var/cover_open = 0 //is the cover open? - var/obj/item/weapon/cell/cell + var/obj/item/weapon/stock_parts/cell/cell var/max_cooling = 12 //in degrees per second - probably don't need to mess with heat capacity here var/charge_consumption = 16.6 //charge per second at max_cooling var/thermostat = T20C @@ -25,7 +25,7 @@ //TODO: make it heat up the surroundings when not in space /obj/item/device/suit_cooling_unit/New() - cell = new/obj/item/weapon/cell() //comes with the crappy default power cell - high-capacity ones shouldn't be hard to find + cell = new/obj/item/weapon/stock_parts/cell() //comes with the crappy default power cell - high-capacity ones shouldn't be hard to find cell.loc = src /obj/item/device/suit_cooling_unit/proc/cool_mob(mob/M) @@ -132,7 +132,7 @@ updateicon() return - if (istype(W, /obj/item/weapon/cell)) + if (istype(W, /obj/item/weapon/stock_parts/cell)) if(cover_open) if(cell) user << "There is a [cell] already installed here." diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index 744d5999ff7..b1f5a1570fd 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -49,7 +49,7 @@ construction_time = 350 construction_cost = list("metal"=40000) var/wires = 0.0 - var/obj/item/weapon/cell/cell = null + var/obj/item/weapon/stock_parts/cell/cell = null /obj/item/robot_parts/head name = "robot head" @@ -251,7 +251,7 @@ /obj/item/robot_parts/chest/attackby(obj/item/W as obj, mob/user as mob) ..() - if(istype(W, /obj/item/weapon/cell)) + if(istype(W, /obj/item/weapon/stock_parts/cell)) if(src.cell) user << "\blue You have already inserted a cell!" return diff --git a/code/game/objects/items/weapons/defib.dm b/code/game/objects/items/weapons/defib.dm index f9a347df9ac..b65a1904116 100644 --- a/code/game/objects/items/weapons/defib.dm +++ b/code/game/objects/items/weapons/defib.dm @@ -19,7 +19,8 @@ var/safety = 1 //if you can zap people with the defibs on harm mode var/powered = 0 //if there's a cell in the defib with enough power for a revive, blocks paddles from reviving otherwise var/obj/item/weapon/twohanded/shockpaddles/paddles - var/obj/item/weapon/cell/high/bcell = null + var/obj/item/weapon/stock_parts/cell/high/bcell = null + var/combat = 0 //can we revive through space suits? /obj/item/weapon/defibrillator/New() //starts without a cell for rnd ..() @@ -67,7 +68,7 @@ overlays += "defibunit-charge[ratio]" /obj/item/weapon/defibrillator/CheckParts() - bcell = locate(/obj/item/weapon/cell) in contents + bcell = locate(/obj/item/weapon/stock_parts/cell) in contents update_icon() /obj/item/weapon/defibrillator/ui_action_click() @@ -78,8 +79,8 @@ return /obj/item/weapon/defibrillator/attackby(obj/item/weapon/W, mob/user) - if(istype(W, /obj/item/weapon/cell)) - var/obj/item/weapon/cell/C = W + if(istype(W, /obj/item/weapon/stock_parts/cell)) + var/obj/item/weapon/stock_parts/cell/C = W if(bcell) user << "[src] already has a cell." else @@ -195,6 +196,49 @@ paddles.cooldown = 0 paddles.update_icon() update_icon() + +/obj/item/weapon/defibrillator/compact + name = "compact defibrillator" + desc = "A belt-equipped defibrillator that can be rapidly deployed." + icon_state = "defibcompact" + item_state = "defibcompact" + w_class = 3 + slot_flags = SLOT_BELT + origin_tech = "biotech=4" + +/obj/item/weapon/defibrillator/compact/ui_action_click() + if(usr.get_item_by_slot(slot_belt) == src) + toggle_paddles() + else + usr << "Strap the defibrillator's belt on first!" + return + +/obj/item/weapon/defibrillator/compact/loaded/New() + ..() + paddles = make_paddles() + bcell = new(src) + update_icon() + return + +/obj/item/weapon/defibrillator/compact/combat + name = "combat defibrillator" + desc = "A belt-equipped blood-red defibrillator that can be rapidly deployed. Does not have the restrictions or safeties of conventional defibrillators and can revive through space suits." + combat = 1 + safety = 0 + +/obj/item/weapon/defibrillator/compact/combat/loaded/New() + ..() + paddles = make_paddles() + bcell = new /obj/item/weapon/stock_parts/cell/infinite(src) + update_icon() + return + +/obj/item/weapon/defibrillator/compact/combat/attackby(obj/item/weapon/W, mob/user) + if(W == paddles) + paddles.unwield() + toggle_paddles() + update_icon() + return //paddles @@ -254,7 +298,7 @@ else return 1 -/obj/item/weapon/twohanded/shockpaddles/attack(mob/M as mob, mob/user as mob) +/obj/item/weapon/twohanded/shockpaddles/attack(mob/M, mob/user) var/tobehealed var/threshold = -config.health_threshold_dead var/mob/living/carbon/human/H = M @@ -300,18 +344,19 @@ playsound(get_turf(src), 'sound/weapons/flash.ogg', 50, 0) var/mob/dead/observer/ghost = H.get_ghost() var/tplus = world.time - H.timeofdeath - var/tlimit = 3000 //past this much time the patient is unrecoverable (in deciseconds) - var/tloss = 900 //brain damage starts setting in on the patient after some time left rotting + var/tlimit = 6000 //past this much time the patient is unrecoverable (in deciseconds) + var/tloss = 3000 //brain damage starts setting in on the patient after some time left rotting var/total_burn = 0 var/total_brute = 0 if(do_after(user, 20)) //placed on chest and short delay to shock for dramatic effect, revive time is 5sec total for(var/obj/item/carried_item in H.contents) - if((istype(carried_item, /obj/item/clothing/suit/armor)) || (istype(carried_item, /obj/item/clothing/suit/space))) - user.visible_message("[defib] buzzes: Patient's chest is obscured. Operation aborted.") - playsound(get_turf(src), 'sound/machines/buzz-sigh.ogg', 50, 0) - busy = 0 - update_icon() - return + if(istype(carried_item, /obj/item/clothing/suit/space)) + if(!defib.combat) + user.visible_message("[defib] buzzes: Patient's chest is obscured. Operation aborted.") + playsound(get_turf(src), 'sound/machines/buzz-sigh.ogg', 50, 0) + busy = 0 + update_icon() + return if(H.stat == 2) var/health = H.health M.visible_message("[M]'s body convulses a bit.") diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm index e98c641c363..2c68041fb16 100644 --- a/code/game/objects/items/weapons/melee/energy.dm +++ b/code/game/objects/items/weapons/melee/energy.dm @@ -54,7 +54,7 @@ /obj/item/weapon/melee/energy/sword/cyborg/attack(mob/M, var/mob/living/silicon/robot/R) if(R.cell) - var/obj/item/weapon/cell/C = R.cell + var/obj/item/weapon/stock_parts/cell/C = R.cell if(active && !(C.use(hitcost))) attack_self() R << "It's out of charge!" diff --git a/code/game/objects/items/weapons/power_cells.dm b/code/game/objects/items/weapons/power_cells.dm index cf9abda162f..5a4b7a98d9d 100644 --- a/code/game/objects/items/weapons/power_cells.dm +++ b/code/game/objects/items/weapons/power_cells.dm @@ -1,4 +1,4 @@ -/obj/item/weapon/cell +/obj/item/weapon/stock_parts/cell name = "power cell" desc = "A rechargable electrochemical power cell." icon = 'icons/obj/power.dmi' @@ -13,7 +13,7 @@ w_class = 3.0 var/charge = 0 // note %age conveted to actual charge in New var/maxcharge = 10000 - var/rating = 1 + rating = 1 m_amt = 700 g_amt = 50 var/rigged = 0 // true if rigged to explode @@ -25,7 +25,7 @@ viewers(user) << "[user] is licking the electrodes of the [src.name]! It looks like \he's trying to commit suicide." return (FIRELOSS) -/obj/item/weapon/cell/crap +/obj/item/weapon/stock_parts/cell/crap name = "\improper Nanotrasen brand rechargable AA battery" desc = "You can't top the plasma top." //TOTALLY TRADEMARK INFRINGEMENT origin_tech = "powerstorage=0" @@ -33,22 +33,22 @@ rating = 2 g_amt = 40 -/obj/item/weapon/cell/crap/empty/New() +/obj/item/weapon/stock_parts/cell/crap/empty/New() ..() charge = 0 -/obj/item/weapon/cell/secborg +/obj/item/weapon/stock_parts/cell/secborg name = "\improper Security borg rechargable D battery" origin_tech = "powerstorage=0" maxcharge = 6000 //6000 max charge / 1000 charge per shot = six shots rating = 2.5 g_amt = 40 -/obj/item/weapon/cell/secborg/empty/New() +/obj/item/weapon/stock_parts/cell/secborg/empty/New() ..() charge = 0 -/obj/item/weapon/cell/high +/obj/item/weapon/stock_parts/cell/high name = "high-capacity power cell" origin_tech = "powerstorage=2" icon_state = "hcell" @@ -56,11 +56,11 @@ rating = 3 g_amt = 60 -/obj/item/weapon/cell/high/empty/New() +/obj/item/weapon/stock_parts/cell/high/empty/New() ..() charge = 0 -/obj/item/weapon/cell/super +/obj/item/weapon/stock_parts/cell/super name = "super-capacity power cell" origin_tech = "powerstorage=5" icon_state = "scell" @@ -69,11 +69,11 @@ rating = 4 construction_cost = list("metal"=750,"glass"=100) -/obj/item/weapon/cell/super/empty/New() +/obj/item/weapon/stock_parts/cell/super/empty/New() ..() charge = 0 -/obj/item/weapon/cell/hyper +/obj/item/weapon/stock_parts/cell/hyper name = "hyper-capacity power cell" origin_tech = "powerstorage=6" icon_state = "hpcell" @@ -82,11 +82,11 @@ g_amt = 80 construction_cost = list("metal"=500,"glass"=150,"gold"=200,"silver"=200) -/obj/item/weapon/cell/hyper/empty/New() +/obj/item/weapon/stock_parts/cell/hyper/empty/New() ..() charge = 0 -/obj/item/weapon/cell/infinite +/obj/item/weapon/stock_parts/cell/infinite name = "infinite-capacity power cell!" icon_state = "icell" origin_tech = null @@ -96,7 +96,7 @@ use() return 1 -/obj/item/weapon/cell/potato +/obj/item/weapon/stock_parts/cell/potato name = "potato battery" desc = "A rechargable starch based power cell." origin_tech = "powerstorage=1" @@ -110,7 +110,7 @@ minor_fault = 1 -/obj/item/weapon/cell/slime +/obj/item/weapon/stock_parts/cell/slime name = "charged slime core" desc = "A yellow slime core infused with plasma, it crackles with power." origin_tech = "powerstorage=2;biotech=4" diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index 2e9ed7b70c9..8a33f542f4c 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -12,7 +12,7 @@ attack_verb = list("beaten") var/stunforce = 7 var/status = 0 - var/obj/item/weapon/cell/high/bcell = null + var/obj/item/weapon/stock_parts/cell/high/bcell = null var/hitcost = 1500 /obj/item/weapon/melee/baton/suicide_act(mob/user) @@ -25,7 +25,7 @@ return /obj/item/weapon/melee/baton/CheckParts() - bcell = locate(/obj/item/weapon/cell) in contents + bcell = locate(/obj/item/weapon/stock_parts/cell) in contents update_icon() /obj/item/weapon/melee/baton/loaded/New() //this one starts with a cell pre-installed. @@ -61,8 +61,8 @@ user <<"The baton does not have a power source installed." /obj/item/weapon/melee/baton/attackby(obj/item/weapon/W, mob/user) - if(istype(W, /obj/item/weapon/cell)) - var/obj/item/weapon/cell/C = W + if(istype(W, /obj/item/weapon/stock_parts/cell)) + var/obj/item/weapon/stock_parts/cell/C = W if(bcell) user << "[src] already has a cell." else diff --git a/code/game/objects/random/random.dm b/code/game/objects/random/random.dm index 832227b12d7..5c66dd46bcb 100644 --- a/code/game/objects/random/random.dm +++ b/code/game/objects/random/random.dm @@ -56,11 +56,11 @@ icon = 'icons/obj/power.dmi' icon_state = "cell" item_to_spawn() - return pick(prob(10);/obj/item/weapon/cell/crap,\ - prob(40);/obj/item/weapon/cell,\ - prob(40);/obj/item/weapon/cell/high,\ - prob(9);/obj/item/weapon/cell/super,\ - prob(1);/obj/item/weapon/cell/hyper) + return pick(prob(10);/obj/item/weapon/stock_parts/cell/crap,\ + prob(40);/obj/item/weapon/stock_parts/cell,\ + prob(40);/obj/item/weapon/stock_parts/cell/high,\ + prob(9);/obj/item/weapon/stock_parts/cell/super,\ + prob(1);/obj/item/weapon/stock_parts/cell/hyper) /obj/random/bomb_supply diff --git a/code/game/objects/structures/crates_lockers/closets/malfunction.dm b/code/game/objects/structures/crates_lockers/closets/malfunction.dm index 7cfb4f18e2f..3bf64ba34d8 100644 --- a/code/game/objects/structures/crates_lockers/closets/malfunction.dm +++ b/code/game/objects/structures/crates_lockers/closets/malfunction.dm @@ -13,5 +13,5 @@ new /obj/item/clothing/head/helmet/space/nasavoid(src) new /obj/item/clothing/suit/space/nasavoid(src) new /obj/item/weapon/crowbar(src) - new /obj/item/weapon/cell(src) + new /obj/item/weapon/stock_parts/cell(src) new /obj/item/device/multitool(src) \ No newline at end of file diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index 9e0ffec3dd8..fcd8dafd77f 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -148,7 +148,7 @@ new /obj/item/clothing/shoes/brown (src) new /obj/item/device/radio/headset/heads/cmo(src) new /obj/item/clothing/gloves/color/latex/nitrile(src) - new /obj/item/weapon/defibrillator/loaded(src) + new /obj/item/weapon/defibrillator/compact/loaded(src) new /obj/item/weapon/storage/belt/medical(src) new /obj/item/device/flash(src) new /obj/item/weapon/reagent_containers/hypospray/CMO(src) diff --git a/code/game/vehicles/spacepods/spacepod.dm b/code/game/vehicles/spacepods/spacepod.dm index 7d81ba1ebbd..ca3b4e50c6e 100644 --- a/code/game/vehicles/spacepods/spacepod.dm +++ b/code/game/vehicles/spacepods/spacepod.dm @@ -14,8 +14,8 @@ var/mob/living/carbon/occupant var/mob/living/carbon/occupant2 //two seaters var/datum/spacepod/equipment/equipment_system - var/battery_type = "/obj/item/weapon/cell/high" - var/obj/item/weapon/cell/battery + var/battery_type = "/obj/item/weapon/stock_parts/cell/high" + var/obj/item/weapon/stock_parts/cell/battery var/datum/gas_mixture/cabin_air var/obj/machinery/portable_atmospherics/canister/internal_tank var/datum/effect/effect/system/ion_trail_follow/space_trail/ion_trail @@ -158,7 +158,7 @@ if(iscrowbar(W)) hatch_open = !hatch_open user << "You [hatch_open ? "open" : "close"] the maintenance hatch." - if(istype(W, /obj/item/weapon/cell)) + if(istype(W, /obj/item/weapon/stock_parts/cell)) if(!hatch_open) return ..() if(battery) diff --git a/code/game/vehicles/vehicle.dm b/code/game/vehicles/vehicle.dm index 3ec73f3eeb9..9924fea07d0 100644 --- a/code/game/vehicles/vehicle.dm +++ b/code/game/vehicles/vehicle.dm @@ -16,7 +16,7 @@ //var/deflect_chance = 10 //chance to deflect the incoming projectiles, hits, or lesser the effect of ex_act. //the values in this list show how much damage will pass through, not how much will be absorbed. var/list/damage_absorption = list("brute"=0.8,"fire"=1.2,"bullet"=0.9,"laser"=1,"energy"=1,"bomb"=1) - var/obj/item/weapon/cell/cell //Our power source + var/obj/item/weapon/stock_parts/cell/cell //Our power source var/state = 0 var/list/log = new var/last_message = 0 @@ -93,7 +93,7 @@ internal_tank = new /obj/machinery/portable_atmospherics/canister/air(src) return internal_tank*/ -/obj/vehicle/proc/add_cell(var/obj/item/weapon/cell/C=null) +/obj/vehicle/proc/add_cell(var/obj/item/weapon/stock_parts/cell/C=null) if(C) C.forceMove(src) cell = C diff --git a/code/modules/clothing/gloves/ninja.dm b/code/modules/clothing/gloves/ninja.dm index 4fbdcdf8607..5876067697b 100644 --- a/code/modules/clothing/gloves/ninja.dm +++ b/code/modules/clothing/gloves/ninja.dm @@ -102,7 +102,7 @@ drain("MECHA",A,suit) return 1 /* - if(istype(A,/obj/item/weapon/cell)) + if(istype(A,/obj/item/weapon/stock_parts/cell)) A.add_fingerprint(H) drain("CELL",A,suit) return 1 diff --git a/code/modules/clothing/spacesuits/ninja.dm b/code/modules/clothing/spacesuits/ninja.dm index 3f162fbf09e..b1b51684ee0 100644 --- a/code/modules/clothing/spacesuits/ninja.dm +++ b/code/modules/clothing/spacesuits/ninja.dm @@ -3,7 +3,7 @@ name = "ninja hood" icon_state = "s-ninja" item_state = "s-ninja_hood" - allowed = list(/obj/item/weapon/cell) + allowed = list(/obj/item/weapon/stock_parts/cell) armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 25) unacidable = 1 siemens_coefficient = 0.2 @@ -14,7 +14,7 @@ desc = "A unique, vaccum-proof suit of nano-enhanced armor designed specifically for Spider Clan assassins." icon_state = "s-ninja" item_state = "s-ninja_suit" - allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank,/obj/item/weapon/cell,/obj/item/device/suit_cooling_unit) + allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank,/obj/item/weapon/stock_parts/cell,/obj/item/device/suit_cooling_unit) slowdown = 0 unacidable = 1 armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) @@ -22,7 +22,7 @@ //Important parts of the suit. var/mob/living/carbon/affecting = null//The wearer. - var/obj/item/weapon/cell/cell//Starts out with a high-capacity cell using New(). + var/obj/item/weapon/stock_parts/cell/cell//Starts out with a high-capacity cell using New(). var/datum/effect/effect/system/spark_spread/spark_system//To create sparks. var/reagent_list[] = list("tricordrazine","dexalinp","spaceacillin","anti_toxin","nutriment","uranium","hyronalin")//The reagents ids which are added to the suit at New(). var/stored_research[]//For stealing station research. diff --git a/code/modules/clothing/under/accessories/holster.dm b/code/modules/clothing/under/accessories/holster.dm index 6189e2eb464..12508cc5328 100644 --- a/code/modules/clothing/under/accessories/holster.dm +++ b/code/modules/clothing/under/accessories/holster.dm @@ -20,7 +20,10 @@ /obj/item/clothing/accessory/holster/attack_self() var/holsteritem = usr.get_active_hand() - holster(holsteritem, usr) + if(!holstered) + holster(holsteritem, usr) + else + unholster(usr) /obj/item/clothing/accessory/holster/proc/holster(obj/item/I, mob/user as mob) if(holstered) diff --git a/code/modules/computer3/buildandrepair.dm b/code/modules/computer3/buildandrepair.dm index 38db742ee67..d525f40a73e 100644 --- a/code/modules/computer3/buildandrepair.dm +++ b/code/modules/computer3/buildandrepair.dm @@ -61,7 +61,7 @@ // Battery must be installed BEFORE wiring the computer. // if installing it in an existing computer, you will have to // get back to this state first. - var/obj/item/weapon/cell/battery = null + var/obj/item/weapon/stock_parts/cell/battery = null /obj/structure/computer3frame/server name = "server frame" @@ -143,7 +143,7 @@ else user << "\red There's no battery to remove!" - if(istype(P, /obj/item/weapon/cell)) + if(istype(P, /obj/item/weapon/stock_parts/cell)) if(!battery) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) if(do_after(5)) diff --git a/code/modules/computer3/computer.dm b/code/modules/computer3/computer.dm index 456bdf3d71f..796dee7cd95 100644 --- a/code/modules/computer3/computer.dm +++ b/code/modules/computer3/computer.dm @@ -68,7 +68,7 @@ // the comms computer, solar trackers, etc, that should function when all else is off. // Laptops will require batteries and have no mains power. - var/obj/item/weapon/cell/battery = null // uninterruptible power supply aka battery + var/obj/item/weapon/stock_parts/cell/battery = null // uninterruptible power supply aka battery verb/ResetComputer() @@ -185,7 +185,7 @@ toybox.init(src) continue - if(ispath(typekey,/obj/item/weapon/cell)) + if(ispath(typekey,/obj/item/weapon/stock_parts/cell)) if(battery) continue battery = new typekey(src) continue @@ -452,7 +452,7 @@ //Returns percentage of battery charge remaining. Returns -1 if no battery is installed. proc/check_battery_status() if (battery) - var/obj/item/weapon/cell/B = battery + var/obj/item/weapon/stock_parts/cell/B = battery return round(B.charge / (B.maxcharge / 100)) else return -1 diff --git a/code/modules/computer3/laptop.dm b/code/modules/computer3/laptop.dm index 819036c6df5..bd45c044748 100644 --- a/code/modules/computer3/laptop.dm +++ b/code/modules/computer3/laptop.dm @@ -122,7 +122,7 @@ New(var/L, var/built = 0) if(!built && !battery) - battery = new /obj/item/weapon/cell(src) + battery = new /obj/item/weapon/stock_parts/cell(src) ..(L,built) verb/close_computer() diff --git a/code/modules/computer3/lapvend.dm b/code/modules/computer3/lapvend.dm index 7d9b14da7ef..7792307d689 100644 --- a/code/modules/computer3/lapvend.dm +++ b/code/modules/computer3/lapvend.dm @@ -202,10 +202,10 @@ newlap.spawn_parts += (/obj/item/part/computer/networking/cable) if (power == 1) del(newlap.battery) - newlap.battery = new /obj/item/weapon/cell/high(newlap) + newlap.battery = new /obj/item/weapon/stock_parts/cell/high(newlap) if (power == 2) del(newlap.battery) - newlap.battery = new /obj/item/weapon/cell/super(newlap) + newlap.battery = new /obj/item/weapon/stock_parts/cell/super(newlap) newlap.spawn_parts() @@ -293,7 +293,7 @@ return total /obj/machinery/lapvend/proc/choose_progs(var/obj/item/weapon/card/id/C) - if(access_security in C.access || access_forensics_lockers in C.access) + if((access_medical in C.access) || (access_forensics_lockers in C.access)) newlap.spawn_files += (/datum/file/program/secure_data) newlap.spawn_files += (/datum/file/camnet_key) newlap.spawn_files += (/datum/file/camnet_key/researchoutpost) @@ -349,9 +349,9 @@ network = 2 if(istype(L.stored_computer.net,/obj/item/part/computer/networking/cable)) network = 3 - if(istype(L.stored_computer.battery, /obj/item/weapon/cell/high)) + if(istype(L.stored_computer.battery, /obj/item/weapon/stock_parts/cell/high)) power = 1 - if(istype(L.stored_computer.battery, /obj/item/weapon/cell/super)) + if(istype(L.stored_computer.battery, /obj/item/weapon/stock_parts/cell/super)) power = 2 diff --git a/code/modules/computer3/test_machines.dm b/code/modules/computer3/test_machines.dm index 998937e6344..1be6f232d61 100644 --- a/code/modules/computer3/test_machines.dm +++ b/code/modules/computer3/test_machines.dm @@ -12,7 +12,7 @@ /obj/item/part/computer/cardslot/dual,/obj/item/part/computer/networking/area) New(var/L,var/built=0) if(!built && !battery) - battery = new /obj/item/weapon/cell(src) + battery = new /obj/item/weapon/stock_parts/cell(src) ..(L,built) /obj/machinery/computer3/laptop/testing @@ -28,7 +28,7 @@ /obj/item/part/computer/cardslot/dual,/obj/item/part/computer/networking/area) New(var/L,var/built=0) if(!built && !battery) - battery = new /obj/item/weapon/cell/super(src) + battery = new /obj/item/weapon/stock_parts/cell/super(src) ..(L,built) /obj/machinery/computer3/wall_comp/testing @@ -44,7 +44,7 @@ /obj/item/part/computer/cardslot/dual,/obj/item/part/computer/networking/area) New(var/L,var/built=0) if(!built && !battery) - battery = new /obj/item/weapon/cell(src) + battery = new /obj/item/weapon/stock_parts/cell(src) ..(L,built) /obj/machinery/computer3/server/testing @@ -60,7 +60,7 @@ /obj/item/part/computer/cardslot/dual,/obj/item/part/computer/networking/area) New(var/L,var/built=0) if(!built && !battery) - battery = new /obj/item/weapon/cell(src) + battery = new /obj/item/weapon/stock_parts/cell(src) ..(L,built) /obj/machinery/computer3/server/rack/testing @@ -76,7 +76,7 @@ /obj/item/part/computer/cardslot/dual,/obj/item/part/computer/networking/area) New(var/L,var/built=0) if(!built && !battery) - battery = new /obj/item/weapon/cell(src) + battery = new /obj/item/weapon/stock_parts/cell(src) ..(L,built) /obj/item/weapon/storage/box/testing_disks diff --git a/code/modules/jungle/jungle_temple.dm b/code/modules/jungle/jungle_temple.dm index ca7b21c8cf8..138d1dc47d1 100644 --- a/code/modules/jungle/jungle_temple.dm +++ b/code/modules/jungle/jungle_temple.dm @@ -249,7 +249,7 @@ new /obj/item/weapon/storage/toolbox/electrical(C) if(prob(25)) - new /obj/item/weapon/cell(C) + new /obj/item/weapon/stock_parts/cell(C) if("coffin") new /obj/structure/closet/coffin(src.loc) diff --git a/code/modules/mining/drilling/drill.dm b/code/modules/mining/drilling/drill.dm index 65fc72f1636..4b6f63445d6 100644 --- a/code/modules/mining/drilling/drill.dm +++ b/code/modules/mining/drilling/drill.dm @@ -33,7 +33,7 @@ var/obj/item/weapon/stock_parts/matter_bin/storage var/obj/item/weapon/stock_parts/micro_laser/cutter var/obj/item/weapon/stock_parts/capacitor/cellmount - var/obj/item/weapon/cell/cell + var/obj/item/weapon/stock_parts/cell/cell //Flags var/need_update_field = 0 @@ -195,7 +195,7 @@ cellmount = W user << "You install \the [W]." return - else if(istype(W,/obj/item/weapon/cell)) + else if(istype(W,/obj/item/weapon/stock_parts/cell)) if(cell) user << "The drill already has a cell installed." else diff --git a/code/modules/mining/manufacturing.dm b/code/modules/mining/manufacturing.dm index 07a00bb7561..a59a1071a22 100644 --- a/code/modules/mining/manufacturing.dm +++ b/code/modules/mining/manufacturing.dm @@ -814,7 +814,7 @@ /datum/manufacture/powercell name = "Power Cell" - item = /obj/item/weapon/cell + item = /obj/item/weapon/stock_parts/cell cost1 = /obj/item/weapon/ore/iron cname1 = "Iron" amount1 = 4 diff --git a/code/modules/mining/surprises/tg.dm b/code/modules/mining/surprises/tg.dm index 5c9b6b201af..e80d3a87115 100644 --- a/code/modules/mining/surprises/tg.dm +++ b/code/modules/mining/surprises/tg.dm @@ -130,7 +130,7 @@ spawntypes = list( /obj/item/weapon/pickaxe/plasmacutter=1, /obj/machinery/shieldgen=1, - /obj/item/weapon/cell/hyper=1 + /obj/item/weapon/stock_parts/cell/hyper=1 ) fluffitems = list( /obj/structure/table/reinforced=2, diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index c76cb6d2a82..80addc967c6 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -843,8 +843,8 @@ It can still be worn/put on as normal. if(slot_r_hand) return r_hand return null - -/mob/living/carbon/human/get_item_by_slot(slot_id) + +/mob/living/carbon/get_item_by_slot(slot_id) switch(slot_id) if(slot_back) return back @@ -860,4 +860,45 @@ It can still be worn/put on as normal. return r_hand return null - +// Return the item currently in the slot ID +/mob/living/carbon/human/get_item_by_slot(slot_id) + switch(slot_id) + if(slot_back) + return back + if(slot_wear_mask) + return wear_mask + if(slot_handcuffed) + return handcuffed + if(slot_legcuffed) + return legcuffed + if(slot_l_hand) + return l_hand + if(slot_r_hand) + return r_hand + if(slot_belt) + return belt + if(slot_wear_id) + return wear_id + if(slot_l_ear) + return l_ear + if(slot_r_ear) + return r_ear + if(slot_glasses) + return glasses + if(slot_gloves) + return gloves + if(slot_head) + return head + if(slot_shoes) + return shoes + if(slot_wear_suit) + return wear_suit + if(slot_w_uniform) + return w_uniform + if(slot_l_store) + return l_store + if(slot_r_store) + return r_store + if(slot_s_store) + return s_store + return null diff --git a/code/modules/mob/living/silicon/mommi/life.dm b/code/modules/mob/living/silicon/mommi/life.dm index 948d5967888..73e6ee16aa5 100644 --- a/code/modules/mob/living/silicon/mommi/life.dm +++ b/code/modules/mob/living/silicon/mommi/life.dm @@ -264,7 +264,7 @@ if (src.client) src.client.screen -= src.contents for(var/obj/I in src.contents) - //if(I && !(istype(I,/obj/item/weapon/cell) || istype(I,/obj/item/device/radio) || istype(I,/obj/machinery/camera) || istype(I,/obj/item/device/mmi))) + //if(I && !(istype(I,/obj/item/weapon/stock_parts/cell) || istype(I,/obj/item/device/radio) || istype(I,/obj/machinery/camera) || istype(I,/obj/item/device/mmi))) if(I) // Make sure we're not showing any of our internal components, as that would be lewd. // This way of doing it ensures that shit we pick up will be visible, wheras shit inside of us isn't. diff --git a/code/modules/mob/living/silicon/mommi/mommi.dm b/code/modules/mob/living/silicon/mommi/mommi.dm index 79034c8782c..91defdaedfb 100644 --- a/code/modules/mob/living/silicon/mommi/mommi.dm +++ b/code/modules/mob/living/silicon/mommi/mommi.dm @@ -40,7 +40,7 @@ They can only use one tool at a time, they can't choose modules, and they have 1 updateicon() if(!cell) - cell = new /obj/item/weapon/cell(src) + cell = new /obj/item/weapon/stock_parts/cell(src) cell.maxcharge = 7500 cell.charge = 7500 ..() @@ -190,7 +190,7 @@ They can only use one tool at a time, they can't choose modules, and they have 1 opened = 1 updateicon() - else if (istype(W, /obj/item/weapon/cell) && opened) // trying to put a cell inside + else if (istype(W, /obj/item/weapon/stock_parts/cell) && opened) // trying to put a cell inside if(wiresexposed) user << "Close the panel first." else if(cell) diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index 1db5b3e059f..fff8878ff0e 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -8,7 +8,7 @@ //Has a list of items that it can hold. var/list/can_hold = list( - /obj/item/weapon/cell, + /obj/item/weapon/stock_parts/cell, /obj/item/weapon/firealarm_electronics, /obj/item/weapon/airalarm_electronics, /obj/item/weapon/airlock_electronics, diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm index 3bea2e0ee96..6ecbfbd9dfc 100644 --- a/code/modules/mob/living/silicon/robot/life.dm +++ b/code/modules/mob/living/silicon/robot/life.dm @@ -309,7 +309,7 @@ if (src.client) src.client.screen -= src.contents for(var/obj/I in src.contents) - if(I && !(istype(I,/obj/item/weapon/cell) || istype(I,/obj/item/device/radio) || istype(I,/obj/machinery/camera) || istype(I,/obj/item/device/mmi))) + if(I && !(istype(I,/obj/item/weapon/stock_parts/cell) || istype(I,/obj/item/device/radio) || istype(I,/obj/machinery/camera) || istype(I,/obj/item/device/mmi))) src.client.screen += I if(src.module_state_1) src.module_state_1:screen_loc = ui_inv1 diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 1b12f3595fd..1e0a62eedb2 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -30,7 +30,7 @@ var/obj/item/device/radio/borg/radio = null var/mob/living/silicon/ai/connected_ai = null - var/obj/item/weapon/cell/cell = null + var/obj/item/weapon/stock_parts/cell/cell = null var/obj/machinery/camera/camera = null // Components are basically robot organs. @@ -95,7 +95,7 @@ mmi.icon_state="posibrain-occupied" if(syndie) if(!cell) - cell = new /obj/item/weapon/cell(src) + cell = new /obj/item/weapon/stock_parts/cell(src) laws = new /datum/ai_laws/antimov() lawupdate = 0 scrambledcodes = 1 @@ -124,7 +124,7 @@ C.wrapped = new C.external_type if(!cell) - cell = new /obj/item/weapon/cell(src) + cell = new /obj/item/weapon/stock_parts/cell(src) cell.maxcharge = 7500 cell.charge = 7500 @@ -752,7 +752,7 @@ opened = 1 updateicon() - else if (istype(W, /obj/item/weapon/cell) && opened) // trying to put a cell inside + else if (istype(W, /obj/item/weapon/stock_parts/cell) && opened) // trying to put a cell inside var/datum/robot_component/C = components["power cell"] if(wiresexposed) user << "Close the panel first." diff --git a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm index 0854948bf6a..aa64a6fe921 100644 --- a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm +++ b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm @@ -8,7 +8,7 @@ var/obj/item/device/radio/borg/radio = null var/mob/living/silicon/ai/connected_ai = null - var/obj/item/weapon/cell/cell = null + var/obj/item/weapon/stock_parts/cell/cell = null var/obj/machinery/camera/camera = null var/obj/item/device/mmi/mmi = null var/list/req_access = list(access_robotics) //Access needed to pop out the brain. diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 7a2eb7c5a38..be181ff7515 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -52,7 +52,7 @@ var/spooky=0 var/area/area var/areastring = null - var/obj/item/weapon/cell/cell + var/obj/item/weapon/stock_parts/cell/cell var/start_charge = 90 // initial cell charge % var/cell_type = 2500 // 0=no cell, 1=regular, 2=high-cap (x5) <- old, now it's just 0=no cell, otherwise dictate cellcapacity by changing this value. 1 used to be 1000, 2 was 2500 var/opened = 0 //0=closed, 1=opened, 2=cover removed @@ -142,7 +142,7 @@ has_electronics = 2 //installed and secured // is starting with a power cell installed, create it and set its charge level if(cell_type) - src.cell = new/obj/item/weapon/cell(src) + src.cell = new/obj/item/weapon/stock_parts/cell(src) cell.maxcharge = cell_type // cell_type is maximum charge (old default was 1000 or 2500 (values one and two respectively) cell.charge = start_charge * cell.maxcharge / 100.0 // (convert percentage to actual value) @@ -399,7 +399,7 @@ else opened = 1 update_icon() - else if (istype(W, /obj/item/weapon/cell) && opened) // trying to put a cell inside + else if (istype(W, /obj/item/weapon/stock_parts/cell) && opened) // trying to put a cell inside if(cell) user << "There is a power cell already installed." return diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index e099b39e35d..606d58a4724 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -1,16 +1,16 @@ // the power cell // charge from 0 to 100% // fits in APC to provide backup power -/obj/item/weapon/cell/var/image/overlay_image +/obj/item/weapon/stock_parts/cell/var/image/overlay_image -/obj/item/weapon/cell/New() +/obj/item/weapon/stock_parts/cell/New() ..() charge = maxcharge spawn(5) updateicon() -/obj/item/weapon/cell/proc/updateicon() +/obj/item/weapon/stock_parts/cell/proc/updateicon() if(isnull(src.overlay_image)) src.overlay_image = image('icons/obj/power.dmi') overlays.Cut() @@ -24,11 +24,11 @@ src.overlay_image.icon_state = "cell-o1" overlays += src.overlay_image -/obj/item/weapon/cell/proc/percent() // return % charge of cell +/obj/item/weapon/stock_parts/cell/proc/percent() // return % charge of cell return 100.0*charge/maxcharge // use power from a cell -/obj/item/weapon/cell/proc/use(var/amount) +/obj/item/weapon/stock_parts/cell/proc/use(var/amount) if(rigged && amount > 0) explode() return 0 @@ -38,7 +38,7 @@ return 1 // recharge the cell -/obj/item/weapon/cell/proc/give(var/amount) +/obj/item/weapon/stock_parts/cell/proc/give(var/amount) if(rigged && amount > 0) explode() return 0 @@ -55,7 +55,7 @@ return power_used -/obj/item/weapon/cell/examine() +/obj/item/weapon/stock_parts/cell/examine() set src in view(1) if(usr /*&& !usr.stat*/) if(maxcharge <= 2500) @@ -65,7 +65,7 @@ if(crit_fail) usr << "\red This power cell seems to be faulty." -/obj/item/weapon/cell/attack_self(mob/user as mob) +/obj/item/weapon/stock_parts/cell/attack_self(mob/user as mob) src.add_fingerprint(user) if(ishuman(user)) @@ -76,7 +76,7 @@ SNG.drain("CELL",src,H.wear_suit) return -/obj/item/weapon/cell/attackby(obj/item/W, mob/user) +/obj/item/weapon/stock_parts/cell/attackby(obj/item/W, mob/user) ..() if(istype(W, /obj/item/weapon/reagent_containers/syringe)) var/obj/item/weapon/reagent_containers/syringe/S = W @@ -93,7 +93,7 @@ S.reagents.clear_reagents() -/obj/item/weapon/cell/proc/explode() +/obj/item/weapon/stock_parts/cell/proc/explode() var/turf/T = get_turf(src.loc) /* * 1000-cell explosion(T, -1, 0, 1, 1) @@ -121,13 +121,13 @@ spawn(1) del(src) -/obj/item/weapon/cell/proc/corrupt() +/obj/item/weapon/stock_parts/cell/proc/corrupt() charge /= 2 maxcharge /= 2 if (prob(10)) rigged = 1 //broken batterys are dangerous -/obj/item/weapon/cell/emp_act(severity) +/obj/item/weapon/stock_parts/cell/emp_act(severity) charge -= 1000 / severity if (charge < 0) charge = 0 @@ -135,7 +135,7 @@ reliability -= 10 / severity ..() -/obj/item/weapon/cell/ex_act(severity) +/obj/item/weapon/stock_parts/cell/ex_act(severity) switch(severity) if(1.0) @@ -155,10 +155,10 @@ corrupt() return -/obj/item/weapon/cell/blob_act() +/obj/item/weapon/stock_parts/cell/blob_act() ex_act(1) -/obj/item/weapon/cell/proc/get_electrocute_damage() +/obj/item/weapon/stock_parts/cell/proc/get_electrocute_damage() switch (charge) /* if (9000 to INFINITY) return min(rand(90,150),rand(90,150)) diff --git a/code/modules/power/power.dm b/code/modules/power/power.dm index bff319d9b60..fbb8d479470 100644 --- a/code/modules/power/power.dm +++ b/code/modules/power/power.dm @@ -475,11 +475,11 @@ power_source = Cable.powernet var/datum/powernet/PN - var/obj/item/weapon/cell/cell + var/obj/item/weapon/stock_parts/cell/cell if(istype(power_source,/datum/powernet)) PN = power_source - else if(istype(power_source,/obj/item/weapon/cell)) + else if(istype(power_source,/obj/item/weapon/stock_parts/cell)) cell = power_source else if(istype(power_source,/obj/machinery/power/apc)) var/obj/machinery/power/apc/apc = power_source @@ -514,7 +514,7 @@ else if (istype(power_source,/datum/powernet)) var/drained_power = drained_energy/CELLRATE //convert from "joules" to "watts" PN.newload+=drained_power - else if (istype(power_source, /obj/item/weapon/cell)) + else if (istype(power_source, /obj/item/weapon/stock_parts/cell)) cell.use(drained_energy) return drained_energy diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index 1613bc46187..a3065ce3bb4 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -33,11 +33,11 @@ ..() component_parts = list() component_parts += new /obj/item/weapon/circuitboard/smes(null) - component_parts += new /obj/item/weapon/cell/high(null) - component_parts += new /obj/item/weapon/cell/high(null) - component_parts += new /obj/item/weapon/cell/high(null) - component_parts += new /obj/item/weapon/cell/high(null) - component_parts += new /obj/item/weapon/cell/high(null) + component_parts += new /obj/item/weapon/stock_parts/cell/high(null) + component_parts += new /obj/item/weapon/stock_parts/cell/high(null) + component_parts += new /obj/item/weapon/stock_parts/cell/high(null) + component_parts += new /obj/item/weapon/stock_parts/cell/high(null) + component_parts += new /obj/item/weapon/stock_parts/cell/high(null) component_parts += new /obj/item/weapon/stock_parts/capacitor(null) component_parts += new /obj/item/stack/cable_coil(null, 5) RefreshParts() @@ -68,7 +68,7 @@ IO += CP.rating input_level_max = 200000 * IO output_level_max = 200000 * IO - for(var/obj/item/weapon/cell/PC in component_parts) + for(var/obj/item/weapon/stock_parts/cell/PC in component_parts) C += PC.maxcharge capacity = C / (15000) * 1e6 diff --git a/code/modules/projectiles/guns/alien.dm b/code/modules/projectiles/guns/alien.dm index 76ea406751b..177255cfe72 100644 --- a/code/modules/projectiles/guns/alien.dm +++ b/code/modules/projectiles/guns/alien.dm @@ -77,7 +77,7 @@ force = 10 projectile_type = "/obj/item/projectile/energy/sonic" - cell_type = "/obj/item/weapon/cell/super" + cell_type = "/obj/item/weapon/stock_parts/cell/super" fire_delay = 40 fire_sound = 'sound/effects/basscannon.ogg' diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index 3d09aadc2c6..b3bb07066e6 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -4,9 +4,9 @@ desc = "A basic energy-based gun." fire_sound = 'sound/weapons/Taser.ogg' - var/obj/item/weapon/cell/power_supply //What type of power cell this uses + var/obj/item/weapon/stock_parts/cell/power_supply //What type of power cell this uses var/charge_cost = 1000 //How much energy is needed to fire. - var/cell_type = "/obj/item/weapon/cell" + var/cell_type = "/obj/item/weapon/stock_parts/cell" var/projectile_type = "/obj/item/projectile/beam" var/modifystate @@ -55,7 +55,7 @@ /* attackby(obj/item/weapon/W, mob/user) - if(istype(W, /obj/item/weapon/cell)) + if(istype(W, /obj/item/weapon/stock_parts/cell)) if(!power_supply) user.drop_item() W.loc = src diff --git a/code/modules/projectiles/guns/energy/advtaser.dm b/code/modules/projectiles/guns/energy/advtaser.dm index ff552909ab8..039c569131e 100644 --- a/code/modules/projectiles/guns/energy/advtaser.dm +++ b/code/modules/projectiles/guns/energy/advtaser.dm @@ -4,7 +4,7 @@ icon_state = "advtaser" item_state = null //so the human update icon uses the icon_state instead. icon_override = 'icons/mob/in-hand/guns.dmi' - cell_type = "/obj/item/weapon/cell" + cell_type = "/obj/item/weapon/stock_parts/cell" origin_tech = null fire_sound = 'sound/weapons/Taser.ogg' projectile_type = "/obj/item/projectile/energy/electrode" diff --git a/code/modules/projectiles/guns/energy/pulse.dm b/code/modules/projectiles/guns/energy/pulse.dm index e11a604b45e..38f14ca87b0 100644 --- a/code/modules/projectiles/guns/energy/pulse.dm +++ b/code/modules/projectiles/guns/energy/pulse.dm @@ -7,7 +7,7 @@ fire_sound = 'sound/weapons/pulse.ogg' charge_cost = 200 projectile_type = "/obj/item/projectile/beam/pulse" - cell_type = "/obj/item/weapon/cell/super" + cell_type = "/obj/item/weapon/stock_parts/cell/super" var/mode = 2 slot_flags = SLOT_BACK w_class = 4.0 @@ -52,7 +52,7 @@ /obj/item/weapon/gun/energy/pulse_rifle/destroyer name = "pulse destroyer" desc = "A heavy-duty, pulse-based energy weapon." - cell_type = "/obj/item/weapon/cell/infinite" + cell_type = "/obj/item/weapon/stock_parts/cell/infinite" attack_self(mob/living/user as mob) user << "\red [src.name] has three settings, and they are all DESTROY." @@ -63,7 +63,7 @@ name = "m1911-P" desc = "It's not the size of the gun, it's the size of the hole it puts through people." icon_state = "m1911-p" - cell_type = "/obj/item/weapon/cell/infinite" + cell_type = "/obj/item/weapon/stock_parts/cell/infinite" w_class = 3.0 slot_flags = SLOT_BELT isHandgun() diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 558745deac3..a8353bba498 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -92,7 +92,7 @@ item_state = "c20r" w_class = 4 projectile_type = "/obj/item/projectile/meteor" - cell_type = "/obj/item/weapon/cell/potato" + cell_type = "/obj/item/weapon/stock_parts/cell/potato" clumsy_check = 0 //Admin spawn only, might as well let clowns use it. var/charge_tick = 0 var/recharge_time = 5 //Time it takes for shots to recharge (in ticks) @@ -229,7 +229,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. projectile_type = "/obj/item/projectile/kinetic" fire_sound = 'sound/weapons/Kenetic_accel.ogg' charge_cost = 5000 - cell_type = "/obj/item/weapon/cell/crap" + cell_type = "/obj/item/weapon/stock_parts/cell/crap" var/overheat = 0 var/recent_reload = 1 @@ -255,7 +255,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. icon_state = "disabler" item_state = null projectile_type = "/obj/item/projectile/beam/disabler" - cell_type = "/obj/item/weapon/cell" + cell_type = "/obj/item/weapon/stock_parts/cell" charge_cost = 500 @@ -268,7 +268,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. icon_state = "l6closed0" icon = 'icons/obj/gun.dmi' fire_sound = 'sound/weapons/Gunshot_smg.ogg' - cell_type = "/obj/item/weapon/cell/secborg" + cell_type = "/obj/item/weapon/stock_parts/cell/secborg" projectile_type = "/obj/item/projectile/bullet/midbullet3" charge_cost = 300 //Yeah, let's NOT give them a 300 round clip that recharges, 20 is more reasonable and will actually hurt the borg's battery for overuse. var/charge_tick = 0 diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index ce9e12a51f8..f5002bdd0f5 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -6,7 +6,7 @@ item_state = null //so the human update icon uses the icon_state instead. fire_sound = 'sound/weapons/Taser.ogg' projectile_type = "/obj/item/projectile/energy/electrode" - cell_type = "/obj/item/weapon/cell/crap" + cell_type = "/obj/item/weapon/stock_parts/cell/crap" /obj/item/weapon/gun/energy/taser/cyborg name = "taser gun" @@ -14,7 +14,7 @@ icon_state = "taser" fire_sound = 'sound/weapons/Taser.ogg' projectile_type = "/obj/item/projectile/energy/electrode" - cell_type = "/obj/item/weapon/cell/secborg" + cell_type = "/obj/item/weapon/stock_parts/cell/secborg" var/charge_tick = 0 var/recharge_time = 10 //Time it takes for shots to recharge (in ticks) @@ -49,7 +49,7 @@ fire_sound = "sound/weapons/gunshot.ogg" origin_tech = "combat=3;materials=3;powerstorage=2" projectile_type = "/obj/item/projectile/energy/electrode" - cell_type = "/obj/item/weapon/cell" + cell_type = "/obj/item/weapon/stock_parts/cell" @@ -64,7 +64,7 @@ silenced = 1 fire_sound = 'sound/weapons/Genhit.ogg' projectile_type = "/obj/item/projectile/energy/bolt" - cell_type = "/obj/item/weapon/cell/crap" + cell_type = "/obj/item/weapon/stock_parts/cell/crap" var/charge_tick = 0 /obj/item/weapon/gun/energy/crossbow/New() diff --git a/code/modules/projectiles/guns/energy/temperature.dm b/code/modules/projectiles/guns/energy/temperature.dm index 520a2cf6c73..ffc680a151a 100644 --- a/code/modules/projectiles/guns/energy/temperature.dm +++ b/code/modules/projectiles/guns/energy/temperature.dm @@ -9,7 +9,7 @@ origin_tech = "combat=3;materials=4;powerstorage=3;magnets=2" projectile_type = "/obj/item/projectile/temp" - cell_type = "/obj/item/weapon/cell/crap" + cell_type = "/obj/item/weapon/stock_parts/cell/crap" New() diff --git a/code/modules/projectiles/guns/projectile/crossbow.dm b/code/modules/projectiles/guns/projectile/crossbow.dm index 17fd65cacee..655fcfb92a8 100644 --- a/code/modules/projectiles/guns/projectile/crossbow.dm +++ b/code/modules/projectiles/guns/projectile/crossbow.dm @@ -72,7 +72,7 @@ var/tension = 0 // Current draw on the bow. var/max_tension = 5 // Highest possible tension. var/release_speed = 5 // Speed per unit of tension. - var/obj/item/weapon/cell/cell = null // Used for firing superheated rods. + var/obj/item/weapon/stock_parts/cell/cell = null // Used for firing superheated rods. var/current_user // Used to check if the crossbow has changed hands since being drawn. /obj/item/weapon/gun/launcher/crossbow/emp_act(severity) @@ -158,7 +158,7 @@ superheat_rod(user) return - if(istype(W, /obj/item/weapon/cell)) + if(istype(W, /obj/item/weapon/stock_parts/cell)) if(!cell) user.drop_item() W.loc = src @@ -213,7 +213,7 @@ user.visible_message("\The [src] only takes baguettes.") return - if(istype(W, /obj/item/weapon/cell)) + if(istype(W, /obj/item/weapon/stock_parts/cell)) user.visible_message("The [src] is too simple be adapted with a cell.") return diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index 7bf99cec11e..90df4c90982 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -65,7 +65,7 @@ options[/obj/item/weapon/stock_parts/console_screen] = "Replace the console screen to fix it." options[/obj/item/weapon/stock_parts/manipulator/pico] = "Upgrade to a pico manipulator to fix it." options[/obj/item/weapon/stock_parts/matter_bin/super] = "Give it a super matter bin to fix it." - options[/obj/item/weapon/cell/super] = "Replace the reagent synthesizer with a super capacity cell to fix it." + options[/obj/item/weapon/stock_parts/cell/super] = "Replace the reagent synthesizer with a super capacity cell to fix it." options[/obj/item/device/mass_spectrometer/adv] = "Replace the reagent scanner with an advanced mass spectrometer to fix it" options[/obj/item/weapon/stock_parts/micro_laser/high] = "Repair the reagent synthesizer with an high-power micro-laser to fix it" options[/obj/item/device/reagent_scanner/adv] = "Replace the reagent scanner with an advanced reagent scanner to fix it" @@ -290,7 +290,7 @@ component_parts += new /obj/item/weapon/stock_parts/manipulator(src) component_parts += new /obj/item/weapon/stock_parts/capacitor(src) component_parts += new /obj/item/weapon/stock_parts/console_screen(src) - component_parts += new /obj/item/weapon/cell/super(src) + component_parts += new /obj/item/weapon/stock_parts/cell/super(src) RefreshParts() /obj/machinery/chem_dispenser/constructable/RefreshParts() @@ -303,7 +303,7 @@ max_energy = temp_energy * 5 //max energy = (bin1.rating + bin2.rating - 1) * 5, 5 on lowest 25 on highest for(var/obj/item/weapon/stock_parts/capacitor/C in component_parts) time += C.rating - for(var/obj/item/weapon/cell/P in component_parts) + for(var/obj/item/weapon/stock_parts/cell/P in component_parts) time += round(P.maxcharge, 10000) / 10000 recharge_delay /= time/2 //delay between recharges, double the usual time on lowest 50% less than usual on highest for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts) diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index e768546c883..4f3a0990476 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -1323,7 +1323,7 @@ datum required_container = /obj/item/slime_extract/yellow required_other = 1 on_reaction(var/datum/reagents/holder, var/created_volume) - var/obj/item/weapon/cell/slime/P = new /obj/item/weapon/cell/slime + var/obj/item/weapon/stock_parts/cell/slime/P = new /obj/item/weapon/stock_parts/cell/slime P.loc = get_turf_loc(holder.my_atom) slimeglow diff --git a/code/modules/reagents/reagent_containers/food/snacks/grown.dm b/code/modules/reagents/reagent_containers/food/snacks/grown.dm index c3d41be9820..036e19439d9 100644 --- a/code/modules/reagents/reagent_containers/food/snacks/grown.dm +++ b/code/modules/reagents/reagent_containers/food/snacks/grown.dm @@ -89,7 +89,7 @@ W:amount -= 5 if(!W:amount) del(W) user << "You add some cable to the potato and slide it inside the battery encasing." - var/obj/item/weapon/cell/potato/pocell = new /obj/item/weapon/cell/potato(user.loc) + var/obj/item/weapon/stock_parts/cell/potato/pocell = new /obj/item/weapon/stock_parts/cell/potato(user.loc) pocell.maxcharge = src.potency * 10 pocell.charge = pocell.maxcharge del(src) diff --git a/code/modules/research/designs/power_designs.dm b/code/modules/research/designs/power_designs.dm index 2b6efbff3fb..9edc8400e3e 100644 --- a/code/modules/research/designs/power_designs.dm +++ b/code/modules/research/designs/power_designs.dm @@ -9,7 +9,7 @@ req_tech = list("powerstorage" = 1) build_type = PROTOLATHE | AUTOLATHE | MECHFAB materials = list("$metal" = 700, "$glass" = 50) - build_path = /obj/item/weapon/cell + build_path = /obj/item/weapon/stock_parts/cell category = list("Misc","Power") /datum/design/high_cell @@ -19,7 +19,7 @@ req_tech = list("powerstorage" = 2) build_type = PROTOLATHE | AUTOLATHE | MECHFAB materials = list("$metal" = 700, "$glass" = 60) - build_path = /obj/item/weapon/cell/high + build_path = /obj/item/weapon/stock_parts/cell/high category = list("Misc","Power") /datum/design/hyper_cell @@ -30,7 +30,7 @@ reliability_base = 70 build_type = PROTOLATHE | MECHFAB materials = list("$metal" = 400, "$gold" = 150, "$silver" = 150, "$glass" = 70) - build_path = /obj/item/weapon/cell/hyper + build_path = /obj/item/weapon/stock_parts/cell/hyper category = list("Misc","Power") /datum/design/super_cell @@ -41,7 +41,7 @@ reliability_base = 75 build_type = PROTOLATHE | MECHFAB materials = list("$metal" = 700, "$glass" = 70) - build_path = /obj/item/weapon/cell/super + build_path = /obj/item/weapon/stock_parts/cell/super category = list("Misc","Power") /datum/design/pacman diff --git a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm index 56954dc6dd1..d770c0def1d 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact_replicator.dm @@ -48,7 +48,7 @@ /obj/item/weapon/caution/cone,\ /obj/item/weapon/crowbar,\ /obj/item/weapon/clipboard,\ - /obj/item/weapon/cell,\ + /obj/item/weapon/stock_parts/cell,\ /obj/item/weapon/circular_saw,\ /obj/item/weapon/hatchet,\ /obj/item/weapon/handcuffs,\ diff --git a/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_cellcharge.dm b/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_cellcharge.dm index d7ff967c2d0..da7f1a012ee 100644 --- a/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_cellcharge.dm +++ b/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_cellcharge.dm @@ -8,7 +8,7 @@ if(user) if(istype(user, /mob/living/silicon/robot)) var/mob/living/silicon/robot/R = user - for (var/obj/item/weapon/cell/D in R.contents) + for (var/obj/item/weapon/stock_parts/cell/D in R.contents) D.charge += rand() * 100 + 50 R << "\blue SYSTEM ALERT: Large energy boost detected!" return 1 @@ -17,12 +17,12 @@ if(holder) var/turf/T = get_turf(holder) for (var/obj/machinery/power/apc/C in range(200, T)) - for (var/obj/item/weapon/cell/B in C.contents) + for (var/obj/item/weapon/stock_parts/cell/B in C.contents) B.charge += 25 for (var/obj/machinery/power/smes/S in range (src.effectrange,src)) S.charge += 25 for (var/mob/living/silicon/robot/M in mob_list) - for (var/obj/item/weapon/cell/D in M.contents) + for (var/obj/item/weapon/stock_parts/cell/D in M.contents) D.charge += 25 M << "\blue SYSTEM ALERT: Energy boost detected!" return 1 @@ -31,12 +31,12 @@ if(holder) var/turf/T = get_turf(holder) for (var/obj/machinery/power/apc/C in range(200, T)) - for (var/obj/item/weapon/cell/B in C.contents) + for (var/obj/item/weapon/stock_parts/cell/B in C.contents) B.charge += rand() * 100 for (var/obj/machinery/power/smes/S in range (src.effectrange,src)) S.charge += 250 for (var/mob/living/silicon/robot/M in mob_list) - for (var/obj/item/weapon/cell/D in M.contents) + for (var/obj/item/weapon/stock_parts/cell/D in M.contents) D.charge += rand() * 100 M << "\blue SYSTEM ALERT: Energy boost detected!" return 1 diff --git a/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_celldrain.dm b/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_celldrain.dm index 8af61035d49..025cdec5ee0 100644 --- a/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_celldrain.dm +++ b/code/modules/research/xenoarchaeology/artifact/effects/unknown_effect_celldrain.dm @@ -8,7 +8,7 @@ if(user) if(istype(user, /mob/living/silicon/robot)) var/mob/living/silicon/robot/R = user - for (var/obj/item/weapon/cell/D in R.contents) + for (var/obj/item/weapon/stock_parts/cell/D in R.contents) D.charge = max(D.charge - rand() * 100, 0) R << "\blue SYSTEM ALERT: Energy drain detected!" return 1 @@ -19,12 +19,12 @@ if(holder) var/turf/T = get_turf(holder) for (var/obj/machinery/power/apc/C in range(200, T)) - for (var/obj/item/weapon/cell/B in C.contents) + for (var/obj/item/weapon/stock_parts/cell/B in C.contents) B.charge = max(B.charge - 50,0) for (var/obj/machinery/power/smes/S in range (src.effectrange,src)) S.charge = max(S.charge - 100,0) for (var/mob/living/silicon/robot/M in mob_list) - for (var/obj/item/weapon/cell/D in M.contents) + for (var/obj/item/weapon/stock_parts/cell/D in M.contents) D.charge = max(D.charge - 50,0) M << "\red SYSTEM ALERT: Energy drain detected!" return 1 @@ -33,12 +33,12 @@ if(holder) var/turf/T = get_turf(holder) for (var/obj/machinery/power/apc/C in range(200, T)) - for (var/obj/item/weapon/cell/B in C.contents) + for (var/obj/item/weapon/stock_parts/cell/B in C.contents) B.charge = max(B.charge - rand() * 150,0) for (var/obj/machinery/power/smes/S in range (src.effectrange,src)) S.charge = max(S.charge - 250,0) for (var/mob/living/silicon/robot/M in mob_list) - for (var/obj/item/weapon/cell/D in M.contents) + for (var/obj/item/weapon/stock_parts/cell/D in M.contents) D.charge = max(D.charge - rand() * 150,0) M << "\red SYSTEM ALERT: Energy drain detected!" return 1 diff --git a/code/modules/research/xenoarchaeology/tools/suspension_generator.dm b/code/modules/research/xenoarchaeology/tools/suspension_generator.dm index e0a1faf60d2..2a6df06c6f5 100644 --- a/code/modules/research/xenoarchaeology/tools/suspension_generator.dm +++ b/code/modules/research/xenoarchaeology/tools/suspension_generator.dm @@ -5,7 +5,7 @@ icon_state = "suspension2" density = 1 req_access = list(access_research) - var/obj/item/weapon/cell/cell + var/obj/item/weapon/stock_parts/cell/cell var/obj/item/weapon/card/id/auth_card var/locked = 1 var/open = 0 @@ -16,7 +16,7 @@ var/list/secured_mobs = list() /obj/machinery/suspension_gen/New() - src.cell = new/obj/item/weapon/cell/high(src) + src.cell = new/obj/item/weapon/stock_parts/cell/high(src) ..() /obj/machinery/suspension_gen/process() @@ -205,7 +205,7 @@ desc = "It has stubby legs bolted up against it's body for stabilising." else user << "You are unable to secure [src] while it is active!" - else if (istype(W, /obj/item/weapon/cell)) + else if (istype(W, /obj/item/weapon/stock_parts/cell)) if(open) if(cell) user << "There is a power cell already installed." diff --git a/code/modules/vehicles/ambulance.dm b/code/modules/vehicles/ambulance.dm index 581b8ca8efd..139bf08fde4 100644 --- a/code/modules/vehicles/ambulance.dm +++ b/code/modules/vehicles/ambulance.dm @@ -39,7 +39,7 @@ //------------------------------------------- /obj/vehicle/train/ambulance/engine/New() ..() - cell = new /obj/item/weapon/cell/high + cell = new /obj/item/weapon/stock_parts/cell/high verbs -= /atom/movable/verb/pull key = new() @@ -86,10 +86,10 @@ ..() flick("mulebot-emagged", src) -/obj/vehicle/train/ambulance/trolley/insert_cell(var/obj/item/weapon/cell/C, var/mob/living/carbon/human/H) +/obj/vehicle/train/ambulance/trolley/insert_cell(var/obj/item/weapon/stock_parts/cell/C, var/mob/living/carbon/human/H) return -/obj/vehicle/train/ambulance/engine/insert_cell(var/obj/item/weapon/cell/C, var/mob/living/carbon/human/H) +/obj/vehicle/train/ambulance/engine/insert_cell(var/obj/item/weapon/stock_parts/cell/C, var/mob/living/carbon/human/H) ..() update_stats() diff --git a/code/modules/vehicles/cargo_train.dm b/code/modules/vehicles/cargo_train.dm index cc416aa34b3..896ee3cc652 100644 --- a/code/modules/vehicles/cargo_train.dm +++ b/code/modules/vehicles/cargo_train.dm @@ -40,7 +40,7 @@ //------------------------------------------- /obj/vehicle/train/cargo/engine/New() ..() - cell = new /obj/item/weapon/cell/high + cell = new /obj/item/weapon/stock_parts/cell/high verbs -= /atom/movable/verb/pull key = new() var/image/I = new(icon = 'icons/obj/vehicles.dmi', icon_state = "cargo_engine_overlay", layer = src.layer + 0.2) //over mobs @@ -82,10 +82,10 @@ else icon_state = initial(icon_state) -/obj/vehicle/train/cargo/trolley/insert_cell(var/obj/item/weapon/cell/C, var/mob/living/carbon/human/H) +/obj/vehicle/train/cargo/trolley/insert_cell(var/obj/item/weapon/stock_parts/cell/C, var/mob/living/carbon/human/H) return -/obj/vehicle/train/cargo/engine/insert_cell(var/obj/item/weapon/cell/C, var/mob/living/carbon/human/H) +/obj/vehicle/train/cargo/engine/insert_cell(var/obj/item/weapon/stock_parts/cell/C, var/mob/living/carbon/human/H) ..() update_stats() diff --git a/code/modules/vehicles/janicart.dm b/code/modules/vehicles/janicart.dm index 8219335c24a..39008dfb2ba 100644 --- a/code/modules/vehicles/janicart.dm +++ b/code/modules/vehicles/janicart.dm @@ -43,7 +43,7 @@ //------------------------------------------- /obj/vehicle/train/janitor/engine/New() ..() - cell = new /obj/item/weapon/cell/high + cell = new /obj/item/weapon/stock_parts/cell/high verbs -= /atom/movable/verb/pull key = new() var/datum/reagents/R = new/datum/reagents(100) @@ -136,10 +136,10 @@ ..() flick("mulebot-emagged", src) -/obj/vehicle/train/janitor/trolley/insert_cell(var/obj/item/weapon/cell/C, var/mob/living/carbon/human/H) +/obj/vehicle/train/janitor/trolley/insert_cell(var/obj/item/weapon/stock_parts/cell/C, var/mob/living/carbon/human/H) return -/obj/vehicle/train/janitor/engine/insert_cell(var/obj/item/weapon/cell/C, var/mob/living/carbon/human/H) +/obj/vehicle/train/janitor/engine/insert_cell(var/obj/item/weapon/stock_parts/cell/C, var/mob/living/carbon/human/H) ..() update_stats() diff --git a/code/modules/vehicles/vehicle.dm b/code/modules/vehicles/vehicle.dm index 1eaf42f62ce..a929e4499d9 100644 --- a/code/modules/vehicles/vehicle.dm +++ b/code/modules/vehicles/vehicle.dm @@ -21,7 +21,7 @@ var/move_delay = 1 //set this to limit the speed of the vehicle var/movable = 1 - var/obj/item/weapon/cell/cell + var/obj/item/weapon/stock_parts/cell/cell var/charge_use = 5 //set this to adjust the amount of power the vehicle uses per move var/atom/movable/load //all vehicles can take a load, since they should all be a least drivable @@ -72,7 +72,7 @@ else if(istype(W, /obj/item/weapon/crowbar) && cell && open) remove_cell(user) - else if(istype(W, /obj/item/weapon/cell) && !cell && open) + else if(istype(W, /obj/item/weapon/stock_parts/cell) && !cell && open) insert_cell(W, user) else if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/T = W @@ -236,7 +236,7 @@ turn_on() return -/obj/vehicle/proc/insert_cell(var/obj/item/weapon/cell/C, var/mob/living/carbon/human/H) +/obj/vehicle/proc/insert_cell(var/obj/item/weapon/stock_parts/cell/C, var/mob/living/carbon/human/H) if(cell) return if(!istype(C)) diff --git a/icons/mob/belt.dmi b/icons/mob/belt.dmi index bbad97bf8bd..f989cb1ab34 100644 Binary files a/icons/mob/belt.dmi and b/icons/mob/belt.dmi differ diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi index ab98bbb87be..e2f6452cdcd 100644 Binary files a/icons/obj/weapons.dmi and b/icons/obj/weapons.dmi differ diff --git a/maps/RandomZLevels/moonoutpost19.dmm b/maps/RandomZLevels/moonoutpost19.dmm index c9f561c8109..cf8bcee621f 100644 --- a/maps/RandomZLevels/moonoutpost19.dmm +++ b/maps/RandomZLevels/moonoutpost19.dmm @@ -109,7 +109,7 @@ "ce" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{carbon_dioxide = 48.7; dir = 1; heat_capacity = 1e+006; icon_state = "warning"; nitrogen = 13.2; oxygen = 32.4; temperature = 251},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "cf" = (/obj/structure/sign/securearea{pixel_x = 0; pixel_y = 32},/turf/simulated/floor{carbon_dioxide = 48.7; dir = 4; heat_capacity = 1e+006; icon_state = "warningcorner"; nitrogen = 13.2; oxygen = 32.4; temperature = 251},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "cg" = (/obj/machinery/light/small{active_power_usage = 0; dir = 4; icon_state = "bulb-broken"; status = 2},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{carbon_dioxide = 48.7; dir = 4; heat_capacity = 1e+006; icon_state = "red"; nitrogen = 13.2; oxygen = 32.4; temperature = 251},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) -"ch" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/light/small{dir = 8},/obj/item/weapon/cell/high,/obj/item/weapon/paper{info = "Alright, listen up. If you're reading this, I'm either taking a shit or I've been recalled back to Command. Either way, you'll need to know how to restore power. We've stolen this stuff from Nanotrasen, so all the equipment is jury-rigged. We have generators that work on both plasma and uranium, about 50 sheets should power the outpost for quite a while. If the generators aren't working, which is very likely, take the power cell on the desk and put it into the APC in the hallway. That should get the place running, at least for a little while."; name = "Engineering Instructions"},/turf/simulated/floor/plating{dir = 8; heat_capacity = 1e+006; icon_state = "warnplate"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) +"ch" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/light/small{dir = 8},/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/paper{info = "Alright, listen up. If you're reading this, I'm either taking a shit or I've been recalled back to Command. Either way, you'll need to know how to restore power. We've stolen this stuff from Nanotrasen, so all the equipment is jury-rigged. We have generators that work on both plasma and uranium, about 50 sheets should power the outpost for quite a while. If the generators aren't working, which is very likely, take the power cell on the desk and put it into the APC in the hallway. That should get the place running, at least for a little while."; name = "Engineering Instructions"},/turf/simulated/floor/plating{dir = 8; heat_capacity = 1e+006; icon_state = "warnplate"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "ci" = (/obj/structure/stool,/turf/simulated/floor/plating{broken = 1; heat_capacity = 1e+006; icon_state = "platingdmg3"; tag = "icon-platingdmg3"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "cj" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating{dir = 1; heat_capacity = 1e+006; icon_state = "warnplate"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) "ck" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{dir = 4; heat_capacity = 1e+006; icon_state = "warnplatecorner"; tag = "icon-warnplatecorner (EAST)"},/area/awaycontent/a4{has_gravity = 1; name = "Syndicate Outpost"}) @@ -332,7 +332,7 @@ "gt" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/disposalpipe/segment{desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; dir = 4; name = "Acid-Proof disposal pipe"; unacidable = 1},/obj/machinery/door/poddoor/preopen{desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaylab"; name = "Acid-Proof containment chamber blast door"; unacidable = 1},/obj/structure/cable,/obj/structure/grille,/obj/structure/window/full/reinforced,/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "gu" = (/obj/structure/disposalpipe/segment{desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; dir = 4; name = "Acid-Proof disposal pipe"; unacidable = 1},/obj/structure/alien/weeds,/obj/structure/alien/resin/wall,/turf/simulated/floor/engine,/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "gv" = (/obj/structure/disposalpipe/segment{desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; dir = 2; icon_state = "pipe-c"; name = "Acid-Proof disposal pipe"; unacidable = 1},/obj/structure/alien/weeds{icon_state = "weeds2"},/turf/simulated/floor/engine,/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) -"gw" = (/obj/structure/table,/obj/effect/decal/cleanable/dirt,/obj/machinery/cell_charger,/obj/item/weapon/cell/high,/obj/item/device/radio/off,/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) +"gw" = (/obj/structure/table,/obj/effect/decal/cleanable/dirt,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high,/obj/item/device/radio/off,/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "gx" = (/obj/structure/table,/obj/item/weapon/paper{info = "Ivan Volodin Stories:

Entry Won - 28/05/2554:
Hello. I am Crazy Ivan. Boss say I must write. I do good job fixing outpost. Is very good job. Much better than mines. Many nice people. I cause no trouble.

Entry Too - 05/06/2554:
I am finding problem with Booze-O-Mat. Is not problem. I solve very easy. Use yellow tool to make purple light go off. I am good engineer! Bartender will be very happy.

Entry Tree - 08/06/2554:
Bartender is not happy. Security man is not happy. Cannot feel legs, is very cold in freezer. Is not good. Table is jammed into door, have no tools. Is very not good. But, on bright side, found meat! Shall chew to keep spirits up.

Entry Fore - 12/06/2554:
Big nasty purple bug looked at me today. Make nervous. Blue wall wire can be broken, then bad thing happens. Very very bad thing. Man in orange spacesuit wave at me today too. He seem nice. Wonder who was?

Entry Fiv - 15/06/2554:
I eat cornflakes today. Is good day. Sun shine for a while. Was nice. I also take ride on disposals chute. Was fun, but tiny. Get clog out of pipes, was vodka bottle. Is empty. This make many sads.

Entry Sex: 19/06/2554:
Purple bugs jumpy today. When waved, get hiss. Maybe very bad. Maybe just ill. Do not know. Is science problem, is not engineer problem. I eat sandwich. Is glorious job. Wish to never end."; name = "Personal Log - Ivan Volodin"},/turf/simulated/floor/plating{broken = 1; heat_capacity = 1e+006; icon_state = "platingdmg3"; tag = "icon-platingdmg3"},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "gy" = (/obj/machinery/light/small,/obj/structure/closet/toolcloset,/obj/item/clothing/gloves/yellow,/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "gz" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) @@ -568,7 +568,7 @@ "kV" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "0"; req_one_access_txt = "0"},/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "kW" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 0; heat_capacity = 1e+006; icon_state = "blue"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "kX" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/device/multitool,/turf/simulated/floor{dir = 0; heat_capacity = 1e+006; icon_state = "blue"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) -"kY" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{dir = 0; heat_capacity = 1e+006; icon_state = "blue"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) +"kY" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{dir = 0; heat_capacity = 1e+006; icon_state = "blue"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "kZ" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{dir = 0; heat_capacity = 1e+006; icon_state = "blue"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "la" = (/obj/structure/stool/bed/chair,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "bar"},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "lb" = (/obj/structure/extinguisher_cabinet{pixel_x = 26; pixel_y = 0},/obj/machinery/camera{c_tag = "Kitchen"; dir = 8; network = list("MO19")},/turf/simulated/floor{tag = "icon-cafeteria (NORTHEAST)"; icon_state = "cafeteria"; dir = 5},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) @@ -711,7 +711,7 @@ "nI" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/turf/simulated/shuttle/wall{icon_state = "swall_f9"; dir = 2},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "nJ" = (/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 6},/area/awaycontent/a3{always_unpowered = 1; has_gravity = 1; name = "Khonsu 19"; power_environ = 0; power_equip = 0; power_light = 0; poweralm = 0}) "nK" = (/obj/machinery/washing_machine,/turf/simulated/floor{carbon_dioxide = 48.7; heat_capacity = 1e+006; icon_state = "barber"; nitrogen = 13.2; oxygen = 32.4; temperature = 251},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) -"nL" = (/obj/machinery/light/small{dir = 1},/obj/structure/window/reinforced{dir = 4; layer = 2.9},/obj/structure/table,/obj/structure/bedsheetbin,/obj/item/clothing/tie/black,/obj/item/clothing/under/lawyer/black,/turf/simulated/floor{carbon_dioxide = 48.7; heat_capacity = 1e+006; icon_state = "barber"; nitrogen = 13.2; oxygen = 32.4; temperature = 251},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) +"nL" = (/obj/machinery/light/small{dir = 1},/obj/structure/window/reinforced{dir = 4; layer = 2.9},/obj/structure/table,/obj/structure/bedsheetbin,/obj/item/clothing/accessory/black,/obj/item/clothing/under/lawyer/black,/turf/simulated/floor{carbon_dioxide = 48.7; heat_capacity = 1e+006; icon_state = "barber"; nitrogen = 13.2; oxygen = 32.4; temperature = 251},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "nM" = (/obj/machinery/alarm{dir = 8; frequency = 1439; locked = 0; pixel_x = 23; pixel_y = 0; req_access = null},/turf/simulated/floor{carbon_dioxide = 48.7; dir = 2; heat_capacity = 1e+006; icon_state = "neutralcorner"; nitrogen = 13.2; oxygen = 32.4; temperature = 251},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "nN" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "201"; req_one_access_txt = "0"},/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) "nO" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a1{has_gravity = 1; name = "MO19 Arrivals"}) diff --git a/maps/RandomZLevels/undergroundoutpost45.dmm b/maps/RandomZLevels/undergroundoutpost45.dmm index 21c5d6950ea..ac64937fec2 100644 --- a/maps/RandomZLevels/undergroundoutpost45.dmm +++ b/maps/RandomZLevels/undergroundoutpost45.dmm @@ -464,7 +464,7 @@ "iV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall,/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "iX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10; level = 1},/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) -"iY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/machinery/light/small{dir = 8},/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"iY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/machinery/light/small{dir = 8},/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "iZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "white"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "ja" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{heat_capacity = 1e+006},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "jb" = (/obj/machinery/light/small{dir = 8},/obj/machinery/alarm{dir = 4; frequency = 1439; locked = 0; pixel_x = -23; pixel_y = 0; req_access = null},/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "bar"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -618,10 +618,10 @@ "lT" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/sign/deathsposal{desc = "A warning sign which reads 'DISPOSAL: LEADS TO EXTERIOR'"; name = "\improper DISPOSAL: LEADS TO EXTERIOR"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "bar"},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "lU" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/glass{name = "Diner"},/turf/simulated/floor{heat_capacity = 1e+006},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) "lV" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/glass{name = "Diner"},/turf/simulated/floor{heat_capacity = 1e+006},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) -"lW" = (/obj/structure/closet/crate,/obj/item/stack/sheet/mineral/plasma{amount = 26},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"lW" = (/obj/structure/closet/crate,/obj/item/stack/sheet/mineral/plasma{amount = 26},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "lX" = (/obj/machinery/light/small{dir = 1},/obj/machinery/camera{c_tag = "Engineering Secure Storage"; dir = 2; network = list("UO45")},/turf/simulated/floor/plating{heat_capacity = 1e+006},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "lY" = (/obj/structure/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig,/turf/simulated/floor/plating{dir = 8; heat_capacity = 1e+006; icon_state = "warnplate"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"lZ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/turf/simulated/floor{dir = 4; heat_capacity = 1e+006; icon_state = "warndark"; tag = "icon-warndark (EAST)"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) +"lZ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/turf/simulated/floor{dir = 4; heat_capacity = 1e+006; icon_state = "warndark"; tag = "icon-warndark (EAST)"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "ma" = (/turf/simulated/floor{heat_capacity = 1e+006},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "mb" = (/turf/simulated/floor{burnt = 1; dir = 8; heat_capacity = 1e+006; icon_state = "floorscorched1"; tag = "icon-floorscorched1 (WEST)"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) "mc" = (/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "white"},/area/awaycontent/a6{has_gravity = 1; name = "UO45 Gateway"}) @@ -845,7 +845,7 @@ "qm" = (/obj/machinery/light/small,/obj/structure/sink{dir = 8; icon_state = "sink"; pixel_x = -11; pixel_y = 0},/obj/structure/mirror{pixel_x = -28},/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "freezerfloor"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "qn" = (/obj/structure/toilet{tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{heat_capacity = 1e+006; icon_state = "freezerfloor"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "qo" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/item/clothing/glasses/hud/health,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{dir = 2; heat_capacity = 1e+006; icon_state = "whitecorner"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) -"qp" = (/obj/structure/table,/obj/machinery/alarm{frequency = 1439; locked = 0; pixel_y = 23; req_access = null},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/hand_labeler,/obj/item/clothing/tie/stethoscope,/turf/simulated/floor{dir = 2; heat_capacity = 1e+006; icon_state = "whitehall"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) +"qp" = (/obj/structure/table,/obj/machinery/alarm{frequency = 1439; locked = 0; pixel_y = 23; req_access = null},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/hand_labeler,/obj/item/clothing/accessory/stethoscope,/turf/simulated/floor{dir = 2; heat_capacity = 1e+006; icon_state = "whitehall"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "qq" = (/obj/machinery/vending/medical{req_access_txt = "201"},/turf/simulated/floor{dir = 6; heat_capacity = 1e+006; icon_state = "whitehall"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "qr" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{dir = 8; heat_capacity = 1e+006; icon_state = "whitehall"},/area/awaycontent/a5{has_gravity = 1; name = "UO45 Research"}) "qs" = (/obj/structure/stool/bed/chair/wood/normal,/turf/simulated/floor/carpet{heat_capacity = 1e+006},/area/awaycontent/a2{has_gravity = 1; name = "UO45 Crew Quarters"}) @@ -1138,7 +1138,7 @@ "vT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{heat_capacity = 1e+006},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/vending/engivend{req_access_txt = "0"},/obj/machinery/camera{c_tag = "Engineering Foyer"; dir = 1; network = list("UO45")},/turf/simulated/floor{dir = 8; heat_capacity = 1e+006; icon_state = "floorgrime"; tag = "icon-floorgrime (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/vending/tool,/obj/structure/sign/poster{icon_state = "poster5_legit"; pixel_x = 0; pixel_y = -32; serial_number = 21},/turf/simulated/floor{burnt = 1; dir = 8; heat_capacity = 1e+006; icon_state = "floorscorched2"; tag = "icon-floorscorched2 (WEST)"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) -"vW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{dir = 6; heat_capacity = 1e+006; icon_state = "yellow"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) +"vW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{dir = 6; heat_capacity = 1e+006; icon_state = "yellow"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/wall,/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vY" = (/obj/structure/closet/emcloset,/obj/item/clothing/mask/breath,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 2; heat_capacity = 1e+006; icon_state = "bot"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) "vZ" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 2; heat_capacity = 1e+006; icon_state = "bot"},/area/awaycontent/a3{has_gravity = 1; name = "UO45 Engineering"}) diff --git a/maps/cyberiad.dmm b/maps/cyberiad.dmm index 3b8cb2e3279..bbccdf230e1 100644 --- a/maps/cyberiad.dmm +++ b/maps/cyberiad.dmm @@ -156,7 +156,7 @@ "acZ" = (/obj/structure/table/woodentable,/turf/simulated/floor/carpet,/area/security/hos) "ada" = (/obj/machinery/door_control{id = "Prison Gate"; name = "Prison Wing Lockdown"; pixel_x = -28; pixel_y = 7; req_access_txt = "2"},/obj/machinery/door_control{id = "Secure Gate"; name = "Brig Lockdown"; pixel_x = -28; pixel_y = -3; req_access_txt = "2"},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "adb" = (/obj/structure/table/woodentable,/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "dark"},/area/security/hos) -"adc" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = 10},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor,/area/security/podbay) +"adc" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = 10},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor,/area/security/podbay) "add" = (/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/engine,/area/security/podbay) "ade" = (/obj/machinery/light{dir = 1; on = 1},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/engine,/area/security/podbay) "adf" = (/obj/machinery/camera{c_tag = "Brig Podbay"; dir = 2; network = list("SS13")},/obj/machinery/door_control{desc = "A remote control-switch for the pod doors."; id = "secpodbay"; name = "Pod Door Control"; pixel_x = 0; pixel_y = 24; req_access_txt = "71"},/turf/simulated/floor/engine,/area/security/podbay) @@ -1789,7 +1789,7 @@ "aIu" = (/obj/structure/table,/obj/machinery/alarm{pixel_y = 23},/obj/item/device/t_scanner,/turf/simulated/floor,/area/storage/primary) "aIv" = (/obj/structure/table,/obj/machinery/camera{c_tag = "Primary Tool Storage"},/obj/machinery/requests_console{department = "Tool Storage"; departmentType = 0; pixel_y = 30},/obj/item/device/assembly/igniter{pixel_x = -8; pixel_y = -4},/obj/item/device/assembly/igniter,/obj/item/weapon/screwdriver{pixel_y = 16},/turf/simulated/floor,/area/storage/primary) "aIw" = (/obj/structure/table,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/multitool,/obj/item/device/multitool{pixel_x = 4},/turf/simulated/floor,/area/storage/primary) -"aIx" = (/obj/structure/table,/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/cell_charger,/obj/item/weapon/cell/high,/turf/simulated/floor,/area/storage/primary) +"aIx" = (/obj/structure/table,/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high,/turf/simulated/floor,/area/storage/primary) "aIy" = (/obj/structure/table,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor,/area/storage/primary) "aIz" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/turf/simulated/floor,/area/storage/primary) "aIA" = (/obj/machinery/vending/tool,/turf/simulated/floor,/area/storage/primary) @@ -1882,7 +1882,7 @@ "aKj" = (/obj/structure/table,/obj/item/device/radio{pixel_y = 6},/obj/item/device/radio{pixel_x = 6; pixel_y = 4},/obj/item/device/radio{pixel_x = -6; pixel_y = 4},/obj/item/device/radio,/turf/simulated/floor,/area/gateway) "aKk" = (/obj/structure/sign/biohazard{pixel_x = 32},/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/simulated/floor,/area/gateway) "aKl" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots{pixel_y = -5},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) -"aKm" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/ai_monitored/storage/eva) +"aKm" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/ai_monitored/storage/eva) "aKn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) "aKo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/table/reinforced,/obj/item/weapon/book/manual/evaguide,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "aKp" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/weapon/tank/nitrogen,/obj/item/clothing/suit/space/eva/vox,/obj/item/clothing/mask/breath/vox,/obj/item/clothing/head/helmet/space/eva/vox,/turf/simulated/floor{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/ai_monitored/storage/eva) @@ -2000,7 +2000,7 @@ "aMx" = (/obj/machinery/door/window{dir = 8; name = "Mass Driver"; req_access_txt = "22"},/obj/machinery/mass_driver{dir = 1; id = "chapelgun"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/chapel/main) "aMy" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/escapepodbay) "aMz" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/obj/item/weapon/crowbar/red,/turf/simulated/floor,/area/escapepodbay) -"aMA" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/cell,/obj/item/device/flashlight,/turf/simulated/floor,/area/escapepodbay) +"aMA" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/stock_parts/cell,/obj/item/device/flashlight,/turf/simulated/floor,/area/escapepodbay) "aMB" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/emergency_oxygen/engi,/obj/item/weapon/tank/emergency_oxygen/engi,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor,/area/escapepodbay) "aMC" = (/obj/machinery/alarm{pixel_y = 25},/turf/simulated/floor/engine,/area/escapepodbay) "aMD" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/engine,/area/escapepodbay) @@ -3161,7 +3161,7 @@ "biO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "biP" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "biQ" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) -"biR" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/module/power_control,/obj/item/weapon/cell{maxcharge = 2000},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) +"biR" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/module/power_control,/obj/item/weapon/stock_parts/cell{maxcharge = 2000},/turf/simulated/floor{icon_state = "floorgrime"},/area/quartermaster/storage) "biS" = (/obj/machinery/conveyor{dir = 1; id = "packageSort1"},/turf/simulated/floor/plating,/area/quartermaster/office) "biT" = (/obj/structure/stool,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/quartermaster/office) "biU" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/office) @@ -3898,7 +3898,7 @@ "bwX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/decal/warning_stripes/east,/obj/effect/decal/warning_stripes/yellow,/turf/simulated/floor,/area/assembly/robotics) "bwY" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bwZ" = (/obj/machinery/hologram/holopad,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) -"bxa" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) +"bxa" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bxb" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor{dir = 10; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTHEAST)"},/area/medical/research{name = "Research Division"}) "bxc" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor{dir = 6; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTHEAST)"},/area/medical/research{name = "Research Division"}) "bxd" = (/obj/machinery/light{dir = 8},/obj/machinery/computer/rdconsole/core,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/toxins/lab) @@ -3982,7 +3982,7 @@ "byD" = (/turf/simulated/floor,/area/assembly/robotics) "byE" = (/obj/effect/decal/warning_stripes/east,/turf/simulated/floor,/area/assembly/robotics) "byF" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) -"byG" = (/obj/structure/table,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000; pixel_x = 5; pixel_y = -5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/crowbar,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) +"byG" = (/obj/structure/table,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000; pixel_x = 5; pixel_y = -5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/crowbar,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "byH" = (/obj/machinery/status_display,/turf/simulated/wall/r_wall,/area) "byI" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/wall/r_wall,/area) "byJ" = (/obj/machinery/newscaster{pixel_x = -27; pixel_y = 1},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) @@ -4073,7 +4073,7 @@ "bAq" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{icon_state = "bot"},/area/medical/research{name = "Research Division"}) "bAr" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor{icon_state = "bot"},/area/medical/research{name = "Research Division"}) "bAs" = (/obj/machinery/door_control{id = "rdlab2"; name = "Research and Development Lab Shutters Control"; pixel_x = -24; pixel_y = -24; req_access_txt = "47"},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) -"bAt" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) +"bAt" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) "bAu" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) "bAv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) "bAw" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/obj/item/weapon/stock_parts/scanning_module{pixel_x = 0; pixel_y = 0},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) @@ -5458,7 +5458,7 @@ "caX" = (/obj/machinery/light/small{dir = 1},/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor/plating,/area/storage/tech) "caY" = (/obj/machinery/camera{c_tag = "Tech Storage"; dir = 2; network = list("SS13")},/obj/machinery/power/apc{dir = 1; name = "Tech Storage APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/cyborgrecharger{pixel_x = -4; pixel_y = -2},/obj/item/weapon/circuitboard/mech_bay_power_console{pixel_x = 2; pixel_y = 2},/obj/item/weapon/circuitboard/mech_recharger,/obj/item/weapon/circuitboard/mechfab{pixel_y = 3},/turf/simulated/floor/plating,/area/storage/tech) "caZ" = (/obj/structure/table,/obj/item/device/analyzer,/obj/item/device/healthanalyzer,/turf/simulated/floor/plating,/area/storage/tech) -"cba" = (/obj/structure/table,/obj/item/device/analyzer/plant_analyzer,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating,/area/storage/tech) +"cba" = (/obj/structure/table,/obj/item/device/analyzer/plant_analyzer,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating,/area/storage/tech) "cbb" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/plating,/area/storage/tech) "cbc" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{dir = 8; icon_state = "cautioncorner"},/area/hallway/primary/aft) "cbd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor,/area/hallway/primary/aft) @@ -5769,7 +5769,7 @@ "cgW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area) "cgX" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area) "cgY" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area) -"cgZ" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating,/area/storage/tech) +"cgZ" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating,/area/storage/tech) "cha" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plating,/area/storage/tech) "chb" = (/obj/machinery/requests_console{department = "Tech storage"; pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/storage/tech) "chc" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/storage/tech) @@ -6559,7 +6559,7 @@ "cwg" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/engine/hardsuitstorage) "cwh" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor,/area/engine/hardsuitstorage) "cwi" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/engine/chiefs_office) -"cwj" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = 24},/obj/structure/table/reinforced,/obj/item/weapon/rcd,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/clothing/glasses/meson{pixel_y = 4},/obj/item/device/megaphone,/mob/living/simple_animal/parrot/Poly,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) +"cwj" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = 24},/obj/structure/table/reinforced,/obj/item/weapon/rcd,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/clothing/glasses/meson{pixel_y = 4},/obj/item/device/megaphone,/mob/living/simple_animal/parrot/Poly,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) "cwk" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Engineer's Desk"; departmentType = 3; name = "Chief Engineer RC"; pixel_x = 0; pixel_y = 32},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/photocopier,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) "cwl" = (/obj/machinery/door_control{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = 10; pixel_y = 24; req_access_txt = "24"},/obj/machinery/door_control{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -10; pixel_y = 24; req_access_txt = "10"},/obj/machinery/door_control{desc = "A remote control-switch for secure storage."; id = "Secure Storage"; name = "Engineering Secure Storage"; pixel_x = 0; pixel_y = 24; req_access_txt = "11"},/obj/machinery/light_switch{pixel_y = 38},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) "cwm" = (/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) @@ -6681,7 +6681,7 @@ "cyy" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/device/radio,/obj/item/device/radio,/obj/item/device/radio,/obj/item/device/radio,/obj/item/weapon/storage/belt/utility,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/engine/equipmentstorage) "cyz" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor,/area/engine/equipmentstorage) "cyA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/engine/equipmentstorage) -"cyB" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/obj/item/weapon/cell/high,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/engine/equipmentstorage) +"cyB" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/obj/item/weapon/stock_parts/cell/high,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/engine/equipmentstorage) "cyC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{level = 1},/turf/simulated/wall/r_wall,/area) "cyD" = (/obj/machinery/atmospherics/portables_connector{dir = 1; name = "Connector Port (Air Supply)"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/atmos) "cyE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/binary/volume_pump/on{dir = 4; name = "External to Filter"},/turf/simulated/floor,/area/atmos) @@ -6838,7 +6838,7 @@ "cBz" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "cBA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/space_heater,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/engi_shuttle) "cBB" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/power/monitor{name = "Engine Power Monitoring Computer"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor,/area/engine/engineering) -"cBC" = (/obj/structure/table,/obj/item/clothing/glasses/welding,/obj/item/clothing/glasses/welding,/obj/item/clothing/glasses/welding,/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/item/weapon/cell/high,/turf/simulated/floor,/area/engine/engineering) +"cBC" = (/obj/structure/table,/obj/item/clothing/glasses/welding,/obj/item/clothing/glasses/welding,/obj/item/clothing/glasses/welding,/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/item/weapon/stock_parts/cell/high,/turf/simulated/floor,/area/engine/engineering) "cBD" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/table,/obj/item/stack/sheet/mineral/plasma{amount = 30},/obj/item/device/pipe_painter,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/engine/engineering) "cBE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/power/port_gen/pacman,/turf/simulated/floor,/area/engine/engineering) "cBF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/engine/engineering) @@ -7156,7 +7156,7 @@ "cHF" = (/obj/machinery/atmospherics/unary/outlet_injector{dir = 8; frequency = 1441; icon_state = "on"; id = "co2_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) "cHG" = (/turf/space,/area/shuttle/constructionsite/station) "cHH" = (/turf/simulated/floor/plating,/area/storage/secure) -"cHI" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/airlock_electronics,/obj/item/weapon/airlock_electronics,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/storage/secure) +"cHI" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/airlock_electronics,/obj/item/weapon/airlock_electronics,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/storage/secure) "cHJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "engineering_west_pump"; tag_exterior_door = "engineering_west_outer"; frequency = 1379; id_tag = "engineering_west_airlock"; tag_interior_door = "engineering_west_inner"; pixel_x = 25; req_access_txt = "10;13"; tag_chamber_sensor = "engineering_west_sensor"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "engineering_west_sensor"; pixel_x = 25; pixel_y = 12},/turf/simulated/floor/plating,/area/engine/engineering) "cHK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area) "cHL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) @@ -8327,7 +8327,7 @@ "deg" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/table,/obj/machinery/cell_charger,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "deh" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/table,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "dei" = (/obj/machinery/vending/wallmed1/syndicate{pixel_x = -30},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) -"dej" = (/obj/structure/table,/obj/item/weapon/cell/high{pixel_x = -3; pixel_y = 3},/obj/item/weapon/cell/high,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) +"dej" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell/high{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stock_parts/cell/high,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "dek" = (/obj/structure/table,/obj/item/weapon/screwdriver{pixel_y = 9},/obj/item/device/assembly/voice{pixel_y = 3},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "del" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/device/assembly/infra,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "dem" = (/obj/structure/table,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) @@ -8507,7 +8507,7 @@ "dhE" = (/obj/structure/rack,/obj/item/weapon/gun/energy/gun,/obj/item/weapon/gun/energy/gun,/obj/item/weapon/gun/energy/gun,/obj/item/weapon/gun/energy/gun,/obj/item/weapon/gun/energy/gun,/obj/item/weapon/gun/energy/gun,/obj/item/device/radio/intercom{broadcasting = 1; dir = 1; frequency = 1441; listening = 0; name = "Spec Ops Intercom"; pixel_y = 28},/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "dhF" = (/obj/structure/rack,/obj/item/weapon/gun/energy/stunrevolver,/obj/item/weapon/gun/energy/stunrevolver,/obj/item/weapon/gun/energy/stunrevolver,/obj/item/weapon/gun/energy/stunrevolver,/obj/item/weapon/gun/energy/stunrevolver,/obj/item/weapon/gun/energy/stunrevolver,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "dhG" = (/obj/structure/rack,/obj/item/weapon/storage/box/flashbangs,/obj/item/weapon/storage/box/flashbangs,/obj/item/weapon/storage/box/flashbangs,/obj/item/weapon/storage/box/flashbangs,/obj/item/weapon/storage/box/flashbangs,/obj/item/weapon/storage/box/flashbangs,/obj/item/weapon/storage/box/teargas,/obj/item/weapon/storage/box/teargas,/obj/item/weapon/storage/box/teargas,/obj/item/weapon/storage/box/teargas,/obj/item/weapon/storage/box/teargas,/obj/item/weapon/storage/box/teargas,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) -"dhH" = (/obj/structure/table/reinforced,/obj/item/weapon/defibrillator/loaded,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) +"dhH" = (/obj/structure/table/reinforced,/obj/item/weapon/defibrillator/compact/combat/loaded,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "dhI" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/hypospray/CMO,/obj/item/weapon/reagent_containers/hypospray/CMO,/obj/item/weapon/reagent_containers/hypospray/CMO,/obj/item/weapon/reagent_containers/hypospray/CMO,/obj/item/weapon/reagent_containers/hypospray/CMO,/obj/item/weapon/reagent_containers/hypospray/CMO,/obj/item/weapon/storage/box/gloves,/obj/item/weapon/storage/box/gloves,/obj/item/weapon/storage/box/gloves,/obj/item/weapon/storage/box/gloves,/obj/item/weapon/storage/box/gloves,/obj/item/weapon/storage/box/gloves,/obj/item/weapon/storage/box/masks,/obj/item/weapon/storage/box/masks,/obj/item/weapon/storage/box/masks,/obj/item/weapon/storage/box/masks,/obj/item/weapon/storage/box/masks,/obj/item/weapon/storage/box/masks,/obj/item/device/radio/intercom{broadcasting = 1; dir = 1; frequency = 1441; listening = 0; name = "Spec Ops Intercom"; pixel_y = 28},/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "dhJ" = (/obj/machinery/vending/medical,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) "dhK" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/storage/box/autoinjectors,/obj/item/weapon/storage/box/autoinjectors,/obj/item/weapon/storage/box/autoinjectors,/obj/item/weapon/storage/box/autoinjectors,/obj/item/weapon/storage/box/autoinjectors,/obj/item/weapon/storage/box/autoinjectors,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/syringes,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops) @@ -9306,7 +9306,7 @@ "dwX" = (/obj/structure/table,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "dwY" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/derelict/ship) "dwZ" = (/obj/item/device/multitool,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) -"dxa" = (/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) +"dxa" = (/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/derelict/ship) "dxb" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/floor/plating,/area/derelict/ship) "dxc" = (/turf/simulated/shuttle/plating,/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/derelict/ship) "dxd" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l (WEST)"; icon_state = "burst_l"; dir = 8},/turf/space,/area/derelict/ship) @@ -9634,7 +9634,7 @@ "dDn" = (/obj/machinery/power/apc{dir = 1; name = "Telecoms Sat. Teleporter APC"; pixel_x = 1; pixel_y = 26},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor,/area/tcommsat/entrance) "dDo" = (/obj/structure/sign/vacuum,/turf/simulated/wall/r_wall,/area/tcommsat/entrance) "dDp" = (/obj/machinery/atmospherics/pipe/tank/air,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/tcommsat/entrance) -"dDq" = (/obj/item/weapon/cell,/turf/simulated/floor,/area/tcommsat/entrance) +"dDq" = (/obj/item/weapon/stock_parts/cell,/turf/simulated/floor,/area/tcommsat/entrance) "dDr" = (/turf/simulated/floor,/area/tcommsat/entrance) "dDs" = (/obj/structure/closet/malf/suits,/turf/simulated/floor,/area/tcommsat/entrance) "dDt" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1381; master_tag = "telecoms_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "13"},/turf/simulated/floor/plating/airless,/area) @@ -9662,7 +9662,7 @@ "dDP" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/AIsattele) "dDQ" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating/airless,/area/AIsattele) "dDR" = (/obj/structure/rack,/obj/item/clothing/gloves/yellow,/turf/simulated/floor/plating/airless,/area/AIsattele) -"dDS" = (/obj/item/weapon/cell,/turf/simulated/floor/plating/airless,/area/AIsattele) +"dDS" = (/obj/item/weapon/stock_parts/cell,/turf/simulated/floor/plating/airless,/area/AIsattele) "dDT" = (/obj/item/device/radio/beacon,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating/airless,/area/AIsattele) "dDU" = (/obj/item/device/flashlight,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating/airless,/area/AIsattele) "dDV" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/plating/airless,/area/AIsattele) @@ -10048,7 +10048,7 @@ "dLl" = (/obj/structure/transit_tube{icon_state = "S-NE"},/obj/structure/lattice,/turf/space,/area) "dLm" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/research_outpost/maintstore1) "dLn" = (/obj/structure/closet/hydrant{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plating,/area/research_outpost/maintstore1) -"dLo" = (/obj/structure/table,/obj/item/device/analyzer/plant_analyzer,/obj/item/weapon/cell,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/light/small{dir = 1},/obj/machinery/alarm{dir = 2; pixel_y = 25},/turf/simulated/floor/plating,/area/research_outpost/maintstore1) +"dLo" = (/obj/structure/table,/obj/item/device/analyzer/plant_analyzer,/obj/item/weapon/stock_parts/cell,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/machinery/light/small{dir = 1},/obj/machinery/alarm{dir = 2; pixel_y = 25},/turf/simulated/floor/plating,/area/research_outpost/maintstore1) "dLp" = (/obj/structure/transit_tube{icon_state = "D-SW"},/turf/simulated/wall/r_wall,/area/research_outpost/maintstore1) "dLq" = (/obj/structure/transit_tube{icon_state = "D-SE"},/turf/simulated/wall/r_wall,/area/research_outpost/maintstore1) "dLr" = (/obj/structure/transit_tube{icon_state = "NE-SW"},/turf/simulated/wall/r_wall,/area/research_outpost/maintstore1) @@ -11198,7 +11198,7 @@ "ehr" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/west_outpost) "ehs" = (/obj/structure/disposalpipe/segment,/obj/structure/sign/deathsposal,/turf/simulated/wall,/area/mine/living_quarters) "eht" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/mine/living_quarters) -"ehu" = (/obj/structure/table/reinforced,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 8},/area/mine/explored) +"ehu" = (/obj/structure/table/reinforced,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 8},/area/mine/explored) "ehv" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "ehw" = (/obj/machinery/mining/brace,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "ehx" = (/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 4},/area/mine/explored) @@ -11733,7 +11733,7 @@ "erG" = (/obj/machinery/bot/secbot/buzzsky,/turf/simulated/floor,/area/derelict/bridge) "erH" = (/obj/structure/table,/obj/item/device/paicard,/turf/simulated/floor,/area/derelict/bridge) "erI" = (/obj/structure/stool,/turf/simulated/floor,/area/derelict/bridge) -"erJ" = (/obj/structure/table,/obj/item/weapon/cell,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/derelict/bridge) +"erJ" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/derelict/bridge) "erK" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) "erL" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) "erM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor,/area/derelict/bridge/access) @@ -11779,7 +11779,7 @@ "esA" = (/obj/structure/table,/obj/item/device/aicard,/turf/simulated/floor/airless,/area/derelict/bridge/access) "esB" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/derelict/bridge/access) "esC" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/turf/simulated/floor/airless,/area/derelict/bridge/access) -"esD" = (/obj/structure/table,/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/floor/airless,/area/derelict/bridge/access) +"esD" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/simulated/floor/airless,/area/derelict/bridge/access) "esE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/airless,/area/derelict/bridge/access) "esF" = (/obj/structure/girder,/turf/simulated/floor/plating/airless,/area) "esG" = (/turf/simulated/floor/airless{icon_state = "circuit"},/area/derelict/singularity_engine) @@ -12018,7 +12018,7 @@ "exf" = (/obj/structure/window/basic{dir = 1},/turf/simulated/floor/plating,/area/derelict/arrival) "exg" = (/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/derelict/arrival) "exh" = (/obj/structure/table,/turf/simulated/floor/airless,/area/derelict/hallway/primary) -"exi" = (/obj/structure/table,/obj/item/weapon/cell,/turf/simulated/floor/airless,/area/derelict/hallway/primary) +"exi" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell,/turf/simulated/floor/airless,/area/derelict/hallway/primary) "exj" = (/obj/machinery/vending/sovietsoda,/turf/simulated/floor/airless,/area/derelict/hallway/primary) "exk" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/simulated/floor/airless,/area/derelict/hallway/primary) "exl" = (/obj/structure/table,/turf/simulated/floor/airless,/area) @@ -12149,7 +12149,7 @@ "ezG" = (/obj/machinery/teleport/station,/turf/simulated/floor/airless,/area/derelict/teleporter) "ezH" = (/obj/machinery/teleport/hub,/turf/simulated/floor/airless,/area/derelict/teleporter) "ezI" = (/obj/machinery/light_construct/small{dir = 4},/turf/simulated/floor/plating/airless,/area/derelict/teleporter) -"ezJ" = (/obj/structure/table,/obj/item/weapon/cell{charge = 100; maxcharge = 15000},/turf/simulated/floor/airless,/area/derelict/teleporter) +"ezJ" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/simulated/floor/airless,/area/derelict/teleporter) "ezK" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/derelict/teleporter) "ezL" = (/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/simulated/floor/airless,/area/derelict/teleporter) "ezM" = (/turf/simulated/floor/plating/airless/asteroid,/area/syndicate_depot) @@ -12550,6 +12550,8 @@ "eHr" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/hop,/obj/item/device/eftpos,/turf/simulated/floor,/area/crew_quarters/heads) "eHs" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/blue,/obj/machinery/camera{c_tag = "Brig Medbay"; dir = 2; network = list("SS13")},/turf/simulated/floor{icon_state = "white"},/area/security/medbay) "eHt" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/effect/landmark{name = "JoinLateCryo"},/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/sleep) +"eHu" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/simulated/floor,/area/quartermaster/storage) +"eHv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/simulated/floor,/area/quartermaster/storage) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -12688,7 +12690,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaabtNbvybvzbvAaDxaDxbvBbvCaDxbvDaySbvEbvFbvGbvHbmuaaaaaaaaaaabaabbvIbvIbvIbvIbvIbvIbvIaaaaaabvJbvKbvLbvMbvNbudbudbudbudbudbudbvObvPbvQbvRbvSbvTbvUbvVbiWbiWbvWbiWbiWbvXbvYbvZbwaaaibwbaaqaaqaosaaqaaJbwcaaibwdbuBaaibwebpwbpwbpwbwfaaiaaabuFaaibwgbwhbwibwjbwkabJbwlabJbwmbpFbwnaaibpHbwobwpbwqbwrbwsbwtbwubwvbwwbwxbwybwzbwAbwBbwCboCbwDbtlbwEbwFaaqbwGbwHbwIbwJbwKbwLbwMbqfaaibwNbwObwPbwQbwQbwRbwSbwTbwUbwVbwWbwXbwYbwZbxaaaibxbbvqbxcaaibxdbxebxfbrXbrXbxgaaibrZbsabxhaaiaaaaaaaaaaaaaabbxibxjbxkbxjbxkbxjbxlaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhhbhhbhhbhhbhhbhhbhhbhhbhhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxmaDwbxnbxnbxobbgbxpaGbayabxqbxpaySbxrbxsbxtbxubmuaaaaaaaaaaaaaaabvIbvIbvIbvIbvIbvIbvIaaaaaabxvbxwbudbxxbxybxybxybxybxybxzbxAbxybxBbxCbxDbxEbxFbxGbxHbiWbxIbkebxJbxKbxLbxMbxNbxOaaiaaiaaibxPbxQbxRbxSbxTaaibpubuBaaibxUbxVbxWbxXbxYaaiaaabxZaaibyabybbycaaqbydaaqbyeaaqbyfbpFbygaaiaXibyhbyibyjbykaaqbylbymbynbyobypbypbyqbyrbysbytaaqaaJbyubyvaaqaaqaaqaaJbywaosaaqaaiaaiaaibyxbyyabmbyzbvebvfbyAbwQbyBbyCbyDbyDbyEbrObyFbyGbyHaaibrTbyIaaibyJbyKbrXbyLbyMbyNaaibtLbyOaaiaaiaaaaaaaaaaaaaabbyPbyQbyRbySbySbyTbyPaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhhbhhbhhbhhbhhbhhbhhbhhbhhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyUbyUbyUbyUbyUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvIbvIbvIbvIbvIbvIbvIbyWbyXbyYbyZbudbzabudbzbbzbbzbbzbbsybuebudbudbufbzcbzdbzebzfbzgbzhbzibkebkebzjbzkbxMbxNbzlbzmbznbzobzpbzqbzrbzsbztaaibzubzvacFbzwbzxbzybzzbzAachbrebzBaaibzCbzDbzEaaqbzFaaqbzGaaqbzHbpFbzIaaibzJbzKbzLbzMbzNabJbzObzPabJabJbzQbzRabJabJbzSbzTaxSaxVbzUbzVbzWbzXbzYbzZbAabAbbAcaaibAdbAebAfbAgabmbAhbAibAjbAkbAlaaqbAmbyDbyDbAnbAobyFbApaaibAqbAqbAraaibAsbAtbAubAvbrXbAwaaibtLbAxaaiaaaaaaaaaaaaaaaaabbAybAzbyRbySbyRbAAbxkaabaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhhbhhbhhbhhbhhbhhbhhbhhbhhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyUbyUbyUbyUbyUbyUbyUaaaaaaaaaaaaaaaaaaaaaaaaaaabyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvIbvIbvIbvIbvIbvIbvIbABbACbABbADbAEbzabudbudbudbudbudbsybuebAFbhBbhBbAGbkebuhbzfbAHbAIbAJbAKbAKbALbAMbANbAObAPbAQbARbASbATbAUbAVbAWbAXaaibwdbuBaaibAYbAZbBabBbbBcaaiaaabxZaaiabmaaiaaiaaiaaiaaibBdaaibBebpFbzIaaibBfbBgbBgbBhbBiaaqbBjbBkbBlbBmbBnbBobBpbBlbBqbBrbBsbBtbBubBvbBwbBwbBxbBybBzbBAbBBbBCbBDbBEbBFbBGbBHbBIbBIbBJbBKbBLaaqbBMbrObrObBNbBObyFbBPbBQbBRbBSbBTaaqbBUbBVaQDbBWbjEaaiaaibBXaaiaaibBYbBZbBZbBZbCaaaibyPbySbyRbySbySbCbbyPaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhhbhhbhhbhhbhhbhhbhhbhhbhhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyUbyUbyUbyUbyUbyUbyUaaaaaaaaaaaaaaaaaaaaaaaaaaabyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvIbvIbvIbvIbvIbvIbvIbABbACbABbADeHueHveHubAEbudbudbudbsybuebAFbhBbhBbAGbkebuhbzfbAHbAIbAJbAKbAKbALbAMbANbAObAPbAQbARbASbATbAUbAVbAWbAXaaibwdbuBaaibAYbAZbBabBbbBcaaiaaabxZaaiabmaaiaaiaaiaaiaaibBdaaibBebpFbzIaaibBfbBgbBgbBhbBiaaqbBjbBkbBlbBmbBnbBobBpbBlbBqbBrbBsbBtbBubBvbBwbBwbBxbBybBzbBAbBBbBCbBDbBEbBFbBGbBHbBIbBIbBJbBKbBLaaqbBMbrObrObBNbBObyFbBPbBQbBRbBSbBTaaqbBUbBVaQDbBWbjEaaiaaibBXaaiaaibBYbBZbBZbBZbCaaaibyPbySbyRbySbySbCbbyPaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhhbhhbhhbhhbhhbhhbhhbhhbhhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyUbyUbyUbyUbyUbyUbyUbyUbyUaaaaaaaaaaaaaaaaaaaaabyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVaaaaaaaaaaaaaaaaaaaagaaaaaaaaabvIbvIbvIbvIbvIbvIbvIbCcbCdbCcbCebudbzabudbzbbzbbzbbzbbsybuebCfbCgbhBbChbkebuhbzfbCibCjbCkbkeblNbkebClbxMbpFbCmaYObARbCnbCobCpbCqbCrbCsborabtbCtaaiaaibCubCvbCwaaiaaiaaabxZaaibCxbCybCzbCAbCBbCCbCDachbCEbpFbzIbwsbCFbCGbCHbCIbCJaaqbCKbCLbCMbCNbCObCPbCQbCRbCSbCTbCUbCVbCWbCXbCYbCZbDabDbbDcbDdbDeaaibDfbDgbDhbDiaaibDjbDkbDlbDmbDmaaqbDnbDobDpaaqbDqbyFbDraaqbDsbDtbDubDvbDwbDxbDybDzbDAbDBbDCbDDbDEbDFbDGbDGbDHbDIbDJbDKbDLbxjbxkbDMbxkbxjbDNaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhhbhhbhhbhhbhhbhhbhhbhhbhhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyUbyUbyUbyUbyUbyUbyUbyUbyUaaaaaaaaaaaaaaaaaabyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvIbvIbvIbvIbvIbvIbvIbDObyXbDPbDQbudbzabudbudbudbudbudbsybuebCfbDRbhBbFnbkebDTbDUbkebDVbkdbkebkebDWbxLbxMbpFbCmaYObARaaibDXbDYbDZbEabEbabmbEcbEdbEeachachbEfbEgachbrebrebEhaaibEibEjbEkbElbEmbEmbEnbEobEpbpFbEqaaiaaqbErbjEbEsbEtaaqbCKbEuaaqbEvbEwbExbEyaaqbCKbEzbEAaaqaaqaaqaosaaqaaqaaqbEBamfaaqaaiaaibECaaqaaqaaiaaiaaqaaJaaqaaqaaqaaqaaqaaqaaqbEDbEEbEFaaqbEGbEHbEIbEJbEJbEKbELbEMbENbEObEPbEQbERbESbETbETbEUbDwbEVaaibEWbEXbEYbEZaaibFaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhhbhhbhhbhhbhhbhhbhhbhhbhhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyUbyUbyUbyUbyUbyUbyUbyUbyUaaaaaaaaaaaaaaaaaabyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVbyVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvIbvIbvIbvIbvIbvIbvIbCcbCdbCcbFbbFcbFdbudbudbudbFcbudbsybuebCfbFebhBbFfbkebuhbzfbkebolbFgbkebkebFhbzkbxMbpFbFibFjbFkaaibFlbFmeHrbFobFpabmbFqbFrbFsbFtbFubFvbFwaaqaaaaaaaaaaaibFxbFybFzbFzbFAbFBbFCaaibFDbFEbzIbFFbFGbFHbFIbFJbFKbFLbFMbCLbjEbFNbFObFPbFQbjEbCKbEzbFRbFSbFTbFUbFVbFWaaqbFXbFYbFZaaqbGabGbbGcbGdbGebGfbGgbDBbGhbEJbEJbGibGjbEJbGkbGlbGmbGnbGobEJbGpbGqbGrbGsbGtbGuaaiabmaaiaaiaaibBXaaiaaibBYbCaaaibGvbGwbGxbGybGzbGAbGBbGCaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa