diff --git a/code/ZAS/Fire.dm b/code/ZAS/Fire.dm
index 936978cd983..c47c7cc24cc 100644
--- a/code/ZAS/Fire.dm
+++ b/code/ZAS/Fire.dm
@@ -165,6 +165,8 @@ If it gains pressure too slowly, it may leak or just rupture instead of explodin
//reduce firelevel.
if(enemy_tile.fire_protection > world.time-30)
firelevel -= 1.5
+ if(firelevel < 0)
+ firelevel = 0
continue
//Spread the fire.
diff --git a/code/game/machinery/camera/tracking.dm b/code/game/machinery/camera/tracking.dm
index efb35e92b5f..766d0a33e49 100644
--- a/code/game/machinery/camera/tracking.dm
+++ b/code/game/machinery/camera/tracking.dm
@@ -230,7 +230,7 @@
return TRACKING_TERMINATE
var/turf/pos = get_turf(src)
var/area/B = pos?.loc // No cam tracking in dorms!
- if(InvalidPlayerTurf(pos) || B.flag_check(AREA_BLOCK_TRACKING))
+ if(InvalidPlayerTurf(pos) || B?.flag_check(AREA_BLOCK_TRACKING))
return TRACKING_TERMINATE
if(invisibility >= INVISIBILITY_LEVEL_ONE) //cloaked
return TRACKING_TERMINATE
diff --git a/code/game/machinery/computer/Operating.dm b/code/game/machinery/computer/Operating.dm
index 95ba958438f..dd66b87b603 100644
--- a/code/game/machinery/computer/Operating.dm
+++ b/code/game/machinery/computer/Operating.dm
@@ -111,7 +111,7 @@
var/blood_volume = round(occupant.vessel.get_reagent_amount(REAGENT_ID_BLOOD))
occupantData["bloodLevel"] = blood_volume
occupantData["bloodMax"] = occupant.species.blood_volume
- occupantData["bloodPercent"] = round(100*(blood_volume/occupant.species.blood_volume), 0.01) //copy pasta ends here
+ occupantData["bloodPercent"] = occupant.species.blood_volume ? round(100*(blood_volume/occupant.species.blood_volume), 0.01) : 0 //copy pasta ends here, some species have no blood volume
occupantData["bloodType"] = occupant.dna.b_type
occupantData["surgery"] = build_surgery_list(user)
diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm
index 088444aa537..59e60167584 100644
--- a/code/game/machinery/computer/arcade.dm
+++ b/code/game/machinery/computer/arcade.dm
@@ -449,7 +449,7 @@
dat += "
Experience the journey of your ancestors!
"
dat += "New Game"
dat += "Close
"
- user << browse(dat,"window=arcade")
+ user << browse("[dat]","window=arcade")
return
/obj/machinery/computer/arcade/orion_trail/Topic(href, href_list)
diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm
index 7b7f7a6b644..513cd6a0260 100644
--- a/code/game/objects/structures/janicart.dm
+++ b/code/game/objects/structures/janicart.dm
@@ -484,6 +484,8 @@ GLOBAL_LIST_BOILERPLATE(all_janitorial_carts, /obj/structure/janitorialcart)
L.pixel_x = -13
L.pixel_y = 7
+/obj/structure/bed/chair/janicart/update_icon()
+ return
/obj/structure/bed/chair/janicart/bullet_act(var/obj/item/projectile/Proj)
if(has_buckled_mobs())
diff --git a/code/game/objects/structures/under_wardrobe.dm b/code/game/objects/structures/under_wardrobe.dm
index afaa7dc2d94..addfcdaad02 100644
--- a/code/game/objects/structures/under_wardrobe.dm
+++ b/code/game/objects/structures/under_wardrobe.dm
@@ -24,7 +24,7 @@
dat += " (Remove)
"
dat = jointext(dat,null)
- H << browse(dat, "window=wardrobe;size=400x200")
+ H << browse("[dat]", "window=wardrobe;size=400x200")
/obj/structure/undies_wardrobe/proc/get_metadata(var/mob/living/carbon/human/H, var/underwear_category, var/datum/gear_tweak/gt)
var/metadata = H.all_underwear_metadata[underwear_category]
diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm
index 0ee34fa9e80..8e90ecf377f 100644
--- a/code/modules/admin/verbs/debug.dm
+++ b/code/modules/admin/verbs/debug.dm
@@ -239,15 +239,16 @@
dellog += ""
- usr << browse(dellog.Join(), "window=dellog")
+ usr << browse("[dellog.Join()]", "window=dellog")
/client/proc/cmd_display_init_log()
set category = "Debug.Investigate"
set name = "Display Initialize() Log"
set desc = "Displays a list of things that didn't handle Initialize() properly"
- if(!check_rights(R_DEBUG)) return
- src << browse(replacetext(SSatoms.InitLog(), "\n", "
"), "window=initlog")
+ if(!check_rights(R_DEBUG))
+ return
+ src << browse("[replacetext(SSatoms.InitLog(), "\n", "
")]", "window=initlog")
/*
/client/proc/cmd_display_overlay_log()
diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm
index 08dd99ee46a..ff745353420 100644
--- a/code/modules/mob/living/carbon/human/human_attackhand.dm
+++ b/code/modules/mob/living/carbon/human/human_attackhand.dm
@@ -476,7 +476,7 @@
else
dat += span_bold("Primarily [u_attack.attack_name]") + " - set default
"
- src << browse(dat, "window=checkattack")
+ src << browse("[dat]", "window=checkattack")
/mob/living/carbon/human/Topic(href, href_list)
if(href_list["default_attk"])
diff --git a/code/modules/pda/pda.dm b/code/modules/pda/pda.dm
index 174437eb371..19ad3981ab4 100644
--- a/code/modules/pda/pda.dm
+++ b/code/modules/pda/pda.dm
@@ -491,12 +491,10 @@ var/global/list/obj/item/pda/PDAs = list()
/obj/item/pda/Destroy()
PDAs -= src
- if(id.loc != src)
- id = null
- if (src.id && !delete_id)
- src.id.forceMove(get_turf(src.loc))
+ if (id && !delete_id && id.loc == src)
+ id.forceMove(get_turf(loc))
else
- QDEL_NULL(src.id)
+ QDEL_NULL(id)
current_app = null
scanmode = null
diff --git a/code/modules/pda/utilities.dm b/code/modules/pda/utilities.dm
index 19f8de0f343..7eccdd84399 100644
--- a/code/modules/pda/utilities.dm
+++ b/code/modules/pda/utilities.dm
@@ -50,9 +50,9 @@
user.show_message(span_notice("Analyzing Results for [C]:"))
user.show_message(span_notice(" Overall Status: [C.stat > 1 ? "dead" : "[C.health - C.halloss]% healthy"]"), 1)
user.show_message(span_notice(" Damage Specifics:") + " [(C.getOxyLoss() > 50) ? span_warning(C.getOxyLoss()) : C.getOxyLoss()]-\
- [(C.getToxLoss() > 50) ? span_warning(C.getToxLoss()) : C.getToxLoss()]-\
- [(C.getFireLoss() > 50) ? span_warning(C.getFireLoss()) : C.getFireLoss()]-\
- [(C.getBruteLoss() > 50) ? span_warning(C.getBruteLoss()) : C.getBruteLoss()]", 1)
+ [(C.getToxLoss() > 50) ? span_warning("[C.getToxLoss()]") : C.getToxLoss()]-\
+ [(C.getFireLoss() > 50) ? span_warning("[C.getFireLoss()]") : C.getFireLoss()]-\
+ [(C.getBruteLoss() > 50) ? span_warning("[C.getBruteLoss()]") : C.getBruteLoss()]", 1)
user.show_message(span_notice(" Key: Suffocation/Toxin/Burns/Brute"), 1)
user.show_message(span_notice(" Body Temperature: [C.bodytemperature-T0C]°C ([C.bodytemperature*1.8-459.67]°F)"), 1)
if(C.tod && (C.stat == DEAD || (C.status_flags & FAKEDEATH)))
diff --git a/tgui/packages/tgui/interfaces/VorePanelExport/VorePanelExportDownload.tsx b/tgui/packages/tgui/interfaces/VorePanelExport/VorePanelExportDownload.tsx
index 9739776a2a7..04ce55dec77 100644
--- a/tgui/packages/tgui/interfaces/VorePanelExport/VorePanelExportDownload.tsx
+++ b/tgui/packages/tgui/interfaces/VorePanelExport/VorePanelExportDownload.tsx
@@ -42,12 +42,12 @@ export const downloadPrefs = (extension: string) => {
'',
],
{
- type: 'text/html;charset=utf8',
+ type: 'text/html',
},
);
bellies.forEach((belly, i) => {
blob = new Blob([blob, generateBellyString(belly, i)], {
- type: 'text/html;charset=utf8',
+ type: 'text/html',
});
});
blob = new Blob(
@@ -57,7 +57,7 @@ export const downloadPrefs = (extension: string) => {
'',
'