Spices up vulpkanin [bounty] (#3425)

## About The Pull Request
Changes vulpkanin in several ways:
- Peanutbutter gives a mood buff
- Chocolate deals toxin damage while inside you
- innate hardened soles
- innate night vision
- hunger will drain twice as fast
- higher sensitivity to flashes
## Why It's Good For The Game
vulpkanin are literally human but fluffy, they don't even have lore in
the species selector (lol) also I'm being paid
## Proof Of Testing

![image](https://github.com/user-attachments/assets/8860340c-e6c4-4ad9-81ac-89a60f7645eb)

![image](https://github.com/user-attachments/assets/3a497358-64f1-4f37-a8c4-e289c7a84734)

![image](https://github.com/user-attachments/assets/d6dec08b-c0a6-4d75-8715-2f66791a9cd4)
<details>
<summary>Screenshots/Videos</summary>

</details>

## Changelog
🆑
add: several vulpkanin species buffs/debuffs
/🆑

---------

Co-authored-by: LT3 <83487515+lessthnthree@users.noreply.github.com>
This commit is contained in:
Odairu
2025-04-05 03:02:02 -04:00
committed by GitHub
parent 4da0397b16
commit 1ab85fd206
7 changed files with 67 additions and 0 deletions

View File

@@ -39,3 +39,5 @@
// makes it so held items float by their head
#define TRAIT_FLOATING_HELD "held_items_float"
// makes it so this mob loses nutrition twice as fast
#define TRAIT_FAST_METABOLISM "fast_metabolism"

View File

@@ -1498,6 +1498,10 @@
/mob/proc/adjust_nutrition(change, forced = FALSE) //Honestly FUCK the oldcoders for putting nutrition on /mob someone else can move it up because holy hell I'd have to fix SO many typechecks
if(HAS_TRAIT(src, TRAIT_NOHUNGER) && !forced)
return
//Bubber edit BEGIN - Allow for people to get hungry faster
if(HAS_TRAIT(src, TRAIT_FAST_METABOLISM) && change < 0)
change = change * 2
//Bubber edit END
nutrition = max(0, nutrition + change)
hud_used?.hunger?.update_appearance()

View File

@@ -1173,6 +1173,10 @@
if(isabductor(affected_mob))
affected_mob.add_mood_event("ET_pieces", /datum/mood_event/et_pieces, name)
affected_mob.set_drugginess(30 SECONDS * REM * seconds_per_tick)
//bubber edit BEGIN - vulpkanin love peanut butter too
if(isvulpkanin(affected_mob))
affected_mob.add_mood_event("ET_pieces", /datum/mood_event/et_pieces, name)
//bubber edit END
/datum/reagent/consumable/vinegar
name = "Vinegar"

View File

@@ -6,10 +6,14 @@
TRAIT_CAN_STRIP,
TRAIT_LITERATE,
TRAIT_MUTANT_COLORS,
TRAIT_FAST_METABOLISM,
TRAIT_HARD_SOLES,
TRAIT_NIGHT_VISION,
)
inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID
mutant_bodyparts = list()
mutanttongue = /obj/item/organ/tongue/vulpkanin
mutanteyes = /obj/item/organ/eyes/vulpkanin
species_language_holder = /datum/language_holder/vulpkanin
payday_modifier = 1.0
changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_MAGIC | MIRROR_PRIDE | ERT_SPAWN | RACE_SWAP | SLIME_EXTRACT
@@ -25,6 +29,45 @@
meat = /obj/item/food/meat/slab/corgi
/datum/species/vulpkanin/create_pref_unique_perks()
var/to_add = list()
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "face-smile-beam",
SPECIES_PERK_NAME = "Peanut Butter Affinity",
SPECIES_PERK_DESC = "Vulpkanin LOVE peanutbutter and get quite excited when eating it",
))
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "shoe-prints",
SPECIES_PERK_NAME = "Hardened Soles",
SPECIES_PERK_DESC = "Vulpkanin have feet that can withstand more than most species",
))
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "eye",
SPECIES_PERK_NAME = "Night Vision",
SPECIES_PERK_DESC = "Vulpkanin eyes can see better in the dark than most species",
))
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "biohazard",
SPECIES_PERK_NAME = "Chocolate Allergy",
SPECIES_PERK_DESC = "Vulpkanin will start rapidly taking toxic damage when consuming coco",
))
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "stomach",
SPECIES_PERK_NAME = "Hunger",
SPECIES_PERK_DESC = "Vulpkanin will get hungry twice as fast as most species",
))
return to_add
/datum/species/vulpkanin/get_default_mutant_bodyparts()
return list(
"tail" = list("Fox", TRUE),

View File

@@ -0,0 +1,4 @@
/datum/reagent/consumable/coco/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
. = ..()
if(isvulpkanin(affected_mob))
affected_mob.adjustToxLoss(3 * seconds_per_tick)

View File

@@ -6,3 +6,12 @@
flash_protect = FLASH_PROTECTION_SENSITIVE
blink_animation = FALSE
iris_overlay = null
/obj/item/organ/eyes/vulpkanin
name = "vulpkanin eyes"
desc = "These eyes seem adept at seeing in low light environments, not that the vulpkanin missing them can see anything right now."
flash_protect = FLASH_PROTECTION_SENSITIVE
blink_animation = FALSE
iris_overlay = null
lighting_cutoff = LIGHTING_CUTOFF_LOW

View File

@@ -8952,6 +8952,7 @@
#include "modular_zubbers\code\game\objects\items\food\halloween_chocolate.dm"
#include "modular_zubbers\code\game\objects\items\food\meatslab.dm"
#include "modular_zubbers\code\game\objects\items\food\misc.dm"
#include "modular_zubbers\code\game\objects\items\food\sweets.dm"
#include "modular_zubbers\code\game\objects\items\implants\implant_storage.dm"
#include "modular_zubbers\code\game\objects\items\robot\items\harm_alarm_new.dm"
#include "modular_zubbers\code\game\objects\items\robot\items\hypo.dm"