Skip to content

Commit

Permalink
new genemods that will surely not start a riot
Browse files Browse the repository at this point in the history
  • Loading branch information
Skies-Of-Blue committed Jun 7, 2024
1 parent 40a0a60 commit e4a46ae
Show file tree
Hide file tree
Showing 7 changed files with 188 additions and 9 deletions.
38 changes: 33 additions & 5 deletions code/modules/mob/dead/new_player/sprite_accessories/ears.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@
name = "None"
icon_state = "none"

/datum/sprite_accessory/ears/elf
name = "Elf"
icon_state = "elf"
secondary_color = FALSE
color_src = SKINCOLORS

/datum/sprite_accessory/ears/cat
icon = 'icons/mob/species/misc/cat.dmi'
name = "Cat"
Expand All @@ -21,15 +27,37 @@
color_src = HAIR
image_alpha = 150

/datum/sprite_accessory/ears/dog
icon = 'icons/mob/species/misc/dog.dmi'
name = "Dog"
icon_state = "dog"
secondary_color = FALSE
color_src = HAIR

/datum/sprite_accessory/ears/fox
icon = 'icons/mob/species/misc/fox.dmi'
name = "Fox"
icon_state = "fox"
secondary_color = TRUE
color_src = HAIR

/datum/sprite_accessory/ears/elf
name = "Elf"
icon_state = "elf"
secondary_color = FALSE
color_src = SKINCOLORS
/datum/sprite_accessory/ears/rabbit
icon = 'icons/mob/species/misc/rabbit.dmi'
name = "Rabbit"
icon_state = "bunny"
secondary_color = TRUE
color_src = HAIR

/datum/sprite_accessory/ears/rabbit/bent
icon = 'icons/mob/species/misc/rabbit.dmi'
name = "Bent Rabbit"
icon_state = "bunny_bent"
secondary_color = TRUE
color_src = HAIR

/datum/sprite_accessory/ears/rabbit/floppy
icon = 'icons/mob/species/misc/rabbit.dmi'
name = "Floppy Rabbit"
icon_state = "bunny_floppy"
secondary_color = TRUE
color_src = HAIR
18 changes: 18 additions & 0 deletions code/modules/mob/dead/new_player/sprite_accessories/tails.dm
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,18 @@
color_src = HAIR
image_alpha = 150

/datum/sprite_accessory/tails/human/dog
icon = 'icons/mob/species/misc/dog.dmi'
name = "Dog"
icon_state = "dog"
color_src = HAIR

/datum/sprite_accessory/tails_animated/human/dog
icon = 'icons/mob/species/misc/dog.dmi'
name = "Dog"
icon_state = "dog"
color_src = HAIR

/datum/sprite_accessory/tails/human/fox
icon = 'icons/mob/species/misc/fox.dmi'
name = "Fox"
Expand All @@ -55,3 +67,9 @@
name = "Fox 2"
icon_state = "fox2"
color_src = HAIR

/datum/sprite_accessory/tails/human/rabbit
icon = 'icons/mob/species/misc/rabbit.dmi'
name = "Rabbit"
icon_state = "bunny"
color_src = HAIR
19 changes: 17 additions & 2 deletions code/modules/mob/living/carbon/human/species_types/humans.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,31 @@
loreblurb = "Mostly hairless mammalians. Their home system, Sol, lies in a sort of \"bluespace dead-zone\" that blocks anything from entering or exiting Sol's dead-zone through bluespace without a relay. While it leaves Sol extremely well-defended, it meant that they went unnoticed and uncontacted until they were themselves able to breach it."

/datum/species/human/on_species_gain(mob/living/carbon/C, datum/species/old_species, pref_load)
if(C.dna.features["ears"] == "Elf")
mutantears = /obj/item/organ/ears/elf
if(C.dna.features["ears"] == "Cat")
mutantears = /obj/item/organ/ears/cat
if(C.dna.features["ears"] == "Dog")
mutantears = /obj/item/organ/ears/dog
if(C.dna.features["ears"] == "Fox")
mutantears = /obj/item/organ/ears/fox
if(C.dna.features["ears"] == "Rabbit")
mutantears = /obj/item/organ/ears/rabbit
if(C.dna.features["ears"] == "Bent Rabbit")
mutantears = /obj/item/organ/ears/rabbit/bent
if(C.dna.features["ears"] == "Floppy Rabbit")
mutantears = /obj/item/organ/ears/rabbit/floppy
if(C.dna.features["tail_human"] == "Cat")
mutant_organs |= /obj/item/organ/tail/cat
if(C.dna.features["tail_human"] == "Dog")
mutant_organs |= /obj/item/organ/tail/dog
if(C.dna.features["tail_human"] == "Fox")
mutant_organs |= /obj/item/organ/tail/fox
if(C.dna.features["ears"] == "Elf")
mutantears = /obj/item/organ/ears/elf
if(C.dna.features["tail_human"] == "Fox 2")
mutant_organs |= /obj/item/organ/tail/fox/alt
if(C.dna.features["tail_human"] == "Rabbit")
mutant_organs |= /obj/item/organ/tail/rabbit

return ..()

/datum/species/human/spec_death(gibbed, mob/living/carbon/human/H)
Expand Down
76 changes: 76 additions & 0 deletions code/modules/surgery/organs/ears.dm
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,10 @@
ear_owner.dna.species.mutant_bodyparts -= "ears"
ear_owner.update_body()

/obj/item/organ/ears/fox
name = "fox ears"
damage_multiplier = 2

/obj/item/organ/ears/fox/Insert(mob/living/carbon/human/ear_owner, special = 0, drop_if_replaced = TRUE)
..()
if(istype(ear_owner))
Expand All @@ -166,6 +170,78 @@
ear_owner.dna.species.mutant_bodyparts -= "ears"
ear_owner.update_body()

/obj/item/organ/ears/rabbit
name = "rabbit ears"
damage_multiplier = 3

/obj/item/organ/ears/rabbit/Insert(mob/living/carbon/human/ear_owner, special = 0, drop_if_replaced = TRUE)
..()
if(istype(ear_owner))
color = ear_owner.hair_color
ear_owner.dna.species.mutant_bodyparts |= "ears"
ear_owner.dna.features["ears"] = "Rabbit"
ear_owner.update_body()

/obj/item/organ/ears/rabbit/Remove(mob/living/carbon/human/ear_owner, special = 0)
..()
if(istype(ear_owner))
color = ear_owner.hair_color
ear_owner.dna.features["ears"] = "None"
ear_owner.dna.species.mutant_bodyparts -= "ears"
ear_owner.update_body()

/obj/item/organ/ears/rabbit/bent/Insert(mob/living/carbon/human/ear_owner, special = 0, drop_if_replaced = TRUE)
..()
if(istype(ear_owner))
color = ear_owner.hair_color
ear_owner.dna.species.mutant_bodyparts |= "ears"
ear_owner.dna.features["ears"] = "Bent Rabbit"
ear_owner.update_body()

/obj/item/organ/ears/rabbit/bent/Remove(mob/living/carbon/human/ear_owner, special = 0)
..()
if(istype(ear_owner))
color = ear_owner.hair_color
ear_owner.dna.features["ears"] = "None"
ear_owner.dna.species.mutant_bodyparts -= "ears"
ear_owner.update_body()

/obj/item/organ/ears/rabbit/floppy/Insert(mob/living/carbon/human/ear_owner, special = 0, drop_if_replaced = TRUE)
..()
if(istype(ear_owner))
color = ear_owner.hair_color
ear_owner.dna.species.mutant_bodyparts |= "ears"
ear_owner.dna.features["ears"] = "Floppy Rabbit"
ear_owner.update_body()

/obj/item/organ/ears/floppy/Remove(mob/living/carbon/human/ear_owner, special = 0)
..()
if(istype(ear_owner))
color = ear_owner.hair_color
ear_owner.dna.features["ears"] = "None"
ear_owner.dna.species.mutant_bodyparts -= "ears"
ear_owner.update_body()

/obj/item/organ/ears/dog
name = "dog ears"
damage_multiplier = 2

/obj/item/organ/ears/dog/Insert(mob/living/carbon/human/ear_owner, special = 0, drop_if_replaced = TRUE)
..()
if(istype(ear_owner))
color = ear_owner.hair_color
ear_owner.dna.species.mutant_bodyparts |= "ears"
ear_owner.dna.features["ears"] = "Dog"
ear_owner.update_body()

/obj/item/organ/ears/dog/Remove(mob/living/carbon/human/ear_owner, special = 0)
..()
if(istype(ear_owner))
color = ear_owner.hair_color
ear_owner.dna.features["ears"] = "None"
ear_owner.dna.species.mutant_bodyparts -= "ears"
ear_owner.update_body()

/obj/item/organ/ears/elf
name = "elf ears"
damage_multiplier = 1.5
Expand Down
46 changes: 44 additions & 2 deletions code/modules/surgery/organs/tails.dm
Original file line number Diff line number Diff line change
Expand Up @@ -137,15 +137,57 @@
desc = "A severed fox tail. Sad."
tail_type = "Fox 2"

/obj/item/organ/tail/cat/Insert(mob/living/carbon/human/H, special = 0, drop_if_replaced = TRUE)
/obj/item/organ/tail/fox/alt/Insert(mob/living/carbon/human/H, special = 0, drop_if_replaced = TRUE)
..()
if(istype(H))
if(!("tail_human" in H.dna.species.mutant_bodyparts))
H.dna.species.mutant_bodyparts |= "tail_human"
H.dna.features["tail_human"] = tail_type
H.update_body()

/obj/item/organ/tail/cat/Remove(mob/living/carbon/human/H, special = 0)
/obj/item/organ/tail/fox/alt/Remove(mob/living/carbon/human/H, special = 0)
..()
if(istype(H))
H.dna.features["tail_human"] = "None"
H.dna.species.mutant_bodyparts -= "tail_human"
color = H.hair_color
H.update_body()

/obj/item/organ/tail/rabbit
name = "rabbit tail"
desc = "A severed rabbit tail."
tail_type = "Rabbit"

/obj/item/organ/tail/rabbit/Insert(mob/living/carbon/human/H, special = 0, drop_if_replaced = TRUE)
..()
if(istype(H))
if(!("tail_human" in H.dna.species.mutant_bodyparts))
H.dna.species.mutant_bodyparts |= "tail_human"
H.dna.features["tail_human"] = tail_type
H.update_body()

/obj/item/organ/tail/rabbit/Remove(mob/living/carbon/human/H, special = 0)
..()
if(istype(H))
H.dna.features["tail_human"] = "None"
H.dna.species.mutant_bodyparts -= "tail_human"
color = H.hair_color
H.update_body()

/obj/item/organ/tail/dog
name = "dog tail"
desc = "A severed dog tail."
tail_type = "Dog"

/obj/item/organ/tail/dog/Insert(mob/living/carbon/human/H, special = 0, drop_if_replaced = TRUE)
..()
if(istype(H))
if(!("tail_human" in H.dna.species.mutant_bodyparts))
H.dna.species.mutant_bodyparts |= "tail_human"
H.dna.features["tail_human"] = tail_type
H.update_body()

/obj/item/organ/tail/dog/Remove(mob/living/carbon/human/H, special = 0)
..()
if(istype(H))
H.dna.features["tail_human"] = "None"
Expand Down
Binary file added icons/mob/species/misc/dog.dmi
Binary file not shown.
Binary file added icons/mob/species/misc/rabbit.dmi
Binary file not shown.

0 comments on commit e4a46ae

Please sign in to comment.