From b356f5cf216aa33e9353d2b99dfa5d0c1b9b1f64 Mon Sep 17 00:00:00 2001 From: SinTwo Date: Tue, 22 Mar 2016 16:37:45 -0400 Subject: [PATCH] Construction Update --- .../components/unary/cold_sink.dm | 2 +- .../components/unary/heat_source.dm | 2 +- code/ZAS/Fire.dm | 2 +- code/_onclick/click.dm | 5 +- code/_onclick/hud/human.dm | 4 +- code/datums/supplypacks.dm | 14 +- code/datums/wires/alarm.dm | 2 +- code/defines/obj/weapon.dm | 26 ++ code/game/antagonist/antagonist_create.dm | 2 +- code/game/antagonist/station/renegade.dm | 3 +- code/game/area/areas.dm | 14 +- code/game/dna/dna_modifier.dm | 2 +- .../changeling/generic_equip_procs.dm | 2 +- .../gamemodes/changeling/powers/armblade.dm | 2 +- code/game/machinery/alarm.dm | 236 +++------- code/game/machinery/autolathe.dm | 5 +- code/game/machinery/autolathe_datums.dm | 94 +++- code/game/machinery/biogenerator.dm | 2 +- code/game/machinery/cloning.dm | 2 +- code/game/machinery/computer/camera.dm | 3 +- code/game/machinery/computer/computer.dm | 15 +- code/game/machinery/computer/guestpass.dm | 30 +- code/game/machinery/computer/prisonshuttle.dm | 26 -- code/game/machinery/computer3/computer.dm | 20 +- .../machinery/computer3/computers/camera.dm | 2 +- code/game/machinery/doors/firedoor.dm | 2 +- .../game/machinery/doors/firedoor_assembly.dm | 2 +- code/game/machinery/frame.dm | 412 ++++++++++++++++++ code/game/machinery/hologram.dm | 25 ++ code/game/machinery/iv_drip.dm | 13 + code/game/machinery/kitchen/microwave.dm | 13 + code/game/machinery/lightswitch.dm | 8 +- code/game/machinery/machinery.dm | 69 +-- code/game/machinery/newscaster.dm | 54 +-- code/game/machinery/recharger.dm | 15 + code/game/machinery/rechargestation.dm | 2 +- code/game/machinery/status_display.dm | 24 + code/game/machinery/status_display_ai.dm | 23 + code/game/machinery/telecomms/logbrowser.dm | 31 +- .../telecomms/machine_interactions.dm | 4 +- code/game/machinery/telecomms/telemonitor.dm | 31 +- .../machinery/telecomms/traffic_control.dm | 33 +- code/game/machinery/vending.dm | 22 +- code/game/machinery/wall_frames.dm | 144 +++++- code/game/machinery/washing_machine.dm | 48 +- code/game/mecha/mech_bay.dm | 2 +- code/game/mecha/mech_fabricator.dm | 4 +- code/game/objects/items.dm | 21 +- .../items/devices/radio/electropack.dm | 2 +- .../objects/items/devices/radio/intercom.dm | 47 +- code/game/objects/items/stacks/medical.dm | 2 +- code/game/objects/items/weapons/autopsy.dm | 15 +- .../objects/items/weapons/cigs_lighters.dm | 55 ++- .../circuitboards/computer/camera_monitor.dm | 10 + .../items/weapons/circuitboards/frame.dm | 253 +++++++++++ .../items/weapons/circuitboards/other.dm | 4 +- code/game/objects/items/weapons/cosmetics.dm | 6 +- .../objects/items/weapons/flamethrower.dm | 4 +- .../objects/items/weapons/gift_wrappaper.dm | 4 +- .../items/weapons/implants/implantpad.dm | 4 +- .../items/weapons/material/twohanded.dm | 2 +- .../objects/items/weapons/melee/energy.dm | 2 +- code/game/objects/items/weapons/mop_deploy.dm | 2 +- .../items/weapons/storage/laundry_basket.dm | 2 +- code/game/objects/items/weapons/tools.dm | 8 +- code/game/objects/objs.dm | 9 +- .../crates_lockers/closets/secure/security.dm | 1 + code/game/objects/structures/curtains.dm | 15 + code/game/objects/structures/extinguisher.dm | 25 +- code/game/objects/structures/janicart.dm | 6 +- code/game/objects/structures/mirror.dm | 62 ++- code/game/objects/structures/noticeboard.dm | 35 +- code/game/objects/structures/safe.dm | 2 +- code/game/objects/structures/watercloset.dm | 2 +- code/game/supplyshuttle.dm | 14 + code/modules/assembly/mousetrap.dm | 2 +- code/modules/clothing/head/misc_special.dm | 2 +- code/modules/clothing/masks/miscellaneous.dm | 2 +- .../clothing/spacesuits/rig/rig_attackby.dm | 4 +- code/modules/clothing/suits/armor.dm | 4 +- code/modules/clothing/suits/jobs.dm | 4 +- .../detectivework/tools/evidencebag.dm | 8 +- code/modules/economy/ATM.dm | 20 + code/modules/events/prison_break.dm | 7 +- code/modules/games/cards.dm | 8 +- code/modules/hydroponics/grown.dm | 4 +- code/modules/hydroponics/seed.dm | 4 +- code/modules/hydroponics/seed_machines.dm | 12 +- code/modules/hydroponics/trays/tray_tools.dm | 2 +- code/modules/library/lib_items.dm | 2 +- code/modules/materials/material_recipes.dm | 22 +- code/modules/materials/materials.dm | 5 +- code/modules/mining/drilling/drill.dm | 2 +- code/modules/mining/mine_turfs.dm | 7 +- code/modules/mob/inventory.dm | 129 ++---- code/modules/mob/living/bot/floorbot.dm | 2 +- .../carbon/alien/diona/diona_attacks.dm | 2 +- code/modules/mob/living/carbon/give.dm | 30 +- code/modules/mob/living/carbon/human/emote.dm | 4 +- code/modules/mob/living/carbon/human/human.dm | 2 + .../living/carbon/human/species/species.dm | 2 +- code/modules/mob/living/inventory.dm | 172 ++++++++ code/modules/mob/living/living.dm | 60 +++ .../living/silicon/robot/drone/drone_items.dm | 2 - .../mob/living/simple_animal/parrot.dm | 2 +- code/modules/mob/mob.dm | 120 +---- code/modules/mob/mob_defines.dm | 7 - code/modules/mob/mob_grab.dm | 6 +- code/modules/mob/mob_helpers.dm | 6 - code/modules/mob/update_icons.dm | 9 + code/modules/organs/organ_external.dm | 10 +- code/modules/paperwork/faxmachine.dm | 1 + code/modules/paperwork/filingcabinet.dm | 14 +- code/modules/paperwork/paper.dm | 5 +- code/modules/paperwork/photocopier.dm | 16 + code/modules/paperwork/photography.dm | 2 +- code/modules/paperwork/stamps.dm | 4 + code/modules/power/batteryrack.dm | 13 +- code/modules/power/port_gen.dm | 5 +- code/modules/power/smes.dm | 1 + code/modules/power/smes_construction.dm | 6 +- code/modules/power/solar.dm | 10 +- code/modules/projectiles/gun.dm | 4 +- .../projectiles/guns/projectile/pistol.dm | 10 +- .../targeting/targeting_overlay.dm | 3 +- code/modules/reagents/Chemistry-Machinery.dm | 10 + .../reagents/reagent_containers/glass.dm | 13 +- .../reagents/reagent_containers/pill.dm | 2 +- code/modules/reagents/reagent_dispenser.dm | 47 +- code/modules/recycling/conveyor2.dm | 57 +++ code/modules/research/circuitprinter.dm | 2 +- code/modules/research/destructive_analyzer.dm | 3 +- code/modules/research/protolathe.dm | 3 +- code/modules/research/server.dm | 2 +- .../xenoarchaeology/artifact/artifact.dm | 7 +- .../machinery/artifact_analyser.dm | 4 +- .../xenoarchaeology/master_controller.dm | 5 +- .../security levels/keycard authentication.dm | 19 + code/modules/surgery/other.dm | 4 +- html/changelogs/Datraen-PBAPCCheck.yml | 6 + html/changelogs/Datraen-SpawnTurf.yml | 6 + icons/mob/items/lefthand.dmi | Bin 120052 -> 120449 bytes icons/mob/items/righthand.dmi | Bin 121554 -> 121848 bytes icons/obj/monitors.dmi | Bin 43502 -> 42104 bytes icons/obj/radio.dmi | Bin 16286 -> 17416 bytes icons/obj/stock_parts.dmi | Bin 10608 -> 68894 bytes icons/obj/vending.dmi | Bin 69633 -> 68171 bytes icons/obj/watercloset.dmi | Bin 14351 -> 14431 bytes maps/polaris-1.dmm | 42 +- maps/polaris-2.dmm | 4 +- maps/polaris-3.dmm | 12 +- maps/polaris-4.dmm | 2 +- maps/polaris-5.dmm | 2 +- polaris.dme | 5 +- 154 files changed, 2223 insertions(+), 926 deletions(-) create mode 100644 code/game/machinery/frame.dm create mode 100644 code/game/objects/items/weapons/circuitboards/frame.dm create mode 100644 code/modules/mob/living/inventory.dm create mode 100644 html/changelogs/Datraen-PBAPCCheck.yml create mode 100644 html/changelogs/Datraen-SpawnTurf.yml diff --git a/code/ATMOSPHERICS/components/unary/cold_sink.dm b/code/ATMOSPHERICS/components/unary/cold_sink.dm index 9fcdad8613..faefa64883 100644 --- a/code/ATMOSPHERICS/components/unary/cold_sink.dm +++ b/code/ATMOSPHERICS/components/unary/cold_sink.dm @@ -10,6 +10,7 @@ anchored = 1 use_power = 0 idle_power_usage = 5 // 5 Watts for thermostat related circuitry + circuit = /obj/item/weapon/circuitboard/unary_atmos/cooler var/heatsink_temperature = T20C // The constant temperature reservoir into which the freezer pumps heat. Probably the hull of the station or something. var/internal_volume = 600 // L @@ -24,7 +25,6 @@ ..() initialize_directions = dir component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/unary_atmos/cooler(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/capacitor(src) component_parts += new /obj/item/weapon/stock_parts/capacitor(src) diff --git a/code/ATMOSPHERICS/components/unary/heat_source.dm b/code/ATMOSPHERICS/components/unary/heat_source.dm index e139f6faf3..aa51d9669f 100644 --- a/code/ATMOSPHERICS/components/unary/heat_source.dm +++ b/code/ATMOSPHERICS/components/unary/heat_source.dm @@ -10,6 +10,7 @@ anchored = 1 use_power = 0 idle_power_usage = 5 //5 Watts for thermostat related circuitry + circuit = /obj/item/weapon/circuitboard/unary_atmos/heater var/max_temperature = T20C + 680 var/internal_volume = 600 //L @@ -25,7 +26,6 @@ initialize_directions = dir component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/unary_atmos/heater(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/capacitor(src) component_parts += new /obj/item/weapon/stock_parts/capacitor(src) diff --git a/code/ZAS/Fire.dm b/code/ZAS/Fire.dm index 7222470f71..bb4ec95a84 100644 --- a/code/ZAS/Fire.dm +++ b/code/ZAS/Fire.dm @@ -406,7 +406,7 @@ datum/gas_mixture/proc/check_recombustability(list/fuel_objs) //Get heat transfer coefficients for clothing. for(var/obj/item/clothing/C in src) - if(l_hand == C || r_hand == C) + if(item_is_in_hands(C)) continue if( C.max_heat_protection_temperature >= last_temperature ) diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index 9fa5fa3654..7d7468b91a 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -94,10 +94,7 @@ if(W == A) // Handle attack_self W.attack_self(src) - if(hand) - update_inv_l_hand(0) - else - update_inv_r_hand(0) + update_inv_active_hand(0) return 1 //Atoms on your person diff --git a/code/_onclick/hud/human.dm b/code/_onclick/hud/human.dm index 751021892c..63ef549122 100644 --- a/code/_onclick/hud/human.dm +++ b/code/_onclick/hud/human.dm @@ -162,7 +162,7 @@ inv_box.name = "r_hand" inv_box.icon = ui_style inv_box.icon_state = "r_hand_inactive" - if(mymob && !mymob.hand) //This being 0 or null means the right hand is in use + if(!target.hand) //This being 0 or null means the right hand is in use inv_box.icon_state = "r_hand_active" inv_box.screen_loc = ui_rhand inv_box.slot_id = slot_r_hand @@ -177,7 +177,7 @@ inv_box.name = "l_hand" inv_box.icon = ui_style inv_box.icon_state = "l_hand_inactive" - if(mymob && mymob.hand) //This being 1 means the left hand is in use + if(target.hand) //This being 1 means the left hand is in use inv_box.icon_state = "l_hand_active" inv_box.screen_loc = ui_lhand inv_box.slot_id = slot_l_hand diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 1bf774c850..c4f43411fb 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -1001,7 +1001,7 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee containername = "Security barrier crate" group = "Security" -/datum/supply_packs/securitybarriers +/datum/supply_packs/securityshieldgen name = "Wall shield Generators" contains = list(/obj/machinery/shieldwallgen, /obj/machinery/shieldwallgen, @@ -1729,7 +1729,8 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/device/camera_film, /obj/item/device/camera_film, /obj/item/weapon/storage/photo_album, - /obj/item/device/reagent_scanner) + /obj/item/device/reagent_scanner, + /obj/item/device/flashlight/maglight) cost = 35 containertype = "/obj/structure/closet/crate/secure" containername = "Forensic equipment" @@ -1785,7 +1786,8 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/clothing/accessory/storage/black_vest, /obj/item/clothing/head/soft/sec/corp, /obj/item/clothing/under/rank/security/corp, - /obj/item/weapon/gun/energy/taser) + /obj/item/weapon/gun/energy/taser, + /obj/item/device/flashlight/maglight) cost = 30 containertype = "/obj/structure/closet/crate/secure" containername = "Officer equipment" @@ -1811,7 +1813,8 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/weapon/reagent_containers/spray/pepper, /obj/item/weapon/melee/baton/loaded, /obj/item/weapon/storage/box/holobadge, - /obj/item/clothing/head/beret/sec/corporate/warden) + /obj/item/clothing/head/beret/sec/corporate/warden, + /obj/item/device/flashlight/maglight) cost = 45 containertype = "/obj/structure/closet/crate/secure" containername = "Warden equipment" @@ -1835,7 +1838,8 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/clothing/accessory/holster/waist, /obj/item/weapon/melee/telebaton, /obj/item/weapon/shield/riot/tele, - /obj/item/clothing/head/beret/sec/corporate/hos) + /obj/item/clothing/head/beret/sec/corporate/hos, + /obj/item/device/flashlight/maglight) cost = 65 containertype = "/obj/structure/closet/crate/secure" containername = "Head of security equipment" diff --git a/code/datums/wires/alarm.dm b/code/datums/wires/alarm.dm index c34b0291fb..ace1ba9ec3 100644 --- a/code/datums/wires/alarm.dm +++ b/code/datums/wires/alarm.dm @@ -11,7 +11,7 @@ var/const/AALARM_WIRE_AALARM = 16 /datum/wires/alarm/CanUse(var/mob/living/L) var/obj/machinery/alarm/A = holder - if(A.wiresexposed && A.buildstage == 2) + if(A.wiresexposed) return 1 return 0 diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 83033257e3..a366dc9846 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -599,3 +599,29 @@ icon = 'icons/obj/stock_parts.dmi' icon_state = "smes_coil" origin_tech = list(TECH_MATERIAL = 19, TECH_ENGINEERING = 19, TECH_PHORON = 19, TECH_POWER = 19, TECH_BLUESPACE = 19, TECH_BIO = 19, TECH_COMBAT = 19, TECH_MAGNET = 19, TECH_DATA = 19, TECH_ILLEGAL = 19, TECH_ARCANE = 19) + +// Additional construction stock parts + +/obj/item/weapon/stock_parts/gear + name = "gear" + desc = "A gear used for construction." + icon = 'icons/obj/stock_parts.dmi' + icon_state = "gear" + origin_tech = list(TECH_ENGINEERING = 1) + matter = list(DEFAULT_WALL_MATERIAL = 50) + +/obj/item/weapon/stock_parts/motor + name = "motor" + desc = "A motor used for construction." + icon = 'icons/obj/stock_parts.dmi' + icon_state = "motor" + origin_tech = list(TECH_ENGINEERING = 1) + matter = list(DEFAULT_WALL_MATERIAL = 60, "glass" = 10) + +/obj/item/weapon/stock_parts/spring + name = "spring" + desc = "A spring used for construction." + icon = 'icons/obj/stock_parts.dmi' + icon_state = "spring" + origin_tech = list(TECH_ENGINEERING = 1) + matter = list(DEFAULT_WALL_MATERIAL = 40) \ No newline at end of file diff --git a/code/game/antagonist/antagonist_create.dm b/code/game/antagonist/antagonist_create.dm index 072dd88bee..65c7a080cd 100644 --- a/code/game/antagonist/antagonist_create.dm +++ b/code/game/antagonist/antagonist_create.dm @@ -76,7 +76,7 @@ P.info = "The nuclear authorization code is: [code]" P.name = "nuclear bomb code" if(leader && leader.current) - if(get_turf(P) == get_turf(leader.current) && !(leader.current.l_hand && leader.current.r_hand)) + if(get_turf(P) == get_turf(leader.current)) leader.current.put_in_hands(P) if(!code_owner && leader) diff --git a/code/game/antagonist/station/renegade.dm b/code/game/antagonist/station/renegade.dm index cd9dd9b83b..b077977fd7 100644 --- a/code/game/antagonist/station/renegade.dm +++ b/code/game/antagonist/station/renegade.dm @@ -50,8 +50,7 @@ var/datum/antagonist/renegade/renegades var/gun_type = pick(spawn_guns) var/obj/item/gun = new gun_type(get_turf(player)) - if(!(player.l_hand && player.r_hand)) - player.put_in_hands(gun) + player.put_in_hands(gun) /proc/rightandwrong() diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index 07b3dcacc5..81f0da074d 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -292,12 +292,14 @@ var/list/mob/living/forced_ambiance_list = new mob << "The sudden appearance of gravity makes you fall to the floor!" /area/proc/prison_break() - for(var/obj/machinery/power/apc/temp_apc in src) - temp_apc.overload_lighting(70) - for(var/obj/machinery/door/airlock/temp_airlock in src) - temp_airlock.prison_open() - for(var/obj/machinery/door/window/temp_windoor in src) - temp_windoor.open() + var/obj/machinery/power/apc/theAPC = get_apc() + if(theAPC.operating) + for(var/obj/machinery/power/apc/temp_apc in src) + temp_apc.overload_lighting(70) + for(var/obj/machinery/door/airlock/temp_airlock in src) + temp_airlock.prison_open() + for(var/obj/machinery/door/window/temp_windoor in src) + temp_windoor.open() /area/proc/has_gravity() return has_gravity diff --git a/code/game/dna/dna_modifier.dm b/code/game/dna/dna_modifier.dm index b37342ced5..3138c65439 100644 --- a/code/game/dna/dna_modifier.dm +++ b/code/game/dna/dna_modifier.dm @@ -47,6 +47,7 @@ idle_power_usage = 50 active_power_usage = 300 interact_offline = 1 + circuit = /obj/item/weapon/circuitboard/clonescanner var/locked = 0 var/mob/living/carbon/occupant = null var/obj/item/weapon/reagent_containers/glass/beaker = null @@ -55,7 +56,6 @@ /obj/machinery/dna_scannernew/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/clonescanner(src) component_parts += new /obj/item/weapon/stock_parts/scanning_module(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) component_parts += new /obj/item/weapon/stock_parts/micro_laser(src) diff --git a/code/game/gamemodes/changeling/generic_equip_procs.dm b/code/game/gamemodes/changeling/generic_equip_procs.dm index 5569db8512..930e50c9c8 100644 --- a/code/game/gamemodes/changeling/generic_equip_procs.dm +++ b/code/game/gamemodes/changeling/generic_equip_procs.dm @@ -244,7 +244,7 @@ var/mob/living/carbon/human/M = src - if(M.l_hand && M.r_hand) //Make sure our hands aren't full. + if(M.hands_are_full()) //Make sure our hands aren't full. src << "Our hands are full. Drop something first." return 0 diff --git a/code/game/gamemodes/changeling/powers/armblade.dm b/code/game/gamemodes/changeling/powers/armblade.dm index c5441d90ee..92b86ce2ee 100644 --- a/code/game/gamemodes/changeling/powers/armblade.dm +++ b/code/game/gamemodes/changeling/powers/armblade.dm @@ -68,7 +68,7 @@ ..() /obj/item/weapon/melee/arm_blade/process() //Stolen from ninja swords. - if(!creator || loc != creator || (creator.l_hand != src && creator.r_hand != src)) + if(!creator || loc != creator || !creator.item_is_in_hands(src)) // Tidy up a bit. if(istype(loc,/mob/living)) var/mob/living/carbon/human/host = loc diff --git a/code/game/machinery/alarm.dm b/code/game/machinery/alarm.dm index d3603fe96e..699898fde0 100644 --- a/code/game/machinery/alarm.dm +++ b/code/game/machinery/alarm.dm @@ -54,6 +54,7 @@ var/wiresexposed = 0 // If it's been screwdrivered open. var/aidisabled = 0 var/shorted = 0 + circuit = /obj/item/weapon/circuitboard/airalarm var/datum/wires/alarm/wires @@ -61,7 +62,6 @@ var/screen = AALARM_SCREEN_MAIN var/area_uid var/area/alarm_area - var/buildstage = 2 //2 is built, 1 is building, 0 is frame. var/target_temperature = T0C+20 var/regulating_temperature = 0 @@ -105,23 +105,8 @@ wires = null return ..() -/obj/machinery/alarm/New(var/loc, var/dir, var/building = 0) +/obj/machinery/alarm/New() ..() - - if(building) - if(loc) - src.loc = loc - - if(dir) - src.set_dir(dir) - - buildstage = 0 - wiresexposed = 1 - pixel_x = (dir & 3)? 0 : (dir == 4 ? -24 : 24) - pixel_y = (dir & 3)? (dir ==1 ? -24 : 24) : 0 - update_icon() - return - first_run() /obj/machinery/alarm/proc/first_run() @@ -148,7 +133,7 @@ elect_master() /obj/machinery/alarm/process() - if((stat & (NOPOWER|BROKEN)) || shorted || buildstage != 2) + if((stat & (NOPOWER|BROKEN)) || shorted) return var/turf/simulated/location = loc @@ -605,9 +590,6 @@ data["thresholds"] = thresholds /obj/machinery/alarm/CanUseTopic(var/mob/user, var/datum/topic_state/state, var/href_list = list()) - if(buildstage != 2) - return STATUS_CLOSE - if(aidisabled && isAI(user)) user << "AI control for \the [src] interface has been disabled." return STATUS_CLOSE @@ -763,73 +745,43 @@ /obj/machinery/alarm/attackby(obj/item/W as obj, mob/user as mob) src.add_fingerprint(user) + if(istype(W, /obj/item/weapon/screwdriver)) // Opening that Air Alarm up. + //user << "You pop the Air Alarm's maintence panel open." + wiresexposed = !wiresexposed + user << "The wires have been [wiresexposed ? "exposed" : "unexposed"]" + update_icon() + return - switch(buildstage) - if(2) - if(istype(W, /obj/item/weapon/screwdriver)) // Opening that Air Alarm up. - //user << "You pop the Air Alarm's maintence panel open." - wiresexposed = !wiresexposed - user << "The wires have been [wiresexposed ? "exposed" : "unexposed"]" - update_icon() - return + if (wiresexposed && istype(W, /obj/item/weapon/wirecutters)) + user.visible_message("[user] has cut the wires inside \the [src]!", "You have cut the wires inside \the [src].") + playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + new/obj/item/stack/cable_coil(get_turf(src), 5) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.frame_type = "airalarm" + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.set_dir(dir) + A.circuit = M + A.anchored = 1 + for (var/obj/C in src) + C.forceMove(loc) + A.state = 2 + A.icon_state = "airalarm_2" + M.deconstruct(src) + qdel(src) + return - if (wiresexposed && istype(W, /obj/item/weapon/wirecutters)) - user.visible_message("[user] has cut the wires inside \the [src]!", "You have cut the wires inside \the [src].") - playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) - new/obj/item/stack/cable_coil(get_turf(src), 5) - buildstage = 1 - update_icon() - return - - if (istype(W, /obj/item/weapon/card/id) || istype(W, /obj/item/device/pda))// trying to unlock the interface with an ID card - if(stat & (NOPOWER|BROKEN)) - user << "It does nothing" - return - else - if(allowed(usr) && !wires.IsIndexCut(AALARM_WIRE_IDSCAN)) - locked = !locked - user << "You [ locked ? "lock" : "unlock"] the Air Alarm interface." - else - user << "Access denied." + if (istype(W, /obj/item/weapon/card/id) || istype(W, /obj/item/device/pda))// trying to unlock the interface with an ID card + if(stat & (NOPOWER|BROKEN)) + user << "It does nothing" return - - if(1) - if(istype(W, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/C = W - if (C.use(5)) - user << "You wire \the [src]." - buildstage = 2 - update_icon() - first_run() - return - else - user << "You need 5 pieces of cable to do wire \the [src]." - return - - else if(istype(W, /obj/item/weapon/crowbar)) - user << "You start prying out the circuit." - playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) - if(do_after(user,20)) - user << "You pry out the circuit!" - var/obj/item/weapon/airalarm_electronics/circuit = new /obj/item/weapon/airalarm_electronics() - circuit.loc = user.loc - buildstage = 0 - update_icon() - return - if(0) - if(istype(W, /obj/item/weapon/airalarm_electronics)) - user << "You insert the circuit!" - qdel(W) - buildstage = 1 - update_icon() - return - - else if(istype(W, /obj/item/weapon/wrench)) - user << "You remove the fire alarm assembly from the wall!" - new /obj/item/frame/air_alarm(get_turf(user)) - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - qdel(src) - + else + if(allowed(usr) && !wires.IsIndexCut(AALARM_WIRE_IDSCAN)) + locked = !locked + user << "You [ locked ? "lock" : "unlock"] the Air Alarm interface." + else + user << "Access denied." return ..() /obj/machinery/alarm/power_change() @@ -839,14 +791,10 @@ /obj/machinery/alarm/examine(mob/user) ..(user) - if (buildstage < 2) - user << "It is not wired." - if (buildstage < 1) - user << "The circuit is missing." /* AIR ALARM CIRCUIT Just a object used in constructing air alarms -*/ + /obj/item/weapon/airalarm_electronics name = "air alarm electronics" icon = 'icons/obj/doors/door_assembly.dmi' @@ -854,7 +802,7 @@ Just a object used in constructing air alarms desc = "Looks like a circuit. Probably is." w_class = 2.0 matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) - +*/ /* FIRE ALARM */ @@ -875,20 +823,13 @@ FIRE ALARM power_channel = ENVIRON var/last_process = 0 var/wiresexposed = 0 - var/buildstage = 2 // 2 = complete, 1 = no wires, 0 = circuit gone var/seclevel + circuit = /obj/item/weapon/circuitboard/firealarm /obj/machinery/firealarm/update_icon() overlays.Cut() if(wiresexposed) - switch(buildstage) - if(2) - icon_state="fire_b2" - if(1) - icon_state="fire_b1" - if(0) - icon_state="fire_b0" set_light(0) return @@ -932,56 +873,36 @@ FIRE ALARM /obj/machinery/firealarm/attackby(obj/item/W as obj, mob/user as mob) src.add_fingerprint(user) - if (istype(W, /obj/item/weapon/screwdriver) && buildstage == 2) + if (istype(W, /obj/item/weapon/screwdriver)) wiresexposed = !wiresexposed update_icon() return if(wiresexposed) - switch(buildstage) - if(2) - if (istype(W, /obj/item/device/multitool)) - src.detecting = !( src.detecting ) - if (src.detecting) - user.visible_message("\The [user] has reconnected [src]'s detecting unit!", "You have reconnected [src]'s detecting unit.") - else - user.visible_message("\The [user] has disconnected [src]'s detecting unit!", "You have disconnected [src]'s detecting unit.") - else if (istype(W, /obj/item/weapon/wirecutters)) - user.visible_message("\The [user] has cut the wires inside \the [src]!", "You have cut the wires inside \the [src].") - new/obj/item/stack/cable_coil(get_turf(src), 5) - playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) - buildstage = 1 - update_icon() - if(1) - if(istype(W, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/C = W - if (C.use(5)) - user << "You wire \the [src]." - buildstage = 2 - return - else - user << "You need 5 pieces of cable to wire \the [src]." - return - else if(istype(W, /obj/item/weapon/crowbar)) - user << "You pry out the circuit!" - playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) - spawn(20) - var/obj/item/weapon/firealarm_electronics/circuit = new /obj/item/weapon/firealarm_electronics() - circuit.loc = user.loc - buildstage = 0 - update_icon() - if(0) - if(istype(W, /obj/item/weapon/firealarm_electronics)) - user << "You insert the circuit!" - qdel(W) - buildstage = 1 - update_icon() - - else if(istype(W, /obj/item/weapon/wrench)) - user << "You remove the fire alarm assembly from the wall!" - new /obj/item/frame/fire_alarm(get_turf(user)) - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - qdel(src) + if (istype(W, /obj/item/device/multitool)) + src.detecting = !( src.detecting ) + if (src.detecting) + user.visible_message("\The [user] has reconnected [src]'s detecting unit!", "You have reconnected [src]'s detecting unit.") + else + user.visible_message("\The [user] has disconnected [src]'s detecting unit!", "You have disconnected [src]'s detecting unit.") + else if (istype(W, /obj/item/weapon/wirecutters)) + user.visible_message("\The [user] has cut the wires inside \the [src]!", "You have cut the wires inside \the [src].") + new/obj/item/stack/cable_coil(get_turf(src), 5) + playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.frame_type = "firealarm" + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.set_dir(dir) + A.circuit = M + A.anchored = 1 + for (var/obj/C in src) + C.forceMove(loc) + A.state = 2 + A.icon_state = "firealarm_2" + M.deconstruct(src) + qdel(src) return src.alarm() @@ -1016,9 +937,6 @@ FIRE ALARM if(user.stat || stat & (NOPOWER|BROKEN)) return - if (buildstage != 2) - return - user.set_machine(src) var/area/A = src.loc var/d1 @@ -1061,9 +979,6 @@ FIRE ALARM if (usr.stat || stat & (BROKEN|NOPOWER)) return - if (buildstage != 2) - return - if ((usr.contents.Find(src) || ((get_dist(src, usr) <= 1) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon))) usr.set_machine(src) if (href_list["reset"]) @@ -1106,23 +1021,6 @@ FIRE ALARM //playsound(src.loc, 'sound/ambience/signal.ogg', 75, 0) return - - -/obj/machinery/firealarm/New(loc, dir, building) - ..() - - if(loc) - src.loc = loc - - if(dir) - src.set_dir(dir) - - if(building) - buildstage = 0 - wiresexposed = 1 - pixel_x = (dir & 3)? 0 : (dir == 4 ? -24 : 24) - pixel_y = (dir & 3)? (dir ==1 ? -24 : 24) : 0 - /obj/machinery/firealarm/proc/set_security_level(var/newlevel) if(seclevel != newlevel) seclevel = newlevel @@ -1135,7 +1033,7 @@ FIRE ALARM /* FIRE ALARM CIRCUIT Just a object used in constructing fire alarms -*/ + /obj/item/weapon/firealarm_electronics name = "fire alarm electronics" icon = 'icons/obj/doors/door_assembly.dmi' @@ -1143,7 +1041,7 @@ Just a object used in constructing fire alarms desc = "A circuit. It has a label on it, it says \"Can handle heat levels up to 40 degrees celsius!\"" w_class = 2.0 matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) - +*/ /obj/machinery/partyalarm name = "\improper PARTY BUTTON" desc = "Cuban Pete is in the house!" diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 972d9a717b..14512fb839 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -7,7 +7,7 @@ use_power = 1 idle_power_usage = 10 active_power_usage = 2000 - + circuit = /obj/item/weapon/circuitboard/autolathe var/list/machine_recipes var/list/stored_material = list(DEFAULT_WALL_MATERIAL = 0, "glass" = 0) var/list/storage_capacity = list(DEFAULT_WALL_MATERIAL = 0, "glass" = 0) @@ -30,14 +30,13 @@ wires = new(src) //Create parts for lathe. component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/autolathe(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) component_parts += new /obj/item/weapon/stock_parts/console_screen(src) RefreshParts() - + /obj/machinery/autolathe/Destroy() qdel(wires) wires = null diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index 8c4c244799..244b74f17f 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -158,12 +158,12 @@ /datum/autolathe/recipe/airalarm name = "air alarm electronics" - path = /obj/item/weapon/airalarm_electronics + path = /obj/item/weapon/circuitboard/airalarm category = "Engineering" /datum/autolathe/recipe/firealarm name = "fire alarm electronics" - path = /obj/item/weapon/firealarm_electronics + path = /obj/item/weapon/circuitboard/firealarm category = "Engineering" /datum/autolathe/recipe/powermodule @@ -171,6 +171,96 @@ path = /obj/item/weapon/module/power_control category = "Engineering" +/datum/autolathe/recipe/statusdisplay + name = "status display electronics" + path = /obj/item/weapon/circuitboard/status_display + category = "Engineering" + +/datum/autolathe/recipe/aistatusdisplay + name = "ai status display electronics" + path = /obj/item/weapon/circuitboard/ai_status_display + category = "Engineering" + +/datum/autolathe/recipe/newscaster + name = "newscaster electronics" + path = /obj/item/weapon/circuitboard/newscaster + category = "Engineering" + +/datum/autolathe/recipe/atm + name = "atm electronics" + path = /obj/item/weapon/circuitboard/atm + category = "Engineering" + +/datum/autolathe/recipe/intercom + name = "intercom electronics" + path = /obj/item/weapon/circuitboard/intercom + category = "Engineering" + +/datum/autolathe/recipe/holopad + name = "holopad electronics" + path = /obj/item/weapon/circuitboard/holopad + category = "Engineering" + +/datum/autolathe/recipe/guestpass + name = "guestpass console electronics" + path = /obj/item/weapon/circuitboard/guestpass + category = "Engineering" + +/datum/autolathe/recipe/entertainment + name = "entertainment camera electronics" + path = /obj/item/weapon/circuitboard/security/telescreen/entertainment + category = "Engineering" + +/datum/autolathe/recipe/keycard + name = "keycard authenticator electronics" + path = /obj/item/weapon/circuitboard/keycard_auth + category = "Engineering" + +/datum/autolathe/recipe/photocopier + name = "photocopier electronics" + path = /obj/item/weapon/circuitboard/photocopier + category = "Engineering" + +/datum/autolathe/recipe/fax + name = "fax machine electronics" + path = /obj/item/weapon/circuitboard/fax + category = "Engineering" + +/datum/autolathe/recipe/conveyor + name = "conveyor electronics" + path = /obj/item/weapon/circuitboard/conveyor + category = "Engineering" + +/datum/autolathe/recipe/microwave + name = "microwave electronics" + path = /obj/item/weapon/circuitboard/microwave + category = "Engineering" + +/datum/autolathe/recipe/vending + name = "vending machine electronics" + path = /obj/item/weapon/circuitboard/vending + category = "Engineering" + +/datum/autolathe/recipe/washing + name = "washing machine electronics" + path = /obj/item/weapon/circuitboard/washing + category = "Engineering" + +/datum/autolathe/recipe/motor + name = "motor" + path = /obj/item/weapon/stock_parts/motor + category = "Engineering" + +/datum/autolathe/recipe/gear + name = "gear" + path = /obj/item/weapon/stock_parts/gear + category = "Engineering" + +/datum/autolathe/recipe/spring + name = "spring" + path = /obj/item/weapon/stock_parts/spring + category = "Engineering" + /datum/autolathe/recipe/rcd_ammo name = "matter cartridge" path = /obj/item/weapon/rcd_ammo diff --git a/code/game/machinery/biogenerator.dm b/code/game/machinery/biogenerator.dm index 61ed92d58e..f2500f0afa 100644 --- a/code/game/machinery/biogenerator.dm +++ b/code/game/machinery/biogenerator.dm @@ -5,6 +5,7 @@ icon_state = "biogen-stand" density = 1 anchored = 1 + circuit = /obj/item/weapon/circuitboard/biogenerator use_power = 1 idle_power_usage = 40 var/processing = 0 @@ -23,7 +24,6 @@ beaker = new /obj/item/weapon/reagent_containers/glass/bottle(src) component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/biogenerator(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index a06b22927d..3f7a8d600c 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -30,6 +30,7 @@ desc = "An electronically-lockable pod for growing organic tissue." density = 1 anchored = 1 + circuit = /obj/item/weapon/circuitboard/clonepod icon = 'icons/obj/cloning.dmi' icon_state = "pod_0" req_access = list(access_genetics) //For premature unlocking. @@ -47,7 +48,6 @@ /obj/machinery/clonepod/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/clonepod(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) component_parts += new /obj/item/weapon/stock_parts/scanning_module(src) diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index e7f92e0237..4b64cbadce 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -215,7 +215,8 @@ icon_screen = "entertainment" light_color = "#FFEEDB" light_range_on = 2 - circuit = null + network = list(NETWORK_THUNDER) + circuit = /obj/item/weapon/circuitboard/security/telescreen/entertainment /obj/machinery/computer/security/wooden_tv name = "security camera monitor" desc = "An old TV hooked into the stations camera network." diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm index d9d5f4707b..6f380739cc 100644 --- a/code/game/machinery/computer/computer.dm +++ b/code/game/machinery/computer/computer.dm @@ -7,7 +7,7 @@ use_power = 1 idle_power_usage = 300 active_power_usage = 300 - var/circuit = null //The path to the circuit board type. If circuit==null, the computer can't be disassembled. + frame_type = "computer" var/processing = 0 var/icon_keyboard = "generic_key" @@ -98,23 +98,28 @@ /obj/machinery/computer/attackby(I as obj, user as mob) if(istype(I, /obj/item/weapon/screwdriver) && circuit) + user << "You start disconnecting the monitor." playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) if(do_after(user, 20)) - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) var/obj/item/weapon/circuitboard/M = new circuit( A ) A.circuit = M A.anchored = 1 + A.density = 1 + A.frame_type = M.board_type for (var/obj/C in src) - C.loc = src.loc + C.forceMove(loc) if (src.stat & BROKEN) user << "The broken glass falls out." new /obj/item/weapon/material/shard( src.loc ) A.state = 3 - A.icon_state = "3" + A.icon_state = "[A.frame_type]_3" else user << "You disconnect the monitor." A.state = 4 - A.icon_state = "4" + A.icon_state = "[A.frame_type]_4" + A.pixel_x = pixel_x + A.pixel_y = pixel_y M.deconstruct(src) qdel(src) else diff --git a/code/game/machinery/computer/guestpass.dm b/code/game/machinery/computer/guestpass.dm index ccbce91b61..648df34dc0 100644 --- a/code/game/machinery/computer/guestpass.dm +++ b/code/game/machinery/computer/guestpass.dm @@ -46,6 +46,7 @@ icon_keyboard = null icon_screen = "pass" density = 0 + circuit = /obj/item/weapon/circuitboard/guestpass var/obj/item/weapon/card/id/giver var/list/accesses = list() @@ -60,11 +61,30 @@ ..() uid = "[rand(100,999)]-G[rand(10,99)]" -/obj/machinery/computer/guestpass/attackby(obj/O, mob/user) - if(istype(O, /obj/item/weapon/card/id)) - if(!giver && user.unEquip(O)) - O.loc = src - giver = O +/obj/machinery/computer/guestpass/attackby(obj/I, mob/user) + if(istype(I, /obj/item/weapon/screwdriver) && circuit) + user << "You start disconnecting the monitor." + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + if(do_after(user, 20)) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.frame_type = "guestpass" + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.circuit = M + A.anchored = 1 + for (var/obj/C in src) + C.forceMove(loc) + user << "You disconnect the monitor." + A.state = 4 + A.icon_state = "guestpass_4" + M.deconstruct(src) + qdel(src) + return + if(istype(I, /obj/item/weapon/card/id)) + if(!giver && user.unEquip(I)) + I.loc = src + giver = I updateUsrDialog() else if(giver) user << "There is already ID card inside." diff --git a/code/game/machinery/computer/prisonshuttle.dm b/code/game/machinery/computer/prisonshuttle.dm index c2c4598706..1c54fb0f4c 100644 --- a/code/game/machinery/computer/prisonshuttle.dm +++ b/code/game/machinery/computer/prisonshuttle.dm @@ -26,32 +26,6 @@ var/prison_shuttle_timeleft = 0 attack_ai(var/mob/user as mob) return src.attack_hand(user) - attackby(I as obj, user as mob) - if(istype(I, /obj/item/weapon/screwdriver)) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) - if(do_after(user, 20)) - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - var/obj/item/weapon/circuitboard/prison_shuttle/M = new /obj/item/weapon/circuitboard/prison_shuttle( A ) - for (var/obj/C in src) - C.loc = src.loc - A.circuit = M - A.anchored = 1 - - if (src.stat & BROKEN) - user << "The broken glass falls out." - new /obj/item/weapon/material/shard( src.loc ) - A.state = 3 - A.icon_state = "3" - else - user << "You disconnect the monitor." - A.state = 4 - A.icon_state = "4" - - qdel(src) - else - return src.attack_hand(user) - - attack_hand(var/mob/user as mob) if(!src.allowed(user) && (!hacked)) user << "Access Denied." diff --git a/code/game/machinery/computer3/computer.dm b/code/game/machinery/computer3/computer.dm index 37d9a67d92..e0040a6d83 100644 --- a/code/game/machinery/computer3/computer.dm +++ b/code/game/machinery/computer3/computer.dm @@ -29,7 +29,7 @@ // when you had to search the list to find what you had. // Mostly decorative, holds the OS rom - var/obj/item/part/computer/circuitboard/circuit + var/obj/item/part/computer/circuitboard/circuitb // Storage var/obj/item/part/computer/storage/hdd/hdd = null @@ -97,11 +97,11 @@ overlays += kb if(!built) - if(!circuit || !istype(circuit)) - circuit = new(src) - if(circuit.OS) - os = circuit.OS - circuit.OS.computer = src + if(!circuitb || !istype(circuitb)) + circuitb = new(src) + if(circuitb.OS) + os = circuitb.OS + circuitb.OS.computer = src else os = null @@ -121,10 +121,10 @@ floppy.addfile(P) program = P else - circuit.OS = P - circuit.OS.computer = src - os = circuit.OS - circuit.name = "Circuitboard ([P])" + circuitb.OS = P + circuitb.OS.computer = src + os = circuitb.OS + circuitb.name = "Circuitboard ([P])" if(hdd) // Spawn files diff --git a/code/game/machinery/computer3/computers/camera.dm b/code/game/machinery/computer3/computers/camera.dm index 5a1b3acc0e..0f92519c36 100644 --- a/code/game/machinery/computer3/computers/camera.dm +++ b/code/game/machinery/computer3/computers/camera.dm @@ -26,7 +26,7 @@ New() ..(built=0) os = program - circuit.OS = os + circuitb.OS = os /obj/machinery/computer3/security/mining diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index 08d47db158..266aeb2f23 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -221,7 +221,7 @@ if (stat & BROKEN) new /obj/item/weapon/circuitboard/broken(src.loc) else - new/obj/item/weapon/airalarm_electronics(src.loc) + new/obj/item/weapon/circuitboard/airalarm(src.loc) var/obj/structure/firedoor_assembly/FA = new/obj/structure/firedoor_assembly(src.loc) FA.anchored = 1 diff --git a/code/game/machinery/doors/firedoor_assembly.dm b/code/game/machinery/doors/firedoor_assembly.dm index c01fff5bed..a96065d2c6 100644 --- a/code/game/machinery/doors/firedoor_assembly.dm +++ b/code/game/machinery/doors/firedoor_assembly.dm @@ -36,7 +36,7 @@ obj/structure/firedoor_assembly/attackby(C as obj, mob/user as mob) new/obj/item/stack/cable_coil(src.loc, 1) wired = 0 - else if(istype(C, /obj/item/weapon/airalarm_electronics) && wired) + else if(istype(C, /obj/item/weapon/circuitboard/airalarm) && wired) if(anchored) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) user.visible_message("[user] has inserted a circuit into \the [src]!", diff --git a/code/game/machinery/frame.dm b/code/game/machinery/frame.dm new file mode 100644 index 0000000000..35f0cf6af0 --- /dev/null +++ b/code/game/machinery/frame.dm @@ -0,0 +1,412 @@ +/obj/structure/frame + anchored = 0 + name = "frame" + icon = 'icons/obj/stock_parts.dmi' + icon_state = "machine_0" + var/state = 0 + var/obj/item/weapon/circuitboard/circuit = null + var/need_circuit = 1 + var/frame_type = "machine" + + var/list/components = null + var/list/req_components = null + var/list/req_component_names = null + + var/list/alarms = list("firealarm", "airalarm", "intercom", "keycard") + var/list/machines = list("machine", "photocopier", "fax", "microwave", "conveyor", "vending", "recharger", "wrecharger", "washing", "grinder") + var/list/computers = list("computer", "holopad") + var/list/displays = list("display", "guestpass", "newscaster", "atm") + var/list/no_circuit = list("wrecharger", "recharger", "grinder","conveyor") + +/obj/structure/frame/proc/update_desc() + var/D + if(req_components) + var/list/component_list = new + for(var/I in req_components) + if(req_components[I] > 0) + component_list += "[num2text(req_components[I])] [req_component_names[I]]" + D = "Requires [english_list(component_list)]." + desc = D + +/obj/structure/frame/proc/check_components(mob/user as mob) + components = list() + req_components = circuit.req_components.Copy() + for(var/A in circuit.req_components) + req_components[A] = circuit.req_components[A] + req_component_names = circuit.req_components.Copy() + for(var/A in req_components) + var/cp = text2path(A) + var/obj/ct = new cp() // have to quickly instantiate it get name + req_component_names[A] = ct.name + +/obj/structure/frame/New(var/loc, var/dir, var/building = 0, var/obj/item/frame/frame_type, mob/user as mob) + ..() + if(building) + src.frame_type = frame_type + icon_state = "[frame_type]_0" + + if(frame_type in alarms) + if(loc) + src.loc = loc + + state = 0 + if(frame_type == "airalarm" || frame_type == "firealarm" || frame_type == "keycard") + if(dir) + src.set_dir(dir) + pixel_x = (dir & 3)? 0 : (dir == 4 ? -24 : 24) + pixel_y = (dir & 3)? (dir == 1 ? -24 : 24) : 0 + + if(frame_type == "intercom") + if(dir) + src.set_dir(dir) + pixel_x = (dir & 3)? 0 : (dir == 4 ? -28 : 28) + pixel_y = (dir & 3)? (dir == 1 ? -28 : 28) : 0 + + update_icon() + return + + if(frame_type in displays) + if(loc) + src.loc = loc + + if(frame_type == "display" || frame_type == "atm") + pixel_x = (dir & 3)? 0 : (dir == 4 ? -32 : 32) + pixel_y = (dir & 3)? (dir == 1 ? -32 : 32) : 0 + + if(frame_type == "newscaster") + pixel_x = (dir & 3)? 0 : (dir == 4 ? -28 : 28) + pixel_y = (dir & 3)? (dir == 1 ? -30 : 30) : 0 + + if(frame_type == "guestpass") + pixel_x = (dir & 3)? 0 : (dir == 4 ? -30 : 30) + pixel_y = (dir & 3)? (dir == 1 ? -30 : 30) : 0 + + update_icon() + return + + if(frame_type in no_circuit) + need_circuit = 0 + if(frame_type == "wrecharger") + circuit = new /obj/item/weapon/circuitboard/recharger/wrecharger(src) + if(loc) + src.loc = loc + + state = 0 + + pixel_x = (dir & 3)? 0 : (dir == 4 ? -26 : 32) + pixel_y = (dir & 3)? (dir == 1 ? -32 : 32) : 0 + + update_icon() + return + if(frame_type == "recharger") + circuit = new /obj/item/weapon/circuitboard/recharger(src) + if(frame_type == "grinder") + circuit = new /obj/item/weapon/circuitboard/grinder(src) + if(frame_type == "conveyor") + circuit = new /obj/item/weapon/circuitboard/conveyor(src) + if(dir) + src.set_dir(dir) + + if(frame_type == "computer") + density = 1 + if(frame_type in machines) + density = 1 + return + +/obj/structure/frame/attackby(obj/item/P as obj, mob/user as mob) + if(istype(P, /obj/item/weapon/wrench)) + if(state == 0) + user << "You start to wrench the frame into place." + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 20)) + src.anchored = 1 + if(!need_circuit && circuit) + src.state = 2 + check_components() + update_desc() + src.icon_state = "[frame_type]_2" + user << "You wrench the frame into place and set the outer cover." + else + src.state = 1 + user << "You wrench the frame into place." + return + + if(state == 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 20)) + user << "You unfasten the frame." + src.anchored = 0 + src.state = 0 + return + + if(istype(P, /obj/item/weapon/weldingtool)) + if(state == 0) + var/obj/item/weapon/weldingtool/WT = P + if(!WT.remove_fuel(0, user)) + user << "The welding tool must be on to complete this task." + return + playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) + if(do_after(user, 20)) + if(!src || !WT.isOn()) return + user << "You deconstruct the frame." + if(frame_type == "holopad" || frame_type == "microwave") + new /obj/item/stack/material/steel( src.loc, 4 ) + else if(frame_type == "fax" || frame_type == "newscaster" || frame_type == "recharger" || frame_type == "wrecharger" || frame_type == "grinder") + new /obj/item/stack/material/steel( src.loc, 3 ) + else if(frame_type == "firealarm" || frame_type == "airalarm" || frame_type == "intercom" || frame_type == "guestpass") + new /obj/item/stack/material/steel( src.loc, 2 ) + else if(frame_type == "keycard") + new /obj/item/stack/material/steel( src.loc, 1 ) + else + new /obj/item/stack/material/steel( src.loc, 5 ) + qdel(src) + return + + if(istype(P, /obj/item/weapon/circuitboard) && need_circuit && !circuit) + if(state == 1) + var/obj/item/weapon/circuitboard/B = P + if(B.board_type == frame_type) + playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) + user << "You place the circuit board inside the frame." + src.icon_state = "[frame_type]_1" + src.circuit = P + user.drop_item() + P.loc = src + if(frame_type in machines) //because machines are assholes + check_components() + update_desc() + return + else + user << "This frame does not accept circuit boards of this type!" + return + + if(istype(P, /obj/item/weapon/screwdriver)) + if(state == 1) + if(need_circuit && circuit) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You screw the circuit board into place." + src.state = 2 + src.icon_state = "[frame_type]_2" + return + + if(state == 2) + if(need_circuit && circuit) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You unfasten the circuit board." + src.state = 1 + src.icon_state = "[frame_type]_1" + return + + if(!need_circuit && circuit) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You unfasten the outer cover." + src.state = 1 + src.icon_state = "[frame_type]_0" + return + + if(state == 3) + if(frame_type in machines) + var/component_check = 1 + for(var/R in req_components) + if(req_components[R] > 0) + component_check = 0 + break + if(component_check) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + var/obj/machinery/new_machine = new src.circuit.build_path(src.loc, src.dir) + if(!new_machine.component_parts) + for(var/obj/O in src.components) + O.forceMove(null) + new_machine.RefreshParts() + + src.circuit.construct(new_machine) + new_machine.pixel_x = src.pixel_x + new_machine.pixel_y = src.pixel_y + qdel(src) + return + + if(frame_type in alarms) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You fasten the cover." + var/obj/machinery/B = new src.circuit.build_path ( src.loc ) + B.pixel_x = src.pixel_x + B.pixel_y = src.pixel_y + B.set_dir(dir) + src.circuit.construct(B) + qdel(src) + return + + if(state == 4) + if(frame_type in computers) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You connect the monitor." + var/obj/machinery/B = new src.circuit.build_path ( src.loc ) + B.pixel_x = src.pixel_x + B.pixel_y = src.pixel_y + src.circuit.construct(B) + qdel(src) + return + + if(frame_type in displays) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You connect the monitor." + var/obj/machinery/B = new src.circuit.build_path ( src.loc ) + B.pixel_x = src.pixel_x + B.pixel_y = src.pixel_y + src.circuit.construct(B) + qdel(src) + return + + if(istype(P, /obj/item/weapon/crowbar)) + if(state == 1) + if(need_circuit && circuit) + playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + user << "You remove the circuit board." + src.state = 1 + src.icon_state = "[frame_type]_0" + circuit.loc = src.loc + src.circuit = null + if(frame_type in machines) //becuase machines are assholes + req_components = null + return + + if(state == 3) + if(frame_type in machines) + playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + if(components.len == 0) + user << "There are no components to remove." + else + user << "You remove the components." + for(var/obj/item/weapon/W in components) + W.forceMove(loc) + check_components() + update_desc() + user << desc + return + + if(state == 4) + if(frame_type in computers) + playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + user << "You remove the glass panel." + src.state = 3 + src.icon_state = "[frame_type]_3" + new /obj/item/stack/material/glass( src.loc, 2 ) + return + + if(frame_type in displays) + playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + user << "You remove the glass panel." + src.state = 3 + src.icon_state = "[frame_type]_3" + new /obj/item/stack/material/glass( src.loc, 2 ) + return + + if(istype(P, /obj/item/stack/cable_coil)) + if(state == 2) + var/obj/item/stack/cable_coil/C = P + if (C.get_amount() < 5) + user << "You need five coils of wire to add them to the frame." + return + user << "You start to add cables to the frame." + playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) + if(do_after(user, 20) && state == 2) + if (C.use(5)) + user << "You add cables to the frame." + state = 3 + icon_state = "[frame_type]_3" + if(frame_type in machines) + user << desc + return + + if(istype(P, /obj/item/weapon/wirecutters)) + if(state == 3) + if(frame_type in computers) + playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + user << "You remove the cables." + src.state = 2 + src.icon_state = "[frame_type]_2" + new /obj/item/stack/cable_coil( src.loc, 5 ) + return + + if(frame_type in displays) + playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + user << "You remove the cables." + src.state = 2 + src.icon_state = "[frame_type]_2" + new /obj/item/stack/cable_coil( src.loc, 5 ) + return + + if(frame_type in alarms) + playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + user << "You remove the cables." + src.state = 2 + src.icon_state = "[frame_type]_2" + new /obj/item/stack/cable_coil( src.loc, 5 ) + return + + if(frame_type in machines) + playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + user << "You remove the cables." + src.state = 2 + src.icon_state = "[frame_type]_2" + new /obj/item/stack/cable_coil( src.loc, 5 ) + return + + if(istype(P, /obj/item/stack/material) && P.get_material_name() == "glass") + if(state == 3) + if(frame_type in computers) + var/obj/item/stack/G = P + if (G.get_amount() < 2) + user << "You need two sheets of glass to put in the glass panel." + return + playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) + user << "You start to put in the glass panel." + if(do_after(user, 20) && state == 3) + if (G.use(2)) + user << "You put in the glass panel." + src.state = 4 + src.icon_state = "[frame_type]_4" + return + + if(frame_type in displays) + var/obj/item/stack/G = P + if (G.get_amount() < 2) + user << "You need two sheets of glass to put in the glass panel." + return + playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) + user << "You start to put in the glass panel." + if(do_after(user, 20) && state == 3) + if (G.use(2)) + user << "You put in the glass panel." + src.state = 4 + src.icon_state = "[frame_type]_4" + return + + if(istype(P, /obj/item)) + if(state == 3) + if(frame_type in machines) + for(var/I in req_components) + if(istype(P, text2path(I)) && (req_components[I] > 0)) + playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) + if(istype(P, /obj/item/stack)) + var/obj/item/stack/CP = P + if(CP.get_amount() > 1) + var/camt = min(CP.amount, req_components[I]) // amount of cable to take, idealy amount required, but limited by amount provided + var/obj/item/stack/CC = new /obj/item/stack(src) + CC.amount = camt + CC.update_icon() + CP.use(camt) + components += CC + req_components[I] -= camt + update_desc() + break + user.drop_item() + P.forceMove(src) + components += P + req_components[I]-- + update_desc() + break + user << desc + if(P && P.loc != src && !istype(P, /obj/item/stack/cable_coil) && !istype(P, /obj/item/stack/material)) + user << "You cannot add that component to the machine!" + return \ No newline at end of file diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm index d34acd5d2d..58c8423a23 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -36,6 +36,7 @@ var/const/HOLOPAD_MODE = RANGE_BASED desc = "It's a floor-mounted device for projecting holographic images. It is activated remotely." icon_state = "holopad0" show_messages = 1 + circuit = /obj/item/weapon/circuitboard/holopad layer = TURF_LAYER+0.1 //Preventing mice and drones from sneaking under them. @@ -47,6 +48,30 @@ var/const/HOLOPAD_MODE = RANGE_BASED var/last_request = 0 //to prevent request spam. ~Carn var/holo_range = 5 // Change to change how far the AI can move away from the holopad before deactivating. +/obj/machinery/hologram/holopad/attackby(obj/item/I as obj, user as mob) + if(istype(I, /obj/item/weapon/screwdriver) && circuit) + user << "You start removing the glass." + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + if(do_after(user, 20)) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.circuit = M + A.anchored = 1 + A.density = 1 + A.frame_type = "holopad" + for (var/obj/C in src) + C.forceMove(loc) + user << "You remove the glass." + A.state = 4 + A.icon_state = "holopad_4" + M.deconstruct(src) + for (var/mob/living/silicon/ai/master in masters) + clear_holo(master) + qdel(src) + else + src.attack_hand(user) + return + /obj/machinery/hologram/holopad/attack_hand(var/mob/living/carbon/human/user) //Carn: Hologram requests. if(!istype(user)) return diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index d2fa5478cb..1df586b809 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -62,6 +62,19 @@ user << "You attach \the [W] to \the [src]." src.update_icon() return + + if(istype(W, /obj/item/weapon/screwdriver)) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You start to dismantle the IV drip." + if(do_after(user, 15)) + user << "You dismantle the IV drip." + var/obj/item/stack/rods/A = new /obj/item/stack/rods( src.loc ) + A.amount = 6 + if(src.beaker) + src.beaker.loc = get_turf(src) + src.beaker = null + qdel(src) + return else return ..() diff --git a/code/game/machinery/kitchen/microwave.dm b/code/game/machinery/kitchen/microwave.dm index e78f2b5227..ace68645d8 100644 --- a/code/game/machinery/kitchen/microwave.dm +++ b/code/game/machinery/kitchen/microwave.dm @@ -10,6 +10,7 @@ idle_power_usage = 5 active_power_usage = 100 flags = OPENCONTAINER | NOREACT + circuit = /obj/item/weapon/circuitboard/microwave var/operating = 0 // Is it on? var/dirty = 0 // = {0..100} Does it need cleaning? var/broken = 0 // ={0,1,2} How broken is it??? @@ -29,6 +30,13 @@ ..() reagents = new/datum/reagents(100) reagents.my_atom = src + + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/console_screen(src) + component_parts += new /obj/item/weapon/stock_parts/motor(src) + component_parts += new /obj/item/weapon/stock_parts/capacitor(src) + RefreshParts() + if (!available_recipes) available_recipes = new for (var/type in (typesof(/datum/recipe)-/datum/recipe)) @@ -82,6 +90,11 @@ else user << "It's broken!" return 1 + else if(default_deconstruction_screwdriver(user, O)) + return + else if(default_deconstruction_crowbar(user, O)) + return + else if(src.dirty==100) // The microwave is all dirty so can't be used! if(istype(O, /obj/item/weapon/reagent_containers/spray/cleaner)) // If they're trying to clean it then let them user.visible_message( \ diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm index ded7ebc9b9..74f60a3a72 100644 --- a/code/game/machinery/lightswitch.dm +++ b/code/game/machinery/lightswitch.dm @@ -7,10 +7,12 @@ icon = 'icons/obj/power.dmi' icon_state = "light1" anchored = 1.0 + use_power = 1 + idle_power_usage = 10 + power_channel = LIGHT var/on = 1 var/area/area = null var/otherarea = null - // luminosity = 1 /obj/machinery/light_switch/New() ..() @@ -31,8 +33,12 @@ /obj/machinery/light_switch/proc/updateicon() if(stat & NOPOWER) icon_state = "light-p" + set_light(0) + layer = OBJ_LAYER else icon_state = "light[on]" + set_light(2, 1.5, on ? "#82FF4C" : "#F86060") + layer = LIGHTING_LAYER+0.1 /obj/machinery/light_switch/examine(mob/user) if(..(user, 1)) diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index 6c391b75b5..9ad2fd73eb 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -112,6 +112,8 @@ Class Procs: var/panel_open = 0 var/global/gl_uid = 1 var/interact_offline = 0 // Can the machine be interacted with while de-powered. + var/circuit = null + var/frame_type = "machine" /obj/machinery/New(l, d=0) ..(l) @@ -225,11 +227,6 @@ Class Procs: istype(usr, /mob/living/silicon))) usr << "You don't have the dexterity to do this!" return 1 -/* - //distance checks are made by atom/proc/DblClick - if ((get_dist(src, user) > 1 || !istype(src.loc, /turf)) && !istype(user, /mob/living/silicon)) - return 1 -*/ if (ishuman(user)) var/mob/living/carbon/human/H = user if(H.getBrainLoss() >= 55) @@ -280,29 +277,13 @@ Class Procs: return 1 return 0 -/obj/machinery/proc/default_deconstruction_crowbar(var/mob/user, var/obj/item/weapon/crowbar/C) - if(!istype(C)) - return 0 - if(!panel_open) - return 0 - . = dismantle() - -/obj/machinery/proc/default_deconstruction_screwdriver(var/mob/user, var/obj/item/weapon/screwdriver/S) - if(!istype(S)) - return 0 - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) - panel_open = !panel_open - user << "You [panel_open ? "open" : "close"] the maintenance hatch of [src]." - update_icon() - return 1 - /obj/machinery/proc/default_part_replacement(var/mob/user, var/obj/item/weapon/storage/part_replacer/R) if(!istype(R)) return 0 if(!component_parts) return 0 if(panel_open) - var/obj/item/weapon/circuitboard/CB = locate(/obj/item/weapon/circuitboard) in component_parts + var/obj/item/weapon/circuitboard/CB = circuit var/P for(var/obj/item/weapon/stock_parts/A in component_parts) for(var/D in CB.req_components) @@ -328,13 +309,45 @@ Class Procs: user << " [C.name]" return 1 +/obj/machinery/proc/default_deconstruction_crowbar(var/mob/user, var/obj/item/weapon/crowbar/C) + if(!istype(C)) + return 0 + if(!panel_open) + return 0 + . = dismantle() + +/obj/machinery/proc/default_deconstruction_screwdriver(var/mob/user, var/obj/item/weapon/screwdriver/S) + if(!istype(S)) + return 0 + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + panel_open = !panel_open + user << "You [panel_open ? "open" : "close"] the maintenance hatch of [src]." + update_icon() + return 1 + /obj/machinery/proc/dismantle() playsound(loc, 'sound/items/Crowbar.ogg', 50, 1) - var/obj/machinery/constructable_frame/machine_frame/M = new /obj/machinery/constructable_frame/machine_frame(loc) - M.set_dir(src.dir) - M.state = 2 - M.icon_state = "box_1" - for(var/obj/I in component_parts) - I.loc = loc + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.circuit = M + A.anchored = 1 + A.density = 1 + A.frame_type = M.board_type + if(A.frame_type in A.no_circuit) + A.need_circuit = 0 + for (var/obj/D in src) + D.forceMove(loc) + if(A.components) + A.components.Cut() + else + A.components = list() + component_parts = list() + A.icon_state = "[A.frame_type]_3" + A.state = 3 + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.check_components() + A.update_desc() + M.deconstruct(src) qdel(src) return 1 diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index 5a2663a7d1..7bfe32d719 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -167,7 +167,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co light_range = 0 anchored = 1 var/obj/machinery/exonet_node/node = null - + circuit = /obj/item/weapon/circuitboard/newscaster /obj/machinery/newscaster/security_unit //Security unit name = "Security Newscaster" @@ -751,32 +751,34 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co -/obj/machinery/newscaster/attackby(obj/item/I as obj, mob/user as mob) - if (src.isbroken) - playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 100, 1) - for (var/mob/O in hearers(5, src.loc)) - O.show_message("[user.name] further abuses the shattered [src.name].") - else - if(istype(I, /obj/item/weapon) ) - var/obj/item/weapon/W = I - if(W.force <15) - for (var/mob/O in hearers(5, src.loc)) - O.show_message("[user.name] hits the [src.name] with the [W.name] with no visible effect." ) - playsound(src.loc, 'sound/effects/Glasshit.ogg', 100, 1) +/obj/machinery/newscaster/attackby(I as obj, user as mob) + if(istype(I, /obj/item/weapon/screwdriver) && circuit) + user << "You start disconnecting the monitor." + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + if(do_after(user, 20)) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.frame_type = "newscaster" + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.circuit = M + A.anchored = 1 + for (var/obj/C in src) + C.forceMove(loc) + if (src.stat & isbroken == 1) + user << "The broken glass falls out." + new /obj/item/weapon/material/shard( src.loc ) + A.state = 3 + A.icon_state = "newscaster_3" else - src.hitstaken++ - if(src.hitstaken==3) - for (var/mob/O in hearers(5, src.loc)) - O.show_message("[user.name] smashes the [src.name]!" ) - src.isbroken=1 - playsound(src.loc, 'sound/effects/Glassbr3.ogg', 100, 1) - else - for (var/mob/O in hearers(5, src.loc)) - O.show_message("[user.name] forcefully slams the [src.name] with the [I.name]!" ) - playsound(src.loc, 'sound/effects/Glasshit.ogg', 100, 1) - else - user << "This does nothing." - src.update_icon() + user << "You disconnect the monitor." + A.state = 4 + A.icon_state = "newscaster_4" + M.deconstruct(src) + qdel(src) + else + src.attack_hand(user) + return /obj/machinery/newscaster/attack_ai(mob/user as mob) return src.attack_hand(user) //or maybe it'll have some special functions? No idea. diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index 992a93c40a..72c125e8b2 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -14,6 +14,15 @@ obj/machinery/recharger var/icon_state_charging = "recharger1" var/icon_state_idle = "recharger0" //also when unpowered var/portable = 1 + circuit = /obj/item/weapon/circuitboard/recharger + frame_type = "recharger" + +obj/machinery/recharger/New() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/capacitor(src) + component_parts += new /obj/item/stack/cable_coil(src, 5) + RefreshParts() + return obj/machinery/recharger/attackby(obj/item/weapon/G as obj, mob/user as mob) if(istype(user,/mob/living/silicon)) @@ -52,6 +61,10 @@ obj/machinery/recharger/attackby(obj/item/weapon/G as obj, mob/user as mob) anchored = !anchored user << "You [anchored ? "attached" : "detached"] the recharger." playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) + else if(default_deconstruction_screwdriver(user, G)) + return + else if(default_deconstruction_crowbar(user, G)) + return obj/machinery/recharger/attack_hand(mob/user as mob) if(istype(user,/mob/living/silicon)) @@ -156,3 +169,5 @@ obj/machinery/recharger/wallcharger icon_state_charging = "wrecharger1" icon_state_idle = "wrecharger0" portable = 0 + circuit = /obj/item/weapon/circuitboard/recharger/wrecharger + frame_type = "wrecharger" \ No newline at end of file diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index efcc8314c1..c3759100fb 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -5,6 +5,7 @@ icon_state = "borgcharger0" density = 1 anchored = 1 + circuit = /obj/item/weapon/circuitboard/recharge_station use_power = 1 idle_power_usage = 50 var/mob/occupant = null @@ -25,7 +26,6 @@ ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/recharge_station(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) component_parts += new /obj/item/weapon/stock_parts/capacitor(src) diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm index dd862a7754..8b0d78cb96 100644 --- a/code/game/machinery/status_display.dm +++ b/code/game/machinery/status_display.dm @@ -17,6 +17,7 @@ density = 0 use_power = 1 idle_power_usage = 10 + circuit = /obj/item/weapon/circuitboard/status_display var/mode = 1 // 0 = Blank // 1 = Shuttle timer // 2 = Arbitrary message(s) @@ -51,6 +52,29 @@ radio_controller.remove_object(src,frequency) return ..() +/obj/machinery/status_display/attackby(I as obj, user as mob) + if(istype(I, /obj/item/weapon/screwdriver) && circuit) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + if(do_after(user, 20)) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.frame_type = "display" + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.circuit = M + A.anchored = 1 + for (var/obj/C in src) + C.forceMove(loc) + user << "You disconnect the monitor." + A.state = 4 + A.icon_state = "display_4" + M.deconstruct(src) + qdel(src) + else + src.attack_hand(user) + return + + // register for radio system /obj/machinery/status_display/initialize() ..() diff --git a/code/game/machinery/status_display_ai.dm b/code/game/machinery/status_display_ai.dm index 0b7371c1b0..51fcfb4f51 100644 --- a/code/game/machinery/status_display_ai.dm +++ b/code/game/machinery/status_display_ai.dm @@ -59,6 +59,7 @@ var/list/ai_status_emotions = list( name = "AI display" anchored = 1 density = 0 + circuit = /obj/item/weapon/circuitboard/ai_status_display var/mode = 0 // 0 = Blank // 1 = AI emoticon @@ -68,6 +69,28 @@ var/list/ai_status_emotions = list( var/emotion = "Neutral" +/obj/machinery/ai_status_display/attackby(I as obj, user as mob) + if(istype(I, /obj/item/weapon/screwdriver) && circuit) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + if(do_after(user, 20)) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.frame_type = "display" + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.circuit = M + A.anchored = 1 + for (var/obj/C in src) + C.forceMove(loc) + user << "You disconnect the monitor." + A.state = 4 + A.icon_state = "display_4" + M.deconstruct(src) + qdel(src) + else + src.attack_hand(user) + return + /obj/machinery/ai_status_display/attack_ai/(mob/user as mob) var/list/ai_emotions = get_ai_emotions(user.ckey) var/emote = input("Please, select a status!", "AI Status", null, null) in ai_emotions diff --git a/code/game/machinery/telecomms/logbrowser.dm b/code/game/machinery/telecomms/logbrowser.dm index 072c99322f..b9cc3428f9 100644 --- a/code/game/machinery/telecomms/logbrowser.dm +++ b/code/game/machinery/telecomms/logbrowser.dm @@ -10,6 +10,7 @@ var/screen = 0 // the screen number: var/list/servers = list() // the servers located by the computer var/obj/machinery/telecomms/server/SelectedServer + circuit = /obj/item/weapon/circuitboard/comm_server var/network = "NULL" // the network to probe var/temp = "" // temporary feedback messages @@ -188,36 +189,6 @@ updateUsrDialog() return - attackby(var/obj/item/weapon/D as obj, var/mob/user as mob) - if(istype(D, /obj/item/weapon/screwdriver)) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) - if(do_after(user, 20)) - if (src.stat & BROKEN) - user << "The broken glass falls out." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - new /obj/item/weapon/material/shard( src.loc ) - var/obj/item/weapon/circuitboard/comm_server/M = new /obj/item/weapon/circuitboard/comm_server( A ) - for (var/obj/C in src) - C.loc = src.loc - A.circuit = M - A.state = 3 - A.icon_state = "3" - A.anchored = 1 - qdel(src) - else - user << "You disconnect the monitor." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - var/obj/item/weapon/circuitboard/comm_server/M = new /obj/item/weapon/circuitboard/comm_server( A ) - for (var/obj/C in src) - C.loc = src.loc - A.circuit = M - A.state = 4 - A.icon_state = "4" - A.anchored = 1 - qdel(src) - src.updateUsrDialog() - return - /obj/machinery/computer/telecomms/server/emag_act(var/remaining_charges, var/mob/user) if(!emagged) playsound(src.loc, 'sound/effects/sparks4.ogg', 75, 1) diff --git a/code/game/machinery/telecomms/machine_interactions.dm b/code/game/machinery/telecomms/machine_interactions.dm index 2859083c9d..2b3561395f 100644 --- a/code/game/machinery/telecomms/machine_interactions.dm +++ b/code/game/machinery/telecomms/machine_interactions.dm @@ -98,8 +98,8 @@ // Drop a circuit board too C.loc = user.loc - // Create a machine frame and delete the current machine - var/obj/machinery/constructable_frame/machine_frame/F = new + // Create a frame and delete the current machine + var/obj/structure/frame/F = new F.loc = src.loc qdel(src) diff --git a/code/game/machinery/telecomms/telemonitor.dm b/code/game/machinery/telecomms/telemonitor.dm index 24549bd8b7..6567012a80 100644 --- a/code/game/machinery/telecomms/telemonitor.dm +++ b/code/game/machinery/telecomms/telemonitor.dm @@ -14,6 +14,7 @@ var/screen = 0 // the screen number: var/list/machinelist = list() // the machines located by the computer var/obj/machinery/telecomms/SelectedMachine + circuit = /obj/item/weapon/circuitboard/comm_monitor var/network = "NULL" // the network to probe @@ -123,36 +124,6 @@ updateUsrDialog() return - attackby(var/obj/item/weapon/D as obj, var/mob/user as mob) - if(istype(D, /obj/item/weapon/screwdriver)) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) - if(do_after(user, 20)) - if (src.stat & BROKEN) - user << "The broken glass falls out." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - new /obj/item/weapon/material/shard( src.loc ) - var/obj/item/weapon/circuitboard/comm_monitor/M = new /obj/item/weapon/circuitboard/comm_monitor( A ) - for (var/obj/C in src) - C.loc = src.loc - A.circuit = M - A.state = 3 - A.icon_state = "3" - A.anchored = 1 - qdel(src) - else - user << "You disconnect the monitor." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - var/obj/item/weapon/circuitboard/comm_monitor/M = new /obj/item/weapon/circuitboard/comm_monitor( A ) - for (var/obj/C in src) - C.loc = src.loc - A.circuit = M - A.state = 4 - A.icon_state = "4" - A.anchored = 1 - qdel(src) - src.updateUsrDialog() - return - /obj/machinery/computer/telecomms/monitor/emag_act(var/remaining_charges, var/mob/user) if(!emagged) playsound(src.loc, 'sound/effects/sparks4.ogg', 75, 1) diff --git a/code/game/machinery/telecomms/traffic_control.dm b/code/game/machinery/telecomms/traffic_control.dm index e941a268ef..0d372b2aaa 100644 --- a/code/game/machinery/telecomms/traffic_control.dm +++ b/code/game/machinery/telecomms/traffic_control.dm @@ -14,6 +14,7 @@ var/mob/lasteditor var/list/viewingcode = list() var/obj/machinery/telecomms/server/SelectedServer + circuit = /obj/item/weapon/circuitboard/comm_traffic var/network = "NULL" // the network to probe var/temp = "" // temporary feedback messages @@ -206,40 +207,10 @@ updateUsrDialog() return - attackby(var/obj/item/weapon/D as obj, var/mob/user as mob) - if(istype(D, /obj/item/weapon/screwdriver)) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) - if(do_after(user, 20)) - if (src.stat & BROKEN) - user << "The broken glass falls out." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - new /obj/item/weapon/material/shard( src.loc ) - var/obj/item/weapon/circuitboard/comm_traffic/M = new /obj/item/weapon/circuitboard/comm_traffic( A ) - for (var/obj/C in src) - C.loc = src.loc - A.circuit = M - A.state = 3 - A.icon_state = "3" - A.anchored = 1 - qdel(src) - else - user << "You disconnect the monitor." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - var/obj/item/weapon/circuitboard/comm_traffic/M = new /obj/item/weapon/circuitboard/comm_traffic( A ) - for (var/obj/C in src) - C.loc = src.loc - A.circuit = M - A.state = 4 - A.icon_state = "4" - A.anchored = 1 - qdel(src) - src.updateUsrDialog() - return - /obj/machinery/computer/telecomms/traffic/emag_act(var/remaining_charges, var/mob/user) if(!emagged) playsound(src.loc, 'sound/effects/sparks4.ogg', 75, 1) emagged = 1 user << "You you disable the security protocols" src.updateUsrDialog() - return 1 + return 1 \ No newline at end of file diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index b1b8d497b3..8099103d8a 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -36,6 +36,8 @@ layer = 2.9 anchored = 1 density = 1 + circuit = /obj/item/weapon/circuitboard/vending + frame_type = "vending" var/icon_vend //Icon_state when vending var/icon_deny //Icon_state when denying access @@ -94,6 +96,14 @@ /obj/machinery/vending/New() ..() wires = new(src) + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/spring(src) + component_parts += new /obj/item/weapon/stock_parts/spring(src) + component_parts += new /obj/item/weapon/stock_parts/motor(src) + component_parts += new /obj/item/weapon/stock_parts/motor(src) + component_parts += new /obj/item/weapon/stock_parts/console_screen(src) + component_parts += new /obj/item/stack/material/glass/reinforced(src, 2) + RefreshParts() spawn(4) if(src.product_slogans) src.slogan_list += splittext(src.product_slogans, ";") @@ -232,6 +242,8 @@ user << "You [anchored? "un" : ""]secured \the [src]!" anchored = !anchored return + else if(default_deconstruction_crowbar(user, W)) + return else @@ -922,7 +934,15 @@ icon_state = "engivend" icon_deny = "engivend-deny" req_access = list(access_engine_equip) - 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) + products = list(/obj/item/clothing/glasses/meson = 2,/obj/item/device/multitool = 4,/obj/item/weapon/cell/high = 10, + /obj/item/weapon/airlock_electronics = 10,/obj/item/weapon/module/power_control = 10, + /obj/item/weapon/circuitboard/airalarm = 10,/obj/item/weapon/circuitboard/firealarm = 10,/obj/item/weapon/circuitboard/status_display = 2, + /obj/item/weapon/circuitboard/ai_status_display = 2,/obj/item/weapon/circuitboard/newscaster = 2,/obj/item/weapon/circuitboard/holopad = 2, + /obj/item/weapon/circuitboard/intercom = 4,/obj/item/weapon/circuitboard/security/telescreen/entertainment = 4, + /obj/item/weapon/circuitboard/atm = 0,/obj/item/weapon/circuitboard/guestpass = 0,/obj/item/weapon/circuitboard/keycard_auth = 0, + /obj/item/weapon/circuitboard/photocopier = 0,/obj/item/weapon/circuitboard/fax = 0,/obj/item/weapon/circuitboard/conveyor = 0, + /obj/item/weapon/circuitboard/microwave = 0,/obj/item/weapon/circuitboard/vending = 0,/obj/item/weapon/circuitboard/washing = 0, + /obj/item/weapon/stock_parts/motor = 0,/obj/item/weapon/stock_parts/spring = 0,/obj/item/weapon/stock_parts/gear = 0) contraband = list(/obj/item/weapon/cell/potato = 3) premium = list(/obj/item/weapon/storage/belt/utility = 3) diff --git a/code/game/machinery/wall_frames.dm b/code/game/machinery/wall_frames.dm index c9182586c8..fd0fd3ce7c 100644 --- a/code/game/machinery/wall_frames.dm +++ b/code/game/machinery/wall_frames.dm @@ -1,13 +1,14 @@ /obj/item/frame - name = "frame" - desc = "Used for building machines." - icon = 'icons/obj/monitors.dmi' - icon_state = "fire_bitem" + name = "frame parts" + desc = "Used for building frames." + icon = 'icons/obj/stock_parts.dmi' + icon_state = "frame_bitem" flags = CONDUCT - var/build_machine_type - var/refund_amt = 2 + var/build_machine_type = /obj/structure/frame + var/refund_amt = 5 var/refund_type = /obj/item/stack/material/steel var/reverse = 0 //if resulting object faces opposite its dir (like light fixtures) + var/frame_type = null /obj/item/frame/attackby(obj/item/weapon/W as obj, mob/user as mob) if (istype(W, /obj/item/weapon/wrench)) @@ -16,7 +17,82 @@ return ..() -/obj/item/frame/proc/try_build(turf/on_wall) +/obj/item/frame/attack_self(mob/user as mob) + ..() + if(!build_machine_type) + return + + var/ndir + if(!frame_type) + var/response = input(usr, "What kind of frame would you like to make?", "Frame type request", null) in list("Computer", "Machine", "Holopad", "Conveyor", + "Photocopier", "Fax", "Microwave", "Vending Machine", + "Recharger", "Washing Machine", "Grinder", + "Cancel") + + if(response == "Cancel") + return + + frame_type = lowertext(response) + + switch(response) + if("Holopad") + new /obj/item/stack/material/steel( usr.loc, 1 ) //holopads are smaller, they only need 4 sheets + if("Conveyor") + ndir = get_dir(src,usr) + if (!(ndir in cardinal)) + return + if("Fax") + new /obj/item/stack/material/steel( usr.loc, 2 ) //faxes are smaller, they only need 3 sheets + if("Microwave") + new /obj/item/stack/material/steel( usr.loc, 1 ) //microwaves are smaller, they only need 4 sheets + if("Vending Machine") + frame_type = "vending" + if("Recharger") + new /obj/item/stack/material/steel( usr.loc, 2 ) //rechargers are smaller, they only need 3 sheets + if("Washing Machine") + frame_type = "washing" + if("Grinder") + new /obj/item/stack/material/steel( usr.loc, 2 ) //grinders are smaller, they only need 3 sheets + + var/obj/machinery/M = new build_machine_type(get_turf(src.loc), ndir, 1, frame_type) + M.fingerprints = src.fingerprints + M.fingerprintshidden = src.fingerprintshidden + M.fingerprintslast = src.fingerprintslast + qdel(src) + +/obj/item/frame/proc/try_build(turf/on_wall, mob/user as mob) + if(!frame_type) + var/response = input(usr, "What kind of frame would you like to make?", "Frame type request", null) in list("Fire Alarm", "Air Alarm", "Display", "Newscaster", + "ATM", "Guest Pass Console", "Intercom", "Keycard Authenticator", + "Wall Charger", + "Cancel") + + if(response == "Cancel") + return + + frame_type = lowertext(response) + + switch(response) + if("Fire Alarm") + frame_type = "firealarm" + new /obj/item/stack/material/steel( usr.loc, 3 ) //fire alarms are smaller, they only need 2 sheets + if("Air Alarm") + frame_type = "airalarm" + new /obj/item/stack/material/steel( usr.loc, 3 ) //air alarms are smaller, they only need 2 sheets + if("Intercom") + new /obj/item/stack/material/steel( usr.loc, 3 ) //intercoms are smaller, they only need 2 sheets + if("Newscaster") + new /obj/item/stack/material/steel( usr.loc, 2 ) //newscasters are smaller, they only need 3 sheets + if("Guest Pass Console") + frame_type = "guestpass" + new /obj/item/stack/material/steel( usr.loc, 3 ) //guestpass consoles are smaller, they only need 2 sheets + if("Keycard Authenticator") + frame_type = "keycard" + new /obj/item/stack/material/steel( usr.loc, 4 ) //keycard authenticators are smaller, they only need 1 sheets + if("Wall Charger") + frame_type = "wrecharger" + new /obj/item/stack/material/steel( usr.loc, 2 ) //wall rechargers are smaller, they only need 3 sheets + if(!build_machine_type) return @@ -35,7 +111,7 @@ var/turf/loc = get_turf(usr) var/area/A = loc.loc if (!istype(loc, /turf/simulated/floor)) - usr << "\The [src] Alarm cannot be placed on this spot." + usr << "\The frame cannot be placed on this spot." return if (A.requires_power == 0 || A.name == "Space") usr << "\The [src] Alarm cannot be placed in this area." @@ -44,23 +120,12 @@ if(gotwallitem(loc, ndir)) usr << "There's already an item on this wall!" return - - var/obj/machinery/M = new build_machine_type(loc, ndir, 1) + var/obj/machinery/M = new build_machine_type(loc, ndir, 1, frame_type) M.fingerprints = src.fingerprints M.fingerprintshidden = src.fingerprintshidden M.fingerprintslast = src.fingerprintslast qdel(src) -/obj/item/frame/fire_alarm - name = "fire alarm frame" - desc = "Used for building fire alarms." - build_machine_type = /obj/machinery/firealarm - -/obj/item/frame/air_alarm - name = "air alarm frame" - desc = "Used for building air alarms." - build_machine_type = /obj/machinery/alarm - /obj/item/frame/light name = "light fixture frame" desc = "Used for building lights." @@ -68,9 +133,48 @@ icon_state = "tube-construct-item" build_machine_type = /obj/machinery/light_construct reverse = 1 + frame_type = 1 /obj/item/frame/light/small name = "small light fixture frame" icon_state = "bulb-construct-item" refund_amt = 1 build_machine_type = /obj/machinery/light_construct/small + frame_type = 1 + +/obj/item/frame/extinguisher_cabinet + name = "extinguisher cabinet frame" + desc = "Used for building fire extinguisher cabinets." + icon = 'icons/obj/closet.dmi' + icon_state = "extinguisher_empty" + refund_amt = 4 + build_machine_type = /obj/structure/extinguisher_cabinet + frame_type = 1 + +/obj/item/frame/noticeboard + name = "noticeboard frame" + desc = "Used for building noticeboards." + icon = 'icons/obj/stationobjs.dmi' + icon_state = "nboard00" + refund_amt = 4 + refund_type = /obj/item/stack/material/wood + build_machine_type = /obj/structure/noticeboard + frame_type = 1 + +/obj/item/frame/mirror + name = "mirror frame" + desc = "Used for building mirrors." + icon = 'icons/obj/watercloset.dmi' + icon_state = "mirror_frame" + refund_amt = 1 + build_machine_type = /obj/structure/mirror + frame_type = 1 + +/obj/item/frame/fireaxe_cabinet + name = "fire axe cabinet frame" + desc = "Used for building fire axe cabinets." + icon = 'icons/obj/closet.dmi' + icon_state = "fireaxe0101" + refund_amt = 4 + build_machine_type = /obj/structure/closet/fireaxecabinet + frame_type = 1 \ No newline at end of file diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index a22482a416..830a848bfe 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -4,6 +4,7 @@ icon_state = "wm_10" density = 1 anchored = 1.0 + circuit = /obj/item/weapon/circuitboard/washing var/state = 1 //1 = empty, open door //2 = empty, closed door @@ -13,14 +14,19 @@ //6 = blood, open door //7 = blood, closed door //8 = blood, running - var/panel = 0 - //0 = closed - //1 = open var/hacked = 1 //Bleh, screw hacking, let's have it hacked by default. //0 = not hacked //1 = hacked var/gibs_ready = 0 var/obj/crayon + var/list/washing = list() + +/obj/machinery/washing_machine/New() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/motor(src) + component_parts += new /obj/item/weapon/stock_parts/gear(src) + component_parts += new /obj/item/weapon/stock_parts/gear(src) + RefreshParts() /obj/machinery/washing_machine/verb/start() set name = "Start Washing" @@ -34,25 +40,25 @@ usr << "The washing machine cannot run in this state." return - if( locate(/mob,contents) ) + if( locate(/mob,washing) ) state = 8 else state = 5 update_icon() sleep(200) - for(var/atom/A in contents) + for(var/atom/A in washing) A.clean_blood() - for(var/obj/item/I in contents) + for(var/obj/item/I in washing) I.decontaminate() //Tanning! - for(var/obj/item/stack/material/hairlesshide/HH in contents) + for(var/obj/item/stack/material/hairlesshide/HH in washing) var/obj/item/stack/material/wetleather/WL = new(src) WL.amount = HH.amount qdel(HH) - if( locate(/mob,contents) ) + if( locate(/mob,washing) ) state = 7 gibs_ready = 1 else @@ -70,9 +76,14 @@ /obj/machinery/washing_machine/update_icon() - icon_state = "wm_[state][panel]" + icon_state = "wm_[state][panel_open]" /obj/machinery/washing_machine/attackby(obj/item/weapon/W as obj, mob/user as mob) + if(state == 2 && washing.len < 1) + if(default_deconstruction_screwdriver(user, W)) + return + if(default_deconstruction_crowbar(user, W)) + return /*if(istype(W,/obj/item/weapon/screwdriver)) panel = !panel user << "You [panel ? "open" : "close"] the [src]'s maintenance panel"*/ @@ -142,10 +153,11 @@ user << "This item does not fit." return - if(contents.len < 5) + if(washing.len < 5) if ( state in list(1, 3) ) user.drop_item() W.loc = src + washing += W state = 3 else user << "You can't put the item in right now." @@ -161,15 +173,17 @@ state = 2 if(2) state = 1 - for(var/atom/movable/O in contents) + for(var/atom/movable/O in washing) O.loc = src.loc + washing.Cut() if(3) state = 4 if(4) state = 3 - for(var/atom/movable/O in contents) + for(var/atom/movable/O in washing) O.loc = src.loc crayon = null + washing.Cut() state = 1 if(5) user << "The [src] is busy." @@ -178,13 +192,13 @@ if(7) if(gibs_ready) gibs_ready = 0 - if(locate(/mob,contents)) - var/mob/M = locate(/mob,contents) + if(locate(/mob,washing)) + var/mob/M = locate(/mob,washing) M.gib() - for(var/atom/movable/O in contents) + for(var/atom/movable/O in washing) O.loc = src.loc crayon = null state = 1 + washing.Cut() - - update_icon() + update_icon() \ No newline at end of file diff --git a/code/game/mecha/mech_bay.dm b/code/game/mecha/mech_bay.dm index cf50e69525..23c30d3a3d 100644 --- a/code/game/mecha/mech_bay.dm +++ b/code/game/mecha/mech_bay.dm @@ -5,6 +5,7 @@ icon_state = "recharge_floor" density = 0 layer = TURF_LAYER + 0.1 + circuit = /obj/item/weapon/circuitboard/mech_recharger var/obj/mecha/charging = null var/charge = 45 @@ -14,7 +15,6 @@ ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/mech_recharger(src) 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/scanning_module(src) diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 0685e6efd2..425b959d31 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -9,6 +9,7 @@ idle_power_usage = 20 active_power_usage = 5000 req_access = list(access_robotics) + circuit = /obj/item/weapon/circuitboard/mechfab var/speed = 1 var/mat_efficiency = 1 @@ -29,7 +30,6 @@ ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/mechfab(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) @@ -89,7 +89,7 @@ return ui_interact(user) -/obj/machinery/mecha_part_fabricator/ui_interact(var/mob/user, var/ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1) +/obj/machinery/mecha_part_fabricator/ui_interact(var/mob/user, var/ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1) var/data[0] var/datum/design/current = queue.len ? queue[1] : null diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 6961e957ff..f66b668664 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -76,13 +76,10 @@ /obj/item/equipped() ..() - var/mob/M = loc + var/mob/living/M = loc if(!istype(M)) return - if(M.l_hand) - M.l_hand.update_held_icon() - if(M.r_hand) - M.r_hand.update_held_icon() + M.update_held_icons() /obj/item/Destroy() if(ismob(loc)) @@ -98,8 +95,8 @@ //Checks if the item is being held by a mob, and if so, updates the held icons /obj/item/proc/update_held_icon() - if(ismob(src.loc)) - var/mob/M = src.loc + if(isliving(src.loc)) + var/mob/living/M = src.loc if(M.l_hand == src) M.update_inv_l_hand() else if(M.r_hand == src) @@ -160,7 +157,7 @@ size = "huge" return ..(user, distance, "", "It is a [size] item.") -/obj/item/attack_hand(mob/user as mob) +/obj/item/attack_hand(mob/living/user as mob) if (!user) return if (hasorgans(user)) var/mob/living/carbon/human/H = user @@ -399,17 +396,15 @@ var/list/global/slot_flags_enumeration = list( if((!istype(usr, /mob/living/carbon)) || (istype(usr, /mob/living/carbon/brain)))//Is humanoid, and is not a brain usr << "You can't pick things up!" return + var/mob/living/carbon/C = usr if( usr.stat || usr.restrained() )//Is not asleep/dead and is not restrained usr << "You can't pick things up!" return if(src.anchored) //Object isn't anchored usr << "You can't pick that up!" return - if(!usr.hand && usr.r_hand) //Right hand is not full - usr << "Your right hand is full." - return - if(usr.hand && usr.l_hand) //Left hand is not full - usr << "Your left hand is full." + if(C.get_active_hand()) //Hand is not full + usr << "Your hand is full." return if(!istype(src.loc, /turf)) //Object is on a turf usr << "You can't pick that up!" diff --git a/code/game/objects/items/devices/radio/electropack.dm b/code/game/objects/items/devices/radio/electropack.dm index e5e94fc93d..5b769ed803 100644 --- a/code/game/objects/items/devices/radio/electropack.dm +++ b/code/game/objects/items/devices/radio/electropack.dm @@ -12,7 +12,7 @@ var/code = 2 -/obj/item/device/radio/electropack/attack_hand(mob/user as mob) +/obj/item/device/radio/electropack/attack_hand(mob/living/user as mob) if(src == user.back) user << "You need help taking this off!" return diff --git a/code/game/objects/items/devices/radio/intercom.dm b/code/game/objects/items/devices/radio/intercom.dm index ed8cf4ce0b..7aaf609eca 100644 --- a/code/game/objects/items/devices/radio/intercom.dm +++ b/code/game/objects/items/devices/radio/intercom.dm @@ -6,8 +6,10 @@ w_class = 4.0 canhear_range = 2 flags = CONDUCT | NOBLOODY + var/circuit = /obj/item/weapon/circuitboard/intercom var/number = 0 var/last_tick //used to delay the powercheck + var/wiresexposed = 0 /obj/item/device/radio/intercom/custom name = "station intercom (Custom)" @@ -81,6 +83,41 @@ spawn (0) attack_self(user) +/obj/item/device/radio/intercom/attackby(obj/item/W as obj, mob/user as mob) + src.add_fingerprint(user) + if(istype(W, /obj/item/weapon/screwdriver)) // Opening the intercom up. + wiresexposed = !wiresexposed + user << "The wires have been [wiresexposed ? "exposed" : "unexposed"]" + if(wiresexposed) + if(!on) + icon_state = "intercom-p_open" + else + icon_state = "intercom_open" + else + icon_state = "intercom" + return + if (wiresexposed && istype(W, /obj/item/weapon/wirecutters)) + user.visible_message("[user] has cut the wires inside \the [src]!", "You have cut the wires inside \the [src].") + playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + new/obj/item/stack/cable_coil(get_turf(src), 5) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.frame_type = "intercom" + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.circuit = M + A.set_dir(dir) + A.anchored = 1 + for (var/obj/C in src) + C.forceMove(loc) + A.state = 2 + A.icon_state = "intercom_2" + M.deconstruct(src) + qdel(src) + else + src.attack_hand(user) + return + /obj/item/device/radio/intercom/receive_range(freq, level) if (!on) return -1 @@ -110,9 +147,15 @@ on = A.powered(EQUIP) // set "on" to the power status if(!on) - icon_state = "intercom-p" + if(wiresexposed) + icon_state = "intercom-p_open" + else + icon_state = "intercom-p" else - icon_state = initial(icon_state) + if(wiresexposed) + icon_state = "intercom_open" + else + icon_state = initial(icon_state) /obj/item/device/radio/intercom/locked var/locked_frequency diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index b8b79a5ca1..451b2c41af 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -209,7 +209,7 @@ amount = 5 max_amount = 5 -/obj/item/stack/medical/splint/attack(mob/living/carbon/M as mob, mob/user as mob) +/obj/item/stack/medical/splint/attack(mob/living/carbon/M as mob, mob/living/user as mob) if(..()) return 1 diff --git a/code/game/objects/items/weapons/autopsy.dm b/code/game/objects/items/weapons/autopsy.dm index c17d8ba650..d196bc4ea7 100644 --- a/code/game/objects/items/weapons/autopsy.dm +++ b/code/game/objects/items/weapons/autopsy.dm @@ -160,20 +160,7 @@ P.icon_state = "paper_words" if(istype(usr,/mob/living/carbon)) - // place the item in the usr's hand if possible - if(!usr.r_hand) - P.loc = usr - usr.r_hand = P - P.layer = 20 - else if(!usr.l_hand) - P.loc = usr - usr.l_hand = P - P.layer = 20 - - if (ismob(src.loc)) - var/mob/M = src.loc - M.update_inv_l_hand() - M.update_inv_r_hand() + usr.put_in_hands(src) /obj/item/weapon/autopsy_scanner/attack(mob/living/carbon/human/M as mob, mob/living/carbon/user as mob) if(!istype(M)) diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index b156d569ad..4772063b4c 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -445,39 +445,36 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/weapon/flame/lighter/attack_self(mob/living/user) if(!base_state) base_state = icon_state - if(user.r_hand == src || user.l_hand == src) - if(!lit) - lit = 1 - icon_state = "[base_state]on" - item_state = "[base_state]on" - if(istype(src, /obj/item/weapon/flame/lighter/zippo) ) - user.visible_message("Without even breaking stride, [user] flips open and lights [src] in one smooth movement.") - else - if(prob(95)) - user.visible_message("After a few attempts, [user] manages to light the [src].") - else - user << "You burn yourself while lighting the lighter." - if (user.l_hand == src) - user.apply_damage(2,BURN,"l_hand") - else - user.apply_damage(2,BURN,"r_hand") - user.visible_message("After a few attempts, [user] manages to light the [src], they however burn their finger in the process.") - - set_light(2) - processing_objects.Add(src) + if(!lit) + lit = 1 + icon_state = "[base_state]on" + item_state = "[base_state]on" + if(istype(src, /obj/item/weapon/flame/lighter/zippo) ) + user.visible_message("Without even breaking stride, [user] flips open and lights [src] in one smooth movement.") else - lit = 0 - icon_state = "[base_state]" - item_state = "[base_state]" - if(istype(src, /obj/item/weapon/flame/lighter/zippo) ) - user.visible_message("You hear a quiet click, as [user] shuts off [src] without even looking at what they're doing.") + if(prob(95)) + user.visible_message("After a few attempts, [user] manages to light the [src].") else - user.visible_message("[user] quietly shuts off the [src].") + user << "You burn yourself while lighting the lighter." + if (user.get_left_hand() == src) + user.apply_damage(2,BURN,"l_hand") + else + user.apply_damage(2,BURN,"r_hand") + user.visible_message("After a few attempts, [user] manages to light the [src], they however burn their finger in the process.") - set_light(0) - processing_objects.Remove(src) + set_light(2) + processing_objects.Add(src) else - return ..() + lit = 0 + icon_state = "[base_state]" + item_state = "[base_state]" + if(istype(src, /obj/item/weapon/flame/lighter/zippo) ) + user.visible_message("You hear a quiet click, as [user] shuts off [src] without even looking at what they're doing.") + else + user.visible_message("[user] quietly shuts off the [src].") + + set_light(0) + processing_objects.Remove(src) return diff --git a/code/game/objects/items/weapons/circuitboards/computer/camera_monitor.dm b/code/game/objects/items/weapons/circuitboards/computer/camera_monitor.dm index 60f8bce268..0016fc730a 100644 --- a/code/game/objects/items/weapons/circuitboards/computer/camera_monitor.dm +++ b/code/game/objects/items/weapons/circuitboards/computer/camera_monitor.dm @@ -29,6 +29,16 @@ network = list("MINE") req_access = list() +/obj/item/weapon/circuitboard/security/telescreen/entertainment + name = T_BOARD("entertainment camera monitor") + build_path = /obj/machinery/computer/security/telescreen/entertainment + board_type = "display" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +/obj/item/weapon/circuitboard/security/telescreen/entertainment/New() + ..() + network = NETWORK_THUNDER + /obj/item/weapon/circuitboard/security/construct(var/obj/machinery/computer/security/C) if (..(C)) C.network = network.Copy() diff --git a/code/game/objects/items/weapons/circuitboards/frame.dm b/code/game/objects/items/weapons/circuitboards/frame.dm new file mode 100644 index 0000000000..30be1d52f7 --- /dev/null +++ b/code/game/objects/items/weapons/circuitboards/frame.dm @@ -0,0 +1,253 @@ +#ifndef T_BOARD +#error T_BOARD macro is not defined but we need it! +#endif + +//Circuitboards for frames (mostly wall based frames). Most of these don't fit into other categories. + +//Display + +/obj/item/weapon/circuitboard/guestpass + name = T_BOARD("guestpass console") + build_path = /obj/machinery/computer/guestpass + board_type = "guestpass" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +/obj/item/weapon/circuitboard/status_display + name = T_BOARD("status display") + build_path = /obj/machinery/status_display + board_type = "display" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +/obj/item/weapon/circuitboard/ai_status_display + name = T_BOARD("ai status display") + build_path = /obj/machinery/ai_status_display + board_type = "display" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +/obj/item/weapon/circuitboard/newscaster + name = T_BOARD("newscaster") + build_path = /obj/machinery/newscaster + board_type = "newscaster" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +/obj/item/weapon/circuitboard/atm + name = T_BOARD("atm") + build_path = /obj/machinery/atm + board_type = "atm" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +//Alarm + +/obj/item/weapon/circuitboard/firealarm + name = T_BOARD("fire alarm") + build_path = /obj/machinery/firealarm + board_type = "firealarm" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +/obj/item/weapon/circuitboard/airalarm + name = T_BOARD("air alarm") + build_path = /obj/machinery/alarm + board_type = "airalarm" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +/obj/item/weapon/circuitboard/intercom + name = T_BOARD("intercom") + build_path = /obj/item/device/radio/intercom + board_type = "intercom" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +/obj/item/weapon/circuitboard/keycard_auth + name = T_BOARD("keycard authenticator") + build_path = /obj/machinery/keycard_auth + board_type = "keycard" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +//Computer + +/obj/item/weapon/circuitboard/holopad + name = T_BOARD("holopad") + build_path = /obj/machinery/hologram/holopad + board_type = "holopad" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + +//Machine + +/obj/item/weapon/circuitboard/photocopier + name = T_BOARD("photocopier") + build_path = /obj/machinery/photocopier + board_type = "photocopier" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + req_components = list( + "/obj/item/weapon/stock_parts/scanning_module" = 1, + "/obj/item/weapon/stock_parts/motor" = 1, + "/obj/item/weapon/stock_parts/micro_laser" = 1, + "/obj/item/weapon/stock_parts/matter_bin" = 1) + +/obj/item/weapon/circuitboard/fax + name = T_BOARD("fax") + build_path = /obj/machinery/photocopier/faxmachine + board_type = "fax" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + req_components = list( + "/obj/item/weapon/stock_parts/scanning_module" = 1, + "/obj/item/weapon/stock_parts/motor" = 1, + "/obj/item/weapon/stock_parts/micro_laser" = 1, + "/obj/item/weapon/stock_parts/matter_bin" = 1) + +/obj/item/weapon/circuitboard/conveyor + name = T_BOARD("conveyor") + build_path = /obj/machinery/conveyor + board_type = "conveyor" + req_components = list( + "/obj/item/weapon/stock_parts/gear" = 2, + "/obj/item/weapon/stock_parts/motor" = 2, + "/obj/item/stack/cable_coil" = 5) + +/obj/item/weapon/circuitboard/microwave + name = T_BOARD("microwave") + build_path = /obj/machinery/microwave + board_type = "microwave" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + req_components = list( + "/obj/item/weapon/stock_parts/console_screen" = 1, + "/obj/item/weapon/stock_parts/motor" = 1, + "/obj/item/weapon/stock_parts/capacitor" = 1) + +/obj/item/weapon/circuitboard/vending + name = T_BOARD("vending") + build_path = /obj/machinery/vending + board_type = "vending" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + req_components = list( + "/obj/item/weapon/stock_parts/console_screen" = 1, + "/obj/item/weapon/stock_parts/motor" = 2, + "/obj/item/weapon/stock_parts/spring" = 2, + "/obj/item/stack/material/glass/reinforced" = 2) + +/obj/item/weapon/circuitboard/recharger + name = T_BOARD("recharger") + build_path = /obj/machinery/recharger + board_type = "recharger" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + req_components = list( + "/obj/item/weapon/stock_parts/capacitor" = 1, + "/obj/item/stack/cable_coil" = 5) + +/obj/item/weapon/circuitboard/recharger/wrecharger + name = T_BOARD("wall recharger") + build_path = /obj/machinery/recharger/wallcharger + board_type = "wrecharger" + +/obj/item/weapon/circuitboard/washing + name = T_BOARD("washing machine") + build_path = /obj/machinery/washing_machine + board_type = "washing" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + req_components = list( + "/obj/item/weapon/stock_parts/motor" = 1, + "/obj/item/weapon/stock_parts/gear" = 2) + +/obj/item/weapon/circuitboard/grinder + name = T_BOARD("reagent grinder") + build_path = /obj/machinery/reagentgrinder + board_type = "grinder" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + req_components = list( + "/obj/item/weapon/stock_parts/motor" = 1, + "/obj/item/weapon/stock_parts/gear" = 1, + "/obj/item/weapon/reagent_containers/glass/beaker/large" = 1) + +//for testing - If this is still in when I commit, someone shoot me. --leaving in for now, shouldn't be able to get these on station anyways. +/obj/item/weapon/storage/box/frame_parts + display_contents_with_number = 1 + New() + ..() + new /obj/item/weapon/circuitboard/guestpass( src ) + new /obj/item/weapon/circuitboard/status_display( src ) + new /obj/item/weapon/circuitboard/ai_status_display( src ) + new /obj/item/weapon/circuitboard/newscaster( src ) + new /obj/item/weapon/circuitboard/atm( src ) + new /obj/item/weapon/circuitboard/firealarm( src ) + new /obj/item/weapon/circuitboard/airalarm( src ) + new /obj/item/weapon/circuitboard/intercom( src ) + new /obj/item/weapon/circuitboard/keycard_auth( src ) + new /obj/item/weapon/circuitboard/holopad( src ) + new /obj/item/weapon/circuitboard/photocopier( src ) + new /obj/item/weapon/circuitboard/fax( src ) + new /obj/item/weapon/circuitboard/microwave( src ) + new /obj/item/weapon/circuitboard/vending( src ) + new /obj/item/weapon/circuitboard/washing( src ) + new /obj/item/weapon/stock_parts/scanning_module( src ) + new /obj/item/weapon/stock_parts/motor( src ) + new /obj/item/weapon/stock_parts/micro_laser( src ) + new /obj/item/weapon/stock_parts/matter_bin( src ) + new /obj/item/weapon/stock_parts/gear( src ) + new /obj/item/weapon/stock_parts/console_screen( src ) + new /obj/item/weapon/stock_parts/capacitor( src ) + new /obj/item/weapon/stock_parts/spring( src ) + new /obj/item/weapon/stock_parts/scanning_module( src ) + new /obj/item/weapon/stock_parts/motor( src ) + new /obj/item/weapon/stock_parts/micro_laser( src ) + new /obj/item/weapon/stock_parts/matter_bin( src ) + new /obj/item/weapon/stock_parts/gear( src ) + new /obj/item/weapon/stock_parts/console_screen( src ) + new /obj/item/weapon/stock_parts/capacitor( src ) + new /obj/item/weapon/stock_parts/spring( src ) + new /obj/item/weapon/stock_parts/scanning_module( src ) + new /obj/item/weapon/stock_parts/motor( src ) + new /obj/item/weapon/stock_parts/micro_laser( src ) + new /obj/item/weapon/stock_parts/matter_bin( src ) + new /obj/item/weapon/stock_parts/gear( src ) + new /obj/item/weapon/stock_parts/console_screen( src ) + new /obj/item/weapon/stock_parts/capacitor( src ) + new /obj/item/weapon/stock_parts/spring( src ) + new /obj/item/weapon/stock_parts/scanning_module( src ) + new /obj/item/weapon/stock_parts/motor( src ) + new /obj/item/weapon/stock_parts/micro_laser( src ) + new /obj/item/weapon/stock_parts/matter_bin( src ) + new /obj/item/weapon/stock_parts/gear( src ) + new /obj/item/weapon/stock_parts/console_screen( src ) + new /obj/item/weapon/stock_parts/capacitor( src ) + new /obj/item/weapon/stock_parts/spring( src ) + new /obj/item/weapon/stock_parts/scanning_module( src ) + new /obj/item/weapon/stock_parts/motor( src ) + new /obj/item/weapon/stock_parts/micro_laser( src ) + new /obj/item/weapon/stock_parts/matter_bin( src ) + new /obj/item/weapon/stock_parts/gear( src ) + new /obj/item/weapon/stock_parts/console_screen( src ) + new /obj/item/weapon/stock_parts/capacitor( src ) + new /obj/item/weapon/stock_parts/spring( src ) + new /obj/item/weapon/stock_parts/scanning_module( src ) + new /obj/item/weapon/stock_parts/motor( src ) + new /obj/item/weapon/stock_parts/micro_laser( src ) + new /obj/item/weapon/stock_parts/matter_bin( src ) + new /obj/item/weapon/stock_parts/gear( src ) + new /obj/item/weapon/stock_parts/console_screen( src ) + new /obj/item/weapon/stock_parts/capacitor( src ) + new /obj/item/weapon/stock_parts/spring( src ) + new /obj/item/weapon/stock_parts/scanning_module( src ) + new /obj/item/weapon/stock_parts/motor( src ) + new /obj/item/weapon/stock_parts/micro_laser( src ) + new /obj/item/weapon/stock_parts/matter_bin( src ) + new /obj/item/weapon/stock_parts/gear( src ) + new /obj/item/weapon/stock_parts/console_screen( src ) + new /obj/item/weapon/stock_parts/capacitor( src ) + new /obj/item/weapon/stock_parts/spring( src ) + new /obj/item/weapon/stock_parts/scanning_module( src ) + new /obj/item/weapon/stock_parts/motor( src ) + new /obj/item/weapon/stock_parts/micro_laser( src ) + new /obj/item/weapon/stock_parts/matter_bin( src ) + new /obj/item/weapon/stock_parts/gear( src ) + new /obj/item/weapon/stock_parts/console_screen( src ) + new /obj/item/weapon/stock_parts/capacitor( src ) + new /obj/item/weapon/stock_parts/spring( src ) + new /obj/item/weapon/stock_parts/scanning_module( src ) + new /obj/item/weapon/stock_parts/motor( src ) + new /obj/item/weapon/stock_parts/micro_laser( src ) + new /obj/item/weapon/stock_parts/matter_bin( src ) + new /obj/item/weapon/stock_parts/gear( src ) + new /obj/item/weapon/stock_parts/console_screen( src ) + new /obj/item/weapon/stock_parts/capacitor( src ) + new /obj/item/weapon/stock_parts/spring( src ) + new /obj/item/stack/cable_coil( src , 5 ) + new /obj/item/stack/material/glass/reinforced( src , 2 ) \ No newline at end of file diff --git a/code/game/objects/items/weapons/circuitboards/other.dm b/code/game/objects/items/weapons/circuitboards/other.dm index 6d016a96fa..da70371e4a 100644 --- a/code/game/objects/items/weapons/circuitboards/other.dm +++ b/code/game/objects/items/weapons/circuitboards/other.dm @@ -1,5 +1,5 @@ #ifndef T_BOARD -#error T_BOARD macro is not defined but we need it! +#error T_BOARD macro is not defined but we need it! #endif //Stuff that doesn't fit into any category goes here @@ -7,4 +7,4 @@ /obj/item/weapon/circuitboard/aicore name = T_BOARD("AI core") origin_tech = list(TECH_DATA = 4, TECH_BIO = 2) - board_type = "other" + board_type = "other" \ No newline at end of file diff --git a/code/game/objects/items/weapons/cosmetics.dm b/code/game/objects/items/weapons/cosmetics.dm index 218d2fb21c..d92ad00bab 100644 --- a/code/game/objects/items/weapons/cosmetics.dm +++ b/code/game/objects/items/weapons/cosmetics.dm @@ -77,7 +77,5 @@ icon_state = "purplecomb" item_state = "purplecomb" -/obj/item/weapon/haircomb/attack_self(mob/user) - if(user.r_hand == src || user.l_hand == src) - user.visible_message(text("[] uses [] to comb their hair with incredible style and sophistication. What a [].", user, src, user.gender == FEMALE ? "lady" : "guy")) - return +/obj/item/weapon/haircomb/attack_self(mob/living/user) + user.visible_message(text("[] uses [] to comb their hair with incredible style and sophistication. What a [].", user, src, user.gender == FEMALE ? "lady" : "guy")) diff --git a/code/game/objects/items/weapons/flamethrower.dm b/code/game/objects/items/weapons/flamethrower.dm index bbdd46cdb3..8cd4c373e9 100644 --- a/code/game/objects/items/weapons/flamethrower.dm +++ b/code/game/objects/items/weapons/flamethrower.dm @@ -39,8 +39,8 @@ return null var/turf/location = loc if(istype(location, /mob/)) - var/mob/M = location - if(M.l_hand == src || M.r_hand == src) + var/mob/living/M = location + if(M.item_is_in_hands(src)) location = M.loc if(isturf(location)) //start a fire if possible location.hotspot_expose(700, 2) diff --git a/code/game/objects/items/weapons/gift_wrappaper.dm b/code/game/objects/items/weapons/gift_wrappaper.dm index 43b58a1726..73c198c8ab 100644 --- a/code/game/objects/items/weapons/gift_wrappaper.dm +++ b/code/game/objects/items/weapons/gift_wrappaper.dm @@ -125,12 +125,12 @@ icon_state = "wrap_paper" var/amount = 20.0 -/obj/item/weapon/wrapping_paper/attackby(obj/item/weapon/W as obj, mob/user as mob) +/obj/item/weapon/wrapping_paper/attackby(obj/item/weapon/W as obj, mob/living/user as mob) ..() if (!( locate(/obj/structure/table, src.loc) )) user << "You MUST put the paper on a table!" if (W.w_class < 4) - if ((istype(user.l_hand, /obj/item/weapon/wirecutters) || istype(user.r_hand, /obj/item/weapon/wirecutters))) + if (user.get_type_in_hands(/obj/item/weapon/wirecutters)) var/a_used = 2 ** (src.w_class - 1) if (src.amount < a_used) user << "You need more paper!" diff --git a/code/game/objects/items/weapons/implants/implantpad.dm b/code/game/objects/items/weapons/implants/implantpad.dm index 476ed726cd..a6feac2998 100644 --- a/code/game/objects/items/weapons/implants/implantpad.dm +++ b/code/game/objects/items/weapons/implants/implantpad.dm @@ -24,8 +24,8 @@ return - attack_hand(mob/user as mob) - if ((src.case && (user.l_hand == src || user.r_hand == src))) + attack_hand(mob/living/user as mob) + if ((src.case && user.item_is_in_hands(src))) user.put_in_active_hand(case) src.case.add_fingerprint(user) diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm index 2c11456b70..b404b69f0b 100644 --- a/code/game/objects/items/weapons/material/twohanded.dm +++ b/code/game/objects/items/weapons/material/twohanded.dm @@ -29,7 +29,7 @@ /obj/item/weapon/material/twohanded/update_held_icon() var/mob/living/M = loc - if(istype(M) && !issmall(M) && ((M.r_hand == src && !M.l_hand) || (M.l_hand == src && !M.r_hand))) + if(istype(M) && !issmall(M) && M.item_is_in_hands(src) && !M.hands_are_full()) wielded = 1 force = force_wielded name = "[base_name] (wielded)" diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm index 6a236e1b8f..ac8da3d835 100644 --- a/code/game/objects/items/weapons/melee/energy.dm +++ b/code/game/objects/items/weapons/melee/energy.dm @@ -214,7 +214,7 @@ spawn(1) if(src) qdel(src) /obj/item/weapon/melee/energy/blade/process() - if(!creator || loc != creator || (creator.l_hand != src && creator.r_hand != src)) + if(!creator || loc != creator || !creator.item_is_in_hands(src)) // Tidy up a bit. if(istype(loc,/mob/living)) var/mob/living/carbon/human/host = loc diff --git a/code/game/objects/items/weapons/mop_deploy.dm b/code/game/objects/items/weapons/mop_deploy.dm index 66ae01797e..e50f82966b 100644 --- a/code/game/objects/items/weapons/mop_deploy.dm +++ b/code/game/objects/items/weapons/mop_deploy.dm @@ -59,7 +59,7 @@ spawn(1) if(src) del(src) /obj/item/weapon/mop_deploy/process() - if(!creator || loc != creator || (creator.l_hand != src && creator.r_hand != src)) + if(!creator || loc != creator || !creator.item_is_in_hands(src)) // Tidy up a bit. if(istype(loc,/mob/living)) var/mob/living/carbon/human/host = loc diff --git a/code/game/objects/items/weapons/storage/laundry_basket.dm b/code/game/objects/items/weapons/storage/laundry_basket.dm index 92dd28c61a..ffb4867ca6 100644 --- a/code/game/objects/items/weapons/storage/laundry_basket.dm +++ b/code/game/objects/items/weapons/storage/laundry_basket.dm @@ -21,7 +21,7 @@ var/linked -/obj/item/weapon/storage/laundry_basket/attack_hand(mob/user as mob) +/obj/item/weapon/storage/laundry_basket/attack_hand(mob/living/user as mob) if(ishuman(user)) var/mob/living/carbon/human/H = user var/obj/item/organ/external/temp = H.get_organ("r_hand") diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 0a5b1ec686..a79d6575e5 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -173,7 +173,7 @@ user << text("\icon[] [] contains []/[] units of fuel!", src, src.name, get_fuel(),src.max_fuel ) -/obj/item/weapon/weldingtool/attackby(obj/item/W as obj, mob/user as mob) +/obj/item/weapon/weldingtool/attackby(obj/item/W as obj, mob/living/user as mob) if(istype(W,/obj/item/weapon/screwdriver)) if(welding) user << "Stop welding first!" @@ -222,9 +222,9 @@ //I'm not sure what this does. I assume it has to do with starting fires... //...but it doesnt check to see if the welder is on or not. var/turf/location = src.loc - if(istype(location, /mob/)) - var/mob/M = location - if(M.l_hand == src || M.r_hand == src) + if(istype(location, /mob/living)) + var/mob/living/M = location + if(M.item_is_in_hands(src)) location = get_turf(M) if (istype(location, /turf)) location.hotspot_expose(700, 5) diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index fa4fa27f75..bc10bc4359 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -90,11 +90,12 @@ // check for TK users if (istype(usr, /mob/living/carbon/human)) - if(istype(usr.l_hand, /obj/item/tk_grab) || istype(usr.r_hand, /obj/item/tk_grab/)) - if(!(usr in nearby)) - if(usr.client && usr.machine==src) + var/mob/living/carbon/human/H = usr + if(H.get_type_in_hands(/obj/item/tk_grab)) + if(!(H in nearby)) + if(H.client && H.machine==src) is_in_use = 1 - src.attack_hand(usr) + src.attack_hand(H) in_use = is_in_use /obj/proc/updateDialog() diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index fcbe9e9060..0a3ca35122 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -297,6 +297,7 @@ new /obj/item/taperoll/police(src) new /obj/item/weapon/gun/projectile/colt/detective(src) new /obj/item/clothing/accessory/holster/armpit(src) + new /obj/item/device/flashlight/maglight(src) return /obj/structure/closet/secure_closet/detective/update_icon() diff --git a/code/game/objects/structures/curtains.dm b/code/game/objects/structures/curtains.dm index cc67d80ac3..fd3427e21e 100644 --- a/code/game/objects/structures/curtains.dm +++ b/code/game/objects/structures/curtains.dm @@ -35,6 +35,21 @@ icon_state = "open" layer = SHOWER_OPEN_LAYER +/obj/structure/curtain/attackby(obj/item/P, mob/user) + if(istype(P, /obj/item/weapon/wirecutters)) + playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + user << "You start to cut the shower curtains." + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 10)) + user << "You cut the shower curtains." + var/obj/item/stack/material/plastic/A = new /obj/item/stack/material/plastic( src.loc ) + A.amount = 3 + qdel(src) + return + else + src.attack_hand(user) + return + /obj/structure/curtain/black name = "black curtain" color = "#222222" diff --git a/code/game/objects/structures/extinguisher.dm b/code/game/objects/structures/extinguisher.dm index c8ccd4b32b..dcc0270abc 100644 --- a/code/game/objects/structures/extinguisher.dm +++ b/code/game/objects/structures/extinguisher.dm @@ -8,9 +8,19 @@ var/obj/item/weapon/extinguisher/has_extinguisher var/opened = 0 -/obj/structure/extinguisher_cabinet/New() +/obj/structure/extinguisher_cabinet/New(var/loc, var/dir, var/building = 0) ..() - has_extinguisher = new/obj/item/weapon/extinguisher(src) + + if(building) + if(loc) + src.loc = loc + + pixel_x = (dir & 3)? 0 : (dir == 4 ? -27 : 27) + pixel_y = (dir & 3)? (dir ==1 ? -27 : 27) : 0 + update_icon() + return + else + has_extinguisher = new/obj/item/weapon/extinguisher(src) /obj/structure/extinguisher_cabinet/attackby(obj/item/O, mob/user) if(isrobot(user)) @@ -23,12 +33,21 @@ user << "You place [O] in [src]." else opened = !opened + if(istype(O, /obj/item/weapon/wrench)) + if(!has_extinguisher) + user << "You start to unwrench the extinguisher cabinet." + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 15)) + user << "You unwrench the extinguisher cabinet." + new /obj/item/frame/extinguisher_cabinet( src.loc ) + qdel(src) + return else opened = !opened update_icon() -/obj/structure/extinguisher_cabinet/attack_hand(mob/user) +/obj/structure/extinguisher_cabinet/attack_hand(mob/living/user) if(isrobot(user)) return if (ishuman(user)) diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index 17957cc589..b3ad998895 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -107,7 +107,7 @@ if(!isliving(usr)) return var/mob/living/user = usr - + if(href_list["take"]) switch(href_list["take"]) if("garbage") @@ -213,10 +213,10 @@ ..() -/obj/structure/bed/chair/janicart/relaymove(mob/user, direction) +/obj/structure/bed/chair/janicart/relaymove(mob/living/user, direction) if(user.stat || user.stunned || user.weakened || user.paralysis) unbuckle_mob() - if(istype(user.l_hand, /obj/item/key) || istype(user.r_hand, /obj/item/key)) + if(user.get_type_in_hands(/obj/item/key)) step(src, direction) update_mob() else diff --git a/code/game/objects/structures/mirror.dm b/code/game/objects/structures/mirror.dm index 88e771f8ed..a8747e07ec 100644 --- a/code/game/objects/structures/mirror.dm +++ b/code/game/objects/structures/mirror.dm @@ -8,9 +8,18 @@ anchored = 1 var/shattered = 0 var/list/ui_users = list() + var/glass = 1 + +/obj/structure/mirror/New(var/loc, var/dir, var/building = 0, mob/user as mob) + if(building) + glass = 0 + icon_state = "mirror_frame" + pixel_x = (dir & 3)? 0 : (dir == 4 ? -28 : 28) + pixel_y = (dir & 3)? (dir == 1 ? -30 : 30) : 0 + return /obj/structure/mirror/attack_hand(mob/user as mob) - + if(!glass) return if(shattered) return if(ishuman(user)) @@ -22,6 +31,7 @@ AC.ui_interact(user) /obj/structure/mirror/proc/shatter() + if(!glass) return if(shattered) return shattered = 1 icon_state = "mirror_broke" @@ -34,18 +44,57 @@ if(prob(Proj.get_structure_damage() * 2)) if(!shattered) shatter() - else + else if(glass) playsound(src, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1) ..() /obj/structure/mirror/attackby(obj/item/I as obj, mob/user as mob) - if(shattered) + if(istype(I, /obj/item/weapon/wrench)) + if(!glass) + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 20)) + user << "You unfasten the frame." + new /obj/item/frame/mirror( src.loc ) + qdel(src) + return + if(istype(I, /obj/item/weapon/crowbar)) + if(shattered && glass) + user << "The broken glass falls out." + icon_state = "mirror_frame" + glass = !glass + new /obj/item/weapon/material/shard( src.loc ) + return + if(!shattered && glass) + playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + user << "You remove the glass." + glass = !glass + icon_state = "mirror_frame" + new /obj/item/stack/material/glass( src.loc, 2 ) + return + + if(istype(I, /obj/item/stack/material/glass)) + if(!glass) + var/obj/item/stack/material/glass/G = I + if (G.get_amount() < 2) + user << "You need two sheets of glass to add them to the frame." + return + user << "You start to add the glass to the frame." + if(do_after(user, 20)) + if (G.use(2)) + shattered = 0 + glass = 1 + icon_state = "mirror" + user << "You add the glass to the frame." + return + + if(shattered && glass) playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1) return if(prob(I.force * 2)) visible_message("[user] smashes [src] with [I]!") - shatter() + if(glass) + shatter() else visible_message("[user] hits [src] with [I]!") playsound(src.loc, 'sound/effects/Glasshit.ogg', 70, 1) @@ -53,13 +102,14 @@ /obj/structure/mirror/attack_generic(var/mob/user, var/damage) user.do_attack_animation(src) - if(shattered) + if(shattered && glass) playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1) return 0 if(damage) user.visible_message("[user] smashes [src]!") - shatter() + if(glass) + shatter() else user.visible_message("[user] hits [src] and bounces off!") return 1 diff --git a/code/game/objects/structures/noticeboard.dm b/code/game/objects/structures/noticeboard.dm index 3647d565f7..174634e3cb 100644 --- a/code/game/objects/structures/noticeboard.dm +++ b/code/game/objects/structures/noticeboard.dm @@ -7,6 +7,18 @@ anchored = 1 var/notices = 0 +/obj/structure/noticeboard/New(var/loc, var/dir, var/building = 0) + ..() + + if(building) + if(loc) + src.loc = loc + + pixel_x = (dir & 3)? 0 : (dir == 4 ? -32 : 32) + pixel_y = (dir & 3)? (dir ==1 ? -27 : 27) : 0 + update_icon() + return + /obj/structure/noticeboard/initialize() for(var/obj/item/I in loc) if(notices > 4) break @@ -28,6 +40,14 @@ user << "You pin the paper to the noticeboard." else user << "You reach to pin your paper to the board but hesitate. You are certain your paper will not be seen among the many others already attached." + if(istype(O, /obj/item/weapon/wrench)) + user << "You start to unwrench the noticeboard." + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 15)) + user << "You unwrench the noticeboard." + new /obj/item/frame/noticeboard( src.loc ) + qdel(src) + return /obj/structure/noticeboard/attack_hand(var/mob/user) examine(user) @@ -64,15 +84,14 @@ return var/obj/item/P = locate(href_list["write"]) if((P && P.loc == src)) //ifthe paper's on the board - if(istype(usr.r_hand, /obj/item/weapon/pen)) //and you're holding a pen - add_fingerprint(usr) - P.attackby(usr.r_hand, usr) //then do ittttt - else - if(istype(usr.l_hand, /obj/item/weapon/pen)) //check other hand for pen - add_fingerprint(usr) - P.attackby(usr.l_hand, usr) + var/mob/living/M = usr + if(istype(M)) + var/obj/item/weapon/pen/E = M.get_type_in_hands(/obj/item/weapon/pen) + if(E) + add_fingerprint(M) + P.attackby(E, usr) else - usr << "You'll need something to write with!" + M << "You'll need something to write with!" if(href_list["read"]) var/obj/item/weapon/paper/P = locate(href_list["read"]) if((P && P.loc == src)) diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm index a3904f65a1..7003f4d3a2 100644 --- a/code/game/objects/structures/safe.dm +++ b/code/game/objects/structures/safe.dm @@ -90,7 +90,7 @@ FLOOR SAFES var/mob/living/carbon/human/user = usr var/canhear = 0 - if(istype(user.l_hand, /obj/item/clothing/accessory/stethoscope) || istype(user.r_hand, /obj/item/clothing/accessory/stethoscope)) + if(user.get_type_in_hands(/obj/item/clothing/accessory/stethoscope)) canhear = 1 if(href_list["open"]) diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index 8df5be2629..4ac596267d 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -358,7 +358,7 @@ if (ishuman(user)) var/mob/living/carbon/human/H = user var/obj/item/organ/external/temp = H.organs_by_name["r_hand"] - if (user.hand) + if (H.hand) temp = H.organs_by_name["l_hand"] if(temp && !temp.is_usable()) user << "You try to move your [temp.name], but cannot!" diff --git a/code/game/supplyshuttle.dm b/code/game/supplyshuttle.dm index cc91ee49a2..47a3c5a63e 100644 --- a/code/game/supplyshuttle.dm +++ b/code/game/supplyshuttle.dm @@ -55,6 +55,20 @@ var/list/mechtoys = list( /mob/living/silicon/robot/drone ) +/obj/structure/plasticflaps/attackby(obj/item/P, mob/user) + if(istype(P, /obj/item/weapon/wirecutters)) + playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + user << "You start to cut the plastic flaps." + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 10)) + user << "You cut the plastic flaps." + var/obj/item/stack/material/plastic/A = new /obj/item/stack/material/plastic( src.loc ) + A.amount = 4 + qdel(src) + return + else + return + /obj/structure/plasticflaps/CanPass(atom/A, turf/T) if(istype(A) && A.checkpass(PASSGLASS)) return prob(60) diff --git a/code/modules/assembly/mousetrap.dm b/code/modules/assembly/mousetrap.dm index c3c395f15a..b731905e5f 100644 --- a/code/modules/assembly/mousetrap.dm +++ b/code/modules/assembly/mousetrap.dm @@ -94,7 +94,7 @@ ..() - on_found(mob/finder as mob) + on_found(mob/living/finder as mob) if(armed) finder.visible_message("[finder] accidentally sets off [src], breaking their fingers.", \ "You accidentally trigger [src]!") diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index a8887c17f5..a15a6aeb55 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -76,7 +76,7 @@ var/turf/location = src.loc if(istype(location, /mob/)) var/mob/living/carbon/human/M = location - if(M.l_hand == src || M.r_hand == src || M.head == src) + if(M.item_is_in_hands(src) || M.head == src) location = M.loc if (istype(location, /turf)) diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index 214f63c223..ad83edfbc4 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -22,7 +22,7 @@ say_verbs = list("mumbles", "says") // Clumsy folks can't take the mask off themselves. -/obj/item/clothing/mask/muzzle/attack_hand(mob/user as mob) +/obj/item/clothing/mask/muzzle/attack_hand(mob/living/user as mob) if(user.wear_mask == src && !user.IsAdvancedToolUser()) return 0 ..() diff --git a/code/modules/clothing/spacesuits/rig/rig_attackby.dm b/code/modules/clothing/spacesuits/rig/rig_attackby.dm index c9526f1626..cda9d51796 100644 --- a/code/modules/clothing/spacesuits/rig/rig_attackby.dm +++ b/code/modules/clothing/spacesuits/rig/rig_attackby.dm @@ -1,6 +1,6 @@ -/obj/item/weapon/rig/attackby(obj/item/W as obj, mob/user as mob) +/obj/item/weapon/rig/attackby(obj/item/W as obj, mob/living/user as mob) - if(!istype(user,/mob/living)) return 0 + if(!istype(user)) return 0 if(electrified != 0) if(shock(user)) //Handles removing charge from the cell, as well. No need to do that here. diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index 41b0209e4d..f98f222b93 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -1,6 +1,6 @@ /obj/item/clothing/suit/armor - allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs) + allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/device/flashlight/maglight) body_parts_covered = UPPER_TORSO|LOWER_TORSO item_flags = THICKMATERIAL @@ -263,7 +263,7 @@ icon_state = "kvest" item_state = "kvest" armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 10, bio = 0, rad = 0) - allowed = list(/obj/item/weapon/gun,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs) + allowed = list(/obj/item/weapon/gun,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/device/flashlight/maglight) body_parts_covered = UPPER_TORSO|LOWER_TORSO item_flags = THICKMATERIAL diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index 3931b3ec67..8a3daf68ff 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -96,7 +96,7 @@ item_state = "det_suit" blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS - allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter,/obj/item/device/taperecorder) + allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter,/obj/item/device/taperecorder,/obj/item/device/uv_light) armor = list(melee = 50, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/suit/storage/det_trench/grey @@ -109,7 +109,7 @@ desc = "A forensics technician jacket." item_state = "det_suit" body_parts_covered = UPPER_TORSO|ARMS - allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/device/taperecorder) + allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/device/taperecorder,/obj/item/device/uv_light) armor = list(melee = 10, bullet = 10, laser = 15, energy = 10, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/suit/storage/forensics/red diff --git a/code/modules/detectivework/tools/evidencebag.dm b/code/modules/detectivework/tools/evidencebag.dm index 31c5b6a358..6aa4bdf99f 100644 --- a/code/modules/detectivework/tools/evidencebag.dm +++ b/code/modules/detectivework/tools/evidencebag.dm @@ -15,7 +15,7 @@ var/mob/living/carbon/human/user = usr - if (!(user.l_hand == src || user.r_hand == src)) + if(!user.item_is_in_hands(src)) return //bag must be in your hands to use if (isturf(I.loc)) @@ -31,10 +31,8 @@ var/obj/item/weapon/storage/U = I.loc user.client.screen -= I U.contents.Remove(I) - else if(user.l_hand == I) //in a hand - user.drop_l_hand() - else if(user.r_hand == I) //in a hand - user.drop_r_hand() + else if(user.item_is_in_hands(I)) + user.drop_from_inventory(I) else return diff --git a/code/modules/economy/ATM.dm b/code/modules/economy/ATM.dm index ce8c4e765d..bc0388d40d 100644 --- a/code/modules/economy/ATM.dm +++ b/code/modules/economy/ATM.dm @@ -22,6 +22,7 @@ log transactions anchored = 1 use_power = 1 idle_power_usage = 10 + circuit = /obj/item/weapon/circuitboard/atm var/datum/money_account/authenticated_account var/number_incorrect_tries = 0 var/previous_account_number = 0 @@ -79,6 +80,25 @@ log transactions return 1 /obj/machinery/atm/attackby(obj/item/I as obj, mob/user as mob) + if(istype(I, /obj/item/weapon/screwdriver) && circuit) + user << "You start disconnecting the monitor." + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + if(do_after(user, 20)) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.frame_type = "atm" + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.circuit = M + A.anchored = 1 + for (var/obj/C in src) + C.forceMove(loc) + user << "You disconnect the monitor." + A.state = 4 + A.icon_state = "atm_4" + M.deconstruct(src) + qdel(src) + return if(istype(I, /obj/item/weapon/card)) if(emagged > 0) //prevent inserting id into an emagged ATM diff --git a/code/modules/events/prison_break.dm b/code/modules/events/prison_break.dm index d10659e24e..5173236627 100644 --- a/code/modules/events/prison_break.dm +++ b/code/modules/events/prison_break.dm @@ -61,9 +61,12 @@ /datum/event/prison_break/tick() if(activeFor == releaseWhen) if(areas && areas.len > 0) + var/obj/machinery/power/apc/theAPC = null for(var/area/A in areas) - for(var/obj/machinery/light/L in A) - L.flicker(10) + theAPC = A.get_apc() + if(theAPC.operating) //If the apc's off, it's a little hard to overload the lights. + for(var/obj/machinery/light/L in A) + L.flicker(10) /datum/event/prison_break/end() diff --git a/code/modules/games/cards.dm b/code/modules/games/cards.dm index 1ea1a9a356..1b353e3407 100644 --- a/code/modules/games/cards.dm +++ b/code/modules/games/cards.dm @@ -77,12 +77,8 @@ usr << "There are no cards in the deck." return - var/obj/item/weapon/hand/H - if(user.l_hand && istype(user.l_hand,/obj/item/weapon/hand)) - H = user.l_hand - else if(user.r_hand && istype(user.r_hand,/obj/item/weapon/hand)) - H = user.r_hand - else + var/obj/item/weapon/hand/H = user.get_type_in_hands(/obj/item/weapon/hand) + if(!H) H = new(get_turf(src)) user.put_in_hands(H) diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 160dec82f4..608398a039 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -172,7 +172,7 @@ if(seed) seed.thrown_at(src,hit_atom) ..() -/obj/item/weapon/reagent_containers/food/snacks/grown/attackby(var/obj/item/weapon/W, var/mob/user) +/obj/item/weapon/reagent_containers/food/snacks/grown/attackby(var/obj/item/weapon/W, var/mob/living/user) if(seed) if(seed.get_trait(TRAIT_PRODUCES_POWER) && istype(W, /obj/item/stack/cable_coil)) @@ -181,7 +181,7 @@ //TODO: generalize this. user << "You add some cable to the [src.name] and slide it inside the battery casing." var/obj/item/weapon/cell/potato/pocell = new /obj/item/weapon/cell/potato(get_turf(user)) - if(src.loc == user && !(user.l_hand && user.r_hand) && istype(user,/mob/living/carbon/human)) + if(src.loc == user && istype(user,/mob/living/carbon/human)) user.put_in_hands(pocell) pocell.maxcharge = src.potency * 10 pocell.charge = pocell.maxcharge diff --git a/code/modules/hydroponics/seed.dm b/code/modules/hydroponics/seed.dm index 0dc46f9e35..0974a705ce 100644 --- a/code/modules/hydroponics/seed.dm +++ b/code/modules/hydroponics/seed.dm @@ -150,7 +150,7 @@ var/body_coverage = HEAD|FACE|EYES|UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS for(var/obj/item/clothing/clothes in target) - if(target.l_hand == clothes|| target.r_hand == clothes) + if(target.item_is_in_hands(clothes)) continue body_coverage &= ~(clothes.body_parts_covered) @@ -182,7 +182,7 @@ continue var/body_coverage = HEAD|FACE|EYES|UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS for(var/obj/item/clothing/clothes in M) - if(M.l_hand == clothes || M.r_hand == clothes) + if(M.item_is_in_hands(clothes)) continue body_coverage &= ~(clothes.body_parts_covered) if(!body_coverage) diff --git a/code/modules/hydroponics/seed_machines.dm b/code/modules/hydroponics/seed_machines.dm index b1d3134344..015ab88ccb 100644 --- a/code/modules/hydroponics/seed_machines.dm +++ b/code/modules/hydroponics/seed_machines.dm @@ -94,16 +94,10 @@ user << "You load [W] into [src]." return - if(istype(W,/obj/item/weapon/screwdriver)) - open = !open - user << "You [open ? "open" : "close"] the maintenance panel." + if(default_deconstruction_screwdriver(user, W)) + return + if(default_deconstruction_crowbar(user, W)) return - - if(open) - if(istype(W, /obj/item/weapon/crowbar)) - dismantle() - return - if(istype(W,/obj/item/weapon/disk/botany)) if(loaded_disk) user << "There is already a data disk loaded." diff --git a/code/modules/hydroponics/trays/tray_tools.dm b/code/modules/hydroponics/trays/tray_tools.dm index 1a76ad22fd..856af9b3e8 100644 --- a/code/modules/hydroponics/trays/tray_tools.dm +++ b/code/modules/hydroponics/trays/tray_tools.dm @@ -34,7 +34,7 @@ var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(get_turf(src)) P.name = "paper - [form_title]" P.info = "[last_data]" - if(istype(user,/mob/living/carbon/human) && !(user.l_hand && user.r_hand)) + if(istype(user,/mob/living/carbon/human)) user.put_in_hands(P) user.visible_message("\The [src] spits out a piece of paper.") return diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index 13caccfba0..3dbb74d933 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -45,7 +45,7 @@ user << "You begin dismantling \the [src]." if(do_after(user,25)) user << "You dismantle \the [src]." - new /obj/item/stack/material/wood(get_turf(src), amount = 3) + new /obj/item/stack/material/wood(get_turf(src), 3) for(var/obj/item/weapon/book/b in contents) b.loc = (get_turf(src)) qdel(src) diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index 18c96cf622..cf83cef983 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -47,9 +47,11 @@ recipes += new/datum/stack_recipe("cannon frame", /obj/item/weapon/cannonframe, 10, time = 15, one_per_turf = 0, on_floor = 0) recipes += new/datum/stack_recipe("regular floor tile", /obj/item/stack/tile/floor, 1, 4, 20) recipes += new/datum/stack_recipe("metal rod", /obj/item/stack/rods, 1, 2, 60) - recipes += new/datum/stack_recipe("computer frame", /obj/structure/computerframe, 5, time = 25, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("frame", /obj/item/frame, 5, time = 25, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("mirror frame", /obj/item/frame/mirror, 1, time = 5, one_per_turf = 0, on_floor = 1) + recipes += new/datum/stack_recipe("fire extinguisher cabinet frame", /obj/item/frame/extinguisher_cabinet, 4, time = 5, one_per_turf = 0, on_floor = 1) + //recipes += new/datum/stack_recipe("fire axe cabinet frame", /obj/item/frame/fireaxe_cabinet, 4, time = 5, one_per_turf = 0, on_floor = 1) recipes += new/datum/stack_recipe("wall girders", /obj/structure/girder, 2, time = 50, one_per_turf = 1, on_floor = 1) - recipes += new/datum/stack_recipe("machine frame", /obj/machinery/constructable_frame/machine_frame, 5, time = 25, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("turret frame", /obj/machinery/porta_turret_construct, 5, time = 25, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe_list("airlock assemblies", list( \ new/datum/stack_recipe("standard airlock assembly", /obj/structure/door_assembly, 4, time = 50, one_per_turf = 1, on_floor = 1), \ @@ -70,13 +72,17 @@ new/datum/stack_recipe("emergency shutter", /obj/structure/firedoor_assembly, 4, time = 50, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("multi-tile airlock assembly", /obj/structure/door_assembly/multi_tile, 4, time = 50, one_per_turf = 1, on_floor = 1), \ )) - + recipes += new/datum/stack_recipe("IV drip", /obj/machinery/iv_drip, 4, time = 20, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("conveyor switch", /obj/machinery/conveyor_switch, 2, time = 20, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("grenade casing", /obj/item/weapon/grenade/chem_grenade) recipes += new/datum/stack_recipe("light fixture frame", /obj/item/frame/light, 2) recipes += new/datum/stack_recipe("small light fixture frame", /obj/item/frame/light/small, 1) recipes += new/datum/stack_recipe("apc frame", /obj/item/frame/apc, 2) - recipes += new/datum/stack_recipe("air alarm frame", /obj/item/frame/air_alarm, 2) - recipes += new/datum/stack_recipe("fire alarm frame", /obj/item/frame/fire_alarm, 2) + recipes += new/datum/stack_recipe_list("filing cabinets", list( \ + new/datum/stack_recipe("filing cabinet", /obj/structure/filingcabinet, 4, time = 20, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("tall filing cabinet", /obj/structure/filingcabinet/filingcabinet, 4, time = 20, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("chest drawer", /obj/structure/filingcabinet/chestdrawer, 4, time = 20, one_per_turf = 1, on_floor = 1), \ + )) /material/plasteel/generate_recipes() ..() @@ -84,6 +90,7 @@ recipes += new/datum/stack_recipe("Metal crate", /obj/structure/closet/crate, 10, time = 50, one_per_turf = 1) recipes += new/datum/stack_recipe("knife grip", /obj/item/weapon/material/butterflyhandle, 4, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("dark floor tile", /obj/item/stack/tile/floor_dark, 1, 4, 20) + recipes += new/datum/stack_recipe("roller bed", /obj/item/roller, 5, time = 30, on_floor = 1) /material/sandstone/generate_recipes() ..() @@ -99,6 +106,10 @@ recipes += new/datum/stack_recipe("reagent dispenser cartridge (small)", /obj/item/weapon/reagent_containers/chem_disp_cartridge/small, 1, on_floor=0) // 100u recipes += new/datum/stack_recipe("white floor tile", /obj/item/stack/tile/floor_white, 1, 4, 20) recipes += new/datum/stack_recipe("freezer floor tile", /obj/item/stack/tile/floor_freezer, 1, 4, 20) + recipes += new/datum/stack_recipe("shower curtain", /obj/structure/curtain, 4, time = 15, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("plastic flaps", /obj/structure/plasticflaps, 4, time = 25, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("airtight plastic flaps", /obj/structure/plasticflaps/mining, 5, time = 25, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("water-cooler", /obj/structure/reagent_dispensers/water_cooler, 4, time = 1, one_per_turf = 1, on_floor = 1) /material/wood/generate_recipes() ..() @@ -110,6 +121,7 @@ recipes += new/datum/stack_recipe("beehive assembly", /obj/item/beehive_assembly, 4) recipes += new/datum/stack_recipe("beehive frame", /obj/item/honey_frame, 1) recipes += new/datum/stack_recipe("book shelf", /obj/structure/bookcase, 5, time = 15, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("noticeboard frame", /obj/item/frame/noticeboard, 4, time = 5, one_per_turf = 0, on_floor = 1) /material/cardboard/generate_recipes() ..() diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 760303ac23..25edc57728 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -128,7 +128,7 @@ var/list/name_to_material S.add_fingerprint(user) S.add_to_stacks(user) -/material/proc/build_wired_product(var/mob/user, var/obj/item/stack/used_stack, var/obj/item/stack/target_stack) +/material/proc/build_wired_product(var/mob/living/user, var/obj/item/stack/used_stack, var/obj/item/stack/target_stack) if(!wire_product) user << "You cannot make anything out of \the [target_stack]" return @@ -140,8 +140,7 @@ var/list/name_to_material target_stack.use(1) user << "You attach wire to the [name]." var/obj/item/product = new wire_product(get_turf(user)) - if(!(user.l_hand && user.r_hand)) - user.put_in_hands(product) + user.put_in_hands(product) // Make sure we have a display name and shard icon even if they aren't explicitly set. /material/New() diff --git a/code/modules/mining/drilling/drill.dm b/code/modules/mining/drilling/drill.dm index 381072871f..baa3306c88 100644 --- a/code/modules/mining/drilling/drill.dm +++ b/code/modules/mining/drilling/drill.dm @@ -9,6 +9,7 @@ name = "mining drill head" desc = "An enormous drill." icon_state = "mining_drill" + circuit = /obj/item/weapon/circuitboard/miningdrill var/braces_needed = 2 var/list/supports = list() var/supported = 0 @@ -43,7 +44,6 @@ ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/miningdrill(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/capacitor(src) component_parts += new /obj/item/weapon/stock_parts/micro_laser(src) diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 7a2783767b..8e9155d044 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -172,10 +172,9 @@ var/list/mining_overlay_cache = list() if(istype(AM,/mob/living/carbon/human)) var/mob/living/carbon/human/H = AM - if((istype(H.l_hand,/obj/item/weapon/pickaxe)) && (!H.hand)) - attackby(H.l_hand,H) - else if((istype(H.r_hand,/obj/item/weapon/pickaxe)) && H.hand) - attackby(H.r_hand,H) + var/obj/item/weapon/pickaxe/P = H.get_inactive_hand() + if(istype(P)) + src.attackby(P, H) else if(istype(AM,/mob/living/silicon/robot)) var/mob/living/silicon/robot/R = AM diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index 77eedec900..d5fde7978d 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -1,43 +1,3 @@ -//This proc is called whenever someone clicks an inventory ui slot. -/mob/proc/attack_ui(slot) - var/obj/item/W = get_active_hand() - if(istype(W)) - equip_to_slot_if_possible(W, slot) - -/mob/proc/put_in_any_hand_if_possible(obj/item/W as obj, del_on_fail = 0, disable_warning = 1, redraw_mob = 1) - if(equip_to_slot_if_possible(W, slot_l_hand, del_on_fail, disable_warning, redraw_mob)) - return 1 - else if(equip_to_slot_if_possible(W, slot_r_hand, del_on_fail, disable_warning, redraw_mob)) - return 1 - return 0 - -//This is a SAFE proc. Use this instead of equip_to_slot()! -//set del_on_fail to have it delete W if it fails to equip -//set disable_warning to disable the 'you are unable to equip that' warning. -//unset redraw_mob to prevent the mob from being redrawn at the end. -/mob/proc/equip_to_slot_if_possible(obj/item/W as obj, slot, del_on_fail = 0, disable_warning = 0, redraw_mob = 1) - if(!istype(W)) return 0 - - if(!W.mob_can_equip(src, slot)) - if(del_on_fail) - qdel(W) - else - if(!disable_warning) - src << "\red You are unable to equip that." //Only print if del_on_fail is false - return 0 - - equip_to_slot(W, slot, redraw_mob) //This proc should not ever fail. - return 1 - -//This is an UNSAFE proc. It merely handles the actual job of equipping. All the checks on whether you can or can't eqip need to be done before! Use mob_can_equip() for that task. -//In most cases you will want to use equip_to_slot_if_possible() -/mob/proc/equip_to_slot(obj/item/W as obj, slot) - return - -//This is just a commonly used configuration for the equip_to_slot_if_possible() proc, used to equip people when the rounds tarts and when events happen and such. -/mob/proc/equip_to_slot_or_del(obj/item/W as obj, slot) - return equip_to_slot_if_possible(W, slot, 1, 1, 0) - //The list of slots by priority. equip_to_appropriate_slot() uses this list. Doesn't matter if a mob type doesn't have a slot. var/list/slot_equipment_priority = list( \ slot_back,\ @@ -58,6 +18,49 @@ var/list/slot_equipment_priority = list( \ slot_r_store\ ) +/mob + var/obj/item/weapon/storage/s_active = null // Even ghosts can/should be able to peek into boxes on the ground + +//This proc is called whenever someone clicks an inventory ui slot. +/mob/proc/attack_ui(var/slot) + var/obj/item/W = get_active_hand() + if(istype(W)) + equip_to_slot_if_possible(W, slot) + +/* Inventory manipulation */ + +/mob/proc/put_in_any_hand_if_possible(obj/item/W as obj, del_on_fail = 0, disable_warning = 1, redraw_mob = 1) + if(equip_to_slot_if_possible(W, slot_l_hand, del_on_fail, disable_warning, redraw_mob)) + return 1 + else if(equip_to_slot_if_possible(W, slot_r_hand, del_on_fail, disable_warning, redraw_mob)) + return 1 + return 0 + +//This is a SAFE proc. Use this instead of equip_to_slot()! +//set del_on_fail to have it delete W if it fails to equip +//set disable_warning to disable the 'you are unable to equip that' warning. +//unset redraw_mob to prevent the mob from being redrawn at the end. +/mob/proc/equip_to_slot_if_possible(obj/item/W as obj, slot, del_on_fail = 0, disable_warning = 0, redraw_mob = 1) + if(!W.mob_can_equip(src, slot)) + if(del_on_fail) + qdel(W) + else + if(!disable_warning) + src << "\red You are unable to equip that." //Only print if del_on_fail is false + return 0 + + equip_to_slot(W, slot, redraw_mob) //This proc should not ever fail. + return 1 + +//This is an UNSAFE proc. It merely handles the actual job of equipping. All the checks on whether you can or can't eqip need to be done before! Use mob_can_equip() for that task. +//In most cases you will want to use equip_to_slot_if_possible() +/mob/proc/equip_to_slot(obj/item/W as obj, slot) + return + +//This is just a commonly used configuration for the equip_to_slot_if_possible() proc, used to equip people when the rounds tarts and when events happen and such. +/mob/proc/equip_to_slot_or_del(obj/item/W as obj, slot) + return equip_to_slot_if_possible(W, slot, 1, 1, 0) + //Checks if a given slot can be accessed at this time, either to equip or unequip I /mob/proc/slot_is_accessible(var/slot, var/obj/item/I, mob/user=null) return 1 @@ -65,8 +68,6 @@ var/list/slot_equipment_priority = list( \ //puts the item "W" into an appropriate slot in a human's inventory //returns 0 if it cannot, 1 if successful /mob/proc/equip_to_appropriate_slot(obj/item/W) - if(!istype(W)) return 0 - for(var/slot in slot_equipment_priority) if(equip_to_slot_if_possible(W, slot, del_on_fail=0, disable_warning=1, redraw_mob=1)) return 1 @@ -74,32 +75,15 @@ var/list/slot_equipment_priority = list( \ return 0 /mob/proc/equip_to_storage(obj/item/newitem) - // Try put it in their backpack - if(istype(src.back,/obj/item/weapon/storage)) - var/obj/item/weapon/storage/backpack = src.back - if(backpack.contents.len < backpack.storage_slots) - newitem.forceMove(src.back) - return 1 - - // Try to place it in any item that can store stuff, on the mob. - for(var/obj/item/weapon/storage/S in src.contents) - if (S.contents.len < S.storage_slots) - newitem.forceMove(S) - return 1 return 0 -//These procs handle putting s tuff in your hand. It's probably best to use these rather than setting l_hand = ...etc -//as they handle all relevant stuff like adding it to the player's screen and updating their overlays. +/* Hands */ //Returns the thing in our active hand /mob/proc/get_active_hand() - if(hand) return l_hand - else return r_hand //Returns the thing in our inactive hand /mob/proc/get_inactive_hand() - if(hand) return r_hand - else return l_hand //Puts the item into your l_hand if possible and calls all necessary triggers/updates. returns 1 on success. /mob/proc/put_in_l_hand(var/obj/item/W) @@ -150,16 +134,15 @@ var/list/slot_equipment_priority = list( \ //Drops the item in our left hand /mob/proc/drop_l_hand(var/atom/Target) - return drop_from_inventory(l_hand, Target) + return 0 //Drops the item in our right hand /mob/proc/drop_r_hand(var/atom/Target) - return drop_from_inventory(r_hand, Target) + return 0 //Drops the item in our active hand. TODO: rename this to drop_active_hand or something /mob/proc/drop_item(var/atom/Target) - if(hand) return drop_l_hand(Target) - else return drop_r_hand(Target) + return /* Removes the object from any slots the mob might have, calling the appropriate icon update proc. @@ -173,19 +156,6 @@ var/list/slot_equipment_priority = list( \ the search through all the slots, without having to duplicate the rest of the item dropping. */ /mob/proc/u_equip(obj/W as obj) - if (W == r_hand) - r_hand = null - update_inv_r_hand(0) - else if (W == l_hand) - l_hand = null - update_inv_l_hand(0) - else if (W == back) - back = null - update_inv_back(0) - else if (W == wear_mask) - wear_mask = null - update_inv_wear_mask(0) - return /mob/proc/isEquipped(obj/item/I) if(!I) @@ -229,11 +199,6 @@ var/list/slot_equipment_priority = list( \ //Returns the item equipped to the specified slot, if any. /mob/proc/get_equipped_item(var/slot) - switch(slot) - if(slot_l_hand) return l_hand - if(slot_r_hand) return r_hand - if(slot_back) return back - if(slot_wear_mask) return wear_mask return null //Outdated but still in use apparently. This should at least be a human proc. diff --git a/code/modules/mob/living/bot/floorbot.dm b/code/modules/mob/living/bot/floorbot.dm index 30e137c21a..783af91c65 100644 --- a/code/modules/mob/living/bot/floorbot.dm +++ b/code/modules/mob/living/bot/floorbot.dm @@ -288,7 +288,7 @@ /* Assembly */ -/obj/item/weapon/storage/toolbox/mechanical/attackby(var/obj/item/stack/tile/floor/T, mob/user as mob) +/obj/item/weapon/storage/toolbox/mechanical/attackby(var/obj/item/stack/tile/floor/T, mob/living/user as mob) if(!istype(T, /obj/item/stack/tile/floor)) ..() return diff --git a/code/modules/mob/living/carbon/alien/diona/diona_attacks.dm b/code/modules/mob/living/carbon/alien/diona/diona_attacks.dm index b9338f361f..9bf9e62dfb 100644 --- a/code/modules/mob/living/carbon/alien/diona/diona_attacks.dm +++ b/code/modules/mob/living/carbon/alien/diona/diona_attacks.dm @@ -2,7 +2,7 @@ var/mob/living/carbon/human/H = over_object if(!istype(H) || !Adjacent(H)) return ..() - if(H.a_intent == "grab" && hat && !(H.l_hand && H.r_hand)) + if(H.a_intent == "grab" && hat && !H.hands_are_full()) hat.loc = get_turf(src) H.put_in_hands(hat) H.visible_message("\The [H] removes \the [src]'s [hat].") diff --git a/code/modules/mob/living/carbon/give.dm b/code/modules/mob/living/carbon/give.dm index 5c4be494ee..14c8efbbad 100644 --- a/code/modules/mob/living/carbon/give.dm +++ b/code/modules/mob/living/carbon/give.dm @@ -3,40 +3,40 @@ set name = "Give" // TODO : Change to incapacitated() on merge. - if(usr.stat || usr.lying || usr.resting || usr.buckled) + if(src.stat || src.lying || src.resting || src.buckled) return if(!istype(target) || target.stat || target.lying || target.resting || target.buckled || target.client == null) return - var/obj/item/I = usr.get_active_hand() + var/obj/item/I = src.get_active_hand() if(!I) - I = usr.get_inactive_hand() + I = src.get_inactive_hand() if(!I) - usr << "You don't have anything in your hands to give to \the [target]." + src << "You don't have anything in your hands to give to \the [target]." return - if(alert(target,"[usr] wants to give you \a [I]. Will you accept it?",,"No","Yes") == "No") - target.visible_message("\The [usr] tried to hand \the [I] to \the [target], \ + if(alert(target,"[src] wants to give you \a [I]. Will you accept it?",,"No","Yes") == "No") + target.visible_message("\The [src] tried to hand \the [I] to \the [target], \ but \the [target] didn't want it.") return if(!I) return if(!Adjacent(target)) - usr << "You need to stay in reaching distance while giving an object." - target << "\The [usr] moved too far away." + src << "You need to stay in reaching distance while giving an object." + target << "\The [src] moved too far away." return - if(I.loc != usr || (usr.l_hand != I && usr.r_hand != I)) - usr << "You need to keep the item in your hands." - target << "\The [usr] seems to have given up on passing \the [I] to you." + if(I.loc != src || !src.item_is_in_hands(I)) + src << "You need to keep the item in your hands." + target << "\The [src] seems to have given up on passing \the [I] to you." return - if(target.r_hand != null && target.l_hand != null) + if(target.hands_are_full()) target << "Your hands are full." - usr << "Their hands are full." + src << "Their hands are full." return - if(usr.unEquip(I)) + if(src.unEquip(I)) target.put_in_hands(I) // If this fails it will just end up on the floor, but that's fitting for things like dionaea. - target.visible_message("\The [usr] handed \the [I] to \the [target].") + target.visible_message("\The [src] handed \the [I] to \the [target].") diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 885d3e0866..87c0524571 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -538,9 +538,9 @@ if ("handshake") m_type = 1 if (!src.restrained() && !src.r_hand) - var/mob/M = null + var/mob/living/M = null if (param) - for (var/mob/A in view(1, null)) + for (var/mob/living/A in view(1, null)) if (param == A.name) M = A break diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 37034b29ca..74d8b54a93 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1115,9 +1115,11 @@ spawn(0) regenerate_icons() if(vessel.total_volume < species.blood_volume) + vessel.maximum_volume = species.blood_volume vessel.add_reagent("blood", species.blood_volume - vessel.total_volume) else if(vessel.total_volume > species.blood_volume) vessel.remove_reagent("blood", vessel.total_volume - species.blood_volume) + vessel.maximum_volume = species.blood_volume fixblood() // Rebuild the HUD. If they aren't logged in then login() should reinstantiate it for them. diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index a8222dc280..797b9b1fe6 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -207,7 +207,7 @@ var/covered = 0 // Basic coverage can help. for(var/obj/item/clothing/clothes in H) - if(H.l_hand == clothes|| H.r_hand == clothes) + if(H.item_is_in_hands(clothes)) continue if((clothes.body_parts_covered & UPPER_TORSO) && (clothes.body_parts_covered & LOWER_TORSO)) covered = 1 diff --git a/code/modules/mob/living/inventory.dm b/code/modules/mob/living/inventory.dm new file mode 100644 index 0000000000..1cd446eaec --- /dev/null +++ b/code/modules/mob/living/inventory.dm @@ -0,0 +1,172 @@ +/mob/living + var/hand = null + var/obj/item/l_hand = null + var/obj/item/r_hand = null + var/obj/item/weapon/back = null//Human/Monkey + var/obj/item/weapon/tank/internal = null//Human/Monkey + var/obj/item/clothing/mask/wear_mask = null//Carbon + +/mob/living/equip_to_storage(obj/item/newitem) + // Try put it in their backpack + if(istype(src.back,/obj/item/weapon/storage)) + var/obj/item/weapon/storage/backpack = src.back + if(backpack.contents.len < backpack.storage_slots) + newitem.forceMove(src.back) + return 1 + + // Try to place it in any item that can store stuff, on the mob. + for(var/obj/item/weapon/storage/S in src.contents) + if (S.contents.len < S.storage_slots) + newitem.forceMove(S) + return 1 + return 0 + +//Returns the thing in our active hand +/mob/living/get_active_hand() + if(hand) return l_hand + else return r_hand + +//Returns the thing in our inactive hand +/mob/living/get_inactive_hand() + if(hand) return r_hand + else return l_hand + +//Drops the item in our active hand. TODO: rename this to drop_active_hand or something +/mob/living/drop_item(var/atom/Target) + if(hand) return drop_l_hand(Target) + else return drop_r_hand(Target) + +//Drops the item in our left hand +/mob/living/drop_l_hand(var/atom/Target) + return drop_from_inventory(l_hand, Target) + +//Drops the item in our right hand +/mob/living/drop_r_hand(var/atom/Target) + return drop_from_inventory(r_hand, Target) + +/mob/living/proc/hands_are_full() + return (r_hand && l_hand) + +/mob/living/proc/item_is_in_hands(var/obj/item/I) + return (I == r_hand || I == l_hand) + +/mob/living/proc/update_held_icons() + if(l_hand) + l_hand.update_held_icon() + if(r_hand) + r_hand.update_held_icon() + +/mob/living/proc/get_type_in_hands(var/T) + if(istype(l_hand, T)) + return l_hand + if(istype(r_hand, T)) + return r_hand + return null + +/mob/living/proc/get_left_hand() + return l_hand + +/mob/living/proc/get_right_hand() + return r_hand + +/mob/living/u_equip(obj/W as obj) + if (W == r_hand) + r_hand = null + update_inv_r_hand(0) + else if (W == l_hand) + l_hand = null + update_inv_l_hand(0) + else if (W == back) + back = null + update_inv_back(0) + else if (W == wear_mask) + wear_mask = null + update_inv_wear_mask(0) + return + +/mob/living/get_equipped_item(var/slot) + switch(slot) + if(slot_l_hand) return l_hand + if(slot_r_hand) return r_hand + if(slot_back) return back + if(slot_wear_mask) return wear_mask + return null + +/mob/living/show_inv(mob/user as mob) + user.set_machine(src) + var/dat = {" +
[name]
+

+
Head(Mask): [(wear_mask ? wear_mask : "Nothing")] +
Left Hand: [(l_hand ? l_hand : "Nothing")] +
Right Hand: [(r_hand ? r_hand : "Nothing")] +
Back: [(back ? back : "Nothing")] [((istype(wear_mask, /obj/item/clothing/mask) && istype(back, /obj/item/weapon/tank) && !( internal )) ? text(" Set Internal", src) : "")] +
[(internal ? text("Remove Internal") : "")] +
Empty Pockets +
Refresh +
Close +
"} + user << browse(dat, text("window=mob[];size=325x500", name)) + onclose(user, "mob[name]") + return + +/mob/living/ret_grab(obj/effect/list_container/mobl/L as obj, flag) + if ((!( istype(l_hand, /obj/item/weapon/grab) ) && !( istype(r_hand, /obj/item/weapon/grab) ))) + if (!( L )) + return null + else + return L.container + else + if (!( L )) + L = new /obj/effect/list_container/mobl( null ) + L.container += src + L.master = src + if (istype(l_hand, /obj/item/weapon/grab)) + var/obj/item/weapon/grab/G = l_hand + if (!( L.container.Find(G.affecting) )) + L.container += G.affecting + if (G.affecting) + G.affecting.ret_grab(L, 1) + if (istype(r_hand, /obj/item/weapon/grab)) + var/obj/item/weapon/grab/G = r_hand + if (!( L.container.Find(G.affecting) )) + L.container += G.affecting + if (G.affecting) + G.affecting.ret_grab(L, 1) + if (!( flag )) + if (L.master == src) + var/list/temp = list( ) + temp += L.container + //L = null + qdel(L) + return temp + else + return L.container + return + +/mob/living/mode() + set name = "Activate Held Object" + set category = "Object" + set src = usr + + if(istype(loc,/obj/mecha)) return + + if(hand) + var/obj/item/W = l_hand + if (W) + W.attack_self(src) + update_inv_l_hand() + else + var/obj/item/W = r_hand + if (W) + W.attack_self(src) + update_inv_r_hand() + return + +/mob/living/abiotic(var/full_body = 0) + if(full_body && ((src.l_hand && !( src.l_hand.abstract )) || (src.r_hand && !( src.r_hand.abstract )) || (src.back || src.wear_mask))) + return 1 + + if((src.l_hand && !( src.l_hand.abstract )) || (src.r_hand && !( src.r_hand.abstract ))) + return 1 + return 0 diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 374ade2f21..70a3f4c3a2 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -865,3 +865,63 @@ default behaviour is: sleep(350) lastpuke = 0 +/mob/living/update_canmove() + if(!resting && cannot_stand() && can_stand_overridden()) + lying = 0 + canmove = 1 + else + if(istype(buckled, /obj/vehicle)) + var/obj/vehicle/V = buckled + if(cannot_stand()) + lying = 0 + canmove = 1 + pixel_y = V.mob_offset_y - 5 + else + if(buckled.buckle_lying != -1) lying = buckled.buckle_lying + canmove = 1 + pixel_y = V.mob_offset_y + else if(buckled) + anchored = 1 + canmove = 0 + if(istype(buckled)) + if(buckled.buckle_lying != -1) + lying = buckled.buckle_lying + if(buckled.buckle_movable) + anchored = 0 + canmove = 1 + + else if(cannot_stand()) + lying = 1 + canmove = 0 + else if(stunned) + canmove = 0 + else if(captured) + anchored = 1 + canmove = 0 + lying = 0 + else + lying = 0 + canmove = 1 + + if(lying) + density = 0 + if(l_hand) unEquip(l_hand) + if(r_hand) unEquip(r_hand) + else + density = initial(density) + + for(var/obj/item/weapon/grab/G in grabbed_by) + if(G.state >= GRAB_AGGRESSIVE) + canmove = 0 + break + + //Temporarily moved here from the various life() procs + //I'm fixing stuff incrementally so this will likely find a better home. + //It just makes sense for now. ~Carn + if( update_icon ) //forces a full overlay update + update_icon = 0 + regenerate_icons() + else if( lying != lying_prev ) + update_icons() + return canmove + 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 88f989f15e..977dfce221 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -11,8 +11,6 @@ //Has a list of items that it can hold. var/list/can_hold = list( /obj/item/weapon/cell, - /obj/item/weapon/firealarm_electronics, - /obj/item/weapon/airalarm_electronics, /obj/item/weapon/airlock_electronics, /obj/item/weapon/tracker_electronics, /obj/item/weapon/module/power_control, diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index 5340ee39fb..8b9271a40c 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -71,7 +71,7 @@ //Parrots will generally sit on their pertch unless something catches their eye. //These vars store their preffered perch and if they dont have one, what they can use as a perch var/obj/parrot_perch = null - var/obj/desired_perches = list(/obj/structure/computerframe, /obj/structure/displaycase, \ + var/obj/desired_perches = list(/obj/structure/frame, /obj/structure/displaycase, \ /obj/structure/filingcabinet, /obj/machinery/teleport, \ /obj/machinery/computer, /obj/machinery/clonepod, \ /obj/machinery/dna_scannernew, /obj/machinery/telecomms, \ diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index abcaf66ae6..fdbb295b94 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -195,21 +195,6 @@ /mob/proc/show_inv(mob/user as mob) - user.set_machine(src) - var/dat = {" -
[name]
-

-
Head(Mask): [(wear_mask ? wear_mask : "Nothing")] -
Left Hand: [(l_hand ? l_hand : "Nothing")] -
Right Hand: [(r_hand ? r_hand : "Nothing")] -
Back: [(back ? back : "Nothing")] [((istype(wear_mask, /obj/item/clothing/mask) && istype(back, /obj/item/weapon/tank) && !( internal )) ? text(" Set Internal", src) : "")] -
[(internal ? text("Remove Internal") : "")] -
Empty Pockets -
Refresh -
Close -
"} - user << browse(dat, text("window=mob[];size=325x500", name)) - onclose(user, "mob[name]") return //mob verbs are faster than object verbs. See http://www.byond.com/forum/?post=1326139&page=2#comment8198716 for why this isn't atom/verb/examine() @@ -248,37 +233,6 @@ /mob/proc/ret_grab(obj/effect/list_container/mobl/L as obj, flag) - if ((!( istype(l_hand, /obj/item/weapon/grab) ) && !( istype(r_hand, /obj/item/weapon/grab) ))) - if (!( L )) - return null - else - return L.container - else - if (!( L )) - L = new /obj/effect/list_container/mobl( null ) - L.container += src - L.master = src - if (istype(l_hand, /obj/item/weapon/grab)) - var/obj/item/weapon/grab/G = l_hand - if (!( L.container.Find(G.affecting) )) - L.container += G.affecting - if (G.affecting) - G.affecting.ret_grab(L, 1) - if (istype(r_hand, /obj/item/weapon/grab)) - var/obj/item/weapon/grab/G = r_hand - if (!( L.container.Find(G.affecting) )) - L.container += G.affecting - if (G.affecting) - G.affecting.ret_grab(L, 1) - if (!( flag )) - if (L.master == src) - var/list/temp = list( ) - temp += L.container - //L = null - qdel(L) - return temp - else - return L.container return /mob/verb/mode() @@ -286,18 +240,6 @@ set category = "Object" set src = usr - if(istype(loc,/obj/mecha)) return - - if(hand) - var/obj/item/W = l_hand - if (W) - W.attack_self(src) - update_inv_l_hand() - else - var/obj/item/W = r_hand - if (W) - W.attack_self(src) - update_inv_r_hand() return /* @@ -735,65 +677,6 @@ //Updates canmove, lying and icons. Could perhaps do with a rename but I can't think of anything to describe it. /mob/proc/update_canmove() - - if(!resting && cannot_stand() && can_stand_overridden()) - lying = 0 - canmove = 1 - else - if(istype(buckled, /obj/vehicle)) - var/obj/vehicle/V = buckled - if(cannot_stand()) - lying = 0 - canmove = 1 - pixel_y = V.mob_offset_y - 5 - else - if(buckled.buckle_lying != -1) lying = buckled.buckle_lying - canmove = 1 - pixel_y = V.mob_offset_y - else if(buckled) - anchored = 1 - canmove = 0 - if(istype(buckled)) - if(buckled.buckle_lying != -1) - lying = buckled.buckle_lying - if(buckled.buckle_movable) - anchored = 0 - canmove = 1 - - else if(cannot_stand()) - lying = 1 - canmove = 0 - else if(stunned) - canmove = 0 - else if(captured) - anchored = 1 - canmove = 0 - lying = 0 - else - lying = 0 - canmove = 1 - - if(lying) - density = 0 - if(l_hand) unEquip(l_hand) - if(r_hand) unEquip(r_hand) - else - density = initial(density) - - for(var/obj/item/weapon/grab/G in grabbed_by) - if(G.state >= GRAB_AGGRESSIVE) - canmove = 0 - break - - //Temporarily moved here from the various life() procs - //I'm fixing stuff incrementally so this will likely find a better home. - //It just makes sense for now. ~Carn - if( update_icon ) //forces a full overlay update - update_icon = 0 - regenerate_icons() - else if( lying != lying_prev ) - update_icons() - return canmove @@ -1007,8 +890,7 @@ mob/proc/yank_out_object() R.adjustFireLoss(10) selection.forceMove(get_turf(src)) - if(!(U.l_hand && U.r_hand)) - U.put_in_hands(selection) + U.put_in_hands(selection) for(var/obj/item/weapon/O in pinned) if(O == selection) diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index eaa88e6212..7eb32ea8db 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -60,7 +60,6 @@ var/next_move = null var/transforming = null //Carbon var/other = 0.0 - var/hand = null var/eye_blind = null //Carbon var/eye_blurry = null //Carbon var/ear_deaf = null //Carbon @@ -119,12 +118,6 @@ var/m_intent = "run"//Living var/lastKnownIP = null var/obj/buckled = null//Living - var/obj/item/l_hand = null//Living - var/obj/item/r_hand = null//Living - var/obj/item/weapon/back = null//Human/Monkey - var/obj/item/weapon/tank/internal = null//Human/Monkey - var/obj/item/weapon/storage/s_active = null//Carbon - var/obj/item/clothing/mask/wear_mask = null//Carbon var/seer = 0 //for cult//Carbon, probably Human diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm index c85b8d96a2..ec83ced425 100644 --- a/code/modules/mob/mob_grab.dm +++ b/code/modules/mob/mob_grab.dm @@ -5,8 +5,10 @@ ///Called by client/Move() ///Checks to see if you are grabbing anything and if moving will affect your grab. /client/proc/Process_Grab() - for(var/obj/item/weapon/grab/G in list(mob.l_hand, mob.r_hand)) - G.reset_kill_state() //no wandering across the station/asteroid while choking someone + if(istype(mob, /mob/living)) + var/mob/living/L = mob + for(var/obj/item/weapon/grab/G in list(L.l_hand, L.r_hand)) + G.reset_kill_state() //no wandering across the station/asteroid while choking someone /obj/item/weapon/grab name = "grab" diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 871215a519..316e0e2f30 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -288,12 +288,6 @@ It's fairly easy to fix if dealing with single letters but not so much with comp /mob/proc/abiotic(var/full_body = 0) - if(full_body && ((src.l_hand && !( src.l_hand.abstract )) || (src.r_hand && !( src.r_hand.abstract )) || (src.back || src.wear_mask))) - return 1 - - if((src.l_hand && !( src.l_hand.abstract )) || (src.r_hand && !( src.r_hand.abstract ))) - return 1 - return 0 //converts intent-strings into numbers and back diff --git a/code/modules/mob/update_icons.dm b/code/modules/mob/update_icons.dm index a6ae6dc4a0..ceca667c39 100644 --- a/code/modules/mob/update_icons.dm +++ b/code/modules/mob/update_icons.dm @@ -19,6 +19,15 @@ /mob/proc/update_inv_back() return +/mob/proc/update_inv_active_hand() + return + +/mob/living/update_inv_active_hand(var/A) + if(hand) + update_inv_l_hand(A) + else + update_inv_r_hand(A) + /mob/proc/update_inv_l_hand() return diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index e3452512d1..ac27e85841 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -98,7 +98,7 @@ if (2) take_damage(4) -/obj/item/organ/external/attack_self(var/mob/user) +/obj/item/organ/external/attack_self(var/mob/living/user) if(!contents.len) return ..() var/list/removable_objects = list() @@ -113,8 +113,7 @@ var/obj/item/I = pick(removable_objects) I.loc = get_turf(user) //just in case something was embedded that is not an item if(istype(I)) - if(!(user.l_hand && user.r_hand)) - user.put_in_hands(I) + user.put_in_hands(I) user.visible_message("\The [user] rips \the [I] out of \the [src]!") return //no eating the limb until everything's been removed return ..() @@ -128,7 +127,7 @@ usr << "There is \a [I] sticking out of it." return -/obj/item/organ/external/attackby(obj/item/weapon/W as obj, mob/user as mob) +/obj/item/organ/external/attackby(obj/item/weapon/W as obj, mob/living/user as mob) switch(stage) if(0) if(istype(W,/obj/item/weapon/scalpel)) @@ -145,8 +144,7 @@ if(contents.len) var/obj/item/removing = pick(contents) removing.loc = get_turf(user.loc) - if(!(user.l_hand && user.r_hand)) - user.put_in_hands(removing) + user.put_in_hands(removing) user.visible_message("[user] extracts [removing] from [src] with [W]!") else user.visible_message("[user] fishes around fruitlessly in [src] with [W].") diff --git a/code/modules/paperwork/faxmachine.dm b/code/modules/paperwork/faxmachine.dm index a7d489ba53..dc7ec84777 100644 --- a/code/modules/paperwork/faxmachine.dm +++ b/code/modules/paperwork/faxmachine.dm @@ -14,6 +14,7 @@ var/list/adminfaxes = list() //cache for faxes that have been sent to admins use_power = 1 idle_power_usage = 30 active_power_usage = 200 + frame_type = "fax" var/obj/item/weapon/card/id/scan = null // identification var/authenticated = 0 diff --git a/code/modules/paperwork/filingcabinet.dm b/code/modules/paperwork/filingcabinet.dm index 67eb5c9aeb..57691fed9b 100644 --- a/code/modules/paperwork/filingcabinet.dm +++ b/code/modules/paperwork/filingcabinet.dm @@ -17,12 +17,10 @@ density = 1 anchored = 1 - /obj/structure/filingcabinet/chestdrawer name = "chest drawer" icon_state = "chestdrawer" - /obj/structure/filingcabinet/filingcabinet //not changing the path to avoid unecessary map issues, but please don't name stuff like this in the future -Pete icon_state = "tallcabinet" @@ -46,6 +44,16 @@ playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) anchored = !anchored user << "You [anchored ? "wrench" : "unwrench"] \the [src]." + else if(istype(P, /obj/item/weapon/screwdriver)) + user << "You begin taking the [name] apart." + if(do_after(user, 10)) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You take the [name] apart." + new /obj/item/stack/material/steel( src.loc, 4 ) + for(var/obj/item/I in contents) + I.forceMove(loc) + qdel(src) + return else user << "You can't put [P] in [src]!" @@ -151,7 +159,7 @@ var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(src) P.info = "
Medical Record

" P.info += "Name: [G.fields["name"]] ID: [G.fields["id"]]
\nSex: [G.fields["sex"]]
\nAge: [G.fields["age"]]
\nFingerprint: [G.fields["fingerprint"]]
\nPhysical Status: [G.fields["p_stat"]]
\nMental Status: [G.fields["m_stat"]]
" - + P.info += "
\n
Medical Data

\nBlood Type: [M.fields["b_type"]]
\nDNA: [M.fields["b_dna"]]
\n
\nMinor Disabilities: [M.fields["mi_dis"]]
\nDetails: [M.fields["mi_dis_d"]]
\n
\nMajor Disabilities: [M.fields["ma_dis"]]
\nDetails: [M.fields["ma_dis_d"]]
\n
\nAllergies: [M.fields["alg"]]
\nDetails: [M.fields["alg_d"]]
\n
\nCurrent Diseases: [M.fields["cdi"]] (per disease info placed in log/comment section)
\nDetails: [M.fields["cdi_d"]]
\n
\nImportant Notes:
\n\t[M.fields["notes"]]
\n
\n
Comments/Log

" var/counter = 1 while(M.fields["com_[counter]"]) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index cc8feae5b2..bb4a9d1a23 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -337,8 +337,9 @@ var/obj/item/i = usr.get_active_hand() // Check to see if he still got that darn pen, also check if he's using a crayon or pen. var/iscrayon = 0 if(!istype(i, /obj/item/weapon/pen)) - if(usr.back && istype(usr.back,/obj/item/weapon/rig)) - var/obj/item/weapon/rig/r = usr.back + var/mob/living/M = usr + if(istype(M) && M.back && istype(M.back,/obj/item/weapon/rig)) + var/obj/item/weapon/rig/r = M.back var/obj/item/rig_module/device/pen/m = locate(/obj/item/rig_module/device/pen) in r.installed_modules if(!r.offline && m) i = m.device diff --git a/code/modules/paperwork/photocopier.dm b/code/modules/paperwork/photocopier.dm index 6d24a8f238..f29883a54c 100644 --- a/code/modules/paperwork/photocopier.dm +++ b/code/modules/paperwork/photocopier.dm @@ -9,11 +9,21 @@ idle_power_usage = 30 active_power_usage = 200 power_channel = EQUIP + circuit = /obj/item/weapon/circuitboard/photocopier + frame_type = "photocopier" var/obj/item/copyitem = null //what's in the copier! var/copies = 1 //how many copies to print! var/toner = 30 //how much toner is left! woooooo~ var/maxcopies = 10 //how many copies can be copied at once- idea shamelessly stolen from bs12's copier! +/obj/machinery/photocopier/New() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/scanning_module(src) + component_parts += new /obj/item/weapon/stock_parts/motor(src) + component_parts += new /obj/item/weapon/stock_parts/micro_laser(src) + component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) + RefreshParts() + /obj/machinery/photocopier/attack_ai(mob/user as mob) return attack_hand(user) @@ -126,6 +136,12 @@ playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) anchored = !anchored user << "You [anchored ? "wrench" : "unwrench"] \the [src]." + + else if(default_deconstruction_screwdriver(user, O)) + return + else if(default_deconstruction_crowbar(user, O)) + return + return /obj/machinery/photocopier/ex_act(severity) diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm index 90ed7ccf59..5787ff2d02 100644 --- a/code/modules/paperwork/photography.dm +++ b/code/modules/paperwork/photography.dm @@ -91,7 +91,7 @@ var/global/photo_count = 0 /obj/item/weapon/storage/photo_album/MouseDrop(obj/over_object as obj) if((istype(usr, /mob/living/carbon/human))) - var/mob/M = usr + var/mob/living/carbon/human/M = usr if(!( istype(over_object, /obj/screen) )) return ..() playsound(loc, "rustle", 50, 1, -5) diff --git a/code/modules/paperwork/stamps.dm b/code/modules/paperwork/stamps.dm index a6954e9e2f..f37cdce706 100644 --- a/code/modules/paperwork/stamps.dm +++ b/code/modules/paperwork/stamps.dm @@ -52,6 +52,10 @@ name = "centcomm rubber stamp" icon_state = "stamp-cent" +/obj/item/weapon/stamp/qm + name = "quartermaster's stamp" + icon_state = "stamp-qm" + // Syndicate stamp to forge documents. /obj/item/weapon/stamp/chameleon/attack_self(mob/user as mob) diff --git a/code/modules/power/batteryrack.dm b/code/modules/power/batteryrack.dm index a70b19421e..2d7f38e3b9 100644 --- a/code/modules/power/batteryrack.dm +++ b/code/modules/power/batteryrack.dm @@ -9,6 +9,7 @@ input_level_max = 0 output_level_max = 0 icon_state = "gsmes" + circuit = /obj/item/weapon/circuitboard/batteryrack var/cells_amount = 0 var/capacitors_amount = 0 var/global/list/br_cache = null @@ -22,7 +23,6 @@ //Maybe this should be moved up to obj/machinery /obj/machinery/power/smes/batteryrack/proc/add_parts() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/batteryrack component_parts += new /obj/item/weapon/cell/high component_parts += new /obj/item/weapon/cell/high component_parts += new /obj/item/weapon/cell/high @@ -49,7 +49,7 @@ /obj/machinery/power/smes/batteryrack/update_icon() overlays.Cut() if(stat & BROKEN) return - + if(!br_cache) br_cache = list() br_cache.len = 7 @@ -60,7 +60,7 @@ br_cache[5] = image('icons/obj/power.dmi', "gsmes_og2") br_cache[6] = image('icons/obj/power.dmi', "gsmes_og3") br_cache[7] = image('icons/obj/power.dmi', "gsmes_og4") - + if (output_attempt) overlays += br_cache[1] if(inputting) @@ -83,9 +83,10 @@ if (charge < (capacity / 100)) if (!output_attempt && !input_attempt) playsound(get_turf(src), 'sound/items/Crowbar.ogg', 50, 1) - var/obj/machinery/constructable_frame/machine_frame/M = new /obj/machinery/constructable_frame/machine_frame(src.loc) + var/obj/structure/frame/M = new /obj/structure/frame(src.loc) + M.frame_type = "machine" M.state = 2 - M.icon_state = "box_1" + M.icon_state = "machine_1" for(var/obj/I in component_parts) I.loc = src.loc qdel(src) @@ -117,12 +118,12 @@ /obj/machinery/power/smes/batteryrack/makeshift name = "makeshift PSU" desc = "A rack of batteries connected by a mess of wires posing as a PSU." + circuit = /obj/item/weapon/circuitboard/ghettosmes var/overcharge_percent = 0 /obj/machinery/power/smes/batteryrack/makeshift/add_parts() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/ghettosmes component_parts += new /obj/item/weapon/cell/high component_parts += new /obj/item/weapon/cell/high component_parts += new /obj/item/weapon/cell/high diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index 400e7281b6..41e182b91b 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -287,14 +287,15 @@ else user << "\blue You close the access panel." else if(istype(O, /obj/item/weapon/crowbar) && open) - var/obj/machinery/constructable_frame/machine_frame/new_frame = new /obj/machinery/constructable_frame/machine_frame(src.loc) + var/obj/structure/frame/new_frame = new /obj/structure/frame(src.loc) for(var/obj/item/I in component_parts) I.loc = src.loc while ( sheets > 0 ) DropFuel() + new_frame.frame_type = "machine" new_frame.state = 2 - new_frame.icon_state = "box_1" + new_frame.icon_state = "machine_1" qdel(src) /obj/machinery/power/port_gen/pacman/attack_hand(mob/user as mob) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index 05dae4fdbf..2971484715 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -12,6 +12,7 @@ density = 1 anchored = 1 use_power = 0 + circuit = /obj/item/weapon/circuitboard/smes var/capacity = 5e6 // maximum charge var/charge = 1e6 // actual charge diff --git a/code/modules/power/smes_construction.dm b/code/modules/power/smes_construction.dm index 497e16a885..f14c084882 100644 --- a/code/modules/power/smes_construction.dm +++ b/code/modules/power/smes_construction.dm @@ -116,7 +116,6 @@ /obj/machinery/power/smes/buildable/New(var/install_coils = 1) component_parts = list() component_parts += new /obj/item/stack/cable_coil(src,30) - component_parts += new /obj/item/weapon/circuitboard/smes(src) src.wires = new /datum/wires/smes(src) // Allows for mapped-in SMESs with larger capacity/IO @@ -345,9 +344,10 @@ return usr << "\red You have disassembled the SMES cell!" - var/obj/machinery/constructable_frame/machine_frame/M = new /obj/machinery/constructable_frame/machine_frame(src.loc) + var/obj/structure/frame/M = new /obj/structure/frame(src.loc) + M.frame_type = "machine" M.state = 2 - M.icon_state = "box_1" + M.icon_state = "machine_1" for(var/obj/I in component_parts) I.loc = src.loc component_parts -= I diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 232adb345b..dd1c2a56b6 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -407,25 +407,27 @@ var/list/solars_list = list() if(do_after(user, 20)) if (src.stat & BROKEN) user << "\blue The broken glass falls out." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) new /obj/item/weapon/material/shard( src.loc ) var/obj/item/weapon/circuitboard/solar_control/M = new /obj/item/weapon/circuitboard/solar_control( A ) for (var/obj/C in src) C.loc = src.loc A.circuit = M + A.frame_type = "computer" A.state = 3 - A.icon_state = "3" + A.icon_state = "computer_3" A.anchored = 1 qdel(src) else user << "\blue You disconnect the monitor." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) var/obj/item/weapon/circuitboard/solar_control/M = new /obj/item/weapon/circuitboard/solar_control( A ) for (var/obj/C in src) C.loc = src.loc A.circuit = M + A.frame_type = "computer" A.state = 4 - A.icon_state = "4" + A.icon_state = "computer_4" A.anchored = 1 qdel(src) else diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 3e801be0d1..44b36db8ac 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -93,7 +93,7 @@ if(requires_two_hands) var/mob/living/M = loc if(istype(M)) - if((M.l_hand == src && !M.r_hand) || (M.r_hand == src && !M.l_hand)) + if(M.item_is_in_hands(src) && !M.hands_are_full()) name = "[initial(name)] (wielded)" item_state = wielded_icon else @@ -179,7 +179,7 @@ var/held_acc_mod = 0 var/held_disp_mod = 0 if(requires_two_hands) - if((user.l_hand == src && user.r_hand) || (user.r_hand == src && user.l_hand)) + if(user.item_is_in_hands(src) && user.hands_are_full()) held_acc_mod = -3 held_disp_mod = 3 diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm index 4763b83bb6..c3a48cd374 100644 --- a/code/modules/projectiles/guns/projectile/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -1,6 +1,6 @@ /obj/item/weapon/gun/projectile/colt var/unique_reskin - name = "vintage .45 pistol" + name = ".45 pistol" desc = "A cheap Martian knock-off of a Colt M1911. Uses .45 rounds." magazine_type = /obj/item/ammo_magazine/c45m icon_state = "colt" @@ -171,10 +171,10 @@ name = "holdout signal pistol" magazine_type = /obj/item/ammo_magazine/mc9mm/flash -/obj/item/weapon/gun/projectile/pistol/attack_hand(mob/user as mob) +/obj/item/weapon/gun/projectile/pistol/attack_hand(mob/living/user as mob) if(user.get_inactive_hand() == src) if(silenced) - if(user.l_hand != src && user.r_hand != src) + if(!user.item_is_in_hands(src)) ..() return user << "You unscrew [silenced] from [src]." @@ -185,9 +185,9 @@ return ..() -/obj/item/weapon/gun/projectile/pistol/attackby(obj/item/I as obj, mob/user as mob) +/obj/item/weapon/gun/projectile/pistol/attackby(obj/item/I as obj, mob/living/user as mob) if(istype(I, /obj/item/weapon/silencer)) - if(user.l_hand != src && user.r_hand != src) //if we're not in his hands + if(!user.item_is_in_hands(src)) //if we're not in his hands user << "You'll need [src] in your hands to do that." return user.drop_item() diff --git a/code/modules/projectiles/targeting/targeting_overlay.dm b/code/modules/projectiles/targeting/targeting_overlay.dm index 7a6fdcc0ca..46b01a9d1b 100644 --- a/code/modules/projectiles/targeting/targeting_overlay.dm +++ b/code/modules/projectiles/targeting/targeting_overlay.dm @@ -113,7 +113,8 @@ obj/aiming_overlay/proc/update_aiming_deferred() var/cancel_aim = 1 - if(!(aiming_with in owner) || (istype(owner, /mob/living/carbon/human) && (owner.l_hand != aiming_with && owner.r_hand != aiming_with))) + var/mob/living/carbon/human/H = owner + if(!(aiming_with in owner) || (istype(H) && !H.item_is_in_hands(aiming_with))) owner << "You must keep hold of your weapon!" else if(owner.eye_blind) owner << "You are blind and cannot see your target!" diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index 0febaa68bc..d176ab205e 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -310,6 +310,7 @@ use_power = 1 idle_power_usage = 5 active_power_usage = 100 + circuit = /obj/item/weapon/circuitboard/grinder var/inuse = 0 var/obj/item/weapon/reagent_containers/beaker = null var/limit = 10 @@ -326,6 +327,10 @@ /obj/machinery/reagentgrinder/New() ..() beaker = new /obj/item/weapon/reagent_containers/glass/beaker/large(src) + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/motor(src) + component_parts += new /obj/item/weapon/stock_parts/gear(src) + RefreshParts() return /obj/machinery/reagentgrinder/update_icon() @@ -333,6 +338,11 @@ return /obj/machinery/reagentgrinder/attackby(var/obj/item/O as obj, var/mob/user as mob) + if(beaker) + if(default_deconstruction_screwdriver(user, O)) + return + if(default_deconstruction_crowbar(user, O)) + return if (istype(O,/obj/item/weapon/reagent_containers/glass) || \ istype(O,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass) || \ diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index 9ba46eb271..a5903e744d 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -40,7 +40,7 @@ /obj/machinery/sleeper, /obj/machinery/smartfridge/, /obj/machinery/biogenerator, - /obj/machinery/constructable_frame, + /obj/structure/frame, /obj/machinery/radiocarbon_spectrometer ) @@ -246,6 +246,17 @@ var/image/lid = image(icon, src, "lid_[initial(icon_state)]") overlays += lid +/obj/item/weapon/reagent_containers/glass/cooler_bottle + desc = "A bottle for a water-cooler." + name = "water-cooler bottle" + icon = 'icons/obj/vending.dmi' + icon_state = "water_cooler_bottle" + matter = list(DEFAULT_WALL_MATERIAL = 200) + w_class = 3.0 + amount_per_transfer_from_this = 20 + possible_transfer_amounts = list(10,20,30,60,120) + volume = 120 + /* /obj/item/weapon/reagent_containers/glass/blender_jug name = "Blender Jug" diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index e31c009677..7fc7707c28 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -3,7 +3,7 @@ //////////////////////////////////////////////////////////////////////////////// /obj/item/weapon/reagent_containers/pill name = "pill" - desc = "a pill." + desc = "A pill." icon = 'icons/obj/chemical.dmi' icon_state = null item_state = "pill" diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index d68be94b9b..7ae41565b7 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -202,10 +202,51 @@ icon_state = "water_cooler" possible_transfer_amounts = null anchored = 1 - New() - ..() - reagents.add_reagent("water",500) + var/bottle = 0 +/obj/structure/reagent_dispensers/water_cooler/New() + if(bottle == 1) + ..() + reagents.add_reagent("water",120) + else + icon_state = "water_cooler_0" + +/obj/structure/reagent_dispensers/water_cooler/attackby(obj/item/I as obj, mob/user as mob) + if(istype(I, /obj/item/weapon/wrench)) + if(bottle) + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 20)) + user << "You unfasten the jug." + var/obj/item/weapon/reagent_containers/glass/cooler_bottle/G = new /obj/item/weapon/reagent_containers/glass/cooler_bottle( src.loc ) + for(var/datum/reagent/R in reagents.reagent_list) + var/total_reagent = reagents.get_reagent_amount(R.id) + G.reagents.add_reagent(R.id, total_reagent) + reagents.clear_reagents() + bottle = 0 + icon_state = "water_cooler_0" + return + + if(istype(I, /obj/item/weapon/screwdriver)) + if(!bottle) + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You take the water-cooler apart." + new /obj/item/stack/material/plastic( src.loc, 4 ) + qdel(src) + return + + if(istype(I, /obj/item/weapon/reagent_containers/glass/cooler_bottle)) + if(!bottle) + var/obj/item/weapon/reagent_containers/glass/cooler_bottle/G = I + user << "You start to screw the bottle onto the water-cooler." + if(do_after(user, 20)) + bottle = 1 + icon_state = "water_cooler" + user << "You screw the bottle onto the water-cooler but accidently spill some!" //you spill some because it for somereason transfers 5 units to the bottle after it gets attached but before it's deleted... + for(var/datum/reagent/R in G.reagents.reagent_list) + var/total_reagent = G.reagents.get_reagent_amount(R.id) + reagents.add_reagent(R.id, total_reagent) + qdel(G) + return /obj/structure/reagent_dispensers/beerkeg name = "beer keg" diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index 957c3b574d..0e591e97b0 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -8,6 +8,8 @@ desc = "A conveyor belt." layer = 2 // so they appear under stuff anchored = 1 + circuit = /obj/item/weapon/circuitboard/conveyor + frame_type = "conveyor" var/operating = 0 // 1 if running forward, -1 if backwards, 0 if off var/operable = 1 // true if can operate (no broken segments in this belt run) var/forwards // this is the default (forward) direction, set by the map dir @@ -37,6 +39,14 @@ operating = 1 setmove() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/gear(src) + component_parts += new /obj/item/weapon/stock_parts/motor(src) + component_parts += new /obj/item/weapon/stock_parts/gear(src) + component_parts += new /obj/item/weapon/stock_parts/motor(src) + component_parts += new /obj/item/stack/cable_coil(src,5) + RefreshParts() + /obj/machinery/conveyor/proc/setmove() if(operating == 1) movedir = forwards @@ -81,6 +91,23 @@ if(isrobot(user)) return //Carn: fix for borgs dropping their modules on conveyor belts if(I.loc != user) return // This should stop mounted modules ending up outside the module. + if(default_deconstruction_screwdriver(user, I)) + return + if(default_deconstruction_crowbar(user, I)) + return + + if(istype(I, /obj/item/device/multitool)) + if(panel_open) + var/input = sanitize(input(usr, "What id would you like to give this conveyor?", "Multitool-Conveyor interface", id)) + if(!input) + usr << "No input found please hang up and try your call again." + return + id = input + for(var/obj/machinery/conveyor_switch/C in world) + if(C.id == id) + C.conveyors += src + return + user.drop_item(get_turf(src)) return @@ -221,6 +248,36 @@ S.position = position S.update() +/obj/machinery/conveyor_switch/attackby(var/obj/item/I, mob/user) + if(default_deconstruction_screwdriver(user, I)) + return + + if(istype(I, /obj/item/weapon/weldingtool)) + if(panel_open) + var/obj/item/weapon/weldingtool/WT = I + if(!WT.remove_fuel(0, user)) + user << "The welding tool must be on to complete this task." + return + playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) + if(do_after(user, 20)) + if(!src || !WT.isOn()) return + user << "You deconstruct the frame." + new /obj/item/stack/material/steel( src.loc, 2 ) + qdel(src) + return + + if(istype(I, /obj/item/device/multitool)) + if(panel_open) + var/input = sanitize(input(usr, "What id would you like to give this conveyor switch?", "Multitool-Conveyor interface", id)) + if(!input) + usr << "No input found please hang up and try your call again." + return + id = input + for(var/obj/machinery/conveyor/C in world) + if(C.id == id) + conveyors += C + return + /obj/machinery/conveyor_switch/oneway var/convdir = 1 //Set to 1 or -1 depending on which way you want the convayor to go. (In other words keep at 1 and set the proper dir on the belts.) desc = "A conveyor control switch. It appears to only go in one direction." diff --git a/code/modules/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm index 0e3858e662..6831034edf 100644 --- a/code/modules/research/circuitprinter.dm +++ b/code/modules/research/circuitprinter.dm @@ -8,6 +8,7 @@ using metal and glass, it uses glass and reagents (usually sulphuric acid). name = "Circuit Imprinter" icon_state = "circuit_imprinter" flags = OPENCONTAINER + circuit = /obj/item/weapon/circuitboard/circuit_imprinter var/list/datum/design/queue = list() var/progress = 0 @@ -24,7 +25,6 @@ using metal and glass, it uses glass and reagents (usually sulphuric acid). /obj/machinery/r_n_d/circuit_imprinter/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/circuit_imprinter(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) component_parts += new /obj/item/weapon/reagent_containers/glass/beaker(src) diff --git a/code/modules/research/destructive_analyzer.dm b/code/modules/research/destructive_analyzer.dm index ccf20c0ce7..3fbb141f7e 100644 --- a/code/modules/research/destructive_analyzer.dm +++ b/code/modules/research/destructive_analyzer.dm @@ -11,7 +11,7 @@ Note: Must be placed within 3 tiles of the R&D Console icon_state = "d_analyzer" var/obj/item/weapon/loaded_item = null var/decon_mod = 0 - + circuit = /obj/item/weapon/circuitboard/destructive_analyzer use_power = 1 idle_power_usage = 30 active_power_usage = 2500 @@ -19,7 +19,6 @@ Note: Must be placed within 3 tiles of the R&D Console /obj/machinery/r_n_d/destructive_analyzer/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/destructive_analyzer(src) component_parts += new /obj/item/weapon/stock_parts/scanning_module(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) component_parts += new /obj/item/weapon/stock_parts/micro_laser(src) diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index 8809ee2955..7d5bae00ca 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -2,7 +2,7 @@ name = "Protolathe" icon_state = "protolathe" flags = OPENCONTAINER - + circuit = /obj/item/weapon/circuitboard/protolathe use_power = 1 idle_power_usage = 30 active_power_usage = 5000 @@ -20,7 +20,6 @@ /obj/machinery/r_n_d/protolathe/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/protolathe(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) component_parts += new /obj/item/weapon/stock_parts/manipulator(src) diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index a5e5a00043..fcaaa7a212 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -13,11 +13,11 @@ idle_power_usage = 800 var/delay = 10 req_access = list(access_rd) //Only the R&D can change server settings. + circuit = /obj/item/weapon/circuitboard/rdserver /obj/machinery/r_n_d/server/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/rdserver(src) component_parts += new /obj/item/weapon/stock_parts/scanning_module(src) component_parts += new /obj/item/stack/cable_coil(src) component_parts += new /obj/item/stack/cable_coil(src) diff --git a/code/modules/research/xenoarchaeology/artifact/artifact.dm b/code/modules/research/xenoarchaeology/artifact/artifact.dm index a3256d6f53..71819efc65 100644 --- a/code/modules/research/xenoarchaeology/artifact/artifact.dm +++ b/code/modules/research/xenoarchaeology/artifact/artifact.dm @@ -108,10 +108,9 @@ . = ..() if(istype(AM,/mob/living/carbon/human)) var/mob/living/carbon/human/H = AM - if((istype(H.l_hand,/obj/item/weapon/pickaxe)) && (!H.hand)) - attackby(H.l_hand,H) - else if((istype(H.r_hand,/obj/item/weapon/pickaxe)) && H.hand) - attackby(H.r_hand,H) + var/obj/item/weapon/pickaxe/P = H.get_inactive_hand() + if(istype(P)) + src.attackby(P, H) else if(istype(AM,/mob/living/silicon/robot)) var/mob/living/silicon/robot/R = AM diff --git a/code/modules/research/xenoarchaeology/machinery/artifact_analyser.dm b/code/modules/research/xenoarchaeology/machinery/artifact_analyser.dm index b449237d77..ebab6fac76 100644 --- a/code/modules/research/xenoarchaeology/machinery/artifact_analyser.dm +++ b/code/modules/research/xenoarchaeology/machinery/artifact_analyser.dm @@ -181,7 +181,7 @@ out += " have been detected " //how the artifact does it's effect - switch(A.my_effect.effect_type) + switch(A.my_effect.effect) if(1) out += " emitting in an ambient energy field." if(2) @@ -224,7 +224,7 @@ out += "low level radiation" //how the artifact does it's effect - switch(A.secondary_effect.effect_type) + switch(A.secondary_effect.effect) if(1) out += " emitting in an ambient energy field." if(2) diff --git a/code/modules/research/xenoarchaeology/master_controller.dm b/code/modules/research/xenoarchaeology/master_controller.dm index 332b1ce06a..65f4b9f1fc 100644 --- a/code/modules/research/xenoarchaeology/master_controller.dm +++ b/code/modules/research/xenoarchaeology/master_controller.dm @@ -9,9 +9,12 @@ #define ARTIFACTSPAWNNUM_LOWER 6 #define ARTIFACTSPAWNNUM_UPPER 12 -datum/controller/game_controller/proc/SetupXenoarch() +/datum/controller/game_controller/proc/SetupXenoarch() //create digsites for(var/turf/simulated/mineral/M in block(locate(1,1,1), locate(world.maxx, world.maxy, world.maxz))) + if(!(M.density)) + continue + if(isnull(M.geologic_data)) M.geologic_data = new/datum/geosample(M) diff --git a/code/modules/security levels/keycard authentication.dm b/code/modules/security levels/keycard authentication.dm index 87514a5473..b4301cf557 100644 --- a/code/modules/security levels/keycard authentication.dm +++ b/code/modules/security levels/keycard authentication.dm @@ -3,6 +3,7 @@ desc = "This device is used to trigger station functions, which require more than one ID card to authenticate." icon = 'icons/obj/monitors.dmi' icon_state = "auth_off" + circuit = /obj/item/weapon/circuitboard/keycard_auth var/active = 0 //This gets set to 1 on all devices except the one where the initial request was made. var/event = "" var/screen = 1 @@ -40,6 +41,24 @@ event_triggered_by = usr broadcast_request() //This is the device making the initial event request. It needs to broadcast to other devices + if(istype(W, /obj/item/weapon/screwdriver)) + user << "You remove the faceplate from the [src]" + var/obj/structure/frame/A = new /obj/structure/frame( src.loc ) + var/obj/item/weapon/circuitboard/M = new circuit( A ) + A.frame_type = "keycard" + A.pixel_x = pixel_x + A.pixel_y = pixel_y + A.set_dir(dir) + A.circuit = M + A.anchored = 1 + for (var/obj/C in src) + C.forceMove(loc) + A.state = 3 + A.icon_state = "keycard_3" + M.deconstruct(src) + qdel(src) + return + /obj/machinery/keycard_auth/power_change() ..() if(stat &NOPOWER) diff --git a/code/modules/surgery/other.dm b/code/modules/surgery/other.dm index 721f124e4e..82c6ad543c 100644 --- a/code/modules/surgery/other.dm +++ b/code/modules/surgery/other.dm @@ -27,7 +27,7 @@ internal_bleeding = 1 break - return affected.open >= 2 && internal_bleeding + return affected.open == (affected.encased ? 3 : 2) && internal_bleeding begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -206,4 +206,4 @@ fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) user.visible_message("[user]'s [tool] can't quite seem to get through the metal...", \ - "Your [tool] can't quite seem to get through the metal. It's weakening, though - try again.") \ No newline at end of file + "Your [tool] can't quite seem to get through the metal. It's weakening, though - try again.") diff --git a/html/changelogs/Datraen-PBAPCCheck.yml b/html/changelogs/Datraen-PBAPCCheck.yml new file mode 100644 index 0000000000..03e3702eba --- /dev/null +++ b/html/changelogs/Datraen-PBAPCCheck.yml @@ -0,0 +1,6 @@ +author: Datraen + +delete-after: True + +changes: + - bugfix: "Adds a check to prison breaks that makes sure the APC is on before continuing." diff --git a/html/changelogs/Datraen-SpawnTurf.yml b/html/changelogs/Datraen-SpawnTurf.yml new file mode 100644 index 0000000000..ab5d705c17 --- /dev/null +++ b/html/changelogs/Datraen-SpawnTurf.yml @@ -0,0 +1,6 @@ +author: Datraen + +delete-after: True + +changes: + - bugfix: "Artifacts will no longer spawn on floor turfs." diff --git a/icons/mob/items/lefthand.dmi b/icons/mob/items/lefthand.dmi index 728255c84172d2f19c7887cb81d555c6b83003cf..ff683bc069e80a8558f783cb697ee023db91d86d 100644 GIT binary patch delta 19698 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 M+D2Mcns+1r51TsbMF0Q* delta 22629 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�n|7S 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 Rj1dfW{i=a3R@?T;{{gGyZhrs( diff --git a/icons/obj/monitors.dmi b/icons/obj/monitors.dmi index a817a42648cc916bdb64f9c5e8909181a260902a..940051fea1090e993607ab6ded916c422b20e8be 100644 GIT binary patch literal 42104 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 diff --git a/icons/obj/radio.dmi b/icons/obj/radio.dmi index 75196e856d0cc7e1ad4fb5a04a7c1eace21810ba..e5cd99b2071b1c3991ddac002f9ba160e2d4e4a4 100644 GIT binary patch literal 17416 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 Mq~A-GO6dFjKOx@Og#Z8m literal 16286 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 E04y)*W&i*H literal 10608 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%0A+VL~>FaJ4w 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 N*|$n>ie4M~|1Ty^WYGWs diff --git a/icons/obj/watercloset.dmi b/icons/obj/watercloset.dmi index 89d382c824d22bc68cb41d4a59543da9e6592d11..0a5aeb5b44613eda25dc959138ff5f013320af71 100644 GIT binary patch literal 14431 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 literal 14351 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 UtvmIBZ}