Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Genetics Nerf; Butchers Space Adaption Into a Two Gene Combo (Plus a New Gene!) #91

Merged
merged 12 commits into from
Sep 22, 2021
1 change: 1 addition & 0 deletions code/datums/mutations/space_adaptation.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
text_gain_indication = "<span class='notice'>Your body feels warm!</span>"
time_coeff = 5
instability = 30
locked = TRUE //NON-MODULAR CHANGE; should block this mutation from appearing in the consoles

/datum/mutation/human/space_adaptation/New(class_ = MUT_OTHER, timer, datum/mutation/human/copymut)
..()
Expand Down
5 changes: 5 additions & 0 deletions jollystation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -3862,6 +3862,10 @@
#include "jollystation_modules\code\datums\id_trim\jobs.dm"
#include "jollystation_modules\code\datums\keybinding\communication.dm"
#include "jollystation_modules\code\datums\mood_events\reagent_mood_events.dm"
#include "jollystation_modules\code\datums\mutations\_combined.dm"
#include "jollystation_modules\code\datums\mutations\cold_adaptation.dm"
#include "jollystation_modules\code\datums\mutations\hot_adaptation.dm"
#include "jollystation_modules\code\datums\mutations\vacuum_immunity.dm"
#include "jollystation_modules\code\datums\pain\pain.dm"
#include "jollystation_modules\code\datums\pain\pain_helpers.dm"
#include "jollystation_modules\code\datums\quirks\_quirk_blacklist.dm"
Expand All @@ -3875,6 +3879,7 @@
#include "jollystation_modules\code\game\objects\unique_examine_items.dm"
#include "jollystation_modules\code\game\objects\effects\landmarks.dm"
#include "jollystation_modules\code\game\objects\effects\decals\turfdecal\textured.dm"
#include "jollystation_modules\code\game\objects\items\dna_injector.dm"
#include "jollystation_modules\code\game\objects\items\locker_spawners.dm"
#include "jollystation_modules\code\game\objects\items\devices\PDA\PDA_types.dm"
#include "jollystation_modules\code\game\objects\items\devices\radio\encryptionkey.dm"
Expand Down
1 change: 1 addition & 0 deletions jollystation_modules/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,7 @@ To prevent me from accidentally accept incoming on files with module changes, I'
- code\datums\dna.dm
- code\datums\id_trim\jobs.dm
- code\datums\mapgen\Cavegens\LavalandGenerator.dm
- code\datums\mutations\space_adaptation.dm
- code\datums\greyscale\json_configs\plushie_lizard.json
- code\game\world.dm
- code\game\gamemodes\objective_items.dm
Expand Down
6 changes: 6 additions & 0 deletions jollystation_modules/code/__DEFINES/DNA.dm
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
//the real memes

//Species Defines
#define SPECIES_SKRELL "skrell"
#define SPECIES_REPLOID "reploid"

//Mutation Defines
#define COLD_IMMUNITY /datum/mutation/human/cold_adaptation
#define HOT_IMMUNITY /datum/mutation/human/heat_adaptation
#define VACUUM_IMMUNITY /datum/mutation/human/vacuum_adaptation
5 changes: 5 additions & 0 deletions jollystation_modules/code/datums/mutations/_combined.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
//Gene combos
//Space adaptaion is a gene combo now
/datum/generecipe/space_adapt
required = "/datum/mutation/human/cold_adaptation; /datum/mutation/human/vacuum_adaptation"
result = SPACEMUT
21 changes: 21 additions & 0 deletions jollystation_modules/code/datums/mutations/cold_adaptation.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
//Cold immunity
/datum/mutation/human/cold_adaptation
name = "Frigid Adaptation"
desc = "A pecuilar mutation that allows the host to be completely resistant to absolute zero."
quality = POSITIVE
difficulty = 12
text_gain_indication = "<span class='notice'>Your body feels warm!</span>"
time_coeff = 5
instability = 5


/datum/mutation/human/cold_adaptation/on_acquiring(mob/living/carbon/human/owner)
if(..())
return
ADD_TRAIT(owner, TRAIT_RESISTCOLD, GENETIC_MUTATION)

/datum/mutation/human/cold_adaptation/on_losing(mob/living/carbon/human/owner)
if(..())
return
REMOVE_TRAIT(owner, TRAIT_RESISTCOLD, GENETIC_MUTATION)

21 changes: 21 additions & 0 deletions jollystation_modules/code/datums/mutations/hot_adaptation.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
//Heat immunity
/datum/mutation/human/heat_adaptation
name = "Swealtering Adaptation"
desc = "A pecuilar mutation that allows the host to be completely resistant to the hottest tempeatures known to man."
quality = POSITIVE
difficulty = 12
text_gain_indication = "<span class='notice'>Your body feels cool!</span>"
time_coeff = 5
instability = 10


/datum/mutation/human/heat_adaptation/on_acquiring(mob/living/carbon/human/owner)
if(..())
return
ADD_TRAIT(owner, TRAIT_RESISTHEAT, GENETIC_MUTATION)

/datum/mutation/human/heat_adaptation/on_losing(mob/living/carbon/human/owner)
if(..())
return
REMOVE_TRAIT(owner, TRAIT_RESISTHEAT, GENETIC_MUTATION)

21 changes: 21 additions & 0 deletions jollystation_modules/code/datums/mutations/vacuum_immunity.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
//Vacuum immunity
/datum/mutation/human/vacuum_adaptation
name = "Vacuum Adaptation"
desc = "A mysterious mutation that allows the host to be completely resistant the impervious vacuum of space."
quality = POSITIVE
difficulty = 24
text_gain_indication = "<span class='notice'>Your body feels cool!</span>"
time_coeff = 5
instability = 30


/datum/mutation/human/vacuum_adaptation/on_acquiring(mob/living/carbon/human/owner)
if(..())
return
ADD_TRAIT(owner, TRAIT_RESISTLOWPRESSURE, GENETIC_MUTATION)

/datum/mutation/human/vacuum_adaptation/on_losing(mob/living/carbon/human/owner)
if(..())
return
REMOVE_TRAIT(owner, TRAIT_RESISTLOWPRESSURE, GENETIC_MUTATION)

38 changes: 38 additions & 0 deletions jollystation_modules/code/game/objects/items/dna_injector.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
//Mutators
//Cold mutator
/obj/item/dnainjector/coldmut
name = "\improper Cold Immunity injector"
desc = "Take a stroll on the Ice planet."
add_mutations = list(COLD_IMMUNITY)

//Hot mutator
/obj/item/dnainjector/hotmut
name = "\improper Heat Immunity injector"
desc = "Take a stroll on Lavaland."
add_mutations = list(HOT_IMMUNITY)

//Vacuum mutator
/obj/item/dnainjector/spacemut
name = "\improper Vacuum Immunity injector"
desc = "Take a stroll through space. Lungs required."
add_mutations = list(VACUUM_IMMUNITY)

//Anti-Mutators; Main code has these so why not?

//AntiCold mutator
/obj/item/dnainjector/anticoldmut
name = "\improper Anti-Cold Immunity injector"
desc = "Freeze to death."
remove_mutations = list(COLD_IMMUNITY)

//AntiHot mutator
/obj/item/dnainjector/antihotmut
name = "\improper Anti-Heat Immunity injector"
desc = "Burn to Hell."
remove_mutations = list(HOT_IMMUNITY)

//AntiVacuum mutator
/obj/item/dnainjector/antispacemut
name = "\improper Anti-Vacuum Immunity injector"
desc = "Crumble up like a used juice pouch."
remove_mutations = list(VACUUM_IMMUNITY)