Vaurca Augments & Aut'akh Loadout Tweaks (#17193)

* i need CHROME

* reverts loadout point cost

* revert augment cost change

* Update code/modules/organs/subtypes/vaurca.dm

---------

Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
This commit is contained in:
RustingWithYou
2023-09-13 14:06:52 +00:00
committed by GitHub
co-authored by Matt Atlas
parent 0234d175e7
commit 575b1789b3
4 changed files with 175 additions and 2 deletions
@@ -205,6 +205,7 @@
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(SPECIES_UNATHI)
culture_restriction = list(/singleton/origin_item/culture/autakh)
sort_category = "Xenowear - Unathi"
cost = 2
allowed_roles = list("Engineer", "Chief Engineer", "Atmospheric Technician", "Engineering Apprentice", "Machinist")
@@ -215,6 +216,7 @@
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(SPECIES_UNATHI)
culture_restriction = list(/singleton/origin_item/culture/autakh)
sort_category = "Xenowear - Unathi"
cost = 2
allowed_roles = list("Shaft Miner")
@@ -225,6 +227,7 @@
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(SPECIES_UNATHI)
culture_restriction = list(/singleton/origin_item/culture/autakh)
sort_category = "Xenowear - Unathi"
cost = 2
allowed_roles = list("Chief Medical Officer", "Physician", "Surgeon", "First Responder", "Medical Intern", "Psychiatrist", "Chemist")
@@ -235,6 +238,7 @@
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(SPECIES_UNATHI)
culture_restriction = list(/singleton/origin_item/culture/autakh)
sort_category = "Xenowear - Unathi"
cost = 2
allowed_roles = list("Security Officer", "Head of Security", "Warden")
@@ -322,6 +326,7 @@
path = /obj/item/organ/internal/anchor
cost = 0
whitelisted = list(SPECIES_UNATHI)
culture_restriction = list(/singleton/origin_item/culture/autakh)
sort_category = "Xenowear - Unathi"
/datum/gear/augment/autakh/calf_override
@@ -246,7 +246,7 @@
cost = 5
path = /obj/item/organ/internal/augment/tool/combitool/vaurca
sort_category = "Xenowear - Vaurca"
whitelisted = list(SPECIES_VAURCA_WORKER, SPECIES_VAURCA_BULWARK)
whitelisted = list(SPECIES_VAURCA_WORKER, SPECIES_VAURCA_BULWARK, SPECIES_VAURCA_WARRIOR)
/datum/gear/augment/vaurcatool/New()
..()
@@ -255,6 +255,26 @@
augs["vaurca integrated toolset, left hand"] = /obj/item/organ/internal/augment/tool/combitool/vaurca/left
gear_tweaks += new /datum/gear_tweak/path(augs)
/datum/gear/augment/vaurcasec
display_name = "vaurca integrated electric weapon"
description = "A Vaurca-designed robotic hand that can deliver a painful electric shock."
cost = 2
path = /obj/item/organ/external/hand/right/vaurca/security
whitelisted = list(SPECIES_VAURCA_WARRIOR)
sort_category = "Xenowear - Vaurca"
allowed_roles = list("Security Officer", "Warden")
flags = GEAR_NO_SELECTION
/datum/gear/augment/vaurcamed
display_name = "vaurca integrated biological analyser"
description = "A Vaurca-designed robotic hand capable of providing a medical scan of a target."
cost = 2
path = /obj/item/organ/external/hand/right/vaurca/medical
whitelisted = list(SPECIES_VAURCA_WARRIOR, SPECIES_VAURCA_WORKER)
sort_category = "Xenowear - Vaurca"
allowed_roles = list("Physician", "Surgeon", "First Responder", "Medical Intern", "Psychiatrist", "Chemist")
flags = GEAR_NO_SELECTION
/datum/gear/augment/vaurcamag
display_name = "vaurca integrated mag-claws"
description = "An integrated magnetic grip system, designed for Vaurcae without easy access to magboots."
@@ -262,4 +282,4 @@
path = /obj/item/organ/internal/augment/tool/vaurcamag
sort_category = "Xenowear - Vaurca"
whitelisted = list(SPECIES_VAURCA_WORKER, SPECIES_VAURCA_WARRIOR, SPECIES_VAURCA_BULWARK)
allowed_roles = list("Shaft Miner", "Engineer", "Atmospheric Technician", "Engineering Apprentice", "Xenoarchaeologist")
allowed_roles = list("Shaft Miner", "Engineer", "Atmospheric Technician", "Engineering Apprentice", "Xenoarchaeologist")
+105
View File
@@ -425,3 +425,108 @@
/obj/item/organ/external/head/vaurca
limb_flags = ORGAN_CAN_AMPUTATE | ORGAN_CAN_MAIM
encased = null
//Beefier augments
/obj/item/organ/external/hand/right/vaurca/security
name = "security grasper"
action_button_name = "Activate Integrated Electroshock Weapon"
dislocated = -1
encased = "support frame"
robotize_type = PROSTHETIC_VAURCA
/obj/item/organ/external/hand/right/vaurca/security/refresh_action_button()
. = ..()
if(.)
action.button_icon_state = "baton"
if(action.button)
action.button.update_icon()
/obj/item/organ/external/hand/right/vaurca/security/attack_self(var/mob/user)
. = ..()
if(.)
if(owner.last_special > world.time)
to_chat(owner, "<span class='danger'>\The [src] is still recharging!</span>")
return
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
if(is_broken())
to_chat(owner, "<span class='danger'>\The [src] is too damaged to be used!</span>")
return
if(is_bruised())
spark(get_turf(owner), 3)
var/obj/item/grab/G = owner.get_active_hand()
if(!istype(G))
to_chat(owner, "<span class='danger'>You must grab someone before trying to use your [src]!</span>")
return
if(owner.nutrition <= 150) //slightly more energy-efficient than aut'akh bc bugs are better at augments
to_chat(owner, "<span class='danger'>Your energy reserves are too low to use your [src]!</span>")
return
if(ishuman(G.affecting))
var/mob/living/carbon/human/H = G.affecting
var/target_zone = check_zone(owner.zone_sel.selecting)
owner.last_special = world.time + 100
owner.adjustNutritionLoss(50)
if(owner.a_intent == I_HURT)
H.electrocute_act(10, owner, def_zone = target_zone)
else
H.stun_effect_act(0, 50, target_zone, owner)
owner.visible_message("<span class='danger'>[H] has been prodded with [src] by [owner]!</span>")
playsound(get_turf(owner), 'sound/weapons/Egloves.ogg', 50, 1, -1)
/obj/item/organ/external/hand/right/vaurca/medical
name = "medical grasper"
action_button_name = "Activate Integrated Biological Analyser"
dislocated = -1
encased = "support frame"
robotize_type = PROSTHETIC_VAURCA
/obj/item/organ/external/hand/right/vaurca/medical/refresh_action_button()
. = ..()
if(.)
action.button_icon_state = "health"
if(action.button)
action.button.update_icon()
/obj/item/organ/external/hand/right/vaurca/medical/attack_self(var/mob/user)
. = ..()
if(.)
if(owner.last_special > world.time)
to_chat(owner, "<span class='danger'>\The [src] is still recharging!</span>")
return
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
if(is_broken())
to_chat(owner, "<span class='danger'>\The [src] is too damaged to be used!</span>")
return
if(is_bruised())
spark(get_turf(owner), 3)
var/obj/item/grab/G = owner.get_active_hand()
if(!istype(G))
to_chat(owner, "<span class='danger'>You must grab someone before trying to analyze their health!</span>")
return
owner.last_special = world.time + 50
if(ishuman(G.affecting))
var/mob/living/carbon/human/H = G.affecting
health_scan_mob(H, owner)