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

Gene-Mod Mutant Colors #108

Merged
merged 9 commits into from
Sep 28, 2024
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion code/__DEFINES/~doppler_defines/is_helpers.dm
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
//Species
#define isprimitive(A) (is_species(A, /datum/species/human/genemod/primitive))
#define isprimitive(A) (is_species(A, /datum/species/genemod/primitive))
//Customization bases
#define isinsectoid(A) (is_species(A, /datum/species/insectoid))
#define issnail(A) (is_species(A, /datum/species/snail))
Expand Down
8 changes: 4 additions & 4 deletions modular_doppler/hearthkin/primitive_genemod/code/objects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
var/being_used = FALSE

/obj/item/anointing_oil/attack(mob/living/target_mob, mob/living/user, params)
if (!is_species(user, /datum/species/human/genemod/primitive))
if (!is_species(user, /datum/species/genemod/primitive))
to_chat(user, span_warning("You have no idea what this disgusting concoction is used for."))
return
if(being_used || !ismob(target_mob)) //originally this was going to check if the mob was friendly, but if an icecat wants to name some terror mob while it's tearing chunks out of them, why not?
Expand Down Expand Up @@ -48,7 +48,7 @@

/obj/item/anointing_oil/examine(mob/user)
. = ..()
if(is_species(user, /datum/species/human/genemod/primitive))
if(is_species(user, /datum/species/genemod/primitive))
. += span_info("Using this on the local wildlife will allow you to give them a name.")

/datum/crafting_recipe/anointing_oil
Expand All @@ -74,7 +74,7 @@
w_class = WEIGHT_CLASS_TINY

/obj/item/frozen_breath/interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers)
if (!is_species(user, /datum/species/human/genemod/primitive))
if (!is_species(user, /datum/species/genemod/primitive))
to_chat(user, span_warning("You have no idea how to use this freezing concoction."))
return

Expand All @@ -94,7 +94,7 @@

/obj/item/frozen_breath/examine(mob/user)
. = ..()
if(is_species(user, /datum/species/human/genemod/primitive))
if(is_species(user, /datum/species/genemod/primitive))
. += span_info("Using this on a pair of organic lungs transforms them into hardy lungs. This will remove any other special features from the old lungs, if there were any.")

/datum/crafting_recipe/frozen_breath
Expand Down
4 changes: 2 additions & 2 deletions modular_doppler/hearthkin/primitive_genemod/code/spawner.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
prompt_name = "icemoon dweller"
icon = 'icons/mob/simple/lavaland/nest.dmi'
icon_state = "hole"
mob_species = /datum/species/human/genemod/primitive
mob_species = /datum/species/genemod/primitive
outfit = /datum/outfit/primitive_genemod
density = FALSE
you_are_text = "You are an icemoon dweller."
Expand All @@ -20,7 +20,7 @@
/// The team the spawner will assign players to and use to keep track of people that have already used the spawner
var/datum/team/primitive_genemods/team

restricted_species = list(/datum/species/human/genemod/primitive)
restricted_species = list(/datum/species/genemod/primitive)
infinite_use = TRUE
deletes_on_zero_uses_left = FALSE

Expand Down
Original file line number Diff line number Diff line change
@@ -1,44 +1,44 @@
/mob/living/carbon/human/species/genemod
race = /datum/species/human/genemod
race = /datum/species/genemod

/datum/species/human/genemod
/datum/species/genemod
name = "Gene-Mod"
id = SPECIES_GENEMOD
preview_outfit = /datum/outfit/genemod_preview
examine_limb_id = SPECIES_HUMAN
inherent_traits = list(
TRAIT_ANIMALISTIC,
TRAIT_USES_SKINTONES,
TRAIT_MUTANT_COLORS,
)
changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_PRIDE | MIRROR_MAGIC | RACE_SWAP | ERT_SPAWN | SLIME_EXTRACT

/datum/outfit/genemod_preview
name = "Gene-Mod (Species Preview)"
uniform = /obj/item/clothing/under/dress/sundress

/datum/species/human/genemod/get_physical_attributes()
/datum/species/genemod/get_physical_attributes()
return "N/a."

/datum/species/human/genemod/get_species_description()
/datum/species/genemod/get_species_description()
return "N/a."

/datum/species/human/genemod/get_species_lore()
/datum/species/genemod/get_species_lore()
return list(
"N/a.",
)

/datum/species/human/genemod/on_species_gain(mob/living/carbon/human/target, datum/species/old_species, pref_load)
/datum/species/genemod/on_species_gain(mob/living/carbon/human/target, datum/species/old_species, pref_load)
apply_animal_trait(target, find_animal_trait(target))
return ..()

/datum/species/human/genemod/prepare_human_for_preview(mob/living/carbon/human/human_for_preview)
/datum/species/genemod/prepare_human_for_preview(mob/living/carbon/human/human_for_preview)
human_for_preview.dna.ear_type = DOG
human_for_preview.dna.features["ears"] = "Fold"
human_for_preview.dna.features["ears_color_1"] = "#4E3E30"
human_for_preview.dna.features["ears_color_2"] = "#F4B1C8"
human_for_preview.set_haircolor("#3a2d22", update = FALSE)
human_for_preview.set_hairstyle("Short twintails", update = TRUE)
human_for_preview.skin_tone = "mixed3"
human_for_preview.dna.features["mcolor"] = "#725547"
human_for_preview.eye_color_left = "#442B12"
human_for_preview.eye_color_right = "#442B12"
regenerate_organs(human_for_preview)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/mob/living/carbon/human/species/genemod/primitive
race = /datum/species/human/genemod/primitive
race = /datum/species/genemod/primitive

/datum/language_holder/primitive_genemod
understood_languages = list(
Expand All @@ -12,7 +12,7 @@
)
selected_language = /datum/language/primitive_genemod

/datum/species/human/genemod/primitive
/datum/species/genemod/primitive
name = "Primitive Gene-Mod"
id = SPECIES_GENEMOD_PRIMITIVE
preview_outfit = /datum/outfit/genemod_primitive_preview
Expand Down Expand Up @@ -40,7 +40,7 @@
neck = /obj/item/clothing/neck/scarf/primitive_genemod_scarf
back = /obj/item/forging/reagent_weapon/axe/fake_copper

/datum/species/human/genemod/primitive/on_species_gain(mob/living/carbon/new_primitive, datum/species/old_species, pref_load)
/datum/species/genemod/primitive/on_species_gain(mob/living/carbon/new_primitive, datum/species/old_species, pref_load)
. = ..()
var/mob/living/carbon/human/hearthkin = new_primitive
if(!istype(hearthkin))
Expand All @@ -53,14 +53,14 @@
mutation.mutadone_proof = TRUE
mutation.instability = 0

/datum/species/human/genemod/primitive/on_species_loss(mob/living/carbon/former_primitive, datum/species/new_species, pref_load)
/datum/species/genemod/primitive/on_species_loss(mob/living/carbon/former_primitive, datum/species/new_species, pref_load)
. = ..()
var/mob/living/carbon/human/hearthkin = former_primitive
if(!istype(hearthkin))
return
hearthkin.dna.remove_mutation(/datum/mutation/human/olfaction)

/datum/species/human/genemod/primitive/prepare_human_for_preview(mob/living/carbon/human/human_for_preview)
/datum/species/genemod/primitive/prepare_human_for_preview(mob/living/carbon/human/human_for_preview)
human_for_preview.dna.ear_type = CAT
human_for_preview.dna.features["ears"] = "Coeurl"
human_for_preview.dna.features["ears_color_1"] = "#e9eff5"
Expand All @@ -74,15 +74,15 @@
regenerate_organs(human_for_preview)
human_for_preview.update_body(is_creating = TRUE)

/datum/species/human/genemod/primitive/get_species_description()
/datum/species/genemod/primitive/get_species_description()
return list(
"Genetically modified humanoids believed to be descendants of a now centuries old colony \
ship from the pre-bluespace travel era. Still having at least some human traits, they \
are most comparable to today's felinids with most sporting features likely spliced from \
the icemoon's many fauna."
)

/datum/species/human/genemod/primitive/get_species_lore()
/datum/species/genemod/primitive/get_species_lore()
return list(
"The Hearthkin are a culture of disparate Scandinavian groups all sharing a common origin \
as descendents from demihuman genemodders aboard the good ship Stjarndrakkr, or Star Dragon; \
Expand Down
8 changes: 4 additions & 4 deletions modular_doppler/reagent_forging/code/forge.dm
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@

. += span_notice("<br>[src] is currently [forge_temperature] degrees hot, going towards [target_temperature] degrees.<br>")

if(reagent_forging && (is_species(user, /datum/species/lizard/ashwalker) || is_species(user, /datum/species/human/genemod/primitive)))
if(reagent_forging && (is_species(user, /datum/species/lizard/ashwalker) || is_species(user, /datum/species/genemod/primitive)))
. += span_warning("[src] has a fine gold trim, it is ready to imbue chemicals into reagent objects.")

return .
Expand Down Expand Up @@ -408,7 +408,7 @@

if(SKILL_LEVEL_LEGENDARY)
if(!forced)
if(is_species(user, /datum/species/lizard/ashwalker) || is_species(user, /datum/species/human/genemod/primitive))
if(is_species(user, /datum/species/lizard/ashwalker) || is_species(user, /datum/species/genemod/primitive))
to_chat(user, span_notice("With just the right heat treating technique, metal could be made to accept reagents..."))
create_reagent_forge()
if(forge_level == FORGE_LEVEL_MASTER)
Expand Down Expand Up @@ -573,7 +573,7 @@
return

var/mob/living/carbon/human/human_user = user
if(!is_species(human_user, /datum/species/lizard/ashwalker) && !is_species(human_user, /datum/species/human/genemod/primitive))
if(!is_species(human_user, /datum/species/lizard/ashwalker) && !is_species(human_user, /datum/species/genemod/primitive))
to_chat(user, span_danger("It is impossible for you to imbue!")) //maybe remove (ashwalkers & icecats only) after some time
return

Expand Down Expand Up @@ -623,7 +623,7 @@
return

var/mob/living/carbon/human/human_user = user
if(!is_species(human_user, /datum/species/lizard/ashwalker) && !is_species(human_user, /datum/species/human/genemod/primitive))
if(!is_species(human_user, /datum/species/lizard/ashwalker) && !is_species(human_user, /datum/species/genemod/primitive))
to_chat(user, span_danger("It is impossible for you to imbue!")) //maybe remove (ashwalkers & icecats only) after some time
return

Expand Down
Loading