diff --git a/code/game/objects/effects/spiders.dm b/code/game/objects/effects/spiders.dm index 7405208cd95..3ffd9ded76d 100644 --- a/code/game/objects/effects/spiders.dm +++ b/code/game/objects/effects/spiders.dm @@ -202,6 +202,7 @@ S.poison_type = poison_type S.faction = faction.Copy() if(player_spiders) + S.playable_spider = TRUE notify_ghosts("Spider [S.name] can be controlled", null, enter_link="(Click to play)", source=S, attack_not_jump = 1) qdel(src) diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm index ae40d8b279f..dcc1de018fb 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -48,18 +48,19 @@ gold_core_spawnable = 1 see_invisible = SEE_INVISIBLE_MINIMUM see_in_dark = 4 + var/playable_spider = FALSE /mob/living/simple_animal/hostile/poison/giant_spider/Topic(href, href_list) if(href_list["activate"]) var/mob/dead/observer/ghost = usr - if(istype(ghost)) + if(istype(ghost) && playable_spider) humanize_spider(ghost) /mob/living/simple_animal/hostile/poison/giant_spider/attack_ghost(mob/user) humanize_spider(user) /mob/living/simple_animal/hostile/poison/giant_spider/proc/humanize_spider(mob/user) - if(key)//Someone is in it + if(key || !playable_spider)//Someone is in it or the fun police are shutting it down return var/spider_ask = alert("Become a spider?", "Are you australian?", "Yes", "No") if(spider_ask == "No" || !src || qdeleted(src))