diff --git a/code/ATMOSPHERICS/components/unary/oxygen_generator.dm b/code/ATMOSPHERICS/components/unary/oxygen_generator.dm index 721365e6be2..27819ddac3e 100644 --- a/code/ATMOSPHERICS/components/unary/oxygen_generator.dm +++ b/code/ATMOSPHERICS/components/unary/oxygen_generator.dm @@ -42,6 +42,7 @@ obj/machinery/atmospherics/unary/oxygen_generator air_contents.temperature = (current_heat_capacity*air_contents.temperature + 20*added_oxygen*T0C)/(current_heat_capacity+20*added_oxygen) air_contents.oxygen += added_oxygen + air_contents.update_values() if(network) network.update = 1 diff --git a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm index 5606d8113f8..f2ce4a8621a 100644 --- a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm +++ b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm @@ -124,6 +124,7 @@ //Remix the resulting gases filtered_out.update_values() + removed.update_values() air_contents.merge(filtered_out) loc.assume_air(removed) diff --git a/code/ATMOSPHERICS/datum_pipeline.dm b/code/ATMOSPHERICS/datum_pipeline.dm index 56cb9898013..1b63e605481 100644 --- a/code/ATMOSPHERICS/datum_pipeline.dm +++ b/code/ATMOSPHERICS/datum_pipeline.dm @@ -50,6 +50,7 @@ datum/pipeline member.air_temporary.trace_gases += corresponding corresponding.moles = trace_gas.moles*member.volume/air.volume + member.air_temporary.update_values() proc/build_pipeline(obj/machinery/atmospherics/pipe/base) air = new diff --git a/code/ATMOSPHERICS/pipes.dm b/code/ATMOSPHERICS/pipes.dm index 577bf562dce..52aae83099d 100644 --- a/code/ATMOSPHERICS/pipes.dm +++ b/code/ATMOSPHERICS/pipes.dm @@ -341,6 +341,7 @@ obj/machinery/atmospherics/pipe New() initialize_directions = dir + air_temporary.update_values() ..() process() diff --git a/code/WorkInProgress/AI_Visibility.dm b/code/WorkInProgress/AI_Visibility.dm index 79567037892..a51e04b0cd6 100644 --- a/code/WorkInProgress/AI_Visibility.dm +++ b/code/WorkInProgress/AI_Visibility.dm @@ -369,9 +369,10 @@ var/datum/cameranet/cameranet = new() return 0 /mob/living/silicon/ai/switchCamera(var/obj/machinery/camera/C) - eyeobj.loc = C.loc - cameranet.visibility(eyeobj) - return + if(C && isturf(C.loc)) + eyeobj.loc = C.loc + cameranet.visibility(eyeobj) + return /mob/living/silicon/ai/attack_ai(var/mob/user as mob) if (user != src) diff --git a/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm b/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm index d07228e056b..0c6792aeaec 100644 --- a/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm +++ b/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm @@ -4,7 +4,7 @@ voice_name = "tajaran" icon = 'tajaran.dmi' icon_state = "m-none" - var/list/tajspeak_letters + var/list/tajspeak_letters = list("~","*","-") // universal_speak = 1 //hacky fix until someone can figure out how to make them only understand humans taj_talk_understand = 1 @@ -12,8 +12,6 @@ examine_text = "one of the cat-like Tajarans." /mob/living/carbon/human/tajaran/New() - tajspeak_letters = new/list("~","*","-") - var/g = "m" if (gender == FEMALE) g = "f" diff --git a/code/defines/obj/supplypacks.dm b/code/defines/obj/supplypacks.dm index d5398de3498..c4a7f02cd53 100755 --- a/code/defines/obj/supplypacks.dm +++ b/code/defines/obj/supplypacks.dm @@ -806,7 +806,9 @@ /datum/supply_packs/contraband/New() var/list/tempContains = list() - for(var/i = 0,i<5,i++) + for(1 to 5) + if(!contains || !contains.len) + break //Sanity checking. tempContains += pick(contains) - src.contains = tempContains + contains = tempContains ..() \ No newline at end of file diff --git a/code/game/machinery/computer/Operating.dm b/code/game/machinery/computer/Operating.dm index 75d80376b85..213ff565467 100644 --- a/code/game/machinery/computer/Operating.dm +++ b/code/game/machinery/computer/Operating.dm @@ -42,20 +42,34 @@ dat += "Close

" //| Update" if(src.table && (src.table.check_victim())) src.victim = src.table.victim - dat += {" -Patient Information:
-
-Name: [src.victim.real_name]
-Age: [src.victim.age]
-Blood Type: [src.victim.dna.b_type]
-
-Health: [src.victim.health]
-Brute Damage: [src.victim.getBruteLoss()]
-Toxins Damage: [src.victim.getToxLoss()]
-Fire Damage: [src.victim.getFireLoss()]
-Suffocation Damage: [src.victim.getOxyLoss()]
-Patient Status: [src.victim.stat ? "Non-Responsive" : "Stable"]
-"} + if(istype(victim)) + dat += {" + Patient Information:
+
+ Name: [src.victim.real_name]
+ Age: [src.victim.age]
+ Blood Type: [(victim.dna? victim.dna.b_type : "ERROR")]
+
+ Health: [src.victim.health]
+ Brute Damage: [src.victim.getBruteLoss()]
+ Toxins Damage: [src.victim.getToxLoss()]
+ Fire Damage: [src.victim.getFireLoss()]
+ Suffocation Damage: [src.victim.getOxyLoss()]
+ Patient Status: [src.victim.stat ? "Non-Responsive" : "Stable"]
+ "} + else if(istype(victim, /mob/living)) + dat += {" + Patient Information:
+
+ Name: [src.victim.real_name]
+ Age: [src.victim.age]
+ Health: [src.victim.health]
+ Brute Damage: [src.victim.getBruteLoss()]
+ Toxins Damage: [src.victim.getToxLoss()]
+ Fire Damage: [src.victim.getFireLoss()]
+ Suffocation Damage: [src.victim.getOxyLoss()]
+ Patient Status: [src.victim.stat ? "Non-Responsive" : "Stable"]
+ "} else src.victim = null dat += {" diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 3738a409210..9e223da1b16 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -173,6 +173,8 @@ fired() var/turf/curloc = get_turf(src) var/turf/targloc = get_turf(target) + if(!curloc || !targloc) + return 0 yo = targloc.y - curloc.y xo = targloc.x - curloc.x target = targloc diff --git a/maps/RandomZLevels/assistantChamber.dmm b/maps/RandomZLevels/assistantChamber.dmm index d71885ff0c9..4d42f382745 100644 --- a/maps/RandomZLevels/assistantChamber.dmm +++ b/maps/RandomZLevels/assistantChamber.dmm @@ -22,15 +22,14 @@ "v" = (/obj/item/brain,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) "w" = (/obj/item/weapon/gun/energy/laser/captain,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) "x" = (/obj/item/weapon/gun/projectile/deagle/gold,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) -"y" = (/obj/item/weapon/sord,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) -"z" = (/obj/item/weapon/gun/energy/lasercannon,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) -"A" = (/obj/item/weapon/gun/energy/crossbow/largecrossbow,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) -"B" = (/obj/item/weapon/gun/energy/pulse_rifle/destroyer,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) -"C" = (/obj/item/toy/spinningtoy,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) -"D" = (/obj/item/weapon/card/id/centcom,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) -"E" = (/obj/item/weapon/gun/grenadelauncher,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) -"F" = (/obj/item/weapon/chemsprayer,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) -"G" = (/obj/machinery/turret{dir = 8; lasers = 1; name = "Angry Turret"},/obj/machinery/light,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) +"y" = (/obj/item/weapon/gun/energy/lasercannon,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) +"z" = (/obj/item/weapon/gun/energy/crossbow/largecrossbow,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) +"A" = (/obj/item/weapon/gun/energy/pulse_rifle/destroyer,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) +"B" = (/obj/item/toy/spinningtoy,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) +"C" = (/obj/item/weapon/card/id/centcom,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) +"D" = (/obj/item/weapon/gun/grenadelauncher,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) +"E" = (/obj/item/weapon/chemsprayer,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) +"F" = (/obj/machinery/turret{dir = 8; lasers = 1; name = "Angry Turret"},/obj/machinery/light,/turf/simulated/floor{icon_state = "whiteshiny"},/area/turret_protected/AssistantRoom) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -48,10 +47,10 @@ aaaaaaaaabccddddddccbaaaaaaaaa aaaaaaaaabcefghijklcbaaaaaaaaa aaaaaaaaabcemnopqrlcbaaaaaaaaa aaaaaaaaabcestquvqlcbaaaaaaaaa -aaaaaaaaabcewqqxqylcbaaaaaaaaa -aaaaaaaaabceqzAqBqlcbaaaaaaaaa -aaaaaaaaabceCqDqEFlcbaaaaaaaaa -aaaaaaaaabccGGGGGGccbaaaaaaaaa +aaaaaaaaabcewqqxqqlcbaaaaaaaaa +aaaaaaaaabceqyzqAqlcbaaaaaaaaa +aaaaaaaaabceBqCqDElcbaaaaaaaaa +aaaaaaaaabccFFFFFFccbaaaaaaaaa aaaaaaaaabccccccccccbaaaaaaaaa aaaaaaaaabbbbbbbbbbbbaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa