diff --git a/code/__defines/gamemode.dm b/code/__defines/gamemode.dm index 25bd432e50d..d20e56ffc86 100644 --- a/code/__defines/gamemode.dm +++ b/code/__defines/gamemode.dm @@ -32,6 +32,7 @@ #define ANTAG_VOTABLE 0x200 // Can be voted as an additional antagonist before roundstart. #define ANTAG_SET_APPEARANCE 0x400 // Causes antagonists to use an appearance modifier on spawn. #define ANTAG_RANDOM_EXCEPTED 0x800 // If a game mode randomly selects antag types, antag types with this flag should be excluded. +#define ANTAG_NO_FLAVORTEXT 0x1000 // To prevent flavor text from being scrubbed from crewmember intruders // Mode/antag template macros. #define MODE_BORER "borer" diff --git a/code/game/antagonist/antagonist_create.dm b/code/game/antagonist/antagonist_create.dm index 9f8fba2908b..bf9d8ec8277 100644 --- a/code/game/antagonist/antagonist_create.dm +++ b/code/game/antagonist/antagonist_create.dm @@ -118,6 +118,12 @@ /datum/antagonist/proc/set_antag_name(var/mob/living/player) // Choose a name, if any. + if(ishuman(player)) + var/mob/living/carbon/human/H = player + var/datum/language/L = H.default_language + H.real_name = L.get_random_name() + H.name = H.real_name + H.dna.real_name = H.real_name var/newname = sanitize(input(player, "You are a [role_text]. Would you like to change your name to something else?", "Name change") as null|text, MAX_NAME_LEN) if (newname) player.real_name = newname diff --git a/code/game/antagonist/antagonist_update.dm b/code/game/antagonist/antagonist_update.dm index acf94c3654d..8874f591c4c 100644 --- a/code/game/antagonist/antagonist_update.dm +++ b/code/game/antagonist/antagonist_update.dm @@ -15,6 +15,9 @@ spawn(3) var/mob/living/carbon/human/H = player.current if(istype(H)) H.change_appearance(APPEARANCE_ALL, H.loc, H, valid_species, state = z_state) + if((flags & ANTAG_NO_FLAVORTEXT) && ishuman(player.current)) + var/mob/living/carbon/human/H = player.current + H.scrub_flavor_text() return player.current /datum/antagonist/proc/update_access(var/mob/living/player) diff --git a/code/game/antagonist/outsider/deathsquad.dm b/code/game/antagonist/outsider/deathsquad.dm index a560525eac0..faac3ddca0f 100644 --- a/code/game/antagonist/outsider/deathsquad.dm +++ b/code/game/antagonist/outsider/deathsquad.dm @@ -9,7 +9,7 @@ var/datum/antagonist/deathsquad/deathsquad id_type = /obj/item/card/id/asset_protection - flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_OVERRIDE_MOB | ANTAG_HAS_NUKE | ANTAG_HAS_LEADER | ANTAG_RANDOM_EXCEPTED | ANTAG_CHOOSE_NAME | ANTAG_SET_APPEARANCE + flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_OVERRIDE_MOB | ANTAG_HAS_NUKE | ANTAG_HAS_LEADER | ANTAG_RANDOM_EXCEPTED | ANTAG_CHOOSE_NAME | ANTAG_SET_APPEARANCE | ANTAG_NO_FLAVORTEXT antaghud_indicator = "huddeathsquad" var/deployed = FALSE diff --git a/code/game/antagonist/outsider/ert.dm b/code/game/antagonist/outsider/ert.dm index 8b6629d77bf..02a1d04485b 100644 --- a/code/game/antagonist/outsider/ert.dm +++ b/code/game/antagonist/outsider/ert.dm @@ -10,7 +10,7 @@ var/datum/antagonist/ert/ert id_type = /obj/item/card/id/ert - flags = ANTAG_OVERRIDE_JOB | ANTAG_RANDOM_EXCEPTED + flags = ANTAG_OVERRIDE_JOB | ANTAG_RANDOM_EXCEPTED | ANTAG_NO_FLAVORTEXT antaghud_indicator = "hudloyalist" /datum/antagonist/ert/create_default(var/mob/source) diff --git a/code/game/antagonist/outsider/mercenary.dm b/code/game/antagonist/outsider/mercenary.dm index 146d576bbf1..fb4b89e0777 100644 --- a/code/game/antagonist/outsider/mercenary.dm +++ b/code/game/antagonist/outsider/mercenary.dm @@ -9,7 +9,7 @@ var/datum/antagonist/mercenary/mercs landmark_id = "Syndicate-Spawn" leader_welcome_text = "You are the leader of the mercenary strikeforce; hail to the chief. Use :t to speak to your underlings." welcome_text = "To speak on the strike team's private channel use :t." - flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_CHOOSE_NAME | ANTAG_HAS_NUKE | ANTAG_SET_APPEARANCE | ANTAG_HAS_LEADER + flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_CHOOSE_NAME | ANTAG_HAS_NUKE | ANTAG_SET_APPEARANCE | ANTAG_HAS_LEADER | ANTAG_NO_FLAVORTEXT id_type = /obj/item/card/id/syndicate antaghud_indicator = "hudoperative" required_age = 10 diff --git a/code/game/antagonist/outsider/ninja.dm b/code/game/antagonist/outsider/ninja.dm index bb36ce5d2b4..3b35e89ce57 100644 --- a/code/game/antagonist/outsider/ninja.dm +++ b/code/game/antagonist/outsider/ninja.dm @@ -8,7 +8,7 @@ var/datum/antagonist/ninja/ninjas landmark_id = "ninjastart" welcome_text = "You are an elite stealth agent. You can equip your suit with the latest technology using your uplink." restricted_species = list("Diona") - flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_CHOOSE_NAME | ANTAG_RANDSPAWN | ANTAG_VOTABLE | ANTAG_SET_APPEARANCE + flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_CHOOSE_NAME | ANTAG_RANDSPAWN | ANTAG_VOTABLE | ANTAG_SET_APPEARANCE | ANTAG_NO_FLAVORTEXT antaghud_indicator = "hudninja" required_age = 10 diff --git a/code/game/antagonist/outsider/raider.dm b/code/game/antagonist/outsider/raider.dm index 385d58b4cec..83d263a0918 100644 --- a/code/game/antagonist/outsider/raider.dm +++ b/code/game/antagonist/outsider/raider.dm @@ -8,7 +8,7 @@ var/datum/antagonist/raider/raiders antag_indicator = "mutineer" landmark_id = "voxstart" welcome_text = "Use :H to talk on your encrypted channel." - flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_CHOOSE_NAME | ANTAG_VOTABLE | ANTAG_SET_APPEARANCE | ANTAG_HAS_LEADER + flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_CHOOSE_NAME | ANTAG_VOTABLE | ANTAG_SET_APPEARANCE | ANTAG_HAS_LEADER | ANTAG_NO_FLAVORTEXT antaghud_indicator = "hudmutineer" required_age = 10 diff --git a/code/game/antagonist/outsider/wizard.dm b/code/game/antagonist/outsider/wizard.dm index 973a1c4c6f8..a666184f0e3 100644 --- a/code/game/antagonist/outsider/wizard.dm +++ b/code/game/antagonist/outsider/wizard.dm @@ -7,7 +7,7 @@ var/datum/antagonist/wizard/wizards bantype = "wizard" landmark_id = "wizard" welcome_text = "You will find a list of available spells in your spell book. Choose your magic arsenal carefully.
In your pockets you will find a teleport scroll. Use it as needed." - flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_CHOOSE_NAME | ANTAG_VOTABLE | ANTAG_SET_APPEARANCE + flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_CHOOSE_NAME | ANTAG_VOTABLE | ANTAG_SET_APPEARANCE | ANTAG_NO_FLAVORTEXT antaghud_indicator = "hudwizard" required_age = 10 @@ -68,8 +68,19 @@ var/datum/antagonist/wizard/wizards /datum/antagonist/wizard/update_antag_mob(var/datum/mind/wizard) ..() wizard.store_memory("Remember: do not forget to prepare your spells.") - wizard.current.real_name = "[pick(wizard_first)] [pick(wizard_second)]" - wizard.current.name = wizard.current.real_name + +/datum/antagonist/wizard/set_antag_name(mob/living/player) + player.real_name = "[pick(wizard_first)] [pick(wizard_second)]" + player.name = player.real_name + var/newname = sanitize(input(player, "You are a [role_text]. Would you like to change your name to something else?", "Name change") as null|text, MAX_NAME_LEN) + if(newname) + player.real_name = newname + player.name = player.real_name + player.dna.real_name = newname + if(player.mind) + player.mind.name = player.name + // Update any ID cards. + update_access(player) /datum/antagonist/wizard/equip(var/mob/living/carbon/human/player) diff --git a/code/game/antagonist/station/loyalist.dm b/code/game/antagonist/station/loyalist.dm index 13f85db3173..7410b07c866 100644 --- a/code/game/antagonist/station/loyalist.dm +++ b/code/game/antagonist/station/loyalist.dm @@ -13,7 +13,6 @@ var/datum/antagonist/loyalists/loyalists victory_feedback_tag = "You thwarted the Contenders in their devious ends." loss_feedback_tag = "You were thwarted by the Contenders." antaghud_indicator = "fellowship" - flags = 0 hard_cap = 2 hard_cap_round = 4 diff --git a/code/game/antagonist/station/thrall.dm b/code/game/antagonist/station/thrall.dm index 0b60547cb96..ec152019150 100644 --- a/code/game/antagonist/station/thrall.dm +++ b/code/game/antagonist/station/thrall.dm @@ -18,7 +18,6 @@ var/datum/antagonist/thrall/thralls = null "Bishop Accessory Frame" ) welcome_text = "You are a vampire or psionic operant's thrall: a pawn to be commanded by them at will." - flags = 0 antaghud_indicator = "hudthrall" /datum/antagonist/thrall/New() diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index 64b8b42f69b..e188fda1760 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -93,8 +93,7 @@ name = "Unknown" real_name = "Unknown" - for(var/text in flavor_texts) - flavor_texts[text] = null + scrub_flavor_text() mutations.Add(HUSK) status_flags |= DISFIGURED //makes them unknown without fucking up other stuff like admintools @@ -118,14 +117,17 @@ if(!keep_name) name = "Unknown" real_name = "Unknown" - for(var/text in flavor_texts) - flavor_texts[text] = null + scrub_flavor_text() mutations.Add(SKELETON) status_flags |= DISFIGURED update_body(TRUE) return +/mob/living/carbon/human/proc/scrub_flavor_text() + for(var/text in flavor_texts) + flavor_texts[text] = null + /mob/living/carbon/human/proc/vr_disconnect() if(remote_network) SSvirtualreality.remove_robot(src, remote_network) diff --git a/html/changelogs/geeves-flavour_text_delet.yml b/html/changelogs/geeves-flavour_text_delet.yml new file mode 100644 index 00000000000..e3ad1df8d59 --- /dev/null +++ b/html/changelogs/geeves-flavour_text_delet.yml @@ -0,0 +1,7 @@ +author: Geeves + +delete-after: True + +changes: + - bugfix: "Off-station antagonists will no longer keep the player's character's flavour text." + - bugfix: "Antagonists will now be assigned random names before they pick their name." \ No newline at end of file