diff --git a/code/game/objects/devices/PDA/cart.dm b/code/game/objects/devices/PDA/cart.dm index 643231bb193..f2253bda569 100644 --- a/code/game/objects/devices/PDA/cart.dm +++ b/code/game/objects/devices/PDA/cart.dm @@ -554,8 +554,8 @@ Code: if(ml) if (ml.z != cl.z) continue - - ldat += "Mop - \[[ml.x],[ml.y]\] - [M.reagents.total_volume ? "Wet" : "Dry"]
" + var/direction = get_dir(src, M) + ldat += "Mop - \[[ml.x],[ml.y] ([uppertext(dir2text(direction))])\] - [M.reagents.total_volume ? "Wet" : "Dry"]
" if (!ldat) menu += "None" @@ -571,8 +571,8 @@ Code: if(bl) if (bl.z != cl.z) continue - - ldat += "Bucket - \[[bl.x],[bl.y]\] - Water level: [B.reagents.total_volume]/100
" + var/direction = get_dir(src, B) + ldat += "Bucket - \[[bl.x],[bl.y] ([uppertext(dir2text(direction))])\] - Water level: [B.reagents.total_volume]/100
" if (!ldat) menu += "None" @@ -588,8 +588,8 @@ Code: if(bl) if (bl.z != cl.z) continue - - ldat += "Cleanbot - \[[bl.x],[bl.y]\] - [B.on ? "Online" : "Offline"]
" + var/direction = get_dir(src, B) + ldat += "Cleanbot - \[[bl.x],[bl.y] ([uppertext(dir2text(direction))])\] - [B.on ? "Online" : "Offline"]
" if (!ldat) menu += "None" @@ -598,6 +598,7 @@ Code: else menu += "ERROR: Unable to determine current location." + menu += "

Refresh GPS Locator" proc/add_data(atom/A as mob|obj|turf|area) //I love hashtables. diff --git a/code/game/objects/devices/flash.dm b/code/game/objects/devices/flash.dm index 55541e87d3c..2040228e4a4 100644 --- a/code/game/objects/devices/flash.dm +++ b/code/game/objects/devices/flash.dm @@ -94,7 +94,8 @@ else if(issilicon(M)) M.Weaken(rand(5,10)) - flashfail++ + else + flashfail = 1 if(isrobot(user)) spawn(0) @@ -109,11 +110,19 @@ if(!flashfail) flick("flash2", src) - for(var/mob/O in viewers(user, null)) - O.show_message("[user] blinds [M] with the flash!") + if(!issilicon(M)) + + for(var/mob/O in viewers(user, null)) + O.show_message("[user] blinds [M] with the flash!") + else + + for(var/mob/O in viewers(user, null)) + O.show_message("[user] overloads [M]'s sensors with the flash!") else + for(var/mob/O in viewers(user, null)) O.show_message("[user] fails to blind [M] with the flash!") + return diff --git a/code/modules/chemical/Chemistry-Tools.dm b/code/modules/chemical/Chemistry-Tools.dm index dd067716314..50d4d536375 100644 --- a/code/modules/chemical/Chemistry-Tools.dm +++ b/code/modules/chemical/Chemistry-Tools.dm @@ -2654,7 +2654,8 @@ //Creates a shattering noise and replaces the bottle with a broken_bottle user.drop_item() - var/obj/item/weapon/broken_bottle/B = new /obj/item/weapon/broken_bottle(user) + var/obj/item/weapon/broken_bottle/B = new /obj/item/weapon/broken_bottle(user.loc) + user.put_in_active_hand(B) if(prob(33)) new/obj/item/weapon/shard(target.loc) // Create a glass shard at the target's location! B.icon_state = src.icon_state @@ -2675,7 +2676,7 @@ if(!target) return - if(user.a_intent != "hurt" || user == target || !isGlass) + if(user.a_intent != "hurt" || !isGlass) return ..() @@ -2722,8 +2723,8 @@ //Display an attack message. for(var/mob/O in viewers(user, null)) - O.show_message(text("\red [target] has been hit over the head with a bottle of [src.name], by [user]!"), 1) - + if(target != user) O.show_message(text("\red [target] has been hit over the head with a bottle of [src.name], by [user]!"), 1) + else O.show_message(text("\red [target] has hit himself with a bottle of [src.name] over his head!"), 1) //Weaken the target for the duration that we calculated and divide it by 5. if(armor_duration) target.apply_effect(min(armor_duration, 10) , WEAKEN) // Never weaken more than a flash! @@ -2731,7 +2732,8 @@ else //Default attack message and don't weaken the target. for(var/mob/O in viewers(user, null)) - O.show_message(text("\red [target] has been attacked with a bottle of [src.name], by [user]!"), 1) + if(target != user) O.show_message(text("\red [target] has been attacked with a bottle of [src.name], by [user]!"), 1) + else O.show_message(text("\red [target] has attacked himself with a bottle of [src.name]!"), 1) //Attack logs user.attack_log += text("\[[time_stamp()]\] Has attacked [target.name] ([target.ckey]) with a bottle!") diff --git a/maps/tgstation.2.0.9.dmm b/maps/tgstation.2.0.9.dmm index 63b2271ead6..c9c01cd7c27 100644 --- a/maps/tgstation.2.0.9.dmm +++ b/maps/tgstation.2.0.9.dmm @@ -1383,7 +1383,7 @@ "aAE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/requests_console{department = "Tech storage"; pixel_x = -30},/turf/simulated/floor/plating,/area/storage/tech) "aAF" = (/obj/machinery/light,/obj/machinery/light_switch{pixel_y = -23},/turf/simulated/floor/plating,/area/storage/tech) "aAG" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = "90Curve"},/turf/simulated/floor/plating,/area/storage/tech) -"aAH" = (/obj/machinery/light,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/item/weapon/circuitboard/message_monitor{step_x = 3; step_y = 29},/turf/simulated/floor/plating,/area/storage/tech) +"aAH" = (/obj/machinery/light,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/item/weapon/circuitboard/message_monitor,/turf/simulated/floor/plating,/area/storage/tech) "aAI" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = "90Curve"},/turf/simulated/floor/plating,/area/storage/tech) "aAJ" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/camera{c_tag = "Tech Storage South"; dir = 1; network = "SS13"},/turf/simulated/floor/plating,/area/storage/tech) "aAK" = (/obj/machinery/camera{c_tag = "Secure Construction Area"; dir = 4; network = "SS13"},/obj/item/weapon/crowbar,/obj/item/weapon/extinguisher,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/table/reinforced,/turf/simulated/floor/plating,/area/teleporter/gateway)