Merge pull request #14310 from Hatterhat/robo-surgery
[READY] robo-limb surgery tiers
This commit is contained in:
@@ -809,22 +809,22 @@
|
||||
research_icon_state = "surgery_chest"
|
||||
|
||||
/datum/design/surgery/healing/brute_upgrade
|
||||
name = "Tend Wounds (Brute) Upgrade"
|
||||
name = "Tend Wounds (Brute) Upgrade I"
|
||||
surgery = /datum/surgery/healing/brute/upgraded
|
||||
id = "surgery_heal_brute_upgrade"
|
||||
|
||||
/datum/design/surgery/healing/brute_upgrade_2
|
||||
name = "Tend Wounds (Brute) Upgrade"
|
||||
name = "Tend Wounds (Brute) Upgrade II"
|
||||
surgery = /datum/surgery/healing/brute/upgraded/femto
|
||||
id = "surgery_heal_brute_upgrade_femto"
|
||||
|
||||
/datum/design/surgery/healing/burn_upgrade
|
||||
name = "Tend Wounds (Burn) Upgrade"
|
||||
name = "Tend Wounds (Burn) Upgrade I"
|
||||
surgery = /datum/surgery/healing/burn/upgraded
|
||||
id = "surgery_heal_burn_upgrade"
|
||||
|
||||
/datum/design/surgery/healing/burn_upgrade_2
|
||||
name = "Tend Wounds (Burn) Upgrade"
|
||||
name = "Tend Wounds (Burn) Upgrade II"
|
||||
surgery = /datum/surgery/healing/brute/upgraded/femto
|
||||
id = "surgery_heal_burn_upgrade_femto"
|
||||
|
||||
@@ -835,16 +835,26 @@
|
||||
id = "surgery_heal_combo"
|
||||
|
||||
/datum/design/surgery/healing/combo_upgrade
|
||||
name = "Tend Wounds (Mixture) Upgrade"
|
||||
name = "Tend Wounds (Mixture) Upgrade I"
|
||||
surgery = /datum/surgery/healing/combo/upgraded
|
||||
id = "surgery_heal_combo_upgrade"
|
||||
|
||||
/datum/design/surgery/healing/combo_upgrade_2
|
||||
name = "Tend Wounds (Mixture) Upgrade"
|
||||
name = "Tend Wounds (Mixture) Upgrade II"
|
||||
desc = "A surgical procedure that repairs both bruises and burns faster than their individual counterparts. It is more effective than both the individual surgeries."
|
||||
surgery = /datum/surgery/healing/combo/upgraded/femto
|
||||
id = "surgery_heal_combo_upgrade_femto"
|
||||
|
||||
/datum/design/surgery/healing/robot_upgrade
|
||||
name = "Repair Robotic Limbs Upgrade"
|
||||
surgery = /datum/surgery/robot_healing/upgraded
|
||||
id = "surgery_heal_robo_upgrade"
|
||||
|
||||
/datum/design/surgery/healing/robot_upgrade_2
|
||||
name = "Repair Robotic Limbs Upgrade II"
|
||||
surgery = /datum/surgery/robot_healing/upgraded/femto
|
||||
id = "surgery_heal_robo_upgrade_femto"
|
||||
|
||||
/datum/design/surgery/surgery_toxinhealing
|
||||
name = "Body Rejuvenation"
|
||||
desc = "A surgical procedure that helps deal with oxygen deprecation, and treat toxic damaged. Works on corpses and alive alike without chemicals."
|
||||
|
||||
@@ -116,6 +116,14 @@
|
||||
design_ids = list("surgery_heal_brute_upgrade","surgery_heal_burn_upgrade")
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1000)
|
||||
|
||||
/datum/techweb_node/adv_surgery
|
||||
id = "adv_surgery"
|
||||
display_name = "Advanced Surgery"
|
||||
description = "When simple medicine doesn't cut it."
|
||||
prereq_ids = list("imp_wt_surgery")
|
||||
design_ids = list("surgery_revival", "surgery_lobotomy", "surgery_heal_brute_upgrade_femto","surgery_heal_burn_upgrade_femto","surgery_heal_robo_upgrade","surgery_heal_combo", "surgery_toxinhealing", "organbox", "surgery_adv_dissection")
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||
|
||||
/datum/techweb_node/advance_surgerytools
|
||||
id = "advance_surgerytools"
|
||||
display_name = "Advanced Surgery Tools"
|
||||
@@ -124,20 +132,12 @@
|
||||
design_ids = list("drapes", "retractor_adv", "surgicaldrill_adv", "scalpel_adv", "bonesetter", "surgical_tape")
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||
|
||||
/datum/techweb_node/adv_surgery
|
||||
id = "adv_surgery"
|
||||
display_name = "Advanced Surgery"
|
||||
description = "When simple medicine doesn't cut it."
|
||||
prereq_ids = list("imp_wt_surgery")
|
||||
design_ids = list("surgery_revival", "surgery_lobotomy", "surgery_heal_brute_upgrade_femto","surgery_heal_burn_upgrade_femto", "surgery_heal_combo", "surgery_toxinhealing", "organbox", "surgery_adv_dissection")
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||
|
||||
/datum/techweb_node/exp_surgery
|
||||
id = "exp_surgery"
|
||||
display_name = "Experimental Surgery"
|
||||
description = "When evolution isn't fast enough."
|
||||
prereq_ids = list("adv_surgery")
|
||||
design_ids = list("surgery_pacify","surgery_vein_thread","surgery_muscled_veins","surgery_nerve_splice","surgery_nerve_ground","surgery_ligament_hook","surgery_ligament_reinforcement","surgery_viral_bond", "surgery_exp_dissection", "surgery_heal_combo_upgrade")
|
||||
design_ids = list("surgery_pacify","surgery_vein_thread","surgery_muscled_veins","surgery_nerve_splice","surgery_nerve_ground","surgery_ligament_hook","surgery_ligament_reinforcement","surgery_viral_bond", "surgery_exp_dissection","surgery_heal_robo_upgrade_femto","surgery_heal_combo_upgrade")
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
||||
|
||||
/datum/techweb_node/alien_surgery
|
||||
|
||||
@@ -394,7 +394,7 @@
|
||||
name = "smithed katana blade"
|
||||
finishingitem = /obj/item/swordhandle
|
||||
finalitem = /obj/item/melee/smith/twohand/katana
|
||||
icon_state = "katana"
|
||||
icon_state = "katana-s"
|
||||
|
||||
|
||||
/obj/item/smithing/katanablade/startfinish()
|
||||
|
||||
@@ -169,7 +169,6 @@
|
||||
/***************************COMBO***************************/
|
||||
/datum/surgery/healing/combo
|
||||
|
||||
|
||||
/datum/surgery/healing/combo
|
||||
name = "Tend Wounds (Mixture, Basic)"
|
||||
replaced_by = /datum/surgery/healing/combo/upgraded
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
//Almost copypaste of tend wounds, with some changes
|
||||
|
||||
/datum/surgery/robot_healing
|
||||
name = "Repair robotic limbs (basic)"
|
||||
name = "Repair Robotic Limbs"
|
||||
desc = "A surgical procedure that provides repairs and maintenance to robotic limbs. Is slightly more efficient when the patient is severely damaged."
|
||||
|
||||
replaced_by = /datum/surgery
|
||||
steps = list(/datum/surgery_step/mechanic_open,
|
||||
/datum/surgery_step/pry_off_plating,
|
||||
/datum/surgery_step/cut_wires,
|
||||
@@ -14,8 +14,28 @@
|
||||
possible_locs = list(BODY_ZONE_CHEST)
|
||||
requires_bodypart_type = 0 //You can do this on anyone, but it won't really be useful on people without augments.
|
||||
ignore_clothes = TRUE
|
||||
var/healing_step_type
|
||||
var/antispam = FALSE
|
||||
var/healing_step_type = /datum/surgery_step/robot_heal/basic
|
||||
|
||||
/datum/surgery/robot_healing/basic
|
||||
name = "Repair Robotic Limbs (Basic)"
|
||||
replaced_by = /datum/surgery/robot_healing/upgraded
|
||||
healing_step_type = /datum/surgery_step/robot_heal/basic
|
||||
desc = "A surgical procedure that provides basic repairs and maintenance to a patient's robotic limbs. Heals slightly more when the patient is severely injured."
|
||||
|
||||
/datum/surgery/robot_healing/upgraded
|
||||
name = "Repair Robotic Limbs (Adv.)"
|
||||
requires_tech = TRUE
|
||||
replaced_by = /datum/surgery/robot_healing/upgraded/femto
|
||||
healing_step_type = /datum/surgery_step/robot_heal/upgraded
|
||||
desc = "A surgical procedure that provides advanced repairs and maintenance to a patient's robotic limbs. Heals more when the patient is severely injured."
|
||||
|
||||
/datum/surgery/robot_healing/upgraded/femto
|
||||
name = "Repair Robotic Limbs (Exp.)"
|
||||
requires_tech = TRUE
|
||||
replaced_by = null // as good as it gets
|
||||
healing_step_type = /datum/surgery_step/robot_heal/upgraded/femto
|
||||
desc = "A surgical procedure that provides experimental repairs and maintenance to a patient's robotic limbs. Heals considerably more when the patient is severely injured."
|
||||
|
||||
/datum/surgery/robot_healing/New(surgery_target, surgery_location, surgery_bodypart)
|
||||
..()
|
||||
@@ -35,26 +55,21 @@
|
||||
var/healsburn = FALSE
|
||||
var/brutehealing = 0
|
||||
var/burnhealing = 0
|
||||
var/missinghpbonus = 0 //heals an extra point of damager per X missing damage of type (burn damage for burn healing, brute for brute). Smaller Number = More Healing!
|
||||
var/missinghpbonus = 0 //heals an extra point of damage per X missing damage of type (burn damage for burn healing, brute for brute). Smaller Number = More Healing!
|
||||
|
||||
/datum/surgery_step/robot_heal/tool_check(mob/user, obj/item/tool)
|
||||
if(implement_type == TOOL_WELDER && !tool.tool_use_check(user, 1))
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
/datum/surgery/robot_healing/can_start(mob/user, mob/living/carbon/target, obj/item/tool)
|
||||
var/possible = FALSE
|
||||
/datum/surgery/robot_healing/can_start(mob/user, mob/living/carbon/target, obj/item/tool) // hey delta? why is the check for this all the way down here
|
||||
for(var/obj/item/bodypart/B in target.bodyparts)
|
||||
if(B.is_robotic_limb())
|
||||
possible = TRUE
|
||||
break
|
||||
if(!possible)
|
||||
return FALSE
|
||||
return TRUE
|
||||
return ..()
|
||||
|
||||
/datum/surgery_step/robot_heal/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
var/woundtype
|
||||
if(implement_type == TOOL_WELDER)
|
||||
if(implement_type == TOOL_WELDER)
|
||||
healsbrute = TRUE
|
||||
healsburn = FALSE
|
||||
woundtype = "dents"
|
||||
@@ -133,3 +148,13 @@
|
||||
brutehealing = 10
|
||||
burnhealing = 10
|
||||
missinghpbonus = 15
|
||||
|
||||
/datum/surgery_step/robot_heal/upgraded
|
||||
brutehealing = 10
|
||||
burnhealing = 10
|
||||
missinghpbonus = 10
|
||||
|
||||
/datum/surgery_step/robot_heal/upgraded/femto
|
||||
brutehealing = 10
|
||||
burnhealing = 10
|
||||
missinghpbonus = 5
|
||||
|
||||
Reference in New Issue
Block a user