From 7909a80fe89b360ba8c96d89c97df2067b735ec0 Mon Sep 17 00:00:00 2001 From: CHOMPStation2 <58959929+CHOMPStation2@users.noreply.github.com> Date: Wed, 25 Oct 2023 17:14:57 -0700 Subject: [PATCH] [MIRROR] Attempt to prevent players joining with neither OOC notes nor flavour (#7138) Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com> Co-authored-by: CHOMPStation2 --- code/_helpers/mobs.dm | 6 ++++++ code/game/objects/structures/ghost_pods/event_vr.dm | 9 +++++++++ code/game/objects/structures/ghost_pods/ghost_pods.dm | 5 +++++ code/game/objects/structures/ghost_pods/ghost_pods_vr.dm | 6 +++++- code/modules/mob/new_player/new_player_vr.dm | 2 +- 5 files changed, 26 insertions(+), 2 deletions(-) diff --git a/code/_helpers/mobs.dm b/code/_helpers/mobs.dm index 6ff85c94e6..5324c72f82 100644 --- a/code/_helpers/mobs.dm +++ b/code/_helpers/mobs.dm @@ -333,3 +333,9 @@ Proc for attack log creation, because really why not else . = getCompoundIcon(desired) cached_character_icons[cachekey] = . + +/proc/not_has_ooc_text(mob/user) + if (config.allow_Metadata && (!user.client?.prefs?.metadata || length(user.client.prefs.metadata) < 15)) + to_chat(user, "Please set informative OOC notes related to RP/ERP preferences. Set them using the 'OOC Notes' button on the 'General' tab in character setup.") + return TRUE + return FALSE diff --git a/code/game/objects/structures/ghost_pods/event_vr.dm b/code/game/objects/structures/ghost_pods/event_vr.dm index 931138e466..d126046603 100644 --- a/code/game/objects/structures/ghost_pods/event_vr.dm +++ b/code/game/objects/structures/ghost_pods/event_vr.dm @@ -87,6 +87,10 @@ reset_ghostpod() return + //No OOC notes + if (not_has_ooc_text(M)) + return + while(finalized == "No" && M.client) choice = tgui_input_list(M, "What type of predator do you want to play as?", "Maintpred Choice", possible_mobs) if(!choice) //We probably pushed the cancel button on the mob selection. Let's just put the ghost pod back in the list. @@ -138,6 +142,11 @@ /obj/structure/ghost_pod/ghost_activated/morphspawn/create_occupant(var/mob/M) ..() + + //No OOC notes + if (not_has_ooc_text(M)) + return + var/mob/living/simple_mob/vore/morph/newMorph = new /mob/living/simple_mob/vore/morph(get_turf(src)) newMorph.voremob_loaded = TRUE //CHOMPedit: On-demand belly loading. newMorph.init_vore() //CHOMPedit: On-demand belly loading. diff --git a/code/game/objects/structures/ghost_pods/ghost_pods.dm b/code/game/objects/structures/ghost_pods/ghost_pods.dm index 5a5ed5db2f..82845de15f 100644 --- a/code/game/objects/structures/ghost_pods/ghost_pods.dm +++ b/code/game/objects/structures/ghost_pods/ghost_pods.dm @@ -90,6 +90,11 @@ if(jobban_isbanned(user, "GhostRoles")) to_chat(user, "You cannot inhabit this creature because you are banned from playing ghost roles.") return + + //No OOC notes + if (not_has_ooc_text(user)) + return + //VOREStation Add End if(used) to_chat(user, "Another spirit appears to have gotten to \the [src] before you. Sorry.") diff --git a/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm b/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm index 28ea62182f..2ae1a6f496 100644 --- a/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm +++ b/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm @@ -15,6 +15,10 @@ to_chat(user, "You cannot inhabit this creature because you are banned from playing ghost roles.") return + //No OOC notes + if (not_has_ooc_text(user)) + return + if(!remains_active || busy) return @@ -51,4 +55,4 @@ /obj/structure/ghost_pod/ghost_activated/Initialize(var/mapload) . = ..() if(!mapload) - ghostpod_startup(spawn_active) \ No newline at end of file + ghostpod_startup(spawn_active) diff --git a/code/modules/mob/new_player/new_player_vr.dm b/code/modules/mob/new_player/new_player_vr.dm index e2d77b78c1..84cd650ade 100644 --- a/code/modules/mob/new_player/new_player_vr.dm +++ b/code/modules/mob/new_player/new_player_vr.dm @@ -7,7 +7,7 @@ return TRUE //No Flavor Text - if (config.require_flavor && !client?.prefs?.flavor_texts["general"] && !(J.mob_type & JOB_SILICON)) + if (config.require_flavor && !(J.mob_type & JOB_SILICON) && (!client?.prefs?.flavor_texts["general"] || length(client.prefs.flavor_texts["general"]) < 30)) to_chat(src,"Please set your general flavor text to give a basic description of your character. Set it using the 'Set Flavor text' button on the 'General' tab in character setup, and choosing 'General' category.") pass = FALSE