mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-22 20:43:10 +01:00
Cargo Vaurca (#9783)
This commit is contained in:
@@ -122,8 +122,8 @@
|
||||
)
|
||||
|
||||
/datum/outfit/admin/kataphract/klax/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
if(H?.wear_mask && H.species.has_organ["phoron reserve tank"])
|
||||
var/obj/item/organ/vaurca/preserve/preserve = H.internal_organs_by_name["phoron reserve tank"]
|
||||
if(H?.wear_mask && H.species.has_organ[BP_PHORON_RESERVE])
|
||||
var/obj/item/organ/vaurca/preserve/preserve = H.internal_organs_by_name[BP_PHORON_RESERVE]
|
||||
H.internal = preserve
|
||||
H.internals.icon_state = "internal1"
|
||||
|
||||
|
||||
@@ -176,7 +176,8 @@
|
||||
var/new_name = "[pick(list("Ka'","Za'","Ka'"))]"
|
||||
new_name += "[pick(list("Akaix'","Viax'"))]"
|
||||
new_name += "[pick(list("Uyek","Uyit","Avek","Theth","Ztak","Teth","Zir","Yek","Zirk","Ayek","Yir","Kig","Yol","'Zrk","Nazgr","Yet","Nak","Kiihr","Gruz","Guurz","Nagr","Zkk","Zohd","Norc","Agraz","Yizgr","Yinzr","Nuurg","Iii","Lix","Nhagh","Xir","Z'zit","Zhul","Zgr","Na'k","Isk'yet","Aaaa"))]"
|
||||
new_name += " [pick(list("Zo'ra","Zo'ra","Zo'ra","K'lax"))]"
|
||||
var/list/hive_names = list("Zo'ra" = 3, "K'lax" = 1, "C'thur" = 1)
|
||||
new_name += " [pickweight(hive_names)]"
|
||||
return new_name
|
||||
|
||||
/datum/language/bug/broadcast(var/mob/living/speaker,var/message,var/speaker_mask)
|
||||
@@ -210,7 +211,7 @@
|
||||
return 0
|
||||
if(within_jamming_range(other))
|
||||
return 0
|
||||
if(M.internal_organs_by_name["neural socket"])
|
||||
if(M.internal_organs_by_name[BP_NEURAL_SOCKET])
|
||||
return 1
|
||||
if(M.internal_organs_by_name["blackkois"])
|
||||
return 1
|
||||
|
||||
@@ -70,6 +70,23 @@ INITIALIZE_IMMEDIATE(/mob/living/carbon/human/dummy/mannequin)
|
||||
. = ..(mapload, SPECIES_VAURCA_WORKER)
|
||||
src.gender = NEUTER
|
||||
|
||||
/mob/living/carbon/human/type_a/cargo/Initialize(mapload)
|
||||
. = ..()
|
||||
// Equip mask to allow the drone to breathe
|
||||
equip_to_slot_or_del(new /obj/item/clothing/mask/breath/vaurca/filter(src), slot_wear_mask)
|
||||
// Set internals
|
||||
var/obj/item/organ/vaurca/preserve/P = internal_organs_by_name[BP_PHORON_RESERVE]
|
||||
internal = P
|
||||
// Set colour, default is grey, no biggie
|
||||
var/list/hive = splittext(name, " ")
|
||||
switch(hive[length(hive)])
|
||||
if("K'lax")
|
||||
change_skin_color(33, 63, 33)
|
||||
if("C'thur")
|
||||
change_skin_color(10, 35, 55)
|
||||
if("Zo'ra")
|
||||
change_skin_color(111, 21, 21)
|
||||
|
||||
/mob/living/carbon/human/type_b/Initialize(mapload)
|
||||
h_style = "Classic Antennae"
|
||||
. = ..(mapload, SPECIES_VAURCA_WARRIOR)
|
||||
|
||||
@@ -629,7 +629,7 @@
|
||||
|
||||
var/total_phoronloss = 0
|
||||
for(var/obj/item/I in src)
|
||||
if(I.contaminated && !(isvaurca(src) && src.species.has_organ["filtration bit"]))
|
||||
if(I.contaminated && !(isvaurca(src) && src.species.has_organ[BP_FILTRATION_BIT]))
|
||||
total_phoronloss += vsc.plc.CONTAMINATION_LOSS
|
||||
if(!(status_flags & GODMODE)) adjustToxLoss(total_phoronloss)
|
||||
|
||||
|
||||
@@ -93,11 +93,11 @@
|
||||
stamina_recovery = 2 //slow recovery
|
||||
|
||||
has_organ = list(
|
||||
"neural socket" = /obj/item/organ/vaurca/neuralsocket,
|
||||
BP_NEURAL_SOCKET = /obj/item/organ/vaurca/neuralsocket,
|
||||
BP_LUNGS = /obj/item/organ/internal/lungs/vaurca,
|
||||
"filtration bit" = /obj/item/organ/vaurca/filtrationbit,
|
||||
BP_FILTRATION_BIT = /obj/item/organ/vaurca/filtrationbit,
|
||||
BP_HEART = /obj/item/organ/internal/heart/vaurca,
|
||||
"phoron reserve tank" = /obj/item/organ/vaurca/preserve,
|
||||
BP_PHORON_RESERVE = /obj/item/organ/vaurca/preserve,
|
||||
BP_LIVER = /obj/item/organ/internal/liver/vaurca,
|
||||
BP_KIDNEYS = /obj/item/organ/internal/kidneys/vaurca,
|
||||
BP_STOMACH = /obj/item/organ/internal/stomach,
|
||||
|
||||
@@ -145,16 +145,16 @@
|
||||
)
|
||||
|
||||
has_organ = list(
|
||||
"neural socket" = /obj/item/organ/vaurca/neuralsocket,
|
||||
BP_NEURAL_SOCKET = /obj/item/organ/vaurca/neuralsocket,
|
||||
BP_LUNGS = /obj/item/organ/internal/lungs/vaurca,
|
||||
BP_HEART = /obj/item/organ/internal/heart/vaurca,
|
||||
"phoron reservoir" = /obj/item/organ/vaurca/reservoir,
|
||||
"mechanical liver" = /obj/item/organ/internal/liver/vaurca/robo,
|
||||
"mechanical kidneys" = /obj/item/organ/internal/kidneys/vaurca/robo,
|
||||
BP_PHORON_RESERVOIR = /obj/item/organ/vaurca/reservoir,
|
||||
BP_VAURCA_LIVER = /obj/item/organ/internal/liver/vaurca/robo,
|
||||
BP_VAURCA_KIDNEYS = /obj/item/organ/internal/kidneys/vaurca/robo,
|
||||
BP_STOMACH = /obj/item/organ/internal/stomach,
|
||||
BP_BRAIN = /obj/item/organ/internal/brain/vaurca,
|
||||
BP_EYES = /obj/item/organ/internal/eyes/vaurca,
|
||||
"filtration bit" = /obj/item/organ/vaurca/filtrationbit
|
||||
BP_FILTRATION_BIT = /obj/item/organ/vaurca/filtrationbit
|
||||
)
|
||||
|
||||
default_h_style = "Bald"
|
||||
|
||||
@@ -37,14 +37,14 @@
|
||||
|
||||
/obj/item/organ/internal/kidneys/vaurca/robo
|
||||
icon_state = "kidney_vaurca"
|
||||
organ_tag = "mechanical kidneys"
|
||||
organ_tag = BP_VAURCA_KIDNEYS
|
||||
robotic = 2
|
||||
robotic_name = null
|
||||
robotic_sprite = null
|
||||
|
||||
/obj/item/organ/internal/liver/vaurca/robo
|
||||
icon_state = "liver_vaurca"
|
||||
organ_tag = "mechanical liver"
|
||||
organ_tag = BP_VAURCA_LIVER
|
||||
robotic = 2
|
||||
robotic_name = null
|
||||
robotic_sprite = null
|
||||
@@ -56,22 +56,22 @@
|
||||
icon_state = "brain_vaurca"
|
||||
|
||||
/obj/item/organ/vaurca/reservoir
|
||||
name = "phoron reservoir"
|
||||
organ_tag = "phoron reservoir"
|
||||
name = BP_PHORON_RESERVOIR
|
||||
organ_tag = BP_PHORON_RESERVOIR
|
||||
parent_organ = BP_CHEST
|
||||
icon_state = "phoron_reservoir"
|
||||
robotic = 1
|
||||
|
||||
/obj/item/organ/vaurca/filtrationbit
|
||||
name = "filtration bit"
|
||||
organ_tag = "filtration bit"
|
||||
name = BP_FILTRATION_BIT
|
||||
organ_tag = BP_FILTRATION_BIT
|
||||
parent_organ = BP_HEAD
|
||||
icon_state = "filter"
|
||||
robotic = 2
|
||||
|
||||
/obj/item/organ/vaurca/neuralsocket
|
||||
name = "neural socket"
|
||||
organ_tag = "neural socket"
|
||||
name = BP_NEURAL_SOCKET
|
||||
organ_tag = BP_NEURAL_SOCKET
|
||||
icon_state = "neural_socket"
|
||||
parent_organ = BP_HEAD
|
||||
robotic = 2
|
||||
@@ -100,8 +100,8 @@ obj/item/organ/vaurca/neuralsocket/process()
|
||||
..()
|
||||
|
||||
/obj/item/organ/vaurca/preserve
|
||||
name = "phoron reserve tank"
|
||||
organ_tag = "phoron reserve tank"
|
||||
name = BP_PHORON_RESERVE
|
||||
organ_tag = BP_PHORON_RESERVE
|
||||
parent_organ = BP_CHEST
|
||||
icon_state = "breathing_app"
|
||||
robotic = 1
|
||||
|
||||
@@ -94,15 +94,15 @@
|
||||
H.adjustToxLoss(-2 * removed)
|
||||
return
|
||||
|
||||
if(alien == IS_VAURCA && H.species.has_organ["filtration bit"])
|
||||
if(alien == IS_VAURCA && H.species.has_organ[BP_FILTRATION_BIT])
|
||||
metabolism = REM * 20 //vaurcae metabolise phoron faster than other species - good for them if their filter isn't broken.
|
||||
var/obj/item/organ/vaurca/filtrationbit/F = H.internal_organs_by_name["filtration bit"]
|
||||
var/obj/item/organ/vaurca/filtrationbit/F = H.internal_organs_by_name[BP_FILTRATION_BIT]
|
||||
if(isnull(F))
|
||||
..()
|
||||
else if(F.is_broken())
|
||||
..()
|
||||
else if(H.species.has_organ["phoron reserve tank"])
|
||||
var/obj/item/organ/vaurca/preserve/P = H.internal_organs_by_name["phoron reserve tank"]
|
||||
else if(H.species.has_organ[BP_PHORON_RESERVE])
|
||||
var/obj/item/organ/vaurca/preserve/P = H.internal_organs_by_name[BP_PHORON_RESERVE]
|
||||
if(isnull(P))
|
||||
return
|
||||
else if(P.is_broken())
|
||||
|
||||
Reference in New Issue
Block a user