diff --git a/code/game/objects/random/misc.dm b/code/game/objects/random/misc.dm index ce2f20fedd..100a02a305 100644 --- a/code/game/objects/random/misc.dm +++ b/code/game/objects/random/misc.dm @@ -238,7 +238,8 @@ prob(6);/obj/item/weapon/storage/firstaid/adv, prob(8);/obj/item/weapon/storage/firstaid/fire, prob(1);/obj/item/device/denecrotizer/medical, //VOREStation Add, - prob(1);/obj/item/weapon/storage/firstaid/combat) + prob(1);/obj/item/weapon/storage/firstaid/combat + prob(2);/obj/item/weapon/storage/firstaid/experimental) //CHOMPadd /obj/random/contraband name = "Random Illegal Item" diff --git a/modular_chomp/code/game/objects/items/weapons/storage/firstaid.dm b/modular_chomp/code/game/objects/items/weapons/storage/firstaid.dm new file mode 100644 index 0000000000..6eb2e62391 --- /dev/null +++ b/modular_chomp/code/game/objects/items/weapons/storage/firstaid.dm @@ -0,0 +1,126 @@ +/obj/item/weapon/storage/firstaid/experimental + name = "experimental firstaid kit" + color = "#FF3300" + icon = 'modular_chomp/icons/obj/storage.dmi' + icon_state = "expirmentalaid" + starts_with = list( + /obj/item/weapon/storage/pill_bottle/neotane, + /obj/item/weapon/storage/pill_bottle/burncard, + /obj/item/weapon/storage/pill_bottle/flamecure, + /obj/item/weapon/storage/pill_bottle/juggernog, + /obj/item/weapon/storage/pill_bottle/curea, + /obj/item/weapon/storage/pill_bottle/souldew, + /obj/item/weapon/storage/pill_bottle/puryfingagent) + +/obj/item/weapon/storage/pill_bottle/neotane + name = "pill bottle (neo kelotane)" + desc = "Contains experimental pills." + starts_with = list(/obj/item/weapon/reagent_containers/pill/neotane = 7) + wrapper_color = COLOR_ORANGE + +/obj/item/weapon/storage/pill_bottle/burncard + name = "pill bottle (burning bicard)" + desc = "Contains experimental pills." + starts_with = list(/obj/item/weapon/reagent_containers/pill/burncard = 7) + wrapper_color = COLOR_RED + +/obj/item/weapon/storage/pill_bottle/flamecure + name = "pill bottle (Flame Cure)" + desc = "Contains experimental pills." + starts_with = list(/obj/item/weapon/reagent_containers/pill/flamecure = 7) + wrapper_color = COLOR_ORANGE + +/obj/item/weapon/storage/pill_bottle/juggernog + name = "pill bottle (juggernog)" + desc = "Contains experimental pills." + starts_with = list(/obj/item/weapon/reagent_containers/pill/juggernog = 7) + wrapper_color = COLOR_RED + +/obj/item/weapon/storage/pill_bottle/curea + name = "pill bottle (curea)" + desc = "Contains experimental pills." + starts_with = list(/obj/item/weapon/reagent_containers/pill/curea = 7) + wrapper_color = COLOR_BLUE + +/obj/item/weapon/storage/pill_bottle/souldew + name = "pill bottle (soul dew)" + desc = "Contains experimental pills." + starts_with = list(/obj/item/weapon/reagent_containers/pill/souldew = 7) + wrapper_color = COLOR_GREEN + +/obj/item/weapon/storage/pill_bottle/puryfingagent + name = "pill bottle (puryfing agent)" + desc = "Contains experimental pills." + starts_with = list(/obj/item/weapon/reagent_containers/pill/puryfingagent = 7) + wrapper_color = COLOR_GREEN + +//Pills +/obj/item/weapon/reagent_containers/pill/neotane + name = "Neo Kelotane (15u)" + desc = "An expirmental pill." + icon_state = "pill2" + +/obj/item/weapon/reagent_containers/pill/neotane/Initialize() + . = ..() + reagents.add_reagent("neotane", 10) + color = reagents.get_color() + +/obj/item/weapon/reagent_containers/pill/burncard + name = "Burning Bicard (10u)" + desc = "An expirmental pill." + icon_state = "pill2" + +/obj/item/weapon/reagent_containers/pill/burncard/Initialize() + . = ..() + reagents.add_reagent("burncard", 10) + color = reagents.get_color() + +/obj/item/weapon/reagent_containers/pill/flamecure + name = "Flame Cure (5u)" + desc = "An expirmental pill." + icon_state = "pill2" + +/obj/item/weapon/reagent_containers/pill/flamecure/Initialize() + . = ..() + reagents.add_reagent("flamecure", 5) + color = reagents.get_color() + +/obj/item/weapon/reagent_containers/pill/juggernog + name = "Juggernog (5u)" + desc = "An expirmental pill." + icon_state = "pill2" + +/obj/item/weapon/reagent_containers/pill/juggernog/Initialize() + . = ..() + reagents.add_reagent("juggernog", 5) + color = reagents.get_color() + +/obj/item/weapon/reagent_containers/pill/curea + name = "Curea (10u)" + desc = "An expirmental pill." + icon_state = "pill2" + +/obj/item/weapon/reagent_containers/pill/curea/Initialize() + . = ..() + reagents.add_reagent("curea", 10) + color = reagents.get_color() + +/obj/item/weapon/reagent_containers/pill/souldew + name = "Souldew (10u)" + desc = "An expirmental pill." + icon_state = "pill2" + +/obj/item/weapon/reagent_containers/pill/souldew/Initialize() + . = ..() + reagents.add_reagent("souldew", 10) + color = reagents.get_color() + +/obj/item/weapon/reagent_containers/pill/puryfingagent + name = "Puryfing Agent (10u)" + desc = "An expirmental pill." + icon_state = "pill2" + +/obj/item/weapon/reagent_containers/pill/puryfingagent/Initialize() + . = ..() + reagents.add_reagent("puryfingagent", 10) + color = reagents.get_color() \ No newline at end of file diff --git a/modular_chomp/code/modules/food/food/snacks/meat.dm b/modular_chomp/code/modules/food/food/snacks/meat.dm new file mode 100644 index 0000000000..ab4a1f8a24 --- /dev/null +++ b/modular_chomp/code/modules/food/food/snacks/meat.dm @@ -0,0 +1,56 @@ +/obj/item/weapon/reagent_containers/food/snacks/deathclawmeat + name = "Death claw Meat" + desc = "A slice from a deathclaw" + icon_state = "meat" + center_of_mass = list("x"=17, "y"=16) + nutriment_amt = 3 + nutriment_desc = list("protein" = 6, "deathblood" = 6) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/deathclawmeat/Initialize() + . = ..() + reagents.add_reagent("protein", 6) + reagents.add_reagent("deathblood", 6) + +/obj/item/weapon/reagent_containers/food/snacks/dragonmeat + name = "Dragon Meat" + desc = "A slice from a mighty dragon" + icon_state = "meat" + center_of_mass = list("x"=17, "y"=16) + nutriment_amt = 3 + nutriment_desc = list("protein" = 6, "liquidfire" = 6) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/deathclawmeat/Initialize() + . = ..() + reagents.add_reagent("protein", 6) + reagents.add_reagent("liquidfire", 6) + +/obj/item/weapon/reagent_containers/food/snacks/phorondragonmeat + name = "Phoron Dragon Meat" + desc = "A slice from a mighty dragon" + icon_state = "meat" + center_of_mass = list("x"=17, "y"=16) + nutriment_amt = 3 + nutriment_desc = list("protein" = 6, "neoliquidfire" = 6, "phoron" = 3) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/deathclawmeat/Initialize() + . = ..() + reagents.add_reagent("protein", 6) + reagents.add_reagent("neoliquidfire", 6) + reagents.add_reagent("phoron", 3) + +/obj/item/weapon/reagent_containers/food/snacks/metroidmeat + name = "Metroid Hude" + desc = "A slice from a metroid" + icon_state = "meat" + center_of_mass = list("x"=17, "y"=16) + nutriment_amt = 3 + nutriment_desc = list("protein" = 3, "liquidlife" = 3) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/deathclawmeat/Initialize() + . = ..() + reagents.add_reagent("protein", 3) + reagents.add_reagent("liquidlife", 3) \ No newline at end of file diff --git a/modular_chomp/code/modules/materials/materials/organic/animal_products.dm b/modular_chomp/code/modules/materials/materials/organic/animal_products.dm index 18c7b68c27..84dfb29d49 100644 --- a/modular_chomp/code/modules/materials/materials/organic/animal_products.dm +++ b/modular_chomp/code/modules/materials/materials/organic/animal_products.dm @@ -1,3 +1,44 @@ /datum/material/chitin protectiveness = 25 - reflectivity = 0.05 \ No newline at end of file + reflectivity = 0.05 + + +/datum/material/deathclawscale + name = "deathclaw scale" + icon_colour = "#8d6653" + icon_base = "solid" + icon_reinf = "reinf_mesh" + hardness = 50 + protectiveness = 40 + reflectivity = 0.4 + conductivity = 1 + +/datum/material/dragonscale + name = "dragon scale" + icon_colour = "#ffffff" + icon_base = "solid" + icon_reinf = "reinf_mesh" + hardness = 50 + protectiveness = 75 + reflectivity = 0.6 + conductivity = 1 + +/datum/material/phorondragonscale + name = "phoron dragon scale" + icon_colour = "#8d6653" + icon_base = "solid" + icon_reinf = "reinf_mesh" + hardness = 10 + protectiveness = 80 + reflectivity = 0.8 + conductivity = 1 + +/datum/material/xenochitin + name = "xenochitin" + icon_colour = "#8d6653" + icon_base = "solid" + icon_reinf = "reinf_mesh" + hardness = 40 + protectiveness = 40 + reflectivity = 0.6 + conductivity = 0.5 \ No newline at end of file diff --git a/modular_chomp/code/modules/mob/living/simple_mob/butchering.dm b/modular_chomp/code/modules/mob/living/simple_mob/butchering.dm new file mode 100644 index 0000000000..e75e54b48c --- /dev/null +++ b/modular_chomp/code/modules/mob/living/simple_mob/butchering.dm @@ -0,0 +1,29 @@ +//I don't know how to add more material currently so uhhh, that will be for later. +/mob/living/simple_mob/vore/bigdragon + meat_type = /obj/item/weapon/reagent_containers/food/snacks/dragonmeat + + //butchery_loot = list(\ + /obj/item/stack/material/dragonscale = 2\ + ) + +/mob/living/simple_mob/vore/aggressive/dragon/virgo3b //phoron dragon + meat_type = /obj/item/weapon/reagent_containers/food/snacks/phorondragonmeat + + //butchery_loot = list(\ + /obj/item/stack/material/phorondragonscale = 2\ + ) + +/mob/living/simple_mob/animal/space/alien + //butchery_loot = list(\ + /obj/item/stack/material/xenochitin = 1\ + ) + +/mob/living/simple_mob/vore/aggressive/deathclaw + meat_type = /obj/item/weapon/reagent_containers/food/snacks/deathclawmeat + + //butchery_loot = list(\ + /obj/item/stack/material/deathclawscale = 1\ + ) + +/mob/living/simple_mob/metroid + meat_type = /obj/item/weapon/reagent_containers/food/snacks/metroidmeat \ No newline at end of file diff --git a/modular_chomp/code/modules/reagents/reactions/instant/instant.dm b/modular_chomp/code/modules/reagents/reactions/instant/instant.dm index b3bf92ea38..76d96eed55 100644 --- a/modular_chomp/code/modules/reagents/reactions/instant/instant.dm +++ b/modular_chomp/code/modules/reagents/reactions/instant/instant.dm @@ -23,3 +23,105 @@ /decl/chemical_reaction/instant/androgynorovir_bootleg result = "change_drug_intersex" + +//Chemist update +/decl/chemical_reaction/instant/livingagent + name = "Living Agent" + id = "livingagent" + result = "livingagent" + required_reagents = list("tricordrazine" = 1, "liquidlife" = 1, "sugar" = 1) + result_amount = 2 + +/decl/chemical_reaction/instant/preformancepeaker + name = "Preforamnce Peaker" + id = "preformancepeaker" + result = "preformancepeaker" + required_reagents = list("hyperzine" = 1, "liquidlife" = 1, "inaprovaline" = 1) + result_amount = 2 + +/decl/chemical_reaction/instant/burncard + name = "Burning Bicard" + id = "burncard" + result = "burncard" + required_reagents = list("liquidfire" = 1, "bicaridine" = 1, "oxygen" = 1) + result_amount = 2 + +/decl/chemical_reaction/instant/flamecure + name = "Flame Cure" + id = "flamecure" + result = "flamecure" + required_reagents = list("liquidfire" = 1, "myelamine" = 1, "kelotane" = 1) + result_amount = 2 + +/decl/chemical_reaction/instant/neotane + name = "Neo Kelotane" + id = "neotane" + result = "neotane" + required_reagents = list("neoliquidfire" = 1, "kelotane" = 1, "iron" = 1) + result_amount = 2 + +/decl/chemical_reaction/instant/bloodsealer + name = "Blood Sealer" + id = "bloodsealer" + result = "bloodsealer" + required_reagents = list("neoliquidfire" = 1, "glucose" = 1, "hydrogen" = 1) + result_amount = 2 + +/decl/chemical_reaction/instant/puryfingagent + name = "Puryfing Agent" + id = "puryfingagent" + result = "puryfingagent" + required_reagents = list("deathblood" = 1, "carthatoline" = 1, "hyronalin" = 1) + result_amount = 2 + +/decl/chemical_reaction/instant/cleansingagent + name = "Cleansing Agent" + id = "cleansingagent" + result = "cleansingagent" + required_reagents = list("deathblood" = 1, "hyronalin" = 1, "anti_toxin" = 1) + result_amount = 2 + +//tier 1 +/decl/chemical_reaction/instant/souldew + name = "souldew" + id = "souldew" + result = "souldew" + required_reagents = list("alkysine" = 1, "tricordrazine" = 1, "sulfur" = 1) + result_amount = 3 + +/decl/chemical_reaction/instant/quadcord + name = "quadcord" + id = "quadcord" + result = "quadcord" + required_reagents = list("tricordrazine" = 1, "phoron" = 1, "sacid" = 1) + result_amount = 3 + +//tier 2 +/decl/chemical_reaction/instant/juggernog + name = "juggernog" + id = "juggernog" + result = "juggernog" + required_reagents = list("paracetamol" = 1, "tramadol" = 1, "synaptizine" = 1, "mercury" = 1) + result_amount = 4 + +/decl/chemical_reaction/instant/curea + name = "curea" + id = "curea" + result = "curea" + required_reagents = list("anti_toxin" = 1, "adranol" = 1, "inaprovaline" = 1, "carbon" = 1) + result_amount = 4 + +//tier 3 +/decl/chemical_reaction/instant/liquidangel + name = "liquidangel" + id = "liquidangel" + result = "liquidangel" + required_reagents = list("bicard" = 1, "kelotane" = 1, "liquidlife" = 1, "carpotoxin" = 1, "quadcord" = 1, "cryptobiolin" = 1) + result_amount = 6 + +/decl/chemical_reaction/instant/phoneixbreath + name = "phoneixbreath" + id = "phoneixbreath" + result = "phoneixbreath" + required_reagents = list("vermicetol" = 1, "liquidlife" = 1, "neoliquidfire" = 1, "souldew" = 1, "phoron" = 1, "dermaline" = 1) + result_amount = 6 \ No newline at end of file diff --git a/modular_chomp/code/modules/reagents/reagents/medicine.dm b/modular_chomp/code/modules/reagents/reagents/medicine.dm index 62674cf23b..6e3e7a832c 100644 --- a/modular_chomp/code/modules/reagents/reagents/medicine.dm +++ b/modular_chomp/code/modules/reagents/reagents/medicine.dm @@ -62,3 +62,303 @@ M.change_gender_identity(gender_change) M.change_gender(gender_change) M << "You feel like a new person." //success + +//Chemist expansion +//deathblood +/datum/reagent/cleansingagent + name = "Puryfing Agent" + id = "cleansingagent" + description = "An agent that purges one's body of toxins." + reagent_state = LIQUID + color = "#225722" + scannable = 1 + overdose = REAGENTS_OVERDOSE + overdose_mod = 0 + +/datum/reagent/cleansingagent/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + var/chem_effective = 1 * M.species.chem_strength_heal + if(alien == IS_SLIME) + chem_effective = 0.66 + if(alien != IS_DIONA) + M.druggy = max(M.druggy, 5) + M.adjustToxLoss(-6 * removed * chem_effective) + M.radiation = max(M.radiation - 15 * removed * M.species.chem_strength_heal, 0) + M.accumulated_rads = max(M.accumulated_rads - 15 * removed * M.species.chem_strength_heal, 0) + if(prob(10)) + M.remove_a_modifier_of_type(/datum/modifier/poisoned) + +/datum/reagent/puryfingagent + name = "Puryfing Agent" + id = "puryfingagent" + description = "An agent that purges one's body of rads and toxins." + reagent_state = LIQUID + color = "#225722" + scannable = 1 + overdose = REAGENTS_OVERDOSE + overdose_mod = 0 + +/datum/reagent/puryfingagent/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + var/chem_effective = 1 * M.species.chem_strength_heal + if(alien == IS_SLIME) + chem_effective = 0.66 + if(alien != IS_DIONA) + M.adjustToxLoss(-6 * removed * chem_effective) + M.radiation = max(M.radiation - 15 * removed * M.species.chem_strength_heal, 0) + M.accumulated_rads = max(M.accumulated_rads - 15 * removed * M.species.chem_strength_heal, 0) + +//liquid fire +/datum/reagent/burncard + name = "Burning Bicaridine" + id = "burncard" + description = "A more powerful variation of bicard that also burns the subject." + taste_description = "bitterness" + taste_mult = 3 + reagent_state = LIQUID + color = "#BF0000" + overdose = REAGENTS_OVERDOSE + overdose_mod = 1.25 + scannable = 1 + +/datum/reagent/burncard/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + var/chem_effective = 1 * M.species.chem_strength_heal + if(alien == IS_SLIME) + chem_effective = 0.75 + if(alien != IS_DIONA) + M.heal_organ_damage(6 * removed * chem_effective * chem_effective, -1 * removed) + +/datum/reagent/burncard/overdose(var/mob/living/carbon/M, var/alien, var/removed) + ..() + var/wound_heal = 3 * removed + M.eye_blurry = min(M.eye_blurry + wound_heal, 250) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + for(var/obj/item/organ/external/O in H.bad_external_organs) + for(var/datum/wound/W in O.wounds) + if(W.bleeding()) + W.damage = max(W.damage - wound_heal, 0) + if(W.damage <= 0) + O.wounds -= W + if(W.internal) + W.damage = max(W.damage - wound_heal, 0) + if(W.damage <= 0) + O.wounds -= W + +/datum/reagent/flamecure + name = "Flame Cure" + id = "flame" + description = "Used to rapidly clot internal hemorrhages by burning the wounded areas" + reagent_state = LIQUID + color = "#4246C7" + overdose = REAGENTS_OVERDOSE * 0.5 + scannable = 1 + var/repair_strength = 9 + +/datum/reagent/flamecure/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + if(alien == IS_DIONA) + return + M.eye_blurry = min(M.eye_blurry + (repair_strength * removed), 250) + M.heal_organ_damage(0, -1 * removed) + if(ishuman(M)) + M.heal_organ_damage(0, -1 * removed) + var/mob/living/carbon/human/H = M + var/wound_heal = removed * repair_strength + for(var/obj/item/organ/external/O in H.bad_external_organs) + for(var/datum/wound/W in O.wounds) + if(W.bleeding()) + W.damage = max(W.damage - wound_heal, 0) + if(W.damage <= 0) + O.wounds -= W + if(W.internal) + W.damage = max(W.damage - wound_heal, 0) + if(W.damage <= 0) + O.wounds -= W + +//neoliquidfire +/datum/reagent/neotane + name = "Neo Kelotane" + id = "neotane" + description = "An advancment of kelotane that scars and breaks apart the users flesh to remove the burnt tissue." + taste_description = "bitterness" + reagent_state = LIQUID + color = "#FFA800" + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/neotane/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + var/chem_effective = 1 * M.species.chem_strength_heal + if(alien == IS_SLIME) + chem_effective = 0.5 + M.adjustBruteLoss(3 * removed) + if(alien != IS_DIONA) + M.heal_organ_damage(-1 * removed, 6 * removed * chem_effective * chem_effective) + +/datum/reagent/bloodsealer + name = "Blood Sealer" + id = "bloodsealer" + description = "A strange chemical that will stablize bloodflow by burning the subject" + taste_description = "bitterness" + reagent_state = LIQUID + color = "#00BFFF" + overdose = REAGENTS_OVERDOSE + scannable = 1 + +/datum/reagent/bloodsealer/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + if(alien != IS_DIONA) + M.add_chemical_effect(CE_STABLE, 25) + M.heal_organ_damage(0, -1 * removed) + +//meteroidliquid +/datum/reagent/livingagent + name = "Living Agent" + id = "livingagent" + description = "Living an agent, by utlizing the bristling energy of meteroids. It does make the body more senstive to stimulus." + taste_description = "bitterness" + reagent_state = LIQUID + color = "#8040FF" + scannable = 1 + overdose = REAGENTS_OVERDOSE * 3 + +/datum/reagent/livingagent/overdose(var/mob/living/carbon/M, var/alien) + ..() + M.druggy = max(M.druggy, 5) + M.Confuse(5) + //YW ADDITIONS END + +/datum/reagent/livingagent/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + if(alien != IS_DIONA) + var/chem_effective = 1 * M.species.chem_strength_heal + if(alien == IS_SLIME) + chem_effective = 0.5 + M.adjustOxyLoss(-5 * removed * chem_effective) + M.heal_organ_damage(2 * removed, 2 * removed * chem_effective) + M.adjustToxLoss(-4 * removed * chem_effective) + M.add_chemical_effect(CE_PAINKILLER, -10 * M.species.chem_strength_pain) + +/datum/reagent/preformancepeaker + name = "Preformance Peaker" + id = "preformancepeaker" + description = "A chemical created to bring a body to peak condition except it's highly toxic" + taste_description = "bitterness" + reagent_state = LIQUID + color = "#8040FF" + scannable = 1 + overdose = REAGENTS_OVERDOSE * 0.5 + +/datum/reagent/preformancepeaker/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + M.add_chemical_effect(CE_SPEEDBOOST, 0.5) + M.AdjustParalysis(-1) + M.AdjustStunned(-1) + M.AdjustWeakened(-1) + M.add_chemical_effect(CE_PAINKILLER, 10 * M.species.chem_strength_pain) + M.adjustToxLoss(15 * removed) + +//advanced crafting +//tier 1 +/datum/reagent/souldew + name = "Soul Dew" + id = "souldew" + description = "An expirmental drug that soley works upon dead bodies" + taste_description = "ash" + reagent_state = LIQUID + color = "#FFFFFF" + scannable = 1 + overdose = REAGENTS_OVERDOSE * 2 + affects_dead = TRUE + +/datum/reagent/souldew/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + var/chem_effective = 1 * M.species.chem_strength_heal + if(M.stat == DEAD) + M.adjustOxyLoss(-3 * removed * chem_effective) + M.heal_organ_damage(3 * removed * chem_effective, 3 * removed * chem_effective) + M.adjustToxLoss(-3 * removed * chem_effective) + +/datum/reagent/quadcord + name = "quadcord" + id = "quadcord" + description = "An expirmental drug that is meant to further enhance tricord" + taste_description = "bitterness" + reagent_state = LIQUID + color = "#FFFFFF" + scannable = 1 + overdose = REAGENTS_OVERDOSE * 2 +/datum/reagent/quadcord/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + if(alien != IS_DIONA) + var/chem_effective = 1 * M.species.chem_strength_heal + if(alien == IS_SLIME) + chem_effective = 0.5 + M.adjustOxyLoss(-0.5 * removed * chem_effective) + M.heal_organ_damage(0.5 * removed * chem_effective, 0.5 * removed * chem_effective) + M.adjustToxLoss(-0.5 * removed * chem_effective) + M.adjustCloneLoss(-0.5 * removed) + +//tier 2 +/datum/reagent/juggernog + name = "juggernog" + id = "juggernog" + description = "An expirmental that toughens the body to blows and knockdown" + taste_description = "bitterness" + reagent_state = LIQUID + color = "#FFFFFF" + scannable = 1 + overdose = REAGENTS_OVERDOSE * 0.25 + +/datum/reagent/juggernog/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + M.AdjustParalysis(-1) + M.AdjustStunned(-1) + M.AdjustWeakened(-1) + +/datum/reagent/curea + name = "curea" + id = "curea" + description = "An expirmental that removes many aligments, such as poison and stiffing of muscles via frost" + taste_description = "bitterness" + reagent_state = LIQUID + color = "#FFFFFF" + scannable = 1 + overdose = REAGENTS_OVERDOSE * 0.5 + +/datum/reagent/curea/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + M.remove_a_modifier_of_type(/datum/modifier/poisoned) + M.remove_a_modifier_of_type(/datum/modifier/chilled) + M.remove_a_modifier_of_type(/datum/modifier/doomed) + M.remove_a_modifier_of_type(/datum/modifier/invulnerable) + M.remove_a_modifier_of_type(/datum/modifier/elemental_vulnerability) + M.remove_a_modifier_of_type(/datum/modifier/grievous_wounds) + M.remove_a_modifier_of_type(/datum/modifier/deep_wounds) + M.remove_a_modifier_of_type(/datum/modifier/hivebot_weaken) + M.remove_a_modifier_of_type(/datum/modifier/fire) + +//tier 3 +/datum/reagent/modapplying/liquidangel + name = "Liquid Healer" + id = "liquidangel" + description = "An expirmental that mimics rapid regeneration seen in squishy creatures." + taste_description = "sweet" + reagent_state = LIQUID + color = "#FFFFFF" + scannable = 1 + overdose = REAGENTS_OVERDOSE * 0.25 + modifier_to_add = /datum/modifier/aura/slime_heal + modifier_duration = 2 SECONDS + +/datum/reagent/phoneixbreath + name = "Phoneix Breath" + id = "phoneixbreath" + description = "An improvement on the orginal soul dew chemical" + taste_description = "ash" + reagent_state = LIQUID + color = "#FFFFFF" + scannable = 1 + overdose = REAGENTS_OVERDOSE + affects_dead = TRUE + +/datum/reagent/phoneixbreath/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + var/chem_effective = 1 * M.species.chem_strength_heal + if(M.stat == DEAD) + M.adjustOxyLoss(-3 * removed * chem_effective) + M.heal_organ_damage(3 * removed * chem_effective, 3 * removed * chem_effective) + M.adjustToxLoss(-3 * removed * chem_effective) + M.adjustOxyLoss(-2 * removed * chem_effective) + M.heal_organ_damage(2 * removed * chem_effective, 3 * removed * chem_effective) + M.adjustToxLoss(-2 * removed * chem_effective) + M.add_chemical_effect(CE_PAINKILLER, 10 * M.species.chem_strength_pain) \ No newline at end of file diff --git a/modular_chomp/code/modules/reagents/reagents/toxin.dm b/modular_chomp/code/modules/reagents/reagents/toxin.dm new file mode 100644 index 0000000000..2c64b0bce3 --- /dev/null +++ b/modular_chomp/code/modules/reagents/reagents/toxin.dm @@ -0,0 +1,36 @@ +//Chemist expansion +/datum/reagent/toxin/deathblood + name = "Irradiating Blood" + id = "deathblood" + description = "Blood of deathclaw." + taste_description = "plastic" + reagent_state = LIQUID + color = "#CF3600" + strength = 8 + +/datum/reagent/toxin/liquidfire + name = "Liquid Fire" + id = "liquidfire" + description = "Blood of dragon." + taste_description = "plastic" + reagent_state = LIQUID + color = "#CF3600" + strength = 8 + +/datum/reagent/toxin/neonliquidfire + name = "Neon Liquid Fire" + id = "neoliquidfire" + description = "Blood of dragon." + taste_description = "plastic" + reagent_state = LIQUID + color = "#CF3600" + strength = 8 + +/datum/reagent/toxin/liquidlife + name = "Liquid Life" + id = "liquidlife" + description = "Life Drained from a victim, and processed into a liquid form, ." + taste_description = "plastic" + reagent_state = LIQUID + color = "#CF3600" + strength = 0 \ No newline at end of file diff --git a/modular_chomp/icons/obj/storage.dmi b/modular_chomp/icons/obj/storage.dmi new file mode 100644 index 0000000000..55f01dea94 Binary files /dev/null and b/modular_chomp/icons/obj/storage.dmi differ diff --git a/vorestation.dme b/vorestation.dme index a9d7ffb688..8996fbf484 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -4564,6 +4564,7 @@ #include "modular_chomp\code\game\objects\items\devices\flipper.dm" #include "modular_chomp\code\game\objects\items\devices\vacpack.dm" #include "modular_chomp\code\game\objects\items\weapons\capture_crystal.dm" +#include "modular_chomp\code\game\objects\items\weapons\storage\firstaid.dm" #include "modular_chomp\code\game\objects\random\mapping.dm" #include "modular_chomp\code\game\objects\structures\desert_planet_structures.dm" #include "modular_chomp\code\game\objects\structures\gargoyle.dm" @@ -4606,6 +4607,7 @@ #include "modular_chomp\code\modules\emotes\definitions\audible_pain.dm" #include "modular_chomp\code\modules\food\drinkgglass\metaglass.dm" #include "modular_chomp\code\modules\food\food\drinks\bottle.dm" +#include "modular_chomp\code\modules\food\food\snacks\meat.dm" #include "modular_chomp\code\modules\materials\materials\gems.dm" #include "modular_chomp\code\modules\materials\materials\metals\metals.dm" #include "modular_chomp\code\modules\materials\materials\organic\animal_products.dm" @@ -4654,6 +4656,7 @@ #include "modular_chomp\code\modules\mob\living\silicon\robot\drone\swarm\swarm_abilities.dm" #include "modular_chomp\code\modules\mob\living\silicon\robot\drone\swarm\swarm_items.dm" #include "modular_chomp\code\modules\mob\living\silicon\robot\drone\swarm\swarm_types.dm" +#include "modular_chomp\code\modules\mob\living\simple_mob\butchering.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\donteatbossmonsters.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\simple_mob.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\simple_mob_abilities.dm" @@ -4711,6 +4714,7 @@ #include "modular_chomp\code\modules\reagents\reactions\instant\instant.dm" #include "modular_chomp\code\modules\reagents\reagents\food_drinks.dm" #include "modular_chomp\code\modules\reagents\reagents\medicine.dm" +#include "modular_chomp\code\modules\reagents\reagents\toxin.dm" #include "modular_chomp\code\modules\recycling\v_garbosystem.dm" #include "modular_chomp\code\modules\research\mechfab_designs.dm" #include "modular_chomp\code\modules\research\designs\misc.dm"