From 73023cbd6b4ab5c8adbf140fb57d8bc5b70ce1e8 Mon Sep 17 00:00:00 2001
From: SkyratBot <59378654+SkyratBot@users.noreply.github.com>
Date: Sun, 31 Jan 2021 16:55:18 +0100
Subject: [PATCH] [MIRROR] Adds Extrovert and Introvert Quirks (#2964)
* Adds Extrovert and Introvert Quirks (#56490)
Adds Extrovert and Introvert quirks. Removes the free bar moodlet, gives it to extroverts, makes a corresponding library moodlet for introverts. Introvert and Extrovert are blacklisted and therefore mutually exclusive.
Seems a bit thin, could we do x?
Yeah sure, and I'd appreciate feedback on where you'd like to see these quirks go. I want to start basic with "where do they spend their free time?" Rather than trying to do something big like moodlets for speaking a lot/little, especially because that seems a bit unbalanced and we already have a quirk that penalizes speech. I'm also looking to avoid unrealistic stereotypes, speech penalties to introverts are kind of unreasonable, introverts aren't inherently bad at talking, they just like alone time.
Why make it free?
I'm taking away a pre-existing moodlet that was free for everyone, also positive quirks are capped at 6 and I see this quirk as being essential to character building so I would prefer not to make someone pick between giving any sort of depth to their character and their powergaming loadout.
Having players define their character as introverted or extroverted and reinforcing the decision through gameplay mechanics is a great way to get them thinking about their character beyond an avatar to make other spacemen horizontal with. I'd argue that it is as foundational as decisions like gender, species, and age.
This opens up the library as a social space, as the two people who take introvert might occasionally run into each other when they are recovering mood and sanity there.
* Adds Extrovert and Introvert Quirks
Co-authored-by: RaveRadbury <3204033+RaveRadbury@users.noreply.github.com>
---
code/__DEFINES/traits.dm | 2 ++
.../controllers/subsystem/processing/quirks.dm | 3 ++-
code/datums/quirks/neutral.dm | 18 ++++++++++++++++++
code/game/area/space_station_13_areas.dm | 4 ++++
4 files changed, 26 insertions(+), 1 deletion(-)
diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm
index 500ead5a708..d4107766109 100644
--- a/code/__DEFINES/traits.dm
+++ b/code/__DEFINES/traits.dm
@@ -347,6 +347,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
#define TRAIT_SNOB "snob"
#define TRAIT_BALD "bald"
#define TRAIT_BADTOUCH "bad_touch"
+#define TRAIT_EXTROVERT "extrovert"
+#define TRAIT_INTROVERT "introvert"
///Trait for dryable items
#define TRAIT_DRYABLE "trait_dryable"
///Trait for dried items
diff --git a/code/controllers/subsystem/processing/quirks.dm b/code/controllers/subsystem/processing/quirks.dm
index 32dddfa494d..7d690cf3d3f 100644
--- a/code/controllers/subsystem/processing/quirks.dm
+++ b/code/controllers/subsystem/processing/quirks.dm
@@ -26,7 +26,8 @@ PROCESSING_SUBSYSTEM_DEF(quirks)
list("Ananas Affinity","Ananas Aversion"), \
list("Alcohol Tolerance","Light Drinker"), \
list("Clown Fan","Mime Fan"), \
- list("Bad Touch", "Friendly"))
+ list("Bad Touch", "Friendly"), \
+ list("Extrovert", "Introvert"))
return ..()
/datum/controller/subsystem/processing/quirks/proc/SetupQuirks()
diff --git a/code/datums/quirks/neutral.dm b/code/datums/quirks/neutral.dm
index c72996c0000..b871f998a35 100644
--- a/code/datums/quirks/neutral.dm
+++ b/code/datums/quirks/neutral.dm
@@ -1,6 +1,24 @@
//traits with no real impact that can be taken freely
//MAKE SURE THESE DO NOT MAJORLY IMPACT GAMEPLAY. those should be positive or negative traits.
+/datum/quirk/extrovert
+ name = "Extrovert"
+ desc = "You are energized by talking to others, and enjoy spending your free time in the bar."
+ value = 0
+ mob_trait = TRAIT_EXTROVERT
+ gain_text = "You feel like hanging out with other people."
+ lose_text = "You feel like you're over the bar scene."
+ medical_record_text = "Patient will not shut the hell up."
+
+/datum/quirk/introvert
+ name = "Introvert"
+ desc = "You are energized by having time to yourself, and enjoy spending your free time in the library."
+ value = 0
+ mob_trait = TRAIT_INTROVERT
+ gain_text = "You feel like reading a good book quietly."
+ lose_text = "You feel like libraries are boring."
+ medical_record_text = "Patient doesn't seem to say much."
+
/datum/quirk/no_taste
name = "Ageusia"
desc = "You can't taste anything! Toxic food will still poison you."
diff --git a/code/game/area/space_station_13_areas.dm b/code/game/area/space_station_13_areas.dm
index 216c54506c7..4117504038f 100644
--- a/code/game/area/space_station_13_areas.dm
+++ b/code/game/area/space_station_13_areas.dm
@@ -472,6 +472,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
icon_state = "bar"
mood_bonus = 5
mood_message = "I love being in the bar!\n"
+ mood_trait = TRAIT_EXTROVERT
airlock_wires = /datum/wires/airlock/service
sound_environment = SOUND_AREA_WOODFLOOR
@@ -503,6 +504,9 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
/area/library
name = "Library"
icon_state = "library"
+ mood_bonus = 5
+ mood_message = "I love being in the library!\n"
+ mood_trait = TRAIT_INTROVERT
flags_1 = CULT_PERMITTED_1
sound_environment = SOUND_AREA_LARGE_SOFTFLOOR