diff --git a/code/modules/mob/living/carbon/human/diona_gestalt.dm b/code/modules/mob/living/carbon/human/diona_gestalt.dm index 3247c611e86..b685161bf86 100644 --- a/code/modules/mob/living/carbon/human/diona_gestalt.dm +++ b/code/modules/mob/living/carbon/human/diona_gestalt.dm @@ -301,7 +301,7 @@ else nymph.key = key -/mob/living/carbon/human/proc/diona_split_into_nymphs() +/mob/living/carbon/human/proc/diona_split_into_nymphs(var/death_split = FALSE) var/turf/T = get_turf(src) var/mob/living/carbon/alien/diona/bestNymph = null var/bestHealth = 0 @@ -336,6 +336,8 @@ bestNymph = D nymphos += D D.forceMove(T) + if(death_split && D.health != 0 && D.stat != DEAD) + D.health = D.maxHealth * 0.20 D.split_languages(src) D.set_dir(pick(NORTH, SOUTH, EAST, WEST)) D.gestalt = null diff --git a/code/modules/mob/living/carbon/human/species/station/diona/diona.dm b/code/modules/mob/living/carbon/human/species/station/diona/diona.dm index d6142114f15..5c43e3709bd 100644 --- a/code/modules/mob/living/carbon/human/species/station/diona/diona.dm +++ b/code/modules/mob/living/carbon/human/species/station/diona/diona.dm @@ -160,7 +160,7 @@ /datum/species/diona/handle_death(var/mob/living/carbon/human/H, var/gibbed = 0) if (!gibbed) // This proc sleeps. Async it. - INVOKE_ASYNC(H, /mob/living/carbon/human/proc/diona_split_into_nymphs) + INVOKE_ASYNC(H, /mob/living/carbon/human/proc/diona_split_into_nymphs, TRUE) /datum/species/diona/handle_speech_problems(mob/living/carbon/human/H, list/current_flags, message, message_verb, message_mode) // Diona without head can live, but they cannot talk as loud anymore. @@ -182,4 +182,4 @@ /datum/species/diona/handle_despawn(var/mob/living/carbon/human/H) for(var/mob/living/carbon/alien/diona/D in H.contents) if((!D.client && !D.mind) || D.stat == DEAD) - qdel(D) \ No newline at end of file + qdel(D) diff --git a/html/changelogs/nymphsplit.yml b/html/changelogs/nymphsplit.yml new file mode 100644 index 00000000000..e49679b46c1 --- /dev/null +++ b/html/changelogs/nymphsplit.yml @@ -0,0 +1,41 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: Yonnimer + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Makes it so if a Dionae deathsplits, their nymphs will start with only 20% of their max health."