diff --git a/code/modules/holiday/halloween.dm b/code/modules/holiday/halloween.dm
index 61dc44b8878..8850b6e3f4d 100644
--- a/code/modules/holiday/halloween.dm
+++ b/code/modules/holiday/halloween.dm
@@ -10,23 +10,23 @@
if (prob (49))
M.show_message("You hear muffled speech... but nothing is there...", 2)
if(prob(20))
- playsound(src.loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1)
+ playsound(loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1)
else
M.show_message("You hear muffled speech... you can almost make out some words...", 2)
// M.show_message("[stutter(message)]", 2)
if(prob(30))
- playsound(src.loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1)
+ playsound(loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1)
else
if(prob(50))
return
else if(prob (95))
M.show_message("You hear muffled speech... but nothing is there...", 2)
if(prob(20))
- playsound(src.loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1)
+ playsound(loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1)
else
M.show_message("You hear muffled speech... you can almost make out some words...", 2)
// M.show_message("[stutter(message)]", 2)
- playsound(src.loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1)*/
+ playsound(loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1)*/
///////////////////////////////////////
@@ -88,7 +88,7 @@
trapped = HOWLING_GHOST
return
else
- var/mob/living/carbon/human/H = new (loc)
+ var/mob/living/carbon/human/H = new(loc)
H.makeSkeleton()
H.health = 1e5
insert(H)
@@ -100,71 +100,59 @@
if(!trapped)
return
- if(trapped == SPOOKY_SKELETON)
- src.visible_message("BOO!");
- playsound(src.loc, pick('sound/effects/xylophone1.ogg','sound/effects/xylophone2.ogg','sound/effects/xylophone3.ogg','sound/spookoween/girlscream.ogg'), 300, 1)
+ else if(trapped == SPOOKY_SKELETON)
+ visible_message("BOO!")
+ playsound(loc, pick('sound/effects/xylophone1.ogg','sound/effects/xylophone2.ogg','sound/effects/xylophone3.ogg','sound/spookoween/girlscream.ogg'), 300, 1)
trapped = 0
- spawn(60)
- if(trapped_mob && trapped_mob.loc && trapped_mob.loc != loc)
- var/datum/effect/effect/system/harmless_smoke_spread/smoke = new
- smoke.set_up(1,0, trapped_mob.loc, 0)
+ spawn(90)
+ if(trapped_mob && trapped_mob.loc)
+ var/datum/effect/effect/system/harmless_smoke_spread/smoke = new()
+ smoke.set_up(1, 0, trapped_mob.loc, 0)
smoke.start()
- trapped_mob.loc = loc
- if(gc_destroyed)
qdel(trapped_mob)
- return
- src.close()
- trapped = SPOOKY_SKELETON
- return
- if(trapped == ANGRY_FAITHLESS)
- src.visible_message("The closet bursts open!");
- src.visible_message("THIS BEING RADIATES PURE EVIL! YOU BETTER RUN !!!");
- playsound(src.loc, 'sound/hallucinations/wail.ogg', 300, 1)
- var/mob/living/simple_animal/hostile/faithless/F = new (loc)
- F.health =1e5
+ else if(trapped == HOWLING_GHOST)
+ visible_message("[pick("OooOOooooOOOoOoOOooooOOOOO", "BooOOooOooooOOOO", "BOO!", "WoOOoOoooOooo")]")
+ playsound(loc, 'sound/spookoween/ghosty_wind.ogg', 300, 1)
+ new /mob/living/simple_animal/shade/howling_ghost(loc)
+ trapped = 0
+
+ else if(trapped == SCARY_BATS)
+ visible_message("Protect your hair!")
+ playsound(loc, 'sound/spookoween/bats.ogg', 300, 1)
+ var/number = rand(1,3)
+ for(var/i=0,i < number,i++)
+ new /mob/living/simple_animal/hostile/retaliate/bat(loc)
+ trapped = 0
+
+ else if(trapped == ANGRY_FAITHLESS)
+ visible_message("The closet bursts open!")
+ visible_message("THIS BEING RADIATES PURE EVIL! YOU BETTER RUN!!!")
+ playsound(loc, 'sound/hallucinations/wail.ogg', 300, 1)
+ var/mob/living/simple_animal/hostile/faithless/F = new(loc)
F.stance = HOSTILE_STANCE_ATTACK
F.GiveTarget(usr)
trapped = 0
- qdel(src)
spawn(120)
if(F && F.loc)
var/datum/effect/effect/system/harmless_smoke_spread/smoke = new
smoke.set_up(1,0, F.loc, 0)
smoke.start()
qdel(F)
- return
- if(trapped == SCARY_BATS)
- src.visible_message("Protect your hairs !!!");
- playsound(src.loc, 'sound/spookoween/bats.ogg', 300, 1)
- var/number = rand(1,4)
- for(var/i=0,i < number,i++)
- new /mob/living/simple_animal/hostile/retaliate/bat (loc)
- trapped = 0
- return
-
- if(trapped == INSANE_CLOWN)
- src.visible_message("...");
- playsound(src.loc, 'sound/spookoween/scary_clown_appear.ogg', 300, 1)
+ else if(trapped == INSANE_CLOWN)
+ visible_message("...")
+ playsound(loc, 'sound/spookoween/scary_clown_appear.ogg', 300, 1)
var/mob/living/simple_animal/hostile/retaliate/clown/insane/IC = new (loc)
IC.GiveTarget(usr)
trapped = 0
- return
-
- if(trapped == HOWLING_GHOST)
- src.visible_message("Woo Woo");
- playsound(src.loc, 'sound/spookoween/ghosty_wind.ogg', 300, 1)
- new /mob/living/simple_animal/shade/howling_ghost (loc)
- trapped = 0
- return
//don't spawn in crates
/obj/structure/closet/crate/trigger_spooky_trap()
- return 0
+ return
/obj/structure/closet/crate/set_spooky_trap()
- return 0
+ return
////////////////////
@@ -172,8 +160,8 @@
////////////////////
/mob/living/simple_animal/shade/howling_ghost
- name ="Ghost"
- real_name = "Ghost"
+ name = "ghost"
+ real_name = "ghost"
icon = 'icons/mob/mob.dmi'
maxHealth = 1e6
health = 1e6
@@ -195,8 +183,9 @@
/mob/living/simple_animal/shade/howling_ghost/Life()
..()
timer--
- if(timer == 0)
+ if(prob(20))
roam()
+ if(timer == 0)
spooky_ghosty()
timer = rand(1,15)
@@ -211,7 +200,7 @@
/mob/living/simple_animal/shade/howling_ghost/proc/spooky_ghosty()
if(prob(20)) //haunt
- playsound(src.loc, pick('sound/spookoween/ghosty_wind.ogg','sound/spookoween/ghost_whisper.ogg','sound/spookoween/chain_rattling.ogg'), 300, 1)
+ playsound(loc, pick('sound/spookoween/ghosty_wind.ogg','sound/spookoween/ghost_whisper.ogg','sound/spookoween/chain_rattling.ogg'), 300, 1)
if(prob(10)) //flickers
var/obj/machinery/light/L = locate(/obj/machinery/light) in view(5, src)
if(L)
@@ -235,8 +224,8 @@
///////////////////////////
/mob/living/simple_animal/hostile/retaliate/clown/insane
- name = "Insane Clown"
- desc = "May the HonkMother have mercy..."
+ name = "insane clown"
+ desc = "Some clowns do not manage to be accepted, and go insane. This is one of them."
icon_state = "scary_clown"
icon_living = "scary_clown"
icon_dead = "scary_clown"
@@ -248,7 +237,6 @@
heat_damage_per_tick = 0
cold_damage_per_tick = 0
unsuitable_atmos_damage = 0
-
var/timer
/mob/living/simple_animal/hostile/retaliate/clown/insane/New()
@@ -279,7 +267,6 @@
playsound(M.loc, pick('sound/spookoween/scary_horn.ogg','sound/spookoween/scary_horn2.ogg', 'sound/spookoween/scary_horn3.ogg'), 300, 1)
spawn(12)
loc = M.loc
- return
/mob/living/simple_animal/hostile/retaliate/clown/insane/MoveToTarget()
return
@@ -289,18 +276,15 @@
/mob/living/simple_animal/hostile/retaliate/clown/insane/adjustBruteLoss()
if(prob(5))
- playsound(src.loc, 'sound/spookoween/insane_low_laugh.ogg', 300, 1)
- return
+ playsound(loc, 'sound/spookoween/insane_low_laugh.ogg', 300, 1)
/mob/living/simple_animal/hostile/retaliate/clown/insane/attackby(var/obj/item/O as obj, var/mob/user as mob)
if(istype(O,/obj/item/weapon/nullrod))
if(prob(5))
- visible_message("[src] finally found the peace it deserves. HONK for the HonkMother !");
- playsound(src.loc, 'sound/spookoween/insane_low_laugh.ogg', 300, 1)
+ visible_message("[src] finally found the peace it deserves. You hear honks echoing off into the distance.")
+ playsound(loc, 'sound/spookoween/insane_low_laugh.ogg', 300, 1)
qdel(src)
- return
else
- visible_message("It seems to be resisting the effect!!!");
- return
- ..()
-
+ visible_message("[src] seems to be resisting the effect!")
+ else
+ ..()