diff --git a/code/defines/mob/mob.dm b/code/defines/mob/mob.dm index 84e87f4c046..a2220baa62c 100644 --- a/code/defines/mob/mob.dm +++ b/code/defines/mob/mob.dm @@ -81,6 +81,7 @@ var/ear_damage = null//Carbon var/stuttering = null//Carbon var/real_name = null + var/flavor_text = "" var/blinded = null var/bhunger = 0//Carbon var/ajourn = 0 diff --git a/code/game/dna.dm b/code/game/dna.dm index 92c84920666..c301b44033d 100644 --- a/code/game/dna.dm +++ b/code/game/dna.dm @@ -254,6 +254,8 @@ H.update_face() H.update_body() + H.warn_flavor_changed() + return 1 else return 0 @@ -399,6 +401,8 @@ for (var/obj/item/weapon/implant/I in implants) I.loc = O I.implanted = O + O.flavor_text = M.flavor_text + O.warn_flavor_changed() del(M) return @@ -473,6 +477,8 @@ for (var/obj/item/weapon/implant/I in implants) I.loc = O I.implanted = O + O.flavor_text = M.flavor_text + O.warn_flavor_changed() del(M) return //////////////////////////////////////////////////////////// Monkey Block diff --git a/code/game/gamemodes/changeling/changeling_powers.dm b/code/game/gamemodes/changeling/changeling_powers.dm index 548b6aecfe4..c81652a2e93 100644 --- a/code/game/gamemodes/changeling/changeling_powers.dm +++ b/code/game/gamemodes/changeling/changeling_powers.dm @@ -130,6 +130,7 @@ T.death(0) T.real_name = "Unknown" + M.warn_flavor_changed() T.mutations |= HUSK T.update_body() diff --git a/code/modules/chemical/Chemistry-Reagents.dm b/code/modules/chemical/Chemistry-Reagents.dm index 82df78f9be5..49b3873af62 100644 --- a/code/modules/chemical/Chemistry-Reagents.dm +++ b/code/modules/chemical/Chemistry-Reagents.dm @@ -665,6 +665,7 @@ datum M:emote("scream") M << "\red Your face has become disfigured!" M.real_name = "Unknown" + M.warn_flavor_changed() else M.take_organ_damage(min(15, volume * 2)) // uses min() and volume to make sure they aren't being sprayed in trace amounts (1 unit != insta rape) -- Doohl else @@ -711,6 +712,7 @@ datum M:emote("scream") M << "\red Your face has become disfigured!" M.real_name = "Unknown" + M.warn_flavor_changed() else if(istype(M, /mob/living/carbon/monkey) && M:wear_mask) del (M:wear_mask) @@ -726,6 +728,7 @@ datum M:emote("scream") M << "\red Your face has become disfigured!" M.real_name = "Unknown" + M.warn_flavor_changed() else M.take_organ_damage(min(15, volume * 4)) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 0743dccdd95..0501f148595 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -148,6 +148,7 @@ if (!src.client) usr << "\red [src.name] doesn't seem as though they want to talk." + print_flavor_text() usr << "\blue *---------*" diff --git a/code/modules/mob/living/carbon/metroid/examine.dm b/code/modules/mob/living/carbon/metroid/examine.dm index 063caa27dd7..28f2026b034 100644 --- a/code/modules/mob/living/carbon/metroid/examine.dm +++ b/code/modules/mob/living/carbon/metroid/examine.dm @@ -26,4 +26,6 @@ if(10) usr << text("\blue [] seems to have extreme electrical activity inside it!", src.name) + print_flavor_text() + return \ No newline at end of file diff --git a/code/modules/mob/living/carbon/monkey/examine.dm b/code/modules/mob/living/carbon/monkey/examine.dm index 012680351a3..edf60c8ed5b 100644 --- a/code/modules/mob/living/carbon/monkey/examine.dm +++ b/code/modules/mob/living/carbon/monkey/examine.dm @@ -28,4 +28,7 @@ usr << text("\red [] looks severely burnt!", src.name) if (src.stat == 1) usr << text("\red [] doesn't seem to be responding to anything around them, their eyes closed as though asleep.", src.name) + + print_flavor_text() + return \ No newline at end of file diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 7e4b3ec9c9d..96a05303d8f 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -150,4 +150,10 @@ return /mob/living/proc/UpdateDamageIcon() - return \ No newline at end of file + return + +/mob/living/verb/change_flavor_text() + set name = "Change Flavor Text" + set category = "OOC" + + src.update_flavor_text() diff --git a/code/modules/mob/living/silicon/ai/examine.dm b/code/modules/mob/living/silicon/ai/examine.dm index fdcf15dec61..1f9498a4bb0 100644 --- a/code/modules/mob/living/silicon/ai/examine.dm +++ b/code/modules/mob/living/silicon/ai/examine.dm @@ -18,4 +18,7 @@ usr << text("\red [] looks severely burnt!", src.name) if (src.stat == 1) usr << text("\red [] doesn't seem to be responding.", src.name) + + print_flavor_text() + return \ No newline at end of file diff --git a/code/modules/mob/living/silicon/pai/examine.dm b/code/modules/mob/living/silicon/pai/examine.dm index 621448c3579..66aecc6c66c 100644 --- a/code/modules/mob/living/silicon/pai/examine.dm +++ b/code/modules/mob/living/silicon/pai/examine.dm @@ -18,4 +18,7 @@ usr << text("\red []'s casing is melted and heat-warped!", src.name) if (src.stat == 1) usr << text("\red [] doesn't seem to be responding.", src.name) + + print_flavor_text() + return \ No newline at end of file diff --git a/code/modules/mob/living/silicon/robot/examine.dm b/code/modules/mob/living/silicon/robot/examine.dm index c6d04d7f1d8..d1b54407d08 100644 --- a/code/modules/mob/living/silicon/robot/examine.dm +++ b/code/modules/mob/living/silicon/robot/examine.dm @@ -21,4 +21,7 @@ usr << "The cover is open and the power cell is [ cell ? "installed" : "missing"]." else usr << "The cover is closed." + + print_flavor_text() + return \ No newline at end of file diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index caaec2d1bd1..c41cb0351fe 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -380,6 +380,29 @@ if (popup) memory() +/mob/proc/update_flavor_text() + var/msg = input(usr,"Set the flavor text in your 'examine' verb. Don't metagame!","Flavor Text",html_decode(flavor_text)) as message|null + + if(msg != null) + msg = copytext(msg, 1, MAX_MESSAGE_LEN) + msg = html_encode(msg) + + src.flavor_text = msg + +/mob/proc/warn_flavor_changed() + if(src.flavor_text && src.flavor_text != "") // don't spam people that don't use it! + src << "
| __ |