Merge pull request #6451 from Citadel-Station-13/upstream-merge-37218

[MIRROR] Couple of fixes for situations involving mechas and the clock cult gamemode
This commit is contained in:
LetterJay
2018-04-22 02:34:53 -05:00
committed by GitHub
7 changed files with 23 additions and 9 deletions
@@ -54,8 +54,14 @@
/obj/effect/clockwork/city_of_cogs_rift/proc/beckon(atom/movable/AM)
var/turf/T = get_turf(pick(GLOB.city_of_cogs_spawns))
if(is_servant_of_ratvar(AM))
if(ismob(AM) && is_servant_of_ratvar(AM))
T = GLOB.ark_of_the_clockwork_justiciar ? get_step(GLOB.ark_of_the_clockwork_justiciar, SOUTH) : get_turf(pick(GLOB.servant_spawns))
else // Handle mechas and such
var/list/target_contents = AM.GetAllContents() + AM
for(var/mob/living/L in target_contents)
if(is_servant_of_ratvar(L) && L.stat != DEAD) // Having a living cultist in your inventory sends you to the cultist spawn
T = GLOB.ark_of_the_clockwork_justiciar ? get_step(GLOB.ark_of_the_clockwork_justiciar, SOUTH) : get_turf(pick(GLOB.servant_spawns))
break
AM.visible_message("<span class='danger'>[AM] passes through [src]!</span>", null, null, null, AM)
AM.forceMove(T)
AM.visible_message("<span class='danger'>[AM] materializes from the air!</span>", \
@@ -42,3 +42,6 @@
/obj/effect/clockwork/servant_blocker/ex_act(severity, target)
return
/obj/effect/clockwork/servant_blocker/safe_throw_at()
return