From 5e2c921933d79763f1bc14050d2f89be0e6c1a61 Mon Sep 17 00:00:00 2001 From: Spamcat Date: Mon, 18 Mar 2013 18:01:51 +0400 Subject: [PATCH 1/6] Fixed nanopaste messages. (and some my shitcode) --- code/game/objects/items/stacks/nanopaste.dm | 10 +++++----- code/modules/reagents/reagent_containers/syringes.dm | 2 +- code/modules/research/designs.dm | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/code/game/objects/items/stacks/nanopaste.dm b/code/game/objects/items/stacks/nanopaste.dm index c4697e63b6f..5b0be916c35 100644 --- a/code/game/objects/items/stacks/nanopaste.dm +++ b/code/game/objects/items/stacks/nanopaste.dm @@ -1,7 +1,7 @@ /obj/item/stack/nanopaste name = "nanopaste" singular_name = "nanite swarm" - desc = "A tube of paste containing swarms of repair nanties. Very effective in repairing robotic machinery." + desc = "A tube of paste containing swarms of repair nanites. Very effective in repairing robotic machinery." icon = 'icons/obj/nanopaste.dmi' icon_state = "tube" origin_tech = "materials=4;engineering=3" @@ -18,8 +18,8 @@ R.adjustFireLoss(-60) R.updatehealth() use(1) - user.visible_message("You apply some [src] at [R]'s damaged areas.",\ - "\The [user] applied some [src] at [R]'s damaged areas.") + user.visible_message("\The [user] applied some [src] at [R]'s damaged areas.",\ + "You apply some [src] at [R]'s damaged areas.") else user << "All [R]'s systems are nominal." @@ -31,7 +31,7 @@ S.heal_damage(30, 30, robo_repair = 1) H.updatehealth() use(1) - user.visible_message("You apply some nanite paste at [user == M ? "your" : "[M]'s"] [S.display_name]",\ - "\The [user] applies some nanite paste at[user != M ? " \the [M]'s" : " \the"][S.display_name] with \the [src]") + user.visible_message("\The [user] applies some nanite paste at[user != M ? " \the [M]'s" : " \the"][S.display_name] with \the [src].",\ + "You apply some nanite paste at [user == M ? "your" : "[M]'s"] [S.display_name].") else user << "Nothing to fix here." diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 6edc909cd8d..45cf1331e9e 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -158,7 +158,7 @@ update_icon() if(mode == SYRINGE_BROKEN) icon_state = "broken" - overlays = null //dirty fix + overlays.Cut() return var/rounded_vol = round(reagents.total_volume,5) overlays.Cut() diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index f1a4e8b683c..fa0c2b39359 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -1323,7 +1323,7 @@ datum/design/synthetic_flash datum/design/nanopaste name = "nanopaste" - desc = "A tube of paste containing swarms of repair nanties. Very effective in repairing robotic machinery." + desc = "A tube of paste containing swarms of repair nanites. Very effective in repairing robotic machinery." id = "nanopaste" req_tech = list("materials" = 4, "engineering" = 3) build_type = PROTOLATHE From e417ad2ec7ed4eef5190667655f1a06021845bf2 Mon Sep 17 00:00:00 2001 From: Spamcat Date: Mon, 18 Mar 2013 18:03:53 +0400 Subject: [PATCH 2/6] Fixed ghosts hearing whispers. --- code/modules/mob/living/carbon/human/whisper.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/whisper.dm b/code/modules/mob/living/carbon/human/whisper.dm index b844ae784a9..42cb5038f39 100644 --- a/code/modules/mob/living/carbon/human/whisper.dm +++ b/code/modules/mob/living/carbon/human/whisper.dm @@ -140,5 +140,5 @@ for (var/mob/M in dead_mob_list) if (!(M.client)) continue - if (M.stat > 1 && !(M in heard_a)) + if (M.stat > 1 && !(M in heard_a) && (M.client.prefs.toggles & CHAT_GHOSTEARS)) M.show_message(rendered, 2) From 4036ee3732a9a2fb826ef9a2662462ca3c3973f3 Mon Sep 17 00:00:00 2001 From: Spamcat Date: Mon, 18 Mar 2013 18:37:57 +0400 Subject: [PATCH 3/6] Fixed dem closets. --- code/modules/research/xenoarchaeology/misc.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/research/xenoarchaeology/misc.dm b/code/modules/research/xenoarchaeology/misc.dm index ec1f4f18046..4abd5014922 100644 --- a/code/modules/research/xenoarchaeology/misc.dm +++ b/code/modules/research/xenoarchaeology/misc.dm @@ -82,6 +82,9 @@ /obj/structure/closet/excavation name = "Excavation tools" icon_state = "toolcloset" + icon_closed = "toolcloset" + icon_opened = "toolclosetopen" + New() ..() From 1758bf8314c476363475e92ff969ad93d0a03070 Mon Sep 17 00:00:00 2001 From: Spamcat Date: Mon, 18 Mar 2013 19:54:03 +0400 Subject: [PATCH 4/6] Fixed spiderbots grabbing items out of reach. --- .../mob/living/simple_animal/friendly/spiderbot.dm | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm index 86aeae28538..9a01fc3ff87 100644 --- a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm +++ b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm @@ -315,11 +315,16 @@ var/obj/selection = input("Select an item.", "Pickup") in items + items.Cut() if(selection) - held_item = selection - selection.loc = src - visible_message("\blue [src] scoops up the [held_item]!", "\blue You grab the [held_item]!", "You hear a skittering noise and a clink.") - return held_item + for(var/obj/item/I in view(1, src)) + if(selection == I) + held_item = selection + selection.loc = src + visible_message("\blue [src] scoops up the [held_item]!", "\blue You grab the [held_item]!", "You hear a skittering noise and a clink.") + return held_item + else + src << "\red \The [selection] is too far away." src << "\red There is nothing of interest to take." return 0 \ No newline at end of file From aef8daed235b20cbc13ca1cab81cc9a9de2ca272 Mon Sep 17 00:00:00 2001 From: Spamcat Date: Tue, 19 Mar 2013 14:02:23 +0400 Subject: [PATCH 5/6] Smooth movement fix. --- maps/tgstation.2.1.0.0.1.dmm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/maps/tgstation.2.1.0.0.1.dmm b/maps/tgstation.2.1.0.0.1.dmm index 107f33ab1a1..77001d4fe8a 100644 --- a/maps/tgstation.2.1.0.0.1.dmm +++ b/maps/tgstation.2.1.0.0.1.dmm @@ -8461,7 +8461,7 @@ "dgK" = (/obj/structure/lattice,/obj/structure/transit_tube{tag = "icon-N-S"; icon_state = "N-S"},/turf/space,/area) "dgL" = (/turf/simulated/wall/r_wall,/area/research_outpost/atmos{name = "Spectrometry Lab Atmospherics"}) "dgM" = (/obj/machinery/atmospherics/trinary/filter{dir = 1; filter_type = 2; icon_state = "intact_on"; name = "Gas filter (N2 tank)"; on = 1},/turf/simulated/floor/plating,/area/research_outpost/atmos{name = "Spectrometry Lab Atmospherics"}) -"dgN" = (/obj/machinery/alarm{step_y = 25},/obj/machinery/atmospherics/binary/pump{dir = 4; icon_state = "intact_on"; on = 1},/turf/simulated/floor/plating,/area/research_outpost/atmos{name = "Spectrometry Lab Atmospherics"}) +"dgN" = (/obj/machinery/alarm{pixel_y = 25},/obj/machinery/atmospherics/binary/pump{dir = 4; icon_state = "intact_on"; on = 1},/turf/simulated/floor/plating,/area/research_outpost/atmos{name = "Spectrometry Lab Atmospherics"}) "dgO" = (/obj/machinery/atmospherics/pipe/simple{color = "blue"; dir = 10; icon_state = "intact-b"; initialize_directions = 6; level = 2; name = "pipe"},/turf/simulated/floor/plating,/area/research_outpost/atmos{name = "Spectrometry Lab Atmospherics"}) "dgP" = (/obj/machinery/atmospherics/unary/cold_sink/freezer{current_temperature = 273; dir = 2; on = 1},/turf/simulated/floor/plating,/area/research_outpost/atmos{name = "Spectrometry Lab Atmospherics"}) "dgQ" = (/obj/machinery/atmospherics/unary/cold_sink/freezer{current_temperature = 273; dir = 2; on = 1},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/research_outpost/atmos{name = "Spectrometry Lab Atmospherics"}) @@ -8596,7 +8596,7 @@ "djp" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/research_outpost/spectro) "djq" = (/obj/machinery/anomaly/ion_mobility,/turf/simulated/floor{icon_state = "white"},/area/research_outpost/spectro) "djr" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/research_outpost/spectro) -"djs" = (/obj/structure/table,/obj/machinery/power/apc{dir = 4; name = "Mass Spectrometry APC"; pixel_x = 24; pixel_y = 0; step_x = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/research_outpost/spectro) +"djs" = (/obj/structure/table,/obj/machinery/power/apc{dir = 4; name = "Mass Spectrometry APC"; pixel_x = 24; pixel_y = 0; pixel_x = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/research_outpost/spectro) "djt" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 3; pixel_x = 2; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/research_outpost/sample) "dju" = (/obj/structure/stool,/turf/simulated/floor{icon_state = "white"},/area/research_outpost/sample) "djv" = (/obj/structure/table,/obj/machinery/bunsen_burner,/turf/simulated/floor{icon_state = "white"},/area/research_outpost/sample) From 86cc28dd57d5f43102f5b8b73e1597be4b00c284 Mon Sep 17 00:00:00 2001 From: Spamcat Date: Tue, 19 Mar 2013 14:37:21 +0400 Subject: [PATCH 6/6] Fixed posibrain installed into spiderbot bug, made posibrains a child class of MMI. --- code/game/machinery/computer/ai_core.dm | 2 +- code/game/mecha/mecha.dm | 4 +-- code/game/objects/items/robot/robot_parts.dm | 2 +- .../mob/living/carbon/brain/posibrain.dm | 27 ++++++++++--------- code/modules/mob/living/carbon/brain/say.dm | 4 +-- .../modules/mob/living/silicon/robot/robot.dm | 2 +- .../simple_animal/friendly/spiderbot.dm | 2 +- maps/tgstation.2.1.0.0.1.dmm | 2 +- 8 files changed, 23 insertions(+), 22 deletions(-) diff --git a/code/game/machinery/computer/ai_core.dm b/code/game/machinery/computer/ai_core.dm index 939b87aa7fb..f24d0ce2b85 100644 --- a/code/game/machinery/computer/ai_core.dm +++ b/code/game/machinery/computer/ai_core.dm @@ -117,7 +117,7 @@ laws.add_inherent_law(M.newFreeFormLaw) usr << "Added a freeform law." - if(istype(P, /obj/item/device/mmi) || istype(P, /obj/item/device/posibrain)) + if(istype(P, /obj/item/device/mmi) || istype(P, /obj/item/device/mmi/posibrain)) if(!P:brainmob) user << "\red Sticking an empty [P] into the frame would sort of defeat the purpose." return diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 225318a9b86..d70512148c6 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -651,7 +651,7 @@ /obj/mecha/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W, /obj/item/device/mmi) || istype(W, /obj/item/device/posibrain)) + if(istype(W, /obj/item/device/mmi) || istype(W, /obj/item/device/mmi/posibrain)) if(mmi_move_inside(W,user)) user << "[src]-MMI interface initialized successfuly" else @@ -1136,7 +1136,7 @@ src.occupant.client.perspective = MOB_PERSPECTIVE */ src.occupant << browse(null, "window=exosuit") - if(istype(mob_container, /obj/item/device/mmi) || istype(mob_container, /obj/item/device/posibrain)) + if(istype(mob_container, /obj/item/device/mmi) || istype(mob_container, /obj/item/device/mmi/posibrain)) var/obj/item/device/mmi/mmi = mob_container if(mmi.brainmob) occupant.loc = mmi diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index 62dfb126bf5..b4107855639 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -161,7 +161,7 @@ else user << "\blue You need to attach a flash to it first!" - if(istype(W, /obj/item/device/mmi) || istype(W, /obj/item/device/posibrain)) + if(istype(W, /obj/item/device/mmi) || istype(W, /obj/item/device/mmi/posibrain)) var/obj/item/device/mmi/M = W if(check_completion()) if(!istype(loc,/turf)) diff --git a/code/modules/mob/living/carbon/brain/posibrain.dm b/code/modules/mob/living/carbon/brain/posibrain.dm index fe3a0db56c5..8ed5860ecf8 100644 --- a/code/modules/mob/living/carbon/brain/posibrain.dm +++ b/code/modules/mob/living/carbon/brain/posibrain.dm @@ -1,4 +1,4 @@ -/obj/item/device/posibrain +/obj/item/device/mmi/posibrain name = "positronic brain" desc = "A cube of shining metal, four inches to a side and covered in shallow grooves." icon = 'icons/obj/assemblies.dmi' @@ -6,14 +6,15 @@ w_class = 3 origin_tech = "engineering=4;materials=4;bluespace=2;programming=4" - var/list/construction_cost = list("metal"=500,"glass"=500,"silver"=200,"gold"=200,"plasma"=100,"diamond"=10) - var/construction_time = 75 + construction_cost = list("metal"=500,"glass"=500,"silver"=200,"gold"=200,"plasma"=100,"diamond"=10) + construction_time = 75 var/searching = 0 var/askDelay = 10 * 60 * 1 - var/mob/living/carbon/brain/brainmob = null + mob/living/carbon/brain/brainmob = null req_access = list(access_robotics) - var/locked = 0 - var/obj/mecha = null//This does not appear to be used outside of reference in mecha.dm. + locked = 0 + mecha = null//This does not appear to be used outside of reference in mecha.dm. + attack_self(mob/user as mob) if(!brainmob.key && searching == 0) @@ -73,7 +74,7 @@ for (var/mob/M in viewers(T)) M.show_message("\blue The positronic brain buzzes quietly, and the golden lights fade away. Perhaps you could try again?") -/obj/item/device/posibrain/examine() +/obj/item/device/mmi/posibrain/examine() set src in oview() @@ -97,20 +98,20 @@ usr << msg return -/obj/item/device/posibrain/emp_act(severity) - if(!brainmob) +/obj/item/device/mmi/posibrain/emp_act(severity) + if(!src.brainmob) return else switch(severity) if(1) - brainmob.emp_damage += rand(20,30) + src.brainmob.emp_damage += rand(20,30) if(2) - brainmob.emp_damage += rand(10,20) + src.brainmob.emp_damage += rand(10,20) if(3) - brainmob.emp_damage += rand(0,10) + src.brainmob.emp_damage += rand(0,10) ..() -/obj/item/device/posibrain/New() +/obj/item/device/mmi/posibrain/New() src.brainmob = new(src) src.brainmob.name = "[pick(list("PBU","HIU","SINA","ARMA","OSI"))]-[rand(100, 999)]" diff --git a/code/modules/mob/living/carbon/brain/say.dm b/code/modules/mob/living/carbon/brain/say.dm index de169087b44..159f899f894 100644 --- a/code/modules/mob/living/carbon/brain/say.dm +++ b/code/modules/mob/living/carbon/brain/say.dm @@ -2,10 +2,10 @@ if (silent) return - if(!(container && (istype(container, /obj/item/device/mmi) || istype(container, /obj/item/device/posibrain)))) + if(!(container && (istype(container, /obj/item/device/mmi) || istype(container, /obj/item/device/mmi/posibrain)))) return //No MMI, can't speak, bucko./N else - if ((copytext(message, 1, 3) == ":b") || (copytext(message, 1, 3) == ":B") && (container && istype(container, /obj/item/device/posibrain))) + if ((copytext(message, 1, 3) == ":b") || (copytext(message, 1, 3) == ":B") && (container && istype(container, /obj/item/device/mmi/posibrain))) message = copytext(message, 3) message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) robot_talk(message) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index b82f7b1d984..5415ba99003 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -194,7 +194,7 @@ /mob/living/silicon/robot/proc/updatename(var/prefix as text) - if(istype(mmi, /obj/item/device/posibrain)) + if(istype(mmi, /obj/item/device/mmi/posibrain)) braintype = "Android" else braintype = "Cyborg" diff --git a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm index 9a01fc3ff87..7a43f0a75e0 100644 --- a/code/modules/mob/living/simple_animal/friendly/spiderbot.dm +++ b/code/modules/mob/living/simple_animal/friendly/spiderbot.dm @@ -43,7 +43,7 @@ /mob/living/simple_animal/spiderbot/attackby(var/obj/item/O as obj, var/mob/user as mob) - if(istype(O, /obj/item/device/mmi) || istype(O, /obj/item/device/posibrain)) + if(istype(O, /obj/item/device/mmi) || istype(O, /obj/item/device/mmi/posibrain)) var/obj/item/device/mmi/B = O if(src.mmi) //There's already a brain in it. user << "\red There's already a brain in [src]!" diff --git a/maps/tgstation.2.1.0.0.1.dmm b/maps/tgstation.2.1.0.0.1.dmm index 77001d4fe8a..08f65388125 100644 --- a/maps/tgstation.2.1.0.0.1.dmm +++ b/maps/tgstation.2.1.0.0.1.dmm @@ -3066,7 +3066,7 @@ "bgX" = (/obj/structure/sign/securearea,/turf/simulated/wall,/area/medical/research{name = "Research Division"}) "bgY" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/clothing/glasses/welding,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/toxins/lab) "bgZ" = (/obj/structure/stool,/obj/effect/landmark/start{name = "Scientist"},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/toxins/lab) -"bha" = (/obj/structure/table,/obj/item/device/posibrain,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/toxins/lab) +"bha" = (/obj/structure/table,/obj/item/device/mmi/posibrain,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/toxins/lab) "bhb" = (/obj/machinery/camera{c_tag = "Research and Development"; dir = 2; network = list("RD"); pixel_x = 22},/obj/machinery/camera{c_tag = "Research and Development Lab"; dir = 2},/obj/machinery/power/apc{dir = 1; name = "Research Lab APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor{dir = 1; icon_state = "whitepurplecorner"},/area/toxins/lab) "bhc" = (/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) "bhd" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab)