Reworks Aut'akh (#8880)

This commit is contained in:
Alberyk
2020-05-18 15:07:34 -03:00
committed by GitHub
parent 35eac148cf
commit 21b4df0682
22 changed files with 104 additions and 254 deletions
@@ -5,7 +5,7 @@
cost = 1
augment = TRUE
sort_category = "Augments"
whitelisted = list("Human", "Off-Worlder Human", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara", "Aut'akh Unathi", "Skrell", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame")
whitelisted = list("Human", "Off-Worlder Human", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara", "Skrell", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame")
flags = GEAR_NO_SELECTION
/datum/gear/augment/eye_sensors
@@ -13,7 +13,7 @@
description = "An eye augment that allows the user to deploy medical or security sensors."
path = /obj/item/organ/internal/augment/eye_sensors
cost = 4
whitelisted = list("Human", "Off-Worlder Human", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara", "Aut'akh Unathi", "Skrell", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame", "Vaurca Worker", "Vaurca Warrior")
whitelisted = list("Human", "Off-Worlder Human", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara", "Unathi", "Skrell", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame", "Vaurca Worker", "Vaurca Warrior")
/datum/gear/augment/cyber_hair
@@ -8,20 +8,20 @@
display_name = "cloth footwraps"
path = /obj/item/clothing/shoes/footwraps
sort_category = "Xenowear"
whitelisted = list("Vaurca Worker", "Vaurca Warrior", "Unathi", "Aut'akh Unathi", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
whitelisted = list("Vaurca Worker", "Vaurca Warrior", "Unathi", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION
/datum/gear/shoes/toeless
display_name = "toe-less jackboots"
path = /obj/item/clothing/shoes/jackboots/toeless
sort_category = "Xenowear"
whitelisted = list("Vaurca Worker", "Vaurca Warrior", "Unathi", "Aut'akh Unathi", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
whitelisted = list("Vaurca Worker", "Vaurca Warrior", "Unathi", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
/datum/gear/shoes/workboots_toeless
display_name = "toeless workboots selection"
path = /obj/item/clothing/shoes/workboots/toeless
sort_category = "Xenowear"
whitelisted = list("Vaurca Worker", "Vaurca Warrior", "Unathi", "Aut'akh Unathi", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
whitelisted = list("Vaurca Worker", "Vaurca Warrior", "Unathi", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
/datum/gear/shoes/workboots_toeless/New()
..()
@@ -34,7 +34,7 @@
/datum/gear/shoes/caligae
display_name = "caligae selection"
path = /obj/item/clothing/shoes/caligae
whitelisted = list("Unathi", "Aut'akh Unathi", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
whitelisted = list("Unathi", "Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
sort_category = "Xenowear"
/datum/gear/shoes/caligae/New()
@@ -2,28 +2,28 @@
display_name = "hide mantle"
path = /obj/item/clothing/suit/unathi/mantle
cost = 1
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/suit/unathi_robe
display_name = "roughspun robe"
path = /obj/item/clothing/suit/unathi/robe
cost = 1
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/suit/robe_coat
display_name = "tzirzi robe"
path = /obj/item/clothing/suit/unathi/robe/robe_coat
cost = 1
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/gloves/unathi
display_name = "unathi gloves selection"
description = "A selection of unathi colored gloves."
path = /obj/item/clothing/gloves/black/unathi
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/gloves/unathi/New()
@@ -42,7 +42,7 @@
/datum/gear/uniform/unathi
display_name = "sinta tunic"
path = /obj/item/clothing/under/unathi
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION
@@ -50,7 +50,7 @@
display_name = "engineering grasper"
description = "An Aut'akh augment limb, this one is outfitted with a limited toolkit."
path = /obj/item/organ/external/hand/right/autakh/tool
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
cost = 3
allowed_roles = list("Station Engineer", "Chief Engineer", "Atmospheric Technician", "Engineering Apprentice", "Roboticist")
@@ -60,7 +60,7 @@
display_name = "mining grasper"
description = "An Aut'akh augment limb, this one is outfitted with a mining drill."
path = /obj/item/organ/external/hand/right/autakh/tool/mining
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
cost = 3
allowed_roles = list("Shaft Miner")
@@ -70,7 +70,7 @@
display_name = "medical grasper"
description = "An Aut'akh augment limb, this one is outfitted with a health scanner."
path = /obj/item/organ/external/hand/right/autakh/medical
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
cost = 3
allowed_roles = list("Chief Medical Officer", "Physician", "Surgeon", "Paramedic", "Medical Resident", "Psychiatrist", "Chemist")
@@ -80,7 +80,7 @@
display_name = "security grasper"
description = "An Aut'akh augment limb, this one is outfitted with an electroshock weapon."
path = /obj/item/organ/external/hand/right/autakh/security
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
cost = 3
allowed_roles = list("Security Officer", "Head of Security", "Warden")
@@ -89,37 +89,37 @@
/datum/gear/uniform/unathi/jizixi
display_name = "jizixi dress"
path = /obj/item/clothing/under/unathi/jizixi
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/uniform/unathi/sashes
display_name = "gyzao sashes"
path = /obj/item/clothing/under/unathi/sashes
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/uniform/unathi/mogazali
display_name = "mogazali attire"
path = /obj/item/clothing/under/unathi/mogazali
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/uniform/unathi/zazali
display_name = "zazali garb"
path = /obj/item/clothing/under/unathi/zazali
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/uniform/unathi/huytai
display_name = "huytai outfit"
path = /obj/item/clothing/under/unathi/huytai
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/uniform/unathi/zozo
display_name = "zozo top"
path = /obj/item/clothing/under/unathi/zozo
whitelisted = list("Unathi", "Aut'akh Unathi")
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/suit/unathi/wrapping_head
@@ -146,4 +146,20 @@
path = /obj/item/organ/internal/anchor
cost = 1
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
sort_category = "Xenowear - Unathi"
/datum/gear/augment/haemodynamic
display_name = "haemodynamic control system"
description = "An Aut'akh augment that allows the user to stabilize themselves."
path = /obj/item/organ/internal/augment/haemodynamic
cost = 4
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
/datum/gear/augment/adrenal
display_name = "adrenal management system"
description = "A series of aut'akh mechanical stimulants and extra glands placed along the adrenal system. ."
path = /obj/item/organ/internal/augment/adrenal
cost = 4
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
@@ -11,7 +11,7 @@
//Vars related to human mobs
outfit = /datum/outfit/merchant_assistant
possible_species = list("Human", "Off-Worlder Human", "Tajara", "Tajara", "M'sai Tajara", "Zhan-Khazan Tajara", "Skrell", "Unathi", "Aut'akh Unathi", "Vaurca Warrior", "Vaurca Worker", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame", "Diona")
possible_species = list("Human", "Off-Worlder Human", "Tajara", "Tajara", "M'sai Tajara", "Zhan-Khazan Tajara", "Skrell", "Unathi", "Vaurca Warrior", "Vaurca Worker", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame", "Diona")
possible_genders = list(MALE,FEMALE)
allow_appearance_change = APPEARANCE_PLASTICSURGERY
@@ -6,7 +6,7 @@
desc = "A highly trained doctor. Can do most medical procedures even under severe stress. The de-facto lead of the IAC response team."
welcome_message = "You are part of the Interstellar Aid Corps, an intergalactic entity set on aiding all in need."
outfit = /datum/outfit/admin/ert/iac
possible_species = list("Human", "Off-Worlder Human", "Tajara", "M'sai Tajara", "Zhan-Khazan Tajara", "Skrell", "Diona", "Unathi", "Aut'akh Unathi", "Vaurca Warrior", "Vaurca Worker", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame")
possible_species = list("Human", "Off-Worlder Human", "Tajara", "M'sai Tajara", "Zhan-Khazan Tajara", "Skrell", "Diona", "Unathi", "Vaurca Warrior", "Vaurca Worker", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame")
/datum/ghostspawner/human/ert/iac/bodyguard
name = "IAC Bodyguard"
@@ -6,7 +6,7 @@
max_count = 3
outfit = /datum/outfit/admin/ert/legion
spawnpoints = list("TCFLERTSpawn")
possible_species = list("Human", "Off-Worlder Human", "Tajara", "Tajara", "M'sai Tajara", "Zhan-Khazan Tajara", "Skrell", "Unathi", "Aut'akh Unathi", "Vaurca Warrior", "Vaurca Worker", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame", "Diona")
possible_species = list("Human", "Off-Worlder Human", "Tajara", "Tajara", "M'sai Tajara", "Zhan-Khazan Tajara", "Skrell", "Unathi", "Vaurca Warrior", "Vaurca Worker", "Baseline Frame", "Hephaestus G1 Industrial Frame", "Hephaestus G2 Industrial Frame", "Xion Industrial Frame", "Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame", "Diona")
mob_name_prefix = "Vol. "
/datum/ghostspawner/human/ert/tcfl/specialist
@@ -350,6 +350,3 @@ INITIALIZE_IMMEDIATE(/mob/living/carbon/human/dummy/mannequin)
/mob/living/carbon/human/adamantine_golem/Initialize(mapload)
. = ..(mapload, "Adamantine Golem")
/mob/living/carbon/human/autakh/Initialize(mapload)
. = ..(mapload, "Aut'akh Unathi")
@@ -1,127 +0,0 @@
/datum/species/unathi/autakh
name = "Aut'akh Unathi"
short_name = "aut"
name_plural = "Aut'akh Unathi"
icobase = 'icons/mob/human_races/unathi/r_autakh.dmi'
deform = 'icons/mob/human_races/unathi/r_autakh.dmi'
preview_icon = 'icons/mob/human_races/unathi/autakh_preview.dmi'
tail = "autakh"
tail_animation = null
slowdown = 0.5
brute_mod = 0.7
burn_mod = 1.2
toxins_mod = 0.8
fall_mod = 1.1
economic_modifier = 4
sprint_speed_factor = 2.6
sprint_cost_factor = 1.10
rarity_value = 4
metabolism_mod = 2
eyes_are_impermeable = TRUE
breakcuffs = list(MALE, FEMALE)
meat_type = /obj/item/stack/material/steel
remains_type = /obj/effect/decal/remains/robot
death_message = "gives one shrill beep before falling lifeless."
death_message_range = 7
knockout_message = "encounters a hardware fault and suddenly reboots!"
halloss_message = "encounters a hardware fault and suddenly reboots."
halloss_message_self = "ERROR: Unrecoverable machine check exception.<BR>System halted, rebooting..."
blurb = "The Aut'akh are a religious commune of cybernetically-augmented Unathi. They mostly hail from Moghes, and are made up of castoffs, refugees and exiles \
from other clans who have settled in the icy north pole. Formed from survivors of the contact war, the Aut'akh take a radical view of the standard Unathi position that \
the body is just a shell; they believe that meat is animated by soul, while metal is powered by electricity, and thus replacing one's body with metal empowers the soul.<br><br> \
They are managed, but not ruled, by their god Oss, a silent deity who quietly facilitates the Aut'akh's prosperity behind the scenes. They are almost excessively friendly, \
seeing all the beings of the galaxy as potential Aut'akh or allies for the Aut'akh. They also hold a strong spiritual tradition, believing that highly charismatic or intelligent \
people or strong fighters are blessed with magic"
cold_level_1 = 250 //Default 260 - Lower is better
cold_level_2 = 210 //Default 200
cold_level_3 = 120 //Default 120
heat_level_1 = 380 //Default 360 - Higher is better
heat_level_2 = 420 //Default 400
heat_level_3 = 1000 //Default 1000
inherent_verbs = list(
/mob/living/carbon/human/proc/detach_limb,
/mob/living/carbon/human/proc/attach_limb,
/mob/living/carbon/human/proc/self_diagnostics,
/mob/living/carbon/human/proc/tongue_flick
)
has_organ = list(
BP_HEART = /obj/item/organ/internal/heart,
BP_LUNGS = /obj/item/organ/internal/lungs,
BP_LIVER = /obj/item/organ/internal/liver,
BP_KIDNEYS = /obj/item/organ/internal/kidneys/autakh,
BP_STOMACH = /obj/item/organ/internal/stomach,
BP_BRAIN = /obj/item/organ/internal/brain,
BP_EYES = /obj/item/organ/internal/eyes/autakh,
BP_ANCHOR = /obj/item/organ/internal/anchor,
BP_HAEMO = /obj/item/organ/internal/haemodynamic,
BP_ADRENAL = /obj/item/organ/internal/adrenal
)
has_limbs = list(
BP_CHEST = list("path" = /obj/item/organ/external/chest/autakh),
BP_GROIN = list("path" = /obj/item/organ/external/groin/autakh),
BP_HEAD = list("path" = /obj/item/organ/external/head/autakh),
BP_L_ARM = list("path" = /obj/item/organ/external/arm/autakh),
BP_R_ARM = list("path" = /obj/item/organ/external/arm/right/autakh),
BP_L_LEG = list("path" = /obj/item/organ/external/leg/autakh),
BP_R_LEG = list("path" = /obj/item/organ/external/leg/right/autakh),
BP_L_HAND = list("path" = /obj/item/organ/external/hand/autakh),
BP_R_HAND = list("path" = /obj/item/organ/external/hand/right/autakh),
BP_L_FOOT = list("path" = /obj/item/organ/external/foot/autakh),
BP_R_FOOT = list("path" = /obj/item/organ/external/foot/right/autakh)
)
appearance_flags = HAS_HAIR_COLOR | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR
flags = NO_CHUBBY
flesh_color = "#575757"
base_color = "#575757"
heat_discomfort_level = 290
heat_discomfort_strings = list(
"Your organs feel warm.",
"Your temperature sensors are reading high.",
"You feel warm enough to take a nap."
)
cold_discomfort_level = 285
cold_discomfort_strings = list(
"You feel chilly.",
"You read a cryogenic environment.",
"Your servos creak in the cold."
)
siemens_coefficient = 1.1
nutrition_loss_factor = 1.2
hydration_loss_factor = 1.2
light_range = 2
light_power = 0.5
/datum/species/unathi/autakh/get_light_color(mob/living/carbon/human/H)
if (!istype(H))
return null
var/obj/item/organ/internal/eyes/eyes = H.get_eyes()
if (eyes)
var/eyegb = rgb(eyes.eye_colour[1], eyes.eye_colour[2], eyes.eye_colour[3])
return eyegb
/datum/species/unathi/autakh/get_cloning_variant()
return "Unathi"
-9
View File
@@ -48,19 +48,10 @@
switch(H.get_species())
if ("Unathi")
return 1
if("Aut'akh Unathi")
return 1
if ("Unathi Zombie")
return 1
return 0
/proc/isautakh(A)
if(ishuman(A))
var/mob/living/carbon/human/H = A
if(H.get_species() == "Aut'akh Unathi")
return 1
return 0
/proc/istajara(A)
if(istype(A, /mob/living/carbon/human))
switch(A:get_species())
+6 -1
View File
@@ -15,7 +15,12 @@
s_tone = null
skin_color = null
hair_color = null
if(status & ORGAN_ROBOT && !(isipc(human)) && !(isautakh(human)))
var/limb_exception = FALSE
if(robotize_type)
var/datum/robolimb/R = all_robolimbs[robotize_type]
if(R.paintable)
limb_exception = TRUE
if(status & ORGAN_ROBOT && !(isipc(human)) && !limb_exception)
return
if(species && human.species && species.name != human.species.name)
return
+2 -6
View File
@@ -100,14 +100,10 @@ var/global/datum/robolimb/basic_robolimb
/datum/robolimb/autakh
company = PROSTHETIC_AUTAKH
desc = "This limb has been designed by the Aut'akh sect, it was created to interact exclusively with their bodies and implants."
desc = "This limb has been designed by the Aut'akh unathi sect."
icon = 'icons/mob/human_races/unathi/r_autakh.dmi'
species_can_use = list("Aut'akh Unathi")
linked_frame = "Aut'akh Unathi"
unavailable_at_chargen = 1
species_can_use = list("Unathi")
paintable = 1
brute_mod = 1
burn_mod = 1
/datum/robolimb/tesla
company = PROSTHETIC_TESLA
+1 -2
View File
@@ -8,8 +8,7 @@
is_augment = TRUE
species_restricted = list("Human","Off-Worlder Human",
"Tajara", "Zhan-Khazan Tajara", "M'sai Tajara",
"Unathi", "Aut'akh Unathi", "Skrell",
"Baseline Frame", "Hephaestus G1 Industrial Frame",
"Unathi", "Skrell", "Baseline Frame", "Hephaestus G1 Industrial Frame",
"Hephaestus G2 Industrial Frame", "Xion Industrial Frame",
"Zeng-Hu Mobility Frame", "Bishop Accessory Frame", "Shell Frame")
var/cooldown = 150
+40 -72
View File
@@ -185,106 +185,74 @@
if(owner)
to_chat(owner, "<span class='notice'>\The [singular_name]'s retinal overlays clicks and shifts!</span>")
/obj/item/organ/internal/adrenal
/obj/item/organ/internal/augment/adrenal
name = "adrenal management system"
icon_state = "ams"
organ_tag = "adrenal"
parent_organ = BP_CHEST
robotic = 2
action_button_icon = "ams"
action_button_name = "Activate Adrenal Management System"
cooldown = 300
activable = TRUE
/obj/item/organ/internal/adrenal/Initialize()
robotize()
/obj/item/organ/internal/augment/adrenal/attack_self(var/mob/user)
. = ..()
/obj/item/organ/internal/adrenal/refresh_action_button()
. = ..()
if(.)
action.button_icon_state = "ams"
if(action.button)
action.button.UpdateIcon()
if(!.)
return FALSE
/obj/item/organ/internal/adrenal/attack_self(var/mob/user)
. = ..()
to_chat(owner, "<span class='notice'>\The [src] activates, releasing a stream of chemicals into your veins!</span>")
if(.)
if(owner.reagents)
if(owner.last_special > world.time)
to_chat(owner, "<span class='danger'>\The [src] is still recharging!</span>")
return
owner.vessel.remove_reagent("blood",rand(15,30))
owner.reagents.add_reagent("paracetamol", 5)
owner.reagents.add_reagent("norepinephrine", 5)
if(owner.stat || owner.paralysis || owner.stunned || owner.weakened)
to_chat(owner, "<span class='danger'>You can not use \the [src] in your current state!</span>")
return
/obj/item/organ/internal/augment/adrenal/do_broken_act()
if(owner.reagents)
owner.reagents.add_reagent("toxin", 25)
return TRUE
owner.last_special = world.time + 500
to_chat(owner, "<span class='notice'>\The [src] activates, releasing a stream of chemicals into your veins!</span>")
/obj/item/organ/internal/augment/adrenal/do_bruised_act()
if(owner.reagents)
owner.reagents.add_reagent("toxin", 10)
return FALSE
if(owner.reagents)
if(is_bruised())
owner.reagents.add_reagent("toxin", 10)
if(is_broken())
owner.reagents.add_reagent("toxin", 25)
return
owner.vessel.remove_reagent("blood",rand(15,30))
owner.reagents.add_reagent("paracetamol", 5)
owner.reagents.add_reagent("norepinephrine", 5)
/obj/item/organ/internal/haemodynamic
/obj/item/organ/internal/augment/haemodynamic
name = "haemodynamic control system"
icon_state = "stabilizer"
organ_tag = "haemodynamic"
parent_organ = BP_CHEST
robotic = 1
action_button_name = "Activate Haemodynamic Control System"
action_button_icon = "stabilizer"
cooldown = 300
activable = TRUE
/obj/item/organ/internal/haemodynamic/Initialize()
mechassist()
/obj/item/organ/internal/augment/haemodynamic/attack_self(var/mob/user)
. = ..()
/obj/item/organ/internal/haemodynamic/Initialize()
robotize()
. = ..()
if(!.)
return FALSE
/obj/item/organ/internal/haemodynamic/refresh_action_button()
. = ..()
if(.)
action.button_icon_state = "stabilizer"
if(action.button)
action.button.UpdateIcon()
owner.adjustNutritionLoss(300)
owner.adjustHydrationLoss(300)
/obj/item/organ/internal/haemodynamic/attack_self(var/mob/user)
. = ..()
to_chat(owner, "<span class='notice'>\The [src] activates, releasing a stream of chemicals into your veins!</span>")
if(.)
if(owner.reagents)
owner.reagents.add_reagent("coagulant", 15)
if(owner.last_special > world.time)
to_chat(owner, "<span class='danger'>\The [src] is still recharging!</span>")
return
/obj/item/organ/internal/augment/haemodynamic/do_broken_act()
if(owner.reagents)
owner.vessel.remove_reagent("blood",rand(50,75))
return TRUE
if(owner.stat || owner.paralysis || owner.stunned || owner.weakened)
to_chat(owner, "<span class='danger'>You can not use \the [src] in your current state!</span>")
return
owner.last_special = world.time + 500
owner.adjustNutritionLoss(300)
owner.adjustHydrationLoss(300)
if(is_broken())
owner.vessel.remove_reagent("blood",rand(50,75))
return
to_chat(owner, "<span class='notice'>\The [src] activates, releasing a stream of chemicals into your veins!</span>")
if(is_bruised())
owner.vessel.remove_reagent("blood",rand(25,50))
if(owner.reagents)
owner.reagents.add_reagent("coagulant", 15)
/obj/item/organ/internal/augment/haemodynamic/do_bruised_act()
if(owner.reagents)
owner.vessel.remove_reagent("blood",rand(25,50))
return FALSE
//limb implants