Cyberpunk 2462: augments for real this time (#8113)

This pr adds an augment option to the loadout, that by using copious amounts of shitcode, allows players to spend their snowflake points into becoming total powergamers cool augmented cyborgs.
Also, make a couple of changes to allow all limbs to host internal organs and interact with them in surgery.
This commit is contained in:
Alberyk
2020-04-23 19:27:53 +03:00
committed by GitHub
parent 7059647e35
commit 7d86fdf901
34 changed files with 694 additions and 29 deletions
@@ -237,6 +237,7 @@ var/list/gear_datums = list()
var/sort_category = "General"
var/list/gear_tweaks = list() //List of datums which will alter the item after it has been spawned.
var/flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION
var/augment = FALSE
/datum/gear/New()
..()
@@ -0,0 +1,67 @@
/datum/gear/augment
display_name = "integrated timepiece"
description = "An augment that allows the user to consult the time anywhere."
path = /obj/item/organ/internal/augment/timepiece
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")
flags = GEAR_NO_SELECTION
/datum/gear/augment/eye_sensors
display_name = "integrated eye sensors"
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", "Vaurca Worker", "Vaurca Warrior")
/datum/gear/augment/cyber_hair
display_name = "synthetic hair extensions"
description = "A hair augment that allows the user to change the shape and color of their hair."
path = /obj/item/organ/internal/augment/cyber_hair
cost = 2
/datum/gear/augment/combitool
display_name = "retractable combitool"
description = "An augment that allows the user to deploy a robotic combitool."
path = /obj/item/organ/internal/augment/tool/combitool
cost = 5
/datum/gear/augment/combitool/New()
..()
var/augs = list()
augs["retractable combitool, right hand"] = /obj/item/organ/internal/augment/tool/combitool
augs["retractable combitool, left hand"] = /obj/item/organ/internal/augment/tool/combitool/left
gear_tweaks += new /datum/gear_tweak/path(augs)
/datum/gear/augment/health_scanner
display_name = "integrated health scanner"
description = "An augment that allows the user scan their own health condition."
path = /obj/item/organ/internal/augment/health_scanner
cost = 3
/datum/gear/augment/suspension
display_name = "calf suspension"
description = "An augment that reduces the damage from falling from heights."
path = /obj/item/organ/internal/augment/suspension
cost = 4
/datum/gear/augment/taste_boosters
display_name = "taste booster selection"
description = "A selection of augments that modify the user's taste sensitivity."
path = /obj/item/organ/internal/augment/taste_booster
cost = 3
/datum/gear/augment/taste_boosters/New()
..()
var/augs = list()
augs["taste booster"] = /obj/item/organ/internal/augment/taste_booster
augs["taste duller"] = /obj/item/organ/internal/augment/taste_booster/dull
gear_tweaks += new /datum/gear_tweak/path(augs)
/datum/gear/augment/fuel_cell
display_name = "integrated fuel cell"
description = "An augment that allows the user to synthetize welding fuel into nutrients."
path = /obj/item/organ/internal/augment/fuel_cell
cost = 3
@@ -185,4 +185,12 @@
path = /obj/item/storage/belt/shumaila_buckle
whitelisted = list("Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
sort_category = "Xenowear - Tajara"
flags = GEAR_HAS_DESC_SELECTION
flags = GEAR_HAS_DESC_SELECTION
/datum/gear/augment/tesla_spine
display_name = "tesla spine"
description = "A People's Republic of Adhomai made tesla spine issued to disabled veterans and civilians."
path = /obj/item/organ/internal/augment/tesla
cost = 4
whitelisted = list("Tajara", "Zhan-Khazan Tajara", "M'sai Tajara")
sort_category = "Xenowear - Tajara"
@@ -46,41 +46,41 @@
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION
/datum/gear/autakh_engineering
/datum/gear/augment/autakh_engineering
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("Aut'akh Unathi")
whitelisted = list("Unathi", "Aut'akh Unathi")
sort_category = "Xenowear - Unathi"
cost = 3
allowed_roles = list("Station Engineer", "Chief Engineer", "Atmospheric Technician", "Engineering Apprentice", "Roboticist")
flags = GEAR_NO_SELECTION
/datum/gear/autakh_mining
/datum/gear/augment/autakh_mining
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("Aut'akh Unathi")
whitelisted = list("Unathi", "Aut'akh Unathi")
sort_category = "Xenowear - Unathi"
cost = 3
allowed_roles = list("Shaft Miner")
flags = GEAR_NO_SELECTION
/datum/gear/autakh_medical
/datum/gear/augment/autakh_medical
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("Aut'akh Unathi")
whitelisted = list("Unathi", "Aut'akh Unathi")
sort_category = "Xenowear - Unathi"
cost = 3
allowed_roles = list("Chief Medical Officer", "Physician", "Surgeon", "Paramedic", "Medical Resident", "Psychiatrist", "Chemist")
flags = GEAR_NO_SELECTION
/datum/gear/autakh_security
/datum/gear/augment/autakh_security
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("Aut'akh Unathi")
whitelisted = list("Unathi", "Aut'akh Unathi")
sort_category = "Xenowear - Unathi"
cost = 3
allowed_roles = list("Security Officer", "Head of Security", "Warden")
@@ -138,4 +138,12 @@
cost = 1
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"
flags = GEAR_HAS_DESC_SELECTION
flags = GEAR_HAS_DESC_SELECTION
/datum/gear/augment/anchor
display_name = "soul anchor"
description = "An implant that connects the Aut'akh to the Mesh."
path = /obj/item/organ/internal/anchor
cost = 1
whitelisted = list("Unathi")
sort_category = "Xenowear - Unathi"