mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-29 08:08:49 +01:00
Gives optional customizable lines of Flavor text for different stages of mechanical arousal (#4801)
## About The Pull Request Adds three new small input fields in the Character Lore section. these are short flavor text for low, medium, and high arousal. they will show up when being examined while mechnically aroused and both the examiner and examined have ERP interactions turned on in their prefs. Leaving the fields blank also stops any flavor text from showing up for that arousal level From what I can tell the implemented feature works fine. Minor issue remains in that the fields to enter these flavor texts are ordered a bit weird. If anyone who knows how fix that, please tell me. ## Why It's Good For The Game Currently, mechanical arousal has either no impact or is annoying and distracting. This change hopes to make mechanical arousal actually add to the roleplay rather than distracting from it. This should hopefully also make the arousal system actually usable for other features. ## Proof Of Testing From what I can tell the implemented feature works fine. <details> <summary>Screenshots/Videos</summary> <img width="991" height="239" alt="image" src="https://github.com/user-attachments/assets/1bc50e31-7d7b-463d-ba24-491498f2fba0" /> <img width="358" height="146" alt="image" src="https://github.com/user-attachments/assets/ffcabb66-b6d8-4bd3-85b9-d61acd74545a" /> <img width="356" height="145" alt="image" src="https://github.com/user-attachments/assets/a3057d96-6a47-498f-84a3-f4374419f102" /> <img width="417" height="145" alt="image" src="https://github.com/user-attachments/assets/0fcf03d2-b386-4304-b811-05feffabc8c5" /> </details> ## Changelog 🆑 add: Added the ability to set short Flavor Text for three levels of mechanical arousal. /🆑
This commit is contained in:
@@ -49,3 +49,16 @@
|
||||
|
||||
return TRUE
|
||||
|
||||
|
||||
/mob/living/carbon/human/examine(mob/user)
|
||||
. = ..()
|
||||
if(src.client?.prefs.read_preference(/datum/preference/toggle/erp) && user.client.prefs.read_preference(/datum/preference/toggle/erp))
|
||||
if (arousal > AROUSAL_HIGH && src.dna.features["high_arousal"])
|
||||
. += span_userlove(src.dna.features["high_arousal"])
|
||||
return
|
||||
if (arousal > AROUSAL_LOW && src.dna.features["medium_arousal"])
|
||||
. += span_userlove(src.dna.features["medium_arousal"])
|
||||
return
|
||||
if (arousal > AROUSAL_NONE && src.dna.features["low_arousal"])
|
||||
. += span_purple(src.dna.features["low_arousal"])
|
||||
return
|
||||
|
||||
@@ -24,6 +24,33 @@
|
||||
/datum/preference/text/flavor_text_nsfw/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences)
|
||||
target.dna.features["flavor_text_nsfw"] = value
|
||||
|
||||
/datum/preference/text/low_arousal
|
||||
category = PREFERENCE_CATEGORY_NON_CONTEXTUAL
|
||||
savefile_identifier = PREFERENCE_CHARACTER
|
||||
savefile_key = "low_arousal_text"
|
||||
maximum_value_length = 100
|
||||
|
||||
/datum/preference/text/low_arousal/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences)
|
||||
target.dna.features["low_arousal"] = value
|
||||
|
||||
/datum/preference/text/medium_arousal
|
||||
category = PREFERENCE_CATEGORY_NON_CONTEXTUAL
|
||||
savefile_identifier = PREFERENCE_CHARACTER
|
||||
savefile_key = "medium_arousal_text"
|
||||
maximum_value_length = 100
|
||||
|
||||
/datum/preference/text/medium_arousal/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences)
|
||||
target.dna.features["medium_arousal"] = value
|
||||
|
||||
/datum/preference/text/high_arousal
|
||||
category = PREFERENCE_CATEGORY_NON_CONTEXTUAL
|
||||
savefile_identifier = PREFERENCE_CHARACTER
|
||||
savefile_key = "high_arousal_text"
|
||||
maximum_value_length = 100
|
||||
|
||||
/datum/preference/text/high_arousal/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences)
|
||||
target.dna.features["high_arousal"] = value
|
||||
|
||||
//This is just a silicon variant of the NSFW flavor text.
|
||||
/datum/preference/text/flavor_text_nsfw/silicon
|
||||
savefile_key = "silicon_flavor_text_nsfw"
|
||||
|
||||
+18
@@ -92,6 +92,24 @@ export const flavor_text_nsfw: Feature<string> = {
|
||||
component: FeatureTextInput,
|
||||
};
|
||||
|
||||
export const low_arousal_text: Feature<string> = {
|
||||
name: 'Arousal Flavor - Low',
|
||||
description: 'How your character can be perceived to be slightly aroused',
|
||||
component: FeatureShortTextInput,
|
||||
};
|
||||
|
||||
export const medium_arousal_text: Feature<string> = {
|
||||
name: 'Arousal Flavor - Medium',
|
||||
description: 'How your character can be perceived to be somewhat aroused',
|
||||
component: FeatureShortTextInput,
|
||||
};
|
||||
|
||||
export const high_arousal_text: Feature<string> = {
|
||||
name: 'Arousal Flavor - Strong',
|
||||
description: 'How your character can be perceived to be highly aroused',
|
||||
component: FeatureShortTextInput,
|
||||
};
|
||||
|
||||
export const silicon_flavor_text_nsfw: Feature<string> = {
|
||||
name: 'Silicon NSFW Flavor Text',
|
||||
description:
|
||||
|
||||
Reference in New Issue
Block a user