mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 03:33:21 +00:00
Merge pull request #2276 from CHOMPStationBot/upstream-merge-10727
[MIRROR] Medicine Tweaks
This commit is contained in:
@@ -33,7 +33,12 @@
|
||||
/datum/uplink_item/item/medical/bonemeds
|
||||
name = "Bone Repair injector"
|
||||
item_cost = 10
|
||||
path = /obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed
|
||||
path = /obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed
|
||||
|
||||
/datum/uplink_item/item/medical/clonemeds
|
||||
name = "Clone injector"
|
||||
item_cost = 15
|
||||
path = /obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed
|
||||
|
||||
/datum/uplink_item/item/medical/bonemeds_case
|
||||
name = "Bone Repair case"
|
||||
@@ -41,6 +46,12 @@
|
||||
desc = "A case of three osteodaxon injectors. Can rapidly remove and stow up to six injectors."
|
||||
path = /obj/item/weapon/storage/quickdraw/syringe_case/bonemed
|
||||
|
||||
/datum/uplink_item/item/medical/clonemeds_case
|
||||
name = "Clone case"
|
||||
item_cost = 30
|
||||
desc = "A case of three rezadone injectors. Can rapidly remove and stow up to six injectors."
|
||||
path = /obj/item/weapon/storage/quickdraw/syringe_case/clonemed
|
||||
|
||||
/datum/uplink_item/item/medical/ambrosiadeusseeds
|
||||
name = "Box of 7x ambrosia deus seed packets"
|
||||
item_cost = 10
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
name = "bone repair kit"
|
||||
desc = "Contains chemicals to mend broken bones."
|
||||
max_storage_space = ITEMSIZE_COST_SMALL * 7
|
||||
starts_with = list(/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed = 8)
|
||||
starts_with = list(/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed = 8)
|
||||
|
||||
/*
|
||||
* Pill Bottles
|
||||
|
||||
@@ -93,7 +93,16 @@
|
||||
desc = "A small case for safely carrying sharps around. This one is deluxe!"
|
||||
max_w_class = ITEMSIZE_SMALL
|
||||
starts_with = list(
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed
|
||||
)
|
||||
|
||||
/obj/item/weapon/storage/quickdraw/syringe_case/clonemed
|
||||
desc = "A small case for safely carrying sharps around. This one is deluxe!"
|
||||
max_w_class = ITEMSIZE_SMALL
|
||||
starts_with = list(
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed
|
||||
)
|
||||
|
||||
@@ -19,6 +19,8 @@ much more likely to show up. This is done for several purposes;
|
||||
|
||||
/obj/random/unidentified_medicine/item_to_spawn()
|
||||
return pick(
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/brute/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/burn/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/toxin/unidentified,
|
||||
@@ -27,7 +29,6 @@ much more likely to show up. This is done for several purposes;
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/pain/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/organ/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/clotting/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/combat/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/healing_nanites/unidentified,
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/stimm/unidentified,
|
||||
@@ -62,9 +63,11 @@ much more likely to show up. This is done for several purposes;
|
||||
// Medicine belonging to a place still being occupied (or was recently), meaning the goods might still be fresh, and better.
|
||||
/obj/random/unidentified_medicine/fresh_medicine/item_to_spawn()
|
||||
// More likely to get something good, and a chance to get rare medicines.
|
||||
// 75 Good, 25 Bad. 75% chance of getting something good.
|
||||
// 80 Good, 25 Bad. 76% chance of getting something good.
|
||||
// Good odds, but the contents aren't super great unless someone gets lucky.
|
||||
return pick(
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/brute/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/burn/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/toxin/unidentified,
|
||||
@@ -73,7 +76,6 @@ much more likely to show up. This is done for several purposes;
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/pain/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/organ/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/clotting/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed/unidentified,
|
||||
prob(25);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/expired/unidentified)
|
||||
|
||||
// For military PoIs like BSD. High odds of good loot since those PoIs are really hard.
|
||||
@@ -82,12 +84,13 @@ much more likely to show up. This is done for several purposes;
|
||||
// 75 Good, 30 Bad, roughly 71.4% chance to get something good.
|
||||
// Very high but very hard to reach and still has a chance of ending poorly if injecting blind.
|
||||
return pick(
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/brute/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/burn/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/pain/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/organ/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/clotting/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed/unidentified,
|
||||
prob(30);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/combat/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/soporific/unidentified,
|
||||
prob(30);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/cyanide/unidentified)
|
||||
@@ -95,13 +98,14 @@ much more likely to show up. This is done for several purposes;
|
||||
// Hyposprays found inside various illicit places.
|
||||
/obj/random/unidentified_medicine/drug_den/item_to_spawn()
|
||||
// Combat stims are common, but so are nasty drugs.
|
||||
// 65 Good, 160 Bad, roughly 28.8% to get something good.
|
||||
// 70 Good, 160 Bad, roughly 30% to get something good.
|
||||
// Poor odds, but there are a lot of these scattered in the drug dens and illegal chem labs.
|
||||
return pick(
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/pain/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/organ/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/clotting/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed/unidentified,
|
||||
prob(40);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/combat/unidentified,
|
||||
prob(20);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/stimm/unidentified,
|
||||
prob(20);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/space_drugs/unidentified,
|
||||
@@ -120,9 +124,10 @@ much more likely to show up. This is done for several purposes;
|
||||
// 45 Good, 45 Bad, 50% chance to get something good.
|
||||
// Do you feel lucky?
|
||||
return pick(
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/organ/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/clotting/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed/unidentified,
|
||||
prob(10);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/combat/unidentified,
|
||||
prob(5);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/healing_nanites/unidentified,
|
||||
prob(20);/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/contaminated/unidentified,
|
||||
|
||||
@@ -202,7 +202,7 @@
|
||||
icon = 'icons/obj/rollerbed.dmi'
|
||||
icon_state = "rollerbed"
|
||||
anchored = 0
|
||||
surgery_odds = 75
|
||||
surgery_odds = 50 //VOREStation Edit
|
||||
var/bedtype = /obj/structure/bed/roller
|
||||
var/rollertype = /obj/item/roller
|
||||
|
||||
|
||||
@@ -186,6 +186,17 @@
|
||||
icon_state = "green"
|
||||
filled_reagents = list("anti_toxin" = 5)
|
||||
|
||||
//Special autoinjectors, while having potent chems like the 15u ones, the chems are usually potent enough that 5u is enough
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed
|
||||
name = "bone repair injector"
|
||||
desc = "A rapid and safe way to administer small amounts of drugs by untrained or trained personnel. This one excels at treating damage to bones."
|
||||
filled_reagents = list("osteodaxon" = 5)
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed
|
||||
name = "clone injector"
|
||||
desc = "A rapid and safe way to administer small amounts of drugs by untrained or trained personnel. This one excels at treating genetic damage."
|
||||
filled_reagents = list("rezadone" = 5)
|
||||
|
||||
// These have a 15u capacity, somewhat higher tech level, and generally more useful chems, but are otherwise the same as the regular autoinjectors.
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector
|
||||
name = "empty hypo"
|
||||
@@ -247,11 +258,6 @@
|
||||
desc = "A refined version of the standard autoinjector, allowing greater capacity. This variant excels at treating bleeding wounds and internal bleeding."
|
||||
filled_reagents = list("inaprovaline" = 5, "myelamine" = 10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed
|
||||
name = "bone repair injector"
|
||||
desc = "A refined version of the standard autoinjector, allowing greater capacity. This one excels at treating damage to bones."
|
||||
filled_reagents = list("inaprovaline" = 5, "osteodaxon" = 10)
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/glucose
|
||||
name = "glucose hypo"
|
||||
desc = "A hypoinjector filled with glucose, used for critically malnourished patients and voidsuited workers."
|
||||
|
||||
@@ -5,6 +5,14 @@
|
||||
identity_type = /datum/identification/hypo
|
||||
|
||||
// The good.
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/bonemed/unidentified
|
||||
init_hide_identity = TRUE
|
||||
flags = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/clonemed/unidentified
|
||||
init_hide_identity = TRUE
|
||||
flags = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/brute/unidentified
|
||||
init_hide_identity = TRUE
|
||||
flags = 0
|
||||
@@ -37,10 +45,6 @@
|
||||
init_hide_identity = TRUE
|
||||
flags = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/bonemed/unidentified
|
||||
init_hide_identity = TRUE
|
||||
flags = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/combat/unidentified
|
||||
init_hide_identity = TRUE
|
||||
flags = 0
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
reagent_state = LIQUID
|
||||
color = "#00BFFF"
|
||||
overdose = REAGENTS_OVERDOSE * 2
|
||||
metabolism = REM * 0.5
|
||||
metabolism = REM * 0.2
|
||||
scannable = 1
|
||||
|
||||
/datum/reagent/inaprovaline/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
@@ -24,9 +24,9 @@
|
||||
reagent_state = LIQUID
|
||||
color = "#00BFFF"
|
||||
overdose = REAGENTS_OVERDOSE * 2
|
||||
metabolism = REM * 0.5
|
||||
metabolism = REM * 0.2
|
||||
scannable = 1
|
||||
touch_met = REM * 0.75
|
||||
touch_met = REM * 0.3
|
||||
can_overdose_touch = TRUE
|
||||
|
||||
/datum/reagent/inaprovaline/topical/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
@@ -60,7 +60,7 @@
|
||||
|
||||
/datum/reagent/bicaridine/overdose(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
var/wound_heal = 1.5 * removed
|
||||
var/wound_heal = 2.5 * removed
|
||||
M.eye_blurry = min(M.eye_blurry + wound_heal, 250)
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
taste_description = "bwoink"
|
||||
reagent_state = LIQUID
|
||||
color = "#C8A5DC"
|
||||
affects_dead = 1 //This can even heal dead people.
|
||||
affects_dead = TRUE //This can even heal dead people.
|
||||
metabolism = 0.1
|
||||
mrate_static = TRUE //Just in case
|
||||
|
||||
@@ -178,11 +178,10 @@
|
||||
affect_blood(M, alien, removed)
|
||||
|
||||
/datum/reagent/adminordrazine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.setCloneLoss(0)
|
||||
M.setOxyLoss(0)
|
||||
M.radiation = 0
|
||||
M.heal_organ_damage(20,20)
|
||||
M.adjustToxLoss(-20)
|
||||
M.heal_organ_damage(40,40)
|
||||
M.adjustCloneLoss(-40)
|
||||
M.adjustToxLoss(-40)
|
||||
M.adjustOxyLoss(-300)
|
||||
M.hallucination = 0
|
||||
M.setBrainLoss(0)
|
||||
M.disabilities = 0
|
||||
@@ -202,6 +201,10 @@
|
||||
M.radiation = 0
|
||||
M.ExtinguishMob()
|
||||
M.fire_stacks = 0
|
||||
M.add_chemical_effect(CE_ANTIBIOTIC, ANTIBIO_SUPER)
|
||||
M.add_chemical_effect(CE_STABLE, 15)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 200)
|
||||
M.remove_a_modifier_of_type(/datum/modifier/poisoned)
|
||||
if(M.bodytemperature > 310)
|
||||
M.bodytemperature = max(310, M.bodytemperature - (40 * TEMPERATURE_DAMAGE_COEFFICIENT))
|
||||
else if(M.bodytemperature < 311)
|
||||
@@ -209,6 +212,9 @@
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/wound_heal = 5
|
||||
for(var/obj/item/organ/I in H.internal_organs)
|
||||
if(I.damage > 0) //Adminordrazine heals even robits, it is magic
|
||||
I.damage = max(I.damage - wound_heal, 0)
|
||||
for(var/obj/item/organ/external/O in H.bad_external_organs)
|
||||
if(O.status & ORGAN_BROKEN)
|
||||
O.mend_fracture() //Only works if the bone won't rebreak, as usual
|
||||
|
||||
@@ -10,7 +10,7 @@ var/list/table_icon_cache = list()
|
||||
climbable = 1
|
||||
layer = TABLE_LAYER
|
||||
throwpass = 1
|
||||
surgery_odds = 66
|
||||
surgery_odds = 50 //VOREStation Edit
|
||||
var/flipped = 0
|
||||
var/maxhealth = 10
|
||||
var/health = 10
|
||||
|
||||
Reference in New Issue
Block a user