diff --git a/code/game/objects/effects/overlays.dm b/code/game/objects/effects/overlays.dm
index 2cc8b7a64f..d6dea13c51 100644
--- a/code/game/objects/effects/overlays.dm
+++ b/code/game/objects/effects/overlays.dm
@@ -71,6 +71,7 @@
/obj/effect/overlay/snow/floor
icon_state = "snowfloor"
layer = 2.01 //Just above floor
+ mouse_opacity = 0 //Don't block underlying tile interactions
/obj/effect/overlay/snow/floor/edges
icon_state = "snow_edges"
diff --git a/code/game/objects/structures/loot_piles.dm b/code/game/objects/structures/loot_piles.dm
index 4988131647..353dbe31a7 100644
--- a/code/game/objects/structures/loot_piles.dm
+++ b/code/game/objects/structures/loot_piles.dm
@@ -437,7 +437,7 @@ Loot piles can be depleted, if loot_depleted is turned on. Note that players wh
// Base type for alien piles.
/obj/structure/loot_pile/surface/alien
name = "alien pod"
- desc = "A pod which looks bigger on the inside. Something quiet shiny might be inside?"
+ desc = "A pod which looks bigger on the inside. Something quite shiny might be inside?"
icon_state = "alien_pile1"
/obj/structure/loot_pile/surface/alien
diff --git a/code/modules/mining/drilling/drill.dm b/code/modules/mining/drilling/drill.dm
index 9cdac912db..bc89c498d2 100644
--- a/code/modules/mining/drilling/drill.dm
+++ b/code/modules/mining/drilling/drill.dm
@@ -15,6 +15,7 @@
var/supported = 0
var/active = 0
var/list/resource_field = list()
+ var/obj/item/device/radio/intercom/faultreporter = new /obj/item/device/radio/intercom{channels=list("Supply")}(null)
var/ore_types = list(
"hematite" = /obj/item/weapon/ore/iron,
@@ -60,7 +61,7 @@
if(!active) return
if(!anchored || !use_cell_power())
- system_error("system configuration or charge error")
+ system_error("System configuration or charge error.")
return
if(need_update_field)
@@ -85,7 +86,10 @@
harvesting.has_resources = 0
harvesting.resources = null
resource_field -= harvesting
- harvesting = pick(resource_field)
+ if(resource_field.len) // runtime protection
+ harvesting = pick(resource_field)
+ else
+ harvesting = null
if(!harvesting) return
@@ -95,7 +99,7 @@
for(var/metal in ore_types)
if(contents.len >= capacity)
- system_error("insufficient storage space")
+ system_error("Insufficient storage space.")
active = 0
need_player_check = 1
update_icon()
@@ -131,12 +135,19 @@
active = 0
need_player_check = 1
update_icon()
+ system_error("Resources depleted.")
/obj/machinery/mining/drill/attack_ai(var/mob/user as mob)
return src.attack_hand(user)
/obj/machinery/mining/drill/attackby(obj/item/O as obj, mob/user as mob)
if(!active)
+ if(istype(O, /obj/item/device/multitool))
+ var/newtag = text2num(sanitizeSafe(input(user, "Enter new ID number or leave empty to cancel.", "Assign ID number") as text, 4))
+ if(newtag)
+ name = "[initial(name)] #[newtag]"
+ to_chat(user, "You changed the drill ID to: [newtag]")
+ return
if(default_deconstruction_screwdriver(user, O))
return
if(default_deconstruction_crowbar(user, O))
@@ -234,6 +245,7 @@
if(error)
src.visible_message("\The [src] flashes a '[error]' warning.")
+ faultreporter.autosay(error, src.name, "Supply")
need_player_check = 1
active = 0
update_icon()
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index f92c8a8741..eb32a5a751 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -1557,13 +1557,13 @@
return species.fire_icon_state
// Called by job_controller. Makes drones start with a permit, might be useful for other people later too.
-/mob/living/carbon/human/equip_post_job() //Drone Permit moved to equip_survival_gear()
+/mob/living/carbon/human/equip_post_job()
var/braintype = get_FBP_type()
if(braintype == FBP_DRONE)
var/turf/T = get_turf(src)
var/obj/item/clothing/accessory/permit/drone/permit = new(T)
permit.set_name(real_name)
- equip_to_appropriate_slot(permit) // If for some reason it can't find room, it'll still be on the floor.
+ equip_to_slot_or_del(permit, slot_in_backpack)
/mob/living/carbon/human/proc/update_icon_special(var/mutable_appearance/ma, var/update_icons = TRUE) //For things such as teshari hiding and whatnot.
if(hiding) // Hiding? Carry on.
@@ -1575,4 +1575,4 @@
//Can put special species icon update proc calls here, if any are ever invented.
if(update_icons)
- update_icons()
\ No newline at end of file
+ update_icons()
diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm
index f01c49a7bd..a742723dbf 100644
--- a/code/modules/mob/living/carbon/human/update_icons.dm
+++ b/code/modules/mob/living/carbon/human/update_icons.dm
@@ -926,7 +926,7 @@ var/global/list/damage_icon_parts = list()
else
overlays_standing[SHOES_LAYER] = null
overlays_standing[SHOES_LAYER_ALT] = null
- if(update_icons) update_icons()
+ if(update_icons) update_icons_layers()
/mob/living/carbon/human/update_inv_s_store(var/update_icons=1)
if(QDESTROYING(src))
diff --git a/code/modules/organs/internal/brain.dm b/code/modules/organs/internal/brain.dm
index 2019ca9c4a..ec0b9d8034 100644
--- a/code/modules/organs/internal/brain.dm
+++ b/code/modules/organs/internal/brain.dm
@@ -136,7 +136,7 @@
parent_organ = BP_TORSO
clone_source = TRUE
-/obj/item/orgam/internal/brain/slime/is_open_container()
+/obj/item/organ/internal/brain/slime/is_open_container()
return 1
/obj/item/organ/internal/brain/golem