diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index 2455d373ab..a5617e6148 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -57,6 +57,7 @@ #define TRAIT_HEAVY_SLEEPER "heavy_sleeper" #define TRAIT_NIGHT_VISION "night_vision" #define TRAIT_LIGHT_STEP "light_step" +#define TRAIT_SPEEDY_STEP "speedy_step" #define TRAIT_SPIRITUAL "spiritual" #define TRAIT_VORACIOUS "voracious" #define TRAIT_SELF_AWARE "self_aware" @@ -90,4 +91,4 @@ #define STASIS_MUTE "stasis" #define GENETICS_SPELL "genetics_spell" #define EYES_COVERED "eyes_covered" -#define CULT_EYES "cult_eyes" \ No newline at end of file +#define CULT_EYES "cult_eyes" diff --git a/code/datums/mood_events/generic_negative_events.dm b/code/datums/mood_events/generic_negative_events.dm index 2a93f74fa7..4021d11128 100644 --- a/code/datums/mood_events/generic_negative_events.dm +++ b/code/datums/mood_events/generic_negative_events.dm @@ -109,6 +109,10 @@ description = "It sure is dark around here...\n" mood_change = -3 +/datum/mood_event/brightlight + description = "The light feels unbearable...\n" + mood_change = -3 + /datum/mood_event/family_heirloom_missing description = "I'm missing my family heirloom...\n" mood_change = -4 diff --git a/code/datums/traits/good.dm b/code/datums/traits/good.dm index c7a8fa5f55..bd55869c99 100644 --- a/code/datums/traits/good.dm +++ b/code/datums/traits/good.dm @@ -58,6 +58,14 @@ gain_text = "You walk with a little more litheness." lose_text = "You start tromping around like a barbarian." +/datum/quirk/quick_step + name = "Quick Step" + desc = "You walk with determined strides, and out-pace most people when walking." + value = 2 + mob_trait = TRAIT_SPEEDY_STEP + gain_text = "You feel determined. No time to lose." + lose_text = "You feel less determined. What's the rush, man?" + /datum/quirk/musician name = "Musician" desc = "You can tune handheld musical instruments to play melodies that clear certain negative effects and soothe the soul." diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index a98e172018..45f4a32c50 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -154,6 +154,21 @@ else SEND_SIGNAL(quirk_holder, COMSIG_CLEAR_MOOD_EVENT, "nyctophobia") +/datum/quirk/lightless + name = "Light Sensitivity" + desc = "Bright lights irritate you. Your eyes start to water, your skin feels itchy against the photon radiation, and your hair gets dry and frizzy. Maybe it's a medical condition. If only Nanotrasen was more considerate of your needs..." + value = -1 + gain_text = "The safty of light feels off..." + lose_text = "Enlighing." + +/datum/quirk/lightless/on_process() + var/turf/T = get_turf(quirk_holder) + var/lums = T.get_lumcount() + if(lums >= 0.8) + SEND_SIGNAL(quirk_holder, COMSIG_ADD_MOOD_EVENT, "brightlight", /datum/mood_event/brightlight) + else + SEND_SIGNAL(quirk_holder, COMSIG_CLEAR_MOOD_EVENT, "brightlight") + /datum/quirk/nonviolent name = "Pacifist" desc = "The thought of violence makes you sick. So much so, in fact, that you can't hurt anyone." diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 5465824ac1..2d4b64c4ad 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1257,6 +1257,9 @@ GLOBAL_LIST_EMPTY(roundstart_races) . += speedmod . += H.physiology.speed_mod + if (H.m_intent == MOVE_INTENT_WALK && H.has_trait(TRAIT_SPEEDY_STEP)) + . -= 1 + if(H.has_trait(TRAIT_IGNORESLOWDOWN)) ignoreslow = 1