Moves laughter to the emote
This commit is contained in:
committed by
CitadelStationBot
parent
282dcb3c16
commit
441514937e
@@ -1,3 +1,4 @@
|
||||
<<<<<<< HEAD
|
||||
//The code execution of the emote datum is located at code/datums/emotes.dm
|
||||
/mob/living/emote(act, m_type = null, message = null)
|
||||
act = lowertext(act)
|
||||
@@ -326,6 +327,352 @@
|
||||
/datum/emote/living/surrender
|
||||
key = "surrender"
|
||||
key_third_person = "surrenders"
|
||||
=======
|
||||
//The code execution of the emote datum is located at code/datums/emotes.dm
|
||||
/mob/living/emote(act, m_type = null, message = null)
|
||||
act = lowertext(act)
|
||||
var/param = message
|
||||
var/custom_param = findchar(act, " ")
|
||||
if(custom_param)
|
||||
param = copytext(act, custom_param + 1, length(act) + 1)
|
||||
act = copytext(act, 1, custom_param)
|
||||
|
||||
var/datum/emote/E
|
||||
E = E.emote_list[act]
|
||||
if(!E)
|
||||
to_chat(src, "<span class='notice'>Unusable emote '[act]'. Say *help for a list.</span>")
|
||||
return
|
||||
E.run_emote(src, param, m_type)
|
||||
|
||||
/* EMOTE DATUMS */
|
||||
/datum/emote/living
|
||||
mob_type_allowed_typecache = list(/mob/living)
|
||||
mob_type_blacklist_typecache = list(/mob/living/simple_animal/slime, /mob/living/brain)
|
||||
|
||||
/datum/emote/living/blush
|
||||
key = "blush"
|
||||
key_third_person = "blushes"
|
||||
message = "blushes."
|
||||
|
||||
/datum/emote/living/bow
|
||||
key = "bow"
|
||||
key_third_person = "bows"
|
||||
message = "bows."
|
||||
message_param = "bows to %t."
|
||||
|
||||
/datum/emote/living/burp
|
||||
key = "burp"
|
||||
key_third_person = "burps"
|
||||
message = "burps."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/choke
|
||||
key = "choke"
|
||||
key_third_person = "chokes"
|
||||
message = "chokes!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/cross
|
||||
key = "cross"
|
||||
key_third_person = "crosses"
|
||||
message = "crosses their arms."
|
||||
restraint_check = TRUE
|
||||
|
||||
/datum/emote/living/chuckle
|
||||
key = "chuckle"
|
||||
key_third_person = "chuckles"
|
||||
message = "chuckles."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/collapse
|
||||
key = "collapse"
|
||||
key_third_person = "collapses"
|
||||
message = "collapses!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/collapse/run_emote(mob/user, params)
|
||||
. = ..()
|
||||
if(. && isliving(user))
|
||||
var/mob/living/L = user
|
||||
L.Unconscious(40)
|
||||
|
||||
/datum/emote/living/cough
|
||||
key = "cough"
|
||||
key_third_person = "coughs"
|
||||
message = "coughs!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/dance
|
||||
key = "dance"
|
||||
key_third_person = "dances"
|
||||
message = "dances around happily."
|
||||
restraint_check = TRUE
|
||||
|
||||
/datum/emote/living/deathgasp
|
||||
key = "deathgasp"
|
||||
key_third_person = "deathgasps"
|
||||
message = "seizes up and falls limp, their eyes dead and lifeless..."
|
||||
message_robot = "shudders violently for a moment before falling still, its eyes slowly darkening."
|
||||
message_AI = "lets out a flurry of sparks, its screen flickering as its systems slowly halt."
|
||||
message_alien = "lets out a waning guttural screech, green blood bubbling from its maw..."
|
||||
message_larva = "lets out a sickly hiss of air and falls limply to the floor..."
|
||||
message_monkey = "lets out a faint chimper as it collapses and stops moving..."
|
||||
message_simple = "stops moving..."
|
||||
stat_allowed = UNCONSCIOUS
|
||||
|
||||
/datum/emote/living/deathgasp/run_emote(mob/user, params)
|
||||
var/mob/living/simple_animal/S = user
|
||||
if(istype(S) && S.deathmessage)
|
||||
message_simple = S.deathmessage
|
||||
. = ..()
|
||||
message_simple = initial(message_simple)
|
||||
if(. && isalienadult(user))
|
||||
playsound(user.loc, 'sound/voice/hiss6.ogg', 80, 1, 1)
|
||||
|
||||
/datum/emote/living/drool
|
||||
key = "drool"
|
||||
key_third_person = "drools"
|
||||
message = "drools."
|
||||
|
||||
/datum/emote/living/faint
|
||||
key = "faint"
|
||||
key_third_person = "faints"
|
||||
message = "faints."
|
||||
|
||||
/datum/emote/living/faint/run_emote(mob/user, params)
|
||||
. = ..()
|
||||
if(. && isliving(user))
|
||||
var/mob/living/L = user
|
||||
L.SetSleeping(200)
|
||||
|
||||
/datum/emote/living/flap
|
||||
key = "flap"
|
||||
key_third_person = "flaps"
|
||||
message = "flaps their wings."
|
||||
var/wing_time = 20
|
||||
|
||||
/datum/emote/living/flap/run_emote(mob/user, params)
|
||||
. = ..()
|
||||
if(. && ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
var/open = FALSE
|
||||
if(H.dna.features["wings"] != "None")
|
||||
if("wingsopen" in H.dna.species.mutant_bodyparts)
|
||||
open = TRUE
|
||||
H.CloseWings()
|
||||
else
|
||||
H.OpenWings()
|
||||
addtimer(CALLBACK(H, open ? /mob/living/carbon/human.proc/OpenWings : /mob/living/carbon/human.proc/CloseWings), wing_time)
|
||||
|
||||
/datum/emote/living/flap/aflap
|
||||
key = "aflap"
|
||||
key_third_person = "aflaps"
|
||||
message = "flaps their wings ANGRILY!"
|
||||
wing_time = 10
|
||||
|
||||
/datum/emote/living/flip
|
||||
key = "flip"
|
||||
key_third_person = "flips"
|
||||
restraint_check = TRUE
|
||||
|
||||
/datum/emote/living/flip/run_emote(mob/user, params)
|
||||
. = ..()
|
||||
if(!.)
|
||||
user.SpinAnimation(7,1)
|
||||
|
||||
/datum/emote/living/frown
|
||||
key = "frown"
|
||||
key_third_person = "frowns"
|
||||
message = "frowns."
|
||||
|
||||
/datum/emote/living/gag
|
||||
key = "gag"
|
||||
key_third_person = "gags"
|
||||
message = "gags."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/gasp
|
||||
key = "gasp"
|
||||
key_third_person = "gasps"
|
||||
message = "gasps!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
stat_allowed = UNCONSCIOUS
|
||||
|
||||
/datum/emote/living/giggle
|
||||
key = "giggle"
|
||||
key_third_person = "giggles"
|
||||
message = "giggles."
|
||||
message_mime = "giggles silently!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/glare
|
||||
key = "glare"
|
||||
key_third_person = "glares"
|
||||
message = "glares."
|
||||
message_param = "glares at %t."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/grin
|
||||
key = "grin"
|
||||
key_third_person = "grins"
|
||||
message = "grins."
|
||||
|
||||
/datum/emote/living/groan
|
||||
key = "groan"
|
||||
key_third_person = "groans"
|
||||
message = "groans!"
|
||||
message_mime = "appears to groan!"
|
||||
|
||||
/datum/emote/living/grimace
|
||||
key = "grimace"
|
||||
key_third_person = "grimaces"
|
||||
message = "grimaces."
|
||||
|
||||
/datum/emote/living/jump
|
||||
key = "jump"
|
||||
key_third_person = "jumps"
|
||||
message = "jumps!"
|
||||
restraint_check = TRUE
|
||||
|
||||
/datum/emote/living/kiss
|
||||
key = "kiss"
|
||||
key_third_person = "kisses"
|
||||
message = "blows a kiss."
|
||||
message_param = "blows a kiss to %t."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/laugh
|
||||
key = "laugh"
|
||||
key_third_person = "laughs"
|
||||
message = "laughs."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/laugh/can_run_emote(mob/living/user)
|
||||
. = ..()
|
||||
if(. && iscarbon(user))
|
||||
var/mob/living/carbon/C = user
|
||||
return !C.silent
|
||||
|
||||
/datum/emote/living/laugh/run_emote(mob/user, params)
|
||||
. = ..()
|
||||
if(. && ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(H.dna.species.id == "human")
|
||||
if(user.gender == FEMALE)
|
||||
playsound(H, 'sound/voice/human/womanlaugh.ogg', 50, 1)
|
||||
else
|
||||
playsound(H, pick('sound/voice/human/manlaugh1.ogg', 'sound/voice/human/manlaugh2.ogg'), 50, 1)
|
||||
|
||||
/datum/emote/living/look
|
||||
key = "look"
|
||||
key_third_person = "looks"
|
||||
message = "looks."
|
||||
message_param = "looks at %t."
|
||||
|
||||
/datum/emote/living/nod
|
||||
key = "nod"
|
||||
key_third_person = "nods"
|
||||
message = "nods."
|
||||
message_param = "nods at %t."
|
||||
|
||||
/datum/emote/living/point
|
||||
key = "point"
|
||||
key_third_person = "points"
|
||||
message = "points."
|
||||
message_param = "points at %t."
|
||||
restraint_check = TRUE
|
||||
|
||||
/datum/emote/living/pout
|
||||
key = "pout"
|
||||
key_third_person = "pouts"
|
||||
message = "pouts."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/scream
|
||||
key = "scream"
|
||||
key_third_person = "screams"
|
||||
message = "screams."
|
||||
message_mime = "acts out a scream!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/scowl
|
||||
key = "scowl"
|
||||
key_third_person = "scowls"
|
||||
message = "scowls."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/shake
|
||||
key = "shake"
|
||||
key_third_person = "shakes"
|
||||
message = "shakes their head."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/shiver
|
||||
key = "shiver"
|
||||
key_third_person = "shiver"
|
||||
message = "shivers."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/sigh
|
||||
key = "sigh"
|
||||
key_third_person = "sighs"
|
||||
message = "sighs."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/sit
|
||||
key = "sit"
|
||||
key_third_person = "sits"
|
||||
message = "sits down."
|
||||
|
||||
/datum/emote/living/smile
|
||||
key = "smile"
|
||||
key_third_person = "smiles"
|
||||
message = "smiles."
|
||||
|
||||
/datum/emote/living/sneeze
|
||||
key = "sneeze"
|
||||
key_third_person = "sneezes"
|
||||
message = "sneezes."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/smug
|
||||
key = "smug"
|
||||
key_third_person = "smugs"
|
||||
message = "grins smugly."
|
||||
|
||||
/datum/emote/living/sniff
|
||||
key = "sniff"
|
||||
key_third_person = "sniffs"
|
||||
message = "sniffs."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/snore
|
||||
key = "snore"
|
||||
key_third_person = "snores"
|
||||
message = "snores."
|
||||
message_mime = "sleeps soundly."
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/stare
|
||||
key = "stare"
|
||||
key_third_person = "stares"
|
||||
message = "stares."
|
||||
message_param = "stares at %t."
|
||||
|
||||
/datum/emote/living/strech
|
||||
key = "stretch"
|
||||
key_third_person = "stretches"
|
||||
message = "stretches their arms."
|
||||
|
||||
/datum/emote/living/sulk
|
||||
key = "sulk"
|
||||
key_third_person = "sulks"
|
||||
message = "sulks down sadly."
|
||||
|
||||
/datum/emote/living/surrender
|
||||
key = "surrender"
|
||||
key_third_person = "surrenders"
|
||||
>>>>>>> 32050be... Moves laughter to the emote (#31276)
|
||||
message = "puts their hands on their head and falls to the ground, they surrender!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
|
||||
@@ -169,18 +169,7 @@
|
||||
/datum/reagent/consumable/laughter/on_mob_life(mob/living/carbon/M)
|
||||
if(!iscarbon(M))
|
||||
return
|
||||
if(!M.silent)//cant laugh if you're mute
|
||||
M.emote("laugh")
|
||||
var/laughnum = rand(1,2)
|
||||
if(M.gender == MALE)
|
||||
if(laughnum == 1)
|
||||
playsound(get_turf(M), 'sound/voice/human/manlaugh1.ogg', 50, 1)
|
||||
if(laughnum == 2)
|
||||
playsound(get_turf(M), 'sound/voice/human/manlaugh2.ogg', 50, 1)
|
||||
else if(M.gender == FEMALE)
|
||||
playsound(get_turf(M), 'sound/voice/human/womanlaugh.ogg', 65, 1)
|
||||
else//non-binary gender just sounds like a man
|
||||
playsound(get_turf(M), 'sound/voice/human/manlaugh1.ogg', 50, 1)
|
||||
M.emote("laugh")
|
||||
..()
|
||||
|
||||
/datum/reagent/consumable/potato_juice
|
||||
|
||||
Reference in New Issue
Block a user