GOODBYE SPECIES, HELLO COMPONENT
This commit is contained in:
@@ -161,3 +161,25 @@
|
||||
H.reset_perspective(H)
|
||||
else
|
||||
H.reset_perspective(dullahan_head)
|
||||
|
||||
/datum/component/dullahan/Destroy()
|
||||
UnregisterSignal(parent, COMSIG_LIVING_REGENERATE_LIMBS)
|
||||
qdel(dullahan_head)
|
||||
REMOVE_TRAIT(parent, TRAIT_DULLAHAN, "dullahan_component")
|
||||
|
||||
// work out what organs to give them based on their species
|
||||
if(ishuman(parent))
|
||||
var/mob/living/carbon/human/H = parent
|
||||
var/obj/item/organ/eyes/new_eyes = new H.dna.species.mutant_eyes()
|
||||
var/obj/item/organ/brain/new_brain = new H.dna.species.mutant_brain()
|
||||
var/obj/item/organ/eyes/old_eyes = H.getorganslot(ORGAN_SLOT_EYES)
|
||||
var/obj/item/organ/brain/old_brain = H.getorganslot(ORGAN_SLOT_BRAIN)
|
||||
|
||||
old_brain.Remove(TRUE,TRUE)
|
||||
QDEL_NULL(old_brain)
|
||||
new_brain.Insert(C, TRUE, TRUE)
|
||||
|
||||
old_eyes.Remove(TRUE,TRUE)
|
||||
QDEL_NULL(old_eyes)
|
||||
new_eyes.Insert(C, TRUE, TRUE)
|
||||
. = ..()
|
||||
|
||||
+6
-9
@@ -717,16 +717,13 @@
|
||||
death()
|
||||
petrify(INFINITY)
|
||||
if(3)
|
||||
if(prob(90))
|
||||
var/obj/item/bodypart/BP = get_bodypart(pick(BODY_ZONE_CHEST,BODY_ZONE_HEAD))
|
||||
if(BP)
|
||||
BP.dismember()
|
||||
else
|
||||
unequip_everything()
|
||||
drop_all_held_items()
|
||||
gib()
|
||||
var/obj/item/bodypart/BP = get_bodypart(pick(BODY_ZONE_CHEST,BODY_ZONE_HEAD))
|
||||
if(BP)
|
||||
BP.dismember()
|
||||
else
|
||||
set_species(/datum/species/dullahan)
|
||||
unequip_everything()
|
||||
drop_all_held_items()
|
||||
gib()
|
||||
|
||||
/datum/dna/proc/update_body_size(old_size)
|
||||
if(!holder || features["body_size"] == old_size)
|
||||
|
||||
@@ -177,7 +177,7 @@
|
||||
if(isinsect(victim) || iscatperson(victim) || ismammal(victim) || isdwarf(victim) || ismonkey(victim)) // Yep you can lick monkeys.
|
||||
user.reagents.add_reagent(/datum/reagent/hairball, 2)
|
||||
|
||||
else if(ishumanbasic(victim) || isflyperson(victim) || islizard(victim) || isdullahan(victim))
|
||||
else if(ishumanbasic(victim) || isflyperson(victim) || islizard(victim) || HAS_TRAIT(victim, TRAIT_DULLAHAN))
|
||||
user.reagents.add_reagent(/datum/reagent/hairball, 1)
|
||||
|
||||
if(blood_flow > minimum_flow)
|
||||
|
||||
Reference in New Issue
Block a user