Several Diona Fixes (#12135)

This commit is contained in:
Doxxmedearly
2021-07-04 23:27:01 -04:00
committed by GitHub
parent 854792ca8a
commit df79ae2cb8
11 changed files with 45 additions and 19 deletions

View File

@@ -94,6 +94,8 @@
flower_color = get_random_colour(1)
. = ..(mapload)
//species = all_species[]
ingested = new /datum/reagents/metabolism(500, src, CHEM_INGEST)
reagents = ingested
set_species(SPECIES_DIONA)
setup_dionastats()
eat_types |= TYPE_ORGANIC

View File

@@ -14,6 +14,12 @@
if(touching) touching.metabolize()
if(bloodstr) bloodstr.metabolize()
if(breathing) breathing.metabolize()
if(ingested) ingested.metabolize()
for(var/_R in chem_doses)
if ((_R in bloodstr.reagent_volumes) || (_R in ingested.reagent_volumes) || (_R in breathing.reagent_volumes) || (_R in touching.reagent_volumes))
continue
chem_doses -= _R //We're no longer metabolizing this reagent. Remove it from chem_doses
// nutrition decrease
if(nutrition > 0 && stat != DEAD)

View File

@@ -18,7 +18,11 @@ var/list/diona_banned_languages = list(
/datum/language/cultcommon,
/datum/language/corticalborer,
/datum/language/binary,
/datum/language/binary/drone)
/datum/language/binary/drone,
/datum/language/bug,
/datum/language/ling,
/datum/language/revenant,
/datum/language/machine)
#define DIONA_LIGHT_COEFICIENT 0.25
/mob/living/carbon/proc/diona_handle_light(var/datum/dionastats/DS) //Carbon is the highest common denominator between gestalts and nymphs. They will share light code
@@ -524,6 +528,7 @@ var/list/diona_banned_languages = list(
languages.Cut()
add_language(species.default_language) //They always have rootsong
accent = host.accent //Get the accent of the main gestalt
for (var/datum/language/L in host.languages)
var/chance = 40
@@ -548,7 +553,7 @@ var/list/diona_banned_languages = list(
if(!gestalt)
to_chat(src, SPAN_WARNING("You have no Gestalt!"))
else if(gestalt.stat == DEAD)
to_chat(src, SPAN_DANGER("Your Gestlat is not responding! Something could have happened to it!"))
to_chat(src, SPAN_DANGER("Your Gestalt is not responding! Something might have happened to it!"))
else
gestalt.key = key
return TRUE
@@ -559,9 +564,11 @@ var/list/diona_banned_languages = list(
set desc = "Allows you to merge back to your parent Gestalt."
set category = "Abilities"
for(var/mob/living/carbon/human/H in view(src, 7))
for(var/mob/living/carbon/human/H in range(1))
if(!H.is_diona())
continue
if(!Adjacent(H))
continue
var/mob/living/carbon/human/diona/C = H
if(C == gestalt)
C.nutrition += REGROW_FOOD_REQ * 0.75

View File

@@ -278,6 +278,7 @@
M.detached = TRUE
M.update_verbs(TRUE)
M.languages = languages.Copy()
M.accent = accent
update_dionastats() //Re-find the organs in case they were lost or regained
nutrition -= REGROW_FOOD_REQ