diff --git a/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm b/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm index fbbc59cd67..ff201c946b 100644 --- a/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm +++ b/code/ATMOSPHERICS/components/binary_devices/algae_generator_vr.dm @@ -259,7 +259,7 @@ S.use(1) count++ user.visible_message("\The [user] inserts [S.name] into \the [src].", span_notice("You insert [count] [S.name] into \the [src].")) - updateUsrDialog() + updateUsrDialog(user) else to_chat(user, span_warning("\The [src] cannot hold more [S.name].")) return 1 diff --git a/code/game/machinery/atmoalter/area_atmos_computer.dm b/code/game/machinery/atmoalter/area_atmos_computer.dm index 1c538eaf01..87917af6b3 100644 --- a/code/game/machinery/atmoalter/area_atmos_computer.dm +++ b/code/game/machinery/atmoalter/area_atmos_computer.dm @@ -72,7 +72,7 @@ INVOKE_ASYNC(src, PROC_REF(toggle_all), FALSE) . = TRUE if("scan") - scanscrubbers() + scanscrubbers(ui.user) . = TRUE add_fingerprint(ui.user) @@ -92,7 +92,7 @@ return FALSE return TRUE -/obj/machinery/computer/area_atmos/proc/scanscrubbers() +/obj/machinery/computer/area_atmos/proc/scanscrubbers(mob/user) connectedscrubbers = list() var/found = 0 @@ -103,13 +103,13 @@ if(!found) status = "ERROR: No scrubber found!" - updateUsrDialog() + updateUsrDialog(user) // The one that only works in the same map area /obj/machinery/computer/area_atmos/area zone = "This computer is working in a wired network limited to this area." -/obj/machinery/computer/area_atmos/area/scanscrubbers() +/obj/machinery/computer/area_atmos/area/scanscrubbers(mob/user) connectedscrubbers.Cut() var/found = 0 @@ -121,7 +121,7 @@ if(!found) status = "ERROR: No scrubber found!" - src.updateUsrDialog() + updateUsrDialog(user) /obj/machinery/computer/area_atmos/area/validscrubber(var/obj/machinery/portable_atmospherics/powered/scrubber/huge/scrubber) if(!istype(scrubber)) diff --git a/code/game/machinery/biogenerator.dm b/code/game/machinery/biogenerator.dm index bf39698aba..6533978b28 100644 --- a/code/game/machinery/biogenerator.dm +++ b/code/game/machinery/biogenerator.dm @@ -231,7 +231,7 @@ icon_state = "biogen-work" return -/obj/machinery/biogenerator/attackby(var/obj/item/O as obj, var/mob/user as mob) +/obj/machinery/biogenerator/attackby(var/obj/item/O, var/mob/user) if(default_deconstruction_screwdriver(user, O)) return if(default_deconstruction_crowbar(user, O)) @@ -247,7 +247,7 @@ user.remove_from_mob(O) O.loc = src beaker = O - updateUsrDialog() + updateUsrDialog(user) else if(processing) to_chat(user, span_notice("\The [src] is currently processing.")) else if(istype(O, /obj/item/storage/bag/plants)) diff --git a/code/game/machinery/bioprinter.dm b/code/game/machinery/bioprinter.dm index 1b837e4f60..d7365074e7 100644 --- a/code/game/machinery/bioprinter.dm +++ b/code/game/machinery/bioprinter.dm @@ -81,7 +81,7 @@ /obj/machinery/organ_printer/attackby(var/obj/item/O, var/mob/user) if(default_deconstruction_screwdriver(user, O)) - updateUsrDialog() + updateUsrDialog(user) return if(default_deconstruction_crowbar(user, O)) return diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index d4ddcbc154..8d704d1528 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -407,15 +407,12 @@ mess = 1 update_icon() occupant.ghostize() - spawn(5) - qdel(occupant) - return + QDEL_IN(occupant, 0.5 SECONDS) -/obj/machinery/clonepod/relaymove(mob/user as mob) +/obj/machinery/clonepod/relaymove(mob/user) if(user.stat) return go_out() - return /obj/machinery/clonepod/emp_act(severity) if(prob(100/severity)) diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 59e6016758..bed67ddfb2 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -732,7 +732,7 @@ event() src.add_fingerprint(usr) - src.updateUsrDialog() + src.updateUsrDialog(usr) busy = 0 return diff --git a/code/game/machinery/computer/pod.dm b/code/game/machinery/computer/pod.dm index 58d78574a8..941778b383 100644 --- a/code/game/machinery/computer/pod.dm +++ b/code/game/machinery/computer/pod.dm @@ -186,7 +186,7 @@ M.open() else M.close() - updateUsrDialog() + updateUsrDialog(usr) return diff --git a/code/game/machinery/computer/prisonshuttle.dm b/code/game/machinery/computer/prisonshuttle.dm index 201fdcd8e8..b09328ab82 100644 --- a/code/game/machinery/computer/prisonshuttle.dm +++ b/code/game/machinery/computer/prisonshuttle.dm @@ -66,7 +66,7 @@ var/prison_shuttle_timeleft = 0 post_signal("prison") to_chat(usr, span_notice("The prison shuttle has been called and will arrive in [(PRISON_MOVETIME/10)] seconds.")) src.temp += "Shuttle sent.

OK" - src.updateUsrDialog() + src.updateUsrDialog(usr) prison_shuttle_moving_to_prison = 1 prison_shuttle_time = world.timeofday + PRISON_MOVETIME spawn(0) @@ -80,7 +80,7 @@ var/prison_shuttle_timeleft = 0 post_signal("prison") to_chat(usr, span_notice("The prison shuttle has been called and will arrive in [(PRISON_MOVETIME/10)] seconds.")) src.temp += "Shuttle sent.

OK" - src.updateUsrDialog() + src.updateUsrDialog(usr) prison_shuttle_moving_to_station = 1 prison_shuttle_time = world.timeofday + PRISON_MOVETIME spawn(0) @@ -90,7 +90,7 @@ var/prison_shuttle_timeleft = 0 src.temp = null src.add_fingerprint(usr) - src.updateUsrDialog() + src.updateUsrDialog(usr) return diff --git a/code/game/machinery/computer/specops_shuttle.dm b/code/game/machinery/computer/specops_shuttle.dm index ccea4150ef..a2132b7d9b 100644 --- a/code/game/machinery/computer/specops_shuttle.dm +++ b/code/game/machinery/computer/specops_shuttle.dm @@ -295,7 +295,7 @@ var/specops_shuttle_timeleft = 0 to_chat(usr, span_notice("The Special Operations shuttle will arrive at [using_map.boss_name] in [(SPECOPS_MOVETIME/10)] seconds.")) temp += "Shuttle departing.

OK" - updateUsrDialog() + updateUsrDialog(usr) specops_shuttle_moving_to_centcom = 1 specops_shuttle_time = world.timeofday + SPECOPS_MOVETIME @@ -312,7 +312,7 @@ var/specops_shuttle_timeleft = 0 to_chat(usr, span_notice("The Special Operations shuttle will arrive on [station_name()] in [(SPECOPS_MOVETIME/10)] seconds.")) temp += "Shuttle departing.

OK" - updateUsrDialog() + updateUsrDialog(usr) var/area/centcom/specops/special_ops = locate() if(special_ops) @@ -327,7 +327,7 @@ var/specops_shuttle_timeleft = 0 temp = null add_fingerprint(usr) - updateUsrDialog() + updateUsrDialog(usr) return #undef SPECOPS_MOVETIME diff --git a/code/game/machinery/computer3/computers/card.dm b/code/game/machinery/computer3/computers/card.dm index 9323b37706..d187121007 100644 --- a/code/game/machinery/computer3/computers/card.dm +++ b/code/game/machinery/computer3/computers/card.dm @@ -322,7 +322,7 @@ data_core.manifest_modify(writer.registered_name, writer.assignment, writer.rank) callHook("reassign_employee", list(writer)) - computer.updateUsrDialog() + computer.updateUsrDialog(usr) return /datum/file/program/card_comp/centcom diff --git a/code/game/machinery/fire_alarm.dm b/code/game/machinery/fire_alarm.dm index d4043216e2..88f23e3e9d 100644 --- a/code/game/machinery/fire_alarm.dm +++ b/code/game/machinery/fire_alarm.dm @@ -341,7 +341,7 @@ Just a object used in constructing fire alarms var/tp = text2num(href_list["tp"]) time += tp time = min(max(round(time), 0), 120) - updateUsrDialog() + updateUsrDialog(usr) add_fingerprint(usr) else diff --git a/code/game/machinery/magnet.dm b/code/game/machinery/magnet.dm index 112c24179e..81638d91f0 100644 --- a/code/game/machinery/magnet.dm +++ b/code/game/machinery/magnet.dm @@ -300,9 +300,6 @@ radio_connection.post_signal(src, signal, radio_filter = RADIO_MAGNETS) - spawn(1) - updateUsrDialog() // pretty sure this increases responsiveness - if(href_list["operation"]) switch(href_list["operation"]) if("plusspeed") @@ -327,7 +324,7 @@ spawn() MagnetMove() - updateUsrDialog() + updateUsrDialog(usr) /obj/machinery/magnetic_controller/proc/MagnetMove() if(looping) return diff --git a/code/game/machinery/partslathe_vr.dm b/code/game/machinery/partslathe_vr.dm index aa9157e2f6..86d0694d93 100644 --- a/code/game/machinery/partslathe_vr.dm +++ b/code/game/machinery/partslathe_vr.dm @@ -86,7 +86,7 @@ flick("partslathe-lidopen", src) icon_state = "partslathe-idle" -/obj/machinery/partslathe/attackby(var/obj/item/O as obj, var/mob/user as mob) +/obj/machinery/partslathe/attackby(var/obj/item/O, var/mob/user) if(busy) to_chat(user, span_notice("\The [src] is busy. Please wait for completion of previous operation.")) return 1 @@ -110,7 +110,7 @@ copy_board = O O.forceMove(src) user.visible_message("[user] inserts [O] into \the [src]'s circuit reader.", span_notice("You insert [O] into \the [src]'s circuit reader.")) - updateUsrDialog() + updateUsrDialog(user) return if(try_load_materials(user, O)) return @@ -136,7 +136,7 @@ count++ user.visible_message("[user] inserts [S.name] into \the [src].", span_notice("You insert [count] [S.name] into \the [src].")) flick("partslathe-load-[S.material.name]", src) - updateUsrDialog() + updateUsrDialog(user) else to_chat(user, span_warning("\The [src] cannot hold more [S.name].")) return 1 diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 10ced478e5..c7a0381afb 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -539,7 +539,7 @@ if(allowed(user)) locked = !locked to_chat(user, span_notice("Controls are now [locked ? "locked" : "unlocked"].")) - updateUsrDialog() + updateUsrDialog(user) else to_chat(user, span_notice("Access denied.")) diff --git a/code/game/machinery/robot_fabricator.dm b/code/game/machinery/robot_fabricator.dm index 67314e79d8..51a09f49a5 100644 --- a/code/game/machinery/robot_fabricator.dm +++ b/code/game/machinery/robot_fabricator.dm @@ -122,7 +122,7 @@ Please wait until completion...
being_built = new building(src) add_overlay("fab-active") - updateUsrDialog() + updateUsrDialog(usr) spawn (build_time) if(!isnull(being_built)) diff --git a/code/game/machinery/suit_storage/suit_cycler.dm b/code/game/machinery/suit_storage/suit_cycler.dm index e9bbf20649..eda767057a 100644 --- a/code/game/machinery/suit_storage/suit_cycler.dm +++ b/code/game/machinery/suit_storage/suit_cycler.dm @@ -131,10 +131,10 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) return loaded -/obj/machinery/suit_cycler/attack_ai(mob/user as mob) +/obj/machinery/suit_cycler/attack_ai(mob/user) return attack_hand(user) -/obj/machinery/suit_cycler/attackby(obj/item/I as obj, mob/user as mob) +/obj/machinery/suit_cycler/attackby(obj/item/I, mob/user) if(electrified != 0) if(shock(user, 100)) @@ -174,7 +174,7 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) add_fingerprint(user) qdel(G) - updateUsrDialog() + updateUsrDialog(user) return else if(I.has_tool_quality(TOOL_SCREWDRIVER)) @@ -182,7 +182,7 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) panel_open = !panel_open playsound(src, I.usesound, 50, 1) to_chat(user, "You [panel_open ? "open" : "close"] the maintenance panel.") - updateUsrDialog() + updateUsrDialog(user) return else if(istype(I,/obj/item/clothing/head/helmet/space/void) && !istype(I, /obj/item/clothing/head/helmet/space/rig)) @@ -222,7 +222,7 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) helmet = I update_icon() - updateUsrDialog() + updateUsrDialog(user) return else if(istype(I,/obj/item/clothing/suit/space/void)) @@ -262,7 +262,7 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) suit = I update_icon() - updateUsrDialog() + updateUsrDialog(user) return ..() @@ -278,7 +278,7 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) emagged = 1 safeties = 0 req_access = list() - updateUsrDialog() + updateUsrDialog(user) return 1 /obj/machinery/suit_cycler/attack_hand(mob/user as mob) @@ -396,7 +396,7 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) active = 1 spawn(100) repair_suit() - finished_job() + finished_job(ui.user) . = TRUE if("apply_paintjob") @@ -405,7 +405,7 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) active = 1 spawn(100) apply_paintjob() - finished_job() + finished_job(ui.user) . = TRUE if("lock") @@ -475,13 +475,13 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) occupant.take_organ_damage(0,radiation_level + rand(1,3)) occupant.apply_effect(radiation_level*10, IRRADIATE) -/obj/machinery/suit_cycler/proc/finished_job() +/obj/machinery/suit_cycler/proc/finished_job(mob/user) var/turf/T = get_turf(src) T.visible_message("[icon2html(src,viewers(src))]" + span_notice("The [src] beeps several times.")) icon_state = initial(icon_state) active = 0 playsound(src, 'sound/machines/boobeebeep.ogg', 50) - updateUsrDialog() + updateUsrDialog(user) /obj/machinery/suit_cycler/proc/repair_suit() if(!suit || !suit.damage || !suit.can_breach) @@ -502,7 +502,7 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) eject_occupant(usr) -/obj/machinery/suit_cycler/proc/eject_occupant(mob/user as mob) +/obj/machinery/suit_cycler/proc/eject_occupant(mob/user) if(locked || active) to_chat(user, span_warning("The cycler is locked.")) @@ -519,7 +519,7 @@ GLOBAL_LIST_EMPTY(suit_cycler_typecache) occupant = null add_fingerprint(user) - updateUsrDialog() + updateUsrDialog(user) update_icon() return diff --git a/code/game/machinery/suit_storage/suit_storage.dm b/code/game/machinery/suit_storage/suit_storage.dm index b4a89aa5c0..fcb0a408e0 100644 --- a/code/game/machinery/suit_storage/suit_storage.dm +++ b/code/game/machinery/suit_storage/suit_storage.dm @@ -227,7 +227,7 @@ return -/obj/machinery/suit_storage_unit/proc/toggle_open(mob/user as mob) +/obj/machinery/suit_storage_unit/proc/toggle_open(mob/user) if(islocked || isUV) to_chat(user, span_warning("Unable to open unit.")) return @@ -238,7 +238,7 @@ return -/obj/machinery/suit_storage_unit/proc/toggle_lock(mob/user as mob) +/obj/machinery/suit_storage_unit/proc/toggle_lock(mob/user) if(OCCUPANT && safetieson) to_chat(user, span_warning("The Unit's safety protocols disallow locking when a biological form is detected inside its compartments.")) return @@ -248,7 +248,7 @@ return -/obj/machinery/suit_storage_unit/proc/start_UV(mob/user as mob) +/obj/machinery/suit_storage_unit/proc/start_UV(mob/user) if(isUV || isopen) //I'm bored of all these sanity checks return if(OCCUPANT && safetieson) @@ -263,7 +263,7 @@ if(OCCUPANT && !islocked) islocked = 1 //Let's lock it for good measure update_icon() - updateUsrDialog() + updateUsrDialog(user) var/i //our counter for(i=0,i<4,i++) @@ -302,7 +302,7 @@ eject_occupant(OCCUPANT) //Mixing up these two lines causes bug. DO NOT DO IT. isUV = 0 //Cycle ends update_icon() - updateUsrDialog() + updateUsrDialog(user) return /obj/machinery/suit_storage_unit/proc/cycletimeleft() @@ -343,7 +343,7 @@ return eject_occupant(usr) add_fingerprint(usr) - updateUsrDialog() + updateUsrDialog(usr) update_icon() return @@ -375,21 +375,21 @@ update_icon() add_fingerprint(usr) - updateUsrDialog() + updateUsrDialog(usr) return else OCCUPANT = null //Testing this as a backup sanity test return -/obj/machinery/suit_storage_unit/attackby(obj/item/I as obj, mob/user as mob) +/obj/machinery/suit_storage_unit/attackby(obj/item/I, mob/user) if(!ispowered) return if(I.has_tool_quality(TOOL_SCREWDRIVER)) panelopen = !panelopen playsound(src, I.usesound, 100, 1) to_chat(user, span_notice("You [panelopen ? "open up" : "close"] the unit's maintenance panel.")) - updateUsrDialog() + updateUsrDialog(user) return if(istype(I, /obj/item/grab)) var/obj/item/grab/G = I @@ -417,7 +417,7 @@ add_fingerprint(user) qdel(G) - updateUsrDialog() + updateUsrDialog(user) update_icon() return return @@ -433,7 +433,7 @@ S.loc = src SUIT = S update_icon() - updateUsrDialog() + updateUsrDialog(user) return if(istype(I,/obj/item/clothing/head/helmet)) if(!isopen) @@ -447,7 +447,7 @@ H.loc = src HELMET = H update_icon() - updateUsrDialog() + updateUsrDialog(user) return if(istype(I,/obj/item/clothing/mask)) if(!isopen) @@ -461,14 +461,14 @@ M.loc = src MASK = M update_icon() - updateUsrDialog() + updateUsrDialog(user) return update_icon() - updateUsrDialog() + updateUsrDialog(user) return -/obj/machinery/suit_storage_unit/attack_ai(mob/user as mob) +/obj/machinery/suit_storage_unit/attack_ai(mob/user) return attack_hand(user) //////////////////////////////REMINDER: Make it lock once you place some fucker inside. diff --git a/code/game/machinery/syndicatebeacon.dm b/code/game/machinery/syndicatebeacon.dm index da36d87d34..6e65c39eb6 100644 --- a/code/game/machinery/syndicatebeacon.dm +++ b/code/game/machinery/syndicatebeacon.dm @@ -40,18 +40,18 @@ return if(href_list["betraitor"]) if(charges < 1) - updateUsrDialog() + updateUsrDialog(usr) return var/mob/M = locate(href_list["traitormob"]) if(M.mind.special_role || jobban_isbanned(M, JOB_SYNDICATE)) temptext = "We have no need for you at this time. Have a pleasant day.
" - updateUsrDialog() + updateUsrDialog(usr) return charges -= 1 switch(rand(1,2)) if(1) temptext = "Double-crosser. You planned to betray us from the start. Allow us to repay the favor in kind." - updateUsrDialog() + updateUsrDialog(usr) spawn(rand(50,200)) selfdestruct() return if(2) @@ -63,7 +63,7 @@ traitors.equip(N) message_admins("[N]/([N.ckey]) has accepted a traitor objective from a syndicate beacon.") - updateUsrDialog() + updateUsrDialog(usr) return /obj/machinery/syndicate_beacon/proc/selfdestruct() diff --git a/code/game/machinery/syndicatebeacon_vr.dm b/code/game/machinery/syndicatebeacon_vr.dm index 6e0baae874..dd3f00cb5d 100644 --- a/code/game/machinery/syndicatebeacon_vr.dm +++ b/code/game/machinery/syndicatebeacon_vr.dm @@ -1,6 +1,6 @@ // Virgo modified syndie beacon, does not give objectives -/obj/machinery/syndicate_beacon/virgo/attack_hand(var/mob/user as mob) +/obj/machinery/syndicate_beacon/virgo/attack_hand(var/mob/user) user.set_machine(src) var/dat = "Scanning [pick("retina pattern", "voice print", "fingerprints", "dna sequence")]...
Identity confirmed,
" if(ishuman(user) || isAI(user)) @@ -22,12 +22,12 @@ /obj/machinery/syndicate_beacon/virgo/Topic(href, href_list) if(href_list["betraitor"]) if(charges < 1) - updateUsrDialog() + updateUsrDialog(usr) return var/mob/M = locate(href_list["traitormob"]) if(M.mind.tcrystals > 0 || jobban_isbanned(M, JOB_SYNDICATE)) temptext = "We have no need for you at this time. Have a pleasant day.
" - updateUsrDialog() + updateUsrDialog(usr) return charges -= 1 if(ishuman(M)) @@ -38,5 +38,5 @@ N.mind.accept_tcrystals = 1 message_admins("[N]/([N.ckey]) has received an uplink and telecrystals from the syndicate beacon.") - updateUsrDialog() + updateUsrDialog(usr) return diff --git a/code/game/machinery/telecomms/logbrowser.dm b/code/game/machinery/telecomms/logbrowser.dm index 3a4e0592af..7bdccd06db 100644 --- a/code/game/machinery/telecomms/logbrowser.dm +++ b/code/game/machinery/telecomms/logbrowser.dm @@ -150,7 +150,7 @@ playsound(src, 'sound/effects/sparks4.ogg', 75, 1) emagged = 1 to_chat(user, span_notice("You you disable the security protocols")) - src.updateUsrDialog() + updateUsrDialog(user) return 1 /obj/machinery/computer/telecomms/server/proc/set_temp(var/text, var/color = "average") diff --git a/code/game/machinery/telecomms/telemonitor.dm b/code/game/machinery/telecomms/telemonitor.dm index 67204b6189..2042e3611b 100644 --- a/code/game/machinery/telecomms/telemonitor.dm +++ b/code/game/machinery/telecomms/telemonitor.dm @@ -122,7 +122,7 @@ playsound(src, 'sound/effects/sparks4.ogg', 75, 1) emagged = 1 to_chat(user, span_notice("You you disable the security protocols")) - src.updateUsrDialog() + src.updateUsrDialog(user) return 1 /obj/machinery/computer/telecomms/monitor/proc/set_temp(var/text, var/color = "average") diff --git a/code/game/machinery/telecomms/traffic_control.dm b/code/game/machinery/telecomms/traffic_control.dm index f760210026..73e1e111f3 100644 --- a/code/game/machinery/telecomms/traffic_control.dm +++ b/code/game/machinery/telecomms/traffic_control.dm @@ -206,7 +206,7 @@ servers = list() temp = "- NEW NETWORK TAG SET IN ADDRESS \[[network]\] -" - updateUsrDialog() + updateUsrDialog(usr) return /obj/machinery/computer/telecomms/traffic/emag_act(var/remaining_charges, var/mob/user) @@ -214,5 +214,5 @@ playsound(src, 'sound/effects/sparks4.ogg', 75, 1) emagged = 1 to_chat(user, span_notice("You you disable the security protocols")) - src.updateUsrDialog() + updateUsrDialog(user) return 1 diff --git a/code/game/objects/items/blueprints_vr.dm b/code/game/objects/items/blueprints_vr.dm index a4f11a079c..92660c2135 100644 --- a/code/game/objects/items/blueprints_vr.dm +++ b/code/game/objects/items/blueprints_vr.dm @@ -161,7 +161,7 @@ in_use = FALSE return in_use = FALSE - updateUsrDialog() + updateUsrDialog(usr) diff --git a/code/game/objects/items/weapons/hydroponics.dm b/code/game/objects/items/weapons/hydroponics.dm index 651dc9f7a3..59944b5a65 100644 --- a/code/game/objects/items/weapons/hydroponics.dm +++ b/code/game/objects/items/weapons/hydroponics.dm @@ -14,7 +14,7 @@ w_class = ITEMSIZE_TINY var/list/item_quants = list() -/obj/item/seedbag/attack_self(mob/user as mob) +/obj/item/seedbag/attack_self(mob/user) user.machine = src interact(user) @@ -29,7 +29,7 @@ if(0) to_chat(usr, "The bag now picks up one seed pouch at a time.") -/obj/item/seeds/attackby(var/obj/item/O as obj, var/mob/user as mob) +/obj/item/seeds/attackby(var/obj/item/O, var/mob/user) ..() if (istype(O, /obj/item/seedbag)) var/obj/item/seedbag/S = O @@ -43,7 +43,7 @@ S.item_quants[G.name] = 1 else to_chat(user, span_warning("The seed bag is full.")) - S.updateUsrDialog() + S.updateUsrDialog(user) return to_chat(user, span_notice("You pick up all the seeds.")) else @@ -55,10 +55,10 @@ S.item_quants[name] = 1 else to_chat(user, span_warning("The seed bag is full.")) - S.updateUsrDialog() + S.updateUsrDialog(user) return -/obj/item/seedbag/interact(mob/user as mob) +/obj/item/seedbag/interact(mob/user) var/dat = "Select an item:
" @@ -102,10 +102,10 @@ for(var/obj/O in contents ) O.loc = get_turf(src) - src.updateUsrDialog() + src.updateUsrDialog(usr) return -/obj/item/seedbag/updateUsrDialog() +/obj/item/seedbag/updateUsrDialog(mob/user) var/list/nearby = range(1, src) for(var/mob/M in nearby) if ((M.client && M.machine == src)) diff --git a/code/game/objects/items/weapons/implants/implantchair.dm b/code/game/objects/items/weapons/implants/implantchair.dm index 468f14adce..1042c9f8ab 100644 --- a/code/game/objects/items/weapons/implants/implantchair.dm +++ b/code/game/objects/items/weapons/implants/implantchair.dm @@ -24,7 +24,7 @@ add_implants() -/obj/machinery/implantchair/attack_hand(mob/user as mob) +/obj/machinery/implantchair/attack_hand(mob/user) user.set_machine(src) var/health_text = "" if(src.occupant) @@ -62,12 +62,12 @@ add_implants() ready = 1 - src.updateUsrDialog() + src.updateUsrDialog(usr) src.add_fingerprint(usr) return -/obj/machinery/implantchair/attackby(var/obj/item/G as obj, var/mob/user as mob) +/obj/machinery/implantchair/attackby(var/obj/item/G, var/mob/user) if(istype(G, /obj/item/grab)) var/obj/item/grab/grab = G if(!ismob(grab.affecting)) @@ -78,7 +78,7 @@ var/mob/M = grab.affecting if(put_mob(M)) qdel(G) - src.updateUsrDialog() + src.updateUsrDialog(user) return @@ -99,7 +99,7 @@ return -/obj/machinery/implantchair/proc/put_mob(mob/living/carbon/M as mob) +/obj/machinery/implantchair/proc/put_mob(mob/living/carbon/M) if(!iscarbon(M)) to_chat(usr, span_warning("\The [src] cannot hold this!")) return diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 0ed896b922..f5d5e87052 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -104,24 +104,26 @@ else return null -/obj/proc/updateUsrDialog() +/obj/proc/updateUsrDialog(mob/user) if(in_use) + to_world("we actually have a [user]") + to_world("we got a [usr]") var/is_in_use = 0 var/list/nearby = viewers(1, src) for(var/mob/M in nearby) if ((M.client && M.machine == src)) is_in_use = 1 src.attack_hand(M) - if (isAI(usr) || isrobot(usr)) - if (!(usr in nearby)) - if (usr.client && usr.machine==src) // && M.machine == src is omitted because if we triggered this by using the dialog, it doesn't matter if our machine changed in between triggering it and this - the dialog is probably still supposed to refresh. + if (isAI(user) || isrobot(user)) + if (!(user in nearby)) + if (user.client && user.machine==src) // && M.machine == src is omitted because if we triggered this by using the dialog, it doesn't matter if our machine changed in between triggering it and this - the dialog is probably still supposed to refresh. is_in_use = 1 - src.attack_ai(usr) + src.attack_ai(user) // check for TK users - if (ishuman(usr)) - var/mob/living/carbon/human/H = usr + if (ishuman(user)) + var/mob/living/carbon/human/H = user if(H.get_type_in_hands(/obj/item/tk_grab)) if(!(H in nearby)) if(H.client && H.machine==src) diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm index c35317e372..e22ec7bbfc 100644 --- a/code/game/objects/structures/safe.dm +++ b/code/game/objects/structures/safe.dm @@ -42,7 +42,7 @@ FLOOR SAFES space += I.w_class I.forceMove(src) -/obj/structure/safe/proc/check_unlocked(mob/user as mob, canhear) +/obj/structure/safe/proc/check_unlocked(mob/user, canhear) if(user && canhear) if(tumbler_1_pos == tumbler_1_open) to_chat(user, span_notice("You hear a [pick("tonk", "krunk", "plunk")] from \the [src].")) @@ -75,7 +75,7 @@ FLOOR SAFES icon_state = initial(icon_state) -/obj/structure/safe/attack_hand(mob/user as mob) +/obj/structure/safe/attack_hand(mob/user) user.set_machine(src) var/dat = "
" dat += "[open ? "Close" : "Open"] [src] | - [dial * 5] +" @@ -101,7 +101,7 @@ FLOOR SAFES to_chat(user, span_notice("You [open ? "close" : "open"] [src].")) open = !open update_icon() - updateUsrDialog() + updateUsrDialog(usr) return else to_chat(user, span_notice("You can't [open ? "close" : "open"] [src], the lock is engaged!")) @@ -120,7 +120,7 @@ FLOOR SAFES playsound(src, 'sound/machines/click.ogg', 20, 1) check_unlocked(user, canhear) - updateUsrDialog() + updateUsrDialog(usr) return if(href_list["increment"]) @@ -135,7 +135,7 @@ FLOOR SAFES to_chat(user, span_notice("You hear a [pick("click", "chink", "clink")] from \the [src].")) playsound(src, 'sound/machines/click.ogg', 20, 1) check_unlocked(user, canhear) - updateUsrDialog() + updateUsrDialog(usr) return if(href_list["retrieve"]) @@ -145,17 +145,17 @@ FLOOR SAFES if(open) if(P && in_range(src, user)) user.put_in_hands(P) - updateUsrDialog() + updateUsrDialog(usr) -/obj/structure/safe/attackby(obj/item/I as obj, mob/user as mob) +/obj/structure/safe/attackby(obj/item/I, mob/user) if(open) if(I.w_class + space <= maxspace) space += I.w_class user.drop_item() I.loc = src to_chat(user, span_notice("You put [I] in \the [src].")) - updateUsrDialog() + updateUsrDialog(user) return else to_chat(user, span_notice("[I] won't fit in \the [src].")) diff --git a/code/game/objects/stumble_into_vr.dm b/code/game/objects/stumble_into_vr.dm index 750e79183f..db814f32c7 100644 --- a/code/game/objects/stumble_into_vr.dm +++ b/code/game/objects/stumble_into_vr.dm @@ -136,7 +136,7 @@ isopen = 0 update_icon() add_fingerprint(M) - updateUsrDialog() + updateUsrDialog(M) M.stop_flying() /obj/machinery/vending/stumble_into(mob/living/M) diff --git a/code/modules/interserver shipping/computer_yw.dm b/code/modules/interserver shipping/computer_yw.dm index ee3b70f479..dd2d19974c 100644 --- a/code/modules/interserver shipping/computer_yw.dm +++ b/code/modules/interserver shipping/computer_yw.dm @@ -122,7 +122,7 @@ do_confirm(confirmation, usr) src.add_fingerprint(usr) - src.updateUsrDialog() + src.updateUsrDialog(usr) return /obj/machinery/computer/interservershipping/proc/do_confirm(var/confirmation, var/mob/user) diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index 4572cd781b..8191a65279 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -107,7 +107,7 @@ Book Cart anchored = FALSE opacity = 0 -/obj/structure/bookcase/bookcart/attackby(obj/item/O as obj, mob/user as mob) +/obj/structure/bookcase/bookcart/attackby(obj/item/O as obj, mob/user) if(istype(O, /obj/item/book)) user.drop_item() O.loc = src @@ -188,7 +188,7 @@ Book Cart End drop_sound = 'sound/items/drop/book.ogg' pickup_sound = 'sound/items/pickup/book.ogg' -/obj/item/book/attack_self(var/mob/user as mob) +/obj/item/book/attack_self(var/mob/user) if(carved) if(store) to_chat(user, span_notice("[store] falls out of [title]!")) @@ -299,7 +299,7 @@ Book Cart End else ..() -/obj/item/book/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) +/obj/item/book/attack(mob/living/carbon/M, mob/living/carbon/user) if(user.zone_sel.selecting == O_EYES) user.visible_message(span_notice("You open up the book and show it to [M]."), \ span_notice(" [user] opens up a book and shows it to [M].")) @@ -373,7 +373,7 @@ Book Cart End page-- playsound(src, "pageturn", 50, 1) src.attack_self(usr) - updateUsrDialog() + updateUsrDialog(usr) else to_chat(usr, span_notice("You need to hold it in your hands!")) @@ -391,7 +391,7 @@ Book Cart End var/obj/item/book/book // Currently scanned book var/mode = 0 // 0 - Scan only, 1 - Scan and Set Buffer, 2 - Scan and Attempt to Check In, 3 - Scan and Attempt to Add to Inventory -/obj/item/barcodescanner/attack_self(mob/user as mob) +/obj/item/barcodescanner/attack_self(mob/user) mode += 1 if(mode > 3) mode = 0 diff --git a/code/modules/library/lib_machines.dm b/code/modules/library/lib_machines.dm index 51635a9467..d033c59684 100644 --- a/code/modules/library/lib_machines.dm +++ b/code/modules/library/lib_machines.dm @@ -106,7 +106,7 @@ screenstate = 0 src.add_fingerprint(usr) - src.updateUsrDialog() + src.updateUsrDialog(usr) return @@ -513,7 +513,7 @@ var/obj/item/book/NewBook = new newpath(get_turf(src)) NewBook.name = "Book: [NewBook.name]" src.add_fingerprint(usr) - src.updateUsrDialog() + src.updateUsrDialog(usr) return /* @@ -564,7 +564,7 @@ for(var/obj/item/book/B in contents) B.loc = src.loc src.add_fingerprint(usr) - src.updateUsrDialog() + src.updateUsrDialog(usr) return diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm index e8b5b73836..11bf5ed763 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm @@ -372,7 +372,7 @@ usr.set_machine(src) if(href_list["refresh"]) update_patient() - src.updateUsrDialog() + src.updateUsrDialog(usr) sleeperUI(usr) return if(href_list["eject"]) @@ -463,7 +463,7 @@ else to_chat(usr, span_notice("ERROR: Subject cannot metabolise chemicals.")) - updateUsrDialog() + updateUsrDialog(usr) sleeperUI(usr) //Needs a callback to boop the page to refresh. return diff --git a/code/modules/paperwork/paper_bundle.dm b/code/modules/paperwork/paper_bundle.dm index ca78769db0..8b6d042234 100644 --- a/code/modules/paperwork/paper_bundle.dm +++ b/code/modules/paperwork/paper_bundle.dm @@ -185,7 +185,7 @@ update_icon() src.attack_self(usr) - updateUsrDialog() + updateUsrDialog(usr) else to_chat(usr, span_notice("You need to hold it in hands!")) diff --git a/code/modules/power/antimatter/computer.dm b/code/modules/power/antimatter/computer.dm index 24565b4247..1def5b7b32 100644 --- a/code/modules/power/antimatter/computer.dm +++ b/code/modules/power/antimatter/computer.dm @@ -54,7 +54,7 @@ if("logout") authenticated = 0 - src.updateUsrDialog() + src.updateUsrDialog(usr) /obj/machinery/computer/am_engine/attack_ai(var/mob/user as mob) return src.attack_hand(user) diff --git a/code/modules/power/fusion/gyrotron/gyrotron_control.dm b/code/modules/power/fusion/gyrotron/gyrotron_control.dm index ffd9c479b2..5d90dc1875 100644 --- a/code/modules/power/fusion/gyrotron/gyrotron_control.dm +++ b/code/modules/power/fusion/gyrotron/gyrotron_control.dm @@ -96,7 +96,7 @@ return 1 G.mega_energy = CLAMP(new_val, 1, 50) G.update_active_power_usage(G.mega_energy * 1500) - updateUsrDialog() + updateUsrDialog(usr) return 1 if(href_list["modifyrate"]) @@ -105,12 +105,12 @@ to_chat(usr, span_warning("That's not a valid number.")) return 1 G.rate = CLAMP(new_val, 1, 10) - updateUsrDialog() + updateUsrDialog(usr) return 1 if(href_list["toggle"]) G.activate(usr) - updateUsrDialog() + updateUsrDialog(usr) return 1 return 0 diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm index c3046f2e93..9704b07127 100644 --- a/code/modules/power/gravitygenerator.dm +++ b/code/modules/power/gravitygenerator.dm @@ -125,5 +125,5 @@ gravity_generator:on = 1 A.gravitychange(1) - src.updateUsrDialog() + src.updateUsrDialog(usr) return diff --git a/code/modules/power/pacman2.dm b/code/modules/power/pacman2.dm index 7518c970f8..44d1d76842 100644 --- a/code/modules/power/pacman2.dm +++ b/code/modules/power/pacman2.dm @@ -54,7 +54,7 @@ else for(var/mob/M in viewers(1, src)) if (M.client && M.machine == src) - src.updateUsrDialog() + src.updateUsrDialog(M) proc overheat() @@ -141,20 +141,20 @@ if(!active && HasFuel()) active = 1 icon_state = "portgen1" - src.updateUsrDialog() + src.updateUsrDialog(usr) if(href_list["action"] == "disable") if (active) active = 0 icon_state = "portgen0" - src.updateUsrDialog() + src.updateUsrDialog(usr) if(href_list["action"] == "lower_power") if (power_output > 1) power_output-- - src.updateUsrDialog() + src.updateUsrDialog(usr) if (href_list["action"] == "higher_power") if (power_output < 4 || emagged) power_output++ - src.updateUsrDialog() + src.updateUsrDialog(usr) if (href_list["action"] == "close") usr << browse(null, "window=port_gen") usr.machine = null diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index bf73d233a4..6d7513f694 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -268,7 +268,7 @@ emagged = 1 return 1 -/obj/machinery/power/port_gen/pacman/attackby(var/obj/item/O as obj, var/mob/user as mob) +/obj/machinery/power/port_gen/pacman/attackby(var/obj/item/O, var/mob/user) if(istype(O, sheet_path)) var/obj/item/stack/addstack = O var/amount = min((max_sheets - sheets), addstack.get_amount()) @@ -278,7 +278,7 @@ to_chat(user, span_notice("You add [amount] sheet\s to the [src.name].")) sheets += amount addstack.use(amount) - updateUsrDialog() + updateUsrDialog(user) return else if(!active) if(O.has_tool_quality(TOOL_WRENCH)) @@ -299,7 +299,7 @@ return return ..() -/obj/machinery/power/port_gen/pacman/attack_hand(mob/user as mob) +/obj/machinery/power/port_gen/pacman/attack_hand(mob/user) ..() if (!anchored) return diff --git a/code/modules/projectiles/guns/projectile/dartgun.dm b/code/modules/projectiles/guns/projectile/dartgun.dm index 7c7582da1f..f4117ba5b5 100644 --- a/code/modules/projectiles/guns/projectile/dartgun.dm +++ b/code/modules/projectiles/guns/projectile/dartgun.dm @@ -108,7 +108,7 @@ for(var/datum/reagent/R in B.reagents.reagent_list) . += span_notice("[R.volume] units of [R.name]") -/obj/item/gun/projectile/dartgun/attackby(obj/item/I as obj, mob/user as mob) +/obj/item/gun/projectile/dartgun/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/reagent_containers/glass)) if(!istype(I, container_type)) to_chat(user, span_blue("[I] doesn't seem to fit into [src].")) @@ -121,7 +121,7 @@ B.loc = src beakers += B to_chat(user, span_blue("You slot [B] into [src].")) - src.updateUsrDialog() + updateUsrDialog(user) return 1 ..() @@ -197,7 +197,7 @@ B.loc = get_turf(src) else if (href_list["eject_cart"]) unload_ammo(usr) - src.updateUsrDialog() + src.updateUsrDialog(usr) return ///Variants of the Dartgun and Chemdarts./// diff --git a/code/modules/reagents/machinery/alembic.dm b/code/modules/reagents/machinery/alembic.dm index f88917dc6b..9257456893 100644 --- a/code/modules/reagents/machinery/alembic.dm +++ b/code/modules/reagents/machinery/alembic.dm @@ -31,7 +31,7 @@ icon_state = "alembic-bubble" return -/obj/machinery/alembic/attackby(var/obj/item/potion_material/O as obj, var/mob/user as mob) +/obj/machinery/alembic/attackby(var/obj/item/potion_material/O, var/mob/user) if(istype(O,/obj/item/potion_material)) if(potion_reagent != 0 ) to_chat(user, span_warning("There is already a reagent in the alembic!")) @@ -44,7 +44,7 @@ O.loc = src update_icon() to_chat(user, span_notice("You place the [O] in the alembic.")) - src.updateUsrDialog() + src.updateUsrDialog(user) return else if(istype(O,/obj/item/potion_base)) if(base_reagent != 0 ) @@ -56,13 +56,13 @@ O.loc = src update_icon() to_chat(user, span_notice("You place the [O] in the alembic.")) - src.updateUsrDialog() + src.updateUsrDialog(user) return else to_chat(user, span_warning("This item is no use in the alembic.")) return -/obj/machinery/alembic/attack_hand(mob/user as mob) +/obj/machinery/alembic/attack_hand(mob/user) if(potion_reagent == 0 || base_reagent == 0) //If there is nothing in there to_chat(user, span_warning("The alembic is not yet full!")) diff --git a/code/modules/reagents/machinery/grinder.dm b/code/modules/reagents/machinery/grinder.dm index 68755f616b..af58171705 100644 --- a/code/modules/reagents/machinery/grinder.dm +++ b/code/modules/reagents/machinery/grinder.dm @@ -105,7 +105,7 @@ var/global/list/ore_reagents = list( //have a number of reageents divisible by R icon_state = "juicer"+num2text(!isnull(beaker)) return -/obj/machinery/reagentgrinder/attackby(var/obj/item/O as obj, var/mob/user as mob) +/obj/machinery/reagentgrinder/attackby(var/obj/item/O, var/mob/user) if(beaker) if(default_deconstruction_screwdriver(user, O)) return @@ -124,11 +124,11 @@ var/global/list/ore_reagents = list( //have a number of reageents divisible by R if (beaker) return 1 else - src.beaker = O + beaker = O user.drop_item() O.loc = src update_icon() - src.updateUsrDialog() + updateUsrDialog(user) return 0 if(holdingitems && holdingitems.len >= limit) @@ -159,7 +159,7 @@ var/global/list/ore_reagents = list( //have a number of reageents divisible by R else to_chat(user, "You fill \the [src] from \the [O].") - src.updateUsrDialog() + src.updateUsrDialog(user) return 0 if(istype(O,/obj/item/gripper)) @@ -194,10 +194,10 @@ var/global/list/ore_reagents = list( //have a number of reageents divisible by R return replace_beaker(user) -/obj/machinery/reagentgrinder/attack_hand(mob/user as mob) +/obj/machinery/reagentgrinder/attack_hand(mob/user) interact(user) -/obj/machinery/reagentgrinder/interact(mob/user as mob) // The microwave Menu //I am reasonably certain that this is not a microwave +/obj/machinery/reagentgrinder/interact(mob/user) // The microwave Menu //I am reasonably certain that this is not a microwave if(inuse || user.incapacitated()) return diff --git a/code/modules/reagents/machinery/injector_maker.dm b/code/modules/reagents/machinery/injector_maker.dm index 153e0f2c5f..36cd00fc59 100644 --- a/code/modules/reagents/machinery/injector_maker.dm +++ b/code/modules/reagents/machinery/injector_maker.dm @@ -52,7 +52,7 @@ return -/obj/machinery/injector_maker/attackby(var/obj/item/O as obj, var/mob/user as mob) +/obj/machinery/injector_maker/attackby(var/obj/item/O, var/mob/user) if (istype(O, /obj/item/multitool)) return ..() @@ -68,7 +68,7 @@ user.drop_item() O.loc = src update_icon() - src.updateUsrDialog() + src.updateUsrDialog(user) return 0 @@ -144,10 +144,10 @@ for(var/datum/reagent/R in beaker.reagents.reagent_list) . += span_notice("- [R.volume] units of [R.name].") -/obj/machinery/injector_maker/attack_hand(mob/user as mob) +/obj/machinery/injector_maker/attack_hand(mob/user) interact(user) -/obj/machinery/injector_maker/interact(mob/user as mob) +/obj/machinery/injector_maker/interact(mob/user) if(user.incapacitated() || !beaker) return diff --git a/code/modules/resleeving/designer.dm b/code/modules/resleeving/designer.dm index 27767e8d9e..f46eb47735 100644 --- a/code/modules/resleeving/designer.dm +++ b/code/modules/resleeving/designer.dm @@ -39,7 +39,7 @@ disk = null . = ..() -/obj/machinery/computer/transhuman/designer/attackby(obj/item/W as obj, mob/user as mob) +/obj/machinery/computer/transhuman/designer/attackby(obj/item/W, mob/user) if(istype(W, /obj/item/disk/body_record)) user.unEquip(W) disk = W @@ -49,10 +49,10 @@ else . = ..() -/obj/machinery/computer/transhuman/designer/attack_ai(mob/user as mob) +/obj/machinery/computer/transhuman/designer/attack_ai(mob/user) attack_hand(user) -/obj/machinery/computer/transhuman/designer/attack_hand(mob/user as mob) +/obj/machinery/computer/transhuman/designer/attack_hand(mob/user) add_fingerprint(user) if(inoperable()) return diff --git a/code/modules/resleeving/machines.dm b/code/modules/resleeving/machines.dm index b6517f52c9..03ca720a28 100644 --- a/code/modules/resleeving/machines.dm +++ b/code/modules/resleeving/machines.dm @@ -401,13 +401,13 @@ return 1 -/obj/machinery/transhuman/synthprinter/attack_hand(mob/user as mob) +/obj/machinery/transhuman/synthprinter/attack_hand(mob/user) if((busy == 0) || (stat & NOPOWER)) return to_chat(user, "Current print cycle is [busy]% complete.") return -/obj/machinery/transhuman/synthprinter/attackby(obj/item/W as obj, mob/user as mob) +/obj/machinery/transhuman/synthprinter/attackby(obj/item/W, mob/user) src.add_fingerprint(user) if(busy) to_chat(user, span_notice("\The [src] is busy. Please wait for completion of previous operation.")) @@ -442,7 +442,7 @@ else to_chat(user, "\the [src] cannot hold more [S.name].") - updateUsrDialog() + updateUsrDialog(user) return /obj/machinery/transhuman/synthprinter/update_icon() @@ -466,6 +466,7 @@ anchored = TRUE var/blur_amount var/confuse_amount + // var/sickness_duration // CHOMPRemove var/mob/living/carbon/human/occupant = null var/connected = null @@ -495,7 +496,12 @@ manip_rating += M.rating blur_amount = (48 - manip_rating * 8) -/obj/machinery/transhuman/resleever/attack_hand(mob/user as mob) + /* CHOMPRemove Start + var/total_rating = manip_rating + scan_rating + sickness_duration = (45 - (total_rating-4)*1.875) MINUTES // 45 minutes default, 30 minutes with max non-anomaly upgrades, 15 minutes with max anomaly ones + */// CHOMPRemove End + +/obj/machinery/transhuman/resleever/attack_hand(mob/user) tgui_interact(user) /obj/machinery/transhuman/resleever/tgui_interact(mob/user, datum/tgui/ui = null) @@ -532,7 +538,7 @@ //End chomp edit return data -/obj/machinery/transhuman/resleever/attackby(obj/item/W as obj, mob/user as mob) +/obj/machinery/transhuman/resleever/attackby(obj/item/W, mob/user) src.add_fingerprint(user) if(default_deconstruction_screwdriver(user, W)) return @@ -547,7 +553,7 @@ var/mob/M = G.affecting if(put_mob(M)) qdel(G) - src.updateUsrDialog() + src.updateUsrDialog(user) return //Don't call up else we'll get attack messsages if(istype(W, /obj/item/paicard/sleevecard)) var/obj/item/paicard/sleevecard/C = W @@ -560,7 +566,7 @@ return ..() -/obj/machinery/transhuman/resleever/MouseDrop_T(mob/living/carbon/O, mob/user as mob) +/obj/machinery/transhuman/resleever/MouseDrop_T(mob/living/carbon/O, mob/user) if(!istype(O)) return 0 //not a mob if(user.incapacitated()) @@ -583,10 +589,10 @@ if(put_mob(O)) if(O == user) - src.updateUsrDialog() + updateUsrDialog(user) visible_message("[user] climbs into \the [src].") else - src.updateUsrDialog() + updateUsrDialog(user) visible_message("[user] puts [O] into \the [src].") add_fingerprint(user) @@ -662,6 +668,19 @@ occupant.confused = max(occupant.confused, confuse_amount) occupant.eye_blurry = max(occupant.eye_blurry, blur_amount) + /* CHOMPRemove Start + // Vore deaths get a fake modifier labeled as such + if(!occupant.mind) + log_debug("[occupant] didn't have a mind to check for vore_death, which may be problematic.") + + if(occupant.mind?.vore_death) + occupant.add_modifier(/datum/modifier/faux_resleeving_sickness, sickness_duration) + occupant.mind.vore_death = FALSE + // Normal ones get a normal modifier to nerf charging into combat + else + occupant.add_modifier(/datum/modifier/resleeving_sickness, sickness_duration) + */// CHOMPRemove End + if(occupant.mind && occupant.original_player && ckey(occupant.mind.key) != occupant.original_player) log_and_message_admins("is now a cross-sleeved character. Body originally belonged to [occupant.real_name]. Mind is now [occupant.mind.name].",occupant) @@ -682,7 +701,7 @@ icon_state = "implantchair" return -/obj/machinery/transhuman/resleever/proc/put_mob(mob/living/carbon/human/M as mob) +/obj/machinery/transhuman/resleever/proc/put_mob(mob/living/carbon/human/M) if(!ishuman(M)) to_chat(usr, span_warning("\The [src] cannot hold this!")) return diff --git a/code/modules/security levels/keycard authentication.dm b/code/modules/security levels/keycard authentication.dm index a624504aaa..6b7ea2ee21 100644 --- a/code/modules/security levels/keycard authentication.dm +++ b/code/modules/security levels/keycard authentication.dm @@ -117,7 +117,7 @@ if(href_list["reset"]) reset() - updateUsrDialog() + updateUsrDialog(usr) add_fingerprint(usr) return diff --git a/code/modules/stockmarket/computer.dm b/code/modules/stockmarket/computer.dm index ae2e37b46a..245a95ac31 100644 --- a/code/modules/stockmarket/computer.dm +++ b/code/modules/stockmarket/computer.dm @@ -345,4 +345,4 @@ usr.machine = src src.add_fingerprint(usr) - src.updateUsrDialog() + src.updateUsrDialog(usr) diff --git a/code/modules/xenobio2/machinery/core_extractor.dm b/code/modules/xenobio2/machinery/core_extractor.dm index 52766a3081..59d2744446 100644 --- a/code/modules/xenobio2/machinery/core_extractor.dm +++ b/code/modules/xenobio2/machinery/core_extractor.dm @@ -91,7 +91,7 @@ else set_light(2, 2, emptycolor) -/obj/machinery/slime/extractor/proc/extract_cores() +/obj/machinery/slime/extractor/proc/extract_cores(mob/user) if(!src.occupant) src.visible_message("[icon2html(src,viewers(src))] [src] pings unhappily.") else if(inuse) @@ -99,31 +99,36 @@ inuse = 1 update_light_color() - spawn(30) - icon_state = "scanner_1old" - for(var/i=1 to occupant.cores) - var/obj/item/xenoproduct/slime/core/C = new(src) - C.traits = new() - occupant.traitdat.copy_traits(C.traits) + addtimer(CALLBACK(src, PROC_REF(do_extraction), user) , 3 SECONDS, TIMER_DELETE_ME) - C.nameVar = occupant.nameVar +/obj/machinery/slime/extractor/proc/do_extraction(mob/user) + PRIVATE_PROC(TRUE) + icon_state = "scanner_1old" + for(var/i=1 to occupant.cores) + var/obj/item/xenoproduct/slime/core/C = new(src) + C.traits = new() + occupant.traitdat.copy_traits(C.traits) - C.create_reagents(C.traits.traits[TRAIT_XENO_CHEMVOL]) - for(var/reagent in occupant.traitdat.chems) - C.reagents.add_reagent(reagent, occupant.traitdat.chems[reagent]) + C.nameVar = occupant.nameVar - C.color = C.traits.traits[TRAIT_XENO_COLOR] - if(occupant.traitdat.get_trait(TRAIT_XENO_BIOLUMESCENT)) - C.set_light(occupant.traitdat.get_trait(TRAIT_XENO_GLOW_STRENGTH),occupant.traitdat.get_trait(TRAIT_XENO_GLOW_RANGE), occupant.traitdat.get_trait(TRAIT_XENO_BIO_COLOR)) + C.create_reagents(C.traits.traits[TRAIT_XENO_CHEMVOL]) + for(var/reagent in occupant.traitdat.chems) + C.reagents.add_reagent(reagent, occupant.traitdat.chems[reagent]) - spawn(30) - icon_state = "scanner_0old" - qdel(occupant) - occupant = null //If qdel's being slow or acting up, let's make sure we can't make more cores from this one. - inuse = 0 - eject_contents() - update_light_color() - src.updateUsrDialog() + C.color = C.traits.traits[TRAIT_XENO_COLOR] + if(occupant.traitdat.get_trait(TRAIT_XENO_BIOLUMESCENT)) + C.set_light(occupant.traitdat.get_trait(TRAIT_XENO_GLOW_STRENGTH),occupant.traitdat.get_trait(TRAIT_XENO_GLOW_RANGE), occupant.traitdat.get_trait(TRAIT_XENO_BIO_COLOR)) + qdel(occupant) + occupant = null //If qdel's being slow or acting up, let's make sure we can't make more cores from this one. + addtimer(CALLBACK(src, PROC_REF(finish_extraction), user) , 3 SECONDS, TIMER_DELETE_ME) + +/obj/machinery/slime/extractor/proc/finish_extraction(mob/user) + PRIVATE_PROC(TRUE) + icon_state = "scanner_0old" + inuse = 0 + eject_contents() + update_light_color() + src.updateUsrDialog(user) /obj/machinery/slime/extractor/proc/eject_slime() if(occupant) @@ -168,10 +173,10 @@ usr.set_machine(src) switch(href_list["action"]) if ("extract") - extract_cores() + extract_cores(usr) if("eject") eject_slime() - src.updateUsrDialog() + src.updateUsrDialog(usr) return //Circuit board below, diff --git a/code/modules/xenobio2/machinery/gene_manipulators.dm b/code/modules/xenobio2/machinery/gene_manipulators.dm index c019d83572..9b24968ae6 100644 --- a/code/modules/xenobio2/machinery/gene_manipulators.dm +++ b/code/modules/xenobio2/machinery/gene_manipulators.dm @@ -246,7 +246,7 @@ usr.set_machine(src) src.add_fingerprint(usr) - src.updateUsrDialog() + src.updateUsrDialog(usr) return /obj/machinery/xenobio/editor diff --git a/code/modules/xenobio2/machinery/slime_replicator.dm b/code/modules/xenobio2/machinery/slime_replicator.dm index 82c6634fa2..d08af1c795 100644 --- a/code/modules/xenobio2/machinery/slime_replicator.dm +++ b/code/modules/xenobio2/machinery/slime_replicator.dm @@ -55,7 +55,7 @@ else set_light(2, 2, emptycolor) -/obj/machinery/slime/replicator/proc/replicate_slime() +/obj/machinery/slime/replicator/proc/replicate_slime(mob/user) if(!src.core) src.visible_message("[icon2html(src,viewers(src))] [src] pings unhappily.") else if(inuse) @@ -64,21 +64,28 @@ inuse = 1 update_light_color() icon_state = "restruct_1" - spawn(30) - var/mob/living/simple_mob/xeno/slime/S = new(src) - S.traitdat = new() //New instance, so that if the core is deleted, the slime retains a trait datum. - S.nameVar = core.nameVar - S.name = "[S.nameVar] baby slime" - core.traits.copy_traits(S.traitdat) - S.ProcessTraits() + addtimer(CALLBACK(src, PROC_REF(spawn_slime), user), 3 SECONDS, TIMER_DELETE_ME) spawn(30) - qdel(core) - core = null //If qdel's being a bit slow or acting up, let's just make sure we can't clone the core. - inuse = 0 - eject_slime() - icon_state = "restruct_0" - update_light_color() - src.updateUsrDialog() + +/obj/machinery/slime/replicator/proc/spawn_slime(mob/user) + PRIVATE_PROC(TRUE) + var/mob/living/simple_mob/xeno/slime/S = new(src) + S.traitdat = new() //New instance, so that if the core is deleted, the slime retains a trait datum. + S.nameVar = core.nameVar + S.name = "[S.nameVar] baby slime" + core.traits.copy_traits(S.traitdat) + S.ProcessTraits() + qdel(core) + core = null //If qdel's being a bit slow or acting up, let's just make sure we can't clone the core. + addtimer(CALLBACK(src, PROC_REF(finish_spawn)), 3 SECONDS, TIMER_DELETE_ME) + +/obj/machinery/slime/replicator/proc/finish_spawn(mob/user) + PRIVATE_PROC(TRUE) + inuse = 0 + eject_slime() + icon_state = "restruct_0" + update_light_color() + src.updateUsrDialog(user) /obj/machinery/slime/replicator/proc/eject_slime() for(var/mob/thing in contents) @@ -123,10 +130,10 @@ usr.set_machine(src) switch(href_list["action"]) if ("replicate") - replicate_slime() + replicate_slime(usr) if("eject") eject_core() - src.updateUsrDialog() + src.updateUsrDialog(usr) return //Circuit board below, diff --git a/maps/submaps/engine_submaps_yw/engine_yw.dm b/maps/submaps/engine_submaps_yw/engine_yw.dm index f124fb868e..845ec44d8e 100644 --- a/maps/submaps/engine_submaps_yw/engine_yw.dm +++ b/maps/submaps/engine_submaps_yw/engine_yw.dm @@ -160,7 +160,7 @@ usr.unset_machine() add_fingerprint(usr) - updateUsrDialog() + updateUsrDialog(usr) return //Take the engine tpe we're building, warn engineering, and pass it to the engine loader.