Adds nymph-limbs: The Return (#12374)

This commit is contained in:
Alberyk
2021-11-01 00:13:15 -03:00
committed by GitHub
parent c3d918917a
commit 3940c6a044
17 changed files with 410 additions and 8 deletions
@@ -47,6 +47,8 @@
var/datum/reagents/metabolism/ingested
var/can_attach = TRUE // Whether they can attach to a host
/mob/living/carbon/alien/diona/get_ingested_reagents()
return ingested
@@ -229,6 +231,7 @@
//This function makes sure the nymph has the correct split/merge verbs, depending on whether or not its part of a gestalt
/mob/living/carbon/alien/diona/proc/update_verbs()
if(gestalt && !detached)
verbs |= /mob/living/carbon/alien/diona/proc/split
verbs -= /mob/living/proc/ventcrawl
verbs -= /mob/living/proc/hide
verbs -= /mob/living/carbon/alien/diona/proc/grow
@@ -236,7 +239,8 @@
verbs -= /mob/living/carbon/proc/absorb_nymph
verbs -= /mob/living/carbon/proc/sample
verbs -= /mob/living/carbon/alien/diona/proc/remove_hat
verbs |= /mob/living/carbon/alien/diona/proc/split
verbs -= /mob/living/carbon/alien/diona/proc/attach_nymph_limb
verbs -= /mob/living/carbon/alien/diona/proc/detach_nymph_limb
else
verbs |= /mob/living/carbon/alien/diona/proc/merge
verbs |= /mob/living/carbon/proc/absorb_nymph
@@ -245,6 +249,8 @@
verbs |= /mob/living/proc/hide
verbs |= /mob/living/carbon/proc/sample
verbs |= /mob/living/carbon/alien/diona/proc/remove_hat
verbs |= /mob/living/carbon/alien/diona/proc/attach_nymph_limb
verbs |= /mob/living/carbon/alien/diona/proc/detach_nymph_limb
verbs -= /mob/living/carbon/alien/diona/proc/split // we want to remove this one
verbs -= /mob/living/carbon/alien/verb/evolve //We don't want the old alien evolve verb
+4 -1
View File
@@ -498,4 +498,7 @@
. = contents - internal_organs
/mob/living/carbon/proc/is_drowsy()
return (drowsiness >= 5)
return (drowsiness >= 5)
/mob/living/carbon/proc/should_have_limb(var/organ_check)
return FALSE
@@ -1922,6 +1922,9 @@
/mob/living/carbon/human/should_have_organ(var/organ_check)
return (species?.has_organ[organ_check])
/mob/living/carbon/human/should_have_limb(var/limb_check)
return (species?.has_limbs[limb_check])
/mob/living/proc/resuscitate()
return FALSE
@@ -90,6 +90,7 @@
if(O)
O.status = 0
switch(status)
if ("amputated")
organs_by_name[O.limb_name] = null
organs -= O
@@ -97,6 +98,14 @@
for(var/obj/item/organ/external/child in O.children)
organs_by_name[child.limb_name] = null
organs -= child
if ("nymph")
if (organ_data[name])
O.AddComponent(/datum/component/nymph_limb)
var/datum/component/nymph_limb/D = O.GetComponent(/datum/component/nymph_limb)
if(D)
D.nymphize(src, O.limb_name, TRUE)
if ("cyborg")
if (rlimb_data[name])
O.force_skintone = FALSE
@@ -277,6 +277,7 @@
var/bodyfall_sound = /decl/sound_category/bodyfall_sound //default, can be used for species specific falling sounds
var/list/alterable_internal_organs = list(BP_HEART, BP_EYES, BP_LUNGS, BP_LIVER, BP_KIDNEYS, BP_STOMACH, BP_APPENDIX) //what internal organs can be changed in character setup
var/list/possible_external_organs_modifications = list("Normal","Amputated","Prosthesis")
/datum/species/proc/get_eyes(var/mob/living/carbon/human/H)
return
@@ -36,6 +36,8 @@
appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_SOCKS
flags = NO_SLIP
possible_external_organs_modifications = list("Normal","Amputated","Prosthesis", "Diona Nymph")
has_limbs = list(
BP_CHEST = list("path" = /obj/item/organ/external/chest),
BP_GROIN = list("path" = /obj/item/organ/external/groin),
@@ -118,6 +118,8 @@
default_accent = ACCENT_HEGEMON_PEASANT
allowed_accents = list(ACCENT_HEGEMON_NOBLE, ACCENT_HEGEMON_PEASANT, ACCENT_TRAD_NOBLE, ACCENT_TRAD_PEASANT, ACCENT_WASTELAND, ACCENT_DOMINIA_HIGH, ACCENT_DOMINIA_VULGAR)
possible_external_organs_modifications = list("Normal","Amputated","Prosthesis", "Diona Nymph")
/datum/species/unathi/after_equip(var/mob/living/carbon/human/H)
. = ..()
if(H.shoes)