diff --git a/code/__DEFINES/skills.dm b/code/__DEFINES/skills.dm index 287d1c29188..c5a82a1a4f7 100644 --- a/code/__DEFINES/skills.dm +++ b/code/__DEFINES/skills.dm @@ -34,9 +34,3 @@ //number defines #define CLEAN_SKILL_BEAUTY_ADJUSTMENT -15//It's a denominator so no 0. Higher number = less cleaning xp per cleanable. Negative value means cleanables with negative beauty give xp. #define CLEAN_SKILL_GENERIC_WASH_XP 1.5//Value. Higher number = more XP when cleaning non-cleanables (walls/floors/lips) - -#define MEDICAL_SKILL_EASY 3 //Cannot be 0 -#define MEDICAL_SKILL_MEDIUM (MEDICAL_SKILL_EASY*5) -#define MEDICAL_SKILL_DISSECT (MEDICAL_SKILL_MEDIUM*1.5) -#define MEDICAL_SKILL_ORGAN_FIX (MEDICAL_SKILL_MEDIUM*1.75) -#define MEDICAL_SKILL_ADVANCED (MEDICAL_SKILL_MEDIUM*2.5) diff --git a/code/datums/skills/medical.dm b/code/datums/skills/medical.dm deleted file mode 100644 index 07bc08d1e17..00000000000 --- a/code/datums/skills/medical.dm +++ /dev/null @@ -1,7 +0,0 @@ -/datum/skill/healing - name = "Healing" - title = "Healer" - desc = "From Bandaids to biopsies, this improves your ability to get people back up both in the field and on the operating table." - modifiers = list(SKILL_SPEED_MODIFIER = list(1, 0.95, 0.9, 0.85, 0.75, 0.6, 0.5), - SKILL_PROBS_MODIFIER = list(0, 2, 4, 6, 8, 10, 12)) - skill_cape_path = /obj/item/clothing/neck/cloak/skill_reward/healing diff --git a/code/datums/wounds/bones.dm b/code/datums/wounds/bones.dm index 6926d321660..93ca9c5b671 100644 --- a/code/datums/wounds/bones.dm +++ b/code/datums/wounds/bones.dm @@ -258,15 +258,11 @@ /// If someone is snapping our dislocated joint back into place by hand with an aggro grab and help intent /datum/wound/brute/bone/moderate/proc/chiropractice(mob/living/carbon/human/user) var/time = base_treat_time - var/time_mod = user.mind?.get_skill_modifier(/datum/skill/healing, SKILL_SPEED_MODIFIER) - var/prob_mod = user.mind?.get_skill_modifier(/datum/skill/healing, SKILL_PROBS_MODIFIER) - if(time_mod) - time *= time_mod if(!do_after(user, time, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) return - if(prob(65 + prob_mod)) + if(prob(65)) user.visible_message("[user] snaps [victim]'s dislocated [limb.name] back into place!", "You snap [victim]'s dislocated [limb.name] back into place!", ignored_mobs=victim) to_chat(victim, "[user] snaps your dislocated [limb.name] back into place!") victim.emote("scream") @@ -281,19 +277,15 @@ /// If someone is snapping our dislocated joint into a fracture by hand with an aggro grab and harm or disarm intent /datum/wound/brute/bone/moderate/proc/malpractice(mob/living/carbon/human/user) var/time = base_treat_time - var/time_mod = user.mind?.get_skill_modifier(/datum/skill/healing, SKILL_SPEED_MODIFIER) - var/prob_mod = user.mind?.get_skill_modifier(/datum/skill/healing, SKILL_PROBS_MODIFIER) - if(time_mod) - time *= time_mod if(!do_after(user, time, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) return - if(prob(65 + prob_mod)) + if(prob(65)) user.visible_message("[user] snaps [victim]'s dislocated [limb.name] with a sickening crack!", "You snap [victim]'s dislocated [limb.name] with a sickening crack!", ignored_mobs=victim) to_chat(victim, "[user] snaps your dislocated [limb.name] with a sickening crack!") victim.emote("scream") - limb.receive_damage(brute=25, wound_bonus=30 + prob_mod * 3) + limb.receive_damage(brute=25, wound_bonus=30) else user.visible_message("[user] wrenches [victim]'s dislocated [limb.name] around painfully!", "You wrench [victim]'s dislocated [limb.name] around painfully!", ignored_mobs=victim) to_chat(victim, "[user] wrenches your dislocated [limb.name] around painfully!") diff --git a/code/datums/wounds/cuts.dm b/code/datums/wounds/cuts.dm index 61a4b8a1ea0..5f9d7542386 100644 --- a/code/datums/wounds/cuts.dm +++ b/code/datums/wounds/cuts.dm @@ -179,8 +179,7 @@ /datum/wound/brute/cut/proc/tool_cauterize(obj/item/I, mob/user) var/self_penalty_mult = (user == victim ? 1.5 : 1) user.visible_message("[user] begins cauterizing [victim]'s [limb.name] with [I]...", "You begin cauterizing [user == victim ? "your" : "[victim]'s"] [limb.name] with [I]...") - var/time_mod = user.mind?.get_skill_modifier(/datum/skill/healing, SKILL_SPEED_MODIFIER) || 1 - if(!do_after(user, base_treat_time * time_mod * self_penalty_mult, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) + if(!do_after(user, base_treat_time * self_penalty_mult, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) return user.visible_message("[user] cauterizes some of the bleeding on [victim].", "You cauterize some of the bleeding on [victim].") @@ -200,8 +199,7 @@ /datum/wound/brute/cut/proc/suture(obj/item/stack/medical/suture/I, mob/user) var/self_penalty_mult = (user == victim ? 1.4 : 1) user.visible_message("[user] begins stitching [victim]'s [limb.name] with [I]...", "You begin stitching [user == victim ? "your" : "[victim]'s"] [limb.name] with [I]...") - var/time_mod = user.mind?.get_skill_modifier(/datum/skill/healing, SKILL_SPEED_MODIFIER) || 1 - if(!do_after(user, base_treat_time * time_mod * self_penalty_mult, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) + if(!do_after(user, base_treat_time * self_penalty_mult, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) return user.visible_message("[user] stitches up some of the bleeding on [victim].", "You stitch up some of the bleeding on [user == victim ? "yourself" : "[victim]"].") var/blood_sutured = I.stop_bleeding / self_penalty_mult @@ -224,8 +222,7 @@ user.visible_message("[user] begins rewrapping the cuts on [victim]'s [limb.name] with [I]...", "You begin rewrapping the cuts on [user == victim ? "your" : "[victim]'s"] [limb.name] with [I]...") else user.visible_message("[user] begins wrapping the cuts on [victim]'s [limb.name] with [I]...", "You begin wrapping the cuts on [user == victim ? "your" : "[victim]'s"] [limb.name] with [I]...") - var/time_mod = user.mind?.get_skill_modifier(/datum/skill/healing, SKILL_SPEED_MODIFIER) || 1 - if(!do_after(user, base_treat_time * time_mod, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) + if(!do_after(user, base_treat_time, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) return user.visible_message("[user] applies [I] to [victim]'s [limb.name].", "You bandage some of the bleeding on [user == victim ? "yourself" : "[victim]"].") diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index b7bb26a52fc..345ffdb7abf 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -15,7 +15,6 @@ var/self_delay = 50 var/other_delay = 0 var/repeating = FALSE - var/experience_given = 1 /// How much brute we heal per application var/heal_brute /// How much burn we heal per application @@ -47,7 +46,6 @@ return if(heal(M, user)) - user?.mind.adjust_experience(/datum/skill/healing, experience_given) log_combat(user, M, "healed", src.name) use(1) if(repeating && amount > 0) @@ -66,13 +64,7 @@ return if(affecting.brute_dam && brute || affecting.burn_dam && burn) user.visible_message("[user] applies \the [src] on [C]'s [affecting.name].", "You apply \the [src] on [C]'s [affecting.name].") - var/brute2heal = brute - var/burn2heal = burn - var/skill_mod = user?.mind?.get_skill_modifier(/datum/skill/healing, SKILL_SPEED_MODIFIER) - if(skill_mod) - brute2heal *= (2-skill_mod) - burn2heal *= (2-skill_mod) - if(affecting.heal_damage(brute2heal, burn2heal)) + if(affecting.heal_damage(brute, burn)) C.update_damage_overlays() return TRUE to_chat(user, "[C]'s [affecting.name] can not be healed with \the [src]!") diff --git a/code/modules/clothing/suits/cloaks.dm b/code/modules/clothing/suits/cloaks.dm index c55a7206013..ff69afb9721 100644 --- a/code/modules/clothing/suits/cloaks.dm +++ b/code/modules/clothing/suits/cloaks.dm @@ -130,20 +130,14 @@ icon_state = "cleanercloak" associated_skill_path = /datum/skill/cleaning -/obj/item/clothing/neck/cloak/skill_reward/healing - name = "legendary healer's cloak" - desc = "Worn by the most skilled healers, this legendary cloak is only attainable by achieving true medical enlightenment. This status symbol represents a being who has saved enough lives to repopulate a small country, a being who could transplant a monkey's brain into your skull faster than you could yell ;HELP SEC." - icon_state = "healercloak" - associated_skill_path = /datum/skill/healing - /obj/item/clothing/neck/cloak/skill_reward/mining - name = "legendary miner's cloak" + name = "legendary miner's cloak" desc = "Worn by the most skilled miners, this legendary cloak is only attainable by achieving true mineral enlightenment. This status symbol represents a being who has forgotten more about rocks than most miners will ever know, a being who has moved mountains and filled valleys." icon_state = "minercloak" associated_skill_path = /datum/skill/mining /obj/item/clothing/neck/cloak/skill_reward/playing - name = "legendary veteran's cloak" + name = "legendary veteran's cloak" desc = "Worn by the wisest of veteran employees, this legendary cloak is only attainable by maintaining a living employment agreement with Nanotrasen for over five thousand hours. This status symbol represents a being is better than you in nearly every quantifiable way, simple as that." icon_state = "playercloak" diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index 59c277e74c3..1d231ab532c 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -639,23 +639,6 @@ research_icon_state = "surgery_any" var/surgery -/datum/design/surgery/experimental_dissection - name = "Advanced Dissection" - desc = "A surgical procedure which analyzes the biology of a corpse, and automatically adds new findings to the research database." - id = "surgery_adv_dissection" - surgery = /datum/surgery/advanced/experimental_dissection/adv - research_icon_state = "surgery_chest" - -/datum/design/surgery/experimental_dissection/exp - name = "Experimental Dissection" - id = "surgery_exp_dissection" - surgery = /datum/surgery/advanced/experimental_dissection/exp - -/datum/design/surgery/experimental_dissection/ext - name = "Extraterrestrial Dissection" - id = "surgery_ext_dissection" - surgery = /datum/surgery/advanced/experimental_dissection/alien - /datum/design/surgery/lobotomy name = "Lobotomy" desc = "An invasive surgical procedure which guarantees removal of almost all brain traumas, but might cause another permanent trauma in return." diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index 7e088463ab8..39727e86de0 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -103,7 +103,7 @@ display_name = "Advanced Surgery" description = "When simple medicine doesn't cut it." prereq_ids = list("imp_wt_surgery") - design_ids = list("surgery_lobotomy", "surgery_heal_brute_upgrade_femto", "surgery_heal_burn_upgrade_femto","surgery_heal_combo","surgery_adv_dissection") + design_ids = list("surgery_lobotomy", "surgery_heal_brute_upgrade_femto", "surgery_heal_burn_upgrade_femto","surgery_heal_combo") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1500) export_price = 4000 @@ -112,7 +112,7 @@ 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_cortex_imprint","surgery_cortex_folding","surgery_viral_bond", "surgery_heal_combo_upgrade", "surgery_exp_dissection") + design_ids = list("surgery_pacify","surgery_vein_thread","surgery_muscled_veins","surgery_nerve_splice","surgery_nerve_ground","surgery_ligament_hook","surgery_ligament_reinforcement","surgery_cortex_imprint","surgery_cortex_folding","surgery_viral_bond", "surgery_heal_combo_upgrade") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000) export_price = 5000 @@ -121,7 +121,7 @@ display_name = "Alien Surgery" description = "Abductors did nothing wrong." prereq_ids = list("exp_surgery", "alientech") - design_ids = list("surgery_brainwashing","surgery_zombie","surgery_heal_combo_upgrade_femto", "surgery_ext_dissection") + design_ids = list("surgery_brainwashing","surgery_zombie","surgery_heal_combo_upgrade_femto") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000) export_price = 5000 diff --git a/code/modules/surgery/advanced/bioware/cortex_folding.dm b/code/modules/surgery/advanced/bioware/cortex_folding.dm index ba12c606a76..0ec190202be 100644 --- a/code/modules/surgery/advanced/bioware/cortex_folding.dm +++ b/code/modules/surgery/advanced/bioware/cortex_folding.dm @@ -22,7 +22,6 @@ name = "fold cortex" accept_hand = TRUE time = 125 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/fold_cortex/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You start folding [target]'s outer cerebral cortex into a fractal pattern.", diff --git a/code/modules/surgery/advanced/bioware/cortex_imprint.dm b/code/modules/surgery/advanced/bioware/cortex_imprint.dm index f61cbd423fd..879842bd6c8 100644 --- a/code/modules/surgery/advanced/bioware/cortex_imprint.dm +++ b/code/modules/surgery/advanced/bioware/cortex_imprint.dm @@ -22,7 +22,6 @@ name = "imprint cortex" accept_hand = TRUE time = 125 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/imprint_cortex/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You start carving [target]'s outer cerebral cortex into a self-imprinting pattern.", diff --git a/code/modules/surgery/advanced/bioware/ligament_hook.dm b/code/modules/surgery/advanced/bioware/ligament_hook.dm index 244ec6ef630..0549736243a 100644 --- a/code/modules/surgery/advanced/bioware/ligament_hook.dm +++ b/code/modules/surgery/advanced/bioware/ligament_hook.dm @@ -16,7 +16,6 @@ name = "reshape ligaments" accept_hand = TRUE time = 125 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/reshape_ligaments/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You start reshaping [target]'s ligaments into a hook-like shape.", diff --git a/code/modules/surgery/advanced/bioware/ligament_reinforcement.dm b/code/modules/surgery/advanced/bioware/ligament_reinforcement.dm index 624306009b9..8232f8b39c1 100644 --- a/code/modules/surgery/advanced/bioware/ligament_reinforcement.dm +++ b/code/modules/surgery/advanced/bioware/ligament_reinforcement.dm @@ -16,7 +16,6 @@ name = "reinforce ligaments" accept_hand = TRUE time = 125 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/reinforce_ligaments/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You start reinforcing [target]'s ligaments.", diff --git a/code/modules/surgery/advanced/bioware/muscled_veins.dm b/code/modules/surgery/advanced/bioware/muscled_veins.dm index 63f624d81f5..adfa949dc55 100644 --- a/code/modules/surgery/advanced/bioware/muscled_veins.dm +++ b/code/modules/surgery/advanced/bioware/muscled_veins.dm @@ -15,7 +15,6 @@ name = "shape vein muscles" accept_hand = TRUE time = 125 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/muscled_veins/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You start wrapping muscles around [target]'s circulatory system.", diff --git a/code/modules/surgery/advanced/bioware/nerve_grounding.dm b/code/modules/surgery/advanced/bioware/nerve_grounding.dm index a624422af0c..793b9feb7b3 100644 --- a/code/modules/surgery/advanced/bioware/nerve_grounding.dm +++ b/code/modules/surgery/advanced/bioware/nerve_grounding.dm @@ -15,7 +15,6 @@ name = "ground nerves" accept_hand = TRUE time = 155 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/ground_nerves/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You start rerouting [target]'s nerves.", diff --git a/code/modules/surgery/advanced/bioware/nerve_splicing.dm b/code/modules/surgery/advanced/bioware/nerve_splicing.dm index f50d45dab67..e1999075717 100644 --- a/code/modules/surgery/advanced/bioware/nerve_splicing.dm +++ b/code/modules/surgery/advanced/bioware/nerve_splicing.dm @@ -15,7 +15,6 @@ name = "splice nerves" accept_hand = TRUE time = 155 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/splice_nerves/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You start splicing together [target]'s nerves.", diff --git a/code/modules/surgery/advanced/bioware/vein_threading.dm b/code/modules/surgery/advanced/bioware/vein_threading.dm index cf3fe0633a8..3e671f79ccd 100644 --- a/code/modules/surgery/advanced/bioware/vein_threading.dm +++ b/code/modules/surgery/advanced/bioware/vein_threading.dm @@ -15,7 +15,6 @@ name = "thread veins" accept_hand = TRUE time = 125 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/thread_veins/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You start weaving [target]'s circulatory system.", diff --git a/code/modules/surgery/advanced/brainwashing.dm b/code/modules/surgery/advanced/brainwashing.dm index 4781247f713..befcd3ec707 100644 --- a/code/modules/surgery/advanced/brainwashing.dm +++ b/code/modules/surgery/advanced/brainwashing.dm @@ -29,7 +29,6 @@ name = "brainwash" implements = list(TOOL_HEMOSTAT = 85, TOOL_WIRECUTTER = 50, /obj/item/stack/package_wrap = 35, /obj/item/stack/cable_coil = 15) time = 200 - experience_given = MEDICAL_SKILL_ADVANCED var/objective /datum/surgery_step/brainwash/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) diff --git a/code/modules/surgery/advanced/lobotomy.dm b/code/modules/surgery/advanced/lobotomy.dm index cc17a713537..86765a83462 100644 --- a/code/modules/surgery/advanced/lobotomy.dm +++ b/code/modules/surgery/advanced/lobotomy.dm @@ -26,7 +26,6 @@ implements = list(TOOL_SCALPEL = 85, /obj/item/melee/transforming/energy/sword = 55, /obj/item/kitchen/knife = 35, /obj/item/shard = 25, /obj/item = 20) time = 100 - experience_given = MEDICAL_SKILL_ADVANCED //lose XP if you end up giving them bad traumas /datum/surgery_step/lobotomize/tool_check(mob/user, obj/item/tool) if(implement_type == /obj/item && !tool.get_sharpness()) @@ -48,16 +47,13 @@ switch(rand(1,4))//Now let's see what hopefully-not-important part of the brain we cut off if(1) target.gain_trauma_type(BRAIN_TRAUMA_MILD, TRAUMA_RESILIENCE_MAGIC) - experience_given = MEDICAL_SKILL_ADVANCED*0.9 if(2) if(HAS_TRAIT(target, TRAIT_SPECIAL_TRAUMA_BOOST) && prob(50)) target.gain_trauma_type(BRAIN_TRAUMA_SPECIAL, TRAUMA_RESILIENCE_MAGIC) else target.gain_trauma_type(BRAIN_TRAUMA_SEVERE, TRAUMA_RESILIENCE_MAGIC) - experience_given = MEDICAL_SKILL_ADVANCED*0.8 if(3) target.gain_trauma_type(BRAIN_TRAUMA_SPECIAL, TRAUMA_RESILIENCE_MAGIC) - experience_given = MEDICAL_SKILL_ADVANCED*0.5 return ..() /datum/surgery_step/lobotomize/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) diff --git a/code/modules/surgery/advanced/necrotic_revival.dm b/code/modules/surgery/advanced/necrotic_revival.dm index 41f63b1a5f3..d969d58731a 100644 --- a/code/modules/surgery/advanced/necrotic_revival.dm +++ b/code/modules/surgery/advanced/necrotic_revival.dm @@ -22,7 +22,6 @@ time = 50 chems_needed = list(/datum/reagent/toxin/zombiepowder, /datum/reagent/medicine/rezadone) require_all_chems = FALSE - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/bionecrosis/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to grow a romerol tumor on [target]'s brain...", diff --git a/code/modules/surgery/advanced/pacification.dm b/code/modules/surgery/advanced/pacification.dm index ccbb6325183..78ac422e62e 100644 --- a/code/modules/surgery/advanced/pacification.dm +++ b/code/modules/surgery/advanced/pacification.dm @@ -22,7 +22,6 @@ name = "rewire brain" implements = list(TOOL_HEMOSTAT = 100, TOOL_SCREWDRIVER = 35, /obj/item/pen = 15) time = 40 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/pacify/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to pacify [target]...", diff --git a/code/modules/surgery/advanced/viral_bonding.dm b/code/modules/surgery/advanced/viral_bonding.dm index 006ebc947ce..cf0b1cc3d7e 100644 --- a/code/modules/surgery/advanced/viral_bonding.dm +++ b/code/modules/surgery/advanced/viral_bonding.dm @@ -23,7 +23,6 @@ implements = list(TOOL_CAUTERY = 100, TOOL_WELDER = 50, /obj/item = 30) // 30% success with any hot item. time = 100 chems_needed = list(/datum/reagent/medicine/spaceacillin,/datum/reagent/consumable/virus_food,/datum/reagent/toxin/formaldehyde) - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/viral_bond/tool_check(mob/user, obj/item/tool) if(implement_type == TOOL_WELDER || implement_type == /obj/item) diff --git a/code/modules/surgery/amputation.dm b/code/modules/surgery/amputation.dm index 121b0bde09c..412386f7d0a 100644 --- a/code/modules/surgery/amputation.dm +++ b/code/modules/surgery/amputation.dm @@ -11,7 +11,6 @@ name = "sever limb" implements = list(/obj/item/shears = 300, TOOL_SCALPEL = 100, TOOL_SAW = 100, /obj/item/melee/arm_blade = 80, /obj/item/fireaxe = 50, /obj/item/hatchet = 40, /obj/item/kitchen/knife/butcher = 25) time = 64 - experience_given = MEDICAL_SKILL_ORGAN_FIX /datum/surgery_step/sever_limb/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to sever [target]'s [parse_zone(target_zone)]...", @@ -26,6 +25,4 @@ if(surgery.operated_bodypart) var/obj/item/bodypart/target_limb = surgery.operated_bodypart target_limb.drop_limb() - if(user.mind) - user.mind.adjust_experience(/datum/skill/healing, experience_given) return ..() diff --git a/code/modules/surgery/bone_mending.dm b/code/modules/surgery/bone_mending.dm index 6afe4941058..81d9fa8d97d 100644 --- a/code/modules/surgery/bone_mending.dm +++ b/code/modules/surgery/bone_mending.dm @@ -39,7 +39,6 @@ name = "repair hairline fracture (bonesetter/bone gel/tape)" implements = list(/obj/item/bonesetter = 100, /obj/item/stack/medical/bone_gel = 100, /obj/item/stack/sticky_tape/surgical = 100, /obj/item/stack/sticky_tape/super = 50, /obj/item/stack/sticky_tape = 30) time = 40 - experience_given = MEDICAL_SKILL_MEDIUM /datum/surgery_step/repair_bone_hairline/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) if(surgery.operated_wound) @@ -76,7 +75,6 @@ name = "reset bone" implements = list(/obj/item/bonesetter = 100, /obj/item/stack/sticky_tape/surgical = 60, /obj/item/stack/sticky_tape/super = 40, /obj/item/stack/sticky_tape = 20) time = 40 - experience_given = MEDICAL_SKILL_MEDIUM /datum/surgery_step/reset_compound_fracture/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) if(surgery.operated_wound) @@ -111,7 +109,6 @@ name = "repair compound fracture (bone gel/tape)" implements = list(/obj/item/stack/medical/bone_gel = 100, /obj/item/stack/sticky_tape/surgical = 100, /obj/item/stack/sticky_tape/super = 50, /obj/item/stack/sticky_tape = 30) time = 40 - experience_given = MEDICAL_SKILL_MEDIUM /datum/surgery_step/repair_bone_compound/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) if(surgery.operated_wound) diff --git a/code/modules/surgery/brain_surgery.dm b/code/modules/surgery/brain_surgery.dm index be09daf8ed0..03e744eb1f5 100644 --- a/code/modules/surgery/brain_surgery.dm +++ b/code/modules/surgery/brain_surgery.dm @@ -17,7 +17,6 @@ implements = list(TOOL_HEMOSTAT = 85, TOOL_SCREWDRIVER = 35, /obj/item/pen = 15) //don't worry, pouring some alcohol on their open brain will get that chance to 100 repeatable = TRUE time = 100 //long and complicated - experience_given = 0 // per_trauma /datum/surgery/brain_surgery/can_start(mob/user, mob/living/carbon/target) var/obj/item/organ/brain/B = target.getorganslot(ORGAN_SLOT_BRAIN) @@ -37,8 +36,6 @@ if(target.mind?.has_antag_datum(/datum/antagonist/brainwashed)) target.mind.remove_antag_datum(/datum/antagonist/brainwashed) target.setOrganLoss(ORGAN_SLOT_BRAIN, target.getOrganLoss(ORGAN_SLOT_BRAIN) - 50) //we set damage in this case in order to clear the "failing" flag - var/cured_num = target.cure_all_traumas(TRAUMA_RESILIENCE_SURGERY) - experience_given = (MEDICAL_SKILL_EASY*2*cured_num) if(target.getOrganLoss(ORGAN_SLOT_BRAIN) > 0) to_chat(user, "[target]'s brain looks like it could be fixed further.") return ..() diff --git a/code/modules/surgery/burn_dressing.dm b/code/modules/surgery/burn_dressing.dm index 1d64d29ff63..1688f7b5d17 100644 --- a/code/modules/surgery/burn_dressing.dm +++ b/code/modules/surgery/burn_dressing.dm @@ -24,7 +24,6 @@ implements = list(TOOL_HEMOSTAT = 100, TOOL_SCALPEL = 85, TOOL_SAW = 60, TOOL_WIRECUTTER = 40) time = 30 repeatable = TRUE - experience_given = MEDICAL_SKILL_MEDIUM /datum/surgery_step/debride/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) if(surgery.operated_wound) @@ -76,7 +75,6 @@ name = "bandage burns" implements = list(/obj/item/stack/medical/gauze = 100, /obj/item/stack/sticky_tape/surgical = 100) time = 40 - experience_given = MEDICAL_SKILL_MEDIUM /datum/surgery_step/dress/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) var/datum/wound/burn/burn_wound = surgery.operated_wound diff --git a/code/modules/surgery/coronary_bypass.dm b/code/modules/surgery/coronary_bypass.dm index 66843c2a3c0..0502ff4cca2 100644 --- a/code/modules/surgery/coronary_bypass.dm +++ b/code/modules/surgery/coronary_bypass.dm @@ -52,7 +52,6 @@ name = "graft coronary bypass" implements = list(TOOL_HEMOSTAT = 90, TOOL_WIRECUTTER = 35, /obj/item/stack/package_wrap = 15, /obj/item/stack/cable_coil = 5) time = 90 - experience_given = MEDICAL_SKILL_ORGAN_FIX /datum/surgery_step/coronary_bypass/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to graft a bypass onto [target]'s heart...", diff --git a/code/modules/surgery/dental_implant.dm b/code/modules/surgery/dental_implant.dm index 64e6d9bb935..7986f03b489 100644 --- a/code/modules/surgery/dental_implant.dm +++ b/code/modules/surgery/dental_implant.dm @@ -7,7 +7,6 @@ name = "insert pill" implements = list(/obj/item/reagent_containers/pill = 100) time = 16 - experience_given = (MEDICAL_SKILL_MEDIUM*0.4) //quick to do /datum/surgery_step/insert_pill/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to wedge [tool] in [target]'s [parse_zone(target_zone)]...", diff --git a/code/modules/surgery/experimental_dissection.dm b/code/modules/surgery/experimental_dissection.dm deleted file mode 100644 index 420b0303531..00000000000 --- a/code/modules/surgery/experimental_dissection.dm +++ /dev/null @@ -1,103 +0,0 @@ - -/datum/surgery/advanced/experimental_dissection - name = "Dissection" - desc = "A surgical procedure which analyzes the biology of a corpse, and greatly increases one's medical knowledge." - steps = list(/datum/surgery_step/incise, - /datum/surgery_step/retract_skin, - /datum/surgery_step/clamp_bleeders, - /datum/surgery_step/dissection, - /datum/surgery_step/clamp_bleeders, - /datum/surgery_step/close) - possible_locs = list(BODY_ZONE_CHEST) - target_mobtypes = list(/mob/living) //Feel free to dissect devils but they're magic. - replaced_by = /datum/surgery/advanced/experimental_dissection/adv - requires_tech = FALSE - var/value_multiplier = 1 - -/datum/surgery/advanced/experimental_dissection/can_start(mob/user, mob/living/target) - . = ..() - if(HAS_TRAIT_FROM(target, TRAIT_DISSECTED,"[name]")) - return FALSE - if(target.stat != DEAD) - return FALSE - -/datum/surgery_step/dissection - name = "dissection" - implements = list(/obj/item/scalpel/augment = 75, /obj/item/scalpel/advanced = 60, TOOL_SCALPEL = 45, /obj/item/kitchen/knife = 20, /obj/item/shard = 10)// special tools not only cut down time but also improve probability - time = 125 - silicons_obey_prob = TRUE - repeatable = TRUE - experience_given = 0 //experience received scales with what's being dissected + which step you're doing. - -/datum/surgery_step/dissection/preop(mob/user, mob/living/target, target_zone, obj/item/tool, datum/surgery/surgery) - user.visible_message("[user] starts dissecting [target].", "You start dissecting [target].") - -/datum/surgery_step/dissection/proc/check_value(mob/living/target, datum/surgery/advanced/experimental_dissection/ED) - var/cost = MEDICAL_SKILL_DISSECT - var/multi_surgery_adjust = 0 - - //determine bonus applied - if(isalienroyal(target)) - cost = (MEDICAL_SKILL_DISSECT*5) - else if(isalienadult(target)) - cost = (MEDICAL_SKILL_DISSECT*3) - else if(ismonkey(target)) - cost = (MEDICAL_SKILL_DISSECT*0.5) - else if(ishuman(target)) - var/mob/living/carbon/human/H = target - if(H?.dna?.species) - if(isabductor(H)) - cost = (MEDICAL_SKILL_DISSECT*3) - else if(isgolem(H) || iszombie(H)) - cost = (MEDICAL_SKILL_DISSECT*2.5) - else if(isjellyperson(H) || ispodperson(H)) - cost = (MEDICAL_SKILL_DISSECT*1.5) - else - cost = (MEDICAL_SKILL_DISSECT * 0.6) - - - - //now we do math for surgeries already done (no double dipping!). - for(var/i in typesof(/datum/surgery/advanced/experimental_dissection)) - var/datum/surgery/advanced/experimental_dissection/cringe = i - if(HAS_TRAIT_FROM(target,TRAIT_DISSECTED,"[initial(cringe.name)]")) - multi_surgery_adjust = max(multi_surgery_adjust,initial(cringe.value_multiplier)) - 1 - - multi_surgery_adjust *= cost - - //multiply by multiplier in surgery - cost *= ED.value_multiplier - return (cost-multi_surgery_adjust) - -/datum/surgery_step/dissection/success(mob/user, mob/living/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results = FALSE) - user.visible_message("[user] dissects [target], enhancing their medical knowledge!", "You dissect [target] and receive some healing experience!") - var/obj/item/bodypart/L = target.get_bodypart(BODY_ZONE_CHEST) - target.apply_damage(80, BRUTE, L, wound_bonus=CANT_WOUND) - ADD_TRAIT(target, TRAIT_DISSECTED, "[surgery.name]") - repeatable = FALSE - experience_given = check_value(target, surgery) - return ..() - -/datum/surgery_step/dissection/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - user.visible_message("[user] dissects [target]!", "You attempt to dissect [target], but do not find anything particularly interesting.") - var/obj/item/bodypart/L = target.get_bodypart(BODY_ZONE_CHEST) - target.apply_damage(80, BRUTE, L, wound_bonus=CANT_WOUND) - return TRUE - -/datum/surgery/advanced/experimental_dissection/adv - name = "Thorough Dissection" - value_multiplier = 1.5 - replaced_by = /datum/surgery/advanced/experimental_dissection/exp - requires_tech = TRUE - -/datum/surgery/advanced/experimental_dissection/exp - name = "Experimental Dissection" - value_multiplier = 2 - replaced_by = /datum/surgery/advanced/experimental_dissection/alien - requires_tech = TRUE - -/datum/surgery/advanced/experimental_dissection/alien - name = "Extraterrestrial Dissection" - value_multiplier = 5 - requires_tech = TRUE - replaced_by = null diff --git a/code/modules/surgery/eye_surgery.dm b/code/modules/surgery/eye_surgery.dm index 40e9ceee34e..c219b4ac838 100644 --- a/code/modules/surgery/eye_surgery.dm +++ b/code/modules/surgery/eye_surgery.dm @@ -10,7 +10,6 @@ name = "fix eyes" implements = list(TOOL_HEMOSTAT = 100, TOOL_SCREWDRIVER = 45, /obj/item/pen = 25) time = 64 - experience_given = (MEDICAL_SKILL_ORGAN_FIX*0.6) //repeatable and can be done at any damage /datum/surgery/eye_surgery/can_start(mob/user, mob/living/carbon/target) var/obj/item/organ/eyes/E = target.getorganslot(ORGAN_SLOT_EYES) diff --git a/code/modules/surgery/gastrectomy.dm b/code/modules/surgery/gastrectomy.dm index eb085c26f4b..441b0cd61a2 100644 --- a/code/modules/surgery/gastrectomy.dm +++ b/code/modules/surgery/gastrectomy.dm @@ -25,7 +25,6 @@ implements = list(TOOL_SCALPEL = 95, /obj/item/melee/transforming/energy/sword = 65, /obj/item/kitchen/knife = 45, /obj/item/shard = 35) time = 52 - experience_given = (MEDICAL_SKILL_ORGAN_FIX*0.8) //for consistency across organ surgeries /datum/surgery_step/gastrectomy/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to cut out a damaged piece of [target]'s stomach...", diff --git a/code/modules/surgery/healing.dm b/code/modules/surgery/healing.dm index edf4327a951..0bbd004b9d1 100644 --- a/code/modules/surgery/healing.dm +++ b/code/modules/surgery/healing.dm @@ -1,5 +1,3 @@ -#define PER_ITERATION_XP_CAP MEDICAL_SKILL_MEDIUM //TW XP gain scales with repeated iterations so we cap it. - /datum/surgery/healing steps = list(/datum/surgery_step/incise, /datum/surgery_step/retract_skin, @@ -71,7 +69,6 @@ urhealedamt_burn *= 0.55 umsg += " as best as you can while they have clothing on" tmsg += " as best as they can while [target] has clothing on" - experience_given = CEILING((target.heal_bodypart_damage(urhealedamt_brute,urhealedamt_burn)/5),1) display_results(user, target, "[umsg].", "[tmsg].", "[tmsg].") @@ -216,5 +213,3 @@ "[user] screws up!", "[user] fixes some of [target]'s wounds.", TRUE) target.take_bodypart_damage(5,5) - -#undef PER_ITERATION_XP_CAP diff --git a/code/modules/surgery/hepatectomy.dm b/code/modules/surgery/hepatectomy.dm index c55db698c67..812903fe902 100644 --- a/code/modules/surgery/hepatectomy.dm +++ b/code/modules/surgery/hepatectomy.dm @@ -24,7 +24,6 @@ implements = list(TOOL_SCALPEL = 95, /obj/item/melee/transforming/energy/sword = 65, /obj/item/kitchen/knife = 45, /obj/item/shard = 35) time = 52 - experience_given = (MEDICAL_SKILL_ORGAN_FIX*0.8) //repeatable so not as much xp /datum/surgery_step/hepatectomy/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to cut out a damaged peice of [target]'s liver...", diff --git a/code/modules/surgery/implant_removal.dm b/code/modules/surgery/implant_removal.dm index df389bc6ac4..183ee5d12fa 100644 --- a/code/modules/surgery/implant_removal.dm +++ b/code/modules/surgery/implant_removal.dm @@ -10,7 +10,6 @@ name = "extract implant" implements = list(TOOL_HEMOSTAT = 100, TOOL_CROWBAR = 65, /obj/item/kitchen/fork = 35) time = 64 - experience_given = MEDICAL_SKILL_MEDIUM var/obj/item/implant/I = null /datum/surgery_step/extract_implant/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) diff --git a/code/modules/surgery/limb_augmentation.dm b/code/modules/surgery/limb_augmentation.dm index db53ad47aea..3c4af7e250b 100644 --- a/code/modules/surgery/limb_augmentation.dm +++ b/code/modules/surgery/limb_augmentation.dm @@ -8,7 +8,6 @@ name = "replace limb" implements = list(/obj/item/bodypart = 100, /obj/item/organ_storage = 100) time = 32 - experience_given = MEDICAL_SKILL_MEDIUM var/obj/item/bodypart/L = null // L because "limb" diff --git a/code/modules/surgery/lipoplasty.dm b/code/modules/surgery/lipoplasty.dm index 2c3ea560cd2..236777cff12 100644 --- a/code/modules/surgery/lipoplasty.dm +++ b/code/modules/surgery/lipoplasty.dm @@ -32,7 +32,6 @@ name = "remove loose fat" implements = list(TOOL_RETRACTOR = 100, TOOL_SCREWDRIVER = 45, TOOL_WIRECUTTER = 35) time = 32 - experience_given = 0 //scales with fat removed /datum/surgery_step/remove_fat/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to extract [target]'s loose fat...", @@ -47,7 +46,6 @@ var/removednutriment = target.nutrition target.set_nutrition(NUTRITION_LEVEL_WELL_FED) removednutriment -= NUTRITION_LEVEL_WELL_FED //whatever was removed goes into the meat - experience_given = (round(removednutriment/(MEDICAL_SKILL_EASY*5))) var/mob/living/carbon/human/H = target var/typeofmeat = /obj/item/reagent_containers/food/snacks/meat/slab/human diff --git a/code/modules/surgery/lobectomy.dm b/code/modules/surgery/lobectomy.dm index 6ca80fe13c7..a3a97126601 100644 --- a/code/modules/surgery/lobectomy.dm +++ b/code/modules/surgery/lobectomy.dm @@ -18,7 +18,6 @@ implements = list(TOOL_SCALPEL = 95, /obj/item/melee/transforming/energy/sword = 65, /obj/item/kitchen/knife = 45, /obj/item/shard = 35) time = 42 - experience_given = MEDICAL_SKILL_ORGAN_FIX /datum/surgery_step/lobectomy/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to make an incision in [target]'s lungs...", diff --git a/code/modules/surgery/organic_steps.dm b/code/modules/surgery/organic_steps.dm index 783a62ca46d..dbcc975fefd 100644 --- a/code/modules/surgery/organic_steps.dm +++ b/code/modules/surgery/organic_steps.dm @@ -29,18 +29,11 @@ BP.generic_bleedstacks += 10 return ..() -/datum/surgery_step/incise/nobleed //silly friendly! - experience_given = 1 //safer so not as much XP - /datum/surgery_step/incise/nobleed/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin to carefully make an incision in [target]'s [parse_zone(target_zone)]...", "[user] begins to carefully make an incision in [target]'s [parse_zone(target_zone)].", "[user] begins to carefully make an incision in [target]'s [parse_zone(target_zone)].") -/datum/surgery_step/incise/nobleed/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results) - user?.mind.adjust_experience(/datum/skill/healing, experience_given) - return TRUE - //clamp bleeders /datum/surgery_step/clamp_bleeders name = "clamp bleeders" diff --git a/code/modules/surgery/plastic_surgery.dm b/code/modules/surgery/plastic_surgery.dm index 0e64a08b349..89ea8349027 100644 --- a/code/modules/surgery/plastic_surgery.dm +++ b/code/modules/surgery/plastic_surgery.dm @@ -8,7 +8,6 @@ name = "reshape face" implements = list(TOOL_SCALPEL = 100, /obj/item/kitchen/knife = 50, TOOL_WIRECUTTER = 35) time = 64 - experience_given = MEDICAL_SKILL_MEDIUM /datum/surgery_step/reshape_face/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) user.visible_message("[user] begins to alter [target]'s appearance.", "You begin to alter [target]'s appearance...") diff --git a/code/modules/surgery/prosthetic_replacement.dm b/code/modules/surgery/prosthetic_replacement.dm index d55598eb38f..97c1e983db4 100644 --- a/code/modules/surgery/prosthetic_replacement.dm +++ b/code/modules/surgery/prosthetic_replacement.dm @@ -19,7 +19,6 @@ name = "add prosthetic" implements = list(/obj/item/bodypart = 100, /obj/item/organ_storage = 100, /obj/item/chainsaw = 100, /obj/item/melee/synthetic_arm_blade = 100) time = 32 - experience_given = MEDICAL_SKILL_ORGAN_FIX //won't get full XP if rejected var/organ_rejection_dam = 0 /datum/surgery_step/add_prosthetic/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) @@ -79,7 +78,6 @@ return if(organ_rejection_dam) target.adjustToxLoss(organ_rejection_dam) - experience_given -= (round(organ_rejection_dam/10)) display_results(user, target, "You succeed in replacing [target]'s [parse_zone(target_zone)].", "[user] successfully replaces [target]'s [parse_zone(target_zone)] with [tool]!", "[user] successfully replaces [target]'s [parse_zone(target_zone)]!") diff --git a/code/modules/surgery/remove_embedded_object.dm b/code/modules/surgery/remove_embedded_object.dm index c4e923b4b99..2a3241086ed 100644 --- a/code/modules/surgery/remove_embedded_object.dm +++ b/code/modules/surgery/remove_embedded_object.dm @@ -8,7 +8,6 @@ name = "remove embedded objects" time = 32 accept_hand = 1 - experience_given = MEDICAL_SKILL_MEDIUM var/obj/item/bodypart/L = null @@ -36,7 +35,6 @@ display_results(user, target, "You successfully remove [objects] objects from [H]'s [L.name].", "[user] successfully removes [objects] objects from [H]'s [L]!", "[user] successfully removes [objects] objects from [H]'s [L]!") - experience_given = MEDICAL_SKILL_MEDIUM*(objects*0.75) else to_chat(user, "You find no objects embedded in [H]'s [L]!") diff --git a/code/modules/surgery/revival.dm b/code/modules/surgery/revival.dm index 53573176e2c..2ac5faf1c68 100644 --- a/code/modules/surgery/revival.dm +++ b/code/modules/surgery/revival.dm @@ -30,7 +30,6 @@ implements = list(/obj/item/shockpaddles = 100, /obj/item/melee/baton = 75, /obj/item/gun/energy = 60) repeatable = TRUE time = 120 - experience_given = MEDICAL_SKILL_ADVANCED /datum/surgery_step/revive/tool_check(mob/user, obj/item/tool) . = TRUE diff --git a/code/modules/surgery/stomachpump.dm b/code/modules/surgery/stomachpump.dm index 63bdfedff9d..89c3233720b 100644 --- a/code/modules/surgery/stomachpump.dm +++ b/code/modules/surgery/stomachpump.dm @@ -29,7 +29,6 @@ accept_hand = TRUE repeatable = TRUE time = 20 - experience_given = 0 /datum/surgery_step/stomach_pump/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) display_results(user, target, "You begin pumping [target]'s stomach...", @@ -39,16 +38,10 @@ /datum/surgery_step/stomach_pump/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results = FALSE) if(ishuman(target)) var/mob/living/carbon/human/H = target - var/reagents_volume_before_pump = H.reagents.total_volume display_results(user, target, "[user] forces [H] to vomit, cleansing their stomach of some chemicals!", "[user] forces [H] to vomit, cleansing their stomach of some chemicals!", "[user] forces [H] to vomit!") H.vomit(20, FALSE, TRUE, 1, TRUE, FALSE, purge = TRUE) //called with purge as true to lose more reagents - if(istype(surgery,/datum/surgery/stomach_pump)) - var/datum/surgery/stomach_pump/stom_pump = surgery - if(stom_pump.accumulated_experience > MEDICAL_SKILL_MEDIUM*10) //capped so you can't dope bodies and purge for ezxp - experience_given = (H.reagents.total_volume - reagents_volume_before_pump)/(MEDICAL_SKILL_MEDIUM) - stom_pump.accumulated_experience += experience_given return ..() /datum/surgery_step/stomach_pump/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) diff --git a/code/modules/surgery/surgery_step.dm b/code/modules/surgery/surgery_step.dm index a6ad043e854..eb353b8dda8 100644 --- a/code/modules/surgery/surgery_step.dm +++ b/code/modules/surgery/surgery_step.dm @@ -9,8 +9,6 @@ var/list/chems_needed = list() //list of chems needed to complete the step. Even on success, the step will have no effect if there aren't the chems required in the mob. var/require_all_chems = TRUE //any on the list or all on the list? var/silicons_obey_prob = FALSE - /// The amount of experience given for successfully completing the step. - var/experience_given = MEDICAL_SKILL_EASY /datum/surgery_step/proc/try_op(mob/user, mob/living/target, target_zone, obj/item/tool, datum/surgery/surgery, try_to_fail = FALSE) var/success = FALSE @@ -83,7 +81,7 @@ implement_speed_mod = implements[implement_type] / 100.0 speed_mod /= (get_location_modifier(target) * (1 + surgery.speed_modifier) * implement_speed_mod) - var/modded_time = time * speed_mod * user.mind.get_skill_modifier(/datum/skill/healing, SKILL_SPEED_MODIFIER) + var/modded_time = time * speed_mod fail_prob = min(max(0, modded_time - (time * SURGERY_SLOWDOWN_CAP_MULTIPLIER)),99)//if modded_time > time * modifier, then fail_prob = modded_time - time*modifier. starts at 0, caps at 99 @@ -127,7 +125,6 @@ display_results(user, target, "You succeed.", "[user] succeeds!", "[user] finishes.") - user?.mind.adjust_experience(/datum/skill/healing, round(experience_given)) return TRUE /datum/surgery_step/proc/failure(mob/user, mob/living/target, target_zone, obj/item/tool, datum/surgery/surgery, var/fail_prob = 0) diff --git a/tgstation.dme b/tgstation.dme index c1148fd7728..4a9e3acd0ed 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -612,7 +612,6 @@ #include "code\datums\skills\_skill.dm" #include "code\datums\skills\cleaning.dm" #include "code\datums\skills\gaming.dm" -#include "code\datums\skills\medical.dm" #include "code\datums\skills\mining.dm" #include "code\datums\status_effects\buffs.dm" #include "code\datums\status_effects\debuffs.dm" @@ -2997,7 +2996,6 @@ #include "code\modules\surgery\core_removal.dm" #include "code\modules\surgery\coronary_bypass.dm" #include "code\modules\surgery\dental_implant.dm" -#include "code\modules\surgery\experimental_dissection.dm" #include "code\modules\surgery\eye_surgery.dm" #include "code\modules\surgery\gastrectomy.dm" #include "code\modules\surgery\healing.dm"