Tajara Biology Additions: Retro Biopunk Edition (#9990)

This commit is contained in:
Alberyk
2020-10-04 20:22:41 +02:00
committed by GitHub
parent d287077763
commit b8b1cd5e8a
10 changed files with 176 additions and 16 deletions
+1
View File
@@ -2273,6 +2273,7 @@
#include "code\modules\organs\internal\lungs.dm"
#include "code\modules\organs\internal\stomach.dm"
#include "code\modules\organs\internal\species\diona.dm"
#include "code\modules\organs\internal\species\tajara.dm"
#include "code\modules\organs\subtypes\augment.dm"
#include "code\modules\organs\subtypes\autakh.dm"
#include "code\modules\organs\subtypes\diona.dm"
+1 -1
View File
@@ -585,7 +585,7 @@ var/list/global/slot_flags_enumeration = list(
"<span class='danger'>You stab yourself in the [eyes.singular_name] with [src]!</span>" \
)
eyes.damage += rand(3,4)
eyes.take_damage(rand(3,4))
if(eyes.damage >= eyes.min_bruised_damage)
if(M.stat != 2)
if(eyes.robotic <= 1) //robot eyes bleeding might be a bit silly
@@ -92,17 +92,11 @@
move_trail = /obj/effect/decal/cleanable/blood/tracks/paw
meat_type = /obj/item/reagent_containers/food/snacks/meat/adhomai
/datum/species/monkey/tajaran/get_random_name()
return "farwa ([rand(100,999)])" // HACK HACK HACK, oh lords of coding please forgive me!
/datum/species/monkey/tajaran/m_sai
name = SPECIES_MONKEY_TAJARA_MSAI
greater_form = SPECIES_TAJARA_MSAI
/datum/species/monkey/tajaran/zhan_khazan
name = SPECIES_MONKEY_TAJARA_ZHAN
greater_form = SPECIES_TAJARA_ZHAN
/datum/species/monkey/skrell
name = SPECIES_MONKEY_SKRELL
short_name = "nea"
@@ -80,6 +80,28 @@
zombie_type = SPECIES_ZOMBIE_TAJARA
has_organ = list(
BP_HEART = /obj/item/organ/internal/heart/tajara,
BP_LUNGS = /obj/item/organ/internal/lungs/tajara,
BP_LIVER = /obj/item/organ/internal/liver/tajara,
BP_KIDNEYS = /obj/item/organ/internal/kidneys/tajara,
BP_STOMACH = /obj/item/organ/internal/stomach/tajara,
BP_BRAIN = /obj/item/organ/internal/brain/tajara,
BP_APPENDIX = /obj/item/organ/internal/appendix/tajara,
BP_EYES = /obj/item/organ/internal/eyes/night
)
stomach_capacity = 6
max_nutrition_factor = 1.2
max_hydration_factor = 1.2
nutrition_loss_factor = 0.8
hydration_loss_factor = 0.8
metabolism_mod = 0.8
meat_type = /obj/item/reagent_containers/food/snacks/meat/adhomai
/datum/species/tajaran/after_equip(var/mob/living/carbon/human/H)
. = ..()
if(H.shoes)
@@ -28,11 +28,17 @@
heat_level_2 = 360 //RaceDefault 380 Default 400
heat_level_3 = 700 //RaceDefault 800 Default 1000
primitive_form = SPECIES_MONKEY_TAJARA_ZHAN
allowed_accents = list(ACCENT_REPUBICLANSIIK, ACCENT_NAZIRASIIK, ACCENT_CREVAN, ACCENT_DASNRRASIIK, ACCENT_HIGHHARRSIIK, ACCENT_LOWHARRSIIK, ACCENT_AMOHDASIIK,
ACCENT_RURALDELVAHHI, ACCENT_NOMADDELVAHHI)
stomach_capacity = 7
max_nutrition_factor = 1.3
max_hydration_factor = 1.3
nutrition_loss_factor = 0.7
hydration_loss_factor = 0.7
/datum/species/tajaran/m_sai
name = SPECIES_TAJARA_MSAI
name_plural = "M'sai Tajaran"
@@ -56,9 +62,14 @@
heat_level_2 = 390 //RaceDefault 380 Default 400
heat_level_3 = 900 //RaceDefault 800 Default 1000
primitive_form = SPECIES_MONKEY_TAJARA_MSAI
default_h_style = "M'sai Ears"
secondary_langs = list(LANGUAGE_SIIK_MAAS, LANGUAGE_SIIK_TAJR, LANGUAGE_SIGN_TAJARA)
allowed_accents = list(ACCENT_REPUBICLANSIIK, ACCENT_NAZIRASIIK, ACCENT_CREVAN, ACCENT_DASNRRASIIK, ACCENT_HIGHHARRSIIK, ACCENT_LOWHARRSIIK, ACCENT_AMOHDASIIK)
max_nutrition_factor = 1.2
max_hydration_factor = 1.2
nutrition_loss_factor = 0.9
hydration_loss_factor = 0.9
@@ -0,0 +1,125 @@
/obj/item/organ/internal/eyes/night
name = "light sensitive eyes"
desc = "A pair of Tajaran eyes accustomed to the low light conditions of Adhomai."
icon_state = "tajaran_eyes"
action_button_name = "Activate Low Light Vision"
relative_size = 8
var/night_vision = FALSE
var/datum/client_color/vision_color = /datum/client_color/monochrome
var/eye_emote = "'s eyes dilate!"
/obj/item/organ/internal/eyes/night/Destroy()
disable_night_vision()
. = ..()
/obj/item/organ/internal/eyes/night/removed(var/mob/living/carbon/human/target)
. = ..()
disable_night_vision()
/obj/item/organ/internal/eyes/night/replaced()
. = ..()
disable_night_vision()
/obj/item/organ/internal/eyes/night/refresh_action_button()
. = ..()
if(.)
action.button_icon_state = "night_eyes"
if(action.button)
action.button.update_icon()
/obj/item/organ/internal/eyes/night/attack_self(var/mob/user)
. = ..()
if(owner.last_special > world.time)
return
if(use_check(user, USE_ALLOW_NON_ADJACENT))
return
if(is_broken())
return
if(status & ORGAN_ROBOT)
return
if(!night_vision)
enable_night_vision()
else
disable_night_vision()
owner.last_special = world.time + 20
/obj/item/organ/internal/eyes/night/take_damage(var/amount, var/silent = 0)
..()
disable_night_vision()
/obj/item/organ/internal/eyes/night/take_internal_damage(var/amount, var/silent = 0)
..()
disable_night_vision()
/obj/item/organ/internal/eyes/night/flash_act()
if(!owner)
return
to_chat(owner, SPAN_WARNING("Your eyes burn with the intense light of the flash!"))
owner.Weaken(5)
disable_night_vision()
owner.last_special = world.time + 100
/obj/item/organ/internal/eyes/night/proc/enable_night_vision()
if(!owner)
return
if(night_vision)
return
var/show_message = TRUE
for(var/obj/item/protection in list(owner.head, owner.wear_mask, owner.glasses))
if((protection && (protection.body_parts_covered & EYES)))
break
show_message = FALSE
if(show_message && eye_emote)
owner.emote("me", 1, eye_emote)
night_vision = TRUE
owner.stop_sight_update = TRUE
owner.see_invisible = SEE_INVISIBLE_NOLIGHTING
owner.add_client_color(vision_color)
/obj/item/organ/internal/eyes/night/proc/disable_night_vision()
if(!owner)
return
if(!night_vision)
return
night_vision = FALSE
owner.stop_sight_update = FALSE
owner.remove_client_color(vision_color)
/obj/item/organ/internal/stomach/tajara
name = "reinforced stomach"
desc = "A Tajara stomach adapted to help the body conserve energy during digestion."
icon_state = "tajaran_stomach"
stomach_volume = 80
/obj/item/organ/internal/lungs/tajara
name = "insulated lungs"
desc = "A pair of Tajaran lungs that help preserve the warmth of the air while breathing."
icon_state = "tajaran_lungs"
/obj/item/organ/internal/liver/tajara
desc = "An alien liver capable of filtering Adhomian toxins and chemicals."
icon_state = "tajaran_liver"
/obj/item/organ/internal/heart/tajara
desc = "A robust heart capable of helping to preserve body temperature through blood circulation."
icon_state = "tajaran_heart"
dead_icon = "tajaran_heart"
/obj/item/organ/internal/kidneys/tajara
desc = "Alien kidneys adapted to the Tajaran physiology."
icon_state = "tajaran_kidneys"
/obj/item/organ/internal/brain/tajara
icon_state = "tajaran_brain"
/obj/item/organ/internal/appendix/tajara
name = "fat reservoir"
icon_state = "tajaran_appendix"
desc = "An Adhomian organ that stores fat and nutrients for the winter."
+2 -4
View File
@@ -12,6 +12,7 @@
var/datum/reagents/metabolism/ingested
var/next_cramp = 0
var/should_process_alcohol = TRUE
var/stomach_volume = 65
/obj/item/organ/internal/stomach/Destroy()
QDEL_NULL(ingested)
@@ -99,8 +100,6 @@
if(is_usable())
ingested.metabolize()
#define STOMACH_VOLUME 65
/obj/item/organ/internal/stomach/process()
..()
if(owner)
@@ -133,7 +132,7 @@
var/effective_volume = ingested.total_volume + alcohol_volume
// Just over the limit, the probability will be low. It rises a lot such that at double ingested it's 64% chance.
var/vomit_probability = (effective_volume / STOMACH_VOLUME) ** 6
var/vomit_probability = (effective_volume / stomach_volume) ** 6
if(prob(vomit_probability))
owner.vomit()
@@ -141,5 +140,4 @@
if(!QDELETED(M))
qdel(M)
#undef STOMACH_VOLUME
#undef PUKE_ACTION_NAME
+9
View File
@@ -0,0 +1,9 @@
author: Alberyk, Kyres1, TheStriker
delete-after: True
changes:
- rscadd: "Tajara have a higher nutrition and hydration thresholds and get hungry slower, this is a bit different between subspecies."
- rscadd: "Tajara process chemicals a bit slower."
- rscadd: "Tajara have their own set of organs with some differences in functions, flavor and icons."
- rscadd: "Tajara now have a somewhat proper night vision verb that can be toggled. While it allows the user to see in the darkness, it removes all the color. Being flashed or hurt in the eyes disables it. Tajaran eyes are also bigger and have a higher chance of being hit when attacking the head."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 50 KiB