diff --git a/code/game/gamemodes/clock_cult/clock_items.dm b/code/game/gamemodes/clock_cult/clock_items.dm
index ed14804bbb1..06f8bf706b8 100644
--- a/code/game/gamemodes/clock_cult/clock_items.dm
+++ b/code/game/gamemodes/clock_cult/clock_items.dm
@@ -571,7 +571,7 @@
var/new_obj_type //The path of the new type of object to replace the old
var/alloy_cost = 0
var/valid_target = FALSE //If the proselytizer will actually function on the object
- if(istype(target, /turf/closed/wall) && !target.type in list(/turf/closed/wall/r_wall, /turf/closed/wall/clockwork))
+ if(istype(target, /turf/closed/wall) && !istype(target, /turf/closed/wall/r_wall) && !istype(target, /turf/closed/wall/clockwork)) //This looks sloppy, but it's the only way
operation_time = 50
new_obj_type = /turf/closed/wall/clockwork
alloy_cost = 5
diff --git a/code/game/gamemodes/clock_cult/clock_structures.dm b/code/game/gamemodes/clock_cult/clock_structures.dm
index 1723231e884..6e707107ef9 100644
--- a/code/game/gamemodes/clock_cult/clock_structures.dm
+++ b/code/game/gamemodes/clock_cult/clock_structures.dm
@@ -164,7 +164,7 @@
user << "[src] is empty!"
return 0
var/component_to_withdraw = input(user, "Choose a component to withdraw.", name) as null|anything in possible_components
- if(!user || !user.canUseTopic(src) || !component_to_withdraw)
+ if(!user || !user.canUseTopic(src) || !component_to_withdraw || !)
return 0
var/obj/item/clockwork/component/the_component
switch(component_to_withdraw)
@@ -229,11 +229,11 @@
damage_per_tick = 10
sight_range = 5
if(target)
- if(target.stat || get_dist(get_turf(src), get_turf(target)) > sight_range)
+ if(target.stat || get_dist(get_turf(src), get_turf(target)) > sight_range || is_servant_of_ratvar(target))
lose_target()
else
target.adjustFireLoss(!iscultist(target) ? damage_per_tick : damage_per_tick * 2) //Nar-Sian cultists take additional damage
- if(ratvar_awakens)
+ if(ratvar_awakens && target)
target.adjust_fire_stacks(damage_per_tick)
target.IgniteMob()
dir = get_dir(get_turf(src), get_turf(target))
@@ -416,7 +416,7 @@
stored_alloy = max(0, stored_alloy - 2)
else if(istype(M, /mob/living/simple_animal/hostile/clockwork_marauder))
var/mob/living/simple_animal/hostile/clockwork_marauder/E = M
- if(E.health == E.maxHealth || E.stat)
+ if(E.health == E.maxHealth || E.stat || !E.fatigue)
continue
E.adjustBruteLoss(-E.maxHealth) //Instant because marauders don't usually take health damage
E.fatigue = max(0, E.fatigue - 15)
@@ -503,8 +503,8 @@
desc = "You get the feeling that you shouldn't be standing here."
clockwork_desc = "A sigil that will soon erupt and smite any unenlightened nearby."
icon = 'icons/effects/96x96.dmi'
- pixel_x = -30
- pixel_y = -30
+ pixel_x = -32
+ pixel_y = -32
layer = ABOVE_OPEN_TURF_LAYER
/obj/effect/clockwork/judicial_marker/New()
@@ -602,11 +602,7 @@
animate(src, transform = matrix() / 1.5, time = 10)
linked_gateway.transform = matrix() * 1.5
animate(linked_gateway, transform = matrix() / 1.5, time = 10)
- if(ismob(A))
- var/mob/M = A
- M.forceMove(get_turf(linked_gateway))
- else
- A.loc = get_turf(linked_gateway)
+ A.forceMove(get_turf(linked_gateway))
uses = max(0, uses - 1)
linked_gateway.uses = max(0, uses - 1)
spawn(10)
diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm
index 9f342b89534..2f36a388261 100644
--- a/code/game/objects/structures/window.dm
+++ b/code/game/objects/structures/window.dm
@@ -496,7 +496,6 @@
desc = "A paper-thin pane of translucent yet reinforced brass."
icon = 'icons/obj/clockwork_objects.dmi'
icon_state = "clockwork_window_single"
- debris = list(/obj/item/clockwork/component/vanguard_cogwheel)
/obj/structure/window/reinforced/clockwork/New(loc, direct)
..()
@@ -507,6 +506,10 @@
E.dir = direct
else
PoolOrNew(/obj/effect/overlay/temp/ratvar/window, get_turf(src))
+ for(var/obj/item/I in debris)
+ debris -= I
+ qdel(I)
+ debris += new/obj/item/clockwork/component/vanguard_cogwheel(src)
/obj/structure/window/reinforced/clockwork/fulltile
icon_state = "clockwork_window"
diff --git a/code/game/turfs/simulated/floor/misc_floor.dm b/code/game/turfs/simulated/floor/misc_floor.dm
index 08dfb6125f6..272471258b6 100644
--- a/code/game/turfs/simulated/floor/misc_floor.dm
+++ b/code/game/turfs/simulated/floor/misc_floor.dm
@@ -146,4 +146,4 @@
user.visible_message("[user] pries up [src]!", "You pry up [src], destroying it!")
make_plating()
return 1
- ..()
+ return ..()
diff --git a/code/game/turfs/simulated/walls_misc.dm b/code/game/turfs/simulated/walls_misc.dm
index 682596cb429..2c333c06178 100644
--- a/code/game/turfs/simulated/walls_misc.dm
+++ b/code/game/turfs/simulated/walls_misc.dm
@@ -72,7 +72,7 @@
user.visible_message("[user] breaks apart [src]!", "You break apart [src]!")
break_wall()
return 1
- ..()
+ return ..()
/turf/closed/wall/clockwork/break_wall()
new/obj/item/clockwork/component/replicant_alloy(get_turf(src))