diff --git a/code/modules/mob/living/bloodcrawl.dm b/code/modules/mob/living/bloodcrawl.dm
index a0035761ded..5a104fbfb53 100644
--- a/code/modules/mob/living/bloodcrawl.dm
+++ b/code/modules/mob/living/bloodcrawl.dm
@@ -75,7 +75,7 @@
demon.devoured++
kidnapped << "You feel teeth sink into your flesh, and the--"
kidnapped.adjustBruteLoss(1000)
- kidnapped.loc = src
+ kidnapped.forceMove(src)
demon.consumed_mobs.Add(kidnapped)
else
kidnapped.ghostize()
@@ -112,7 +112,7 @@
return
if(!B)
return
- src.loc = B.loc
+ src.forceMove(B)
src.client.eye = src
if (prob(25) && istype(src, /mob/living/simple_animal/slaughter))
var/list/voice = list('sound/hallucinations/behind_you1.ogg','sound/hallucinations/im_here1.ogg','sound/hallucinations/turn_around1.ogg','sound/hallucinations/i_see_you1.ogg')
@@ -133,7 +133,7 @@
sleep(6)//wait for animation to finish
if(animation)
qdel(animation)
- spawn(24)//was 30, accounting for the above spawn 6
+ spawn(30)
src.color = oldcolor
/obj/effect/decal/cleanable/blood/CtrlClick(mob/living/user)
diff --git a/code/modules/mob/living/simple_animal/slaughter/slaughter.dm b/code/modules/mob/living/simple_animal/slaughter/slaughter.dm
index 5bde734b34e..c1ad9d79f67 100644
--- a/code/modules/mob/living/simple_animal/slaughter/slaughter.dm
+++ b/code/modules/mob/living/simple_animal/slaughter/slaughter.dm
@@ -85,19 +85,19 @@
/mob/living/simple_animal/slaughter/Die()
..()
- new /obj/effect/decal/cleanable/blood (src.loc)
- new /obj/effect/gibspawner/generic(get_turf(src))
- new /obj/effect/gibspawner/generic(get_turf(src))
var/obj/effect/decal/cleanable/blood/innards = new (get_turf(src))
innards.icon = 'icons/obj/surgery.dmi'
innards.icon_state = "innards"
innards.name = "pile of viscera"
innards.desc = "A repulsive pile of guts and gore."
- new /obj/item/organ/heart/demon(src.loc)
+ new /obj/effect/decal/cleanable/blood (src.loc)
+ new /obj/effect/gibspawner/generic(get_turf(src))
+ new /obj/effect/gibspawner/generic(get_turf(src))
+ new /obj/item/weapon/demonheart(src.loc)
playsound(get_turf(src),'sound/misc/demon_dies.ogg', 200, 1)
visible_message("[src] screams in anger as it collapses into a puddle of viscera, its most recent meals spilling out of it.")
for(var/mob/living/M in consumed_mobs)
- M.loc = get_turf(src)
+ M.forceMove(get_turf(src))
ghostize()
qdel(src)
@@ -138,7 +138,7 @@
//////////The Loot
//The loot from killing a slaughter demon - can be consumed to allow the user to blood crawl
-/obj/item/organ/heart/demon
+/obj/item/weapon/demonheart
name = "demon heart"
desc = "Still it beats furiously, emanating an aura of utter hate."
icon = 'icons/obj/surgery.dmi'
@@ -146,11 +146,9 @@
origin_tech = "combat=5;biotech=8"
-/obj/item/organ/internal/heart/demon/attack(mob/M, mob/living/carbon/user, obj/target)
- if(M != user)
- return ..()
+/obj/item/weapon/demonheart/attack_self(mob/living/user)
user.visible_message("[user] raises [src] to their mouth and tears into it with their teeth!", \
- "An unnatural hunger consumes you. You raise [src] your mouth and devour it!")
+ "An unnatural hunger consumes you. You raise [src] to your mouth and devour it!")
playsound(user, 'sound/misc/Demon_consume.ogg', 50, 1)
if(user.bloodcrawl == 0)
user.visible_message("[user]'s eyes flare a deep crimson!", \