diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm
index f5c1c28e7..94d1d2135 100644
--- a/code/__DEFINES/citadel_defines.dm
+++ b/code/__DEFINES/citadel_defines.dm
@@ -134,15 +134,17 @@
#define BREAST_ENLARGEMENT (1<<3)
#define PENIS_ENLARGEMENT (1<<4)
-#define FORCED_FEM (1<<5)
-#define FORCED_MASC (1<<6)
-#define HYPNO (1<<7)
-#define NEVER_HYPNO (1<<8)
-#define NO_APHRO (1<<9)
-#define NO_ASS_SLAP (1<<10)
-#define NO_AUTO_WAG (1<<11)
-#define GENITAL_EXAMINE (1<<12)
-#define VORE_EXAMINE (1<<13)
+#define ASS_ENLARGEMENT (1<<5)
+#define FORCED_FEM (1<<6)
+#define FORCED_MASC (1<<7)
+#define HYPNO (1<<8)
+#define NEVER_HYPNO (1<<9)
+#define NO_APHRO (1<<10)
+#define NO_ASS_SLAP (1<<11)
+#define NO_AUTO_WAG (1<<12)
+#define GENITAL_EXAMINE (1<<13)
+#define VORE_EXAMINE (1<<14)
+#define NO_UWU (1<<15)
#define TOGGLES_CITADEL (EATING_NOISES|DIGESTION_NOISES|BREAST_ENLARGEMENT|PENIS_ENLARGEMENT)
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index bd32f33c1..848c8a3bc 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -1204,10 +1204,12 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "
Other content prefs
"
dat += "Breast Enlargement: [(cit_toggles & BREAST_ENLARGEMENT) ? "Allowed" : "Disallowed"]
"
dat += "Penis Enlargement: [(cit_toggles & PENIS_ENLARGEMENT) ? "Allowed" : "Disallowed"]
"
+ dat += "Ass Enlargement: [(cit_toggles & ASS_ENLARGEMENT) ? "Allowed" : "Disallowed"]
"
dat += "Hypno: [(cit_toggles & NEVER_HYPNO) ? "Disallowed" : "Allowed"]
"
dat += "Aphrodisiacs: [(cit_toggles & NO_APHRO) ? "Disallowed" : "Allowed"]
"
dat += "Ass Slapping: [(cit_toggles & NO_ASS_SLAP) ? "Disallowed" : "Allowed"]
"
- dat += "Automatic Wagging: [(cit_toggles & NO_AUTO_WAG) ? "Disabled" : "Enabled"]
"
+ dat += "Automatic Wagging: [(cit_toggles & NO_AUTO_WAG) ? "Disallowed" : "Allowed"]
"
+ dat += "Forced UwUspeak: [(cit_toggles & NO_UWU) ? "Disallowed" : "Allowed"]
"
dat += ""
dat += "
"
@@ -2747,6 +2749,9 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if("penis_enlargement")
cit_toggles ^= PENIS_ENLARGEMENT
+ if("ass_enlargement")
+ cit_toggles ^= ASS_ENLARGEMENT
+
if("feminization")
cit_toggles ^= FORCED_FEM
@@ -2768,6 +2773,9 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if("auto_wag")
cit_toggles ^= NO_AUTO_WAG
+ if("no_uwu")
+ cit_toggles ^= NO_UWU
+
//END CITADEL EDIT
if("ambientocclusion")
diff --git a/modular_citadel/code/modules/reagents/chemistry/reagents/enlargement.dm b/modular_citadel/code/modules/reagents/chemistry/reagents/enlargement.dm
index becfbc357..e0d8e8417 100644
--- a/modular_citadel/code/modules/reagents/chemistry/reagents/enlargement.dm
+++ b/modular_citadel/code/modules/reagents/chemistry/reagents/enlargement.dm
@@ -395,22 +395,24 @@
var/mob/living/carbon/human/H = M
var/obj/item/organ/genital/anus/B = M.getorganslot("anus")
- if(!B) //If they don't have a butt. Give them one!
- var/obj/item/organ/genital/anus/nB = new
- nB.Insert(M)
- if(nB)
- if(M.dna.species.use_skintones && M.dna.features["genitals_use_skintone"])
- nB.color = skintone2hex(H.skin_tone)
- else if(M.dna.features["breasts_color"])
- nB.color = "#[M.dna.features["breasts_color"]]"
- else
- nB.color = skintone2hex(H.skin_tone)
- nB.size = 1
- to_chat(M, "Your ass cheeks bulge outwards and feel heavier.")
- M.reagents.remove_reagent(type, 5)
- B = nB
- //If they have, increase size.
- if(B.size < 5) //just make sure you dont break sprites
- B.size = B.size + 0.05
- B.update()
+ if(!B) //If they don't have a butt and are opted in, give them one!
+ if(H.client?.prefs.cit_toggles & ASS_ENLARGEMENT)
+ var/obj/item/organ/genital/anus/nB = new
+ nB.Insert(M)
+ if(nB)
+ if(M.dna.species.use_skintones && M.dna.features["genitals_use_skintone"])
+ nB.color = skintone2hex(H.skin_tone)
+ else if(M.dna.features["breasts_color"])
+ nB.color = "#[M.dna.features["breasts_color"]]"
+ else
+ nB.color = skintone2hex(H.skin_tone)
+ nB.size = 1
+ to_chat(M, "Your ass cheeks bulge outwards and feel heavier.")
+ M.reagents.remove_reagent(type, 5)
+ B = nB
+ //If they have & opt in, increase size.
+ if(H.client?.prefs.cit_toggles & ASS_ENLARGEMENT)
+ if(B.size < 5) //just make sure you dont break sprites
+ B.size = B.size + 0.05
+ B.update()
..()
diff --git a/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm b/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm
index b5324515d..067a32fe7 100644
--- a/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm
+++ b/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm
@@ -108,7 +108,9 @@
..()
/datum/reagent/fermi/furranium/on_mob_life(mob/living/carbon/M)
-
+ if(M.client?.prefs.cit_toggles & NO_UWU) //if opted out of uwuspeak
+ holder.del_reagent(type)
+ return
switch(current_cycle)
if(1 to 9)
if(prob(20))