From 3464b6bfb2e01e1b0aa7de0e31031a3c84dedc77 Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Sat, 1 Apr 2023 03:51:06 +0200 Subject: [PATCH] [MIRROR] Refactors Regenerate Organs, and a few organ helpers [MDB IGNORE] (#20094) * Refactors Regenerate Organs, and a few organ helpers * MERGE CONFLICTS * GETORGANSLOT > GET_ORGAN_SLOT * GETORGAN > get_organ_by_type * lint repairs * more lint * Update tgstation.dme * Update surgery_step.dm --------- Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com> --- code/__HELPERS/honkerblast.dm | 6 +- code/controllers/subsystem/blackbox.dm | 2 +- code/controllers/subsystem/ticker.dm | 2 +- code/datums/ai/monkey/monkey_controller.dm | 2 +- code/datums/components/cult_ritual_item.dm | 2 +- code/datums/components/dejavu.dm | 2 +- code/datums/components/food/edible.dm | 2 +- code/datums/components/manual_blinking.dm | 4 +- code/datums/components/manual_breathing.dm | 4 +- code/datums/components/phylactery.dm | 2 +- code/datums/components/sign_language.dm | 4 +- code/datums/components/supermatter_crystal.dm | 2 +- code/datums/components/tackle.dm | 6 +- .../diseases/advance/symptoms/deafness.dm | 4 +- .../diseases/advance/symptoms/sensory.dm | 6 +- .../diseases/advance/symptoms/vision.dm | 10 +- code/datums/diseases/parasitic_infection.dm | 2 +- code/datums/elements/ai_control_examine.dm | 2 +- code/datums/elements/earhealing.dm | 4 +- code/datums/elements/eyestab.dm | 8 +- code/datums/elements/kneejerk.dm | 2 +- code/datums/emotes.dm | 2 +- code/datums/mutations/body.dm | 10 +- code/datums/mutations/hulk.dm | 2 +- code/datums/quirks/negative_quirks.dm | 2 +- code/datums/quirks/neutral_quirks.dm | 2 +- code/datums/quirks/positive_quirks.dm | 2 +- code/datums/saymode.dm | 2 +- code/datums/status_effects/debuffs/drunk.dm | 2 +- .../status_effects/debuffs/strandling.dm | 2 +- code/datums/wounds/slash.dm | 2 +- .../dynamic/dynamic_rulesets_midround.dm | 2 +- code/game/gamemodes/objective.dm | 2 +- .../game/machinery/dna_infuser/dna_infuser.dm | 2 +- code/game/machinery/medical_kiosk.dm | 4 +- code/game/machinery/scan_gate.dm | 2 +- code/game/machinery/sleepers.dm | 2 +- code/game/objects/items/airlock_painter.dm | 2 +- code/game/objects/items/cigs_lighters.dm | 2 +- code/game/objects/items/defib.dm | 4 +- code/game/objects/items/devices/flashlight.dm | 4 +- .../items/devices/scanners/health_analyzer.dm | 26 +-- code/game/objects/items/dualsaber.dm | 2 +- code/game/objects/items/food/donuts.dm | 2 +- code/game/objects/items/hand_items.dm | 4 +- code/game/objects/items/melee/baton.dm | 2 +- code/game/objects/structures/aliens.dm | 4 +- .../structures/beds_chairs/alien_nest.dm | 6 +- .../objects/structures/petrified_statue.dm | 2 +- code/game/turfs/turf.dm | 2 +- code/modules/admin/topic.dm | 2 +- code/modules/admin/verbs/selectequipment.dm | 2 +- code/modules/admin/view_variables/topic.dm | 2 +- code/modules/antagonists/abductor/abductor.dm | 2 +- .../abductor/equipment/abduction_gear.dm | 4 +- .../abductor/equipment/glands/heal.dm | 10 +- .../antagonists/changeling/changeling.dm | 4 +- .../changeling/powers/augmented_eyesight.dm | 6 +- .../antagonists/changeling/powers/headcrab.dm | 4 +- .../antagonists/changeling/powers/panacea.dm | 9 +- .../changeling/powers/regenerate.dm | 2 +- .../antagonists/changeling/powers/shriek.dm | 2 +- .../changeling/powers/tiny_prick.dm | 4 +- code/modules/antagonists/clown_ops/clownop.dm | 4 +- code/modules/antagonists/cult/runes.dm | 2 +- .../antagonists/heretic/heretic_antag.dm | 2 +- .../antagonists/heretic/knowledge/ash_lore.dm | 2 +- .../heretic/knowledge/starting_lore.dm | 10 +- .../heretic/magic/flesh_surgery.dm | 2 +- code/modules/antagonists/obsessed/obsessed.dm | 2 +- .../antagonists/revolution/revolution.dm | 2 +- .../traitor/objectives/eyesnatching.dm | 8 +- .../traitor/objectives/sleeper_protocol.dm | 2 +- code/modules/client/preferences/species.dm | 2 +- .../preferences/species_features/basic.dm | 2 +- code/modules/clothing/glasses/_glasses.dm | 4 +- code/modules/clothing/glasses/hud.dm | 2 +- code/modules/clothing/head/tinfoilhat.dm | 4 +- code/modules/clothing/neck/_neck.dm | 4 +- code/modules/events/brain_trauma.dm | 2 +- code/modules/events/creep_awakening.dm | 2 +- code/modules/experisci/handheld_scanner.dm | 2 +- .../food_and_drinks/machinery/smartfridge.dm | 2 +- code/modules/hydroponics/grown/banana.dm | 2 +- code/modules/jobs/job_types/_job.dm | 2 +- .../library/skill_learning/skill_station.dm | 6 +- .../library/skill_learning/skillchip.dm | 2 +- code/modules/mining/lavaland/tendril_loot.dm | 2 +- .../modules/mob/dead/new_player/new_player.dm | 2 +- code/modules/mob/dead/observer/observer.dm | 2 +- code/modules/mob/living/brain/MMI.dm | 2 +- code/modules/mob/living/brain/brain_item.dm | 14 +- code/modules/mob/living/brain/life.dm | 2 +- .../mob/living/carbon/alien/adult/adult.dm | 2 +- .../living/carbon/alien/adult/alien_powers.dm | 6 +- .../living/carbon/alien/adult/caste/drone.dm | 2 +- .../carbon/alien/adult/caste/praetorian.dm | 2 +- .../mob/living/carbon/alien/adult/death.dm | 2 +- code/modules/mob/living/carbon/alien/alien.dm | 2 +- .../mob/living/carbon/alien/alien_defense.dm | 2 +- .../mob/living/carbon/alien/alien_say.dm | 2 +- .../mob/living/carbon/alien/larva/life.dm | 2 +- .../modules/mob/living/carbon/alien/organs.dm | 2 +- .../living/carbon/alien/special/facehugger.dm | 4 +- code/modules/mob/living/carbon/carbon.dm | 20 +-- .../mob/living/carbon/carbon_context.dm | 2 +- .../mob/living/carbon/carbon_defense.dm | 31 ++-- code/modules/mob/living/carbon/carbon_say.dm | 4 +- .../modules/mob/living/carbon/damage_procs.dm | 12 +- code/modules/mob/living/carbon/death.dm | 24 +-- code/modules/mob/living/carbon/examine.dm | 2 +- code/modules/mob/living/carbon/human/death.dm | 6 +- code/modules/mob/living/carbon/human/dummy.dm | 4 +- code/modules/mob/living/carbon/human/emote.dm | 8 +- .../mob/living/carbon/human/examine.dm | 4 +- code/modules/mob/living/carbon/human/human.dm | 6 +- .../mob/living/carbon/human/human_defense.dm | 6 +- .../mob/living/carbon/human/human_helpers.dm | 2 +- .../mob/living/carbon/human/human_say.dm | 2 +- .../mob/living/carbon/human/human_suicide.dm | 93 ++++++++++ .../living/carbon/human/human_update_icons.dm | 2 +- code/modules/mob/living/carbon/human/life.dm | 2 +- .../mob/living/carbon/human/species.dm | 159 ++++++++++------- .../carbon/human/species_types/dullahan.dm | 4 +- .../carbon/human/species_types/ethereal.dm | 2 +- .../carbon/human/species_types/felinid.dm | 10 +- .../carbon/human/species_types/golems.dm | 4 +- .../carbon/human/species_types/zombies.dm | 4 +- code/modules/mob/living/carbon/inventory.dm | 2 +- code/modules/mob/living/carbon/life.dm | 26 +-- code/modules/mob/living/carbon/skillchip.dm | 8 +- .../modules/mob/living/carbon/status_procs.dm | 12 +- code/modules/mob/living/damage_procs.dm | 6 +- code/modules/mob/living/emote.dm | 6 +- code/modules/mob/living/living.dm | 4 +- .../mob/living/simple_animal/bot/honkbot.dm | 2 +- .../simple_animal/hostile/cat_butcher.dm | 2 +- code/modules/mob/living/taste.dm | 2 +- code/modules/mod/mod_core.dm | 2 +- code/modules/mod/modules/modules_medical.dm | 2 +- code/modules/paperwork/paperplane.dm | 11 +- code/modules/power/apc/apc_attack.dm | 4 +- code/modules/power/cell.dm | 2 +- code/modules/power/lighting/light.dm | 2 +- code/modules/projectiles/guns/ballistic.dm | 2 +- code/modules/reagents/chemistry/holder.dm | 6 +- .../chemistry/reagents/alcohol_reagents.dm | 22 +-- .../chemistry/reagents/atmos_gas_reagents.dm | 2 +- .../reagents/cat2_medicine_reagents.dm | 2 +- .../chemistry/reagents/drink_reagents.dm | 4 +- .../chemistry/reagents/drug_reagents.dm | 2 +- .../chemistry/reagents/food_reagents.dm | 6 +- .../chemistry/reagents/impure_reagents.dm | 2 +- .../impure_medicine_reagents.dm | 20 +-- .../impure_reagents/impure_toxin_reagents.dm | 6 +- .../chemistry/reagents/medicine_reagents.dm | 30 ++-- .../chemistry/reagents/other_reagents.dm | 4 +- .../chemistry/reagents/unique/eigenstasium.dm | 2 +- .../reagents/withdrawal/generic_addictions.dm | 6 +- code/modules/religion/burdened/psyker.dm | 6 +- code/modules/religion/religion_sects.dm | 2 +- code/modules/religion/rites.dm | 4 +- .../spells/spell_types/self/lichdom.dm | 2 +- code/modules/station_goals/vault_mutation.dm | 4 +- .../advanced/bioware/cortex_folding.dm | 4 +- .../advanced/bioware/cortex_imprint.dm | 4 +- code/modules/surgery/advanced/brainwashing.dm | 4 +- code/modules/surgery/advanced/lobotomy.dm | 6 +- .../surgery/advanced/necrotic_revival.dm | 4 +- code/modules/surgery/advanced/pacification.dm | 2 +- .../surgery/advanced/wingreconstruction.dm | 6 +- code/modules/surgery/bodyparts/hair.dm | 2 +- code/modules/surgery/bodyparts/head.dm | 2 +- code/modules/surgery/brain_surgery.dm | 8 +- code/modules/surgery/coronary_bypass.dm | 4 +- code/modules/surgery/ear_surgery.dm | 8 +- code/modules/surgery/eye_surgery.dm | 8 +- code/modules/surgery/gastrectomy.dm | 4 +- code/modules/surgery/hepatectomy.dm | 4 +- code/modules/surgery/lobectomy.dm | 4 +- code/modules/surgery/organ_manipulation.dm | 6 +- code/modules/surgery/organs/_organ.dm | 34 ++-- code/modules/surgery/organs/ears.dm | 4 +- code/modules/surgery/organs/external/tails.dm | 2 +- .../organs/external/wings/functional_wings.dm | 2 +- code/modules/surgery/organs/eyes.dm | 10 +- code/modules/surgery/organs/helpers.dm | 13 +- code/modules/surgery/organs/liver.dm | 8 +- code/modules/surgery/organs/organ_internal.dm | 6 +- code/modules/surgery/organs/tongue.dm | 4 +- code/modules/surgery/organs/vocal_cords.dm | 2 +- code/modules/surgery/revival.dm | 2 +- code/modules/surgery/stomachpump.dm | 2 +- code/modules/surgery/surgery_step.dm | 4 +- code/modules/surgery/tools.dm | 2 +- code/modules/unit_tests/blindness.dm | 14 +- code/modules/unit_tests/full_heal.dm | 4 +- code/modules/unit_tests/metabolizing.dm | 4 +- code/modules/unit_tests/mutant_organs.dm | 32 +--- code/modules/unit_tests/organs.dm | 6 +- .../unit_tests/species_change_organs.dm | 8 +- code/modules/unit_tests/stomach.dm | 2 +- code/modules/unit_tests/surgeries.dm | 2 +- .../mecha/equipment/tools/medical_tools.dm | 2 +- .../mecha/equipment/weapons/weapons.dm | 2 +- .../wiremod/shell/brain_computer_interface.dm | 4 +- code/modules/zombie/items.dm | 2 +- code/modules/zombie/organs.dm | 2 +- .../code/datums/quirks/neutral.dm | 4 +- .../code/datums/traits/neutral.dm | 2 +- .../code/modules/client/preferences/brain.dm | 2 +- .../client/preferences/mutant_parts.dm | 2 +- .../mob/dead/new_player/preferences_setup.dm | 4 +- .../code/modules/mob/living/carbon/human.dm | 2 +- .../mob/living/carbon/human_helpers.dm | 2 +- .../code/assault_operatives.dm | 2 +- .../code/cortical_borer_abilities.dm | 14 +- .../modules/cryosleep/code/cryopod.dm | 4 +- .../modules/customization/datums/dna.dm | 2 +- .../mob/dead/new_player/sprite_accessories.dm | 4 +- .../new_player/sprite_accessories/genitals.dm | 6 +- .../modules/mob/living/carbon/human/human.dm | 4 +- .../mob/living/carbon/human/species.dm | 14 +- .../living/carbon/human/species/hemophage.dm | 6 +- .../carbon/human/species/roundstartslime.dm | 22 +-- .../modules/surgery/organs/nif.dm | 6 +- .../modules/emote_panel/code/emote_panel.dm | 4 +- .../code/additionalemotes/turf_emote.dm | 4 +- .../modules/exp_corps/code/clothing.dm | 4 +- .../code/interaction_datum.dm | 4 +- .../modules/medical/code/wounds/slash.dm | 2 +- .../modular_implants/code/misc_devices.dm | 4 +- .../modular_implants/code/nif_persistence.dm | 4 +- .../modules/modular_implants/code/nifs.dm | 2 +- .../modular_implants/code/nifsoft_catalog.dm | 2 +- .../modules/modular_implants/code/nifsofts.dm | 2 +- .../lewd_items/code/lewd_arousal/climax.dm | 10 +- .../lewd_arousal/status_effects/aroused.dm | 2 +- .../lewd_arousal/status_effects/climax.dm | 8 +- .../status_effects/fluid_generation.dm | 6 +- .../lewd_chemistry/reagents/_aphrodisiac.dm | 168 +++++++++--------- .../code/lewd_chemistry/reagents/camphor.dm | 12 +- .../lewd_chemistry/reagents/succubus_milk.dm | 22 +-- .../code/lewd_clothing/latex_catsuit.dm | 4 +- .../lewd_items/code/lewd_clothing/strapon.dm | 18 +- .../lewd_items/code/lewd_helpers/human.dm | 14 +- .../code/lewd_items/_masturbation_item.dm | 4 +- .../lewd_items/code/lewd_items/clamps.dm | 4 +- .../lewd_items/code/lewd_items/dildo.dm | 18 +- .../lewd_items/code/lewd_items/feather.dm | 2 +- .../lewd_items/code/lewd_items/fleshlight.dm | 2 +- .../code/lewd_items/kinky_shocker.dm | 6 +- .../lewd_items/code/lewd_items/magic_wand.dm | 6 +- .../code/lewd_items/torture_candle.dm | 6 +- .../lewd_items/code/lewd_items/vibrator.dm | 6 +- .../lewd_items/code/lewd_items/vibroring.dm | 2 +- .../code/lewd_machinery/milking_machine.dm | 18 +- .../code/modular_persistence.dm | 2 +- .../modules/oversized/code/oversized_quirk.dm | 2 +- .../code/self_actualization_device.dm | 4 +- .../modules/synths/code/bodyparts/brain.dm | 4 +- .../modules/synths/code/species/synthetic.dm | 4 +- .../code/surgery/robot_brain_surgery.dm | 8 +- .../code/surgery/robot_chassis_restoration.dm | 2 +- .../code/base_skyrat_xeno.dm | 4 +- .../code/xeno_types/queen.dm | 2 +- tgstation.dme | 1 + 267 files changed, 935 insertions(+), 830 deletions(-) create mode 100644 code/modules/mob/living/carbon/human/human_suicide.dm diff --git a/code/__HELPERS/honkerblast.dm b/code/__HELPERS/honkerblast.dm index a44eb0ec283..c0712f420f2 100644 --- a/code/__HELPERS/honkerblast.dm +++ b/code/__HELPERS/honkerblast.dm @@ -23,7 +23,7 @@ victim.Stun(100) victim.adjust_stutter(30 SECONDS) victim.set_jitter_if_lower(1000 SECONDS) - var/obj/item/organ/internal/ears/ears = victim.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = victim.get_organ_slot(ORGAN_SLOT_EARS) ears?.adjustEarDamage(10, 15) to_chat(victim, "HONK") var/obj/item/clothing/shoes/victim_shoes = victim.get_item_by_slot(ITEM_SLOT_FEET) @@ -35,13 +35,13 @@ victim.Paralyze(20) victim.Stun(50) victim.set_jitter_if_lower(500 SECONDS) - var/obj/item/organ/internal/ears/ears = victim.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = victim.get_organ_slot(ORGAN_SLOT_EARS) ears?.adjustEarDamage(7, 10) to_chat(victim, "HONK") for(var/mob/living/carbon/victim in lightly_honked) victim.Knockdown(20) victim.set_jitter_if_lower(200 SECONDS) - var/obj/item/organ/internal/ears/ears = victim.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = victim.get_organ_slot(ORGAN_SLOT_EARS) ears?.adjustEarDamage(4, 5) to_chat(victim, "HONK") diff --git a/code/controllers/subsystem/blackbox.dm b/code/controllers/subsystem/blackbox.dm index a9115e93b20..50977c51b0b 100644 --- a/code/controllers/subsystem/blackbox.dm +++ b/code/controllers/subsystem/blackbox.dm @@ -347,7 +347,7 @@ Versioning "lakey" = L.lastattackerckey, "brute" = L.getBruteLoss(), "fire" = L.getFireLoss(), - "brain" = L.getOrganLoss(ORGAN_SLOT_BRAIN) || BRAIN_DAMAGE_DEATH, //getOrganLoss returns null without a brain but a value is required for this column + "brain" = L.get_organ_loss(ORGAN_SLOT_BRAIN) || BRAIN_DAMAGE_DEATH, //get_organ_loss returns null without a brain but a value is required for this column "oxy" = L.getOxyLoss(), "tox" = L.getToxLoss(), "clone" = L.getCloneLoss(), diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 30fabfee0cb..dafdfbad7a6 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -327,7 +327,7 @@ SUBSYSTEM_DEF(ticker) iter_human.increment_scar_slot() iter_human.load_persistent_scars() - SSpersistence.load_modular_persistence(iter_human.getorganslot(ORGAN_SLOT_BRAIN)) // SKYRAT EDIT ADDITION - MODULAR_PERSISTENCE + SSpersistence.load_modular_persistence(iter_human.get_organ_slot(ORGAN_SLOT_BRAIN)) // SKYRAT EDIT ADDITION - MODULAR_PERSISTENCE if(!iter_human.hardcore_survival_score) continue diff --git a/code/datums/ai/monkey/monkey_controller.dm b/code/datums/ai/monkey/monkey_controller.dm index 247bdf729ed..d4877480dd6 100644 --- a/code/datums/ai/monkey/monkey_controller.dm +++ b/code/datums/ai/monkey/monkey_controller.dm @@ -94,7 +94,7 @@ have ways of interacting with a specific mob and control it. /datum/ai_controller/monkey/proc/set_trip_mode(mode = TRUE) var/mob/living/carbon/regressed_monkey = pawn - var/brain = regressed_monkey.getorganslot(ORGAN_SLOT_BRAIN) + var/brain = regressed_monkey.get_organ_slot(ORGAN_SLOT_BRAIN) if(istype(brain, /obj/item/organ/internal/brain/primate)) // In case we are a monkey AI in a human brain by who was previously controlled by a client but it now not by some marvel var/obj/item/organ/internal/brain/primate/monkeybrain = brain monkeybrain.tripping = mode diff --git a/code/datums/components/cult_ritual_item.dm b/code/datums/components/cult_ritual_item.dm index 4892b8740ef..b76c1fd7acb 100644 --- a/code/datums/components/cult_ritual_item.dm +++ b/code/datums/components/cult_ritual_item.dm @@ -161,7 +161,7 @@ // For carbonss we also want to clear out the stomach of any holywater if(iscarbon(target)) var/mob/living/carbon/carbon_target = target - var/obj/item/organ/internal/stomach/belly = carbon_target.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/belly = carbon_target.get_organ_slot(ORGAN_SLOT_STOMACH) if(belly) holy_to_unholy += belly.reagents.get_reagent_amount(/datum/reagent/water/holywater) belly.reagents.del_reagent(/datum/reagent/water/holywater) diff --git a/code/datums/components/dejavu.dm b/code/datums/components/dejavu.dm index 8a5016f589d..fd28466bfb7 100644 --- a/code/datums/components/dejavu.dm +++ b/code/datums/components/dejavu.dm @@ -50,7 +50,7 @@ tox_loss = L.getToxLoss() oxy_loss = L.getOxyLoss() stamina_loss = L.getStaminaLoss() - brain_loss = L.getOrganLoss(ORGAN_SLOT_BRAIN) + brain_loss = L.get_organ_loss(ORGAN_SLOT_BRAIN) rewind_type = PROC_REF(rewind_living) if(iscarbon(parent)) diff --git a/code/datums/components/food/edible.dm b/code/datums/components/food/edible.dm index 24692183900..79fbcbba245 100644 --- a/code/datums/components/food/edible.dm +++ b/code/datums/components/food/edible.dm @@ -442,7 +442,7 @@ Behavior that's still missing from this component that original food items had t //Invoke the eater's stomach's after_eat callback if valid if(iscarbon(eater)) var/mob/living/carbon/carbon_eater = eater - var/obj/item/organ/internal/stomach/stomach = carbon_eater.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/stomach = carbon_eater.get_organ_slot(ORGAN_SLOT_STOMACH) if(istype(stomach)) stomach.after_eat(owner) diff --git a/code/datums/components/manual_blinking.dm b/code/datums/components/manual_blinking.dm index d6bf17bfa18..1a742c68678 100644 --- a/code/datums/components/manual_blinking.dm +++ b/code/datums/components/manual_blinking.dm @@ -15,7 +15,7 @@ return COMPONENT_INCOMPATIBLE var/mob/living/carbon/C = parent - E = C.getorganslot(ORGAN_SLOT_EYES) + E = C.get_organ_slot(ORGAN_SLOT_EYES) if(E) START_PROCESSING(SSdcs, src) @@ -60,7 +60,7 @@ to_chat(C, span_userdanger("Your eyes begin to wither, you need to blink!")) warn_dying = TRUE - E.applyOrganDamage(damage_rate) + E.apply_organ_damage(damage_rate) else if(world.time > (last_blink + check_every)) if(!warn_grace) to_chat(C, span_danger("You feel a need to blink!")) diff --git a/code/datums/components/manual_breathing.dm b/code/datums/components/manual_breathing.dm index daad7744131..0488cce6aa3 100644 --- a/code/datums/components/manual_breathing.dm +++ b/code/datums/components/manual_breathing.dm @@ -15,7 +15,7 @@ return COMPONENT_INCOMPATIBLE var/mob/living/carbon/C = parent - L = C.getorganslot(ORGAN_SLOT_LUNGS) + L = C.get_organ_slot(ORGAN_SLOT_LUNGS) if(L) START_PROCESSING(SSdcs, src) @@ -61,7 +61,7 @@ to_chat(C, span_userdanger("You begin to suffocate, you need to [next_text]!")) warn_dying = TRUE - L.applyOrganDamage(damage_rate) + L.apply_organ_damage(damage_rate) C.losebreath += 0.8 else if(world.time > (last_breath + check_every)) if(!warn_grace) diff --git a/code/datums/components/phylactery.dm b/code/datums/components/phylactery.dm index a26384a6a2b..637f9c6e3f6 100644 --- a/code/datums/components/phylactery.dm +++ b/code/datums/components/phylactery.dm @@ -169,7 +169,7 @@ var/mob/living/carbon/human/lich = new(parent_turf) ADD_TRAIT(lich, TRAIT_NO_SOUL, LICH_TRAIT) - var/obj/item/organ/internal/brain/new_lich_brain = lich.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/new_lich_brain = lich.get_organ_slot(ORGAN_SLOT_BRAIN) if(new_lich_brain) // Prevent MMI cheese new_lich_brain.organ_flags &= ~ORGAN_VITAL new_lich_brain.decoy_override = TRUE diff --git a/code/datums/components/sign_language.dm b/code/datums/components/sign_language.dm index a828046c41c..3cda4b27e39 100644 --- a/code/datums/components/sign_language.dm +++ b/code/datums/components/sign_language.dm @@ -67,7 +67,7 @@ SIGNAL_HANDLER var/mob/living/carbon/carbon_parent = parent - var/obj/item/organ/internal/tongue/tongue = carbon_parent.getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/tongue = carbon_parent.get_organ_slot(ORGAN_SLOT_TONGUE) if(tongue) tongue.temp_say_mod = "signs" //this speech relies on hands, which we have our own way of garbling speech when they're occupied, so we can have this always on @@ -93,7 +93,7 @@ SIGNAL_HANDLER var/mob/living/carbon/carbon_parent = parent - var/obj/item/organ/internal/tongue/tongue = carbon_parent.getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/tongue = carbon_parent.get_organ_slot(ORGAN_SLOT_TONGUE) if(tongue) tongue.temp_say_mod = "" REMOVE_TRAIT(carbon_parent, TRAIT_SPEAKS_CLEARLY, SPEAKING_FROM_HANDS) diff --git a/code/datums/components/supermatter_crystal.dm b/code/datums/components/supermatter_crystal.dm index f9902058319..8d2a382d8c1 100644 --- a/code/datums/components/supermatter_crystal.dm +++ b/code/datums/components/supermatter_crystal.dm @@ -108,7 +108,7 @@ ) return - var/obj/item/organ/internal/tongue/licking_tongue = user.getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/licking_tongue = user.get_organ_slot(ORGAN_SLOT_TONGUE) if(licking_tongue) dust_mob(source, user, span_danger("As [user] hesitantly leans in and licks [atom_source] everything goes silent before [user.p_their()] body starts to glow and burst into flames before flashing to ash!"), diff --git a/code/datums/components/tackle.dm b/code/datums/components/tackle.dm index 9337d57edf7..c604666d261 100644 --- a/code/datums/components/tackle.dm +++ b/code/datums/components/tackle.dm @@ -297,7 +297,7 @@ defense_mod += 2 - var/obj/item/organ/external/tail/lizard/el_tail = tackle_target.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/lizard/el_tail = tackle_target.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(HAS_TRAIT(tackle_target, TRAIT_TACKLING_TAILED_DEFENDER) && !el_tail) defense_mod -= 1 if(el_tail && (el_tail.wag_flags & WAG_WAGGING)) // lizard tail wagging is robust and can swat away assailants! @@ -319,10 +319,10 @@ attack_mod += 2 if(HAS_TRAIT(sacker, TRAIT_TACKLING_WINGED_ATTACKER)) - var/obj/item/organ/external/wings/moth/sacker_moth_wing = sacker.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS) + var/obj/item/organ/external/wings/moth/sacker_moth_wing = sacker.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS) if(!sacker_moth_wing || sacker_moth_wing.burnt) attack_mod -= 2 - var/obj/item/organ/external/wings/sacker_wing = sacker.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS) + var/obj/item/organ/external/wings/sacker_wing = sacker.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS) if(sacker_wing) attack_mod += 2 diff --git a/code/datums/diseases/advance/symptoms/deafness.dm b/code/datums/diseases/advance/symptoms/deafness.dm index f0c88598061..51378344260 100644 --- a/code/datums/diseases/advance/symptoms/deafness.dm +++ b/code/datums/diseases/advance/symptoms/deafness.dm @@ -43,7 +43,7 @@ if(!.) return var/mob/living/carbon/infected_mob = A.affected_mob - var/obj/item/organ/internal/ears/ears = infected_mob.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = infected_mob.get_organ_slot(ORGAN_SLOT_EARS) if(!ears) return //cutting off your ears to cure the deafness: the ultimate own switch(A.stage) @@ -55,7 +55,7 @@ if(ears.damage < ears.maxHealth) to_chat(infected_mob, span_userdanger("Your ears pop painfully and start bleeding!")) // Just absolutely murder me man - ears.applyOrganDamage(ears.maxHealth) + ears.apply_organ_damage(ears.maxHealth) infected_mob.emote("scream") ADD_TRAIT(infected_mob, TRAIT_DEAF, DISEASE_TRAIT) else diff --git a/code/datums/diseases/advance/symptoms/sensory.dm b/code/datums/diseases/advance/symptoms/sensory.dm index 155b6cc15b3..2d21f9f147a 100644 --- a/code/datums/diseases/advance/symptoms/sensory.dm +++ b/code/datums/diseases/advance/symptoms/sensory.dm @@ -91,18 +91,18 @@ var/mob/living/carbon/ill_mob = source_disease.affected_mob switch(source_disease.stage) if(4, 5) - var/obj/item/organ/internal/ears/ears = ill_mob.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = ill_mob.get_organ_slot(ORGAN_SLOT_EARS) if(ears) ears.adjustEarDamage(-4, -4) ill_mob.adjust_temp_blindness(-4 SECONDS) ill_mob.adjust_eye_blur(-4 SECONDS) - var/obj/item/organ/internal/eyes/eyes = ill_mob.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = ill_mob.get_organ_slot(ORGAN_SLOT_EYES) if(!eyes) // only dealing with eye stuff from here on out return - eyes.applyOrganDamage(-2) + eyes.apply_organ_damage(-2) if(prob(20)) if(ill_mob.is_blind_from(EYE_DAMAGE)) to_chat(ill_mob, span_warning("Your vision slowly returns...")) diff --git a/code/datums/diseases/advance/symptoms/vision.dm b/code/datums/diseases/advance/symptoms/vision.dm index 32887dce813..f6cbddbd668 100644 --- a/code/datums/diseases/advance/symptoms/vision.dm +++ b/code/datums/diseases/advance/symptoms/vision.dm @@ -41,7 +41,7 @@ if(!.) return var/mob/living/carbon/ill_mob = source_disease.affected_mob - var/obj/item/organ/internal/eyes/eyes = ill_mob.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = ill_mob.get_organ_slot(ORGAN_SLOT_EYES) if(!eyes) return // can't do much @@ -53,15 +53,15 @@ if(3, 4) to_chat(ill_mob, span_boldwarning("Your eyes burn!")) ill_mob.set_eye_blur_if_lower(20 SECONDS) - eyes.applyOrganDamage(1) + eyes.apply_organ_damage(1) else ill_mob.set_eye_blur_if_lower(40 SECONDS) - eyes.applyOrganDamage(5) + eyes.apply_organ_damage(5) // Applies nearsighted at minimum if(!ill_mob.is_nearsighted_from(EYE_DAMAGE) && eyes.damage <= eyes.low_threshold) - eyes.setOrganDamage(eyes.low_threshold) + eyes.set_organ_damage(eyes.low_threshold) if(prob(eyes.damage - eyes.low_threshold + 1)) if(remove_eyes) @@ -74,7 +74,7 @@ else if(!ill_mob.is_blind_from(EYE_DAMAGE)) to_chat(ill_mob, span_userdanger("You go blind!")) - eyes.applyOrganDamage(eyes.maxHealth) + eyes.apply_organ_damage(eyes.maxHealth) else to_chat(ill_mob, span_userdanger("Your eyes burn horrifically!")) diff --git a/code/datums/diseases/parasitic_infection.dm b/code/datums/diseases/parasitic_infection.dm index fe9cffaaa4e..65ed94687a3 100644 --- a/code/datums/diseases/parasitic_infection.dm +++ b/code/datums/diseases/parasitic_infection.dm @@ -20,7 +20,7 @@ if(!.) return - var/obj/item/organ/internal/liver/affected_liver = affected_mob.getorgan(/obj/item/organ/internal/liver) + var/obj/item/organ/internal/liver/affected_liver = affected_mob.get_organ_by_type(/obj/item/organ/internal/liver) if(!affected_liver) affected_mob.visible_message(span_notice("[affected_mob]'s liver is covered in tiny larva! They quickly shrivel and die after being exposed to the open air.")) cure() diff --git a/code/datums/elements/ai_control_examine.dm b/code/datums/elements/ai_control_examine.dm index 2e8278cd3cb..b470ac44b49 100644 --- a/code/datums/elements/ai_control_examine.dm +++ b/code/datums/elements/ai_control_examine.dm @@ -34,7 +34,7 @@ var/mob/living/carbon/human/human_pawn = source_controller.pawn //make current organs noticable for(var/organ_slot_key in noticable_organ_examines) - var/obj/item/organ/found = human_pawn.getorganslot(organ_slot_key) + var/obj/item/organ/found = human_pawn.get_organ_slot(organ_slot_key) if(!found) continue make_organ_noticable(organ_slot_key, found, human_pawn) diff --git a/code/datums/elements/earhealing.dm b/code/datums/elements/earhealing.dm index 5db1250af8d..696f3deec95 100644 --- a/code/datums/elements/earhealing.dm +++ b/code/datums/elements/earhealing.dm @@ -26,9 +26,9 @@ /datum/element/earhealing/process(delta_time) for(var/i in user_by_item) var/mob/living/carbon/user = user_by_item[i] - var/obj/item/organ/internal/ears/ears = user.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = user.get_organ_slot(ORGAN_SLOT_EARS) if(!ears || !ears.damage || ears.organ_flags & ORGAN_FAILING) continue ears.deaf = max(ears.deaf - 0.25 * delta_time, (ears.damage < ears.maxHealth ? 0 : 1)) // Do not clear deafness if our ears are too damaged - ears.applyOrganDamage(-0.025 * delta_time) + ears.apply_organ_damage(-0.025 * delta_time) CHECK_TICK diff --git a/code/datums/elements/eyestab.dm b/code/datums/elements/eyestab.dm index 91adf2675e7..b13581b355b 100644 --- a/code/datums/elements/eyestab.dm +++ b/code/datums/elements/eyestab.dm @@ -89,12 +89,12 @@ log_combat(user, target, "attacked", "[item.name]", "(Combat mode: [user.combat_mode ? "On" : "Off"])") - var/obj/item/organ/internal/eyes/eyes = target.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = target.get_organ_slot(ORGAN_SLOT_EYES) if (!eyes) return target.adjust_eye_blur_up_to(6 SECONDS, EYESTAB_MAX_BLUR) - eyes.applyOrganDamage(rand(2, 4)) + eyes.apply_organ_damage(rand(2, 4)) if(eyes.damage < EYESTAB_BLEEDING_THRESHOLD) return @@ -106,7 +106,7 @@ // At over 10 damage, we cause at least enough eye damage to force nearsightedness if (!target.is_nearsighted_from(EYE_DAMAGE) && eyes.damage <= eyes.low_threshold) - eyes.setOrganDamage(eyes.low_threshold) + eyes.set_organ_damage(eyes.low_threshold) // At over 10 damage, there is a 50% chance they drop all their items if (prob(50)) @@ -119,7 +119,7 @@ // At over 10 damage, there is a chance (based on eye damage) of going blind if (prob(eyes.damage - eyes.low_threshold + 1)) if (!target.is_blind_from(EYE_DAMAGE)) - eyes.setOrganDamage(eyes.maxHealth) + eyes.set_organ_damage(eyes.maxHealth) // Also cause some temp blindness, so that they're still blind even if they get healed target.adjust_temp_blindness_up_to(20 SECONDS, 1 MINUTES) diff --git a/code/datums/elements/kneejerk.dm b/code/datums/elements/kneejerk.dm index 92b7dff71d0..cd93fe31917 100644 --- a/code/datums/elements/kneejerk.dm +++ b/code/datums/elements/kneejerk.dm @@ -28,7 +28,7 @@ var/selected_zone = user.zone_selected var/obj/item/bodypart/leg/right = target.get_bodypart(BODY_ZONE_R_LEG) var/obj/item/bodypart/leg/left = target.get_bodypart(BODY_ZONE_L_LEG) - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!ishuman(target)) return diff --git a/code/datums/emotes.dm b/code/datums/emotes.dm index c136648f7f2..6a2318dcc38 100644 --- a/code/datums/emotes.dm +++ b/code/datums/emotes.dm @@ -313,7 +313,7 @@ var/mob/living/carbon/human/loud_mouth = user if(HAS_TRAIT(loud_mouth, TRAIT_MIMING)) // vow of silence prevents outloud noises return FALSE - if(!loud_mouth.getorganslot(ORGAN_SLOT_TONGUE)) + if(!loud_mouth.get_organ_slot(ORGAN_SLOT_TONGUE)) return FALSE if(only_forced_audio && intentional) diff --git a/code/datums/mutations/body.dm b/code/datums/mutations/body.dm index 9e76300a3f8..5a89da9cc20 100644 --- a/code/datums/mutations/body.dm +++ b/code/datums/mutations/body.dm @@ -490,17 +490,17 @@ if(new_stat != HARD_CRIT) return - var/list/organs = owner.getorganszone(BODY_ZONE_HEAD, TRUE) + var/list/organs = owner.get_organs_for_zone(BODY_ZONE_HEAD, TRUE) for(var/obj/item/organ/I in organs) qdel(I) explosion(owner, light_impact_range = 2, adminlog = TRUE, explosion_cause = src) for(var/mob/living/carbon/human/splashed in view(2, owner)) - var/obj/item/organ/internal/eyes/eyes = splashed.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = splashed.get_organ_slot(ORGAN_SLOT_EYES) if(eyes) to_chat(splashed, span_userdanger("You are blinded by a shower of blood!")) - eyes.applyOrganDamage(5) + eyes.apply_organ_damage(5) else to_chat(splashed, span_userdanger("You are knocked down by a wave of... blood?!")) splashed.Stun(2 SECONDS) @@ -523,7 +523,7 @@ . = ..() if(.)//cant add return TRUE - var/obj/item/organ/internal/brain/brain = owner.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = owner.get_organ_slot(ORGAN_SLOT_BRAIN) if(brain) brain.zone = BODY_ZONE_CHEST @@ -541,7 +541,7 @@ . = ..() if(.) return TRUE - var/obj/item/organ/internal/brain/brain = owner.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = owner.get_organ_slot(ORGAN_SLOT_BRAIN) if(brain) //so this doesn't instantly kill you. we could delete the brain, but it lets people cure brain issues they /really/ shouldn't be brain.zone = BODY_ZONE_HEAD UnregisterSignal(owner, COMSIG_ATTEMPT_CARBON_ATTACH_LIMB) diff --git a/code/datums/mutations/hulk.dm b/code/datums/mutations/hulk.dm index de0d97274a7..f0af77b8a43 100644 --- a/code/datums/mutations/hulk.dm +++ b/code/datums/mutations/hulk.dm @@ -116,7 +116,7 @@ return var/mob/living/carbon/possible_throwable = user.pulling - if(!possible_throwable.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL)) + if(!possible_throwable.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL)) return if(ishuman(possible_throwable)) diff --git a/code/datums/quirks/negative_quirks.dm b/code/datums/quirks/negative_quirks.dm index 7db1624a477..5eae774e45a 100644 --- a/code/datums/quirks/negative_quirks.dm +++ b/code/datums/quirks/negative_quirks.dm @@ -873,7 +873,7 @@ . = ..() quirk_holder.add_mob_memory(/datum/memory/key/quirk_smoker, protagonist = quirk_holder, preferred_brand = initial(drug_container_type.name)) // smoker lungs have 25% less health and healing - var/obj/item/organ/internal/lungs/smoker_lungs = quirk_holder.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/smoker_lungs = quirk_holder.get_organ_slot(ORGAN_SLOT_LUNGS) if (smoker_lungs && !(smoker_lungs.organ_flags & ORGAN_SYNTHETIC)) // robotic lungs aren't affected smoker_lungs.maxHealth = smoker_lungs.maxHealth * 0.75 smoker_lungs.healing_factor = smoker_lungs.healing_factor * 0.75 diff --git a/code/datums/quirks/neutral_quirks.dm b/code/datums/quirks/neutral_quirks.dm index eed306a45b9..7b6acb149b0 100644 --- a/code/datums/quirks/neutral_quirks.dm +++ b/code/datums/quirks/neutral_quirks.dm @@ -214,7 +214,7 @@ human_holder.eye_color_heterochromatic = TRUE human_holder.eye_color_right = color - var/obj/item/organ/internal/eyes/eyes_of_the_holder = quirk_holder.getorgan(/obj/item/organ/internal/eyes) + var/obj/item/organ/internal/eyes/eyes_of_the_holder = quirk_holder.get_organ_by_type(/obj/item/organ/internal/eyes) if(!eyes_of_the_holder) return diff --git a/code/datums/quirks/positive_quirks.dm b/code/datums/quirks/positive_quirks.dm index 30854202ea4..caa76f20c64 100644 --- a/code/datums/quirks/positive_quirks.dm +++ b/code/datums/quirks/positive_quirks.dm @@ -201,7 +201,7 @@ /datum/quirk/night_vision/proc/refresh_quirk_holder_eyes() var/mob/living/carbon/human/human_quirk_holder = quirk_holder - var/obj/item/organ/internal/eyes/eyes = human_quirk_holder.getorgan(/obj/item/organ/internal/eyes) + var/obj/item/organ/internal/eyes/eyes = human_quirk_holder.get_organ_by_type(/obj/item/organ/internal/eyes) if(!eyes || eyes.lighting_cutoff) return // We've either added or removed TRAIT_NIGHT_VISION before calling this proc. Just refresh the eyes. diff --git a/code/datums/saymode.dm b/code/datums/saymode.dm index b3855fe8070..ba6b8a5cbf6 100644 --- a/code/datums/saymode.dm +++ b/code/datums/saymode.dm @@ -64,7 +64,7 @@ /datum/saymode/vocalcords/handle_message(mob/living/user, message, datum/language/language) if(iscarbon(user)) var/mob/living/carbon/C = user - var/obj/item/organ/internal/vocal_cords/V = C.getorganslot(ORGAN_SLOT_VOICE) + var/obj/item/organ/internal/vocal_cords/V = C.get_organ_slot(ORGAN_SLOT_VOICE) if(V?.can_speak_with()) V.handle_speech(message) //message V.speak_with(message) //action diff --git a/code/datums/status_effects/debuffs/drunk.dm b/code/datums/status_effects/debuffs/drunk.dm index b6629c3e97c..adba6538026 100644 --- a/code/datums/status_effects/debuffs/drunk.dm +++ b/code/datums/status_effects/debuffs/drunk.dm @@ -136,7 +136,7 @@ // Handle the Ballmer Peak. // If our owner is a scientist (has the trait "TRAIT_BALLMER_SCIENTIST"), there's a 5% chance // that they'll say one of the special "ballmer message" lines, depending their drunk-ness level. - var/obj/item/organ/internal/liver/liver_organ = owner.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver_organ = owner.get_organ_slot(ORGAN_SLOT_LIVER) if(liver_organ && HAS_TRAIT(liver_organ, TRAIT_BALLMER_SCIENTIST) && prob(5)) if(drunk_value >= BALLMER_PEAK_LOW_END && drunk_value <= BALLMER_PEAK_HIGH_END) owner.say(pick_list_replacements(VISTA_FILE, "ballmer_good_msg"), forced = "ballmer") diff --git a/code/datums/status_effects/debuffs/strandling.dm b/code/datums/status_effects/debuffs/strandling.dm index f0850e5d75c..5465171df82 100644 --- a/code/datums/status_effects/debuffs/strandling.dm +++ b/code/datums/status_effects/debuffs/strandling.dm @@ -25,7 +25,7 @@ /datum/status_effect/strandling/proc/on_breathe(mob/living/source) SIGNAL_HANDLER - if(source.getorganslot(ORGAN_SLOT_BREATHING_TUBE)) + if(source.get_organ_slot(ORGAN_SLOT_BREATHING_TUBE)) return source.losebreath++ diff --git a/code/datums/wounds/slash.dm b/code/datums/wounds/slash.dm index 9f2a8dd127d..4cafaf177a1 100644 --- a/code/datums/wounds/slash.dm +++ b/code/datums/wounds/slash.dm @@ -180,7 +180,7 @@ if(user.is_mouth_covered()) to_chat(user, span_warning("Your mouth is covered, you can't lick [victim]'s wounds!")) return - if(!user.getorganslot(ORGAN_SLOT_TONGUE)) + if(!user.get_organ_slot(ORGAN_SLOT_TONGUE)) to_chat(user, span_warning("You can't lick wounds without a tongue!")) // f in chat return diff --git a/code/game/gamemodes/dynamic/dynamic_rulesets_midround.dm b/code/game/gamemodes/dynamic/dynamic_rulesets_midround.dm index 51f74053536..97b5087799b 100644 --- a/code/game/gamemodes/dynamic/dynamic_rulesets_midround.dm +++ b/code/game/gamemodes/dynamic/dynamic_rulesets_midround.dm @@ -807,7 +807,7 @@ candidates = living_players for(var/mob/living/carbon/human/candidate in candidates) if( \ - !candidate.getorgan(/obj/item/organ/internal/brain) \ + !candidate.get_organ_by_type(/obj/item/organ/internal/brain) \ || candidate.mind.has_antag_datum(/datum/antagonist/obsessed) \ || candidate.stat == DEAD \ || !(ROLE_OBSESSED in candidate.client?.prefs?.be_special) \ diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 6235e61e1ed..7121f4d54f3 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -317,7 +317,7 @@ GLOBAL_LIST_EMPTY(objectives) //SKYRAT EDIT ADDITION /datum/objective/protect/check_completion() var/obj/item/organ/internal/brain/brain_target if(human_check) - brain_target = target.current?.getorganslot(ORGAN_SLOT_BRAIN) + brain_target = target.current?.get_organ_slot(ORGAN_SLOT_BRAIN) //Protect will always suceed when someone suicides return !target || (target.current && HAS_TRAIT(target.current, TRAIT_SUICIDED)) || considered_alive(target, enforce_human = human_check) || (brain_target && HAS_TRAIT(brain_target, TRAIT_SUICIDED)) diff --git a/code/game/machinery/dna_infuser/dna_infuser.dm b/code/game/machinery/dna_infuser/dna_infuser.dm index 57fc5947914..51b4dc6da7d 100644 --- a/code/game/machinery/dna_infuser/dna_infuser.dm +++ b/code/game/machinery/dna_infuser/dna_infuser.dm @@ -149,7 +149,7 @@ var/list/obj/item/organ/potential_new_organs = infusing_into.output_organs.Copy() // Remove organ typepaths from the list if they're incompatible with target. for(var/obj/item/organ/new_organ as anything in infusing_into.output_organs) - var/obj/item/organ/old_organ = target.getorganslot(initial(new_organ.slot)) + var/obj/item/organ/old_organ = target.get_organ_slot(initial(new_organ.slot)) if(old_organ) if((old_organ.type != new_organ) && (old_organ.status != ORGAN_ROBOTIC)) continue // Old organ can be mutated! diff --git a/code/game/machinery/medical_kiosk.dm b/code/game/machinery/medical_kiosk.dm index db63da7ffaf..c4a11d9c8c6 100644 --- a/code/game/machinery/medical_kiosk.dm +++ b/code/game/machinery/medical_kiosk.dm @@ -229,7 +229,7 @@ var/trauma_status = "Patient is free of unique brain trauma." var/clone_loss = patient.getCloneLoss() - var/brain_loss = patient.getOrganLoss(ORGAN_SLOT_BRAIN) + var/brain_loss = patient.get_organ_loss(ORGAN_SLOT_BRAIN) var/brain_status = "Brain patterns normal." if(LAZYLEN(patient.get_traumas())) var/list/trauma_text = list() @@ -264,7 +264,7 @@ chemical_list += list(list("name" = reagent.name, "volume" = round(reagent.volume, 0.01))) if(reagent.overdosed) overdose_list += list(list("name" = reagent.name)) - var/obj/item/organ/internal/stomach/belly = patient.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/belly = patient.get_organ_slot(ORGAN_SLOT_STOMACH) if(belly?.reagents.reagent_list.len) //include the stomach contents if it exists for(var/bile in belly.reagents.reagent_list) var/datum/reagent/bit = bile diff --git a/code/game/machinery/scan_gate.dm b/code/game/machinery/scan_gate.dm index 271c4b31c8b..bd7c57c7711 100644 --- a/code/game/machinery/scan_gate.dm +++ b/code/game/machinery/scan_gate.dm @@ -203,7 +203,7 @@ if(is_species(H, scan_species)) beep = TRUE if(detect_species == SCANGATE_ZOMBIE) //Can detect dormant zombies - if(H.getorganslot(ORGAN_SLOT_ZOMBIE)) + if(H.get_organ_slot(ORGAN_SLOT_ZOMBIE)) beep = TRUE if(SCANGATE_GUNS) for(var/I in M.get_contents()) diff --git a/code/game/machinery/sleepers.dm b/code/game/machinery/sleepers.dm index f3e60a18c70..2ce3e36c4bc 100644 --- a/code/game/machinery/sleepers.dm +++ b/code/game/machinery/sleepers.dm @@ -226,7 +226,7 @@ data["occupant"]["toxLoss"] = mob_occupant.getToxLoss() data["occupant"]["fireLoss"] = mob_occupant.getFireLoss() data["occupant"]["cloneLoss"] = mob_occupant.getCloneLoss() - data["occupant"]["brainLoss"] = mob_occupant.getOrganLoss(ORGAN_SLOT_BRAIN) + data["occupant"]["brainLoss"] = mob_occupant.get_organ_loss(ORGAN_SLOT_BRAIN) data["occupant"]["reagents"] = list() if(mob_occupant.reagents && mob_occupant.reagents.reagent_list.len) for(var/datum/reagent/R in mob_occupant.reagents.reagent_list) diff --git a/code/game/objects/items/airlock_painter.dm b/code/game/objects/items/airlock_painter.dm index 0202ba58aef..7b24d055a1c 100644 --- a/code/game/objects/items/airlock_painter.dm +++ b/code/game/objects/items/airlock_painter.dm @@ -67,7 +67,7 @@ return TRUE /obj/item/airlock_painter/suicide_act(mob/living/user) - var/obj/item/organ/internal/lungs/L = user.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/L = user.get_organ_slot(ORGAN_SLOT_LUNGS) if(can_use(user) && L) user.visible_message(span_suicide("[user] is inhaling toner from [src]! It looks like [user.p_theyre()] trying to commit suicide!")) diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm index 9600ca02389..6bafc9319dc 100644 --- a/code/game/objects/items/cigs_lighters.dm +++ b/code/game/objects/items/cigs_lighters.dm @@ -336,7 +336,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM return reagents.expose(smoker, INGEST, min(to_smoke / reagents.total_volume, 1)) - var/obj/item/organ/internal/lungs/lungs = smoker.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/lungs = smoker.get_organ_slot(ORGAN_SLOT_LUNGS) if(lungs && !(lungs.organ_flags & ORGAN_SYNTHETIC)) var/smoker_resistance = HAS_TRAIT(smoker, TRAIT_SMOKER) ? 0.5 : 1 smoker.adjustOrganLoss(ORGAN_SLOT_LUNGS, lung_harm*smoker_resistance) diff --git a/code/game/objects/items/defib.dm b/code/game/objects/items/defib.dm index e21c68eb39c..e52e317e2c5 100644 --- a/code/game/objects/items/defib.dm +++ b/code/game/objects/items/defib.dm @@ -583,7 +583,7 @@ if(do_after(user, 3 SECONDS, H, extra_checks = CALLBACK(src, PROC_REF(is_wielded)))) //beginning to place the paddles on patient's chest to allow some time for people to move away to stop the process user.visible_message(span_notice("[user] places [src] on [H]'s chest."), span_warning("You place [src] on [H]'s chest.")) playsound(src, 'sound/machines/defib_charge.ogg', 75, FALSE) - var/obj/item/organ/internal/heart = H.getorgan(/obj/item/organ/internal/heart) + var/obj/item/organ/internal/heart = H.get_organ_by_type(/obj/item/organ/internal/heart) if(do_after(user, 2 SECONDS, H, extra_checks = CALLBACK(src, PROC_REF(is_wielded)))) //placed on chest and short delay to shock for dramatic effect, revive time is 5sec total if((!combat && !req_defib) || (req_defib && !defib.combat)) for(var/obj/item/clothing/C in H.get_equipped_items()) @@ -657,7 +657,7 @@ log_combat(user, H, "revived", defib) do_success() return - else if (!H.getorgan(/obj/item/organ/internal/heart)) + else if (!H.get_organ_by_type(/obj/item/organ/internal/heart)) user.visible_message(span_warning("[req_defib ? "[defib]" : "[src]"] buzzes: Patient's heart is missing. Operation aborted.")) playsound(src, 'sound/machines/defib_failed.ogg', 50, FALSE) else if(H.undergoing_cardiac_arrest()) diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index 1c906f1b13c..fc36009a57c 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -108,7 +108,7 @@ to_chat(user, span_warning("You're going to need to remove that [(M.head && M.head.flags_cover & HEADCOVERSEYES) ? "helmet" : (M.wear_mask && M.wear_mask.flags_cover & MASKCOVERSEYES) ? "mask": "glasses"] first!")) return - var/obj/item/organ/internal/eyes/E = M.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/E = M.get_organ_slot(ORGAN_SLOT_EYES) if(!E) to_chat(user, span_warning("[M] doesn't have any eyes!")) return @@ -645,7 +645,7 @@ if(!fuel) user.visible_message(span_suicide("[user] is trying to squirt [src]'s fluids into [user.p_their()] eyes... but it's empty!")) return SHAME - var/obj/item/organ/internal/eyes/eyes = user.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = user.get_organ_slot(ORGAN_SLOT_EYES) if(!eyes) user.visible_message(span_suicide("[user] is trying to squirt [src]'s fluids into [user.p_their()] eyes... but [user.p_they()] don't have any!")) return SHAME diff --git a/code/game/objects/items/devices/scanners/health_analyzer.dm b/code/game/objects/items/devices/scanners/health_analyzer.dm index f1b6719b4a2..8f88503d8fc 100644 --- a/code/game/objects/items/devices/scanners/health_analyzer.dm +++ b/code/game/objects/items/devices/scanners/health_analyzer.dm @@ -160,7 +160,7 @@ render_list += "Cellular damage level: [target.getCloneLoss()].\n" else render_list += "Subject appears to have [target.getCloneLoss() > 30 ? "severe" : "minor"] cellular damage.\n" - if (!target.getorganslot(ORGAN_SLOT_BRAIN)) // kept exclusively for soul purposes + if (!target.get_organ_slot(ORGAN_SLOT_BRAIN)) // kept exclusively for soul purposes render_list += "Subject lacks a brain.\n" if(iscarbon(target)) @@ -198,7 +198,7 @@ var/mob/living/carbon/carbontarget = target // Ear status - var/obj/item/organ/internal/ears/ears = carbontarget.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = carbontarget.get_organ_slot(ORGAN_SLOT_EARS) if(istype(ears)) if(HAS_TRAIT_FROM(carbontarget, TRAIT_DEAF, GENETIC_MUTATION)) render_list = "Subject is genetically deaf.\n" @@ -213,7 +213,7 @@ render_list += "Subject is [ears.damage > ears.maxHealth ? "permanently ": "temporarily "] deaf.\n" // Eye status - var/obj/item/organ/internal/eyes/eyes = carbontarget.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = carbontarget.get_organ_slot(ORGAN_SLOT_EYES) if(istype(eyes)) if(carbontarget.is_blind()) render_list += "Subject is blind.\n" @@ -271,21 +271,21 @@ var/datum/species/the_dudes_species = humantarget.dna.species var/missing_organs = list() - if(!humantarget.getorganslot(ORGAN_SLOT_BRAIN)) + if(!humantarget.get_organ_slot(ORGAN_SLOT_BRAIN)) missing_organs += "brain" - if(!HAS_TRAIT(humantarget, TRAIT_NOBLOOD) && !humantarget.getorganslot(ORGAN_SLOT_HEART)) + if(!HAS_TRAIT(humantarget, TRAIT_NOBLOOD) && !humantarget.get_organ_slot(ORGAN_SLOT_HEART)) missing_organs += "heart" - if(!(TRAIT_NOBREATH in the_dudes_species.inherent_traits) && !humantarget.getorganslot(ORGAN_SLOT_LUNGS)) + if(!(TRAIT_NOBREATH in the_dudes_species.inherent_traits) && !humantarget.get_organ_slot(ORGAN_SLOT_LUNGS)) missing_organs += "lungs" - if(!(TRAIT_NOMETABOLISM in the_dudes_species.inherent_traits) && !humantarget.getorganslot(ORGAN_SLOT_LIVER)) + if(!(TRAIT_NOMETABOLISM in the_dudes_species.inherent_traits) && !humantarget.get_organ_slot(ORGAN_SLOT_LIVER)) missing_organs += "liver" - if(the_dudes_species.mutantstomach && !humantarget.getorganslot(ORGAN_SLOT_STOMACH)) + if(the_dudes_species.mutantstomach && !humantarget.get_organ_slot(ORGAN_SLOT_STOMACH)) missing_organs += "stomach" - if(the_dudes_species.mutanttongue && !humantarget.getorganslot(ORGAN_SLOT_TONGUE)) + if(the_dudes_species.mutanttongue && !humantarget.get_organ_slot(ORGAN_SLOT_TONGUE)) missing_organs += "tongue" - if(!humantarget.getorganslot(ORGAN_SLOT_EARS)) + if(!humantarget.get_organ_slot(ORGAN_SLOT_EARS)) missing_organs += "ears" - if(!humantarget.getorganslot(ORGAN_SLOT_EYES)) + if(!humantarget.get_organ_slot(ORGAN_SLOT_EYES)) missing_organs += "eyes" if(length(missing_organs)) @@ -314,7 +314,7 @@ || targetspecies.mutantliver != initial(targetspecies.mutantliver) \ || targetspecies.mutantstomach != initial(targetspecies.mutantstomach) \ || targetspecies.mutantappendix != initial(targetspecies.mutantappendix) \ - || istype(humantarget.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS), /obj/item/organ/external/wings/functional) + || istype(humantarget.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS), /obj/item/organ/external/wings/functional) render_list += "Species: [targetspecies.name][mutant ? "-derived mutant" : ""]\n" render_list += "Core temperature: [round(humantarget.coretemperature-T0C,0.1)] °C ([round(humantarget.coretemperature*1.8-459.67,0.1)] °F)\n" @@ -413,7 +413,7 @@ render_block.Cut() // Stomach reagents - var/obj/item/organ/internal/stomach/belly = target.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/belly = target.get_organ_slot(ORGAN_SLOT_STOMACH) if(belly) if(belly.reagents.reagent_list.len) for(var/bile in belly.reagents.reagent_list) diff --git a/code/game/objects/items/dualsaber.dm b/code/game/objects/items/dualsaber.dm index 5f5126983db..ed29177851e 100644 --- a/code/game/objects/items/dualsaber.dm +++ b/code/game/objects/items/dualsaber.dm @@ -85,7 +85,7 @@ user.visible_message(span_suicide("[user] begins spinning way too fast! It looks like [user.p_theyre()] trying to commit suicide!")) var/obj/item/bodypart/head/myhead = user.get_bodypart(BODY_ZONE_HEAD)//stole from chainsaw code - var/obj/item/organ/internal/brain/B = user.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/B = user.get_organ_slot(ORGAN_SLOT_BRAIN) B.organ_flags &= ~ORGAN_VITAL //this cant possibly be a good idea var/randdir for(var/i in 1 to 24)//like a headless chicken! diff --git a/code/game/objects/items/food/donuts.dm b/code/game/objects/items/food/donuts.dm index 02c5b5575af..53bc493776a 100644 --- a/code/game/objects/items/food/donuts.dm +++ b/code/game/objects/items/food/donuts.dm @@ -41,7 +41,7 @@ ///Override for checkliked in edible component, because all cops LOVE donuts /obj/item/food/donut/proc/check_liked(fraction, mob/living/carbon/human/consumer) - var/obj/item/organ/internal/liver/liver = consumer.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = consumer.get_organ_slot(ORGAN_SLOT_LIVER) if(!HAS_TRAIT(consumer, TRAIT_AGEUSIA) && liver && HAS_TRAIT(liver, TRAIT_LAW_ENFORCEMENT_METABOLISM)) return FOOD_LIKED diff --git a/code/game/objects/items/hand_items.dm b/code/game/objects/items/hand_items.dm index 8d2cddc24a0..a0eb14deca3 100644 --- a/code/game/objects/items/hand_items.dm +++ b/code/game/objects/items/hand_items.dm @@ -617,8 +617,8 @@ if(!iscarbon(target)) return var/mob/living/carbon/heartbreakee = target - var/obj/item/organ/internal/heart/dont_go_breakin_my_heart = heartbreakee.getorganslot(ORGAN_SLOT_HEART) - dont_go_breakin_my_heart.applyOrganDamage(999) + var/obj/item/organ/internal/heart/dont_go_breakin_my_heart = heartbreakee.get_organ_slot(ORGAN_SLOT_HEART) + dont_go_breakin_my_heart.apply_organ_damage(999) /obj/projectile/kiss/french diff --git a/code/game/objects/items/melee/baton.dm b/code/game/objects/items/melee/baton.dm index 7daa85864a5..aea41f904fa 100644 --- a/code/game/objects/items/melee/baton.dm +++ b/code/game/objects/items/melee/baton.dm @@ -322,7 +322,7 @@ /obj/item/melee/baton/telescopic/suicide_act(mob/living/user) var/mob/living/carbon/human/human_user = user - var/obj/item/organ/internal/brain/our_brain = human_user.getorgan(/obj/item/organ/internal/brain) + var/obj/item/organ/internal/brain/our_brain = human_user.get_organ_by_type(/obj/item/organ/internal/brain) user.visible_message(span_suicide("[user] stuffs [src] up [user.p_their()] nose and presses the 'extend' button! It looks like [user.p_theyre()] trying to clear [user.p_their()] mind.")) if(active) diff --git a/code/game/objects/structures/aliens.dm b/code/game/objects/structures/aliens.dm index d0df7d4ce9f..12f08258e94 100644 --- a/code/game/objects/structures/aliens.dm +++ b/code/game/objects/structures/aliens.dm @@ -378,7 +378,7 @@ . = ..() if(.) return - if(user.getorgan(/obj/item/organ/internal/alien/plasmavessel)) + if(user.get_organ_by_type(/obj/item/organ/internal/alien/plasmavessel)) switch(status) if(BURSTING) to_chat(user, span_notice("The child is hatching out.")) @@ -446,7 +446,7 @@ return var/mob/living/carbon/C = AM - if(C.stat == CONSCIOUS && C.getorgan(/obj/item/organ/internal/body_egg/alien_embryo)) + if(C.stat == CONSCIOUS && C.get_organ_by_type(/obj/item/organ/internal/body_egg/alien_embryo)) return Burst(kill=FALSE) diff --git a/code/game/objects/structures/beds_chairs/alien_nest.dm b/code/game/objects/structures/beds_chairs/alien_nest.dm index 66d6bc8727a..59346a79453 100644 --- a/code/game/objects/structures/beds_chairs/alien_nest.dm +++ b/code/game/objects/structures/beds_chairs/alien_nest.dm @@ -21,7 +21,7 @@ for(var/buck in buckled_mobs) //breaking a nest releases all the buckled mobs, because the nest isn't holding them down anymore var/mob/living/M = buck - if(user.getorgan(/obj/item/organ/internal/alien/plasmavessel)) + if(user.get_organ_by_type(/obj/item/organ/internal/alien/plasmavessel)) unbuckle_mob(M) add_fingerprint(user) return @@ -52,9 +52,9 @@ if ( !ismob(M) || (get_dist(src, user) > 1) || (M.loc != src.loc) || user.incapacitated() || M.buckled ) return - if(M.getorgan(/obj/item/organ/internal/alien/plasmavessel)) + if(M.get_organ_by_type(/obj/item/organ/internal/alien/plasmavessel)) return - if(!user.getorgan(/obj/item/organ/internal/alien/plasmavessel)) + if(!user.get_organ_by_type(/obj/item/organ/internal/alien/plasmavessel)) return if(has_buckled_mobs()) diff --git a/code/game/objects/structures/petrified_statue.dm b/code/game/objects/structures/petrified_statue.dm index ff1edcc8377..fa724474f30 100644 --- a/code/game/objects/structures/petrified_statue.dm +++ b/code/game/objects/structures/petrified_statue.dm @@ -73,7 +73,7 @@ petrified_mob.investigate_log("has been dusted by statue deconstruction.", INVESTIGATE_DEATHS) if(iscarbon(petrified_mob)) var/mob/living/carbon/petrified_carbon = petrified_mob - var/obj/item/organ/internal/brain/carbon_brain = petrified_carbon.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/carbon_brain = petrified_carbon.get_organ_slot(ORGAN_SLOT_BRAIN) carbon_brain.Remove(petrified_carbon) carbon_brain.forceMove(get_turf(src)) carbon_brain.name = "petrified [carbon_brain.name]" diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index ab37a7e2e63..1ede2d5d636 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -657,7 +657,7 @@ GLOBAL_LIST_EMPTY(station_turfs) clear_reagents_to_vomit_pool(M, V, purge_ratio) /proc/clear_reagents_to_vomit_pool(mob/living/carbon/M, obj/effect/decal/cleanable/vomit/V, purge_ratio = 0.1) - var/obj/item/organ/internal/stomach/belly = M.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/belly = M.get_organ_slot(ORGAN_SLOT_STOMACH) if(!belly?.reagents.total_volume) return var/chemicals_lost = belly.reagents.total_volume * purge_ratio diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 03fd019690a..d3ff50e8285 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -861,7 +861,7 @@ status = "Dead" health_description = "Status: [status]" health_description += "
Brute: [lifer.getBruteLoss()] - Burn: [lifer.getFireLoss()] - Toxin: [lifer.getToxLoss()] - Suffocation: [lifer.getOxyLoss()]" - health_description += "
Clone: [lifer.getCloneLoss()] - Brain: [lifer.getOrganLoss(ORGAN_SLOT_BRAIN)] - Stamina: [lifer.getStaminaLoss()]" + health_description += "
Clone: [lifer.getCloneLoss()] - Brain: [lifer.get_organ_loss(ORGAN_SLOT_BRAIN)] - Stamina: [lifer.getStaminaLoss()]" else health_description = "This mob type has no health to speak of." diff --git a/code/modules/admin/verbs/selectequipment.dm b/code/modules/admin/verbs/selectequipment.dm index 01cd7f13c20..12dbaa496a4 100644 --- a/code/modules/admin/verbs/selectequipment.dm +++ b/code/modules/admin/verbs/selectequipment.dm @@ -216,7 +216,7 @@ for(var/obj/item/item in human_target.get_equipped_items(delete_pocket)) qdel(item) - var/obj/item/organ/internal/brain/human_brain = human_target.getorganslot(BRAIN) + var/obj/item/organ/internal/brain/human_brain = human_target.get_organ_slot(BRAIN) human_brain.destroy_all_skillchips() // get rid of skillchips to prevent runtimes if(dresscode != "Naked") diff --git a/code/modules/admin/view_variables/topic.dm b/code/modules/admin/view_variables/topic.dm index 4a7cbb621d3..e805d55a8af 100644 --- a/code/modules/admin/view_variables/topic.dm +++ b/code/modules/admin/view_variables/topic.dm @@ -95,7 +95,7 @@ newamt = L.getOxyLoss() if("brain") L.adjustOrganLoss(ORGAN_SLOT_BRAIN, amount) - newamt = L.getOrganLoss(ORGAN_SLOT_BRAIN) + newamt = L.get_organ_loss(ORGAN_SLOT_BRAIN) if("clone") L.adjustCloneLoss(amount, forced = TRUE) newamt = L.getCloneLoss() diff --git a/code/modules/antagonists/abductor/abductor.dm b/code/modules/antagonists/abductor/abductor.dm index 1bcb7160e1f..432bc1cd7b9 100644 --- a/code/modules/antagonists/abductor/abductor.dm +++ b/code/modules/antagonists/abductor/abductor.dm @@ -96,7 +96,7 @@ //Equip var/mob/living/carbon/human/H = owner.current H.set_species(/datum/species/abductor) - var/obj/item/organ/internal/tongue/abductor/T = H.getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/abductor/T = H.get_organ_slot(ORGAN_SLOT_TONGUE) T.mothership = "[team.name]" H.real_name = "[team.name] [sub_role]" diff --git a/code/modules/antagonists/abductor/equipment/abduction_gear.dm b/code/modules/antagonists/abductor/equipment/abduction_gear.dm index f4e48909ac8..6ef439eba29 100644 --- a/code/modules/antagonists/abductor/equipment/abduction_gear.dm +++ b/code/modules/antagonists/abductor/equipment/abduction_gear.dm @@ -339,7 +339,7 @@ /obj/item/abductor/mind_device/proc/mind_control(atom/target, mob/living/user) if(iscarbon(target)) var/mob/living/carbon/C = target - var/obj/item/organ/internal/heart/gland/G = C.getorganslot("heart") + var/obj/item/organ/internal/heart/gland/G = C.get_organ_slot("heart") if(!istype(G)) to_chat(user, span_warning("Your target does not have an experimental gland!")) return @@ -616,7 +616,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} if(temp) helptext = span_warning("Experimental gland detected!") else - if (L.getorganslot(ORGAN_SLOT_HEART)) + if (L.get_organ_slot(ORGAN_SLOT_HEART)) helptext = span_notice("Subject suitable for experiments.") else helptext = span_warning("Subject unsuitable for experiments.") diff --git a/code/modules/antagonists/abductor/equipment/glands/heal.dm b/code/modules/antagonists/abductor/equipment/glands/heal.dm index f50ccbba894..79268cdf5ca 100644 --- a/code/modules/antagonists/abductor/equipment/glands/heal.dm +++ b/code/modules/antagonists/abductor/equipment/glands/heal.dm @@ -21,27 +21,27 @@ reject_cyberimp(organ) return - var/obj/item/organ/internal/appendix/appendix = owner.getorganslot(ORGAN_SLOT_APPENDIX) + var/obj/item/organ/internal/appendix/appendix = owner.get_organ_slot(ORGAN_SLOT_APPENDIX) if((!appendix && !HAS_TRAIT(owner, TRAIT_NOHUNGER)) || (appendix && ((appendix.organ_flags & ORGAN_FAILING) || (appendix.organ_flags & ORGAN_SYNTHETIC)))) replace_appendix(appendix) return - var/obj/item/organ/internal/liver/liver = owner.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = owner.get_organ_slot(ORGAN_SLOT_LIVER) if((!liver && !HAS_TRAIT(owner, TRAIT_NOMETABOLISM)) || (liver && ((liver.damage > liver.high_threshold) || (liver.organ_flags & ORGAN_SYNTHETIC)))) replace_liver(liver) return - var/obj/item/organ/internal/lungs/lungs = owner.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/lungs = owner.get_organ_slot(ORGAN_SLOT_LUNGS) if((!lungs && !HAS_TRAIT(owner, TRAIT_NOBREATH)) || (lungs && ((lungs.damage > lungs.high_threshold) || (lungs.organ_flags & ORGAN_SYNTHETIC)))) replace_lungs(lungs) return - var/obj/item/organ/internal/stomach/stomach = owner.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/stomach = owner.get_organ_slot(ORGAN_SLOT_STOMACH) if((!stomach && !HAS_TRAIT(owner, TRAIT_NOHUNGER)) || (stomach && ((stomach.damage > stomach.high_threshold) || (stomach.organ_flags & ORGAN_SYNTHETIC)))) replace_stomach(stomach) return - var/obj/item/organ/internal/eyes/eyes = owner.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = owner.get_organ_slot(ORGAN_SLOT_EYES) if(!eyes || (eyes && ((eyes.damage > eyes.low_threshold) || (eyes.organ_flags & ORGAN_SYNTHETIC)))) replace_eyes(eyes) return diff --git a/code/modules/antagonists/changeling/changeling.dm b/code/modules/antagonists/changeling/changeling.dm index 4fc19546b7c..f00f5b14ef4 100644 --- a/code/modules/antagonists/changeling/changeling.dm +++ b/code/modules/antagonists/changeling/changeling.dm @@ -178,7 +178,7 @@ RegisterSignal(living_mob, COMSIG_MOB_HUD_CREATED, PROC_REF(on_hud_created)) // Brains are optional for lings. - var/obj/item/organ/internal/brain/our_ling_brain = living_mob.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/our_ling_brain = living_mob.get_organ_slot(ORGAN_SLOT_BRAIN) if(our_ling_brain) our_ling_brain.organ_flags &= ~ORGAN_VITAL our_ling_brain.decoy_override = TRUE @@ -232,7 +232,7 @@ if(!iscarbon(owner.current)) return var/mob/living/carbon/carbon_owner = owner.current - var/obj/item/organ/internal/brain/not_ling_brain = carbon_owner.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/not_ling_brain = carbon_owner.get_organ_slot(ORGAN_SLOT_BRAIN) if(not_ling_brain && (not_ling_brain.decoy_override != initial(not_ling_brain.decoy_override))) not_ling_brain.organ_flags |= ORGAN_VITAL not_ling_brain.decoy_override = FALSE diff --git a/code/modules/antagonists/changeling/powers/augmented_eyesight.dm b/code/modules/antagonists/changeling/powers/augmented_eyesight.dm index afc4f441c63..de10b27413a 100644 --- a/code/modules/antagonists/changeling/powers/augmented_eyesight.dm +++ b/code/modules/antagonists/changeling/powers/augmented_eyesight.dm @@ -12,7 +12,7 @@ /datum/action/changeling/augmented_eyesight/on_purchase(mob/user) //The ability starts inactive, so we should be protected from flashes. ..() - var/obj/item/organ/internal/eyes/E = user.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/E = user.get_organ_slot(ORGAN_SLOT_EYES) if (E) E.flash_protect = FLASH_PROTECTION_WELDER //Adjust the user's eyes' flash protection to_chat(user, "We adjust our eyes to protect them from bright lights.") @@ -23,7 +23,7 @@ if(!istype(user)) return ..() - var/obj/item/organ/internal/eyes/E = user.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/E = user.get_organ_slot(ORGAN_SLOT_EYES) if(E) if(!active) E.sight_flags |= SEE_MOBS | SEE_OBJS | SEE_TURFS //Add sight flags to the user's eyes @@ -42,7 +42,7 @@ /datum/action/changeling/augmented_eyesight/Remove(mob/user) //Get rid of x-ray vision and flash protection when the user refunds this ability - var/obj/item/organ/internal/eyes/E = user.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/E = user.get_organ_slot(ORGAN_SLOT_EYES) if(E) if (active) E.sight_flags ^= SEE_MOBS | SEE_OBJS | SEE_TURFS diff --git a/code/modules/antagonists/changeling/powers/headcrab.dm b/code/modules/antagonists/changeling/powers/headcrab.dm index 1b06062d0d9..45ab93e69f9 100644 --- a/code/modules/antagonists/changeling/powers/headcrab.dm +++ b/code/modules/antagonists/changeling/powers/headcrab.dm @@ -15,11 +15,11 @@ ..() var/datum/mind/stored_mind = user.mind - var/list/organs = user.getorganszone(BODY_ZONE_HEAD, TRUE) + var/list/organs = user.get_organs_for_zone(BODY_ZONE_HEAD, TRUE) explosion(user, light_impact_range = 2, adminlog = TRUE, explosion_cause = src) for(var/mob/living/carbon/human/blinded_human in range(2, user)) - var/obj/item/organ/internal/eyes/eyes = blinded_human.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = blinded_human.get_organ_slot(ORGAN_SLOT_EYES) if(!eyes || blinded_human.is_blind()) continue to_chat(blinded_human, span_userdanger("You are blinded by a shower of blood!")) diff --git a/code/modules/antagonists/changeling/powers/panacea.dm b/code/modules/antagonists/changeling/powers/panacea.dm index cf6a848d771..683fe7e16b6 100644 --- a/code/modules/antagonists/changeling/powers/panacea.dm +++ b/code/modules/antagonists/changeling/powers/panacea.dm @@ -11,12 +11,11 @@ /datum/action/changeling/panacea/sting_action(mob/user) to_chat(user, span_notice("We cleanse impurities from our form.")) ..() - // SKYRAT EDIT ADDITION: BORER EGG var/list/bad_organs = list( - user.getorgan(/obj/item/organ/internal/body_egg), - user.getorgan(/obj/item/organ/internal/zombie_infection), - user.getorgan(/obj/item/organ/internal/empowered_borer_egg)) - // SKYRAT EDIT END + user.get_organ_by_type(/obj/item/organ/internal/empowered_borer_egg), // SKYRAT EDIT ADDITION + user.get_organ_by_type(/obj/item/organ/internal/body_egg), + user.get_organ_by_type(/obj/item/organ/internal/zombie_infection)) + try_to_mutant_cure(user) //SKYRAT EDIT ADDITION diff --git a/code/modules/antagonists/changeling/powers/regenerate.dm b/code/modules/antagonists/changeling/powers/regenerate.dm index d728b485660..3716a0b40cb 100644 --- a/code/modules/antagonists/changeling/powers/regenerate.dm +++ b/code/modules/antagonists/changeling/powers/regenerate.dm @@ -29,7 +29,7 @@ // Make sure the brain's nonvital // Shouldn't be necessary but you can never be certain with lingcode - var/obj/item/organ/internal/brain/replacement_brain = user.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/replacement_brain = user.get_organ_slot(ORGAN_SLOT_BRAIN) replacement_brain.organ_flags &= ~ORGAN_VITAL replacement_brain.decoy_override = TRUE diff --git a/code/modules/antagonists/changeling/powers/shriek.dm b/code/modules/antagonists/changeling/powers/shriek.dm index 9e6e86f8956..badd18f19f0 100644 --- a/code/modules/antagonists/changeling/powers/shriek.dm +++ b/code/modules/antagonists/changeling/powers/shriek.dm @@ -17,7 +17,7 @@ if(iscarbon(M)) var/mob/living/carbon/C = M if(!C.mind || !C.mind.has_antag_datum(/datum/antagonist/changeling)) - var/obj/item/organ/internal/ears/ears = C.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = C.get_organ_slot(ORGAN_SLOT_EARS) if(ears) ears.adjustEarDamage(0, 30) C.adjust_confusion(25 SECONDS) diff --git a/code/modules/antagonists/changeling/powers/tiny_prick.dm b/code/modules/antagonists/changeling/powers/tiny_prick.dm index 2bc4f34387c..d99b3e91c20 100644 --- a/code/modules/antagonists/changeling/powers/tiny_prick.dm +++ b/code/modules/antagonists/changeling/powers/tiny_prick.dm @@ -206,14 +206,14 @@ dna_cost = 1 /datum/action/changeling/sting/blind/sting_action(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/eyes/eyes = target.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = target.get_organ_slot(ORGAN_SLOT_EYES) if(!eyes) user.balloon_alert(user, "no eyes!") return FALSE log_combat(user, target, "stung", "blind sting") to_chat(target, span_danger("Your eyes burn horrifically!")) - eyes.applyOrganDamage(eyes.maxHealth * 0.8) + eyes.apply_organ_damage(eyes.maxHealth * 0.8) target.adjust_temp_blindness(40 SECONDS) target.set_eye_blur_if_lower(80 SECONDS) return TRUE diff --git a/code/modules/antagonists/clown_ops/clownop.dm b/code/modules/antagonists/clown_ops/clownop.dm index 8b308970911..5353875491e 100644 --- a/code/modules/antagonists/clown_ops/clownop.dm +++ b/code/modules/antagonists/clown_ops/clownop.dm @@ -29,7 +29,7 @@ /datum/antagonist/nukeop/clownop/equip_op() . = ..() var/mob/living/current_mob = owner.current - var/obj/item/organ/internal/liver/liver = current_mob.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = current_mob.get_organ_slot(ORGAN_SLOT_LIVER) if(liver) ADD_TRAIT(liver, TRAIT_COMEDY_METABOLISM, CLOWNOP_TRAIT) @@ -61,7 +61,7 @@ /datum/antagonist/nukeop/leader/clownop/equip_op() . = ..() var/mob/living/L = owner.current - var/obj/item/organ/internal/liver/liver = L.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = L.get_organ_slot(ORGAN_SLOT_LIVER) if(liver) ADD_TRAIT(liver, TRAIT_COMEDY_METABOLISM, CLOWNOP_TRAIT) diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index 91772c6319e..b51ad6b84f8 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -931,7 +931,7 @@ structure_check() searches for nearby cultist structures required for the invoca no_brain = TRUE . = ..() -/mob/living/carbon/human/cult_ghost/getorganszone(zone, include_children) +/mob/living/carbon/human/cult_ghost/get_organs_for_zone(zone, include_children) . = ..() for(var/obj/item/organ/internal/brain/B in .) //they're not that smart, really . -= B diff --git a/code/modules/antagonists/heretic/heretic_antag.dm b/code/modules/antagonists/heretic/heretic_antag.dm index 73982595d2a..81e448d3b71 100644 --- a/code/modules/antagonists/heretic/heretic_antag.dm +++ b/code/modules/antagonists/heretic/heretic_antag.dm @@ -676,7 +676,7 @@ * and returns HERETIC_HAS_LIVING_HEART if they have a living heart */ /datum/antagonist/heretic/proc/has_living_heart() - var/obj/item/organ/our_living_heart = owner.current?.getorganslot(living_heart_organ_slot) + var/obj/item/organ/our_living_heart = owner.current?.get_organ_slot(living_heart_organ_slot) if(!our_living_heart) return HERETIC_NO_HEART_ORGAN diff --git a/code/modules/antagonists/heretic/knowledge/ash_lore.dm b/code/modules/antagonists/heretic/knowledge/ash_lore.dm index 215340945fb..3f53a90cc3e 100644 --- a/code/modules/antagonists/heretic/knowledge/ash_lore.dm +++ b/code/modules/antagonists/heretic/knowledge/ash_lore.dm @@ -61,7 +61,7 @@ if(target.is_blind()) return - if(!target.getorganslot(ORGAN_SLOT_EYES)) + if(!target.get_organ_slot(ORGAN_SLOT_EYES)) return to_chat(target, span_danger("A bright green light burns your eyes horrifically!")) diff --git a/code/modules/antagonists/heretic/knowledge/starting_lore.dm b/code/modules/antagonists/heretic/knowledge/starting_lore.dm index deb2deacb52..2e6b8b22772 100644 --- a/code/modules/antagonists/heretic/knowledge/starting_lore.dm +++ b/code/modules/antagonists/heretic/knowledge/starting_lore.dm @@ -54,7 +54,7 @@ GLOBAL_LIST_INIT(heretic_start_knowledge, initialize_starting_knowledge()) /datum/heretic_knowledge/living_heart/on_research(mob/user, datum/antagonist/heretic/our_heretic) . = ..() - var/obj/item/organ/where_to_put_our_heart = user.getorganslot(our_heretic.living_heart_organ_slot) + var/obj/item/organ/where_to_put_our_heart = user.get_organ_slot(our_heretic.living_heart_organ_slot) // Our heart slot is not valid to put a heart if(!is_valid_heart(where_to_put_our_heart)) where_to_put_our_heart = null @@ -68,7 +68,7 @@ GLOBAL_LIST_INIT(heretic_start_knowledge, initialize_starting_knowledge()) ) for(var/backup_slot in backup_organs) - var/obj/item/organ/look_for_backup = user.getorganslot(backup_slot) + var/obj/item/organ/look_for_backup = user.get_organ_slot(backup_slot) // This backup slot is not a valid slot to put a heart if(!is_valid_heart(look_for_backup)) continue @@ -93,7 +93,7 @@ GLOBAL_LIST_INIT(heretic_start_knowledge, initialize_starting_knowledge()) to_chat(user, span_boldnotice("You don't have a heart, or any chest organs for that matter. You didn't get a Living Heart because of it.")) /datum/heretic_knowledge/living_heart/on_lose(mob/user, datum/antagonist/heretic/our_heretic) - var/obj/item/organ/our_living_heart = user.getorganslot(our_heretic.living_heart_organ_slot) + var/obj/item/organ/our_living_heart = user.get_organ_slot(our_heretic.living_heart_organ_slot) if(our_living_heart) qdel(our_living_heart.GetComponent(/datum/component/living_heart)) @@ -105,7 +105,7 @@ GLOBAL_LIST_INIT(heretic_start_knowledge, initialize_starting_knowledge()) /datum/heretic_knowledge/living_heart/recipe_snowflake_check(mob/living/user, list/atoms, list/selected_atoms, turf/loc) var/datum/antagonist/heretic/our_heretic = IS_HERETIC(user) - var/obj/item/organ/our_living_heart = user.getorganslot(our_heretic.living_heart_organ_slot) + var/obj/item/organ/our_living_heart = user.get_organ_slot(our_heretic.living_heart_organ_slot) // Obviously you need a heart in your chest to do a ritual on your... heart if(!our_living_heart) loc.balloon_alert(user, "ritual failed, you have no [our_heretic.living_heart_organ_slot]!") // "you have no heart!" @@ -143,7 +143,7 @@ GLOBAL_LIST_INIT(heretic_start_knowledge, initialize_starting_knowledge()) /datum/heretic_knowledge/living_heart/on_finished_recipe(mob/living/user, list/selected_atoms, turf/loc) var/datum/antagonist/heretic/our_heretic = IS_HERETIC(user) - var/obj/item/organ/our_new_heart = user.getorganslot(our_heretic.living_heart_organ_slot) + var/obj/item/organ/our_new_heart = user.get_organ_slot(our_heretic.living_heart_organ_slot) // Our heart is robotic or synthetic - we need to replace it, and we fortunately should have one by here if(!is_valid_heart(our_new_heart)) diff --git a/code/modules/antagonists/heretic/magic/flesh_surgery.dm b/code/modules/antagonists/heretic/magic/flesh_surgery.dm index 0674a75fc53..0e51c651318 100644 --- a/code/modules/antagonists/heretic/magic/flesh_surgery.dm +++ b/code/modules/antagonists/heretic/magic/flesh_surgery.dm @@ -92,7 +92,7 @@ var/organ_hp_to_heal = to_heal.maxHealth * organ_percent_healing if(to_heal.damage < organ_hp_to_heal) - to_heal.setOrganDamage(organ_hp_to_heal) + to_heal.set_organ_damage(organ_hp_to_heal) to_heal.balloon_alert(caster, "organ healed") playsound(to_heal, 'sound/magic/staff_healing.ogg', 30) new /obj/effect/temp_visual/cult/sparks(get_turf(to_heal)) diff --git a/code/modules/antagonists/obsessed/obsessed.dm b/code/modules/antagonists/obsessed/obsessed.dm index 96eeceb3111..585867d5767 100644 --- a/code/modules/antagonists/obsessed/obsessed.dm +++ b/code/modules/antagonists/obsessed/obsessed.dm @@ -17,7 +17,7 @@ if(!istype(C)) to_chat(admin, "[roundend_category] come from a brain trauma, so they need to at least be a carbon!") return - if(!C.getorgan(/obj/item/organ/internal/brain)) // If only I had a brain + if(!C.get_organ_by_type(/obj/item/organ/internal/brain)) // If only I had a brain to_chat(admin, "[roundend_category] come from a brain trauma, so they need to HAVE A BRAIN.") return message_admins("[key_name_admin(admin)] made [key_name_admin(new_owner)] into [name].") diff --git a/code/modules/antagonists/revolution/revolution.dm b/code/modules/antagonists/revolution/revolution.dm index 981cf703ef8..6cca836bd4b 100644 --- a/code/modules/antagonists/revolution/revolution.dm +++ b/code/modules/antagonists/revolution/revolution.dm @@ -179,7 +179,7 @@ /datum/antagonist/rev/head/on_removal() if(give_hud) var/mob/living/carbon/C = owner.current - var/obj/item/organ/internal/cyberimp/eyes/hud/security/syndicate/S = C.getorganslot(ORGAN_SLOT_HUD) + var/obj/item/organ/internal/cyberimp/eyes/hud/security/syndicate/S = C.get_organ_slot(ORGAN_SLOT_HUD) if(S) S.Remove(C) return ..() diff --git a/code/modules/antagonists/traitor/objectives/eyesnatching.dm b/code/modules/antagonists/traitor/objectives/eyesnatching.dm index b637064139d..d4558420b1d 100644 --- a/code/modules/antagonists/traitor/objectives/eyesnatching.dm +++ b/code/modules/antagonists/traitor/objectives/eyesnatching.dm @@ -81,7 +81,7 @@ continue var/mob/living/carbon/human/targets_current = possible_target.current - if(!targets_current.getorgan(/obj/item/organ/internal/eyes)) + if(!targets_current.get_organ_by_type(/obj/item/organ/internal/eyes)) continue possible_targets += possible_target @@ -159,7 +159,7 @@ if(used || !istype(target) || !target.Adjacent(user)) //Works only once, no TK use return ..() - var/obj/item/organ/internal/eyes/eyeballies = target.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyeballies = target.get_organ_slot(ORGAN_SLOT_EYES) var/obj/item/bodypart/head/head = target.get_bodypart(BODY_ZONE_HEAD) if(!head || !eyeballies || target.is_eyes_covered()) @@ -185,7 +185,7 @@ span_userdanger("Something penetrates your skull, horribly mutilating your eyes! Holy fuck!"), span_hear("You hear a sickening sound of metal piercing flesh!") ) - eyeballies.applyOrganDamage(eyeballies.maxHealth) + eyeballies.apply_organ_damage(eyeballies.maxHealth) target.emote("scream") playsound(target, "sound/effects/wounds/crackandbleed.ogg", 100) log_combat(user, target, "cracked the skull of (eye snatching)", src) @@ -224,7 +224,7 @@ if(eyeballies.owner != target) return FALSE - var/obj/item/organ/internal/eyes/eyes = target.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = target.get_organ_slot(ORGAN_SLOT_EYES) //got different eyes or doesn't own the head... somehow if(head.owner != target || eyes != eyeballies) return FALSE diff --git a/code/modules/antagonists/traitor/objectives/sleeper_protocol.dm b/code/modules/antagonists/traitor/objectives/sleeper_protocol.dm index 0ef8c443696..b155c6c5327 100644 --- a/code/modules/antagonists/traitor/objectives/sleeper_protocol.dm +++ b/code/modules/antagonists/traitor/objectives/sleeper_protocol.dm @@ -88,7 +88,7 @@ . = ..() if(!.) return FALSE - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!target_brain) return FALSE return TRUE diff --git a/code/modules/client/preferences/species.dm b/code/modules/client/preferences/species.dm index 9d60050a096..f35f242320b 100644 --- a/code/modules/client/preferences/species.dm +++ b/code/modules/client/preferences/species.dm @@ -38,7 +38,7 @@ target.dna.update_body_size() for(var/organ_key in list(ORGAN_SLOT_VAGINA, ORGAN_SLOT_PENIS, ORGAN_SLOT_BREASTS, ORGAN_SLOT_ANUS)) - var/obj/item/organ/external/genital/gent = target.getorganslot(organ_key) + var/obj/item/organ/external/genital/gent = target.get_organ_slot(organ_key) if(gent) gent.aroused = prefs.arousal_preview gent.update_sprite_suffix() diff --git a/code/modules/client/preferences/species_features/basic.dm b/code/modules/client/preferences/species_features/basic.dm index 878adee82a1..257269070bc 100644 --- a/code/modules/client/preferences/species_features/basic.dm +++ b/code/modules/client/preferences/species_features/basic.dm @@ -34,7 +34,7 @@ if(!hetero) target.eye_color_right = value - var/obj/item/organ/internal/eyes/eyes_organ = target.getorgan(/obj/item/organ/internal/eyes) + var/obj/item/organ/internal/eyes/eyes_organ = target.get_organ_by_type(/obj/item/organ/internal/eyes) if (!eyes_organ || !istype(eyes_organ)) return diff --git a/code/modules/clothing/glasses/_glasses.dm b/code/modules/clothing/glasses/_glasses.dm index c43e2475626..ee210d5a980 100644 --- a/code/modules/clothing/glasses/_glasses.dm +++ b/code/modules/clothing/glasses/_glasses.dm @@ -63,14 +63,14 @@ /obj/item/clothing/glasses/proc/thermal_overload() if(ishuman(src.loc)) var/mob/living/carbon/human/H = src.loc - var/obj/item/organ/internal/eyes/eyes = H.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = H.get_organ_slot(ORGAN_SLOT_EYES) if(!H.is_blind()) if(H.glasses == src) to_chat(H, span_danger("[src] overloads and blinds you!")) H.flash_act(visual = 1) H.adjust_temp_blindness(6 SECONDS) H.set_eye_blur_if_lower(10 SECONDS) - eyes.applyOrganDamage(5) + eyes.apply_organ_damage(5) /obj/item/clothing/glasses/AltClick(mob/user) . = ..() //SKYRAT EDIT ADDITION diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index 2f5943f7908..b697400bdb9 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -45,7 +45,7 @@ return SHAME var/mob/living/living_user = user user.visible_message(span_suicide("[user] looks through [src] and looks overwhelmed with the information! It looks like [user.p_theyre()] trying to commit suicide!")) - if(living_user.getOrganLoss(ORGAN_SLOT_BRAIN) >= BRAIN_DAMAGE_SEVERE) + if(living_user.get_organ_loss(ORGAN_SLOT_BRAIN) >= BRAIN_DAMAGE_SEVERE) var/mob/thing = pick((/mob in view()) - user) if(thing) user.say("VALID MAN IS WANTER, ARREST HE!!") diff --git a/code/modules/clothing/head/tinfoilhat.dm b/code/modules/clothing/head/tinfoilhat.dm index 73d8803c043..772219a6d1c 100644 --- a/code/modules/clothing/head/tinfoilhat.dm +++ b/code/modules/clothing/head/tinfoilhat.dm @@ -105,7 +105,7 @@ ";WE REPEAT OUR LIVES DAILY WITHOUT FURTHER QUESTIONS!!" ) user.say(pick(conspiracy_line), forced=type) - var/obj/item/organ/internal/brain/brain = user.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = user.get_organ_slot(ORGAN_SLOT_BRAIN) if(brain) - brain.setOrganDamage(BRAIN_DAMAGE_DEATH) + brain.set_organ_damage(BRAIN_DAMAGE_DEATH) return OXYLOSS diff --git a/code/modules/clothing/neck/_neck.dm b/code/modules/clothing/neck/_neck.dm index 0a2f7808927..ca4adcc8c76 100644 --- a/code/modules/clothing/neck/_neck.dm +++ b/code/modules/clothing/neck/_neck.dm @@ -189,8 +189,8 @@ var/heart_strength = span_danger("no") var/lung_strength = span_danger("no") - var/obj/item/organ/internal/heart/heart = carbon_patient.getorganslot(ORGAN_SLOT_HEART) - var/obj/item/organ/internal/lungs/lungs = carbon_patient.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/heart/heart = carbon_patient.get_organ_slot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/lungs/lungs = carbon_patient.get_organ_slot(ORGAN_SLOT_LUNGS) if(carbon_patient.stat != DEAD && !(HAS_TRAIT(carbon_patient, TRAIT_FAKEDEATH))) if(istype(heart)) diff --git a/code/modules/events/brain_trauma.dm b/code/modules/events/brain_trauma.dm index e28964a7358..1e5c09aff48 100644 --- a/code/modules/events/brain_trauma.dm +++ b/code/modules/events/brain_trauma.dm @@ -16,7 +16,7 @@ continue if(H.stat == DEAD) // What are you doing in this list continue - if(!H.getorgan(/obj/item/organ/internal/brain)) // If only I had a brain + if(!H.get_organ_by_type(/obj/item/organ/internal/brain)) // If only I had a brain continue if(!(H.mind.assigned_role.job_flags & JOB_CREW_MEMBER)) //please stop giving my centcom admin gimmicks full body paralysis continue diff --git a/code/modules/events/creep_awakening.dm b/code/modules/events/creep_awakening.dm index 75cf51b53f5..648c2cc9db0 100644 --- a/code/modules/events/creep_awakening.dm +++ b/code/modules/events/creep_awakening.dm @@ -19,7 +19,7 @@ continue if(H.mind.has_antag_datum(/datum/antagonist/obsessed)) continue - if(!H.getorgan(/obj/item/organ/internal/brain)) + if(!H.get_organ_by_type(/obj/item/organ/internal/brain)) continue H.gain_trauma(/datum/brain_trauma/special/obsessed) announce_to_ghosts(H) diff --git a/code/modules/experisci/handheld_scanner.dm b/code/modules/experisci/handheld_scanner.dm index a1bd3a25765..498898759b4 100644 --- a/code/modules/experisci/handheld_scanner.dm +++ b/code/modules/experisci/handheld_scanner.dm @@ -41,7 +41,7 @@ /obj/item/experi_scanner/proc/make_meat_toilet(mob/living/carbon/user) ///The suicide victim's brain that will be placed inside the toilet's cistern - var/obj/item/organ/internal/brain/toilet_brain = user.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/toilet_brain = user.get_organ_slot(ORGAN_SLOT_BRAIN) ///The toilet we're about to unleash unto this cursed plane of existence var/obj/structure/toilet/greyscale/result_toilet = new (drop_location()) diff --git a/code/modules/food_and_drinks/machinery/smartfridge.dm b/code/modules/food_and_drinks/machinery/smartfridge.dm index 166046db303..4b195bb4a35 100644 --- a/code/modules/food_and_drinks/machinery/smartfridge.dm +++ b/code/modules/food_and_drinks/machinery/smartfridge.dm @@ -456,7 +456,7 @@ /obj/machinery/smartfridge/organ/process(delta_time) for(var/obj/item/organ/organ in contents) - organ.applyOrganDamage(-repair_rate * organ.maxHealth * delta_time) + organ.apply_organ_damage(-repair_rate * organ.maxHealth * delta_time) /obj/machinery/smartfridge/organ/Exited(atom/movable/gone, direction) . = ..() diff --git a/code/modules/hydroponics/grown/banana.dm b/code/modules/hydroponics/grown/banana.dm index 366c5559e85..2ddd4fd0607 100644 --- a/code/modules/hydroponics/grown/banana.dm +++ b/code/modules/hydroponics/grown/banana.dm @@ -40,7 +40,7 @@ ///Clowns will always like bananas. /obj/item/food/grown/banana/proc/check_liked(fraction, mob/living/carbon/human/consumer) - var/obj/item/organ/internal/liver/liver = consumer.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = consumer.get_organ_slot(ORGAN_SLOT_LIVER) if (!HAS_TRAIT(consumer, TRAIT_AGEUSIA) && liver && HAS_TRAIT(liver, TRAIT_COMEDY_METABOLISM)) return FOOD_LIKED diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index 8dc12f4916d..c16555163d6 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -159,7 +159,7 @@ if(length(mind_traits)) spawned.mind.add_traits(mind_traits, JOB_TRAIT) - var/obj/item/organ/internal/liver/liver = spawned.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = spawned.get_organ_slot(ORGAN_SLOT_LIVER) if(liver && length(liver_traits)) liver.add_traits(liver_traits, JOB_TRAIT) diff --git a/code/modules/library/skill_learning/skill_station.dm b/code/modules/library/skill_learning/skill_station.dm index 4bd74d294bd..cceecf79d36 100644 --- a/code/modules/library/skill_learning/skill_station.dm +++ b/code/modules/library/skill_learning/skill_station.dm @@ -228,7 +228,7 @@ .["slots_max"] = null return - var/obj/item/organ/internal/brain/occupant_brain = carbon_occupant.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/occupant_brain = carbon_occupant.get_organ_slot(ORGAN_SLOT_BRAIN) // If there's no brain, we don't need to worry either. if(QDELETED(occupant_brain)) @@ -271,7 +271,7 @@ return TRUE var/chipref = params["ref"] var/mob/living/carbon/carbon_occupant = occupant - var/obj/item/organ/internal/brain/occupant_brain = carbon_occupant.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/occupant_brain = carbon_occupant.get_organ_slot(ORGAN_SLOT_BRAIN) if(QDELETED(carbon_occupant) || QDELETED(occupant_brain)) return TRUE var/obj/item/skillchip/to_be_removed = locate(chipref) in occupant_brain.skillchips @@ -296,7 +296,7 @@ stack_trace("[usr] tried to toggle skillchip activation when [src] was in an invalid state.") return TRUE var/mob/living/carbon/carbon_occupant = occupant - var/obj/item/organ/internal/brain/occupant_brain = carbon_occupant.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/occupant_brain = carbon_occupant.get_organ_slot(ORGAN_SLOT_BRAIN) if(QDELETED(carbon_occupant) || QDELETED(occupant_brain)) return TRUE var/obj/item/skillchip/to_be_removed = locate(chipref) in occupant_brain.skillchips diff --git a/code/modules/library/skill_learning/skillchip.dm b/code/modules/library/skill_learning/skillchip.dm index 9c39651c0d9..cd4ffa3b7b5 100644 --- a/code/modules/library/skill_learning/skillchip.dm +++ b/code/modules/library/skill_learning/skillchip.dm @@ -248,7 +248,7 @@ return "Incompatible lifeform detected." // No brain - var/obj/item/organ/internal/brain/brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(QDELETED(brain)) return "No brain detected." diff --git a/code/modules/mining/lavaland/tendril_loot.dm b/code/modules/mining/lavaland/tendril_loot.dm index 7921c667f47..70b50182e19 100644 --- a/code/modules/mining/lavaland/tendril_loot.dm +++ b/code/modules/mining/lavaland/tendril_loot.dm @@ -540,7 +540,7 @@ if((methods & INGEST) && show_message) to_chat(exposed_human, span_notice("You feel nothing but a terrible aftertaste.")) return - if(exposed_mob.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS)) //Skyrat Edit + if(exposed_human.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS)) to_chat(exposed_human, span_userdanger("A terrible pain travels down your back as your wings change shape!")) else to_chat(exposed_human, span_userdanger("A terrible pain travels down your back as wings burst out!")) diff --git a/code/modules/mob/dead/new_player/new_player.dm b/code/modules/mob/dead/new_player/new_player.dm index 1db1d09ea41..fca08fccd2d 100644 --- a/code/modules/mob/dead/new_player/new_player.dm +++ b/code/modules/mob/dead/new_player/new_player.dm @@ -236,7 +236,7 @@ humanc.increment_scar_slot() humanc.load_persistent_scars() - SSpersistence.load_modular_persistence(humanc.getorganslot(ORGAN_SLOT_BRAIN)) // SKYRAT EDIT ADDITION - MODULAR_PERSISTENCE + SSpersistence.load_modular_persistence(humanc.get_organ_slot(ORGAN_SLOT_BRAIN)) // SKYRAT EDIT ADDITION - MODULAR_PERSISTENCE if(GLOB.curse_of_madness_triggered) give_madness(humanc, GLOB.curse_of_madness_triggered) diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index 543760d68e7..2e152c1052d 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -290,7 +290,7 @@ Works together with spawning an observer, noted above. return if(ishuman(usr)) //following code only applies to those capable of having an ethereal heart, ie humans var/mob/living/carbon/human/crystal_fella = usr - var/our_heart = crystal_fella.getorganslot(ORGAN_SLOT_HEART) + var/our_heart = crystal_fella.get_organ_slot(ORGAN_SLOT_HEART) if(istype(our_heart, /obj/item/organ/internal/heart/ethereal)) //so you got the heart? var/obj/item/organ/internal/heart/ethereal/ethereal_heart = our_heart ethereal_heart.stop_crystalization_process(crystal_fella) //stops the crystallization process diff --git a/code/modules/mob/living/brain/MMI.dm b/code/modules/mob/living/brain/MMI.dm index c72821b81bc..0de10eda4c9 100644 --- a/code/modules/mob/living/brain/MMI.dm +++ b/code/modules/mob/living/brain/MMI.dm @@ -154,7 +154,7 @@ if(ishuman(L)) var/mob/living/carbon/human/H = L - var/obj/item/organ/internal/brain/newbrain = H.getorgan(/obj/item/organ/internal/brain) + var/obj/item/organ/internal/brain/newbrain = H.get_organ_by_type(/obj/item/organ/internal/brain) newbrain.forceMove(src) brain = newbrain else if(!brain) diff --git a/code/modules/mob/living/brain/brain_item.dm b/code/modules/mob/living/brain/brain_item.dm index 98c2322e5be..99b0f2b2ea2 100644 --- a/code/modules/mob/living/brain/brain_item.dm +++ b/code/modules/mob/living/brain/brain_item.dm @@ -165,7 +165,7 @@ var/amount = O.reagents.get_reagent_amount(/datum/reagent/medicine/mannitol) var/healto = max(0, damage - amount * 2) O.reagents.remove_all(ROUND_UP(O.reagents.total_volume / amount * (damage - healto) * 0.5)) //only removes however much solution is needed while also taking into account how much of the solution is mannitol - setOrganDamage(healto) //heals 2 damage per unit of mannitol, and by using "setorgandamage", we clear the failing variable if that was up + set_organ_damage(healto) //heals 2 damage per unit of mannitol, and by using "set_organ_damage", we clear the failing variable if that was up return // Cutting out skill chips. @@ -197,7 +197,7 @@ if(O.force != 0 && !(O.item_flags & NOBLUDGEON)) user.do_attack_animation(src) playsound(loc, 'sound/effects/meatslap.ogg', 50) - setOrganDamage(maxHealth) //fails the brain as the brain was attacked, they're pretty fragile. + set_organ_damage(maxHealth) //fails the brain as the brain was attacked, they're pretty fragile. visible_message(span_danger("[user] hits [src] with [O]!")) to_chat(user, span_danger("You hit [src] with [O]!")) @@ -227,7 +227,7 @@ if(user.zone_selected != BODY_ZONE_HEAD) return ..() - var/target_has_brain = C.getorgan(/obj/item/organ/internal/brain) + var/target_has_brain = C.get_organ_by_type(/obj/item/organ/internal/brain) if(!target_has_brain && C.is_eyes_covered()) to_chat(user, span_warning("You're going to need to remove [C.p_their()] head cover first!")) @@ -346,10 +346,10 @@ /obj/item/organ/internal/brain/machine_wash(obj/machinery/washing_machine/brainwasher) . = ..() if(HAS_TRAIT(brainwasher, TRAIT_BRAINWASHING)) - setOrganDamage(0) + set_organ_damage(0) cure_all_traumas(TRAUMA_RESILIENCE_LOBOTOMY) else - setOrganDamage(BRAIN_DAMAGE_DEATH) + set_organ_damage(BRAIN_DAMAGE_DEATH) /obj/item/organ/internal/brain/zombie name = "zombie brain" @@ -493,7 +493,7 @@ amount_cured++ return amount_cured -/obj/item/organ/internal/brain/applyOrganDamage(damage_amount, maximum, required_organtype) +/obj/item/organ/internal/brain/apply_organ_damage(damage_amount, maximum, required_organtype) . = ..() if(!owner) return @@ -512,7 +512,7 @@ /// Brains REALLY like ghosting people. we need special tricks to avoid that, namely removing the old brain with no_id_transfer /obj/item/organ/internal/brain/replace_into(mob/living/carbon/new_owner) - var/obj/item/organ/internal/brain/old_brain = new_owner.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/old_brain = new_owner.get_organ_slot(ORGAN_SLOT_BRAIN) old_brain.Remove(new_owner, special = TRUE, no_id_transfer = TRUE) qdel(old_brain) Insert(new_owner, special = TRUE, drop_if_replaced = FALSE, no_id_transfer = TRUE) diff --git a/code/modules/mob/living/brain/life.dm b/code/modules/mob/living/brain/life.dm index 2902b11c3a7..66f290e2feb 100644 --- a/code/modules/mob/living/brain/life.dm +++ b/code/modules/mob/living/brain/life.dm @@ -20,7 +20,7 @@ else if(istype(loc, /obj/item/organ/internal/brain)) BR = loc if(BR) - BR.setOrganDamage(BRAIN_DAMAGE_DEATH) //beaten to a pulp + BR.set_organ_damage(BRAIN_DAMAGE_DEATH) //beaten to a pulp /mob/living/brain/proc/handle_emp_damage(delta_time, times_fired) if(!emp_damage) diff --git a/code/modules/mob/living/carbon/alien/adult/adult.dm b/code/modules/mob/living/carbon/alien/adult/adult.dm index 0417e167d82..30a9f4c8376 100644 --- a/code/modules/mob/living/carbon/alien/adult/adult.dm +++ b/code/modules/mob/living/carbon/alien/adult/adult.dm @@ -139,7 +139,7 @@ GLOBAL_LIST_INIT(strippable_alien_humanoid_items, create_strippable_list(list( if(!can_consume(lucky_winner)) return TRUE - var/obj/item/organ/internal/stomach/alien/melting_pot = getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/alien/melting_pot = get_organ_slot(ORGAN_SLOT_STOMACH) if(!istype(melting_pot)) visible_message(span_clown("[src] can't seem to consume [lucky_winner]!"), \ span_alien("You feel a pain in your... chest? You can't get [lucky_winner] down.")) diff --git a/code/modules/mob/living/carbon/alien/adult/alien_powers.dm b/code/modules/mob/living/carbon/alien/adult/alien_powers.dm index 58dc4ea1820..48ce9f55b10 100644 --- a/code/modules/mob/living/carbon/alien/adult/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/adult/alien_powers.dm @@ -378,7 +378,7 @@ Doesn't work on other aliens/AI.*/ if(!iscarbon(owner)) return var/mob/living/carbon/alien/adult/alieninated_owner = owner - var/obj/item/organ/internal/stomach/alien/melting_pot = alieninated_owner.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/alien/melting_pot = alieninated_owner.get_organ_slot(ORGAN_SLOT_STOMACH) if(!melting_pot) owner.visible_message(span_clown("[src] gags, and spits up a bit of purple liquid. Ewwww."), \ span_alien("You feel a pain in your... chest? There's nothing there there's nothing there no no n-")) @@ -395,14 +395,14 @@ Doesn't work on other aliens/AI.*/ /// Gets the plasma level of this carbon's plasma vessel, or -1 if they don't have one /mob/living/carbon/proc/getPlasma() - var/obj/item/organ/internal/alien/plasmavessel/vessel = getorgan(/obj/item/organ/internal/alien/plasmavessel) + var/obj/item/organ/internal/alien/plasmavessel/vessel = get_organ_by_type(/obj/item/organ/internal/alien/plasmavessel) if(!vessel) return -1 return vessel.stored_plasma /// Adjusts the plasma level of the carbon's plasma vessel if they have one /mob/living/carbon/proc/adjustPlasma(amount) - var/obj/item/organ/internal/alien/plasmavessel/vessel = getorgan(/obj/item/organ/internal/alien/plasmavessel) + var/obj/item/organ/internal/alien/plasmavessel/vessel = get_organ_by_type(/obj/item/organ/internal/alien/plasmavessel) if(!vessel) return FALSE vessel.stored_plasma = max(vessel.stored_plasma + amount,0) diff --git a/code/modules/mob/living/carbon/alien/adult/caste/drone.dm b/code/modules/mob/living/carbon/alien/adult/caste/drone.dm index 1859abf58b0..3a1843dd93c 100644 --- a/code/modules/mob/living/carbon/alien/adult/caste/drone.dm +++ b/code/modules/mob/living/carbon/alien/adult/caste/drone.dm @@ -34,7 +34,7 @@ return FALSE var/mob/living/carbon/alien/adult/royal/evolver = owner - var/obj/item/organ/internal/alien/hivenode/node = evolver.getorgan(/obj/item/organ/internal/alien/hivenode) + var/obj/item/organ/internal/alien/hivenode/node = evolver.get_organ_by_type(/obj/item/organ/internal/alien/hivenode) // Players are Murphy's Law. We may not expect // there to ever be a living xeno with no hivenode, // but they _WILL_ make it happen. diff --git a/code/modules/mob/living/carbon/alien/adult/caste/praetorian.dm b/code/modules/mob/living/carbon/alien/adult/caste/praetorian.dm index babb909bec6..3064068b32f 100644 --- a/code/modules/mob/living/carbon/alien/adult/caste/praetorian.dm +++ b/code/modules/mob/living/carbon/alien/adult/caste/praetorian.dm @@ -41,7 +41,7 @@ return FALSE var/mob/living/carbon/alien/adult/royal/evolver = owner - var/obj/item/organ/internal/alien/hivenode/node = evolver.getorgan(/obj/item/organ/internal/alien/hivenode) + var/obj/item/organ/internal/alien/hivenode/node = evolver.get_organ_by_type(/obj/item/organ/internal/alien/hivenode) if(!node || node.recent_queen_death) return FALSE diff --git a/code/modules/mob/living/carbon/alien/adult/death.dm b/code/modules/mob/living/carbon/alien/adult/death.dm index 16f6de8dbb7..ce99343ea2c 100644 --- a/code/modules/mob/living/carbon/alien/adult/death.dm +++ b/code/modules/mob/living/carbon/alien/adult/death.dm @@ -15,7 +15,7 @@ for(var/mob/living/carbon/C in GLOB.alive_mob_list) if(C == src) //Make sure not to proc it on ourselves. continue - var/obj/item/organ/internal/alien/hivenode/node = C.getorgan(/obj/item/organ/internal/alien/hivenode) + var/obj/item/organ/internal/alien/hivenode/node = C.get_organ_by_type(/obj/item/organ/internal/alien/hivenode) if(istype(node)) // just in case someone would ever add a diffirent node to hivenode slot node.queen_death() diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index 2ec16fb4fbd..092a6806118 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -83,7 +83,7 @@ Des: Gives the client of the alien an image on each infected mob. for (var/i in GLOB.mob_living_list) var/mob/living/L = i if(HAS_TRAIT(L, TRAIT_XENO_HOST)) - var/obj/item/organ/internal/body_egg/alien_embryo/A = L.getorgan(/obj/item/organ/internal/body_egg/alien_embryo) + var/obj/item/organ/internal/body_egg/alien_embryo/A = L.get_organ_by_type(/obj/item/organ/internal/body_egg/alien_embryo) if(A) var/I = image('icons/mob/nonhuman-player/alien.dmi', loc = L, icon_state = "infected[A.stage]") client.images += I diff --git a/code/modules/mob/living/carbon/alien/alien_defense.dm b/code/modules/mob/living/carbon/alien/alien_defense.dm index 941eb62fc73..19e876ac4df 100644 --- a/code/modules/mob/living/carbon/alien/alien_defense.dm +++ b/code/modules/mob/living/carbon/alien/alien_defense.dm @@ -103,7 +103,7 @@ In all, this is a lot like the monkey code. /N if(QDELETED(src)) return - var/obj/item/organ/internal/ears/ears = getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = get_organ_slot(ORGAN_SLOT_EARS) switch (severity) if (EXPLODE_DEVASTATE) gib() diff --git a/code/modules/mob/living/carbon/alien/alien_say.dm b/code/modules/mob/living/carbon/alien/alien_say.dm index 2b7d466374f..4cfdc265abf 100644 --- a/code/modules/mob/living/carbon/alien/alien_say.dm +++ b/code/modules/mob/living/carbon/alien/alien_say.dm @@ -20,6 +20,6 @@ ..(message, shown_name, TRUE) /mob/living/carbon/hivecheck() - var/obj/item/organ/internal/alien/hivenode/N = getorgan(/obj/item/organ/internal/alien/hivenode) + var/obj/item/organ/internal/alien/hivenode/N = get_organ_by_type(/obj/item/organ/internal/alien/hivenode) if(N && !N.recent_queen_death) //Mob has alien hive node and is not under the dead queen special effect. return TRUE diff --git a/code/modules/mob/living/carbon/alien/larva/life.dm b/code/modules/mob/living/carbon/alien/larva/life.dm index 4331a2860d8..ef969253e7d 100644 --- a/code/modules/mob/living/carbon/alien/larva/life.dm +++ b/code/modules/mob/living/carbon/alien/larva/life.dm @@ -14,7 +14,7 @@ if(status_flags & GODMODE) return if(stat != DEAD) - if(health <= -maxHealth || !getorgan(/obj/item/organ/internal/brain)) + if(health <= -maxHealth || !get_organ_by_type(/obj/item/organ/internal/brain)) death() return if((HAS_TRAIT(src, TRAIT_KNOCKEDOUT))) diff --git a/code/modules/mob/living/carbon/alien/organs.dm b/code/modules/mob/living/carbon/alien/organs.dm index cb1f5c257c8..c930f62997a 100644 --- a/code/modules/mob/living/carbon/alien/organs.dm +++ b/code/modules/mob/living/carbon/alien/organs.dm @@ -281,7 +281,7 @@ if(!impact) return - applyOrganDamage(impact) + apply_organ_damage(impact) var/damage_ratio = damage / max(maxHealth, 1) if(owner) diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index f9524807ac7..13b64776807 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -213,7 +213,7 @@ worn_icon_state = "[base_icon_state]_impregnated" var/obj/item/bodypart/chest/LC = target.get_bodypart(BODY_ZONE_CHEST) - if((!LC || IS_ORGANIC_LIMB(LC)) && !target.getorgan(/obj/item/organ/internal/body_egg/alien_embryo)) + if((!LC || IS_ORGANIC_LIMB(LC)) && !target.get_organ_by_type(/obj/item/organ/internal/body_egg/alien_embryo)) new /obj/item/organ/internal/body_egg/alien_embryo(target) target.log_message("was impregnated by a facehugger", LOG_GAME) target.log_message("was impregnated by a facehugger", LOG_VICTIM, log_globally = FALSE) @@ -258,7 +258,7 @@ return FALSE if(M.stat == DEAD) return FALSE - if(M.getorgan(/obj/item/organ/internal/alien/hivenode)) + if(M.get_organ_by_type(/obj/item/organ/internal/alien/hivenode)) return FALSE var/mob/living/carbon/C = M if(ishuman(C) && !(C.dna.species.no_equip_flags & ITEM_SLOT_MASK)) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 8b84fbc7ee5..e744790d376 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -568,7 +568,7 @@ lighting_cutoff = initial(lighting_cutoff) lighting_color_cutoffs = list(lighting_cutoff_red, lighting_cutoff_green, lighting_cutoff_blue) - var/obj/item/organ/internal/eyes/eyes = getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = get_organ_slot(ORGAN_SLOT_EYES) if(eyes) set_invis_see(eyes.see_invisible) new_sight |= eyes.sight_flags @@ -631,7 +631,7 @@ if(isclothing(glasses)) tint += glasses.tint - var/obj/item/organ/internal/eyes/eyes = getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = get_organ_slot(ORGAN_SLOT_EYES) if(eyes) tint += eyes.tint @@ -867,21 +867,21 @@ for(var/obj/item/organ/organ as anything in organs) if(organ.organ_flags & ORGAN_SYNTHETIC) continue - organ.applyOrganDamage(excess_healing * -1) //1 excess = 5 organ damage healed + organ.apply_organ_damage(excess_healing * -1) //1 excess = 5 organ damage healed return ..() /mob/living/carbon/heal_and_revive(heal_to = 75, revive_message) // We can't heal them if they're missing a heart - if(needs_heart() && !getorganslot(ORGAN_SLOT_HEART)) + if(needs_heart() && !get_organ_slot(ORGAN_SLOT_HEART)) return FALSE // We can't heal them if they're missing their lungs - if(!HAS_TRAIT(src, TRAIT_NOBREATH) && !isnull(dna?.species.mutantlungs) && !getorganslot(ORGAN_SLOT_LUNGS)) + if(!HAS_TRAIT(src, TRAIT_NOBREATH) && !isnull(dna?.species.mutantlungs) && !get_organ_slot(ORGAN_SLOT_LUNGS)) return FALSE // And we can't heal them if they're missing their liver - if(!HAS_TRAIT(src, TRAIT_NOMETABOLISM) && !isnull(dna?.species.mutantliver) && !getorganslot(ORGAN_SLOT_LIVER)) + if(!HAS_TRAIT(src, TRAIT_NOMETABOLISM) && !isnull(dna?.species.mutantliver) && !get_organ_slot(ORGAN_SLOT_LIVER)) return FALSE return ..() @@ -923,7 +923,7 @@ return ..() /mob/living/carbon/can_be_revived() - if(!getorgan(/obj/item/organ/internal/brain) && (!mind || !mind.has_antag_datum(/datum/antagonist/changeling)) || HAS_TRAIT(src, TRAIT_HUSK)) + if(!get_organ_by_type(/obj/item/organ/internal/brain) && (!mind || !mind.has_antag_datum(/datum/antagonist/changeling)) || HAS_TRAIT(src, TRAIT_HUSK)) return FALSE //SKYRAT EDIT ADDITION - DNR TRAIT if(HAS_TRAIT(src, TRAIT_DNR)) @@ -951,7 +951,7 @@ // Only check for a heart if they actually need a heart. Who would've thunk if (needs_heart()) - var/obj/item/organ/internal/heart = getorgan(/obj/item/organ/internal/heart) + var/obj/item/organ/internal/heart = get_organ_by_type(/obj/item/organ/internal/heart) if (!heart) return DEFIB_FAIL_NO_HEART @@ -959,7 +959,7 @@ if (heart.organ_flags & ORGAN_FAILING) return DEFIB_FAIL_FAILING_HEART - var/obj/item/organ/internal/brain/current_brain = getorgan(/obj/item/organ/internal/brain) + var/obj/item/organ/internal/brain/current_brain = get_organ_by_type(/obj/item/organ/internal/brain) if (QDELETED(current_brain)) return DEFIB_FAIL_NO_BRAIN @@ -1293,7 +1293,7 @@ /mob/living/carbon/proc/adjust_skillchip_complexity_modifier(delta) skillchip_complexity_modifier += delta - var/obj/item/organ/internal/brain/brain = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = get_organ_slot(ORGAN_SLOT_BRAIN) if(!brain) return diff --git a/code/modules/mob/living/carbon/carbon_context.dm b/code/modules/mob/living/carbon/carbon_context.dm index 0cee1c542cf..59d3a6db71a 100644 --- a/code/modules/mob/living/carbon/carbon_context.dm +++ b/code/modules/mob/living/carbon/carbon_context.dm @@ -25,7 +25,7 @@ if (body_position == STANDING_UP) if(check_zone(user.zone_selected) == BODY_ZONE_HEAD && get_bodypart(BODY_ZONE_HEAD)) context[SCREENTIP_CONTEXT_LMB] = "Headpat" - else if(user.zone_selected == BODY_ZONE_PRECISE_GROIN && !isnull(getorgan(/obj/item/organ/external/tail))) + else if(user.zone_selected == BODY_ZONE_PRECISE_GROIN && !isnull(get_organ_by_type(/obj/item/organ/external/tail))) context[SCREENTIP_CONTEXT_LMB] = "Pull tail" else context[SCREENTIP_CONTEXT_LMB] = "Hug" diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index 491ec8f207d..4b40db43555 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -6,7 +6,7 @@ . = ..() if(is_blind() && !is_blind_from(list(UNCONSCIOUS_TRAIT, HYPNOCHAIR_TRAIT))) return INFINITY //For all my homies that can not see in the world - var/obj/item/organ/internal/eyes/eyes = getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = get_organ_slot(ORGAN_SLOT_EYES) if(eyes) . += eyes.flash_protect else @@ -22,7 +22,7 @@ . = ..() if(HAS_TRAIT(src, TRAIT_DEAF)) return INFINITY //For all my homies that can not hear in the world - var/obj/item/organ/internal/ears/E = getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/E = get_organ_slot(ORGAN_SLOT_EARS) if(!E) return INFINITY else @@ -47,7 +47,7 @@ return null /mob/living/carbon/is_pepper_proof(check_flags = ALL) - var/obj/item/organ/internal/eyes/eyes = getorgan(/obj/item/organ/internal/eyes) + var/obj/item/organ/internal/eyes/eyes = get_organ_by_type(/obj/item/organ/internal/eyes) if(eyes && eyes.pepperspray_protect) return eyes if((check_flags & ITEM_SLOT_HEAD) && head && (head.flags_cover & PEPPERPROOF)) @@ -515,11 +515,12 @@ to_chat(helper, span_warning("[src] looks visibly upset as you pat [p_them()] on the head.")) //SKYRAT EDIT ADDITION BEGIN - EMOTES if(HAS_TRAIT(src, TRAIT_EXCITABLE)) - var/obj/item/organ/external/tail/src_tail = getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/src_tail = get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(src_tail && !(src_tail.wag_flags & WAG_WAGGING)) emote("wag") //SKYRAT EDIT ADDITION END - else if ((helper.zone_selected == BODY_ZONE_PRECISE_GROIN) && !isnull(src.getorgan(/obj/item/organ/external/tail))) + + else if ((helper.zone_selected == BODY_ZONE_PRECISE_GROIN) && !isnull(src.get_organ_by_type(/obj/item/organ/external/tail))) helper.visible_message(span_notice("[helper] pulls on [src]'s tail!"), \ null, span_hear("You hear a soft patter."), DEFAULT_MESSAGE_RANGE, list(helper, src)) to_chat(helper, span_notice("You pull on [src]'s tail!")) @@ -632,7 +633,7 @@ /mob/living/carbon/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /atom/movable/screen/fullscreen/flash, length = 25) - var/obj/item/organ/internal/eyes/eyes = getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = get_organ_slot(ORGAN_SLOT_EYES) if(!eyes) //can't flash what can't see! return @@ -647,15 +648,15 @@ if(1) to_chat(src, span_warning("Your eyes sting a little.")) if(prob(40)) - eyes.applyOrganDamage(1) + eyes.apply_organ_damage(1) if(2) to_chat(src, span_warning("Your eyes burn.")) - eyes.applyOrganDamage(rand(2, 4)) + eyes.apply_organ_damage(rand(2, 4)) if(3 to INFINITY) to_chat(src, span_warning("Your eyes itch and burn severely!")) - eyes.applyOrganDamage(rand(12, 16)) + eyes.apply_organ_damage(rand(12, 16)) if(eyes.damage > 10) adjust_temp_blindness(damage * 2 SECONDS) @@ -664,11 +665,11 @@ if(eyes.damage > eyes.low_threshold) if(!is_nearsighted_from(EYE_DAMAGE) && prob(eyes.damage - eyes.low_threshold)) to_chat(src, span_warning("Your eyes start to burn badly!")) - eyes.applyOrganDamage(eyes.low_threshold) + eyes.apply_organ_damage(eyes.low_threshold) else if(!is_blind() && prob(eyes.damage - eyes.high_threshold)) to_chat(src, span_warning("You can't see anything!")) - eyes.applyOrganDamage(eyes.maxHealth) + eyes.apply_organ_damage(eyes.maxHealth) else to_chat(src, span_warning("Your eyes are really starting to hurt. This can't be good for you!")) @@ -683,7 +684,7 @@ SEND_SIGNAL(src, COMSIG_CARBON_SOUNDBANG, reflist) intensity = reflist[1] var/ear_safety = get_ear_protection() - var/obj/item/organ/internal/ears/ears = getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = get_organ_slot(ORGAN_SLOT_EARS) var/effect_amount = intensity - ear_safety if(effect_amount > 0) if(stun_pwr) @@ -701,7 +702,7 @@ to_chat(src, span_userdanger("You can't hear anything!")) // Makes you deaf, enough that you need a proper source of healing, it won't self heal // you need earmuffs, inacusiate, or replacement - ears.setOrganDamage(ears.maxHealth) + ears.set_organ_damage(ears.maxHealth) else if(ears.damage >= 5) to_chat(src, span_warning("Your ears start to ring!")) SEND_SOUND(src, sound('sound/weapons/flash_ring.ogg',0,1,0,250)) @@ -725,7 +726,7 @@ /mob/living/carbon/can_hear() . = FALSE - var/obj/item/organ/internal/ears/ears = getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = get_organ_slot(ORGAN_SLOT_EARS) if(ears && !HAS_TRAIT(src, TRAIT_DEAF)) . = TRUE if(health <= hardcrit_threshold && !HAS_TRAIT(src, TRAIT_NOHARDCRIT)) @@ -851,7 +852,7 @@ var/changed_something = FALSE var/obj/item/organ/new_organ = pick(GLOB.bioscrambler_valid_organs) - var/obj/item/organ/replaced = getorganslot(initial(new_organ.slot)) + var/obj/item/organ/replaced = get_organ_slot(initial(new_organ.slot)) if (!(replaced?.organ_flags & ORGAN_SYNTHETIC)) changed_something = TRUE new_organ = new new_organ() diff --git a/code/modules/mob/living/carbon/carbon_say.dm b/code/modules/mob/living/carbon/carbon_say.dm index 35c777413bb..c84f83a30e5 100644 --- a/code/modules/mob/living/carbon/carbon_say.dm +++ b/code/modules/mob/living/carbon/carbon_say.dm @@ -1,13 +1,13 @@ /mob/living/carbon/can_speak(allow_mimes = FALSE) // If we're not a nobreath species, and we don't have lungs, we can't talk - if(dna?.species && !HAS_TRAIT_FROM(src, TRAIT_NOBREATH, SPECIES_TRAIT) && !getorganslot(ORGAN_SLOT_LUNGS)) + if(dna?.species && !HAS_TRAIT_FROM(src, TRAIT_NOBREATH, SPECIES_TRAIT) && !get_organ_slot(ORGAN_SLOT_LUNGS)) // How do species that don't breathe, talk? Magic, that's what. return FALSE return ..() /mob/living/carbon/could_speak_language(datum/language/language_path) - var/obj/item/organ/internal/tongue/spoken_with = getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/spoken_with = get_organ_slot(ORGAN_SLOT_TONGUE) if(spoken_with) // the tower of babel needs to bypass the tongue language restrictions without giving omnitongue return HAS_TRAIT(src, TRAIT_TOWER_OF_BABEL) || spoken_with.could_speak_language(language_path) diff --git a/code/modules/mob/living/carbon/damage_procs.dm b/code/modules/mob/living/carbon/damage_procs.dm index 7a8f8121d74..b03215a49ae 100644 --- a/code/modules/mob/living/carbon/damage_procs.dm +++ b/code/modules/mob/living/carbon/damage_procs.dm @@ -116,12 +116,12 @@ * * required_organtype - targets only a specific organ type if set to ORGAN_ORGANIC or ORGAN_ROBOTIC */ /mob/living/carbon/adjustOrganLoss(slot, amount, maximum, required_organtype) - var/obj/item/organ/affected_organ = getorganslot(slot) + var/obj/item/organ/affected_organ = get_organ_slot(slot) if(!affected_organ || (status_flags & GODMODE)) return if(required_organtype && (affected_organ.status != required_organtype)) return - affected_organ.applyOrganDamage(amount, maximum) + affected_organ.apply_organ_damage(amount, maximum) /** * If an organ exists in the slot requested, and we are capable of taking damage (we don't have [GODMODE] on), call the set damage proc on that organ, which can @@ -133,14 +133,14 @@ * * required_organtype - targets only a specific organ type if set to ORGAN_ORGANIC or ORGAN_ROBOTIC */ /mob/living/carbon/setOrganLoss(slot, amount, required_organtype) - var/obj/item/organ/affected_organ = getorganslot(slot) + var/obj/item/organ/affected_organ = get_organ_slot(slot) if(!affected_organ || (status_flags & GODMODE)) return if(required_organtype && (affected_organ.status != required_organtype)) return if(affected_organ.damage == amount) return - affected_organ.setOrganDamage(amount) + affected_organ.set_organ_damage(amount) /** * If an organ exists in the slot requested, return the amount of damage that organ has @@ -148,8 +148,8 @@ * Arguments: * * slot - organ slot, like [ORGAN_SLOT_HEART] */ -/mob/living/carbon/getOrganLoss(slot) - var/obj/item/organ/affected_organ = getorganslot(slot) +/mob/living/carbon/get_organ_loss(slot) + var/obj/item/organ/affected_organ = get_organ_slot(slot) if(affected_organ) return affected_organ.damage diff --git a/code/modules/mob/living/carbon/death.dm b/code/modules/mob/living/carbon/death.dm index bb6990fd0da..f2edcf67056 100644 --- a/code/modules/mob/living/carbon/death.dm +++ b/code/modules/mob/living/carbon/death.dm @@ -49,11 +49,6 @@ if(no_brain && istype(organs, /obj/item/organ/internal/brain)) qdel(organs) //so the brain isn't transfered to the head when the head drops. continue - // SKYRAT EDIT START - Non-spillable organs - if(!organs.drop_when_organ_spilling) - qdel(organs) - continue - // SKYRAT EDIT END var/org_zone = check_zone(organs.zone) //both groin and chest organs. if(org_zone == BODY_ZONE_CHEST) organs.Remove(src) @@ -67,11 +62,6 @@ if(no_organs && !istype(organs, /obj/item/organ/internal/brain)) qdel(organs) continue - // SKYRAT EDIT START - Non-spillable organs - if(!organs.drop_when_organ_spilling) - qdel(organs) - continue - // SKYRAT EDIT END organs.Remove(src) organs.forceMove(Tsec) organs.throw_at(get_edge_target_turf(src,pick(GLOB.alldirs)),rand(1,3),5) @@ -83,3 +73,17 @@ continue part.drop_limb() part.throw_at(get_edge_target_turf(src, pick(GLOB.alldirs)), rand(1,3), 5) + +/mob/living/carbon/set_suicide(suicide_state) //you thought that box trick was pretty clever, didn't you? well now hardmode is on, boyo. + . = ..() + var/obj/item/organ/internal/brain/userbrain = get_organ_slot(ORGAN_SLOT_BRAIN) + if(userbrain) + userbrain.suicided = suicide_state + +/mob/living/carbon/can_suicide() + if(!..()) + return FALSE + if(!(mobility_flags & MOBILITY_USE)) //just while I finish up the new 'fun' suiciding verb. This is to prevent metagaming via suicide + to_chat(src, span_warning("You can't commit suicide whilst immobile! (You can type Ghost instead however).")) + return FALSE + return TRUE diff --git a/code/modules/mob/living/carbon/examine.dm b/code/modules/mob/living/carbon/examine.dm index 8f8272bed02..4811ba6dfd8 100644 --- a/code/modules/mob/living/carbon/examine.dm +++ b/code/modules/mob/living/carbon/examine.dm @@ -31,7 +31,7 @@ var/appears_dead = FALSE if (stat == DEAD) appears_dead = TRUE - if(getorgan(/obj/item/organ/internal/brain)) + if(get_organ_by_type(/obj/item/organ/internal/brain)) . += span_deadsay("[t_He] [t_is] limp and unresponsive, with no signs of life.") else if(get_bodypart(BODY_ZONE_HEAD)) . += span_deadsay("It appears that [t_his] brain is missing...") diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index c4abf6692a9..90b94689796 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -21,7 +21,7 @@ GLOBAL_LIST_EMPTY(dead_players_during_shift) if(stat == DEAD) return stop_sound_channel(CHANNEL_HEARTBEAT) - var/obj/item/organ/internal/heart/H = getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/H = get_organ_slot(ORGAN_SLOT_HEART) if(H) H.beat = BEAT_NONE @@ -39,7 +39,7 @@ GLOBAL_LIST_EMPTY(dead_players_during_shift) if(key) // Prevents log spamming of keyless mob deaths (like xenobio monkeys) investigate_log("has died at [loc_name(src)].
\ BRUTE: [src.getBruteLoss()] BURN: [src.getFireLoss()] TOX: [src.getToxLoss()] OXY: [src.getOxyLoss()] CLONE: [src.getCloneLoss()] STAM: [src.getStaminaLoss()]
\ - Brain damage: [src.getOrganLoss(ORGAN_SLOT_BRAIN) || "0"]
\ + Brain damage: [src.get_organ_loss(ORGAN_SLOT_BRAIN) || "0"]
\ Blood volume: [src.blood_volume]cl ([round((src.blood_volume / BLOOD_VOLUME_NORMAL) * 100, 0.1)]%)
\ Reagents:
[reagents_readout()]", INVESTIGATE_DEATHS) to_chat(src, span_warning("You have died. Barring complete bodyloss, you can in most cases be revived by other players. If you do not wish to be brought back, use the \"Do Not Resuscitate\" verb in the ghost tab.")) @@ -50,7 +50,7 @@ GLOBAL_LIST_EMPTY(dead_players_during_shift) readout += "
[round(reagent.volume, 0.001)] units of [reagent.name]" readout += "
Stomach:" - var/obj/item/organ/internal/stomach/belly = getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/belly = get_organ_slot(ORGAN_SLOT_STOMACH) for(var/datum/reagent/bile in belly?.reagents?.reagent_list) if(!belly.food_reagents[bile.type]) readout += "
[round(bile.volume, 0.001)] units of [bile.name]" diff --git a/code/modules/mob/living/carbon/human/dummy.dm b/code/modules/mob/living/carbon/human/dummy.dm index 46472fa2aa1..2a607f832da 100644 --- a/code/modules/mob/living/carbon/human/dummy.dm +++ b/code/modules/mob/living/carbon/human/dummy.dm @@ -26,14 +26,14 @@ INITIALIZE_IMMEDIATE(/mob/living/carbon/human/dummy) /mob/living/carbon/human/dummy/proc/harvest_organs() for(var/slot in list(ORGAN_SLOT_BRAIN, ORGAN_SLOT_HEART, ORGAN_SLOT_LUNGS, ORGAN_SLOT_APPENDIX, \ ORGAN_SLOT_EYES, ORGAN_SLOT_EARS, ORGAN_SLOT_TONGUE, ORGAN_SLOT_LIVER, ORGAN_SLOT_STOMACH)) - var/obj/item/organ/current_organ = getorganslot(slot) //Time to cache it lads + var/obj/item/organ/current_organ = get_organ_slot(slot) //Time to cache it lads if(current_organ) current_organ.Remove(src, special = TRUE) //Please don't somehow kill our dummy SSwardrobe.stash_object(current_organ) var/datum/species/current_species = dna.species for(var/organ_path in current_species.mutant_organs) - var/obj/item/organ/current_organ = getorgan(organ_path) + var/obj/item/organ/current_organ = get_organ_by_type(organ_path) if(current_organ) current_organ.Remove(src, special = TRUE) //Please don't somehow kill our dummy SSwardrobe.stash_object(current_organ) diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index fb84d9dca3c..20640add97c 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -117,7 +117,7 @@ . = ..() if(!.) return - var/obj/item/organ/external/tail/oranges_accessory = user.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/oranges_accessory = user.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(oranges_accessory.wag_flags & WAG_WAGGING) //We verified the tail exists in can_run_emote() SEND_SIGNAL(user, COMSIG_ORGAN_WAG_TAIL, FALSE) else @@ -125,14 +125,14 @@ /datum/emote/living/carbon/human/wag/select_message_type(mob/user, intentional) . = ..() - var/obj/item/organ/external/tail/oranges_accessory = user.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/oranges_accessory = user.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(oranges_accessory.wag_flags & WAG_WAGGING) . = "stops wagging " + message else . = "wags " + message /datum/emote/living/carbon/human/wag/can_run_emote(mob/user, status_check, intentional) - var/obj/item/organ/external/tail/tail = user.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/tail = user.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(tail?.wag_flags & WAG_ABLE) return ..() return FALSE @@ -146,7 +146,7 @@ . = ..() if(.) var/mob/living/carbon/human/H = user - var/obj/item/organ/external/wings/functional/wings = H.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS) + var/obj/item/organ/external/wings/functional/wings = H.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS) if(wings && findtext(select_message_type(user,intentional), "open")) wings.open_wings() else diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 5725eac1c03..24d96a24e51 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -165,7 +165,7 @@ . += generate_death_examine_text() - if(get_bodypart(BODY_ZONE_HEAD) && !getorgan(/obj/item/organ/internal/brain)) + if(get_bodypart(BODY_ZONE_HEAD) && !get_organ_by_type(/obj/item/organ/internal/brain)) . += span_deadsay("It appears that [t_his] brain is missing...") var/list/msg = list() @@ -376,7 +376,7 @@ if(CONSCIOUS) if(HAS_TRAIT(src, TRAIT_DUMB)) msg += "[t_He] [t_has] a stupid expression on [t_his] face.\n" - if(getorgan(/obj/item/organ/internal/brain)) + if(get_organ_by_type(/obj/item/organ/internal/brain)) if(!key) msg += "[span_deadsay("[t_He] [t_is] totally catatonic. The stresses of life in deep-space must have been too much for [t_him]. Any recovery is unlikely.")]\n" else if(!client) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 35ad3246858..37d0b196332 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -61,7 +61,7 @@ /mob/living/carbon/human/ZImpactDamage(turf/T, levels) if(stat != CONSCIOUS || levels > 1) // you're not The One return ..() - var/obj/item/organ/external/wings/gliders = getorgan(/obj/item/organ/external/wings) + var/obj/item/organ/external/wings/gliders = get_organ_by_type(/obj/item/organ/external/wings) if(HAS_TRAIT(src, TRAIT_FREERUNNING) || gliders?.can_soften_fall()) // the power of parkour or wings allows falling short distances unscathed visible_message(span_danger("[src] makes a hard landing on [T] but remains unharmed from the fall."), \ span_userdanger("You brace for the fall. You make a hard landing on [T] but remain unharmed.")) @@ -490,7 +490,7 @@ to_chat(src, span_warning("Remove [p_their()] mask first!")) return FALSE - if (!getorganslot(ORGAN_SLOT_LUNGS)) + if (!get_organ_slot(ORGAN_SLOT_LUNGS)) to_chat(src, span_warning("You have no lungs to breathe with, so you cannot perform CPR!")) return FALSE @@ -514,7 +514,7 @@ if (HAS_TRAIT(target, TRAIT_NOBREATH)) to_chat(target, span_unconscious("You feel a breath of fresh air... which is a sensation you don't recognise...")) - else if (!target.getorganslot(ORGAN_SLOT_LUNGS)) + else if (!target.get_organ_slot(ORGAN_SLOT_LUNGS)) to_chat(target, span_unconscious("You feel a breath of fresh air... but you don't feel any better...")) else target.adjustOxyLoss(-min(target.getOxyLoss(), 7)) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index d56f9c19ec9..2c22c530d5b 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -386,7 +386,7 @@ //200 max knockdown for EXPLODE_HEAVY //160 max knockdown for EXPLODE_LIGHT - var/obj/item/organ/internal/ears/ears = getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = get_organ_slot(ORGAN_SLOT_EARS) switch (severity) if (EXPLODE_DEVASTATE) if(bomb_armor < EXPLODE_GIB_THRESHOLD) //gibs the mob if their bomb armor is lower than EXPLODE_GIB_THRESHOLD @@ -490,7 +490,7 @@ //SKYRAT EDIT BEGIN: MAKES POWERFUL SHOCKS HAVE A CHANCE TO STOP YOUR HEART. DANGER if(can_heartattack() && !(flags & SHOCK_ILLUSION) && shock_damage >= 70) if(shock_damage * siemens_coeff >= 1 && prob(30))//Higher chance to disrupt the pacemaker cells - var/obj/item/organ/internal/heart/heart = getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = get_organ_slot(ORGAN_SLOT_HEART) heart.Stop() visible_message("[src.name] briefly twitches; before falling limp - their breathing irratic and chest spasming violently!", \ "You feel your heart thump eratically; before ceasing to beat, a violent twitch overcoming your form!", ignored_mobs=src) @@ -499,7 +499,7 @@ //If they can't, they're missing their heart and this would runtime if(undergoing_cardiac_arrest() && can_heartattack() && !(flags & SHOCK_ILLUSION)) if(shock_damage * siemens_coeff >= 1 && prob(25)) - var/obj/item/organ/internal/heart/heart = getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = get_organ_slot(ORGAN_SLOT_HEART) if(heart.Restart() && stat == CONSCIOUS) to_chat(src, span_notice("You feel your heart beating again!")) electrocution_animation(40) diff --git a/code/modules/mob/living/carbon/human/human_helpers.dm b/code/modules/mob/living/carbon/human/human_helpers.dm index 3ae91834471..19905b7e047 100644 --- a/code/modules/mob/living/carbon/human/human_helpers.dm +++ b/code/modules/mob/living/carbon/human/human_helpers.dm @@ -234,7 +234,7 @@ var/t_his = p_their() var/t_is = p_are() //This checks to see if the body is revivable - if(key || !getorgan(/obj/item/organ/internal/brain) || ghost?.can_reenter_corpse) + if(key || !get_organ_by_type(/obj/item/organ/internal/brain) || ghost?.can_reenter_corpse) return span_deadsay("[t_He] [t_is] limp and unresponsive; there are no signs of life...") else return span_deadsay("[t_He] [t_is] limp and unresponsive; there are no signs of life and [t_his] soul has departed...") diff --git a/code/modules/mob/living/carbon/human/human_say.dm b/code/modules/mob/living/carbon/human/human_say.dm index 93e5720e5c4..251247943cc 100644 --- a/code/modules/mob/living/carbon/human/human_say.dm +++ b/code/modules/mob/living/carbon/human/human_say.dm @@ -10,7 +10,7 @@ return ..() /mob/living/carbon/human/say_mod(input, list/message_mods = list()) - var/obj/item/organ/internal/tongue/tongue = getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/tongue = get_organ_slot(ORGAN_SLOT_TONGUE) if(!tongue) if(HAS_TRAIT(src, TRAIT_SIGN_LANG)) verb_say = "signs" diff --git a/code/modules/mob/living/carbon/human/human_suicide.dm b/code/modules/mob/living/carbon/human/human_suicide.dm new file mode 100644 index 00000000000..77d066290b8 --- /dev/null +++ b/code/modules/mob/living/carbon/human/human_suicide.dm @@ -0,0 +1,93 @@ +/// This file handles anything related to suicide related to humans, as it's a bit more involved/complex than suicide on any other type of mob. +/// Defines for all the types of messages we can dispatch. +#define HUMAN_BRAIN_DAMAGE_SUICIDE_MESSAGE "brain damaged message" +#define HUMAN_COMBAT_MODE_SUICIDE_MESSAGE "combat mode message" +#define HUMAN_DEFAULT_MODE_SUICIDE_MESSAGE "default mode message" + +/mob/living/carbon/human/handle_suicide() + if(!suicide_alert()) + return + + set_suicide(TRUE) //need to be called before calling suicide_act as fuck knows what suicide_act will do with your suicide + + var/obj/item/held_item = get_active_held_item() + var/damage_type = SEND_SIGNAL(src, COMSIG_HUMAN_SUICIDE_ACT) || held_item?.suicide_act(src) + + if(damage_type) + if(apply_suicide_damage(held_item, damage_type)) + final_checkout(held_item, apply_damage = FALSE) + return + + // if no specific item or damage type we want to deal, default to doing the deed with our own bare hands. + if(combat_mode) + send_applicable_messages(HUMAN_COMBAT_MODE_SUICIDE_MESSAGE) + else + var/obj/item/organ/internal/brain/userbrain = get_organ_by_type(/obj/item/organ/internal/brain) + if(userbrain?.damage >= 75) + send_applicable_messages(HUMAN_BRAIN_DAMAGE_SUICIDE_MESSAGE) + else + send_applicable_messages(HUMAN_DEFAULT_MODE_SUICIDE_MESSAGE) + + final_checkout(held_item, apply_damage = TRUE) + +/mob/living/carbon/human/apply_suicide_damage(obj/item/suicide_tool, damage_type = NONE) + // if we don't have any damage_type passed in, default to parent. + if(damage_type == NONE) + return ..() + + if(damage_type & SHAME) + adjustStaminaLoss(200) + set_suicide(FALSE) + add_mood_event("shameful_suicide", /datum/mood_event/shameful_suicide) + return FALSE + + if(damage_type & MANUAL_SUICIDE_NONLETHAL) + set_suicide(FALSE) + return FALSE + + if(damage_type & MANUAL_SUICIDE) // Assume that the suicide tool will handle the death. + suicide_log(suicide_tool) + return FALSE + + if(damage_type & (BRUTELOSS | FIRELOSS | OXYLOSS | TOXLOSS)) + handle_suicide_damage_spread(damage_type) + return TRUE + + return ..() //if all else fails, hope parent accounts for it or just do whatever damage that parent prescribes. + +/// Any "special" suicide messages are handled by the related item that the mob uses to kill itself. This is just messages for when it's done with the bare hands. +/mob/living/carbon/human/send_applicable_messages(message_type) + var/suicide_message = "" + switch(message_type) + if(HUMAN_BRAIN_DAMAGE_SUICIDE_MESSAGE) // god damn this message is fucking stupid + suicide_message = "[src] pulls both arms outwards in front of [p_their()] chest and pumps them behind [p_their()] back, repeats this motion in a smaller range of motion \ + down to [p_their()] hips two times once more all while sliding [p_their()] legs in a faux walking motion, claps [p_their()] hands together \ + in front of [p_them()] while both [p_their()] knees knock together, pumps [p_their()] arms downward, pronating [p_their()] wrists and abducting \ + [p_their()] fingers outward while crossing [p_their()] legs back and forth, repeats this motion again two times while keeping [p_their()] shoulders low \ + and hunching over, does finger guns with right hand and left hand bent on [p_their()] hip while looking directly forward and putting [p_their()] left leg forward then \ + crossing [p_their()] arms and leaning back a little while bending [p_their()] knees at an angle! It looks like [p_theyre()] trying to commit suicide." + + if(HUMAN_COMBAT_MODE_SUICIDE_MESSAGE) + suicide_message = pick(list( + "[src] is attempting to bite [p_their()] tongue off! It looks like [p_theyre()] trying to commit suicide.", + "[src] is holding [p_their()] breath! It looks like [p_theyre()] trying to commit suicide.", + "[src] is jamming [p_their()] thumbs into [p_their()] eye sockets! It looks like [p_theyre()] trying to commit suicide.", + "[src] is twisting [p_their()] own neck! It looks like [p_theyre()] trying to commit suicide.", + )) + + if(HUMAN_DEFAULT_MODE_SUICIDE_MESSAGE) + suicide_message = pick(list( + "[src] is getting too high on life! It looks like [p_theyre()] trying to commit suicide.", + "[src] is high-fiving [p_them()]self to death! It looks like [p_theyre()] trying to commit suicide.", + "[src] is hugging [p_them()]self to death! It looks like [p_theyre()] trying to commit suicide.", + )) + + visible_message(span_danger(suicide_message), span_userdanger(suicide_message), span_hear(get_blind_suicide_message())) + +/mob/living/carbon/human/suicide_log(obj/item/suicide_tool) + investigate_log("has died from committing suicide[suicide_tool ? " with [suicide_tool]" : ""].", INVESTIGATE_DEATHS) + log_message("(job: [src.job ? "[src.job]" : "None"]) committed suicide", LOG_ATTACK) + +#undef HUMAN_BRAIN_DAMAGE_SUICIDE_MESSAGE +#undef HUMAN_COMBAT_MODE_SUICIDE_MESSAGE +#undef HUMAN_DEFAULT_MODE_SUICIDE_MESSAGE diff --git a/code/modules/mob/living/carbon/human/human_update_icons.dm b/code/modules/mob/living/carbon/human/human_update_icons.dm index 0d511d976e5..b81801e07af 100644 --- a/code/modules/mob/living/carbon/human/human_update_icons.dm +++ b/code/modules/mob/living/carbon/human/human_update_icons.dm @@ -927,7 +927,7 @@ mutant_styles: The mutant style - taur bodytype, STYLE_TESHARI, etc. // SKYRAT E // eyes if(!(NOEYESPRITES in dna.species.species_traits)) - var/obj/item/organ/internal/eyes/parent_eyes = getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/parent_eyes = get_organ_slot(ORGAN_SLOT_EYES) if(parent_eyes) add_overlay(parent_eyes.generate_body_overlay(src)) else diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index f38f3ec79df..63846fd493c 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -75,7 +75,7 @@ return ..() /mob/living/carbon/human/check_breath(datum/gas_mixture/breath) - var/L = getorganslot(ORGAN_SLOT_LUNGS) + var/L = get_organ_slot(ORGAN_SLOT_LUNGS) if(!L) if(health >= crit_threshold) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index a4ef9b12469..285df957bb7 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -318,6 +318,32 @@ GLOBAL_LIST_EMPTY(features_by_species) /datum/species/proc/copy_properties_from(datum/species/old_species) return +/** + * Gets the default mutant organ for the species based on the provided slot. + */ +/datum/species/proc/get_mutant_organ_type_for_slot(slot) + switch(slot) + if(ORGAN_SLOT_BRAIN) + return mutantbrain + if(ORGAN_SLOT_HEART) + return mutantheart + if(ORGAN_SLOT_LUNGS) + return mutantlungs + if(ORGAN_SLOT_APPENDIX) + return mutantappendix + if(ORGAN_SLOT_EYES) + return mutanteyes + if(ORGAN_SLOT_EARS) + return mutantears + if(ORGAN_SLOT_TONGUE) + return mutanttongue + if(ORGAN_SLOT_LIVER) + return mutantliver + if(ORGAN_SLOT_STOMACH) + return mutantstomach + else + CRASH("Invalid organ slot [slot]") + /** * Corrects organs in a carbon, removing ones it doesn't need and adding ones it does. * @@ -325,97 +351,98 @@ GLOBAL_LIST_EMPTY(features_by_species) * can use replace_current to refresh all organs, creating an entirely new set. * * Arguments: - * * C - carbon, the owner of the species datum AKA whoever we're regenerating organs in + * * organ_holder - carbon, the owner of the species datum AKA whoever we're regenerating organs in * * old_species - datum, used when regenerate organs is called in a switching species to remove old mutant organs. * * replace_current - boolean, forces all old organs to get deleted whether or not they pass the species' ability to keep that organ * * excluded_zones - list, add zone defines to block organs inside of the zones from getting handled. see headless mutation for an example * * visual_only - boolean, only load organs that change how the species looks. Do not use for normal gameplay stuff */ -/datum/species/proc/regenerate_organs(mob/living/carbon/C, datum/species/old_species, replace_current = TRUE, list/excluded_zones, visual_only = FALSE) +/datum/species/proc/regenerate_organs(mob/living/carbon/organ_holder, datum/species/old_species, replace_current = TRUE, list/excluded_zones, visual_only = FALSE) //what should be put in if there is no mutantorgan (brains handled separately) - var/list/slot_mutantorgans = list( - ORGAN_SLOT_BRAIN = mutantbrain, - ORGAN_SLOT_HEART = mutantheart, - ORGAN_SLOT_LUNGS = mutantlungs, - ORGAN_SLOT_APPENDIX = mutantappendix, - ORGAN_SLOT_EYES = mutanteyes, - ORGAN_SLOT_EARS = mutantears, - ORGAN_SLOT_TONGUE = mutanttongue, - ORGAN_SLOT_LIVER = mutantliver, - ORGAN_SLOT_STOMACH = mutantstomach, + var/list/organ_slots = list( + ORGAN_SLOT_BRAIN, + ORGAN_SLOT_HEART, + ORGAN_SLOT_LUNGS, + ORGAN_SLOT_APPENDIX, + ORGAN_SLOT_EYES, + ORGAN_SLOT_EARS, + ORGAN_SLOT_TONGUE, + ORGAN_SLOT_LIVER, + ORGAN_SLOT_STOMACH, ) - for(var/slot in assoc_to_keys(slot_mutantorgans)) + for(var/slot in organ_slots) + var/obj/item/organ/existing_organ = organ_holder.get_organ_slot(slot) + var/obj/item/organ/new_organ = get_mutant_organ_type_for_slot(slot) - var/obj/item/organ/oldorgan = C.getorganslot(slot) //used in removing - var/obj/item/organ/neworgan = slot_mutantorgans[slot] //used in adding - if(!neworgan) //these can be null, if so we shouldn't regenerate - if(oldorgan) // although we also need to remove the old organ if it exists - oldorgan.Remove(C, special=TRUE) - qdel(oldorgan) + if(isnull(new_organ)) // if they aren't suppose to have an organ here, remove it + if(existing_organ) + existing_organ.Remove(organ_holder, special = TRUE) + qdel(existing_organ) continue - if(visual_only && !initial(neworgan.visual)) + if(!isnull(old_species) && !isnull(existing_organ)) + if(existing_organ.type != old_species.get_mutant_organ_type_for_slot(slot)) + continue // we don't want to remove organs that are not the default for this species + + // at this point we already know new_organ is not null + if(existing_organ?.type == new_organ) + continue // we don't want to remove organs that are the same as the new one + + if(visual_only && !initial(new_organ.visual)) continue var/used_neworgan = FALSE - neworgan = SSwardrobe.provide_type(neworgan) - var/should_have = neworgan.get_availability(src, C) //organ proc that points back to a species trait (so if the species is supposed to have this organ) + new_organ = SSwardrobe.provide_type(new_organ) + var/should_have = new_organ.get_availability(src, organ_holder) - /* - * There is an existing organ in this slot, what should we do with it? Probably remove it! - * - * We will remove it if (and only if): - * - We should not have the organ OR replace_current is passed to force old organs to regenerate - * - The replaced organ is not in an excluded zone - * - The replaced organ is not unremovable or synthetic (an implant) - */ - if(oldorgan && (!should_have || replace_current) && !(oldorgan.zone in excluded_zones) && (!(oldorgan.organ_flags & (ORGAN_UNREMOVABLE|ORGAN_SYNTHETIC)) || (oldorgan.organ_flags & ORGAN_SYNTHETIC_FROM_SPECIES))) // SKYRAT EDIT - Customization - ORIGINAL: if(oldorgan && (!should_have || replace_current) && !(oldorgan.zone in excluded_zones) && !(oldorgan.organ_flags & (ORGAN_UNREMOVABLE|ORGAN_SYNTHETIC))) + // Check for an existing organ, and if there is one check to see if we should remove it + var/health_pct = 1 + var/remove_existing = !isnull(existing_organ) && !(existing_organ.zone in excluded_zones) && !(existing_organ.organ_flags & ORGAN_UNREMOVABLE) + if(remove_existing) + health_pct = (existing_organ.maxHealth - existing_organ.damage) / existing_organ.maxHealth if(slot == ORGAN_SLOT_BRAIN) - var/obj/item/organ/internal/brain/brain = oldorgan - if(!brain.decoy_override)//"Just keep it if it's fake" - confucius, probably - brain.before_organ_replacement(neworgan) - brain.Remove(C, special=TRUE, no_id_transfer=TRUE) //brain argument used so it doesn't cause any... sudden death. - QDEL_NULL(brain) - oldorgan = null //now deleted + var/obj/item/organ/internal/brain/existing_brain = existing_organ + if(!existing_brain.decoy_override) + existing_brain.before_organ_replacement(new_organ) + existing_brain.Remove(organ_holder, special = TRUE, no_id_transfer = TRUE) + QDEL_NULL(existing_organ) else - oldorgan.before_organ_replacement(neworgan) - oldorgan.Remove(C, special=TRUE) - QDEL_NULL(oldorgan) //we cannot just tab this out because we need to skip the deleting if it is a decoy brain. + existing_organ.before_organ_replacement(new_organ) + existing_organ.Remove(organ_holder, special = TRUE) + QDEL_NULL(existing_organ) - if(oldorgan) - oldorgan.setOrganDamage(0) - else if(should_have && !(initial(neworgan.zone) in excluded_zones)) + if(isnull(existing_organ) && should_have && !(new_organ.zone in excluded_zones)) used_neworgan = TRUE - neworgan.Insert(C, special=TRUE, drop_if_replaced=FALSE) + new_organ.set_organ_damage(new_organ.maxHealth * (1 - health_pct)) + new_organ.Insert(organ_holder, special = TRUE, drop_if_replaced = FALSE) if(!used_neworgan) - qdel(neworgan) + QDEL_NULL(new_organ) - if(old_species) - for(var/mutantorgan in old_species.mutant_organs) - // Snowflake check. If our species share this mutant organ, let's not remove it - // just yet as we'll be properly replacing it later. - if(mutantorgan in mutant_organs) - continue - var/obj/item/organ/current_organ = C.getorgan(mutantorgan) + if(!isnull(old_species)) + for(var/mutant_organ in old_species.mutant_organs) + if(mutant_organ in mutant_organs) + continue // need this mutant organ, but we already have it! + + var/obj/item/organ/current_organ = organ_holder.get_organ_by_type(mutant_organ) if(current_organ) - current_organ.Remove(C) + current_organ.Remove(organ_holder) QDEL_NULL(current_organ) - for(var/obj/item/organ/external/external_organ in C.organs) + for(var/obj/item/organ/external/external_organ in organ_holder.organs) // External organ checking. We need to check the external organs owned by the carbon itself, // because we want to also remove ones not shared by its species. // This should be done even if species was not changed. if(external_organ in external_organs) continue // Don't remove external organs this species is supposed to have. - external_organ.Remove(C) + + external_organ.Remove(organ_holder) QDEL_NULL(external_organ) var/list/species_organs = mutant_organs + external_organs - for(var/organ_path in species_organs) - var/obj/item/organ/current_organ = C.getorgan(organ_path) + var/obj/item/organ/current_organ = organ_holder.get_organ_by_type(organ_path) if(!current_organ || replace_current) var/obj/item/organ/replacement = SSwardrobe.provide_type(organ_path) // If there's an existing mutant organ, we're technically replacing it. @@ -424,7 +451,7 @@ GLOBAL_LIST_EMPTY(features_by_species) if(current_organ) current_organ.before_organ_replacement(replacement) // organ.Insert will qdel any current organs in that slot, so we don't need to. - replacement.Insert(C, special=TRUE, drop_if_replaced=FALSE) + replacement.Insert(organ_holder, special=TRUE, drop_if_replaced=FALSE) /datum/species/proc/worn_items_fit_body_check(mob/living/carbon/wearer) for(var/obj/item/equipped_item in wearer.get_all_worn_items()) @@ -583,12 +610,6 @@ GLOBAL_LIST_EMPTY(features_by_species) if(HAS_TRAIT(recipient, TRAIT_NOBLOOD) && isnull(recipient.dna.species.exotic_blood)) // no blood packs should be sent in this case (like if a mob transforms into a plasmaman) quirk.mail_goodies = list() return - - // The default case if no species implementation exists. Set quirk's mail_goodies to initial. - var/datum/quirk/readable_quirk = new quirk.type - quirk.mail_goodies = readable_quirk.mail_goodies - qdel(readable_quirk) // We have to do it this way because initial will not work on lists in this version of DM - return /** * Handles the body of a human @@ -622,7 +643,7 @@ GLOBAL_LIST_EMPTY(features_by_species) // eyes if(!(NOEYESPRITES in species_traits)) - var/obj/item/organ/internal/eyes/eye_organ = species_human.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eye_organ = species_human.get_organ_slot(ORGAN_SLOT_EYES) var/mutable_appearance/no_eyeslay var/add_pixel_x = 0 var/add_pixel_y = 0 @@ -876,7 +897,7 @@ GLOBAL_LIST_EMPTY(features_by_species) ///Proc that will randomize all the external organs (i.e. horns, frills, tails etc.) of a species' associated mob /datum/species/proc/randomize_external_organs(mob/living/carbon/human/human_mob) for(var/obj/item/organ/external/organ_path as anything in external_organs) - var/obj/item/organ/external/randomized_organ = human_mob.getorgan(organ_path) + var/obj/item/organ/external/randomized_organ = human_mob.get_organ_by_type(organ_path) if(randomized_organ) var/datum/bodypart_overlay/mutant/overlay = randomized_organ.bodypart_overlay var/new_look = pick(overlay.get_global_feature_list()) @@ -962,7 +983,7 @@ GLOBAL_LIST_EMPTY(features_by_species) if(ITEM_SLOT_EYES) if(!H.get_bodypart(BODY_ZONE_HEAD)) return FALSE - var/obj/item/organ/internal/eyes/eyes = H.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = H.get_organ_slot(ORGAN_SLOT_EYES) if(eyes?.no_glasses) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) @@ -1181,7 +1202,7 @@ GLOBAL_LIST_EMPTY(features_by_species) return TRUE else - var/obj/item/organ/internal/brain/brain = user.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = user.get_organ_slot(ORGAN_SLOT_BRAIN) var/obj/item/bodypart/attacking_bodypart if(brain) attacking_bodypart = brain.get_attacking_limb(target) @@ -1802,7 +1823,7 @@ GLOBAL_LIST_EMPTY(features_by_species) /datum/species/proc/spec_stun(mob/living/carbon/human/H,amount) if(H.movement_type & FLYING) - var/obj/item/organ/external/wings/functional/wings = H.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS) + var/obj/item/organ/external/wings/functional/wings = H.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS) if(wings) wings.toggle_flight(H) wings.fly_slip(H) diff --git a/code/modules/mob/living/carbon/human/species_types/dullahan.dm b/code/modules/mob/living/carbon/human/species_types/dullahan.dm index 224d29a9e82..1fb0a1dd0da 100644 --- a/code/modules/mob/living/carbon/human/species_types/dullahan.dm +++ b/code/modules/mob/living/carbon/human/species_types/dullahan.dm @@ -95,7 +95,7 @@ human.gib() // Yeah so giving them a head on their body is really not a good idea, so their original head will remain but uh, good luck fixing it after that. /datum/species/dullahan/proc/update_vision_perspective(mob/living/carbon/human/human) - var/obj/item/organ/internal/eyes/eyes = human.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = human.get_organ_slot(ORGAN_SLOT_EYES) if(eyes) human.update_tint() if(eyes.tint) @@ -106,7 +106,7 @@ prevent_perspective_change = TRUE /datum/species/dullahan/on_owner_login(mob/living/carbon/human/owner) - var/obj/item/organ/internal/eyes/eyes = owner.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = owner.get_organ_slot(ORGAN_SLOT_EYES) if(owner_first_client_connection_handled) if(!eyes.tint) owner.reset_perspective(my_head, TRUE) diff --git a/code/modules/mob/living/carbon/human/species_types/ethereal.dm b/code/modules/mob/living/carbon/human/species_types/ethereal.dm index 212f0f8d1e5..dbd4c64591a 100644 --- a/code/modules/mob/living/carbon/human/species_types/ethereal.dm +++ b/code/modules/mob/living/carbon/human/species_types/ethereal.dm @@ -86,7 +86,7 @@ new_ethereal.set_safe_hunger_level() update_mail_goodies(ethereal) - var/obj/item/organ/internal/heart/ethereal/ethereal_heart = new_ethereal.getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/ethereal/ethereal_heart = new_ethereal.get_organ_slot(ORGAN_SLOT_HEART) ethereal_heart.ethereal_color = default_color for(var/obj/item/bodypart/limb as anything in new_ethereal.bodyparts) diff --git a/code/modules/mob/living/carbon/human/species_types/felinid.dm b/code/modules/mob/living/carbon/human/species_types/felinid.dm index 6b5565e7594..bea7cb2b054 100644 --- a/code/modules/mob/living/carbon/human/species_types/felinid.dm +++ b/code/modules/mob/living/carbon/human/species_types/felinid.dm @@ -63,7 +63,7 @@ /proc/purrbation_toggle(mob/living/carbon/human/target_human, silent = FALSE) if(!ishuman(target_human)) return - if(!istype(target_human.getorganslot(ORGAN_SLOT_EARS), /obj/item/organ/internal/ears/cat)) + if(!istype(target_human.get_organ_slot(ORGAN_SLOT_EARS), /obj/item/organ/internal/ears/cat)) purrbation_apply(target_human, silent = silent) . = TRUE else @@ -83,7 +83,7 @@ var/obj/item/organ/external/tail/cat/kitty_tail = new // This removes the spines if they exist - var/obj/item/organ/external/spines/current_spines = soon_to_be_felinid.getorganslot(ORGAN_SLOT_EXTERNAL_SPINES) + var/obj/item/organ/external/spines/current_spines = soon_to_be_felinid.get_organ_slot(ORGAN_SLOT_EXTERNAL_SPINES) if(current_spines) current_spines.Remove(soon_to_be_felinid, special = TRUE) qdel(current_spines) @@ -108,7 +108,7 @@ var/datum/species/target_species = purrbated_human.dna.species // From the previous check we know they're not a felinid, therefore removing cat ears and tail is safe - var/obj/item/organ/external/tail/old_tail = purrbated_human.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/old_tail = purrbated_human.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(istype(old_tail, /obj/item/organ/external/tail/cat)) old_tail.Remove(purrbated_human, special = TRUE) qdel(old_tail) @@ -122,7 +122,7 @@ var/obj/item/organ/external/spines/new_spines = new external_organ() new_spines.Insert(purrbated_human, special = TRUE, drop_if_replaced = FALSE) - var/obj/item/organ/internal/ears/old_ears = purrbated_human.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/old_ears = purrbated_human.get_organ_slot(ORGAN_SLOT_EARS) if(istype(old_ears, /obj/item/organ/internal/ears/cat)) var/obj/item/organ/new_ears = new target_species.mutantears() new_ears.Insert(purrbated_human, special = TRUE, drop_if_replaced = FALSE) @@ -135,7 +135,7 @@ human_for_preview.update_body_parts() /* SKYRAT EDIT - Making the species menu icons work better - ORIGINAL: - var/obj/item/organ/internal/ears/cat/cat_ears = human_for_preview.getorgan(/obj/item/organ/internal/ears/cat) + var/obj/item/organ/internal/ears/cat/cat_ears = human_for_preview.get_organ_by_type(/obj/item/organ/internal/ears/cat) if (cat_ears) cat_ears.color = human_for_preview.hair_color human_for_preview.update_body() diff --git a/code/modules/mob/living/carbon/human/species_types/golems.dm b/code/modules/mob/living/carbon/human/species_types/golems.dm index 32f32e8850a..55fa04ba9e3 100644 --- a/code/modules/mob/living/carbon/human/species_types/golems.dm +++ b/code/modules/mob/living/carbon/human/species_types/golems.dm @@ -607,7 +607,7 @@ COOLDOWN_START(src, honkooldown, 0) COOLDOWN_START(src, banana_cooldown, banana_delay) RegisterSignal(C, COMSIG_MOB_SAY, PROC_REF(handle_speech)) - var/obj/item/organ/internal/liver/liver = C.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = C.get_organ_slot(ORGAN_SLOT_LIVER) if(liver) ADD_TRAIT(liver, TRAIT_COMEDY_METABOLISM, SPECIES_TRAIT) @@ -615,7 +615,7 @@ . = ..() UnregisterSignal(C, COMSIG_MOB_SAY) - var/obj/item/organ/internal/liver/liver = C.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = C.get_organ_slot(ORGAN_SLOT_LIVER) if(liver) REMOVE_TRAIT(liver, TRAIT_COMEDY_METABOLISM, SPECIES_TRAIT) diff --git a/code/modules/mob/living/carbon/human/species_types/zombies.dm b/code/modules/mob/living/carbon/human/species_types/zombies.dm index 03f62813ed4..eb0a48ab675 100644 --- a/code/modules/mob/living/carbon/human/species_types/zombies.dm +++ b/code/modules/mob/living/carbon/human/species_types/zombies.dm @@ -162,7 +162,7 @@ /datum/species/zombie/infectious/spec_death(gibbed, mob/living/carbon/C) . = ..() var/obj/item/organ/internal/zombie_infection/infection - infection = C.getorganslot(ORGAN_SLOT_ZOMBIE) + infection = C.get_organ_slot(ORGAN_SLOT_ZOMBIE) if(infection) qdel(infection) @@ -173,7 +173,7 @@ // Infection organ needs to be handled separately from mutant_organs // because it persists through species transitions var/obj/item/organ/internal/zombie_infection/infection - infection = C.getorganslot(ORGAN_SLOT_ZOMBIE) + infection = C.get_organ_slot(ORGAN_SLOT_ZOMBIE) if(!infection) infection = new() infection.Insert(C) diff --git a/code/modules/mob/living/carbon/inventory.dm b/code/modules/mob/living/carbon/inventory.dm index 01c10870f9a..08b752f9804 100644 --- a/code/modules/mob/living/carbon/inventory.dm +++ b/code/modules/mob/living/carbon/inventory.dm @@ -186,7 +186,7 @@ /// Returns TRUE if a breathing tube is equipped. /mob/living/carbon/proc/can_breathe_tube() - if (getorganslot(ORGAN_SLOT_BREATHING_TUBE)) + if (get_organ_slot(ORGAN_SLOT_BREATHING_TUBE)) return TRUE /// Returns TRUE if an air tank compatible mask or breathing tube is equipped. diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index 0b17b7012e7..90bb9e258d6 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -56,8 +56,8 @@ // Start of a breath chain, calls [carbon/proc/breathe()] /mob/living/carbon/handle_breathing(delta_time, times_fired) var/next_breath = 4 - var/obj/item/organ/internal/lungs/L = getorganslot(ORGAN_SLOT_LUNGS) - var/obj/item/organ/internal/heart/H = getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/lungs/L = get_organ_slot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/heart/H = get_organ_slot(ORGAN_SLOT_HEART) if(L) if(L.damage > L.high_threshold) next_breath-- @@ -78,7 +78,7 @@ // Second link in a breath chain, calls [carbon/proc/check_breath()] /mob/living/carbon/proc/breathe(delta_time, times_fired) - var/obj/item/organ/internal/lungs = getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs = get_organ_slot(ORGAN_SLOT_LUNGS) if(SEND_SIGNAL(src, COMSIG_CARBON_ATTEMPT_BREATHE) & COMSIG_CARBON_BLOCK_BREATH) return @@ -90,7 +90,7 @@ var/datum/gas_mixture/breath - if(!getorganslot(ORGAN_SLOT_BREATHING_TUBE)) + if(!get_organ_slot(ORGAN_SLOT_BREATHING_TUBE)) if(health <= HEALTH_THRESHOLD_FULLCRIT || (pulledby?.grab_state >= GRAB_KILL) || (lungs?.organ_flags & ORGAN_FAILING)) losebreath++ //You can't breath at all when in critical or when being choked, so you're going to miss a breath @@ -200,7 +200,7 @@ /// Indicates if there are moles of gas in the breath. var/has_moles = breath.total_moles() != 0 - var/obj/item/organ/internal/lungs = getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs = get_organ_slot(ORGAN_SLOT_LUNGS) // Indicates if lungs can breathe without gas. var/can_breathe_vacuum = FALSE if(lungs) @@ -500,7 +500,7 @@ // NOTE: organs_slot is sorted by GLOB.organ_process_order on insertion for(var/slot in organs_slot) - // We don't use getorganslot here because we know we have the organ we want, since we're iterating the list containing em already + // We don't use get_organ_slot here because we know we have the organ we want, since we're iterating the list containing em already // This code is hot enough that it's just not worth the time var/obj/item/organ/internal/organ = organs_slot[slot] if(organ?.owner) // This exist mostly because reagent metabolization can cause organ reshuffling @@ -711,7 +711,7 @@ /mob/living/carbon/get_fullness() var/fullness = nutrition - var/obj/item/organ/internal/stomach/belly = getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/belly = get_organ_slot(ORGAN_SLOT_STOMACH) if(!belly) //nothing to see here if we do not have a stomach return fullness @@ -729,7 +729,7 @@ . = ..() if(.) return - var/obj/item/organ/internal/stomach/belly = getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/belly = get_organ_slot(ORGAN_SLOT_STOMACH) if(!belly) return FALSE return belly.reagents.has_reagent(reagent, amount, needs_metabolizing) @@ -744,7 +744,7 @@ if(!dna) return - var/obj/item/organ/internal/liver/liver = getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = get_organ_slot(ORGAN_SLOT_LIVER) if(liver) return @@ -758,7 +758,7 @@ adjustOrganLoss(pick(ORGAN_SLOT_HEART, ORGAN_SLOT_LUNGS, ORGAN_SLOT_STOMACH, ORGAN_SLOT_EYES, ORGAN_SLOT_EARS), 0.5* delta_time) /mob/living/carbon/proc/undergoing_liver_failure() - var/obj/item/organ/internal/liver/liver = getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = get_organ_slot(ORGAN_SLOT_LIVER) if(liver?.organ_flags & ORGAN_FAILING) return TRUE @@ -778,7 +778,7 @@ /mob/living/carbon/proc/can_heartattack() if(!needs_heart()) return FALSE - var/obj/item/organ/internal/heart/heart = getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = get_organ_slot(ORGAN_SLOT_HEART) if(!heart || (heart.organ_flags & ORGAN_SYNTHETIC)) return FALSE return TRUE @@ -798,7 +798,7 @@ * related situations (i.e not just cardiac arrest) */ /mob/living/carbon/proc/undergoing_cardiac_arrest() - var/obj/item/organ/internal/heart/heart = getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = get_organ_slot(ORGAN_SLOT_HEART) if(istype(heart) && heart.beating) return FALSE else if(!needs_heart()) @@ -809,7 +809,7 @@ if(!can_heartattack()) return FALSE - var/obj/item/organ/internal/heart/heart = getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = get_organ_slot(ORGAN_SLOT_HEART) if(!istype(heart)) return diff --git a/code/modules/mob/living/carbon/skillchip.dm b/code/modules/mob/living/carbon/skillchip.dm index da44268b0ac..19009f21892 100644 --- a/code/modules/mob/living/carbon/skillchip.dm +++ b/code/modules/mob/living/carbon/skillchip.dm @@ -9,7 +9,7 @@ */ /mob/living/carbon/proc/implant_skillchip(obj/item/skillchip/skillchip, force = FALSE) // Grab the brain. - var/obj/item/organ/internal/brain/brain = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = get_organ_slot(ORGAN_SLOT_BRAIN) // Check for the brain. No brain = no implant. if(QDELETED(brain)) @@ -37,7 +37,7 @@ */ /mob/living/carbon/proc/remove_skillchip(obj/item/skillchip/skillchip, silent = FALSE) // Check the target's brain, making sure the target exists and has a brain. - var/obj/item/organ/internal/brain/brain = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = get_organ_slot(ORGAN_SLOT_BRAIN) if(QDELETED(brain)) return FALSE @@ -59,7 +59,7 @@ */ /mob/living/carbon/proc/clone_skillchip_list(not_removable = FALSE) // Check the target's brain, making sure the target exists and has a brain. - var/obj/item/organ/internal/brain/brain = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = get_organ_slot(ORGAN_SLOT_BRAIN) if(QDELETED(brain)) return list() @@ -70,7 +70,7 @@ */ /mob/living/carbon/proc/destroy_all_skillchips(silent = FALSE) // Check the target's brain, making sure the target exists and has a brain. - var/obj/item/organ/internal/brain/brain = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = get_organ_slot(ORGAN_SLOT_BRAIN) if(QDELETED(brain)) return FALSE diff --git a/code/modules/mob/living/carbon/status_procs.dm b/code/modules/mob/living/carbon/status_procs.dm index 411ded8c4d4..35e30bb8f9a 100644 --- a/code/modules/mob/living/carbon/status_procs.dm +++ b/code/modules/mob/living/carbon/status_procs.dm @@ -28,17 +28,17 @@ /mob/living/carbon/proc/get_traumas() . = list() - var/obj/item/organ/internal/brain/B = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/B = get_organ_slot(ORGAN_SLOT_BRAIN) if(B) . = B.traumas /mob/living/carbon/proc/has_trauma_type(brain_trauma_type, resilience) - var/obj/item/organ/internal/brain/B = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/B = get_organ_slot(ORGAN_SLOT_BRAIN) if(B) . = B.has_trauma_type(brain_trauma_type, resilience) /mob/living/carbon/proc/gain_trauma(datum/brain_trauma/trauma, resilience, ...) - var/obj/item/organ/internal/brain/B = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/B = get_organ_slot(ORGAN_SLOT_BRAIN) if(B) var/list/arguments = list() if(args.len > 2) @@ -46,16 +46,16 @@ . = B.brain_gain_trauma(trauma, resilience, arguments) /mob/living/carbon/proc/gain_trauma_type(brain_trauma_type = /datum/brain_trauma, resilience) - var/obj/item/organ/internal/brain/B = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/B = get_organ_slot(ORGAN_SLOT_BRAIN) if(B) . = B.gain_trauma_type(brain_trauma_type, resilience) /mob/living/carbon/proc/cure_trauma_type(brain_trauma_type = /datum/brain_trauma, resilience) - var/obj/item/organ/internal/brain/B = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/B = get_organ_slot(ORGAN_SLOT_BRAIN) if(B) . = B.cure_trauma_type(brain_trauma_type, resilience) /mob/living/carbon/proc/cure_all_traumas(resilience) - var/obj/item/organ/internal/brain/B = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/B = get_organ_slot(ORGAN_SLOT_BRAIN) if(B) . = B.cure_all_traumas(resilience) diff --git a/code/modules/mob/living/damage_procs.dm b/code/modules/mob/living/damage_procs.dm index 68957094ee2..cba94125388 100644 --- a/code/modules/mob/living/damage_procs.dm +++ b/code/modules/mob/living/damage_procs.dm @@ -189,7 +189,7 @@ if(status_flags & GODMODE) return - var/obj/item/organ/internal/lungs/affected_lungs = getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/affected_lungs = get_organ_slot(ORGAN_SLOT_LUNGS) if(isnull(affected_lungs)) if(!(mob_respiration_type & required_respiration_type)) // if the mob has no lungs, use mob_respiration_type return @@ -208,7 +208,7 @@ if(status_flags & GODMODE) return - var/obj/item/organ/internal/lungs/affected_lungs = getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/affected_lungs = get_organ_slot(ORGAN_SLOT_LUNGS) if(isnull(affected_lungs)) if(!(mob_respiration_type & required_respiration_type)) return @@ -293,7 +293,7 @@ /mob/living/proc/setOrganLoss(slot, amount, maximum, required_organtype) return -/mob/living/proc/getOrganLoss(slot) +/mob/living/proc/get_organ_loss(slot) return /mob/living/proc/getStaminaLoss() diff --git a/code/modules/mob/living/emote.dm b/code/modules/mob/living/emote.dm index 7bf2281fbee..caec685729f 100644 --- a/code/modules/mob/living/emote.dm +++ b/code/modules/mob/living/emote.dm @@ -142,9 +142,13 @@ if(. && ishuman(user)) var/mob/living/carbon/human/H = user var/open = FALSE +<<<<<<< HEAD // if(H.dna.features["wings"] != "None") // This was our check before, leaving it here in case it's needed when someone gets around to fixing this. // if(H.dna.species.mutant_bodyparts["wingsopen"]) - var/obj/item/organ/external/wings/functional/wings = H.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS) + var/obj/item/organ/external/wings/functional/wings = H.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS) +======= + var/obj/item/organ/external/wings/functional/wings = H.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS) +>>>>>>> ecbcef778df (Refactors Regenerate Organs, and a few organ helpers (#74219)) if(istype(wings)) if(wings.wings_open) open = TRUE diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 38dfd63ded6..10e0d40df68 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -349,7 +349,7 @@ if(!supress_message && !(iscarbon(AM) && HAS_TRAIT(src, TRAIT_STRONG_GRABBER))) //SKYRAT EDIT START - Tail coiling if(ishuman(M)) - if(zone_selected == BODY_ZONE_PRECISE_GROIN && M.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) && src.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL)) + if(zone_selected == BODY_ZONE_PRECISE_GROIN && M.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) && src.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL)) M.visible_message(span_warning("[src] coils their tail with [AM], wow is that okay in public?!"), "[src] has entwined their tail with yours!") to_chat(src, "You entwine your tail with [AM]") else @@ -1871,7 +1871,7 @@ GLOBAL_LIST_EMPTY(fire_appearances) TOXIN:[getToxLoss()] OXY:[getOxyLoss()] CLONE:[getCloneLoss()] - BRAIN:[getOrganLoss(ORGAN_SLOT_BRAIN)] + BRAIN:[get_organ_loss(ORGAN_SLOT_BRAIN)] STAMINA:[getStaminaLoss()] "} diff --git a/code/modules/mob/living/simple_animal/bot/honkbot.dm b/code/modules/mob/living/simple_animal/bot/honkbot.dm index 9bdab65e93b..26c22ca1dca 100644 --- a/code/modules/mob/living/simple_animal/bot/honkbot.dm +++ b/code/modules/mob/living/simple_animal/bot/honkbot.dm @@ -67,7 +67,7 @@ return current_target.set_stutter(40 SECONDS) - var/obj/item/organ/internal/ears/target_ears = current_target.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/target_ears = current_target.get_organ_slot(ORGAN_SLOT_EARS) if(target_ears && !HAS_TRAIT(current_target, TRAIT_DEAF)) target_ears.adjustEarDamage(0, 5) //far less damage than the H.O.N.K. current_target.set_jitter_if_lower(100 SECONDS) diff --git a/code/modules/mob/living/simple_animal/hostile/cat_butcher.dm b/code/modules/mob/living/simple_animal/hostile/cat_butcher.dm index 48c15e52c5f..e5fcc922d9a 100644 --- a/code/modules/mob/living/simple_animal/hostile/cat_butcher.dm +++ b/code/modules/mob/living/simple_animal/hostile/cat_butcher.dm @@ -38,7 +38,7 @@ . = ..() if(. && prob(35) && iscarbon(target)) var/mob/living/carbon/human/L = target - var/obj/item/organ/external/tail/cat/tail = L.getorgan(/obj/item/organ/external/tail/cat) + var/obj/item/organ/external/tail/cat/tail = L.get_organ_by_type(/obj/item/organ/external/tail/cat) if(!QDELETED(tail)) visible_message(span_notice("[src] severs [L]'s tail in one swift swipe!"), span_notice("You sever [L]'s tail in one swift swipe.")) tail.Remove(L) diff --git a/code/modules/mob/living/taste.dm b/code/modules/mob/living/taste.dm index a4597b2ff67..fc8fcbb3717 100644 --- a/code/modules/mob/living/taste.dm +++ b/code/modules/mob/living/taste.dm @@ -14,7 +14,7 @@ return DEFAULT_TASTE_SENSITIVITY /mob/living/carbon/get_taste_sensitivity() - var/obj/item/organ/internal/tongue/tongue = getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/tongue = get_organ_slot(ORGAN_SLOT_TONGUE) if(istype(tongue)) . = tongue.taste_sensitivity else diff --git a/code/modules/mod/mod_core.dm b/code/modules/mod/mod_core.dm index beda0e19759..9feb1af26fb 100644 --- a/code/modules/mod/mod_core.dm +++ b/code/modules/mod/mod_core.dm @@ -243,7 +243,7 @@ var/charge_modifier = 0.1 /obj/item/mod/core/ethereal/charge_source() - var/obj/item/organ/internal/stomach/ethereal/ethereal_stomach = mod.wearer.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/ethereal/ethereal_stomach = mod.wearer.get_organ_slot(ORGAN_SLOT_STOMACH) if(!istype(ethereal_stomach)) return return ethereal_stomach diff --git a/code/modules/mod/modules/modules_medical.dm b/code/modules/mod/modules/modules_medical.dm index 341789ded3e..7b1d33d985e 100644 --- a/code/modules/mod/modules/modules_medical.dm +++ b/code/modules/mod/modules/modules_medical.dm @@ -201,7 +201,7 @@ succeed = TRUE break if(succeed) - var/list/organs_to_boot_out = organ_receiver.getorganslot(organ.slot) + var/list/organs_to_boot_out = organ_receiver.get_organ_slot(organ.slot) for(var/obj/item/organ/organ_evacced as anything in organs_to_boot_out) if(organ_evacced.organ_flags & ORGAN_UNREMOVABLE) continue diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm index b72929608ab..a16cc3a166e 100644 --- a/code/modules/paperwork/paperplane.dm +++ b/code/modules/paperwork/paperplane.dm @@ -57,12 +57,12 @@ return ..() /obj/item/paperplane/suicide_act(mob/living/user) - var/obj/item/organ/internal/eyes/eyes = user.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = user.get_organ_slot(ORGAN_SLOT_EYES) user.Stun(200) user.visible_message(span_suicide("[user] jams [src] in [user.p_their()] nose. It looks like [user.p_theyre()] trying to commit suicide!")) user.adjust_eye_blur(12 SECONDS) if(eyes) - eyes.applyOrganDamage(rand(impact_eye_damage_lower, impact_eye_damage_higher)) // SKYRAT EDIT START - Better paper planes + eyes.apply_organ_damage(rand(impact_eye_damage_lower, impact_eye_damage_higher)) // SKYRAT EDIT START - Better paper planes sleep(1 SECONDS) return BRUTELOSS @@ -117,7 +117,7 @@ // SKYRAT EDIT END return var/mob/living/carbon/human/H = hit_atom - var/obj/item/organ/internal/eyes/eyes = H.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = H.get_organ_slot(ORGAN_SLOT_EYES) if(prob(hit_probability)) if(H.is_eyes_covered()) // SKYRAT EDIT START - Better paper planes @@ -127,9 +127,8 @@ return visible_message(span_danger("\The [src] hits [H] in the eye[eyes ? "" : " socket"]!")) H.adjust_eye_blur(12 SECONDS) - // SKYRAT EDIT START - Better paper planes - eyes?.applyOrganDamage(rand(impact_eye_damage_lower, impact_eye_damage_higher)) - H.Knockdown(knockdown_duration) + eyes?.apply_organ_damage(rand(impact_eye_damage_lower, impact_eye_damage_higher)) + H.Knockdown(40) H.emote("scream") if(delete_on_impact) diff --git a/code/modules/power/apc/apc_attack.dm b/code/modules/power/apc/apc_attack.dm index ef413ae1a2d..79ef84cac4d 100644 --- a/code/modules/power/apc/apc_attack.dm +++ b/code/modules/power/apc/apc_attack.dm @@ -178,7 +178,7 @@ if(!ishuman(user)) return var/mob/living/carbon/human/apc_interactor = user - var/obj/item/organ/internal/stomach/ethereal/maybe_ethereal_stomach = apc_interactor.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/ethereal/maybe_ethereal_stomach = apc_interactor.get_organ_slot(ORGAN_SLOT_STOMACH) if(!istype(maybe_ethereal_stomach)) togglelock(user) else @@ -192,7 +192,7 @@ if(!ishuman(user)) return var/mob/living/carbon/human/ethereal = user - var/obj/item/organ/internal/stomach/maybe_stomach = ethereal.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/maybe_stomach = ethereal.get_organ_slot(ORGAN_SLOT_STOMACH) // how long we wanna wait before we show the balloon alert. don't want it to be very long in case the ethereal wants to opt-out of doing that action, just long enough to where it doesn't collide with previously queued balloon alerts. var/alert_timer_duration = 0.75 SECONDS diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index 3c8f6a98a62..c5534494b94 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -236,7 +236,7 @@ /obj/item/stock_parts/cell/attack_self(mob/user) if(ishuman(user)) var/mob/living/carbon/human/H = user - var/obj/item/organ/internal/stomach/maybe_stomach = H.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/maybe_stomach = H.get_organ_slot(ORGAN_SLOT_STOMACH) if(istype(maybe_stomach, /obj/item/organ/internal/stomach/ethereal)) diff --git a/code/modules/power/lighting/light.dm b/code/modules/power/lighting/light.dm index 04fe9047125..65b17dba048 100644 --- a/code/modules/power/lighting/light.dm +++ b/code/modules/power/lighting/light.dm @@ -557,7 +557,7 @@ var/protected = FALSE if(istype(user)) - var/obj/item/organ/internal/stomach/maybe_stomach = user.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/maybe_stomach = user.get_organ_slot(ORGAN_SLOT_STOMACH) if(istype(maybe_stomach, /obj/item/organ/internal/stomach/ethereal)) var/obj/item/organ/internal/stomach/ethereal/stomach = maybe_stomach if(stomach.drain_time > world.time) diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/ballistic.dm index f3f3f153c6c..07b7b9782bc 100644 --- a/code/modules/projectiles/guns/ballistic.dm +++ b/code/modules/projectiles/guns/ballistic.dm @@ -554,7 +554,7 @@ #define BRAINS_BLOWN_THROW_SPEED 1 /obj/item/gun/ballistic/suicide_act(mob/living/user) - var/obj/item/organ/internal/brain/B = user.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/B = user.get_organ_slot(ORGAN_SLOT_BRAIN) if (B && chambered && chambered.loaded_projectile && can_trigger_gun(user) && chambered.loaded_projectile.damage > 0) user.visible_message(span_suicide("[user] is putting the barrel of [src] in [user.p_their()] mouth. It looks like [user.p_theyre()] trying to commit suicide!")) sleep(2.5 SECONDS) diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 9fa7a07b2ea..94cded825ed 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -481,7 +481,7 @@ else if(!ignore_stomach && (methods & INGEST) && iscarbon(target)) var/mob/living/carbon/eater = target - var/obj/item/organ/internal/stomach/belly = eater.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/belly = eater.get_organ_slot(ORGAN_SLOT_STOMACH) if(!belly) eater.expel_ingested(my_atom, amount) return @@ -714,8 +714,8 @@ expose_temperature(owner.bodytemperature, 0.25) var/need_mob_update = FALSE - var/obj/item/organ/internal/stomach/belly = owner.getorganslot(ORGAN_SLOT_STOMACH) - var/obj/item/organ/internal/liver/liver = owner.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/stomach/belly = owner.get_organ_slot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/liver/liver = owner.get_organ_slot(ORGAN_SLOT_LIVER) var/liver_tolerance if(liver) var/liver_health_percent = (liver.maxHealth - liver.damage) / liver.maxHealth diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index b03749c4bc0..a3b548661d3 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -59,9 +59,9 @@ // Volume, power, and server alcohol rate effect how quickly one gets drunk drinker.adjust_drunk_effect(sqrt(volume) * booze_power * ALCOHOL_RATE * REM * delta_time) if(boozepwr > 0) - var/obj/item/organ/internal/liver/liver = drinker.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = drinker.get_organ_slot(ORGAN_SLOT_LIVER) if (istype(liver)) - liver.applyOrganDamage(((max(sqrt(volume) * (boozepwr ** ALCOHOL_EXPONENT) * liver.alcohol_tolerance * delta_time, 0))/150)) + liver.apply_organ_damage(((max(sqrt(volume) * (boozepwr ** ALCOHOL_EXPONENT) * liver.alcohol_tolerance * delta_time, 0))/150)) return ..() /datum/reagent/consumable/ethanol/expose_obj(obj/exposed_obj, reac_volume) @@ -293,7 +293,7 @@ to_chat(drinker, span_notice("[pick("You have a really bad headache.", "Your eyes hurt.", "You find it hard to stay still.", "You feel your heart practically beating out of your chest.")]")) if(DT_PROB(2.5, delta_time) && iscarbon(drinker)) - var/obj/item/organ/internal/eyes/eyes = drinker.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = drinker.get_organ_slot(ORGAN_SLOT_EYES) if(drinker.is_blind()) if(istype(eyes)) eyes.Remove(drinker) @@ -303,7 +303,7 @@ drinker.adjustBruteLoss(15, required_bodytype = affected_bodytype) else to_chat(drinker, span_userdanger("You scream in terror as you go blind!")) - eyes.applyOrganDamage(eyes.maxHealth) + eyes.apply_organ_damage(eyes.maxHealth) drinker.emote("scream") if(DT_PROB(1.5, delta_time) && iscarbon(drinker)) @@ -844,7 +844,7 @@ )) /datum/reagent/consumable/ethanol/screwdrivercocktail/on_mob_life(mob/living/carbon/drinker, delta_time, times_fired) - var/obj/item/organ/internal/liver/liver = drinker.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = drinker.get_organ_slot(ORGAN_SLOT_LIVER) if(HAS_TRAIT(liver, TRAIT_ENGINEER_METABOLISM)) ADD_TRAIT(drinker, TRAIT_HALT_RADIATION_EFFECTS, "[type]") if (HAS_TRAIT(drinker, TRAIT_IRRADIATED)) @@ -1006,7 +1006,7 @@ if(HAS_TRAIT(drinker, TRAIT_ALCOHOL_TOLERANCE)) metabolization_rate = 0.8 // if you don't have a liver, or your liver isn't an officer's liver - var/obj/item/organ/internal/liver/liver = drinker.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = drinker.get_organ_slot(ORGAN_SLOT_LIVER) if(!liver || !HAS_TRAIT(liver, TRAIT_LAW_ENFORCEMENT_METABOLISM)) beepsky_hallucination = new() drinker.gain_trauma(beepsky_hallucination, TRAUMA_RESILIENCE_ABSOLUTE) @@ -1014,7 +1014,7 @@ /datum/reagent/consumable/ethanol/beepsky_smash/on_mob_life(mob/living/carbon/drinker, delta_time, times_fired) drinker.set_jitter_if_lower(4 SECONDS) - var/obj/item/organ/internal/liver/liver = drinker.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = drinker.get_organ_slot(ORGAN_SLOT_LIVER) // if you have a liver and that liver is an officer's liver if(liver && HAS_TRAIT(liver, TRAIT_LAW_ENFORCEMENT_METABOLISM)) . = TRUE @@ -1032,7 +1032,7 @@ return ..() /datum/reagent/consumable/ethanol/beepsky_smash/overdose_start(mob/living/carbon/drinker) - var/obj/item/organ/internal/liver/liver = drinker.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = drinker.get_organ_slot(ORGAN_SLOT_LIVER) // if you don't have a liver, or your liver isn't an officer's liver if(!liver || !HAS_TRAIT(liver, TRAIT_LAW_ENFORCEMENT_METABOLISM)) drinker.gain_trauma(/datum/brain_trauma/mild/phobia/security, TRAUMA_RESILIENCE_BASIC) @@ -1766,7 +1766,7 @@ icon_state = "bananahonkglass" /datum/reagent/consumable/ethanol/bananahonk/on_mob_life(mob/living/carbon/drinker, delta_time, times_fired) - var/obj/item/organ/internal/liver/liver = drinker.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = drinker.get_organ_slot(ORGAN_SLOT_LIVER) if((liver && HAS_TRAIT(liver, TRAIT_COMEDY_METABOLISM)) || ismonkey(drinker)) drinker.heal_bodypart_damage(1 * REM * delta_time, 1 * REM * delta_time) . = TRUE @@ -2194,7 +2194,7 @@ /datum/reagent/consumable/ethanol/quadruple_sec/on_mob_life(mob/living/carbon/drinker, delta_time, times_fired) //Securidrink in line with the Screwdriver for engineers or Nothing for mimes - var/obj/item/organ/internal/liver/liver = drinker.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = drinker.get_organ_slot(ORGAN_SLOT_LIVER) if(liver && HAS_TRAIT(liver, TRAIT_LAW_ENFORCEMENT_METABOLISM)) drinker.heal_bodypart_damage(1 * REM * delta_time, 1 * REM * delta_time) . = TRUE @@ -2218,7 +2218,7 @@ /datum/reagent/consumable/ethanol/quintuple_sec/on_mob_life(mob/living/carbon/drinker, delta_time, times_fired) //Securidrink in line with the Screwdriver for engineers or Nothing for mimes but STRONG.. - var/obj/item/organ/internal/liver/liver = drinker.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = drinker.get_organ_slot(ORGAN_SLOT_LIVER) if(liver && HAS_TRAIT(liver, TRAIT_LAW_ENFORCEMENT_METABOLISM)) drinker.heal_bodypart_damage(2 * REM * delta_time, 2 * REM * delta_time) drinker.adjustStaminaLoss(-2 * REM * delta_time, required_biotype = affected_biotype) diff --git a/code/modules/reagents/chemistry/reagents/atmos_gas_reagents.dm b/code/modules/reagents/chemistry/reagents/atmos_gas_reagents.dm index 707e3ac9dbe..cfbd0b2adee 100644 --- a/code/modules/reagents/chemistry/reagents/atmos_gas_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/atmos_gas_reagents.dm @@ -132,7 +132,7 @@ return ..() for(var/obj/item/organ/organ_being_healed as anything in breather.organs) - organ_being_healed.applyOrganDamage(-0.5 * REM * delta_time) + organ_being_healed.apply_organ_damage(-0.5 * REM * delta_time) return ..() diff --git a/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm index 6e584a596af..4762090de99 100644 --- a/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm @@ -392,7 +392,7 @@ var/obj/item/organ/internal/liver/L = C.organs_slot[ORGAN_SLOT_LIVER] if(!L || L.organ_flags & ORGAN_FAILING) return - conversion_amount = (trans_volume * (min(100 -C.getOrganLoss(ORGAN_SLOT_LIVER), 80) / 100)*normalise_creation_purity()) //the more damaged the liver the worse we metabolize. + conversion_amount = (trans_volume * (min(100 -C.get_organ_loss(ORGAN_SLOT_LIVER), 80) / 100)*normalise_creation_purity()) //the more damaged the liver the worse we metabolize. C.reagents.remove_reagent(/datum/reagent/medicine/c2/syriniver, conversion_amount) C.reagents.add_reagent(/datum/reagent/medicine/c2/musiver, conversion_amount) ..() diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm index 249e8a6d72e..c949be0b702 100644 --- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm @@ -185,7 +185,7 @@ icon_state = "banana" /datum/reagent/consumable/banana/on_mob_life(mob/living/carbon/affected_mob, delta_time, times_fired) - var/obj/item/organ/internal/liver/liver = affected_mob.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = affected_mob.get_organ_slot(ORGAN_SLOT_LIVER) if((liver && HAS_TRAIT(liver, TRAIT_COMEDY_METABOLISM)) || ismonkey(affected_mob)) affected_mob.heal_bodypart_damage(1 * REM * delta_time, 1 * REM * delta_time) . = TRUE @@ -968,7 +968,7 @@ affected_mob.adjustToxLoss(-0.5 * REM * delta_time, FALSE, required_biotype = affected_biotype) affected_mob.adjustOxyLoss(-0.5 * REM * delta_time, FALSE, required_biotype = affected_biotype, required_respiration_type = affected_respiration_type) if(affected_mob.nutrition && (affected_mob.nutrition - 2 > 0)) - var/obj/item/organ/internal/liver/liver = affected_mob.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = affected_mob.get_organ_slot(ORGAN_SLOT_LIVER) if(!(HAS_TRAIT(liver, TRAIT_MEDICAL_METABOLISM))) // Drains the nutrition of the holder. Not medical doctors though, since it's the Doctor's Delight! affected_mob.adjust_nutrition(-2 * REM * delta_time) diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index 9344ba73897..987ccb62a76 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -700,7 +700,7 @@ ///This proc turns the living mob passed as the arg "invisible_man"s invisible by giving him the invisible man trait and updating his body, this changes the sprite of all his organic limbs to a 1 alpha version. /datum/reagent/drug/saturnx/proc/turn_man_invisible(mob/living/carbon/invisible_man, requires_liver = TRUE) if(requires_liver) - if(!invisible_man.getorganslot(ORGAN_SLOT_LIVER)) + if(!invisible_man.get_organ_slot(ORGAN_SLOT_LIVER)) return if(invisible_man.undergoing_liver_failure()) return diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index 1bf315f7483..691d38c87ef 100644 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -477,7 +477,7 @@ M.Paralyze(10) M.set_jitter_if_lower(20 SECONDS) else - var/obj/item/organ/internal/liver/liver = M.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = M.get_organ_slot(ORGAN_SLOT_LIVER) if(liver && HAS_TRAIT(liver, TRAIT_CULINARY_METABOLISM)) if(DT_PROB(10, delta_time)) //stays in the system much longer than sprinkles/banana juice, so heals slower to partially compensate M.heal_bodypart_damage(brute = 1, burn = 1) @@ -512,7 +512,7 @@ chemical_flags = REAGENT_CAN_BE_SYNTHESIZED /datum/reagent/consumable/sprinkles/on_mob_life(mob/living/carbon/M, delta_time, times_fired) - var/obj/item/organ/internal/liver/liver = M.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = M.get_organ_slot(ORGAN_SLOT_LIVER) if(liver && HAS_TRAIT(liver, TRAIT_LAW_ENFORCEMENT_METABOLISM)) M.heal_bodypart_damage(1 * REM * delta_time, 1 * REM * delta_time, 0) . = TRUE @@ -852,7 +852,7 @@ return var/mob/living/carbon/exposed_carbon = exposed_mob - var/obj/item/organ/internal/stomach/ethereal/stomach = exposed_carbon.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/ethereal/stomach = exposed_carbon.get_organ_slot(ORGAN_SLOT_STOMACH) if(istype(stomach)) stomach.adjust_charge(reac_volume * 30) diff --git a/code/modules/reagents/chemistry/reagents/impure_reagents.dm b/code/modules/reagents/chemistry/reagents/impure_reagents.dm index bd63635fdea..ffe50c8b117 100644 --- a/code/modules/reagents/chemistry/reagents/impure_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/impure_reagents.dm @@ -15,7 +15,7 @@ var/liver_damage = 0.5 /datum/reagent/impurity/on_mob_life(mob/living/carbon/affected_mob, delta_time, times_fired) - var/obj/item/organ/internal/liver/L = affected_mob.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/L = affected_mob.get_organ_slot(ORGAN_SLOT_LIVER) if(!L)//Though, lets be safe affected_mob.adjustToxLoss(1 * REM * delta_time, FALSE, required_biotype = affected_biotype)//Incase of no liver! return ..() diff --git a/code/modules/reagents/chemistry/reagents/impure_reagents/impure_medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/impure_reagents/impure_medicine_reagents.dm index 2b4032c7ef7..8c6155fa8b8 100644 --- a/code/modules/reagents/chemistry/reagents/impure_reagents/impure_medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/impure_reagents/impure_medicine_reagents.dm @@ -145,7 +145,7 @@ Basically, we fill the time between now and 2s from now with hands based off the return RegisterSignal(consumer, COMSIG_CARBON_GAIN_ORGAN, PROC_REF(on_gained_organ)) RegisterSignal(consumer, COMSIG_CARBON_LOSE_ORGAN, PROC_REF(on_removed_organ)) - var/obj/item/organ/internal/liver/this_liver = consumer.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/this_liver = consumer.get_organ_slot(ORGAN_SLOT_LIVER) this_liver.alcohol_tolerance *= 2 /datum/reagent/impurity/libitoil/proc/on_gained_organ(mob/prev_owner, obj/item/organ/organ) @@ -167,7 +167,7 @@ Basically, we fill the time between now and 2s from now with hands based off the var/mob/living/carbon/consumer = L UnregisterSignal(consumer, COMSIG_CARBON_LOSE_ORGAN) UnregisterSignal(consumer, COMSIG_CARBON_GAIN_ORGAN) - var/obj/item/organ/internal/liver/this_liver = consumer.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/this_liver = consumer.get_organ_slot(ORGAN_SLOT_LIVER) if(!this_liver) return this_liver.alcohol_tolerance /= 2 @@ -370,7 +370,7 @@ Basically, we fill the time between now and 2s from now with hands based off the . = ..() RegisterSignal(owner, COMSIG_CARBON_GAIN_ORGAN, PROC_REF(on_gained_organ)) RegisterSignal(owner, COMSIG_CARBON_LOSE_ORGAN, PROC_REF(on_removed_organ)) - var/obj/item/organ/internal/lungs/lungs = owner.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/lungs = owner.get_organ_slot(ORGAN_SLOT_LUNGS) if(!lungs) return apply_lung_levels(lungs) @@ -417,7 +417,7 @@ Basically, we fill the time between now and 2s from now with hands based off the . = ..() UnregisterSignal(owner, COMSIG_CARBON_LOSE_ORGAN) UnregisterSignal(owner, COMSIG_CARBON_GAIN_ORGAN) - var/obj/item/organ/internal/lungs/lungs = owner.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/lungs = owner.get_organ_slot(ORGAN_SLOT_LUNGS) if(!lungs) return restore_lung_levels(lungs) @@ -524,7 +524,7 @@ Basically, we fill the time between now and 2s from now with hands based off the ) /datum/reagent/inverse/penthrite/on_mob_dead(mob/living/carbon/affected_mob, delta_time) - var/obj/item/organ/internal/heart/heart = affected_mob.getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = affected_mob.get_organ_slot(ORGAN_SLOT_HEART) if(!heart || heart.organ_flags & ORGAN_FAILING) return ..() metabolization_rate = 0.2 * REM @@ -557,14 +557,14 @@ Basically, we fill the time between now and 2s from now with hands based off the affected_mob.add_movespeed_modifier(/datum/movespeed_modifier/reagent/nooartrium) if(affected_mob.health < HEALTH_THRESHOLD_FULLCRIT) affected_mob.add_actionspeed_modifier(/datum/actionspeed_modifier/nooartrium) - var/obj/item/organ/internal/heart/heart = affected_mob.getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = affected_mob.get_organ_slot(ORGAN_SLOT_HEART) if(!heart || heart.organ_flags & ORGAN_FAILING) remove_buffs(affected_mob) ..() /datum/reagent/inverse/penthrite/on_mob_delete(mob/living/carbon/affected_mob) remove_buffs(affected_mob) - var/obj/item/organ/internal/heart/heart = affected_mob.getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = affected_mob.get_organ_slot(ORGAN_SLOT_HEART) if(affected_mob.health < -500 || heart.organ_flags & ORGAN_FAILING)//Honestly commendable if you get -500 explosion(affected_mob, light_impact_range = 1, explosion_cause = src) qdel(heart) @@ -574,7 +574,7 @@ Basically, we fill the time between now and 2s from now with hands based off the /datum/reagent/inverse/penthrite/overdose_start(mob/living/carbon/affected_mob) if(!back_from_the_dead) return ..() - var/obj/item/organ/internal/heart/heart = affected_mob.getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = affected_mob.get_organ_slot(ORGAN_SLOT_HEART) if(!heart) //No heart? No life! REMOVE_TRAIT(affected_mob, TRAIT_NODEATH, type) affected_mob.stat = DEAD @@ -659,7 +659,7 @@ Basically, we fill the time between now and 2s from now with hands based off the /datum/brain_trauma/special/honorbound, // Designed to be chaplain exclusive ) traumalist -= forbiddentraumas - var/obj/item/organ/internal/brain/brain = affected_mob.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = affected_mob.get_organ_slot(ORGAN_SLOT_BRAIN) traumalist = shuffle(traumalist) for(var/trauma in traumalist) if(brain.brain_gain_trauma(trauma, TRAUMA_RESILIENCE_MAGIC)) @@ -694,7 +694,7 @@ Basically, we fill the time between now and 2s from now with hands based off the if(!iscarbon(affected_mob)) return var/mob/living/carbon/carbon_mob = affected_mob - original_heart = affected_mob.getorganslot(ORGAN_SLOT_HEART) + original_heart = affected_mob.get_organ_slot(ORGAN_SLOT_HEART) if(!original_heart) return manual_heart = new(null, src) diff --git a/code/modules/reagents/chemistry/reagents/impure_reagents/impure_toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/impure_reagents/impure_toxin_reagents.dm index 72f6d5a8e6c..81beeb2b2a9 100644 --- a/code/modules/reagents/chemistry/reagents/impure_reagents/impure_toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/impure_reagents/impure_toxin_reagents.dm @@ -29,8 +29,8 @@ liver_damage = 0 /datum/reagent/impurity/methanol/on_mob_life(mob/living/carbon/affected_mob, delta_time, times_fired) - var/obj/item/organ/internal/eyes/eyes = affected_mob.getorganslot(ORGAN_SLOT_EYES) - eyes?.applyOrganDamage(0.5 * REM * delta_time, required_organtype = affected_organtype) + var/obj/item/organ/internal/eyes/eyes = affected_mob.get_organ_slot(ORGAN_SLOT_EYES) + eyes?.apply_organ_damage(0.5 * REM * delta_time, required_organtype = affected_organtype) return ..() //Chloral Hydrate - Impure Version @@ -58,7 +58,7 @@ metabolization_rate = 0.5 * REAGENTS_METABOLISM /datum/reagent/impurity/rosenol/on_mob_life(mob/living/carbon/owner, delta_time) - var/obj/item/organ/internal/tongue/tongue = owner.getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/tongue = owner.get_organ_slot(ORGAN_SLOT_TONGUE) if(!tongue) return ..() if(DT_PROB(4.0, delta_time)) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index d95723069d7..068ba31f86d 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -543,7 +543,7 @@ /datum/reagent/medicine/salbutamol/on_mob_life(mob/living/carbon/affected_mob, delta_time, times_fired) affected_mob.adjustOxyLoss(-3 * REM * delta_time, FALSE, required_biotype = affected_biotype, required_respiration_type = affected_respiration_type) if(affected_mob.losebreath >= 4) - var/obj/item/organ/internal/lungs/affected_lungs = affected_mob.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/affected_lungs = affected_mob.get_organ_slot(ORGAN_SLOT_LUNGS) var/our_respiration_type = affected_lungs ? affected_lungs.respiration_type : affected_mob.mob_respiration_type // use lungs' respiration type or mob_respiration_type if no lungs if(our_respiration_type & affected_respiration_type) affected_mob.losebreath -= 2 * REM * delta_time @@ -682,7 +682,7 @@ return RegisterSignal(affected_mob, COMSIG_CARBON_GAIN_ORGAN, PROC_REF(on_gained_organ)) RegisterSignal(affected_mob, COMSIG_CARBON_LOSE_ORGAN, PROC_REF(on_removed_organ)) - var/obj/item/organ/internal/eyes/eyes = affected_mob.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = affected_mob.get_organ_slot(ORGAN_SLOT_EYES) if(!eyes) return improve_eyesight(affected_mob, eyes) @@ -714,10 +714,10 @@ var/normalized_purity = normalise_creation_purity() affected_mob.adjust_temp_blindness(-4 SECONDS * REM * delta_time * normalized_purity) affected_mob.adjust_eye_blur(-4 SECONDS * REM * delta_time * normalized_purity) - var/obj/item/organ/internal/eyes/eyes = affected_mob.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = affected_mob.get_organ_slot(ORGAN_SLOT_EYES) if(eyes) // Healing eye damage will cure nearsightedness and blindness from ... eye damage - eyes.applyOrganDamage(-2 * REM * delta_time * normalise_creation_purity(), required_organtype = affected_organtype) + eyes.apply_organ_damage(-2 * REM * delta_time * normalise_creation_purity(), required_organtype = affected_organtype) // If our eyes are seriously damaged, we have a probability of causing eye blur while healing depending on purity if(eyes.damaged && DT_PROB(16 - min(normalized_purity * 6, 12), delta_time)) // While healing, gives some eye blur @@ -731,7 +731,7 @@ return ..() /datum/reagent/medicine/oculine/on_mob_delete(mob/living/affected_mob) - var/obj/item/organ/internal/eyes/eyes = affected_mob.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = affected_mob.get_organ_slot(ORGAN_SLOT_EYES) if(!eyes) return restore_eyesight(affected_mob, eyes) @@ -763,7 +763,7 @@ message = composer.compose_message(affected_mob, message_language, message, null, spans, message_mods) /datum/reagent/medicine/inacusiate/on_mob_life(mob/living/carbon/affected_mob, delta_time, times_fired) - var/obj/item/organ/internal/ears/ears = affected_mob.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = affected_mob.get_organ_slot(ORGAN_SLOT_EARS) if(!ears) return ..() ears.adjustEarDamage(-4 * REM * delta_time * normalise_creation_purity(), -4 * REM * delta_time * normalise_creation_purity()) @@ -798,7 +798,7 @@ affected_mob.adjustFireLoss(-2 * REM * delta_time, FALSE, required_bodytype = affected_bodytype) affected_mob.adjustOxyLoss(-5 * REM * delta_time, FALSE, required_biotype = affected_biotype, required_respiration_type = affected_respiration_type) . = TRUE - var/obj/item/organ/internal/lungs/affected_lungs = affected_mob.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/affected_lungs = affected_mob.get_organ_slot(ORGAN_SLOT_LUNGS) var/our_respiration_type = affected_lungs ? affected_lungs.respiration_type : affected_mob.mob_respiration_type if(our_respiration_type & affected_respiration_type) affected_mob.losebreath = 0 @@ -847,7 +847,7 @@ affected_mob.adjustFireLoss(-0.5 * REM * delta_time, FALSE, required_bodytype = affected_bodytype) affected_mob.adjustOxyLoss(-0.5 * REM * delta_time, FALSE, required_biotype = affected_biotype, required_respiration_type = affected_respiration_type) if(affected_mob.losebreath >= 4) - var/obj/item/organ/internal/lungs/affected_lungs = affected_mob.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/affected_lungs = affected_mob.get_organ_slot(ORGAN_SLOT_LUNGS) var/our_respiration_type = affected_lungs ? affected_lungs.respiration_type : affected_mob.mob_respiration_type if(our_respiration_type & affected_respiration_type) affected_mob.losebreath -= 2 * REM * delta_time @@ -862,7 +862,7 @@ if(DT_PROB(18, REM * delta_time)) affected_mob.adjustStaminaLoss(2.5, 0) affected_mob.adjustToxLoss(1, FALSE, required_biotype = affected_biotype) - var/obj/item/organ/internal/lungs/affected_lungs = affected_mob.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/affected_lungs = affected_mob.get_organ_slot(ORGAN_SLOT_LUNGS) var/our_respiration_type = affected_lungs ? affected_lungs.respiration_type : affected_mob.mob_respiration_type if(our_respiration_type & affected_respiration_type) affected_mob.losebreath++ @@ -1036,7 +1036,7 @@ return var/mob/living/carbon/affected_carbon = affected_mob if(creation_purity >= 1) - initial_bdamage = affected_carbon.getOrganLoss(ORGAN_SLOT_BRAIN) + initial_bdamage = affected_carbon.get_organ_loss(ORGAN_SLOT_BRAIN) /datum/reagent/medicine/neurine/on_mob_delete(mob/living/affected_mob) . = ..() @@ -1044,7 +1044,7 @@ if(!iscarbon(affected_mob)) return var/mob/living/carbon/affected_carbon = affected_mob - if(initial_bdamage < affected_carbon.getOrganLoss(ORGAN_SLOT_BRAIN)) + if(initial_bdamage < affected_carbon.get_organ_loss(ORGAN_SLOT_BRAIN)) affected_carbon.setOrganLoss(ORGAN_SLOT_BRAIN, initial_bdamage) /datum/reagent/medicine/neurine/on_mob_life(mob/living/carbon/affected_mob, delta_time, times_fired) @@ -1673,11 +1673,11 @@ affected_mob.adjustOxyLoss(rand(3, 4), required_biotype = affected_biotype, required_respiration_type = affected_respiration_type) if(prob(50)) - var/obj/item/organ/internal/lungs/our_lungs = affected_mob.getorganslot(ORGAN_SLOT_LUNGS) - our_lungs.applyOrganDamage(1) + var/obj/item/organ/internal/lungs/our_lungs = affected_mob.get_organ_slot(ORGAN_SLOT_LUNGS) + our_lungs.apply_organ_damage(1) else - var/obj/item/organ/internal/heart/our_heart = affected_mob.getorganslot(ORGAN_SLOT_HEART) - our_heart.applyOrganDamage(1) + var/obj/item/organ/internal/heart/our_heart = affected_mob.get_organ_slot(ORGAN_SLOT_HEART) + our_heart.apply_organ_damage(1) // i googled "natural coagulant" and a couple of results came up for banana peels, so after precisely 30 more seconds of research, i now dub grinding banana peels good for your blood /datum/reagent/medicine/coagulant/banana_peel diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index 3732a57d36c..4553eba0636 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -1850,7 +1850,7 @@ /datum/reagent/carpet/royal/on_mob_life(mob/living/carbon/affected_mob, delta_time, times_fired) . = ..() - var/obj/item/organ/internal/liver/liver = affected_mob.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/liver = affected_mob.get_organ_slot(ORGAN_SLOT_LIVER) if(liver) // Heads of staff and the captain have a "royal metabolism" if(HAS_TRAIT(liver, TRAIT_ROYAL_METABOLISM)) @@ -2355,7 +2355,7 @@ /datum/reagent/romerol/expose_mob(mob/living/carbon/human/exposed_mob, methods=TOUCH, reac_volume) . = ..() // Silently add the zombie infection organ to be activated upon death - if(!exposed_mob.getorganslot(ORGAN_SLOT_ZOMBIE)) + if(!exposed_mob.get_organ_slot(ORGAN_SLOT_ZOMBIE)) var/obj/item/organ/internal/zombie_infection/nodamage/ZI = new() ZI.Insert(exposed_mob) diff --git a/code/modules/reagents/chemistry/reagents/unique/eigenstasium.dm b/code/modules/reagents/chemistry/reagents/unique/eigenstasium.dm index 08d5316602e..70db3446060 100644 --- a/code/modules/reagents/chemistry/reagents/unique/eigenstasium.dm +++ b/code/modules/reagents/chemistry/reagents/unique/eigenstasium.dm @@ -43,7 +43,7 @@ //This looks rediculous, but expose is usually called from the donor reagents datum - we want to edit the post exposure version present in the mob. var/mob/living/carbon/carby = living_mob //But because carbon mobs have stomachs we have to search in there because we're ingested - var/obj/item/organ/internal/stomach/stomach = carby.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/stomach = carby.get_organ_slot(ORGAN_SLOT_STOMACH) var/datum/reagent/eigenstate/eigen if(stomach) eigen = stomach.reagents.has_reagent(/datum/reagent/eigenstate) diff --git a/code/modules/reagents/withdrawal/generic_addictions.dm b/code/modules/reagents/withdrawal/generic_addictions.dm index feb8817988d..96f7354a286 100644 --- a/code/modules/reagents/withdrawal/generic_addictions.dm +++ b/code/modules/reagents/withdrawal/generic_addictions.dm @@ -122,7 +122,7 @@ return to_chat(affected_carbon, span_warning("You feel yourself adapt to the darkness.")) var/mob/living/carbon/human/affected_human = affected_carbon - var/obj/item/organ/internal/eyes/empowered_eyes = affected_human.getorgan(/obj/item/organ/internal/eyes) + var/obj/item/organ/internal/eyes/empowered_eyes = affected_human.get_organ_by_type(/obj/item/organ/internal/eyes) if(empowered_eyes) ADD_TRAIT(affected_human, TRAIT_NIGHT_VISION, "maint_drug_addiction") empowered_eyes?.refresh() @@ -150,7 +150,7 @@ affected_human.dna?.species.disliked_food = initial(affected_human.dna?.species.disliked_food) affected_human.dna?.species.toxic_food = initial(affected_human.dna?.species.toxic_food) REMOVE_TRAIT(affected_human, TRAIT_NIGHT_VISION, "maint_drug_addiction") - var/obj/item/organ/internal/eyes/eyes = affected_human.getorgan(/obj/item/organ/internal/eyes) + var/obj/item/organ/internal/eyes/eyes = affected_human.get_organ_by_type(/obj/item/organ/internal/eyes) eyes.refresh() ///Makes you a hypochondriac - I'd like to call it hypochondria, but "I could use some hypochondria" doesn't work @@ -190,7 +190,7 @@ if(!HAS_TRAIT(affected_carbon, TRAIT_RESISTCOLD)) possibilities += /datum/hallucination/fake_alert/cold - var/obj/item/organ/internal/lungs/lungs = affected_carbon.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/lungs = affected_carbon.get_organ_slot(ORGAN_SLOT_LUNGS) if(lungs) if(lungs.safe_oxygen_min) possibilities += /datum/hallucination/fake_alert/need_oxygen diff --git a/code/modules/religion/burdened/psyker.dm b/code/modules/religion/burdened/psyker.dm index b5bc45a9e0b..07f6630277a 100644 --- a/code/modules/religion/burdened/psyker.dm +++ b/code/modules/religion/burdened/psyker.dm @@ -29,7 +29,7 @@ return to_chat(owner, span_userdanger("Your head hurts... It can't fit your brain!")) owner.adjust_disgust(33 * delta_time) - applyOrganDamage(5 * delta_time, 199) + apply_organ_damage(5 * delta_time, 199) /obj/item/bodypart/head/psyker limb_id = BODYPART_ID_PSYKER @@ -84,8 +84,8 @@ /// Proc with no side effects that turns someone into a psyker. returns FALSE if it could not psykerize. /mob/living/carbon/human/proc/psykerize() var/obj/item/bodypart/head/old_head = get_bodypart(BODY_ZONE_HEAD) - var/obj/item/organ/internal/brain/old_brain = getorganslot(ORGAN_SLOT_BRAIN) - var/obj/item/organ/internal/old_eyes = getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/brain/old_brain = get_organ_slot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/old_eyes = get_organ_slot(ORGAN_SLOT_EYES) if(stat == DEAD || !old_head || !old_brain) return FALSE var/obj/item/bodypart/head/psyker/psyker_head = new() diff --git a/code/modules/religion/religion_sects.dm b/code/modules/religion/religion_sects.dm index 4ba7250f0de..8817de3f23b 100644 --- a/code/modules/religion/religion_sects.dm +++ b/code/modules/religion/religion_sects.dm @@ -156,7 +156,7 @@ //first we determine if we can charge them var/did_we_charge = FALSE - var/obj/item/organ/internal/stomach/ethereal/eth_stomach = blessed.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/ethereal/eth_stomach = blessed.get_organ_slot(ORGAN_SLOT_STOMACH) if(istype(eth_stomach)) eth_stomach.adjust_charge(60) did_we_charge = TRUE diff --git a/code/modules/religion/rites.dm b/code/modules/religion/rites.dm index e883e48fed5..41277d3dd16 100644 --- a/code/modules/religion/rites.dm +++ b/code/modules/religion/rites.dm @@ -358,7 +358,7 @@ if(!HAS_TRAIT_FROM(user, TRAIT_HOPELESSLY_ADDICTED, "maint_adaptation")) to_chat(user, span_warning("You need to adapt to maintenance first.")) return FALSE - var/obj/item/organ/internal/eyes/night_vision/maintenance_adapted/adapted = user.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/night_vision/maintenance_adapted/adapted = user.get_organ_slot(ORGAN_SLOT_EYES) if(adapted && istype(adapted)) to_chat(user, span_warning("Your eyes are already adapted!")) return FALSE @@ -366,7 +366,7 @@ /datum/religion_rites/adapted_eyes/invoke_effect(mob/living/carbon/human/user, atom/movable/religious_tool) ..() - var/obj/item/organ/internal/eyes/oldeyes = user.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/oldeyes = user.get_organ_slot(ORGAN_SLOT_EYES) to_chat(user, span_warning("You feel your eyes adapt to the darkness!")) if(oldeyes) oldeyes.Remove(user, special = TRUE) diff --git a/code/modules/spells/spell_types/self/lichdom.dm b/code/modules/spells/spell_types/self/lichdom.dm index cf5e3d0893a..e963f270dd8 100644 --- a/code/modules/spells/spell_types/self/lichdom.dm +++ b/code/modules/spells/spell_types/self/lichdom.dm @@ -62,7 +62,7 @@ if(iscarbon(cast_on)) var/mob/living/carbon/carbon_cast_on = cast_on - var/obj/item/organ/internal/brain/lich_brain = carbon_cast_on.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/lich_brain = carbon_cast_on.get_organ_slot(ORGAN_SLOT_BRAIN) if(lich_brain) // This prevents MMIs being used to stop lich revives lich_brain.organ_flags &= ~ORGAN_VITAL lich_brain.decoy_override = TRUE diff --git a/code/modules/station_goals/vault_mutation.dm b/code/modules/station_goals/vault_mutation.dm index eab862d0824..c5a77c62775 100644 --- a/code/modules/station_goals/vault_mutation.dm +++ b/code/modules/station_goals/vault_mutation.dm @@ -109,7 +109,7 @@ /datum/mutation/human/plasmocile/on_acquiring(mob/living/carbon/human/acquirer) . = ..() - var/obj/item/organ/internal/lungs/improved_lungs = acquirer.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/improved_lungs = acquirer.get_organ_slot(ORGAN_SLOT_LUNGS) ADD_TRAIT(owner, TRAIT_VIRUSIMMUNE, GENETIC_MUTATION) if(improved_lungs) apply_buff(improved_lungs) @@ -118,7 +118,7 @@ /datum/mutation/human/plasmocile/on_losing(mob/living/carbon/human/owner) . = ..() - var/obj/item/organ/internal/lungs/improved_lungs = owner.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/improved_lungs = owner.get_organ_slot(ORGAN_SLOT_LUNGS) REMOVE_TRAIT(owner, TRAIT_VIRUSIMMUNE, GENETIC_MUTATION) UnregisterSignal(owner, COMSIG_CARBON_LOSE_ORGAN) UnregisterSignal(owner, COMSIG_CARBON_GAIN_ORGAN) diff --git a/code/modules/surgery/advanced/bioware/cortex_folding.dm b/code/modules/surgery/advanced/bioware/cortex_folding.dm index b695c87a25f..e3629b02b0a 100644 --- a/code/modules/surgery/advanced/bioware/cortex_folding.dm +++ b/code/modules/surgery/advanced/bioware/cortex_folding.dm @@ -15,7 +15,7 @@ bioware_target = BIOWARE_CORTEX /datum/surgery/advanced/bioware/cortex_folding/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!target_brain) return FALSE return ..() @@ -48,7 +48,7 @@ return ..() /datum/surgery_step/fold_cortex/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.getorganslot(ORGAN_SLOT_BRAIN)) + if(target.get_organ_slot(ORGAN_SLOT_BRAIN)) display_results( user, target, diff --git a/code/modules/surgery/advanced/bioware/cortex_imprint.dm b/code/modules/surgery/advanced/bioware/cortex_imprint.dm index 96e872c9096..542795294b0 100644 --- a/code/modules/surgery/advanced/bioware/cortex_imprint.dm +++ b/code/modules/surgery/advanced/bioware/cortex_imprint.dm @@ -15,7 +15,7 @@ bioware_target = BIOWARE_CORTEX /datum/surgery/advanced/bioware/cortex_imprint/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!target_brain) return FALSE return ..() @@ -48,7 +48,7 @@ return ..() /datum/surgery_step/imprint_cortex/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.getorganslot(ORGAN_SLOT_BRAIN)) + if(target.get_organ_slot(ORGAN_SLOT_BRAIN)) display_results( user, target, diff --git a/code/modules/surgery/advanced/brainwashing.dm b/code/modules/surgery/advanced/brainwashing.dm index 81bc0ee26bb..4c5efe367fe 100644 --- a/code/modules/surgery/advanced/brainwashing.dm +++ b/code/modules/surgery/advanced/brainwashing.dm @@ -22,7 +22,7 @@ /datum/surgery/advanced/brainwashing/can_start(mob/user, mob/living/carbon/target) if(!..()) return FALSE - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!target_brain) return FALSE return TRUE @@ -76,7 +76,7 @@ return ..() /datum/surgery_step/brainwash/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.getorganslot(ORGAN_SLOT_BRAIN)) + if(target.get_organ_slot(ORGAN_SLOT_BRAIN)) display_results( user, target, diff --git a/code/modules/surgery/advanced/lobotomy.dm b/code/modules/surgery/advanced/lobotomy.dm index 03faffcc30e..6c322c2d070 100644 --- a/code/modules/surgery/advanced/lobotomy.dm +++ b/code/modules/surgery/advanced/lobotomy.dm @@ -16,7 +16,7 @@ . = ..() if(!.) return FALSE - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!target_brain) return FALSE return TRUE @@ -77,7 +77,7 @@ return ..() /datum/surgery_step/lobotomize/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(target_brain) display_results( user, @@ -87,7 +87,7 @@ span_notice("[user] completes the surgery on [target]'s brain."), ) display_pain(target, "The pain in your head only seems to get worse!") - target_brain.applyOrganDamage(80) + target_brain.apply_organ_damage(80) switch(rand(1,3)) if(1) target.gain_trauma_type(BRAIN_TRAUMA_MILD, TRAUMA_RESILIENCE_MAGIC) diff --git a/code/modules/surgery/advanced/necrotic_revival.dm b/code/modules/surgery/advanced/necrotic_revival.dm index 608744cb702..63350139e07 100644 --- a/code/modules/surgery/advanced/necrotic_revival.dm +++ b/code/modules/surgery/advanced/necrotic_revival.dm @@ -13,7 +13,7 @@ /datum/surgery/advanced/necrotic_revival/can_start(mob/user, mob/living/carbon/target) . = ..() - var/obj/item/organ/internal/zombie_infection/z_infection = target.getorganslot(ORGAN_SLOT_ZOMBIE) + var/obj/item/organ/internal/zombie_infection/z_infection = target.get_organ_slot(ORGAN_SLOT_ZOMBIE) if(z_infection) return FALSE @@ -45,7 +45,7 @@ span_notice("[user] completes the surgery on [target]'s brain."), ) display_pain(target, "Your head goes totally numb for a moment, the pain is overwhelming!") - if(!target.getorganslot(ORGAN_SLOT_ZOMBIE)) + if(!target.get_organ_slot(ORGAN_SLOT_ZOMBIE)) var/obj/item/organ/internal/zombie_infection/z_infection = new() z_infection.Insert(target) return ..() diff --git a/code/modules/surgery/advanced/pacification.dm b/code/modules/surgery/advanced/pacification.dm index 582a8c25c3e..48a2d1c88e6 100644 --- a/code/modules/surgery/advanced/pacification.dm +++ b/code/modules/surgery/advanced/pacification.dm @@ -14,7 +14,7 @@ /datum/surgery/advanced/pacify/can_start(mob/user, mob/living/carbon/target) . = ..() - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!target_brain) return FALSE diff --git a/code/modules/surgery/advanced/wingreconstruction.dm b/code/modules/surgery/advanced/wingreconstruction.dm index 6349e854324..3234b61e1e0 100644 --- a/code/modules/surgery/advanced/wingreconstruction.dm +++ b/code/modules/surgery/advanced/wingreconstruction.dm @@ -12,7 +12,7 @@ /datum/surgery/advanced/wing_reconstruction/can_start(mob/user, mob/living/carbon/target) if(!istype(target)) return FALSE - var/obj/item/organ/external/wings/moth/wings = target.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS) + var/obj/item/organ/external/wings/moth/wings = target.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS) if(!istype(wings, /obj/item/organ/external/wings/moth)) return FALSE return ..() && wings?.burnt @@ -48,11 +48,11 @@ span_notice("[user] completes the surgery on [target]'s wings."), ) display_pain(target, "You can feel your wings again!") - var/obj/item/organ/external/wings/moth/wings = target.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS) + var/obj/item/organ/external/wings/moth/wings = target.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS) if(istype(wings, /obj/item/organ/external/wings/moth)) //make sure we only heal moth wings. wings.heal_wings(user, ALL) - var/obj/item/organ/external/antennae/antennae = target.getorganslot(ORGAN_SLOT_EXTERNAL_ANTENNAE) //i mean we might aswell heal their antennae too + var/obj/item/organ/external/antennae/antennae = target.get_organ_slot(ORGAN_SLOT_EXTERNAL_ANTENNAE) //i mean we might aswell heal their antennae too antennae?.heal_antennae() human_target.update_body_parts() diff --git a/code/modules/surgery/bodyparts/hair.dm b/code/modules/surgery/bodyparts/hair.dm index 180e7762c2e..80fc4a38297 100644 --- a/code/modules/surgery/bodyparts/hair.dm +++ b/code/modules/surgery/bodyparts/hair.dm @@ -48,7 +48,7 @@ hair_hidden = TRUE facial_hair_hidden = TRUE - if(!hair_hidden && !owner.getorganslot(ORGAN_SLOT_BRAIN) && !HAS_TRAIT(owner, TRAIT_NOBLOOD)) + if(!hair_hidden && !owner.get_organ_slot(ORGAN_SLOT_BRAIN) && !HAS_TRAIT(owner, TRAIT_NOBLOOD)) show_debrained = TRUE else show_debrained = FALSE diff --git a/code/modules/surgery/bodyparts/head.dm b/code/modules/surgery/bodyparts/head.dm index a1a0db82b2c..9dd3ec52689 100644 --- a/code/modules/surgery/bodyparts/head.dm +++ b/code/modules/surgery/bodyparts/head.dm @@ -151,7 +151,7 @@ brainmob = null if(violent_removal && prob(rand(80, 100))) //ghetto surgery can damage the brain. to_chat(user, span_warning("[brain] was damaged in the process!")) - brain.setOrganDamage(brain.maxHealth) + brain.set_organ_damage(brain.maxHealth) brain.forceMove(drop_loc) brain = null update_icon_dropped() diff --git a/code/modules/surgery/brain_surgery.dm b/code/modules/surgery/brain_surgery.dm index 0898268f4d5..294b87afb86 100644 --- a/code/modules/surgery/brain_surgery.dm +++ b/code/modules/surgery/brain_surgery.dm @@ -24,7 +24,7 @@ failure_sound = 'sound/surgery/organ2.ogg' /datum/surgery/brain_surgery/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!target_brain) return FALSE return TRUE @@ -50,14 +50,14 @@ display_pain(target, "The pain in your head receeds, thinking becomes a bit easier!") 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 + target.setOrganLoss(ORGAN_SLOT_BRAIN, target.get_organ_loss(ORGAN_SLOT_BRAIN) - 50) //we set damage in this case in order to clear the "failing" flag target.cure_all_traumas(TRAUMA_RESILIENCE_SURGERY) - if(target.getOrganLoss(ORGAN_SLOT_BRAIN) > 0) + if(target.get_organ_loss(ORGAN_SLOT_BRAIN) > 0) to_chat(user, "[target]'s brain looks like it could be fixed further.") return ..() /datum/surgery_step/fix_brain/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.getorganslot(ORGAN_SLOT_BRAIN)) + if(target.get_organ_slot(ORGAN_SLOT_BRAIN)) display_results( user, target, diff --git a/code/modules/surgery/coronary_bypass.dm b/code/modules/surgery/coronary_bypass.dm index 245ae531ffa..7536598fe7d 100644 --- a/code/modules/surgery/coronary_bypass.dm +++ b/code/modules/surgery/coronary_bypass.dm @@ -13,7 +13,7 @@ ) /datum/surgery/coronary_bypass/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/heart/target_heart = target.getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/target_heart = target.get_organ_slot(ORGAN_SLOT_HEART) if(target_heart) if(target_heart.damage > 60 && !target_heart.operated) return TRUE @@ -99,7 +99,7 @@ /datum/surgery_step/coronary_bypass/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results = FALSE) target.setOrganLoss(ORGAN_SLOT_HEART, 60) - var/obj/item/organ/internal/heart/target_heart = target.getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/target_heart = target.get_organ_slot(ORGAN_SLOT_HEART) if(target_heart) //slightly worrying if we lost our heart mid-operation, but that's life target_heart.operated = TRUE display_results( diff --git a/code/modules/surgery/ear_surgery.dm b/code/modules/surgery/ear_surgery.dm index ab604f3f4d7..416857bafb2 100644 --- a/code/modules/surgery/ear_surgery.dm +++ b/code/modules/surgery/ear_surgery.dm @@ -23,7 +23,7 @@ time = 64 /datum/surgery/ear_surgery/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/ears/target_ears = target.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/target_ears = target.get_organ_slot(ORGAN_SLOT_EARS) if(!target_ears) return FALSE return TRUE @@ -39,7 +39,7 @@ display_pain(target, "You feel a dizzying pain in your head!") /datum/surgery_step/fix_ears/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results = FALSE) - var/obj/item/organ/internal/ears/target_ears = target.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/target_ears = target.get_organ_slot(ORGAN_SLOT_EARS) display_results( user, target, @@ -49,11 +49,11 @@ ) display_pain(target, "Your head swims, but it seems like you can feel your hearing coming back!") target_ears.deaf = (20) //deafness works off ticks, so this should work out to about 30-40s - target_ears.setOrganDamage(0) + target_ears.set_organ_damage(0) return ..() /datum/surgery_step/fix_ears/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.getorgan(/obj/item/organ/internal/brain)) + if(target.get_organ_by_type(/obj/item/organ/internal/brain)) display_results( user, target, diff --git a/code/modules/surgery/eye_surgery.dm b/code/modules/surgery/eye_surgery.dm index a9daa1ab941..7b6d7844ee6 100644 --- a/code/modules/surgery/eye_surgery.dm +++ b/code/modules/surgery/eye_surgery.dm @@ -21,7 +21,7 @@ time = 64 /datum/surgery/eye_surgery/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/eyes/target_eyes = target.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/target_eyes = target.get_organ_slot(ORGAN_SLOT_EYES) if(!target_eyes) to_chat(user, span_warning("It's hard to do surgery on someone's eyes when [target.p_they()] [target.p_do()]n't have any.")) return FALSE @@ -38,7 +38,7 @@ display_pain(target, "You feel a stabbing pain in your eyes!") /datum/surgery_step/fix_eyes/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results = FALSE) - var/obj/item/organ/internal/eyes/target_eyes = target.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/target_eyes = target.get_organ_slot(ORGAN_SLOT_EYES) user.visible_message(span_notice("[user] successfully fixes [target]'s eyes!"), span_notice("You succeed in fixing [target]'s eyes.")) display_results( user, @@ -50,11 +50,11 @@ display_pain(target, "Your vision blurs, but it seems like you can see a little better now!") target.remove_status_effect(/datum/status_effect/temporary_blindness) target.set_eye_blur_if_lower(70 SECONDS) //this will fix itself slowly. - target_eyes.setOrganDamage(0) // heals nearsightedness and blindness from eye damage + target_eyes.set_organ_damage(0) // heals nearsightedness and blindness from eye damage return ..() /datum/surgery_step/fix_eyes/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.getorgan(/obj/item/organ/internal/brain)) + if(target.get_organ_by_type(/obj/item/organ/internal/brain)) display_results( user, target, diff --git a/code/modules/surgery/gastrectomy.dm b/code/modules/surgery/gastrectomy.dm index 141b8311559..417e6716eb5 100644 --- a/code/modules/surgery/gastrectomy.dm +++ b/code/modules/surgery/gastrectomy.dm @@ -15,7 +15,7 @@ ) /datum/surgery/gastrectomy/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/stomach/target_stomach = target.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/target_stomach = target.get_organ_slot(ORGAN_SLOT_STOMACH) if(target_stomach) if(target_stomach.damage > 50 && !target_stomach.operated) return TRUE @@ -47,7 +47,7 @@ /datum/surgery_step/gastrectomy/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results = FALSE) var/mob/living/carbon/human/target_human = target - var/obj/item/organ/internal/stomach/target_stomach = target.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/target_stomach = target.get_organ_slot(ORGAN_SLOT_STOMACH) target_human.setOrganLoss(ORGAN_SLOT_STOMACH, 20) // Stomachs have a threshold for being able to even digest food, so I might tweak this number if(target_stomach) target_stomach.operated = TRUE diff --git a/code/modules/surgery/hepatectomy.dm b/code/modules/surgery/hepatectomy.dm index a07ce0e4afa..1d609836a8e 100644 --- a/code/modules/surgery/hepatectomy.dm +++ b/code/modules/surgery/hepatectomy.dm @@ -14,7 +14,7 @@ ) /datum/surgery/hepatectomy/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/liver/target_liver = target.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/target_liver = target.get_organ_slot(ORGAN_SLOT_LIVER) if(target_liver) if(target_liver.damage > 50 && !target_liver.operated) return TRUE @@ -46,7 +46,7 @@ /datum/surgery_step/hepatectomy/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results = FALSE) var/mob/living/carbon/human/human_target = target - var/obj/item/organ/internal/liver/target_liver = target.getorganslot(ORGAN_SLOT_LIVER) + var/obj/item/organ/internal/liver/target_liver = target.get_organ_slot(ORGAN_SLOT_LIVER) human_target.setOrganLoss(ORGAN_SLOT_LIVER, 10) //not bad, not great if(target_liver) target_liver.operated = TRUE diff --git a/code/modules/surgery/lobectomy.dm b/code/modules/surgery/lobectomy.dm index d3d90a90aeb..56e256534f7 100644 --- a/code/modules/surgery/lobectomy.dm +++ b/code/modules/surgery/lobectomy.dm @@ -12,7 +12,7 @@ ) /datum/surgery/lobectomy/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/lungs/target_lungs = target.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/target_lungs = target.get_organ_slot(ORGAN_SLOT_LUNGS) if(target_lungs) if(target_lungs.damage > 60 && !target_lungs.operated) return TRUE @@ -45,7 +45,7 @@ /datum/surgery_step/lobectomy/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/human_target = target - var/obj/item/organ/internal/lungs/target_lungs = human_target.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/target_lungs = human_target.get_organ_slot(ORGAN_SLOT_LUNGS) target_lungs.operated = TRUE human_target.setOrganLoss(ORGAN_SLOT_LUNGS, 60) display_results( diff --git a/code/modules/surgery/organ_manipulation.dm b/code/modules/surgery/organ_manipulation.dm index 874e398cad3..f448a5d0227 100644 --- a/code/modules/surgery/organ_manipulation.dm +++ b/code/modules/surgery/organ_manipulation.dm @@ -72,7 +72,7 @@ if(tool && tool.item_flags) //Mechanic organ manipulation isn't done with just surgery tools to_chat(user, span_warning("This step requires a different tool!")) return TRUE - + return FALSE /datum/surgery/organ_manipulation/mechanic/soft @@ -147,7 +147,7 @@ preop_sound = 'sound/surgery/hemostat1.ogg' success_sound = 'sound/surgery/organ2.ogg' target_organ = tool - if(target_zone != target_organ.zone || target.getorganslot(target_organ.slot)) + if(target_zone != target_organ.zone || target.get_organ_slot(target_organ.slot)) to_chat(user, span_warning("There is no room for [target_organ] in [target]'s [parse_zone(target_zone)]!")) return SURGERY_STEP_FAIL var/obj/item/organ/meatslab = tool @@ -172,7 +172,7 @@ else if(implement_type in implements_extract) current_type = "extract" - var/list/unfiltered_organs = target.getorganszone(target_zone) + var/list/unfiltered_organs = target.get_organs_for_zone(target_zone) var/list/organs = list() for(var/organ in unfiltered_organs) if(can_use_organ(user, organ)) diff --git a/code/modules/surgery/organs/_organ.dm b/code/modules/surgery/organs/_organ.dm index f0021ea71a0..bfa34b69042 100644 --- a/code/modules/surgery/organs/_organ.dm +++ b/code/modules/surgery/organs/_organ.dm @@ -15,7 +15,7 @@ var/organ_flags = ORGAN_EDIBLE var/maxHealth = STANDARD_ORGAN_THRESHOLD /// Total damage this organ has sustained - /// Should only ever be modified by applyOrganDamage + /// Should only ever be modified by apply_organ_damage var/damage = 0 ///Healing factor and decay factor function on % of maxhealth, and do not work by applying a static number per tick var/healing_factor = 0 //fraction of maxhealth healed per on_life(), set to 0 for generic organs @@ -74,7 +74,7 @@ INITIALIZE_IMMEDIATE(/obj/item/organ) if(!iscarbon(receiver) || owner == receiver) return FALSE - var/obj/item/organ/replaced = receiver.getorganslot(slot) + var/obj/item/organ/replaced = receiver.get_organ_slot(slot) if(replaced) replaced.Remove(receiver, special = TRUE) if(drop_if_replaced) @@ -225,7 +225,7 @@ INITIALIZE_IMMEDIATE(/obj/item/organ) return //so we don't grant the organ's action to mobs who pick up the organ. ///Adjusts an organ's damage by the amount "damage_amount", up to a maximum amount, which is by default max damage -/obj/item/organ/proc/applyOrganDamage(damage_amount, maximum = maxHealth, required_organtype) //use for damaging effects +/obj/item/organ/proc/apply_organ_damage(damage_amount, maximum = maxHealth, required_organtype) //use for damaging effects if(!damage_amount) //Micro-optimization. return if(maximum < damage) @@ -245,8 +245,8 @@ INITIALIZE_IMMEDIATE(/obj/item/organ) to_chat(owner, mess) ///SETS an organ's damage to the amount "damage_amount", and in doing so clears or sets the failing flag, good for when you have an effect that should fix an organ if broken -/obj/item/organ/proc/setOrganDamage(damage_amount, required_organtype) //use mostly for admin heals - applyOrganDamage(damage_amount - damage, required_organtype = required_organtype) +/obj/item/organ/proc/set_organ_damage(damage_amount, required_organtype) //use mostly for admin heals + apply_organ_damage(damage_amount - damage, required_organtype = required_organtype) /** check_damage_thresholds * input: mob/organ_owner (a mob, the owner of the organ we call the proc on) @@ -289,43 +289,43 @@ INITIALIZE_IMMEDIATE(/obj/item/organ) // Species regenerate organs doesn't ALWAYS handle healing the organs because it's dumb for(var/obj/item/organ/organ as anything in organs) - organ.setOrganDamage(0) + organ.set_organ_damage(0) set_heartattack(FALSE) return // Default organ fixing handling // May result in kinda cursed stuff for mobs which don't need these organs - var/obj/item/organ/internal/lungs/lungs = getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/lungs = get_organ_slot(ORGAN_SLOT_LUNGS) if(!lungs) lungs = new() lungs.Insert(src) - lungs.setOrganDamage(0) + lungs.set_organ_damage(0) - var/obj/item/organ/internal/heart/heart = getorganslot(ORGAN_SLOT_HEART) + var/obj/item/organ/internal/heart/heart = get_organ_slot(ORGAN_SLOT_HEART) if(heart) set_heartattack(FALSE) else heart = new() heart.Insert(src) - heart.setOrganDamage(0) + heart.set_organ_damage(0) - var/obj/item/organ/internal/tongue/tongue = getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/tongue = get_organ_slot(ORGAN_SLOT_TONGUE) if(!tongue) tongue = new() tongue.Insert(src) - tongue.setOrganDamage(0) + tongue.set_organ_damage(0) - var/obj/item/organ/internal/eyes/eyes = getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = get_organ_slot(ORGAN_SLOT_EYES) if(!eyes) eyes = new() eyes.Insert(src) - eyes.setOrganDamage(0) + eyes.set_organ_damage(0) - var/obj/item/organ/internal/ears/ears = getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = get_organ_slot(ORGAN_SLOT_EARS) if(!ears) ears = new() ears.Insert(src) - ears.setOrganDamage(0) + ears.set_organ_damage(0) /obj/item/organ/proc/handle_failing_organs(delta_time) return @@ -361,7 +361,7 @@ INITIALIZE_IMMEDIATE(/obj/item/organ) // If we're being replace with an identical type we should take organ damage if(replacement.type == type) - replacement.setOrganDamage(damage) + replacement.set_organ_damage(damage) /// Called by medical scanners to get a simple summary of how healthy the organ is. Returns an empty string if things are fine. /obj/item/organ/proc/get_status_text() diff --git a/code/modules/surgery/organs/ears.dm b/code/modules/surgery/organs/ears.dm index 782813bf4ab..f0253f8933f 100644 --- a/code/modules/surgery/organs/ears.dm +++ b/code/modules/surgery/organs/ears.dm @@ -54,7 +54,7 @@ /obj/item/organ/internal/ears/proc/adjustEarDamage(ddmg, ddeaf) if(owner.status_flags & GODMODE) return - setOrganDamage(max(damage + (ddmg*damage_multiplier), 0)) + set_organ_damage(max(damage + (ddmg*damage_multiplier), 0)) deaf = max(deaf + (ddeaf*damage_multiplier), 0) /obj/item/organ/internal/ears/invincible @@ -126,4 +126,4 @@ . = ..() if(. & EMP_PROTECT_SELF) return - applyOrganDamage(40/severity) + apply_organ_damage(40/severity) diff --git a/code/modules/surgery/organs/external/tails.dm b/code/modules/surgery/organs/external/tails.dm index 7b2d1da179d..7d5fce276b6 100644 --- a/code/modules/surgery/organs/external/tails.dm +++ b/code/modules/surgery/organs/external/tails.dm @@ -120,7 +120,7 @@ /obj/item/organ/external/tail/lizard/Insert(mob/living/carbon/reciever, special, drop_if_replaced) . = ..() if(.) - paired_spines = ownerlimb.owner.getorganslot(ORGAN_SLOT_EXTERNAL_SPINES) + paired_spines = ownerlimb.owner.get_organ_slot(ORGAN_SLOT_EXTERNAL_SPINES) paired_spines?.paired_tail = src /obj/item/organ/external/tail/lizard/Remove(mob/living/carbon/organ_owner, special, moving) diff --git a/code/modules/surgery/organs/external/wings/functional_wings.dm b/code/modules/surgery/organs/external/wings/functional_wings.dm index 2b37a881904..1a5726de579 100644 --- a/code/modules/surgery/organs/external/wings/functional_wings.dm +++ b/code/modules/surgery/organs/external/wings/functional_wings.dm @@ -7,7 +7,7 @@ /datum/action/innate/flight/Activate() var/mob/living/carbon/human/human = owner - var/obj/item/organ/external/wings/functional/wings = human.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS) + var/obj/item/organ/external/wings/functional/wings = human.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS) if(wings && wings.can_fly(human)) wings.toggle_flight(human) if(!(human.movement_type & FLYING)) diff --git a/code/modules/surgery/organs/eyes.dm b/code/modules/surgery/organs/eyes.dm index 3a1282bf5d1..34aca916487 100644 --- a/code/modules/surgery/organs/eyes.dm +++ b/code/modules/surgery/organs/eyes.dm @@ -122,7 +122,7 @@ /// This proc generates a list of overlays that the eye should be displayed using for the given parent /obj/item/organ/internal/eyes/proc/generate_body_overlay(mob/living/carbon/human/parent) - if(!istype(parent) || parent.getorgan(/obj/item/organ/internal/eyes) != src) + if(!istype(parent) || parent.get_organ_by_type(/obj/item/organ/internal/eyes) != src) CRASH("Generating a body overlay for [src] targeting an invalid parent '[parent]'.") var/eye_icon = parent.dna?.species.eyes_icon || 'icons/mob/species/human/human_face.dmi' // SKYRAT EDIT ADDITION @@ -163,7 +163,7 @@ eye_color_left = initial(eye_color_left) eye_color_right = initial(eye_color_right) -/obj/item/organ/internal/eyes/applyOrganDamage(damage_amount, maximum, required_organtype) +/obj/item/organ/internal/eyes/apply_organ_damage(damage_amount, maximum, required_organtype) . = ..() if(!owner) return @@ -296,7 +296,7 @@ if(. & EMP_PROTECT_SELF) return if(prob(10 * severity)) - applyOrganDamage(20 * severity) + apply_organ_damage(20 * severity) to_chat(owner, span_warning("Your eyes start to fizzle in their sockets!")) do_sparks(2, TRUE, owner) owner.emote("scream") @@ -619,10 +619,10 @@ /obj/item/organ/internal/eyes/night_vision/maintenance_adapted/on_life(delta_time, times_fired) if(!owner.is_blind() && isturf(owner.loc) && owner.has_light_nearby(light_amount=0.5)) //we allow a little more than usual so we can produce light from the adapted eyes to_chat(owner, span_danger("Your eyes! They burn in the light!")) - applyOrganDamage(10) //blind quickly + apply_organ_damage(10) //blind quickly playsound(owner, 'sound/machines/grill/grillsizzle.ogg', 50) else - applyOrganDamage(-10) //heal quickly + apply_organ_damage(-10) //heal quickly . = ..() /obj/item/organ/internal/eyes/night_vision/maintenance_adapted/Remove(mob/living/carbon/unadapted, special = FALSE) diff --git a/code/modules/surgery/organs/helpers.dm b/code/modules/surgery/organs/helpers.dm index c9b8b117da4..598d5146e58 100644 --- a/code/modules/surgery/organs/helpers.dm +++ b/code/modules/surgery/organs/helpers.dm @@ -4,7 +4,7 @@ * Arguments: * * typepath The typepath of the organ to get */ -/mob/proc/getorgan(typepath) +/mob/proc/get_organ_by_type(typepath) return /** @@ -15,21 +15,22 @@ * Arguments: * * zone [a BODY_ZONE_X define](https://github.com/tgstation/tgstation/blob/master/code/__DEFINES/combat.dm#L187-L200) */ -/mob/proc/getorganszone(zone) +/mob/proc/get_organs_for_zone(zone) return + /** * Returns a list of all organs in specified slot * * Arguments: * * slot Slot to get the organs from */ -/mob/proc/getorganslot(slot) +/mob/proc/get_organ_slot(slot) return -/mob/living/carbon/getorgan(typepath) +/mob/living/carbon/get_organ_by_type(typepath) return (locate(typepath) in organs) -/mob/living/carbon/getorganszone(zone, include_children = FALSE) +/mob/living/carbon/get_organs_for_zone(zone, include_children = FALSE) var/valid_organs = list() for(var/obj/item/organ/organ as anything in organs) if(zone == organ.zone) @@ -38,6 +39,6 @@ valid_organs += organ return valid_organs -/mob/living/carbon/getorganslot(slot) +/mob/living/carbon/get_organ_slot(slot) . = organs_slot[slot] diff --git a/code/modules/surgery/organs/liver.dm b/code/modules/surgery/organs/liver.dm index ad71451dafb..26be1babdbe 100755 --- a/code/modules/surgery/organs/liver.dm +++ b/code/modules/surgery/organs/liver.dm @@ -100,7 +100,7 @@ liver_owner.reagents.metabolize(liver_owner, delta_time, times_fired, can_overdose=TRUE, liverless=TRUE) return - var/obj/belly = liver_owner.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/belly = liver_owner.get_organ_slot(ORGAN_SLOT_STOMACH) var/list/cached_reagents = liver_owner.reagents.reagent_list var/liver_damage = 0 var/provide_pain_message = HAS_NO_TOXIN @@ -108,7 +108,7 @@ if(filterToxins && !HAS_TRAIT(liver_owner, TRAIT_TOXINLOVER)) for(var/datum/reagent/toxin/toxin in cached_reagents) if(status != toxin.affected_organtype) //this particular toxin does not affect this type of organ - continue + continue var/amount = round(toxin.volume, CHEMICAL_QUANTISATION_LEVEL) // this is an optimization if(belly) amount += belly.reagents.get_reagent_amount(toxin.type) @@ -122,7 +122,7 @@ liver_owner.reagents.metabolize(liver_owner, delta_time, times_fired, can_overdose=TRUE) if(liver_damage) - applyOrganDamage(min(liver_damage * delta_time , MAX_TOXIN_LIVER_DAMAGE * delta_time)) + apply_organ_damage(min(liver_damage * delta_time , MAX_TOXIN_LIVER_DAMAGE * delta_time)) if(provide_pain_message && damage > 10 && DT_PROB(damage/6, delta_time)) //the higher the damage the higher the probability to_chat(liver_owner, span_warning("You feel a dull pain in your abdomen.")) @@ -188,7 +188,7 @@ return var/mob/living/carbon/human/humie_owner = owner - if(!humie_owner.getorganslot(ORGAN_SLOT_EYES) || humie_owner.is_eyes_covered()) + if(!humie_owner.get_organ_slot(ORGAN_SLOT_EYES) || humie_owner.is_eyes_covered()) return switch(failure_time) if(0 to 3 * LIVER_FAILURE_STAGE_SECONDS - 1) diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index 63dacfb3d8c..cae11fa3cba 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -43,7 +43,7 @@ /obj/item/organ/internal/on_death(delta_time, times_fired) //runs decay when outside of a person if(organ_flags & (ORGAN_SYNTHETIC | ORGAN_FROZEN)) return - applyOrganDamage(decay_factor * maxHealth * delta_time) + apply_organ_damage(decay_factor * maxHealth * delta_time) /// Called once every life tick on every organ in a carbon's body /// NOTE: THIS IS VERY HOT. Be careful what you put in here @@ -58,7 +58,7 @@ failure_time-- if(organ_flags & ORGAN_SYNTHETIC_EMP) //Synthetic organ has been emped, is now failing. - applyOrganDamage(decay_factor * maxHealth * delta_time) + apply_organ_damage(decay_factor * maxHealth * delta_time) return if(!damage) // No sense healing if you're not even hurt bro @@ -68,7 +68,7 @@ var/healing_amount = healing_factor ///Damage decrements again by a percent of its maxhealth, up to a total of 4 extra times depending on the owner's health healing_amount += (owner.satiety > 0) ? (4 * healing_factor * owner.satiety / MAX_SATIETY) : 0 - applyOrganDamage(-healing_amount * maxHealth * delta_time, damage) // pass curent damage incase we are over cap + apply_organ_damage(-healing_amount * maxHealth * delta_time, damage) // pass curent damage incase we are over cap ///Used as callbacks by object pooling /obj/item/organ/internal/exit_wardrobe() diff --git a/code/modules/surgery/organs/tongue.dm b/code/modules/surgery/organs/tongue.dm index 492503447af..7dbb90a7db0 100644 --- a/code/modules/surgery/organs/tongue.dm +++ b/code/modules/surgery/organs/tongue.dm @@ -249,7 +249,7 @@ if(!istype(tongue_holder)) return - var/obj/item/organ/internal/tongue/abductor/tongue = tongue_holder.getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/abductor/tongue = tongue_holder.get_organ_slot(ORGAN_SLOT_TONGUE) if(!istype(tongue)) return @@ -277,7 +277,7 @@ var/rendered = span_abductor("[user.real_name]: [message]") user.log_talk(message, LOG_SAY, tag="abductor") for(var/mob/living/carbon/human/living_mob in GLOB.alive_mob_list) - var/obj/item/organ/internal/tongue/abductor/tongue = living_mob.getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/abductor/tongue = living_mob.get_organ_slot(ORGAN_SLOT_TONGUE) if(!istype(tongue)) continue if(mothership == tongue.mothership) diff --git a/code/modules/surgery/organs/vocal_cords.dm b/code/modules/surgery/organs/vocal_cords.dm index 58b32075c14..68f6e758cbf 100644 --- a/code/modules/surgery/organs/vocal_cords.dm +++ b/code/modules/surgery/organs/vocal_cords.dm @@ -47,7 +47,7 @@ for(var/player in GLOB.player_list) if(iscarbon(player)) var/mob/living/carbon/speaker = player - if(speaker.getorganslot(ORGAN_SLOT_ADAMANTINE_RESONATOR)) + if(speaker.get_organ_slot(ORGAN_SLOT_ADAMANTINE_RESONATOR)) to_chat(speaker, msg) if(isobserver(player)) var/link = FOLLOW_LINK(player, owner) diff --git a/code/modules/surgery/revival.dm b/code/modules/surgery/revival.dm index 63f88435beb..3471985d0c2 100644 --- a/code/modules/surgery/revival.dm +++ b/code/modules/surgery/revival.dm @@ -21,7 +21,7 @@ return FALSE if(HAS_TRAIT(target, TRAIT_SUICIDED) || HAS_TRAIT(target, TRAIT_HUSK) || HAS_TRAIT(target, TRAIT_DEFIB_BLACKLISTED)) return FALSE - var/obj/item/organ/internal/brain/target_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/target_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!target_brain) return FALSE return TRUE diff --git a/code/modules/surgery/stomachpump.dm b/code/modules/surgery/stomachpump.dm index 1ce7aa03c82..0c9a0ce564f 100644 --- a/code/modules/surgery/stomachpump.dm +++ b/code/modules/surgery/stomachpump.dm @@ -11,7 +11,7 @@ ) /datum/surgery/stomach_pump/can_start(mob/user, mob/living/carbon/target) - var/obj/item/organ/internal/stomach/target_stomach = target.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/target_stomach = target.get_organ_slot(ORGAN_SLOT_STOMACH) if(HAS_TRAIT(target, TRAIT_HUSK)) return FALSE if(!target_stomach) diff --git a/code/modules/surgery/surgery_step.dm b/code/modules/surgery/surgery_step.dm index 84826fc98e2..2649aba798f 100644 --- a/code/modules/surgery/surgery_step.dm +++ b/code/modules/surgery/surgery_step.dm @@ -15,7 +15,7 @@ /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 - if(surgery.organ_to_manipulate && !target.getorganslot(surgery.organ_to_manipulate)) + if(surgery.organ_to_manipulate && !target.get_organ_slot(surgery.organ_to_manipulate)) to_chat(user, span_warning("[target] seems to be missing the organ necessary to complete this surgery!")) return FALSE @@ -269,3 +269,5 @@ if(prob(30)) target.emote("scream") //SKYRAT EDIT END + +#undef SURGERY_SLOWDOWN_CAP_MULTIPLIER diff --git a/code/modules/surgery/tools.dm b/code/modules/surgery/tools.dm index 28205a0e81d..ed40565596c 100644 --- a/code/modules/surgery/tools.dm +++ b/code/modules/surgery/tools.dm @@ -440,7 +440,7 @@ var/obj/item/bodypart/limb_snip_candidate if(user.zone_selected == BODY_ZONE_PRECISE_GROIN) - tail_snip_candidate = patient.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + tail_snip_candidate = patient.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(!tail_snip_candidate) to_chat(user, span_warning("[patient] does not have a tail.")) return diff --git a/code/modules/unit_tests/blindness.dm b/code/modules/unit_tests/blindness.dm index a738130dd9e..f7ae16c7e0a 100644 --- a/code/modules/unit_tests/blindness.dm +++ b/code/modules/unit_tests/blindness.dm @@ -105,42 +105,42 @@ /datum/unit_test/eye_damage/Run() var/mob/living/carbon/human/dummy = allocate(/mob/living/carbon/human/consistent) - var/obj/item/organ/internal/eyes/eyes = dummy.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = dummy.get_organ_slot(ORGAN_SLOT_EYES) TEST_ASSERT_NOTNULL(eyes, "Eye damage unit test spawned a dummy without eyes!") // Test blindness due to eye damage // Cause critical eye damage var/critical_damage = eyes.maxHealth - eyes.setOrganDamage(critical_damage) // ~50 damage + eyes.set_organ_damage(critical_damage) // ~50 damage TEST_ASSERT(dummy.is_blind(), "After sustaining critical eye damage ([critical_damage]), the dummy was not blind.") // Heal eye damage - eyes.setOrganDamage(0) + eyes.set_organ_damage(0) TEST_ASSERT(!dummy.is_blind(), "After healing from critical eye damage, the dummy was not unblinded.") // Test nearsightedness due to eye damage var/datum/status_effect/grouped/nearsighted/nearsightedness // Cause minor eye damage var/minor_damage = eyes.maxHealth * 0.5 - eyes.applyOrganDamage(minor_damage) //~25 ddamage + eyes.apply_organ_damage(minor_damage) //~25 ddamage TEST_ASSERT(dummy.is_nearsighted(), "After sustaining minor eye damage ([minor_damage]), the dummy was not nearsighted.") // Check that the severity is correct nearsightedness = dummy.is_nearsighted() TEST_ASSERT_EQUAL(nearsightedness.overlay_severity, 1, "After taking minor eye damage, the dummy's nearsightedness was the incorrect severity.") nearsightedness = null // Heal eye damage - eyes.setOrganDamage(0) + eyes.set_organ_damage(0) TEST_ASSERT(!dummy.is_nearsighted(), "After curing eye damage, the dummy was still nearsighted.") // Cause major eye damage var/major_damage = eyes.maxHealth * 0.7 - eyes.applyOrganDamage(major_damage) //~35 damage + eyes.apply_organ_damage(major_damage) //~35 damage TEST_ASSERT(dummy.is_nearsighted(), "After sustaining major eye damage ([major_damage]), the dummy was not nearsighted.") // Check that the severity is correct nearsightedness = dummy.is_nearsighted() TEST_ASSERT_EQUAL(nearsightedness.overlay_severity, 2, "After taking major eye damage, the dummy's nearsightedness was the incorrect severity.") nearsightedness = null // Heal eye damage - eyes.setOrganDamage(0) + eyes.set_organ_damage(0) TEST_ASSERT(!dummy.is_nearsighted(), "After curing eye damage, the dummy was still nearsighted.") #undef HAS_SCREEN_OVERLAY diff --git a/code/modules/unit_tests/full_heal.dm b/code/modules/unit_tests/full_heal.dm index beec2dbf9e2..9289abba954 100644 --- a/code/modules/unit_tests/full_heal.dm +++ b/code/modules/unit_tests/full_heal.dm @@ -5,7 +5,7 @@ var/mob/living/carbon/human/dummy = allocate(/mob/living/carbon/human/consistent) for(var/obj/item/organ/internal/organ in dummy.organs) - organ.applyOrganDamage(50) + organ.apply_organ_damage(50) dummy.fully_heal(HEAL_ORGANS) @@ -33,7 +33,7 @@ dummy.fully_heal(HEAL_REFRESH_ORGANS) for(var/obj/item/organ/organ_type as anything in we_started_with) - if(dummy.getorgan(organ_type)) + if(dummy.get_organ_by_type(organ_type)) continue TEST_FAIL("Organ [initial(organ_type.name)] didn't regenerate in the dummy after fullyheal flag HEAL_REFRESH_ORGANS.") diff --git a/code/modules/unit_tests/metabolizing.dm b/code/modules/unit_tests/metabolizing.dm index da4f06840d6..53250def309 100644 --- a/code/modules/unit_tests/metabolizing.dm +++ b/code/modules/unit_tests/metabolizing.dm @@ -80,7 +80,7 @@ pill.attack(pill_user, pill_user) // Set the metabolism efficiency to 1.0 so it transfers all reagents to the body in one go. - var/obj/item/organ/internal/stomach/pill_belly = pill_user.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/pill_belly = pill_user.get_organ_slot(ORGAN_SLOT_STOMACH) pill_belly.metabolism_efficiency = 1 pill_user.Life() @@ -109,7 +109,7 @@ syringe.melee_attack_chain(pill_syringe_user, pill_syringe_user) // Set the metabolism efficiency to 1.0 so it transfers all reagents to the body in one go. - pill_belly = pill_syringe_user.getorganslot(ORGAN_SLOT_STOMACH) + pill_belly = pill_syringe_user.get_organ_slot(ORGAN_SLOT_STOMACH) pill_belly.metabolism_efficiency = 1 pill_syringe_user.Life() diff --git a/code/modules/unit_tests/mutant_organs.dm b/code/modules/unit_tests/mutant_organs.dm index b61dacdb477..d520f3f9c75 100644 --- a/code/modules/unit_tests/mutant_organs.dm +++ b/code/modules/unit_tests/mutant_organs.dm @@ -1,10 +1,9 @@ /** - * Iterates over all species to ensure that organs are valid after being set to a mutant species + * Iterates over all species to ensure that organs are valid after being set to a mutant species. */ /datum/unit_test/mutant_organs /datum/unit_test/mutant_organs/Run() - var/mob/living/carbon/human/consistent/dummy = allocate(/mob/living/carbon/human/consistent) var/list/ignore = list( /datum/species/dullahan, ) @@ -22,13 +21,16 @@ ) for(var/datum/species/species_type as anything in species) + // get our dummy + var/mob/living/carbon/human/consistent/dummy = allocate(/mob/living/carbon/human/consistent) + // change them to the species dummy.set_species(species_type) // check all their organs for(var/organ_slot in organs_we_care_about) - var/expected_type = slot_to_species_organ_type(organ_slot, species_type) - var/obj/item/organ/actual_organ = dummy.getorganslot(organ_slot) + var/expected_type = dummy.dna.species.get_mutant_organ_type_for_slot(organ_slot) + var/obj/item/organ/actual_organ = dummy.get_organ_slot(organ_slot) if(isnull(actual_organ)) if(!isnull(expected_type)) TEST_FAIL("[species_type] did not update their [organ_slot] organ to [expected_type], no organ was found") @@ -41,25 +43,3 @@ if(actual_organ.type != expected_type) TEST_FAIL("[species_type] did not update their [organ_slot] organ to [expected_type], instead it was [actual_organ.type]") continue - -/datum/unit_test/mutant_organs/proc/slot_to_species_organ_type(slot, datum/species/species) - switch(slot) - if(ORGAN_SLOT_BRAIN) - return initial(species.mutantbrain) - if(ORGAN_SLOT_HEART) - return initial(species.mutantheart) - if(ORGAN_SLOT_LUNGS) - return initial(species.mutantlungs) - if(ORGAN_SLOT_EYES) - return initial(species.mutanteyes) - if(ORGAN_SLOT_EARS) - return initial(species.mutantears) - if(ORGAN_SLOT_TONGUE) - return initial(species.mutanttongue) - if(ORGAN_SLOT_LIVER) - return initial(species.mutantliver) - if(ORGAN_SLOT_STOMACH) - return initial(species.mutantstomach) - if(ORGAN_SLOT_APPENDIX) - return initial(species.mutantappendix) - CRASH("Invalid organ slot [slot]") // just incase someone adds an organ we care about and forgets to add it here diff --git a/code/modules/unit_tests/organs.dm b/code/modules/unit_tests/organs.dm index 478aefcc199..759e955e319 100644 --- a/code/modules/unit_tests/organs.dm +++ b/code/modules/unit_tests/organs.dm @@ -52,13 +52,13 @@ TEST_ASSERT(test_organ in lab_rat.organs, TEST_ORGAN_INSERT_MESSAGE(test_organ, "should insert the organ into the human's `internal_organs` list.")) if(test_organ.slot) TEST_ASSERT(lab_rat.organs_slot[test_organ.slot] == test_organ, TEST_ORGAN_INSERT_MESSAGE(test_organ, "should add the organ to the human's `internal_organs_slot` list.")) - TEST_ASSERT(lab_rat.getorganslot(test_organ.slot) == test_organ, TEST_ORGAN_INSERT_MESSAGE(test_organ, "should make the organ available via human's `getorganslot()` proc.")) + TEST_ASSERT(lab_rat.get_organ_slot(test_organ.slot) == test_organ, TEST_ORGAN_INSERT_MESSAGE(test_organ, "should make the organ available via human's `get_organ_slot()` proc.")) if(LAZYLEN(test_organ.organ_traits)) TEST_ASSERT(LAZYLEN(lab_rat.status_traits), TEST_ORGAN_INSERT_MESSAGE(test_organ, "should add Traits to lazylist `human.status_traits`.")) for(var/test_trait in test_organ.organ_traits) TEST_ASSERT(HAS_TRAIT(lab_rat, test_trait), TEST_ORGAN_INSERT_MESSAGE(test_organ, "should add Trait `[test_trait]` to lazylist `human.status_traits`")) - + if(LAZYLEN(test_organ.actions)) TEST_ASSERT(LAZYLEN(lab_rat.actions), TEST_ORGAN_INSERT_MESSAGE(test_organ, "should add Actions to lazylist `human.actions`.")) for(var/datum/action/test_action as anything in test_organ.actions) @@ -75,7 +75,7 @@ TEST_ASSERT(!(test_organ in lab_rat.organs), TEST_ORGAN_REMOVE_MESSAGE(test_organ, "should remove the organ from the human's `internal_organs` list.")) if(test_organ.slot) TEST_ASSERT(lab_rat.organs_slot[test_organ.slot] != test_organ, TEST_ORGAN_REMOVE_MESSAGE(test_organ, "should remove the organ from the human's `internal_organs_slot` list.")) - TEST_ASSERT(lab_rat.getorganslot(test_organ.slot) != test_organ, TEST_ORGAN_REMOVE_MESSAGE(test_organ, "should remove the organ from the human's `getorganslot()` proc.")) + TEST_ASSERT(lab_rat.get_organ_slot(test_organ.slot) != test_organ, TEST_ORGAN_REMOVE_MESSAGE(test_organ, "should remove the organ from the human's `get_organ_slot()` proc.")) return diff --git a/code/modules/unit_tests/species_change_organs.dm b/code/modules/unit_tests/species_change_organs.dm index e2435486162..e0555aa89bc 100644 --- a/code/modules/unit_tests/species_change_organs.dm +++ b/code/modules/unit_tests/species_change_organs.dm @@ -14,8 +14,8 @@ var/obj/item/organ/internal/heart/cybernetic/cyber_heart = allocate(/obj/item/organ/internal/heart/cybernetic) cyber_heart.Insert(dummy, special = TRUE, drop_if_replaced = FALSE) // Give one of their organs a bit of damage - var/obj/item/organ/internal/appendix/existing_appendix = dummy.getorganslot(ORGAN_SLOT_APPENDIX) - existing_appendix.setOrganDamage(25) + var/obj/item/organ/internal/appendix/existing_appendix = dummy.get_organ_slot(ORGAN_SLOT_APPENDIX) + existing_appendix.set_organ_damage(25) // Changing species should // - Persist brain traumas @@ -36,11 +36,11 @@ // Grab the lizard's appendix for comparison later // They should've been given a new one, but our damage should also have transferred over - var/obj/item/organ/internal/appendix/lizard_appendix = dummy.getorganslot(ORGAN_SLOT_APPENDIX) + var/obj/item/organ/internal/appendix/lizard_appendix = dummy.get_organ_slot(ORGAN_SLOT_APPENDIX) // They should have the trauma still TEST_ASSERT(dummy.has_trauma_type(/datum/brain_trauma/severe/blindness), "Dummy, upon changing species, did not carry over their brain trauma!") // They should have their cybernetic heart still - TEST_ASSERT_EQUAL(dummy.getorganslot(ORGAN_SLOT_HEART), cyber_heart, "Dummy, upon changing species, did not carry over their cybernetic organs!") + TEST_ASSERT_EQUAL(dummy.get_organ_slot(ORGAN_SLOT_HEART), cyber_heart, "Dummy, upon changing species, did not carry over their cybernetic organs!") // They should have appendix damage still TEST_ASSERT_EQUAL(lizard_appendix.damage, 25, "Dummy, upon changing species, did not carry over appendix damage!") diff --git a/code/modules/unit_tests/stomach.dm b/code/modules/unit_tests/stomach.dm index 58f143e14ae..782e74788a6 100644 --- a/code/modules/unit_tests/stomach.dm +++ b/code/modules/unit_tests/stomach.dm @@ -5,7 +5,7 @@ var/mob/living/carbon/human/human = allocate(/mob/living/carbon/human/consistent) var/obj/item/food/hotdog/debug/fooditem = allocate(/obj/item/food/hotdog/debug) - var/obj/item/organ/internal/stomach/belly = human.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/belly = human.get_organ_slot(ORGAN_SLOT_STOMACH) var/obj/item/reagent_containers/pill/pill = allocate(/obj/item/reagent_containers/pill) var/datum/reagent/drug/methamphetamine/meth = /datum/reagent/drug/methamphetamine diff --git a/code/modules/unit_tests/surgeries.dm b/code/modules/unit_tests/surgeries.dm index e33af0e2dc5..3d72fd43718 100644 --- a/code/modules/unit_tests/surgeries.dm +++ b/code/modules/unit_tests/surgeries.dm @@ -25,7 +25,7 @@ fix_brain.success(user, patient) TEST_ASSERT(!patient.has_trauma_type(), "Patient kept their brain trauma after brain surgery") - TEST_ASSERT(patient.getOrganLoss(ORGAN_SLOT_BRAIN) < 20, "Patient did not heal their brain damage after brain surgery") + TEST_ASSERT(patient.get_organ_loss(ORGAN_SLOT_BRAIN) < 20, "Patient did not heal their brain damage after brain surgery") /datum/unit_test/head_transplant/Run() var/mob/living/carbon/human/user = allocate(/mob/living/carbon/human/consistent) diff --git a/code/modules/vehicles/mecha/equipment/tools/medical_tools.dm b/code/modules/vehicles/mecha/equipment/tools/medical_tools.dm index 04aea568aa3..86f5e777054 100644 --- a/code/modules/vehicles/mecha/equipment/tools/medical_tools.dm +++ b/code/modules/vehicles/mecha/equipment/tools/medical_tools.dm @@ -172,7 +172,7 @@ Toxin Content: [patient.getToxLoss()]%
Burn Severity: [patient.getFireLoss()]%
[span_danger("[patient.getCloneLoss() ? "Subject appears to have cellular damage." : ""]")]
- [span_danger("[patient.getOrganLoss(ORGAN_SLOT_BRAIN) ? "Significant brain damage detected." : ""]")]
+ [span_danger("[patient.get_organ_loss(ORGAN_SLOT_BRAIN) ? "Significant brain damage detected." : ""]")]
[span_danger("[length(patient.get_traumas()) ? "Brain Traumas detected." : ""]")]
"} diff --git a/code/modules/vehicles/mecha/equipment/weapons/weapons.dm b/code/modules/vehicles/mecha/equipment/weapons/weapons.dm index eb1fcb9cf6d..0f8b6cf1422 100644 --- a/code/modules/vehicles/mecha/equipment/weapons/weapons.dm +++ b/code/modules/vehicles/mecha/equipment/weapons/weapons.dm @@ -199,7 +199,7 @@ to_chat(M, "HONK") M.SetSleeping(0) M.adjust_stutter(40 SECONDS) - var/obj/item/organ/internal/ears/ears = M.getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/internal/ears/ears = M.get_organ_slot(ORGAN_SLOT_EARS) if(ears) ears.adjustEarDamage(0, 30) M.Paralyze(60) diff --git a/code/modules/wiremod/shell/brain_computer_interface.dm b/code/modules/wiremod/shell/brain_computer_interface.dm index 362fbba4bd5..ec10945f66f 100644 --- a/code/modules/wiremod/shell/brain_computer_interface.dm +++ b/code/modules/wiremod/shell/brain_computer_interface.dm @@ -436,7 +436,7 @@ playsound(loc, 'sound/machines/ping.ogg', 30, FALSE) - var/obj/item/organ/internal/cyberimp/bci/bci_organ = carbon_occupant.getorgan(/obj/item/organ/internal/cyberimp/bci) + var/obj/item/organ/internal/cyberimp/bci/bci_organ = carbon_occupant.get_organ_by_type(/obj/item/organ/internal/cyberimp/bci) if (bci_organ) bci_organ.Remove(carbon_occupant) @@ -468,7 +468,7 @@ var/mob/living/carbon/carbon_occupant = occupant if (istype(occupant)) - var/obj/item/organ/internal/cyberimp/bci/bci_organ = carbon_occupant.getorgan(/obj/item/organ/internal/cyberimp/bci) + var/obj/item/organ/internal/cyberimp/bci/bci_organ = carbon_occupant.get_organ_by_type(/obj/item/organ/internal/cyberimp/bci) if (isnull(bci_organ) && isnull(bci_to_implant)) say("No brain-computer interface inserted, and occupant does not have one. Insert a BCI to implant one.") playsound(src, 'sound/machines/buzz-sigh.ogg', 30, TRUE) diff --git a/code/modules/zombie/items.dm b/code/modules/zombie/items.dm index 47d610dbdf6..7f303cc64a8 100644 --- a/code/modules/zombie/items.dm +++ b/code/modules/zombie/items.dm @@ -35,7 +35,7 @@ return var/obj/item/organ/internal/zombie_infection/infection - infection = target.getorganslot(ORGAN_SLOT_ZOMBIE) + infection = target.get_organ_slot(ORGAN_SLOT_ZOMBIE) if(!infection) infection = new() infection.Insert(target) diff --git a/code/modules/zombie/organs.dm b/code/modules/zombie/organs.dm index 192a16db12b..ee6edfa1b4a 100644 --- a/code/modules/zombie/organs.dm +++ b/code/modules/zombie/organs.dm @@ -53,7 +53,7 @@ owner.adjustToxLoss(0.5 * delta_time) if (DT_PROB(5, delta_time)) to_chat(owner, span_danger("You feel sick...")) - if(timer_id || HAS_TRAIT(owner, TRAIT_SUICIDED) || !owner.getorgan(/obj/item/organ/internal/brain)) + if(timer_id || HAS_TRAIT(owner, TRAIT_SUICIDED) || !owner.get_organ_by_type(/obj/item/organ/internal/brain)) return if(owner.stat != DEAD && !converts_living) return diff --git a/modular_skyrat/master_files/code/datums/quirks/neutral.dm b/modular_skyrat/master_files/code/datums/quirks/neutral.dm index ff7f149fa88..759a64b9c81 100644 --- a/modular_skyrat/master_files/code/datums/quirks/neutral.dm +++ b/modular_skyrat/master_files/code/datums/quirks/neutral.dm @@ -61,7 +61,7 @@ var/mob/living/carbon/human/carbon_holder = quirk_holder if (!istype(carbon_holder) || !lungs_typepath) return - var/current_lungs = carbon_holder.getorganslot(ORGAN_SLOT_LUNGS) + var/current_lungs = carbon_holder.get_organ_slot(ORGAN_SLOT_LUNGS) if (istype(current_lungs, lungs_typepath)) return lungs_holding = current_lungs @@ -74,7 +74,7 @@ var/mob/living/carbon/carbon_holder = quirk_holder if (!istype(carbon_holder) || !lungs_holding) return - var/obj/item/organ/internal/lungs/lungs = carbon_holder.getorganslot(ORGAN_SLOT_LUNGS) + var/obj/item/organ/internal/lungs/lungs = carbon_holder.get_organ_slot(ORGAN_SLOT_LUNGS) if (lungs != lungs_added && lungs != lungs_holding) qdel(lungs_holding) return diff --git a/modular_skyrat/master_files/code/datums/traits/neutral.dm b/modular_skyrat/master_files/code/datums/traits/neutral.dm index 1828b27176f..9cd6eaa7ff9 100644 --- a/modular_skyrat/master_files/code/datums/traits/neutral.dm +++ b/modular_skyrat/master_files/code/datums/traits/neutral.dm @@ -184,7 +184,7 @@ /datum/quirk/item_quirk/canine/add_unique(client/client_source) var/mob/living/carbon/human/human_holder = quirk_holder - var/obj/item/organ/internal/tongue/old_tongue = human_holder.getorganslot(ORGAN_SLOT_TONGUE) + var/obj/item/organ/internal/tongue/old_tongue = human_holder.get_organ_slot(ORGAN_SLOT_TONGUE) old_tongue.Remove(human_holder) qdel(old_tongue) diff --git a/modular_skyrat/master_files/code/modules/client/preferences/brain.dm b/modular_skyrat/master_files/code/modules/client/preferences/brain.dm index 57f8e600274..cdf60e3f59a 100644 --- a/modular_skyrat/master_files/code/modules/client/preferences/brain.dm +++ b/modular_skyrat/master_files/code/modules/client/preferences/brain.dm @@ -15,7 +15,7 @@ return var/obj/item/organ/internal/brain/new_brain = target.prefs_get_brain_to_use(value) - var/obj/item/organ/internal/brain/old_brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/old_brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) if(!new_brain || new_brain == old_brain.type) return diff --git a/modular_skyrat/master_files/code/modules/client/preferences/mutant_parts.dm b/modular_skyrat/master_files/code/modules/client/preferences/mutant_parts.dm index c468b930941..4e7d5114532 100644 --- a/modular_skyrat/master_files/code/modules/client/preferences/mutant_parts.dm +++ b/modular_skyrat/master_files/code/modules/client/preferences/mutant_parts.dm @@ -49,7 +49,7 @@ /datum/preference/toggle/eye_emissives/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) value = value && preferences && is_allowed(preferences) - var/obj/item/organ/internal/eyes/eyes_organ = target.getorgan(/obj/item/organ/internal/eyes) + var/obj/item/organ/internal/eyes/eyes_organ = target.get_organ_by_type(/obj/item/organ/internal/eyes) target.emissive_eyes = value if (istype(eyes_organ)) eyes_organ.is_emissive = value diff --git a/modular_skyrat/master_files/code/modules/mob/dead/new_player/preferences_setup.dm b/modular_skyrat/master_files/code/modules/mob/dead/new_player/preferences_setup.dm index e917109f638..5df3c3bd823 100644 --- a/modular_skyrat/master_files/code/modules/mob/dead/new_player/preferences_setup.dm +++ b/modular_skyrat/master_files/code/modules/mob/dead/new_player/preferences_setup.dm @@ -23,14 +23,14 @@ if(PREVIEW_PREF_NAKED) mannequin.underwear_visibility = UNDERWEAR_HIDE_UNDIES | UNDERWEAR_HIDE_SHIRT | UNDERWEAR_HIDE_SOCKS for(var/organ_key in list(ORGAN_SLOT_VAGINA, ORGAN_SLOT_PENIS, ORGAN_SLOT_BREASTS, ORGAN_SLOT_ANUS)) - var/obj/item/organ/external/genital/gent = mannequin.getorganslot(organ_key) + var/obj/item/organ/external/genital/gent = mannequin.get_organ_slot(organ_key) if(gent) gent.aroused = AROUSAL_NONE gent.update_sprite_suffix() if(PREVIEW_PREF_NAKED_AROUSED) mannequin.underwear_visibility = UNDERWEAR_HIDE_UNDIES | UNDERWEAR_HIDE_SHIRT | UNDERWEAR_HIDE_SOCKS for(var/organ_key in list(ORGAN_SLOT_VAGINA, ORGAN_SLOT_PENIS, ORGAN_SLOT_BREASTS, ORGAN_SLOT_ANUS)) - var/obj/item/organ/external/genital/gent = mannequin.getorganslot(organ_key) + var/obj/item/organ/external/genital/gent = mannequin.get_organ_slot(organ_key) if(gent) gent.aroused = AROUSAL_FULL gent.update_sprite_suffix() diff --git a/modular_skyrat/master_files/code/modules/mob/living/carbon/human.dm b/modular_skyrat/master_files/code/modules/mob/living/carbon/human.dm index a140815e409..c7a8a5dcf32 100644 --- a/modular_skyrat/master_files/code/modules/mob/living/carbon/human.dm +++ b/modular_skyrat/master_files/code/modules/mob/living/carbon/human.dm @@ -13,7 +13,7 @@ span_warning("You fall [levels > 1 ? "[levels] levels" : "one level"] into [target_turf], perfecting the landing!")) return - var/obj/item/organ/external/wings/gliders = getorgan(/obj/item/organ/external/wings) + var/obj/item/organ/external/wings/gliders = get_organ_by_type(/obj/item/organ/external/wings) if((HAS_TRAIT(src, TRAIT_FREERUNNING) && levels < 2) || gliders?.can_soften_fall()) // the power of parkour or wings allows falling short distances unscathed visible_message(span_danger("[src] makes a hard landing on [target_turf] but remains unharmed from the fall."), \ span_userdanger("You brace for the fall. You make a hard landing on [target_turf] but remain unharmed.")) diff --git a/modular_skyrat/master_files/code/modules/mob/living/carbon/human_helpers.dm b/modular_skyrat/master_files/code/modules/mob/living/carbon/human_helpers.dm index d390e31c635..b28ae03d8ef 100644 --- a/modular_skyrat/master_files/code/modules/mob/living/carbon/human_helpers.dm +++ b/modular_skyrat/master_files/code/modules/mob/living/carbon/human_helpers.dm @@ -4,7 +4,7 @@ var/t_He = p_they(TRUE) var/t_is = p_are() //This checks to see if the body is revivable - if(key || !getorgan(/obj/item/organ/internal/brain) || ghost?.can_reenter_corpse) + if(key || !get_organ_by_type(/obj/item/organ/internal/brain) || ghost?.can_reenter_corpse) return span_deadsay("[t_He] [t_is] limp and unresponsive; they're still twitching on occasion, perhaps [p_they(FALSE)] can still be saved..!") else return span_deadsay("[t_He] [t_is] limp and unresponsive; there are no signs of life and they've degraded beyond revival...") diff --git a/modular_skyrat/modules/assault_operatives/code/assault_operatives.dm b/modular_skyrat/modules/assault_operatives/code/assault_operatives.dm index 013f44e4c5c..4ee36404d72 100644 --- a/modular_skyrat/modules/assault_operatives/code/assault_operatives.dm +++ b/modular_skyrat/modules/assault_operatives/code/assault_operatives.dm @@ -161,7 +161,7 @@ for(var/obj/item/item in human_target.get_equipped_items(TRUE)) qdel(item) - var/obj/item/organ/internal/brain/human_brain = human_target.getorganslot(BRAIN) + var/obj/item/organ/internal/brain/human_brain = human_target.get_organ_slot(BRAIN) human_brain.destroy_all_skillchips() // get rid of skillchips to prevent runtimes human_target.equipOutfit(assault_operative_default_outfit) human_target.regenerate_icons() diff --git a/modular_skyrat/modules/cortical_borer/code/cortical_borer_abilities.dm b/modular_skyrat/modules/cortical_borer/code/cortical_borer_abilities.dm index cd73636c65c..8a239f9c9a5 100644 --- a/modular_skyrat/modules/cortical_borer/code/cortical_borer_abilities.dm +++ b/modular_skyrat/modules/cortical_borer/code/cortical_borer_abilities.dm @@ -298,7 +298,7 @@ cortical_owner.chemical_evolution -= chemical_evo_points cortical_owner.known_chemicals += reagent_choice.type cortical_owner.blood_chems_learned++ - var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.get_organ_slot(ORGAN_SLOT_BRAIN) if(victim_brain) cortical_owner.human_host.adjustOrganLoss(ORGAN_SLOT_BRAIN, 5 * cortical_owner.host_harm_multiplier) if(cortical_owner.blood_chems_learned == BLOOD_CHEM_OBJECTIVE) @@ -335,7 +335,7 @@ cortical_owner.chemical_evolution -= chemical_evo_points cortical_owner.known_chemicals += reagent_choice cortical_owner.potential_chemicals -= reagent_choice - var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.get_organ_slot(ORGAN_SLOT_BRAIN) if(victim_brain) cortical_owner.human_host.adjustOrganLoss(ORGAN_SLOT_BRAIN, 5 * cortical_owner.host_harm_multiplier) owner.balloon_alert(owner, "[initial(reagent_choice.name)] learned") @@ -366,7 +366,7 @@ cortical_owner.max_chemical_storage += cortical_owner.chem_storage_per_level cortical_owner.chemical_regen += cortical_owner.chem_regen_per_level cortical_owner.level += 1 - var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.get_organ_slot(ORGAN_SLOT_BRAIN) if(victim_brain) cortical_owner.human_host.adjustOrganLoss(ORGAN_SLOT_BRAIN, 10 * cortical_owner.host_harm_multiplier) cortical_owner.human_host.adjust_eye_blur(6 SECONDS * cortical_owner.host_harm_multiplier) //about 12 seconds' worth by default @@ -611,7 +611,7 @@ borer_message = sanitize(borer_message) var/mob/living/carbon/human/cortical_host = cortical_owner.human_host to_chat(cortical_host, span_boldwarning("Your voice moves without your permission!")) - var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.get_organ_slot(ORGAN_SLOT_BRAIN) if(victim_brain) cortical_owner.human_host.adjustOrganLoss(ORGAN_SLOT_BRAIN, 2 * cortical_owner.host_harm_multiplier) cortical_host.say(message = borer_message, forced = TRUE) @@ -642,7 +642,7 @@ StartCooldown() return produce_egg() - var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/victim_brain = cortical_owner.human_host.get_organ_slot(ORGAN_SLOT_BRAIN) if(victim_brain) cortical_owner.human_host.adjustOrganLoss(ORGAN_SLOT_BRAIN, 25 * cortical_owner.host_harm_multiplier) var/eggroll = rand(1,100) @@ -715,7 +715,7 @@ if(cortical_owner.human_host.blood_volume < BLOOD_VOLUME_BAD) cortical_owner.human_host.blood_volume = BLOOD_VOLUME_BAD for(var/obj/item/organ/internal/internal_target in cortical_owner.human_host.organs) - internal_target.applyOrganDamage(-internal_target.damage * 0.5) + internal_target.apply_organ_damage(-internal_target.damage * 0.5) cortical_owner.human_host.revive() to_chat(cortical_owner.human_host, span_boldwarning("Your heart jumpstarts!")) owner.balloon_alert(owner, "host revived") @@ -809,7 +809,7 @@ cortical_owner.chemical_storage -= chemical_cost var/turf/borer_turf = get_turf(cortical_owner) var/obj/item/bodypart/chest/chest = cortical_owner.human_host.get_bodypart(BODY_ZONE_CHEST) - if((!chest || IS_ORGANIC_LIMB(chest)) && !cortical_owner.human_host.getorgan(/obj/item/organ/internal/empowered_borer_egg)) + if((!chest || IS_ORGANIC_LIMB(chest)) && !cortical_owner.human_host.get_organ_by_type(/obj/item/organ/internal/empowered_borer_egg)) var/obj/item/organ/internal/empowered_borer_egg/spawned_egg = new(cortical_owner.human_host) spawned_egg.generation = (cortical_owner.generation + 1) diff --git a/modular_skyrat/modules/cryosleep/code/cryopod.dm b/modular_skyrat/modules/cryosleep/code/cryopod.dm index b4a9a62ca40..26162c1736f 100644 --- a/modular_skyrat/modules/cryosleep/code/cryopod.dm +++ b/modular_skyrat/modules/cryosleep/code/cryopod.dm @@ -427,7 +427,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/cryopod, 32) GLOB.bible_inhand_icon_state = null GLOB.holy_armor_type = null GLOB.holy_weapon_type = null - + // now try to pick the successor from existing crew, or leave it empty if no valid candidates found var/mob/living/carbon/human/chosen_successor = pick_holy_successor() GLOB.current_highpriest = chosen_successor ? WEAKREF(chosen_successor) : null // if a successor is already on the station then pick the first in line @@ -502,7 +502,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/cryopod, 32) // Allows players to cryo others. Checks if they have been AFK for 30 minutes. if(target.key && user != target) - if (target.getorgan(/obj/item/organ/internal/brain) ) //Target the Brain + if (target.get_organ_by_type(/obj/item/organ/internal/brain) ) //Target the Brain if(!target.mind || target.ssd_indicator ) // Is the character empty / AI Controlled if(target.lastclienttime + ssd_time >= world.time) to_chat(user, span_notice("You can't put [target] into [src] for another [round(((ssd_time - (world.time - target.lastclienttime)) / (1 MINUTES)), 1)] minutes.")) diff --git a/modular_skyrat/modules/customization/datums/dna.dm b/modular_skyrat/modules/customization/datums/dna.dm index ef5392b5b5f..9b38a38d524 100644 --- a/modular_skyrat/modules/customization/datums/dna.dm +++ b/modular_skyrat/modules/customization/datums/dna.dm @@ -263,7 +263,7 @@ GLOBAL_LIST_EMPTY(total_uf_len_by_block) eye_color_right = sanitize_hexcolor(get_uni_identity_block(structure, DNA_EYE_COLOR_RIGHT_BLOCK)) if(eyeorgancolor_update) - var/obj/item/organ/internal/eyes/eye_organ = getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eye_organ = get_organ_slot(ORGAN_SLOT_EYES) eye_organ.eye_color_left = eye_color_left eye_organ.eye_color_right = eye_color_right eye_organ.old_eye_color_left = eye_color_left diff --git a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories.dm b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories.dm index 4de173f8cb3..423a6b9ef9c 100644 --- a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories.dm +++ b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories.dm @@ -161,7 +161,7 @@ GLOBAL_LIST_EMPTY(cached_mutant_icon_files) organ_type = /obj/item/organ/external/spines /datum/sprite_accessory/spines/is_hidden(mob/living/carbon/human/wearer) - var/obj/item/organ/external/tail/tail = wearer.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/tail = wearer.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(!wearer.w_uniform && !wearer.wear_suit) return FALSE // Can hide if wearing uniform @@ -180,7 +180,7 @@ GLOBAL_LIST_EMPTY(cached_mutant_icon_files) return TRUE /datum/sprite_accessory/spines/get_special_render_state(mob/living/carbon/human/H) - var/obj/item/organ/external/tail/tail = H.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/tail = H.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(tail && tail.wag_flags & WAG_WAGGING) return "[icon_state]_wagging" return icon_state diff --git a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/genitals.dm b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/genitals.dm index 912786e7813..1d1c76686b2 100644 --- a/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/genitals.dm +++ b/modular_skyrat/modules/customization/modules/mob/dead/new_player/sprite_accessories/genitals.dm @@ -11,7 +11,7 @@ var/genital_location = GROIN /datum/sprite_accessory/genital/is_hidden(mob/living/carbon/human/target_mob) - var/obj/item/organ/external/genital/badonkers = target_mob.getorganslot(associated_organ_slot) + var/obj/item/organ/external/genital/badonkers = target_mob.get_organ_slot(associated_organ_slot) if(!badonkers) return TRUE switch(badonkers.visibility_preference) @@ -54,11 +54,11 @@ return TRUE /datum/sprite_accessory/genital/get_special_render_state(mob/living/carbon/human/human) - var/obj/item/organ/external/genital/genital = human.getorganslot(associated_organ_slot) + var/obj/item/organ/external/genital/genital = human.get_organ_slot(associated_organ_slot) return "[genital?.sprite_suffix]" /datum/sprite_accessory/genital/get_special_render_colour(mob/living/carbon/human/human, render_state) - var/obj/item/organ/external/genital/genital = human.getorganslot(associated_organ_slot) + var/obj/item/organ/external/genital/genital = human.get_organ_slot(associated_organ_slot) if(genital?.uses_skin_color && human.dna.species.use_skintones) return skintone2hex(human.skin_tone) diff --git a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/human.dm b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/human.dm index ccaca2cdd41..6b540a5cb7f 100644 --- a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/human.dm +++ b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/human.dm @@ -19,7 +19,7 @@ continue if(G.is_hidden(src)) continue - var/obj/item/organ/external/genital/ORG = getorganslot(G.associated_organ_slot) + var/obj/item/organ/external/genital/ORG = get_organ_slot(G.associated_organ_slot) if(!ORG) continue line += ORG.get_description_string(G) @@ -139,7 +139,7 @@ LAZYOR(available_selection, "reveal all") // Lets build our parts list for(var/organ_slot in total_selection) - if(getorganslot(organ_slot)) + if(get_organ_slot(organ_slot)) LAZYOR(available_selection, total_selection[organ_slot]) // If this proc is called with the 'quick_toggle' flag, we skip the rest diff --git a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species.dm b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species.dm index b16b469355e..926667b8acb 100644 --- a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species.dm +++ b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species.dm @@ -120,7 +120,7 @@ GLOBAL_LIST_EMPTY(customizable_races) // eyes if(!(NOEYESPRITES in species_traits)) - var/obj/item/organ/internal/eyes/eye_organ = species_human.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eye_organ = species_human.get_organ_slot(ORGAN_SLOT_EYES) var/mutable_appearance/no_eyeslay var/add_pixel_x = 0 @@ -214,7 +214,7 @@ GLOBAL_LIST_EMPTY(customizable_races) /datum/species/proc/can_wag_tail(mob/living/carbon/human/H) if(!H) //Somewhere in the core code we're getting those procs with H being null return FALSE - var/obj/item/organ/external/tail/T = H.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/T = H.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(!T) return FALSE if(T.can_wag) @@ -224,7 +224,7 @@ GLOBAL_LIST_EMPTY(customizable_races) /datum/species/proc/is_wagging_tail(mob/living/carbon/human/H) if(!H) //Somewhere in the core code we're getting those procs with H being null return FALSE - var/obj/item/organ/external/tail/T = H.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/T = H.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(!T) return FALSE return T.wagging @@ -232,7 +232,7 @@ GLOBAL_LIST_EMPTY(customizable_races) /datum/species/proc/start_wagging_tail(mob/living/carbon/human/H) if(!H) //Somewhere in the core code we're getting those procs with H being null return - var/obj/item/organ/external/tail/T = H.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/T = H.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(!T) return FALSE T.wagging = TRUE @@ -241,7 +241,7 @@ GLOBAL_LIST_EMPTY(customizable_races) /datum/species/proc/stop_wagging_tail(mob/living/carbon/human/H) if(!H) //Somewhere in the core code we're getting those procs with H being null return - var/obj/item/organ/external/tail/T = H.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/T = H.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(!T) return T.wagging = FALSE @@ -259,7 +259,7 @@ GLOBAL_LIST_EMPTY(customizable_races) var/datum/sprite_accessory/mutant_accessory = GLOB.sprite_accessories[key][target.dna.mutant_bodyparts[key][MUTANT_INDEX_NAME]] if(mutant_accessory?.factual && mutant_accessory.organ_type) - var/obj/item/organ/current_organ = target.getorgan(mutant_accessory.organ_type) + var/obj/item/organ/current_organ = target.get_organ_by_type(mutant_accessory.organ_type) if(!current_organ || replace_current) var/obj/item/organ/replacement = SSwardrobe.provide_type(mutant_accessory.organ_type) @@ -281,7 +281,7 @@ GLOBAL_LIST_EMPTY(customizable_races) replacement.Insert(target, special = TRUE, drop_if_replaced = FALSE) // var/obj/item/organ/path = new SA.organ_type - // var/obj/item/organ/oldorgan = C.getorganslot(path.slot) + // var/obj/item/organ/oldorgan = C.get_organ_slot(path.slot) // if(oldorgan) // oldorgan.Remove(C,TRUE) // QDEL_NULL(oldorgan) diff --git a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/hemophage.dm b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/hemophage.dm index 025cd141d69..d3ac1ab2d25 100644 --- a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/hemophage.dm +++ b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/hemophage.dm @@ -120,7 +120,7 @@ if(tumor_status == PULSATING_TUMOR_MISSING) var/static/list/tumor_reliant_organ_slots = list(ORGAN_SLOT_LIVER, ORGAN_SLOT_STOMACH) for(var/organ_slot in tumor_reliant_organ_slots) - var/obj/item/organ/affected_organ = hemophage.getorganslot(organ_slot) + var/obj/item/organ/affected_organ = hemophage.get_organ_slot(organ_slot) if(!affected_organ || !(affected_organ.organ_flags & ORGAN_TUMOR_CORRUPTED)) continue @@ -616,7 +616,7 @@ // We need to override it here because we changed their vampire heart with an Hemophage heart /mob/living/carbon/get_status_tab_items() . = ..() - var/obj/item/organ/internal/heart/hemophage/tumor_heart = getorgan(/obj/item/organ/internal/heart/hemophage) + var/obj/item/organ/internal/heart/hemophage/tumor_heart = get_organ_by_type(/obj/item/organ/internal/heart/hemophage) if(tumor_heart) . += "Current blood level: [blood_volume]/[BLOOD_VOLUME_MAXIMUM]" @@ -689,7 +689,7 @@ if(!linked_alert) return - var/obj/item/organ/internal/heart/hemophage/tumor_heart = owner.getorgan(/obj/item/organ/internal/heart/hemophage) + var/obj/item/organ/internal/heart/hemophage/tumor_heart = owner.get_organ_by_type(/obj/item/organ/internal/heart/hemophage) if(tumor_heart) var/old_layer = tumor_heart.layer var/old_plane = tumor_heart.plane diff --git a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/roundstartslime.dm b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/roundstartslime.dm index a510f8e6a65..2c08b214d13 100644 --- a/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/roundstartslime.dm +++ b/modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/roundstartslime.dm @@ -354,7 +354,7 @@ if(selected_sprite_accessory.organ_type) var/obj/item/organ/organ_path = selected_sprite_accessory.organ_type var/slot = initial(organ_path.slot) - var/obj/item/organ/got_organ = alterer.getorganslot(slot) + var/obj/item/organ/got_organ = alterer.get_organ_slot(slot) if(got_organ) got_organ.Remove(alterer) qdel(got_organ) @@ -364,7 +364,7 @@ if(selected_sprite_accessory.organ_type) var/obj/item/organ/organ_path = selected_sprite_accessory.organ_type var/slot = initial(organ_path.slot) - var/obj/item/organ/got_organ = alterer.getorganslot(slot) + var/obj/item/organ/got_organ = alterer.get_organ_slot(slot) if(got_organ) got_organ.Remove(alterer) qdel(got_organ) @@ -411,11 +411,11 @@ */ /datum/action/innate/alter_form/proc/alter_genitals(mob/living/carbon/human/alterer) var/list/genital_list - if(alterer.getorganslot(ORGAN_SLOT_BREASTS)) + if(alterer.get_organ_slot(ORGAN_SLOT_BREASTS)) genital_list += list("Breasts Lactation", "Breasts Size") - if(alterer.getorganslot(ORGAN_SLOT_PENIS)) + if(alterer.get_organ_slot(ORGAN_SLOT_PENIS)) genital_list += list("Penis Girth", "Penis Length", "Penis Sheath", "Penis Taur Mode") - if(alterer.getorganslot(ORGAN_SLOT_TESTICLES)) + if(alterer.get_organ_slot(ORGAN_SLOT_TESTICLES)) genital_list += list("Testicles Size") if(!length(genital_list)) alterer.balloon_alert(alterer, "no genitals!") @@ -430,13 +430,13 @@ return switch(dna_alteration) if("Breasts Lactation") - var/obj/item/organ/external/genital/breasts/melons = alterer.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/breasts/melons = alterer.get_organ_slot(ORGAN_SLOT_BREASTS) alterer.dna.features["breasts_lactation"] = !alterer.dna.features["breasts_lactation"] melons.lactates = alterer.dna.features["breasts_lactation"] alterer.balloon_alert(alterer, "[alterer.dna.features["breasts_lactation"] ? "lactating" : "not lactating"]") if("Breasts Size") - var/obj/item/organ/external/genital/breasts/melons = alterer.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/breasts/melons = alterer.get_organ_slot(ORGAN_SLOT_BREASTS) var/new_size = tgui_input_list( alterer, "Choose your character's breasts size:", @@ -449,7 +449,7 @@ melons.set_size(alterer.dna.features["breasts_size"]) if("Penis Girth") - var/obj/item/organ/external/genital/penis/sausage = alterer.getorganslot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/penis/sausage = alterer.get_organ_slot(ORGAN_SLOT_PENIS) var/max_girth = PENIS_MAX_GIRTH if(alterer.dna.features["penis_size"] >= max_girth) max_girth = alterer.dna.features["penis_size"] @@ -465,7 +465,7 @@ sausage.girth = alterer.dna.features["penis_girth"] if("Penis Length") - var/obj/item/organ/external/genital/penis/wang = alterer.getorganslot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/penis/wang = alterer.get_organ_slot(ORGAN_SLOT_PENIS) var/new_length = tgui_input_number( alterer, "Choose your penis length:\n([PENIS_MIN_LENGTH]-[PENIS_MAX_LENGTH] inches)", @@ -482,7 +482,7 @@ wang.set_size(alterer.dna.features["penis_size"]) if("Penis Sheath") - var/obj/item/organ/external/genital/penis/schlong = alterer.getorganslot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/penis/schlong = alterer.get_organ_slot(ORGAN_SLOT_PENIS) var/new_sheath = tgui_input_list( alterer, "Choose your penis sheath", @@ -498,7 +498,7 @@ alterer.balloon_alert(alterer, "[alterer.dna.features["penis_taur_mode"] ? "using taur penis" : "not using taur penis"]") if("Testicles Size") - var/obj/item/organ/external/genital/testicles/avocados = alterer.getorganslot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/testicles/avocados = alterer.get_organ_slot(ORGAN_SLOT_TESTICLES) var/new_size = tgui_input_list( alterer, "Choose your character's testicles size:", diff --git a/modular_skyrat/modules/customization/modules/surgery/organs/nif.dm b/modular_skyrat/modules/customization/modules/surgery/organs/nif.dm index ea9e3fedc97..fde74cc4b68 100644 --- a/modular_skyrat/modules/customization/modules/surgery/organs/nif.dm +++ b/modular_skyrat/modules/customization/modules/surgery/organs/nif.dm @@ -17,7 +17,7 @@ /datum/surgery/repair_nif/can_start(mob/user, mob/living/patient) var/mob/living/carbon/human/nif_patient = patient - var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = nif_patient.getorgan(/obj/item/organ/internal/cyberimp/brain/nif) + var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = nif_patient.get_organ_by_type(/obj/item/organ/internal/cyberimp/brain/nif) if(!nif_patient || !installed_nif) return FALSE @@ -47,7 +47,7 @@ ) var/mob/living/carbon/human/nif_patient = target - var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = nif_patient.getorgan(/obj/item/organ/internal/cyberimp/brain/nif) + var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = nif_patient.get_organ_by_type(/obj/item/organ/internal/cyberimp/brain/nif) installed_nif.durability = installed_nif.max_durability @@ -56,7 +56,7 @@ return ..() /datum/surgery_step/repair_nif/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.getorganslot(ORGAN_SLOT_BRAIN)) + if(target.get_organ_slot(ORGAN_SLOT_BRAIN)) display_results(user, target, span_warning("You screw up, causing [target] brain damage!"), span_warning("[user] screws up, while trying to repair [target]'s NIF!"), "[user] fails to complete the repair on [target]'s NIF.") diff --git a/modular_skyrat/modules/emote_panel/code/emote_panel.dm b/modular_skyrat/modules/emote_panel/code/emote_panel.dm index b1974b8e54b..f06a7ba2df8 100644 --- a/modular_skyrat/modules/emote_panel/code/emote_panel.dm +++ b/modular_skyrat/modules/emote_panel/code/emote_panel.dm @@ -234,11 +234,11 @@ if(current_mob.dna.species.type in allowed_species_synth) available_emotes += synth_emotes // Checking if can wag tail - var/obj/item/organ/external/tail/tail = current_mob.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL) + var/obj/item/organ/external/tail/tail = current_mob.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) if(!(tail?.wag_flags & WAG_ABLE)) available_emotes -= /mob/living/carbon/human/proc/emote_wag // Checking if has wings - if(!current_mob.getorganslot(ORGAN_SLOT_EXTERNAL_WINGS)) + if(!current_mob.get_organ_slot(ORGAN_SLOT_EXTERNAL_WINGS)) available_emotes -= /mob/living/carbon/human/proc/emote_wing if(isalien(src)) available_emotes += alien_emotes diff --git a/modular_skyrat/modules/emotes/code/additionalemotes/turf_emote.dm b/modular_skyrat/modules/emotes/code/additionalemotes/turf_emote.dm index 4d776678811..b2912d4bb70 100644 --- a/modular_skyrat/modules/emotes/code/additionalemotes/turf_emote.dm +++ b/modular_skyrat/modules/emotes/code/additionalemotes/turf_emote.dm @@ -52,11 +52,11 @@ user.allowed_turfs += "holoseat" //wings - if((istype(user.getorganslot(ORGAN_SLOT_WINGS), /obj/item/organ/external/wings/moth)) || HAS_TRAIT(user, TRAIT_SPARKLE_ASPECT)) + if((istype(user.get_organ_slot(ORGAN_SLOT_WINGS), /obj/item/organ/external/wings/moth)) || HAS_TRAIT(user, TRAIT_SPARKLE_ASPECT)) user.allowed_turfs += "dust" //moth's dust ✨ //body parts - if(istype(user.getorganslot(ORGAN_SLOT_EXTERNAL_TAIL), /obj/item/organ/external/tail)) + if(istype(user.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL), /obj/item/organ/external/tail)) var/name = human_user.dna.species.mutant_bodyparts["tail"][MUTANT_INDEX_NAME] var/datum/sprite_accessory/tails/tail = GLOB.sprite_accessories["tail"][name] if(tail.fluffy) diff --git a/modular_skyrat/modules/exp_corps/code/clothing.dm b/modular_skyrat/modules/exp_corps/code/clothing.dm index 52ed35524bb..64d5307b753 100644 --- a/modular_skyrat/modules/exp_corps/code/clothing.dm +++ b/modular_skyrat/modules/exp_corps/code/clothing.dm @@ -227,7 +227,7 @@ /obj/item/clothing/head/helmet/expeditionary_corps/proc/enable_nv(mob/user) if(current_user) - var/obj/item/organ/internal/eyes/my_eyes = current_user.getorgan(/obj/item/organ/internal/eyes) + var/obj/item/organ/internal/eyes/my_eyes = current_user.get_organ_by_type(/obj/item/organ/internal/eyes) if(my_eyes) my_eyes.color_cutoffs = list(10, 30, 10) my_eyes.flash_protect = FLASH_PROTECTION_SENSITIVE @@ -235,7 +235,7 @@ /obj/item/clothing/head/helmet/expeditionary_corps/proc/disable_nv() if(current_user) - var/obj/item/organ/internal/eyes/my_eyes = current_user.getorgan(/obj/item/organ/internal/eyes) + var/obj/item/organ/internal/eyes/my_eyes = current_user.get_organ_by_type(/obj/item/organ/internal/eyes) if(my_eyes) my_eyes.color_cutoffs = initial(my_eyes.color_cutoffs) my_eyes.flash_protect = initial(my_eyes.flash_protect) diff --git a/modular_skyrat/modules/interaction_menu/code/interaction_datum.dm b/modular_skyrat/modules/interaction_menu/code/interaction_datum.dm index 0991f09b9db..6f83d6b41b8 100644 --- a/modular_skyrat/modules/interaction_menu/code/interaction_datum.dm +++ b/modular_skyrat/modules/interaction_menu/code/interaction_datum.dm @@ -57,7 +57,7 @@ GLOBAL_LIST_EMPTY_TYPED(interaction_instances, /datum/interaction) if(user_required_parts.len) for(var/thing in user_required_parts) - var/obj/item/organ/external/genital/required_part = user.getorganslot(thing) + var/obj/item/organ/external/genital/required_part = user.get_organ_slot(thing) if(isnull(required_part)) return FALSE if(!required_part.is_exposed()) @@ -65,7 +65,7 @@ GLOBAL_LIST_EMPTY_TYPED(interaction_instances, /datum/interaction) if(target_required_parts.len) for(var/thing in target_required_parts) - var/obj/item/organ/external/genital/required_part = target.getorganslot(thing) + var/obj/item/organ/external/genital/required_part = target.get_organ_slot(thing) if(isnull(required_part)) return FALSE if(!required_part.is_exposed()) diff --git a/modular_skyrat/modules/medical/code/wounds/slash.dm b/modular_skyrat/modules/medical/code/wounds/slash.dm index 26e07828e8a..14a79b5ca14 100644 --- a/modular_skyrat/modules/medical/code/wounds/slash.dm +++ b/modular_skyrat/modules/medical/code/wounds/slash.dm @@ -175,7 +175,7 @@ if(user.is_mouth_covered()) to_chat(user, span_warning("Your mouth is covered, you can't lick [victim]'s wounds!")) return - if(!user.getorganslot(ORGAN_SLOT_TONGUE)) + if(!user.get_organ_slot(ORGAN_SLOT_TONGUE)) to_chat(user, span_warning("You can't lick wounds without a tongue!")) // f in chat return diff --git a/modular_skyrat/modules/modular_implants/code/misc_devices.dm b/modular_skyrat/modules/modular_implants/code/misc_devices.dm index 6af7bc97f77..318d96ece5d 100644 --- a/modular_skyrat/modules/modular_implants/code/misc_devices.dm +++ b/modular_skyrat/modules/modular_implants/code/misc_devices.dm @@ -11,7 +11,7 @@ /obj/item/nifsoft_remover/attack(mob/living/carbon/human/target_mob, mob/living/user) . = ..() - var/obj/item/organ/internal/cyberimp/brain/nif/target_nif = target_mob.getorgan(/obj/item/organ/internal/cyberimp/brain/nif) + var/obj/item/organ/internal/cyberimp/brain/nif/target_nif = target_mob.get_organ_by_type(/obj/item/organ/internal/cyberimp/brain/nif) if(!target_nif || !length(target_nif.loaded_nifsofts)) balloon_alert(user, "[target_mob] has no NIFSofts") @@ -75,7 +75,7 @@ /obj/item/nif_repair_kit/attack(mob/living/carbon/human/mob_to_repair, mob/living/user) . = ..() - var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = mob_to_repair.getorgan(/obj/item/organ/internal/cyberimp/brain/nif) + var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = mob_to_repair.get_organ_by_type(/obj/item/organ/internal/cyberimp/brain/nif) if(!installed_nif) balloon_alert(user, "[mob_to_repair] lacks a NIF") diff --git a/modular_skyrat/modules/modular_implants/code/nif_persistence.dm b/modular_skyrat/modules/modular_implants/code/nif_persistence.dm index ddbb47fd58a..79517cd9fbc 100644 --- a/modular_skyrat/modules/modular_implants/code/nif_persistence.dm +++ b/modular_skyrat/modules/modular_implants/code/nif_persistence.dm @@ -16,7 +16,7 @@ /// Saves the NIF data for a individual user. /mob/living/carbon/human/proc/save_nif_data(datum/modular_persistence/persistence) - var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = getorgan(/obj/item/organ/internal/cyberimp/brain/nif) + var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = get_organ_by_type(/obj/item/organ/internal/cyberimp/brain/nif) if(HAS_TRAIT(src, GHOSTROLE_TRAIT)) //Nothing is lost from playing a ghost role return FALSE @@ -74,7 +74,7 @@ /datum/nifsoft/proc/load_persistence_data() if(!linked_mob || !persistence) return FALSE - var/obj/item/organ/internal/brain/linked_brain = linked_mob.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/linked_brain = linked_mob.get_organ_slot(ORGAN_SLOT_BRAIN) if(!linked_brain || !linked_brain.modular_persistence) return FALSE diff --git a/modular_skyrat/modules/modular_implants/code/nifs.dm b/modular_skyrat/modules/modular_implants/code/nifs.dm index a5c53a15889..3e5e60b7faf 100644 --- a/modular_skyrat/modules/modular_implants/code/nifs.dm +++ b/modular_skyrat/modules/modular_implants/code/nifs.dm @@ -448,7 +448,7 @@ ///Checks to see if a human with a NIF has the nifsoft_to_find type of NIFSoft installed? /mob/living/carbon/human/proc/find_nifsoft(datum/nifsoft/nifsoft_to_find) - var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = getorgan(/obj/item/organ/internal/cyberimp/brain/nif) + var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = get_organ_by_type(/obj/item/organ/internal/cyberimp/brain/nif) var/list/nifsoft_list = installed_nif?.loaded_nifsofts if(!nifsoft_list) diff --git a/modular_skyrat/modules/modular_implants/code/nifsoft_catalog.dm b/modular_skyrat/modules/modular_implants/code/nifsoft_catalog.dm index a5bf8eaacb6..e3f85fa4bfc 100644 --- a/modular_skyrat/modules/modular_implants/code/nifsoft_catalog.dm +++ b/modular_skyrat/modules/modular_implants/code/nifsoft_catalog.dm @@ -41,7 +41,7 @@ GLOBAL_LIST_INIT(purchasable_nifsofts, list( var/mob/living/carbon/human/nif_user = user if(nif_user) - var/obj/item/organ/internal/cyberimp/brain/nif/user_nif = nif_user.getorgan(/obj/item/organ/internal/cyberimp/brain/nif) + var/obj/item/organ/internal/cyberimp/brain/nif/user_nif = nif_user.get_organ_by_type(/obj/item/organ/internal/cyberimp/brain/nif) target_nif = user_nif || null data["target_nif"] = target_nif diff --git a/modular_skyrat/modules/modular_implants/code/nifsofts.dm b/modular_skyrat/modules/modular_implants/code/nifsofts.dm index f5e154a8a47..7a6bb08fac9 100644 --- a/modular_skyrat/modules/modular_implants/code/nifsofts.dm +++ b/modular_skyrat/modules/modular_implants/code/nifsofts.dm @@ -155,7 +155,7 @@ /// Attempts to install the NIFSoft on the disk to the target /obj/item/disk/nifsoft_uploader/proc/attempt_software_install(mob/living/carbon/human/target) - var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = target.getorgan(/obj/item/organ/internal/cyberimp/brain/nif) + var/obj/item/organ/internal/cyberimp/brain/nif/installed_nif = target.get_organ_by_type(/obj/item/organ/internal/cyberimp/brain/nif) if(!ishuman(target) || !installed_nif) return FALSE diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/climax.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/climax.dm index 0d6bdcc4c0f..6087a9a4004 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/climax.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/climax.dm @@ -48,8 +48,8 @@ var/self_their = p_their() if(climax_choice == CLIMAX_PENIS || climax_choice == CLIMAX_BOTH) - var/obj/item/organ/external/genital/penis/penis = getorganslot(ORGAN_SLOT_PENIS) - if(!getorganslot(ORGAN_SLOT_TESTICLES)) //If we have no god damn balls, we can't cum anywhere... GET BALLS! + var/obj/item/organ/external/genital/penis/penis = get_organ_slot(ORGAN_SLOT_PENIS) + if(!get_organ_slot(ORGAN_SLOT_TESTICLES)) //If we have no god damn balls, we can't cum anywhere... GET BALLS! visible_message(span_userlove("[src] orgasms, but nothing comes out of [self_their] penis!"), \ span_userlove("You orgasm, it feels great, but nothing comes out of your penis!")) @@ -103,7 +103,7 @@ if(target_human.has_anus(REQUIRE_GENITAL_EXPOSED)) target_buttons += "asshole" if(target_human.has_penis(REQUIRE_GENITAL_EXPOSED)) - var/obj/item/organ/external/genital/penis/other_penis = target_human.getorganslot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/penis/other_penis = target_human.get_organ_slot(ORGAN_SLOT_PENIS) if(other_penis.sheath != "None") target_buttons += "sheath" target_buttons += "On [target_human_them]" @@ -123,7 +123,7 @@ span_userlove("You hilt your cock into [target_human]'s [climax_into_choice], shooting cum into [target_human_them]!")) to_chat(target_human, span_userlove("Your [climax_into_choice] fills with warm cum as [src] shoots [self_their] load into it.")) - var/obj/item/organ/external/genital/testicles/testicles = getorganslot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/testicles/testicles = get_organ_slot(ORGAN_SLOT_TESTICLES) testicles.reagents.remove_all(testicles.reagents.total_volume * 0.6) if(create_cum_decal) add_cum_splatter_floor(get_turf(src)) @@ -137,7 +137,7 @@ return TRUE if(climax_choice == CLIMAX_VAGINA || climax_choice == CLIMAX_BOTH) - var/obj/item/organ/external/genital/vagina/vagina = getorganslot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/vagina/vagina = get_organ_slot(ORGAN_SLOT_VAGINA) if(is_bottomless() || vagina.visibility_preference == GENITAL_ALWAYS_SHOW) visible_message(span_userlove("[src] twitches and moans as [p_they()] climax from their vagina!"), span_userlove("You twitch and moan as you climax from your vagina!")) add_cum_splatter_floor(get_turf(src), female = TRUE) diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/aroused.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/aroused.dm index f500f87857a..e2d094a229d 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/aroused.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/aroused.dm @@ -25,7 +25,7 @@ var/temp_pleasure = BASE_PAIN_AND_PLEASURE_ADJUSTMENT var/temp_pain = BASE_PAIN_AND_PLEASURE_ADJUSTMENT - var/obj/item/organ/external/genital/testicles/balls = affected_mob.getorganslot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/testicles/balls = affected_mob.get_organ_slot(ORGAN_SLOT_TESTICLES) if(balls && balls.internal_fluid_full()) temp_arousal += BLUEBALL_AROUSAL_MODIFIER diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/climax.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/climax.dm index 6dcf4e37e14..84ea0e0ac1d 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/climax.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/climax.dm @@ -48,10 +48,10 @@ alert_type = null /datum/status_effect/climax_cooldown/tick() - var/obj/item/organ/external/genital/vagina/vagina = owner.getorganslot(ORGAN_SLOT_VAGINA) - var/obj/item/organ/external/genital/testicles/balls = owner.getorganslot(ORGAN_SLOT_TESTICLES) - var/obj/item/organ/external/genital/testicles/penis = owner.getorganslot(ORGAN_SLOT_PENIS) - var/obj/item/organ/external/genital/testicles/anus = owner.getorganslot(ORGAN_SLOT_ANUS) + var/obj/item/organ/external/genital/vagina/vagina = owner.get_organ_slot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/testicles/balls = owner.get_organ_slot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/testicles/penis = owner.get_organ_slot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/testicles/anus = owner.get_organ_slot(ORGAN_SLOT_ANUS) if(penis) penis.aroused = AROUSAL_NONE diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/fluid_generation.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/fluid_generation.dm index f45fe00a6d8..7bdc04c9448 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/fluid_generation.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_arousal/status_effects/fluid_generation.dm @@ -20,9 +20,9 @@ return var/mob/living/carbon/human/affected_mob = owner - var/obj/item/organ/external/genital/testicles/balls = owner.getorganslot(ORGAN_SLOT_TESTICLES) - var/obj/item/organ/external/genital/breasts/breasts = owner.getorganslot(ORGAN_SLOT_BREASTS) - var/obj/item/organ/external/genital/vagina/vagina = owner.getorganslot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/testicles/balls = owner.get_organ_slot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/breasts/breasts = owner.get_organ_slot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/vagina/vagina = owner.get_organ_slot(ORGAN_SLOT_VAGINA) if(balls) if(affected_mob.arousal >= AROUSAL_LOW) diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/_aphrodisiac.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/_aphrodisiac.dm index 0ffa87c0cfc..f5eb135346a 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/_aphrodisiac.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/_aphrodisiac.dm @@ -25,7 +25,7 @@ /// % chance for damage to be applied when the organ is too large and the mob is clothed var/damage_chance = 20 - + /// % chance for testicle growth to occur var/balls_increase_chance = 10 @@ -49,11 +49,11 @@ var/penis_girth_reduction_step = 1 /// How much to reduce the size of the balls each time it's run var/testicles_size_reduction_step = 1 - + /// Largest size the chem can make a mob's balls var/balls_max_size = TESTICLES_MAX_SIZE - /// The size at which the testicles are considered 'big' - var/balls_big_size = TESTICLES_MAX_SIZE - 1 + /// The size at which the testicles are considered 'big' + var/balls_big_size = TESTICLES_MAX_SIZE - 1 /// Smallest size the chem can make a mob's balls var/balls_min_size = TESTICLES_MIN_SIZE /// Make the balls enormous only when the penis reaches a certain size @@ -74,7 +74,7 @@ #define GENITAL_BREASTS 3 #define GENITAL_VAGINA 4 #define GENITAL_WOMB 5 - + // damage to take from being too big #define TAKE_DAMAGE_THRESHOLD_PENIS penis_max_length - 2 #define TAKE_DAMAGE_THRESHOLD_BREASTS max_breast_size - 2 @@ -116,7 +116,7 @@ /datum/reagent/drug/aphrodisiac/overdose_process(mob/living/carbon/human/exposed_mob) . = ..() if(overdose_pref_datum && exposed_mob.client?.prefs.read_preference(overdose_pref_datum) && ishuman(exposed_mob)) - overdose_effects(exposed_mob) + overdose_effects(exposed_mob) /** * Handle changing of gender @@ -125,12 +125,12 @@ * new_gender - the gender to change to * gender_fluid - whether the user has consumed both succubus milk and incubus draft simultaneously */ -/datum/reagent/drug/aphrodisiac/proc/change_gender(mob/living/carbon/human/exposed_mob, new_gender = MALE, gender_fluid = FALSE) +/datum/reagent/drug/aphrodisiac/proc/change_gender(mob/living/carbon/human/exposed_mob, new_gender = MALE, gender_fluid = FALSE) // Check if prefs allow this if(!exposed_mob.client?.prefs?.read_preference(/datum/preference/toggle/erp/gender_change)) return - + if(gender_fluid) if(exposed_mob.gender != PLURAL) exposed_mob.set_gender(PLURAL) @@ -138,7 +138,7 @@ update_appearance(exposed_mob, mutations_overlay = TRUE) else if(exposed_mob.gender != new_gender) - exposed_mob.set_gender(new_gender) + exposed_mob.set_gender(new_gender) exposed_mob.physique = exposed_mob.gender update_appearance(exposed_mob, mutations_overlay = TRUE) @@ -150,18 +150,18 @@ * suppress_chat - whether or not to display a message in chat * mob_penis the penis to cause to grow */ -/datum/reagent/drug/aphrodisiac/proc/grow_penis(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/penis/mob_penis = exposed_mob?.getorganslot(ORGAN_SLOT_PENIS)) - +/datum/reagent/drug/aphrodisiac/proc/grow_penis(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/penis/mob_penis = exposed_mob?.get_organ_slot(ORGAN_SLOT_PENIS)) + // Check if we actually have a penis to grow if(!mob_penis) return - + // Check if prefs allow this if(!exposed_mob.client?.prefs?.read_preference(/datum/preference/toggle/erp/penis_enlargement)) return - + enlargement_amount += enlarger_increase_step - + if(enlargement_amount >= enlargement_threshold) if(mob_penis?.genital_size >= penis_max_length) return @@ -173,7 +173,7 @@ update_appearance(exposed_mob, mob_penis) enlargement_amount = 0 - + growth_to_chat(exposed_mob, mob_penis, suppress_chat) // Damage from being too big for your clothes @@ -189,9 +189,9 @@ * exposed_mob - the mob being affected by the reagent * suppress_chat - whether or not to display a message in chat * mob_testicles - the testicles to cause to grow -*/ -/datum/reagent/drug/aphrodisiac/proc/grow_balls(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/testicles/mob_testicles = exposed_mob?.getorganslot(ORGAN_SLOT_TESTICLES)) - +*/ +/datum/reagent/drug/aphrodisiac/proc/grow_balls(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/testicles/mob_testicles = exposed_mob?.get_organ_slot(ORGAN_SLOT_TESTICLES)) + //no balls if(!mob_testicles) return @@ -200,8 +200,8 @@ if(!exposed_mob.client?.prefs?.read_preference(/datum/preference/toggle/erp/penis_enlargement)) return - var/obj/item/organ/external/genital/penis/mob_penis = exposed_mob.getorganslot(ORGAN_SLOT_PENIS) - + var/obj/item/organ/external/genital/penis/mob_penis = exposed_mob.get_organ_slot(ORGAN_SLOT_PENIS) + if(mob_testicles.genital_size < balls_big_size && prob(balls_increase_chance)) // Add some randomness so growth happens more gradually in most cases mob_testicles.genital_size = min(mob_testicles.genital_size + testicles_size_increase_step, balls_max_size) update_appearance(exposed_mob, mob_testicles) @@ -219,16 +219,16 @@ * suppress_chat - whether or not to display a message in chat * mob_breasts the breasts to cause to grow */ -/datum/reagent/drug/aphrodisiac/proc/grow_breasts(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob?.getorganslot(ORGAN_SLOT_BREASTS)) - +/datum/reagent/drug/aphrodisiac/proc/grow_breasts(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob?.get_organ_slot(ORGAN_SLOT_BREASTS)) + if(!mob_breasts) return - + if(!exposed_mob.client?.prefs.read_preference(/datum/preference/toggle/erp/breast_enlargement)) return - + enlargement_amount += enlarger_increase_step - + if(enlargement_amount >= enlargement_threshold) if(mob_breasts?.genital_size >= max_breast_size) return @@ -236,9 +236,9 @@ mob_breasts.genital_size = min(mob_breasts.genital_size + breast_size_increase_step, max_breast_size) update_appearance(exposed_mob, mob_breasts) enlargement_amount = 0 - + growth_to_chat(exposed_mob, mob_breasts, suppress_chat) - + // Damage from being too big for your clothes if((mob_breasts?.genital_size >= (TAKE_DAMAGE_THRESHOLD_BREASTS)) && (exposed_mob.w_uniform || exposed_mob.wear_suit)) if(prob(damage_chance)) @@ -254,7 +254,7 @@ * suppress_chat - whether or not to display a message in chat * genitals_to_shrink - a list of the genitals to be shrunk */ -/datum/reagent/drug/aphrodisiac/proc/shrink_genitals(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, list/genitals_to_shrink) +/datum/reagent/drug/aphrodisiac/proc/shrink_genitals(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, list/genitals_to_shrink) for(var/mob_genital in genitals_to_shrink) switch(mob_genital) if(GENITAL_PENIS) @@ -275,25 +275,25 @@ * suppress_chat - whether or not to display a message in chat * mob_penis the penis to shrink */ -/datum/reagent/drug/aphrodisiac/proc/shrink_penis(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/penis/mob_penis = exposed_mob?.getorganslot(ORGAN_SLOT_PENIS)) +/datum/reagent/drug/aphrodisiac/proc/shrink_penis(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/penis/mob_penis = exposed_mob?.get_organ_slot(ORGAN_SLOT_PENIS)) // Is there a penis to shrink? if(!mob_penis) return - + // Make sure prefs allow this if(!exposed_mob.client?.prefs.read_preference(/datum/preference/toggle/erp/penis_shrinkage)) return - + // Handle completely shrinking away, if prefs allow if(mob_penis.genital_size == penis_min_length) remove_genital(exposed_mob, mob_penis, suppress_chat) - else + else var/needs_updating = FALSE if(mob_penis.genital_size > penis_min_length) mob_penis.genital_size = max(mob_penis.genital_size - penis_size_reduction_step, penis_min_length) needs_updating = TRUE - + if(mob_penis.girth > penis_minimum_girth) mob_penis.girth = max(mob_penis.girth - penis_girth_reduction_step, penis_minimum_girth) needs_updating = TRUE @@ -308,16 +308,16 @@ * suppress_chat - whether or not to display a message in chat * mob_penis, mob_testicles - the mob's penis and testicles * message - the message to send to chat -*/ -/datum/reagent/drug/aphrodisiac/proc/shrink_testicles(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/penis/mob_penis = exposed_mob?.getorganslot(ORGAN_SLOT_PENIS), obj/item/organ/external/genital/testicles/mob_testicles = exposed_mob?.getorganslot(ORGAN_SLOT_TESTICLES)) - +*/ +/datum/reagent/drug/aphrodisiac/proc/shrink_testicles(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/penis/mob_penis = exposed_mob?.get_organ_slot(ORGAN_SLOT_PENIS), obj/item/organ/external/genital/testicles/mob_testicles = exposed_mob?.get_organ_slot(ORGAN_SLOT_TESTICLES)) + if(!mob_testicles) return - + // Make sure prefs allow this if(!exposed_mob.client?.prefs.read_preference(/datum/preference/toggle/erp/penis_shrinkage)) return - + if(mob_testicles.genital_size > balls_min_size) mob_testicles.genital_size = max(mob_testicles.genital_size - testicles_size_reduction_step, balls_min_size) update_appearance(exposed_mob, mob_testicles) @@ -334,9 +334,9 @@ * mob_breasts - the breasts to be shrunk * message - the message to send to chat */ -/datum/reagent/drug/aphrodisiac/proc/shrink_breasts(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob?.getorganslot(ORGAN_SLOT_BREASTS)) +/datum/reagent/drug/aphrodisiac/proc/shrink_breasts(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob?.get_organ_slot(ORGAN_SLOT_BREASTS)) - if(!mob_breasts) + if(!mob_breasts) return if(!exposed_mob.client?.prefs?.read_preference(/datum/preference/toggle/erp/breast_shrinkage)) @@ -345,7 +345,7 @@ if(mob_breasts.genital_size > breast_minimum_size) mob_breasts.genital_size = max(mob_breasts.genital_size - breast_size_reduction_step, breast_minimum_size) update_appearance(exposed_mob, mob_breasts) - + else if(mob_breasts.genital_size == breast_minimum_size) // Handle completely shrinking away, if prefs allow var/message = "Your breasts have completely tightened into firm, flat pecs." remove_genital(exposed_mob, mob_breasts, suppress_chat, message) @@ -358,10 +358,10 @@ * mob_vagina - the vagina to shrink * message - the message to send to chat */ -/datum/reagent/drug/aphrodisiac/proc/shrink_vagina(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/vagina/mob_vagina = exposed_mob?.getorganslot(ORGAN_SLOT_VAGINA)) - var/message = "You can the feel the muscles in your groin begin to tighten as your vagina seals itself completely shut." +/datum/reagent/drug/aphrodisiac/proc/shrink_vagina(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/vagina/mob_vagina = exposed_mob?.get_organ_slot(ORGAN_SLOT_VAGINA)) + var/message = "You can the feel the muscles in your groin begin to tighten as your vagina seals itself completely shut." remove_genital(exposed_mob, mob_vagina, suppress_chat, message) - + /* * Handle womb shrinkage * @@ -369,7 +369,7 @@ * suppress_chat - whether or not to display a message in chat * mob_womb - the womb to shrink */ -/datum/reagent/drug/aphrodisiac/proc/shrink_womb(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/womb/mob_womb = exposed_mob?.getorganslot(ORGAN_SLOT_WOMB)) +/datum/reagent/drug/aphrodisiac/proc/shrink_womb(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/womb/mob_womb = exposed_mob?.get_organ_slot(ORGAN_SLOT_WOMB)) remove_genital(exposed_mob, mob_womb, suppress_chat) /** ---- Genital Removal ---- @@ -381,24 +381,24 @@ * genitals_to_remove - the list of genitals to be removed * message - the message to send to chat */ -/datum/reagent/drug/aphrodisiac/proc/remove_genitals(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, list/genitals_to_remove, message) +/datum/reagent/drug/aphrodisiac/proc/remove_genitals(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, list/genitals_to_remove, message) for(var/obj/item/organ/external/genital/mob_genital in genitals_to_remove) remove_genital(exposed_mob, mob_genital, suppress_chat) - + if(!suppress_chat && message) to_chat(exposed_mob, span_purple(message)) -/datum/reagent/drug/aphrodisiac/proc/remove_genital(mob/living/carbon/human/exposed_mob, obj/item/organ/external/genital/mob_genital, suppress_chat = FALSE, message) +/datum/reagent/drug/aphrodisiac/proc/remove_genital(mob/living/carbon/human/exposed_mob, obj/item/organ/external/genital/mob_genital, suppress_chat = FALSE, message) if(!mob_genital) return - + if(!exposed_mob.client?.prefs?.read_preference(/datum/preference/toggle/erp/genitalia_removal)) return - + mob_genital.Remove(exposed_mob) update_appearance(exposed_mob) - + if(!suppress_chat && message) to_chat(exposed_mob, span_purple(message)) @@ -410,7 +410,7 @@ * suppress_chat - whether or not to display a message in chat * genitals_to_create - a list of the genitals to create */ -/datum/reagent/drug/aphrodisiac/proc/create_genitals(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, list/genitals_to_create) +/datum/reagent/drug/aphrodisiac/proc/create_genitals(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, list/genitals_to_create) for(var/mob_genital in genitals_to_create) switch(mob_genital) if(GENITAL_PENIS) @@ -431,16 +431,16 @@ * suppress_chat - whether or not to display a message in chat * mob_penis the mob's penis */ -/datum/reagent/drug/aphrodisiac/proc/create_penis(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/penis/mob_penis = exposed_mob?.getorganslot(ORGAN_SLOT_PENIS)) - +/datum/reagent/drug/aphrodisiac/proc/create_penis(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/penis/mob_penis = exposed_mob?.get_organ_slot(ORGAN_SLOT_PENIS)) + // Create the new penis if we don't already have one and if prefs allow if(mob_penis) return - -// Check if prefs allow it + +// Check if prefs allow it if(!exposed_mob.client?.prefs.read_preference(/datum/preference/toggle/erp/new_genitalia_growth)) return - + // If the user has not defined their own prefs for their penis type, try to assign a default based on their species, defaulting to human var/list/data = species_to_penis[exposed_mob.dna.species.id] if(!data) @@ -466,7 +466,7 @@ new_penis.genital_size = 4 new_penis.girth = 3 update_appearance(exposed_mob, new_penis) - + if(!suppress_chat) to_chat(exposed_mob, span_purple("Your crotch feels warm as something suddenly sprouts between your legs.")) @@ -477,21 +477,21 @@ * suppress_chat - whether or not to display a message in chat * mob_testicles - the mob's testicles */ -/datum/reagent/drug/aphrodisiac/proc/create_testicles(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/testicles/mob_balls = exposed_mob.getorganslot(ORGAN_SLOT_TESTICLES)) - +/datum/reagent/drug/aphrodisiac/proc/create_testicles(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/testicles/mob_balls = exposed_mob.get_organ_slot(ORGAN_SLOT_TESTICLES)) + // Create the new testicles if we don't already have them and if prefs allow if(mob_balls) return - + if(!exposed_mob.client?.prefs.read_preference(/datum/preference/toggle/erp/new_genitalia_growth)) return - + var/obj/item/organ/external/genital/testicles/new_balls = new new_balls.build_from_dna(exposed_mob.dna, ORGAN_SLOT_TESTICLES) new_balls.Insert(exposed_mob, 0, FALSE) new_balls.genital_size = 0 update_appearance(genital = new_balls) - + return new_balls /** @@ -501,19 +501,19 @@ * suppress_chat - whether or not to display a message in chat * mob_breasts - the mob's breasts */ -/datum/reagent/drug/aphrodisiac/proc/create_breasts(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob?.getorganslot(ORGAN_SLOT_BREASTS)) +/datum/reagent/drug/aphrodisiac/proc/create_breasts(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob?.get_organ_slot(ORGAN_SLOT_BREASTS)) // Make sure we don't already have them if(mob_breasts) return - + if(!exposed_mob.client?.prefs.read_preference(/datum/preference/toggle/erp/new_genitalia_growth)) return - + // If the user has not defined their own prefs for their breast type, default to two breasts if (exposed_mob.dna.mutant_bodyparts[ORGAN_SLOT_BREASTS][MUTANT_INDEX_NAME] == "None") exposed_mob.dna.mutant_bodyparts[ORGAN_SLOT_BREASTS][MUTANT_INDEX_NAME] = "Pair" - + // Create the new breasts var/obj/item/organ/external/genital/breasts/new_breasts = new new_breasts.build_from_dna(exposed_mob.dna, ORGAN_SLOT_BREASTS) @@ -521,7 +521,7 @@ new_breasts.genital_size = 2 update_appearance(exposed_mob, new_breasts) enlargement_amount = 0 - + if(new_breasts.visibility_preference == GENITAL_ALWAYS_SHOW || exposed_mob.is_topless()) if(!suppress_chat) // So we don't spam chat exposed_mob.visible_message(span_notice("[exposed_mob]'s bust suddenly expands!")) @@ -530,7 +530,7 @@ if(!suppress_chat) exposed_mob.visible_message(span_notice("The area around [exposed_mob]'s chest suddenly bounces a bit.")) to_chat(exposed_mob, span_purple("Your chest feels warm, tingling with sensitivity as it strains against your clothes.")) - + return new_breasts /** @@ -540,18 +540,18 @@ * suppress_chat - whether or not to display a message in chat * mob_vagina - the mob's vagina */ -/datum/reagent/drug/aphrodisiac/proc/create_vagina(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/vagina/mob_vagina = exposed_mob?.getorganslot(ORGAN_SLOT_VAGINA)) - +/datum/reagent/drug/aphrodisiac/proc/create_vagina(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/vagina/mob_vagina = exposed_mob?.get_organ_slot(ORGAN_SLOT_VAGINA)) + // Add new vagina if we don't already have one. Use dna prefs before assigning a default human one. if(mob_vagina) return - + if(!exposed_mob.client?.prefs.read_preference(/datum/preference/toggle/erp/new_genitalia_growth)) return - + if (exposed_mob.dna.mutant_bodyparts[ORGAN_SLOT_VAGINA][MUTANT_INDEX_NAME] == "None") exposed_mob.dna.mutant_bodyparts[ORGAN_SLOT_VAGINA][MUTANT_INDEX_NAME] = "Human" - + var/obj/item/organ/external/genital/vagina/new_vagina = new new_vagina.build_from_dna(exposed_mob.dna, ORGAN_SLOT_VAGINA) new_vagina.Insert(exposed_mob, 0, FALSE) @@ -566,15 +566,15 @@ * suppress_chat - whether or not to display a message in chat * mob_womb - the mob's womb */ -/datum/reagent/drug/aphrodisiac/proc/create_womb(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/womb/mob_womb = exposed_mob?.getorganslot(ORGAN_SLOT_WOMB)) - +/datum/reagent/drug/aphrodisiac/proc/create_womb(mob/living/carbon/human/exposed_mob, suppress_chat = FALSE, obj/item/organ/external/genital/womb/mob_womb = exposed_mob?.get_organ_slot(ORGAN_SLOT_WOMB)) + // Add a new womb if we don't already have one. Use dna prefs before assigning a default normal one. if(mob_womb) return - + if (exposed_mob.dna.mutant_bodyparts[ORGAN_SLOT_WOMB][MUTANT_INDEX_NAME] == "None") exposed_mob.dna.mutant_bodyparts[ORGAN_SLOT_WOMB][MUTANT_INDEX_NAME] = "Normal" - + var/obj/item/organ/external/genital/womb/new_womb = new new_womb.build_from_dna(exposed_mob.dna, ORGAN_SLOT_WOMB) new_womb.Insert(exposed_mob, 0, FALSE) @@ -586,19 +586,19 @@ * exposed_mob - the mob being affected by the reagent * genital - the genital that is causing the messages * suppress_chat - whether or not to display a message in chat -*/ -/datum/reagent/drug/aphrodisiac/proc/growth_to_chat(mob/living/carbon/human/exposed_mob, obj/item/organ/external/genital/genital, suppress_chat = FALSE) +*/ +/datum/reagent/drug/aphrodisiac/proc/growth_to_chat(mob/living/carbon/human/exposed_mob, obj/item/organ/external/genital/genital, suppress_chat = FALSE) /** * Called after growth/shrinkage to update mob sprites -*/ +*/ /datum/reagent/drug/aphrodisiac/proc/update_appearance(mob/living/carbon/human/exposed_mob, obj/item/organ/external/genital/genital, mutations_overlay = FALSE) if(genital) genital.update_sprite_suffix() - if(exposed_mob) + if(exposed_mob) exposed_mob.update_body() if(mutations_overlay) exposed_mob.update_mutations_overlay() - + #undef TAKE_DAMAGE_THRESHOLD_PENIS -#undef TAKE_DAMAGE_THRESHOLD_BREASTS +#undef TAKE_DAMAGE_THRESHOLD_BREASTS diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/camphor.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/camphor.dm index 73f4bb5f2e0..d5542ea5740 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/camphor.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/camphor.dm @@ -29,8 +29,8 @@ if(exposed_mob.client?.prefs.read_preference(/datum/preference/toggle/erp/gender_change) && exposed_mob.gender != exposed_mob.client?.prefs?.read_preference(/datum/preference/choiced/gender)) exposed_mob.set_gender(exposed_mob.client?.prefs?.read_preference(/datum/preference/choiced/gender)) - if(exposed_mob.getorganslot(ORGAN_SLOT_BREASTS)) - var/obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob.getorganslot(ORGAN_SLOT_BREASTS) + if(exposed_mob.get_organ_slot(ORGAN_SLOT_BREASTS)) + var/obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob.get_organ_slot(ORGAN_SLOT_BREASTS) var/original_breast_size = GLOB.breast_size_to_number[exposed_mob.client?.prefs.read_preference(/datum/preference/choiced/breasts_size)] if(original_breast_size) if(mob_breasts?.genital_size > original_breast_size) @@ -42,8 +42,8 @@ mob_breasts.update_sprite_suffix() modified_genitals = TRUE - if(exposed_mob.getorganslot(ORGAN_SLOT_PENIS)) - var/obj/item/organ/external/genital/penis/mob_penis = exposed_mob.getorganslot(ORGAN_SLOT_PENIS) + if(exposed_mob.get_organ_slot(ORGAN_SLOT_PENIS)) + var/obj/item/organ/external/genital/penis/mob_penis = exposed_mob.get_organ_slot(ORGAN_SLOT_PENIS) if(exposed_mob.client?.prefs?.read_preference(/datum/preference/numeric/penis_length)) var/original_penis_length = exposed_mob.client?.prefs.read_preference(/datum/preference/numeric/penis_length) var/original_penis_girth = exposed_mob.client?.prefs.read_preference(/datum/preference/numeric/penis_girth) @@ -65,8 +65,8 @@ mob_penis.update_sprite_suffix() modified_genitals = TRUE - if(exposed_mob.getorganslot(ORGAN_SLOT_TESTICLES)) - var/obj/item/organ/external/genital/testicles/mob_testicles = exposed_mob.getorganslot(ORGAN_SLOT_TESTICLES) + if(exposed_mob.get_organ_slot(ORGAN_SLOT_TESTICLES)) + var/obj/item/organ/external/genital/testicles/mob_testicles = exposed_mob.get_organ_slot(ORGAN_SLOT_TESTICLES) if(exposed_mob.client?.prefs?.read_preference(/datum/preference/numeric/balls_size)) var/original_ball_size = exposed_mob.client?.prefs.read_preference(/datum/preference/numeric/balls_size) if(mob_testicles?.genital_size > original_ball_size) diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/succubus_milk.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/succubus_milk.dm index 2c2564a7cfd..50dd2095f35 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/succubus_milk.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_chemistry/reagents/succubus_milk.dm @@ -83,26 +83,26 @@ // Attempt to grow breasts! grow_breasts(exposed_mob) -// Turns you into a female if character is male. Also adds breasts and female genitalia. +// Turns you into a female if character is male. Also adds breasts and female genitalia. /datum/reagent/drug/aphrodisiac/succubus_milk/overdose_effects(mob/living/carbon/human/exposed_mob) // Check if overdosing on succubus milk and incubus draft simultaneously, to prevent chat spam var/suppress_chat = FALSE - var/datum/reagent/drug/aphrodisiac/incubus_draft/incubus_draft = locate(/datum/reagent/drug/aphrodisiac/incubus_draft) in exposed_mob.reagents.reagent_list + var/datum/reagent/drug/aphrodisiac/incubus_draft/incubus_draft = locate(/datum/reagent/drug/aphrodisiac/incubus_draft) in exposed_mob.reagents.reagent_list if(incubus_draft && incubus_draft.overdosed) suppress_chat = TRUE - + // Begin breast growth if prefs allow it if(exposed_mob.client?.prefs.read_preference(/datum/preference/toggle/erp/breast_enlargement)) create_genitals(exposed_mob, suppress_chat, list(GENITAL_BREASTS)) - + // Separates gender change stuff from breast growth and shrinkage, as well as from new genitalia growth/removal change_gender(exposed_mob, FEMALE, suppress_chat) - + // Womb and vagina creation create_genitals(exposed_mob, suppress_chat, list(GENITAL_VAGINA, GENITAL_WOMB)) - - // Cock & ball shrinkage + + // Cock & ball shrinkage shrink_genitals(exposed_mob, suppress_chat, list(GENITAL_PENIS, GENITAL_TESTICLES)) /** @@ -112,12 +112,12 @@ * genital - the genital that is causing the messages * suppress_chat - whether or not to display a message in chat * NOTE: this function doesn't get called often enough to warrant suppressing chat, hence the var's omission -*/ -/datum/reagent/drug/aphrodisiac/succubus_milk/growth_to_chat(mob/living/carbon/human/exposed_mob, obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob?.getorganslot(ORGAN_SLOT_BREASTS)) - +*/ +/datum/reagent/drug/aphrodisiac/succubus_milk/growth_to_chat(mob/living/carbon/human/exposed_mob, obj/item/organ/external/genital/breasts/mob_breasts = exposed_mob?.get_organ_slot(ORGAN_SLOT_BREASTS)) + if(!mob_breasts) return - + // Checks for cup size. var/translation = mob_breasts.breasts_size_to_cup(mob_breasts.genital_size) diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_clothing/latex_catsuit.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_clothing/latex_catsuit.dm index 93ac3729012..39034a4a635 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_clothing/latex_catsuit.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_clothing/latex_catsuit.dm @@ -32,13 +32,13 @@ /obj/item/clothing/under/misc/latex_catsuit/equipped(mob/living/affected_mob, slot) . = ..() var/mob/living/carbon/human/affected_human = affected_mob - var/obj/item/organ/external/genital/breasts/affected_breasts = affected_human.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/breasts/affected_breasts = affected_human.get_organ_slot(ORGAN_SLOT_BREASTS) if(src == affected_human.w_uniform) if(affected_mob.gender == FEMALE) icon_state = "latex_catsuit_female" else icon_state = "latex_catsuit_male" - + affected_mob.update_worn_undersuit() breasts_overlay = mutable_appearance('modular_skyrat/modules/modular_items/lewd_items/icons/mob/lewd_clothing/lewd_uniform/lewd_uniform.dmi', "none") diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_clothing/strapon.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_clothing/strapon.dm index fd02ce085e3..18416595240 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_clothing/strapon.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_clothing/strapon.dm @@ -59,10 +59,10 @@ /obj/item/clothing/strapon/equipped(mob/user, slot) . = ..() var/mob/living/carbon/human/affected_mob = user - var/obj/item/organ/external/genital/vagina/affected_vagina = affected_mob.getorganslot(ORGAN_SLOT_VAGINA) - var/obj/item/organ/external/genital/womb/affected_womb = affected_mob.getorganslot(ORGAN_SLOT_WOMB) - var/obj/item/organ/external/genital/penis/affected_penis = affected_mob.getorganslot(ORGAN_SLOT_PENIS) - var/obj/item/organ/external/genital/testicles/affected_testicles = affected_mob.getorganslot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/vagina/affected_vagina = affected_mob.get_organ_slot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/womb/affected_womb = affected_mob.get_organ_slot(ORGAN_SLOT_WOMB) + var/obj/item/organ/external/genital/penis/affected_penis = affected_mob.get_organ_slot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/testicles/affected_testicles = affected_mob.get_organ_slot(ORGAN_SLOT_TESTICLES) if(src == affected_mob.belt) affected_vagina?.visibility_preference = GENITAL_NEVER_SHOW @@ -76,10 +76,10 @@ /obj/item/clothing/strapon/dropped(mob/living/user) . = ..() var/mob/living/carbon/human/affected_mob = user - var/obj/item/organ/external/genital/vagina/affected_vagina = affected_mob.getorganslot(ORGAN_SLOT_VAGINA) - var/obj/item/organ/external/genital/womb/affected_womb = affected_mob.getorganslot(ORGAN_SLOT_WOMB) - var/obj/item/organ/external/genital/penis/affected_penis = affected_mob.getorganslot(ORGAN_SLOT_PENIS) - var/obj/item/organ/external/genital/testicles/affected_testicles = affected_mob.getorganslot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/vagina/affected_vagina = affected_mob.get_organ_slot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/womb/affected_womb = affected_mob.get_organ_slot(ORGAN_SLOT_WOMB) + var/obj/item/organ/external/genital/penis/affected_penis = affected_mob.get_organ_slot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/testicles/affected_testicles = affected_mob.get_organ_slot(ORGAN_SLOT_TESTICLES) if(strapon_item && !ismob(loc) && in_hands == TRUE && src != affected_mob.belt) qdel(strapon_item) @@ -196,7 +196,7 @@ return var/message = "" - var/obj/item/organ/external/genital/vagina = hit_mob.getorganslot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/vagina = hit_mob.get_organ_slot(ORGAN_SLOT_VAGINA) if(hit_mob.client?.prefs?.read_preference(/datum/preference/toggle/erp/sex_toy)) switch(user.zone_selected) //to let code know what part of body we gonna fuck if(BODY_ZONE_PRECISE_GROIN) diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_helpers/human.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_helpers/human.dm index 5df2040b8e8..0a3af49f3f8 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_helpers/human.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_helpers/human.dm @@ -44,7 +44,7 @@ /// Returns true if the human has an accessible penis for the parameter. Accepts any of the `REQUIRE_GENITAL_` defines. /mob/living/carbon/human/proc/has_penis(required_state = REQUIRE_GENITAL_ANY) - var/obj/item/organ/external/genital/genital = getorganslot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/genital = get_organ_slot(ORGAN_SLOT_PENIS) if(!genital) return FALSE @@ -60,7 +60,7 @@ /// Returns true if the human has a accessible balls for the parameter. Accepts any of the `REQUIRE_GENITAL_` defines. /mob/living/carbon/human/proc/has_balls(required_state = REQUIRE_GENITAL_ANY) - var/obj/item/organ/external/genital/genital = getorganslot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/genital = get_organ_slot(ORGAN_SLOT_TESTICLES) if(!genital) return FALSE @@ -76,7 +76,7 @@ /// Returns true if the human has an accessible vagina for the parameter. Accepts any of the `REQUIRE_GENITAL_` defines. /mob/living/carbon/human/proc/has_vagina(required_state = REQUIRE_GENITAL_ANY) - var/obj/item/organ/external/genital/genital = getorganslot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/genital = get_organ_slot(ORGAN_SLOT_VAGINA) if(!genital) return FALSE @@ -92,7 +92,7 @@ /// Returns true if the human has a accessible breasts for the parameter. Accepts any of the `REQUIRE_GENITAL_` defines. /mob/living/carbon/human/proc/has_breasts(required_state = REQUIRE_GENITAL_ANY) - var/obj/item/organ/external/genital/genital = getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/genital = get_organ_slot(ORGAN_SLOT_BREASTS) if(!genital) return FALSE @@ -110,7 +110,7 @@ /mob/living/carbon/human/proc/has_anus(required_state = REQUIRE_GENITAL_ANY) if(issilicon(src)) return TRUE - var/obj/item/organ/external/genital/genital = getorganslot(ORGAN_SLOT_ANUS) + var/obj/item/organ/external/genital/genital = get_organ_slot(ORGAN_SLOT_ANUS) if(!genital) return FALSE @@ -185,7 +185,7 @@ /// Returns true if the human has a accessible ears for the parameter. Accepts any of the `REQUIRE_GENITAL_` defines. /mob/living/carbon/human/proc/has_ears(required_state = REQUIRE_GENITAL_ANY) - var/obj/item/organ/genital = getorganslot(ORGAN_SLOT_EARS) + var/obj/item/organ/genital = get_organ_slot(ORGAN_SLOT_EARS) if(!genital) return FALSE @@ -201,7 +201,7 @@ /// Returns true if the human has accessible eyes for the parameter. Accepts any of the `REQUIRE_GENITAL_` defines. /mob/living/carbon/human/proc/has_eyes(required_state = REQUIRE_GENITAL_ANY) - var/obj/item/organ/genital = getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/genital = get_organ_slot(ORGAN_SLOT_EYES) if(!genital) return FALSE diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/_masturbation_item.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/_masturbation_item.dm index 69a8aeb57b4..215ad4adaeb 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/_masturbation_item.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/_masturbation_item.dm @@ -19,8 +19,8 @@ return var/mob/living/carbon/human/affected_human = user - var/obj/item/organ/external/genital/testicles/testicles = affected_human.getorganslot(ORGAN_SLOT_TESTICLES) - var/obj/item/organ/external/genital/penis/penis = affected_human.getorganslot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/testicles/testicles = affected_human.get_organ_slot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/penis/penis = affected_human.get_organ_slot(ORGAN_SLOT_PENIS) var/datum/sprite_accessory/genital/penis_sprite = GLOB.sprite_accessories[ORGAN_SLOT_PENIS][affected_human.dna.species.mutant_bodyparts[ORGAN_SLOT_PENIS][MUTANT_INDEX_NAME]] if(penis_sprite.is_hidden(affected_human)) to_chat(user, span_notice("You need to expose yourself in order to masturbate.")) diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/clamps.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/clamps.dm index 81632b61a68..51bb6feaa1f 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/clamps.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/clamps.dm @@ -40,7 +40,7 @@ . = ..() if(!istype(user)) return - var/obj/item/organ/external/genital/breasts/user_breast = user.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/breasts/user_breast = user.get_organ_slot(ORGAN_SLOT_BREASTS) if(src == user.nipples) if(user_breast) @@ -70,7 +70,7 @@ /obj/item/clothing/sextoy/nipple_clamps/process(delta_time) . = ..() var/mob/living/carbon/human/target = loc - var/obj/item/organ/external/genital/breasts/target_breast = target.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/breasts/target_breast = target.get_organ_slot(ORGAN_SLOT_BREASTS) if(!target || !target_breast) return target.adjust_arousal(1 * delta_time) diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/dildo.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/dildo.dm index 0aac84b11c6..e9c1420161f 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/dildo.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/dildo.dm @@ -97,7 +97,7 @@ return var/message = "" - var/obj/item/organ/external/genital/vagina = target.getorganslot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/vagina = target.get_organ_slot(ORGAN_SLOT_VAGINA) if(!target.client?.prefs?.read_preference(/datum/preference/toggle/erp/sex_toy)) to_chat(user, span_danger("[target] doesn't want you to do that.")) return @@ -343,10 +343,10 @@ GLOBAL_LIST_INIT(dildo_colors, list(//mostly neon colors . = ..() if(!istype(user)) return - var/obj/item/organ/external/genital/vagina/vagina = user.getorganslot(ORGAN_SLOT_VAGINA) - var/obj/item/organ/external/genital/womb/womb = user.getorganslot(ORGAN_SLOT_WOMB) - var/obj/item/organ/external/genital/penis/penis = user.getorganslot(ORGAN_SLOT_PENIS) - var/obj/item/organ/external/genital/testicles/testicles = user.getorganslot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/vagina/vagina = user.get_organ_slot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/womb/womb = user.get_organ_slot(ORGAN_SLOT_WOMB) + var/obj/item/organ/external/genital/penis/penis = user.get_organ_slot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/testicles/testicles = user.get_organ_slot(ORGAN_SLOT_TESTICLES) if(src == user.vagina) @@ -379,10 +379,10 @@ GLOBAL_LIST_INIT(dildo_colors, list(//mostly neon colors . = ..() if(!istype(user)) return - var/obj/item/organ/external/genital/vagina/vagina = user.getorganslot(ORGAN_SLOT_VAGINA) - var/obj/item/organ/external/genital/womb/womb = user.getorganslot(ORGAN_SLOT_WOMB) - var/obj/item/organ/external/genital/penis/penis = user.getorganslot(ORGAN_SLOT_PENIS) - var/obj/item/organ/external/genital/testicles/testicles = user.getorganslot(ORGAN_SLOT_TESTICLES) + var/obj/item/organ/external/genital/vagina/vagina = user.get_organ_slot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/womb/womb = user.get_organ_slot(ORGAN_SLOT_WOMB) + var/obj/item/organ/external/genital/penis/penis = user.get_organ_slot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/testicles/testicles = user.get_organ_slot(ORGAN_SLOT_TESTICLES) if(!(src == user.vagina)) return diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/feather.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/feather.dm index 178fd3c88e4..536c2368d67 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/feather.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/feather.dm @@ -29,7 +29,7 @@ if(BODY_ZONE_CHEST) targetedsomewhere = TRUE - var/obj/item/organ/external/genital/badonkers = target.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/badonkers = target.get_organ_slot(ORGAN_SLOT_BREASTS) if(!(target.is_topless() || badonkers.visibility_preference == GENITAL_ALWAYS_SHOW)) to_chat(user, span_danger("[target]'s chest is covered!")) return diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/fleshlight.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/fleshlight.dm index 1a80c6caadd..b94ffb03ac3 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/fleshlight.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/fleshlight.dm @@ -63,7 +63,7 @@ return switch(user.zone_selected) //to let code know what part of body we gonna... Uhh... You get the point. if(BODY_ZONE_PRECISE_GROIN) - var/obj/item/organ/external/genital/penis = target.getorganslot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/penis = target.get_organ_slot(ORGAN_SLOT_PENIS) if(!penis) to_chat(user, span_danger("[target] doesn't have a penis!")) return diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/kinky_shocker.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/kinky_shocker.dm index cfa4d38a870..9d5e6ecfde3 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/kinky_shocker.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/kinky_shocker.dm @@ -122,8 +122,8 @@ switch(user.zone_selected) //to let code know what part of body we gonna tickle if(BODY_ZONE_PRECISE_GROIN) targetedsomewhere = TRUE - var/obj/item/organ/external/genital/penis = target.getorganslot(ORGAN_SLOT_PENIS) - var/obj/item/organ/external/genital/vagina = target.getorganslot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/penis = target.get_organ_slot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/vagina = target.get_organ_slot(ORGAN_SLOT_VAGINA) if(vagina && penis) if(target.is_bottomless() || (penis.visibility_preference == GENITAL_ALWAYS_SHOW && vagina.visibility_preference == GENITAL_ALWAYS_SHOW)) message = (user == target) ? pick("leans [src] against [target.p_their()] penis, letting it shock it. Ouch...", @@ -182,7 +182,7 @@ if(BODY_ZONE_CHEST) targetedsomewhere = TRUE - var/obj/item/organ/external/genital/breasts = target.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/breasts = target.get_organ_slot(ORGAN_SLOT_BREASTS) if(breasts) if(breasts.visibility_preference == GENITAL_ALWAYS_SHOW || target.is_topless()) message = (user == target) ? pick("leans [src] against [target.p_their()] breasts, letting it shock it.", diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/magic_wand.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/magic_wand.dm index d484600d9c7..e9ea3eaa069 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/magic_wand.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/magic_wand.dm @@ -98,8 +98,8 @@ return switch(user.zone_selected) //to let code know what part of body we gonna... Yeah. if(BODY_ZONE_PRECISE_GROIN) - var/obj/item/organ/external/genital/penis = target.getorganslot(ORGAN_SLOT_PENIS) - var/obj/item/organ/external/genital/vagina = target.getorganslot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/penis = target.get_organ_slot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/vagina = target.get_organ_slot(ORGAN_SLOT_VAGINA) if(vagina && penis) if(target.is_bottomless() || vagina.visibility_preference == GENITAL_ALWAYS_SHOW && penis.visibility_preference == GENITAL_ALWAYS_SHOW) message = (user == target) ? pick("massages their penis with the [src]", "[vibration_mode == "low" ? "gently" : ""][vibration_mode = "hard" ? "roughly" : ""] teases their penis with [src]", "massages their pussy with the [src]", "[vibration_mode == "low" ? "gently" : ""][vibration_mode = "hard" ? "roughly" : ""] teases their pussy with [src]") : pick("[vibration_mode == "low" ? "delicately" : ""][vibration_mode = "hard" ? "aggressively" : ""] massages [target]'s penis with [src]", "uses [src] to [vibration_mode == "low" ? "gently" : ""][vibration_mode = "hard" ? "roughly" : ""] massage [target]'s penis", "leans the vibrator against [target]'s penis", "[vibration_mode == "low" ? "delicately" : ""][vibration_mode = "hard" ? "aggressively" : ""] massages [target]'s pussy with [src]", "uses [src] to [vibration_mode == "low" ? "gently" : ""][vibration_mode = "hard" ? "roughly" : ""] massage [target]'s pussy", "leans the vibrator against [target]'s pussy") @@ -129,7 +129,7 @@ target.adjust_pleasure((vibration_mode == "low" ? 2 : (vibration_mode == "hard" ? 10 : 5))) if(BODY_ZONE_CHEST) - var/obj/item/organ/external/genital/breasts = target.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/breasts = target.get_organ_slot(ORGAN_SLOT_BREASTS) if(!(target.is_topless() || breasts.visibility_preference == GENITAL_ALWAYS_SHOW)) to_chat(user, span_danger("Looks like [target]'s chest is covered!")) return diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/torture_candle.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/torture_candle.dm index 0bad0059cd2..92de2ef0b70 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/torture_candle.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/torture_candle.dm @@ -146,8 +146,8 @@ switch(user.zone_selected) //to let code know what part of body we gonna wax if(BODY_ZONE_PRECISE_GROIN) targeted_somewhere = TRUE - var/obj/item/organ/external/genital/penis = attacked.getorganslot(ORGAN_SLOT_PENIS) - var/obj/item/organ/external/genital/vagina = attacked.getorganslot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/penis = attacked.get_organ_slot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/vagina = attacked.get_organ_slot(ORGAN_SLOT_VAGINA) if((vagina && penis) && (attacked.is_bottomless() || vagina.visibility_preference == GENITAL_ALWAYS_SHOW && penis.visibility_preference == GENITAL_ALWAYS_SHOW)) message = (user == attacked) ? pick("drips some wax on [attacked.p_their()] genitals, moaning in pleasure", "drips some wax on [attacked.p_them()]self, moaning in pleasure as it reaches [attacked.p_their()] genitals") : pick( @@ -179,7 +179,7 @@ if(BODY_ZONE_CHEST) targeted_somewhere = TRUE - var/obj/item/organ/external/genital/breasts = attacked.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/breasts = attacked.get_organ_slot(ORGAN_SLOT_BREASTS) if(attacked.is_topless() || breasts.visibility_preference == GENITAL_ALWAYS_SHOW) var/breasts_or_nipples = breasts ? ORGAN_SLOT_BREASTS : ORGAN_SLOT_NIPPLES message = (user == attacked) ? pick("drips some wax on [attacked.p_their()] [breasts_or_nipples], releasing all [attacked.p_their()] lustness", "drips some wax right on [attacked.p_their()] [breasts ? "tits" : "chest"], making [attacked.p_their()] feel faint.") : pick("pours the wax that is slowly dripping from [src] onto [attacked]'s [breasts_or_nipples], [attacked.p_they()] shows pure enjoyment.", "tilts the candle. Right in the moment when wax drips on [attacked]'s [breasts_or_nipples], [attacked.p_they()] shivers", "tilts the candle. Just when hot drops of wax fell on [attacked]'s [breasts_or_nipples], [attacked.p_they()] quietly moans in pleasure") diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/vibrator.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/vibrator.dm index c0da6760282..b39e9a0a5a4 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/vibrator.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/vibrator.dm @@ -125,8 +125,8 @@ switch(user.zone_selected) //to let code know what part of body we gonna vibe if(BODY_ZONE_PRECISE_GROIN) targetedsomewhere = TRUE - var/obj/item/organ/external/genital/penis = target.getorganslot(ORGAN_SLOT_PENIS) - var/obj/item/organ/external/genital/vagina = target.getorganslot(ORGAN_SLOT_VAGINA) + var/obj/item/organ/external/genital/penis = target.get_organ_slot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/vagina = target.get_organ_slot(ORGAN_SLOT_VAGINA) if((vagina && penis) && (vagina.visibility_preference == GENITAL_ALWAYS_SHOW && penis.visibility_preference == GENITAL_ALWAYS_SHOW || target.is_bottomless())) message = (user == target) ? pick("massages their vagina with the [src]", "[vibration_mode == "low" ? "gently" : ""][vibration_mode = "hard" ? "roughly" : ""] teases their pussy with [src]", "massages their penis with the [src]", "[vibration_mode == "low" ? "gently" : ""][vibration_mode = "hard" ? "roughly" : ""] teases their penis with [src]") : pick("[vibration_mode == "low" ? "delicately" : ""][vibration_mode = "hard" ? "aggressively" : ""] massages [target]'s vagina with [src]", "uses [src] to [vibration_mode == "low" ? "gently" : ""][vibration_mode = "hard" ? "roughly" : ""] massage [target]'s crotch", "leans the massager against [target]'s pussy", "[vibration_mode == "low" ? "delicately" : ""][vibration_mode = "hard" ? "aggressively" : ""] massages [target]'s penis with [src]", "uses [src] to [vibration_mode == "low" ? "gently" : ""][vibration_mode = "hard" ? "roughly" : ""] massage [target]'s penis", "leans the massager against [target]'s penis") target.adjust_arousal(DEFAULT_AROUSAL_INCREASE) @@ -151,7 +151,7 @@ if(BODY_ZONE_CHEST) targetedsomewhere = TRUE - var/obj/item/organ/external/genital/breasts = target.getorganslot(ORGAN_SLOT_BREASTS) + var/obj/item/organ/external/genital/breasts = target.get_organ_slot(ORGAN_SLOT_BREASTS) if(target.is_topless() || breasts.visibility_preference == GENITAL_ALWAYS_SHOW) var/breasts_or_nipples = breasts ? ORGAN_SLOT_BREASTS : ORGAN_SLOT_NIPPLES message = (user == target) ? pick("massages their [breasts_or_nipples] with the [src]", "[vibration_mode == "low" ? "gently" : ""][vibration_mode = "hard" ? "roughly" : ""] teases their tits with [src]") : pick("[vibration_mode == "low" ? "delicately" : ""][vibration_mode = "hard" ? "aggressively" : ""] teases [target]'s [breasts_or_nipples] with [src]", "uses [src] to[vibration_mode == "low" ? " slowly" : ""] massage [target]'s [breasts ? "tits" : ORGAN_SLOT_NIPPLES]", "uses [src] to tease [target]'s [breasts ? "boobs" : ORGAN_SLOT_NIPPLES]", "rubs [target]'s [breasts ? "tits" : ORGAN_SLOT_NIPPLES] with [src]") diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/vibroring.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/vibroring.dm index 92b0559d5ea..f09ce73291a 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/vibroring.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/vibroring.dm @@ -82,7 +82,7 @@ var/mob/living/carbon/human/user = loc if(!user || !istype(user)) return PROCESS_KILL - var/obj/item/organ/external/genital/testicles/balls = user.getorganslot(ORGAN_SLOT_PENIS) + var/obj/item/organ/external/genital/testicles/balls = user.get_organ_slot(ORGAN_SLOT_PENIS) if(!toy_on || !balls) return user.adjust_arousal(1 * delta_time) diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_machinery/milking_machine.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_machinery/milking_machine.dm index f489bb668ca..b723786104a 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_machinery/milking_machine.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_machinery/milking_machine.dm @@ -190,15 +190,15 @@ /obj/structure/chair/milking_machine/post_buckle_mob(mob/living/affected_mob) current_mob = affected_mob - current_breasts = affected_mob.getorganslot(ORGAN_SLOT_BREASTS) + current_breasts = affected_mob.get_organ_slot(ORGAN_SLOT_BREASTS) if(current_breasts) breasts_size = current_breasts.genital_size - current_testicles = affected_mob.getorganslot(ORGAN_SLOT_TESTICLES) + current_testicles = affected_mob.get_organ_slot(ORGAN_SLOT_TESTICLES) if(current_testicles) testicles_size = current_testicles.genital_size - current_vagina = affected_mob.getorganslot(ORGAN_SLOT_VAGINA) + current_vagina = affected_mob.get_organ_slot(ORGAN_SLOT_VAGINA) if(current_vagina) vagina_size = current_vagina.genital_size @@ -509,12 +509,12 @@ if(istype(src, /mob/living/) && istype(over_object, /obj/structure/chair/milking_machine)) var/mob/living/affected_mob = src var/obj/structure/chair/milking_machine/milking_machine = over_object - if(affected_mob.getorganslot(ORGAN_SLOT_TESTICLES)) - milking_machine.current_testicles = affected_mob.getorganslot(ORGAN_SLOT_TESTICLES) - if(affected_mob.getorganslot(ORGAN_SLOT_VAGINA)) - milking_machine.current_vagina = affected_mob.getorganslot(ORGAN_SLOT_VAGINA) - if(affected_mob.getorganslot(ORGAN_SLOT_BREASTS)) - milking_machine.current_breasts = affected_mob.getorganslot(ORGAN_SLOT_BREASTS) + if(affected_mob.get_organ_slot(ORGAN_SLOT_TESTICLES)) + milking_machine.current_testicles = affected_mob.get_organ_slot(ORGAN_SLOT_TESTICLES) + if(affected_mob.get_organ_slot(ORGAN_SLOT_VAGINA)) + milking_machine.current_vagina = affected_mob.get_organ_slot(ORGAN_SLOT_VAGINA) + if(affected_mob.get_organ_slot(ORGAN_SLOT_BREASTS)) + milking_machine.current_breasts = affected_mob.get_organ_slot(ORGAN_SLOT_BREASTS) else // A place for the handler when the mob doesn't have the genitals it needs return diff --git a/modular_skyrat/modules/modular_persistence/code/modular_persistence.dm b/modular_skyrat/modules/modular_persistence/code/modular_persistence.dm index e51b076afc8..19f6cea3ed3 100644 --- a/modular_skyrat/modules/modular_persistence/code/modular_persistence.dm +++ b/modular_skyrat/modules/modular_persistence/code/modular_persistence.dm @@ -114,6 +114,6 @@ GLOBAL_LIST_INIT(modular_persistence_ignored_vars, list( /// Saves the persistence data for the owner. /mob/living/carbon/human/proc/save_individual_persistence(var/ckey) - var/obj/item/organ/internal/brain/brain = getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = get_organ_slot(ORGAN_SLOT_BRAIN) return brain?.modular_persistence?.save_data(ckey) diff --git a/modular_skyrat/modules/oversized/code/oversized_quirk.dm b/modular_skyrat/modules/oversized/code/oversized_quirk.dm index cf1dc995c39..6a07007b7c8 100644 --- a/modular_skyrat/modules/oversized/code/oversized_quirk.dm +++ b/modular_skyrat/modules/oversized/code/oversized_quirk.dm @@ -35,7 +35,7 @@ human_holder.physiology.hunger_mod *= OVERSIZED_HUNGER_MOD //50% hungrier var/speed_mod = human_holder.dna.species.speedmod + OVERSIZED_SPEED_SLOWDOWN human_holder.add_or_update_variable_movespeed_modifier(/datum/movespeed_modifier/species, multiplicative_slowdown = speed_mod) - var/obj/item/organ/internal/stomach/old_stomach = human_holder.getorganslot(ORGAN_SLOT_STOMACH) + var/obj/item/organ/internal/stomach/old_stomach = human_holder.get_organ_slot(ORGAN_SLOT_STOMACH) if(!(old_stomach.type == /obj/item/organ/internal/stomach)) return old_stomach.Remove(human_holder, special = TRUE) diff --git a/modular_skyrat/modules/self_actualization_device/code/self_actualization_device.dm b/modular_skyrat/modules/self_actualization_device/code/self_actualization_device.dm index 9121f093b22..65b55ec337f 100644 --- a/modular_skyrat/modules/self_actualization_device/code/self_actualization_device.dm +++ b/modular_skyrat/modules/self_actualization_device/code/self_actualization_device.dm @@ -173,7 +173,7 @@ patient.setOrganLoss(ORGAN_SLOT_BRAIN, brain_damage) //Re-Applies Trauma - var/obj/item/organ/internal/brain/patient_brain = patient.getorgan(/obj/item/organ/internal/brain) + var/obj/item/organ/internal/brain/patient_brain = patient.get_organ_by_type(/obj/item/organ/internal/brain) if(length(trauma_list)) patient_brain.traumas = trauma_list @@ -187,7 +187,7 @@ /// Checks the damage on the inputed organ and stores it. /obj/machinery/self_actualization_device/proc/check_organ(mob/living/carbon/human/patient, obj/item/organ/organ_to_check) - var/obj/item/organ/organ_to_track = patient.getorgan(organ_to_check) + var/obj/item/organ/organ_to_track = patient.get_organ_by_type(organ_to_check) // If the organ is missing, the organ damage is automatically set to 100. if(!organ_to_track) diff --git a/modular_skyrat/modules/synths/code/bodyparts/brain.dm b/modular_skyrat/modules/synths/code/bodyparts/brain.dm index 05269f84f26..45e44e9e66c 100644 --- a/modular_skyrat/modules/synths/code/bodyparts/brain.dm +++ b/modular_skyrat/modules/synths/code/bodyparts/brain.dm @@ -33,9 +33,9 @@ if(. & EMP_PROTECT_SELF || severity != EMP_HEAVY) return - applyOrganDamage(SYNTH_EMP_BRAIN_DAMAGE, SYNTH_EMP_BRAIN_DAMAGE_MAXIMUM) + apply_organ_damage(SYNTH_EMP_BRAIN_DAMAGE, SYNTH_EMP_BRAIN_DAMAGE_MAXIMUM) -/obj/item/organ/internal/brain/synth/applyOrganDamage(damage_amount, maximumm, required_organtype) +/obj/item/organ/internal/brain/synth/apply_organ_damage(damage_amount, maximumm, required_organtype) . = ..() if(owner && damage > 0 && (world.time - last_message_time) > SYNTH_BRAIN_DAMAGE_MESSAGE_INTERVAL) diff --git a/modular_skyrat/modules/synths/code/species/synthetic.dm b/modular_skyrat/modules/synths/code/species/synthetic.dm index 00ab34b5824..3c068c673d8 100644 --- a/modular_skyrat/modules/synths/code/species/synthetic.dm +++ b/modular_skyrat/modules/synths/code/species/synthetic.dm @@ -97,7 +97,7 @@ . = ..() var/screen_mutant_bodypart = transformer.dna.mutant_bodyparts[MUTANT_SYNTH_SCREEN] - var/obj/item/organ/internal/eyes/eyes = transformer.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = transformer.get_organ_slot(ORGAN_SLOT_EYES) if(!screen && screen_mutant_bodypart && screen_mutant_bodypart[MUTANT_INDEX_NAME] && screen_mutant_bodypart[MUTANT_INDEX_NAME] != "None") @@ -149,7 +149,7 @@ /datum/species/synthetic/on_species_loss(mob/living/carbon/human/human) . = ..() - var/obj/item/organ/internal/eyes/eyes = human.getorganslot(ORGAN_SLOT_EYES) + var/obj/item/organ/internal/eyes/eyes = human.get_organ_slot(ORGAN_SLOT_EYES) if(eyes) eyes.eye_icon_state = initial(eyes.eye_icon_state) diff --git a/modular_skyrat/modules/synths/code/surgery/robot_brain_surgery.dm b/modular_skyrat/modules/synths/code/surgery/robot_brain_surgery.dm index d3d37490980..4be04a84839 100644 --- a/modular_skyrat/modules/synths/code/surgery/robot_brain_surgery.dm +++ b/modular_skyrat/modules/synths/code/surgery/robot_brain_surgery.dm @@ -25,7 +25,7 @@ time = 12 SECONDS //long and complicated /datum/surgery/robot_brain_surgery/can_start(mob/user, mob/living/carbon/target, obj/item/tool) - var/obj/item/organ/internal/brain/brain = target.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/internal/brain/brain = target.get_organ_slot(ORGAN_SLOT_BRAIN) return !!brain /datum/surgery_step/fix_robot_brain/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) @@ -48,16 +48,16 @@ if(target.mind && 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) - 60) //we set damage in this case in order to clear the "failing" flag + target.setOrganLoss(ORGAN_SLOT_BRAIN, target.get_organ_loss(ORGAN_SLOT_BRAIN) - 60) //we set damage in this case in order to clear the "failing" flag target.cure_all_traumas(TRAUMA_RESILIENCE_LOBOTOMY) //Lobotomy tier fix cause you can't clone this! - if(target.getOrganLoss(ORGAN_SLOT_BRAIN) > NONE) + if(target.get_organ_loss(ORGAN_SLOT_BRAIN) > NONE) to_chat(user, "[target]'s posibrain still has some lasting system damage that can be cleared.") return ..() /datum/surgery_step/fix_robot_brain/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.getorganslot(ORGAN_SLOT_BRAIN)) + if(target.get_organ_slot(ORGAN_SLOT_BRAIN)) display_results( user, target, diff --git a/modular_skyrat/modules/synths/code/surgery/robot_chassis_restoration.dm b/modular_skyrat/modules/synths/code/surgery/robot_chassis_restoration.dm index fca47d7186d..ab100c0f751 100644 --- a/modular_skyrat/modules/synths/code/surgery/robot_chassis_restoration.dm +++ b/modular_skyrat/modules/synths/code/surgery/robot_chassis_restoration.dm @@ -18,7 +18,7 @@ desc = "A surgical procedure that reboots a positronic brain." /datum/surgery/robot_chassis_restoration/can_start(mob/user, mob/living/carbon/target) - if(!..() || target.stat != DEAD || !target.getorganslot(ORGAN_SLOT_BRAIN)) + if(!..() || target.stat != DEAD || !target.get_organ_slot(ORGAN_SLOT_BRAIN)) return FALSE return TRUE diff --git a/modular_skyrat/modules/xenos_skyrat_redo/code/base_skyrat_xeno.dm b/modular_skyrat/modules/xenos_skyrat_redo/code/base_skyrat_xeno.dm index ca15979b4b4..1d36afcdf3b 100644 --- a/modular_skyrat/modules/xenos_skyrat_redo/code/base_skyrat_xeno.dm +++ b/modular_skyrat/modules/xenos_skyrat_redo/code/base_skyrat_xeno.dm @@ -139,7 +139,7 @@ evolver.balloon_alert(evolver, "too many of our evolution already") return FALSE - var/obj/item/organ/internal/alien/hivenode/node = evolver.getorgan(/obj/item/organ/internal/alien/hivenode) + var/obj/item/organ/internal/alien/hivenode/node = evolver.get_organ_by_type(/obj/item/organ/internal/alien/hivenode) if(!node) to_chat(evolver, span_bolddanger("We can't sense our node's connection to the hive... We can't evolve!")) return FALSE @@ -197,7 +197,7 @@ apply_overlay(HANDS_LAYER) /mob/living/carbon/proc/get_max_plasma() - var/obj/item/organ/internal/alien/plasmavessel/vessel = getorgan(/obj/item/organ/internal/alien/plasmavessel) + var/obj/item/organ/internal/alien/plasmavessel/vessel = get_organ_by_type(/obj/item/organ/internal/alien/plasmavessel) if(!vessel) return -1 return vessel.max_plasma diff --git a/modular_skyrat/modules/xenos_skyrat_redo/code/xeno_types/queen.dm b/modular_skyrat/modules/xenos_skyrat_redo/code/xeno_types/queen.dm index 214681f43f1..26497fc78c7 100644 --- a/modular_skyrat/modules/xenos_skyrat_redo/code/xeno_types/queen.dm +++ b/modular_skyrat/modules/xenos_skyrat_redo/code/xeno_types/queen.dm @@ -60,7 +60,7 @@ if(carbon_mob == src) continue - var/obj/item/organ/internal/alien/hivenode/node = carbon_mob.getorgan(/obj/item/organ/internal/alien/hivenode) + var/obj/item/organ/internal/alien/hivenode/node = carbon_mob.get_organ_by_type(/obj/item/organ/internal/alien/hivenode) if(istype(node)) node.queen_death() diff --git a/tgstation.dme b/tgstation.dme index 7083b305a26..1e03d9bf6ca 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -4012,6 +4012,7 @@ #include "code\modules\mob\living\carbon\human\human_movement.dm" #include "code\modules\mob\living\carbon\human\human_say.dm" #include "code\modules\mob\living\carbon\human\human_stripping.dm" +#include "code\modules\mob\living\carbon\human\human_suicide.dm" #include "code\modules\mob\living\carbon\human\human_update_icons.dm" #include "code\modules\mob\living\carbon\human\init_signals.dm" #include "code\modules\mob\living\carbon\human\inventory.dm"