Skip to content

Commit

Permalink
Merge pull request #3690 from MistakeNot4892/tweak/default_emotes
Browse files Browse the repository at this point in the history
Updating the emote system
  • Loading branch information
out-of-phaze authored Mar 8, 2024
2 parents 01f7dce + 5b4b63a commit 6055bc6
Show file tree
Hide file tree
Showing 65 changed files with 822 additions and 650 deletions.
6 changes: 3 additions & 3 deletions code/datums/ai/human.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@
return

if(H.get_shock() && H.shock_stage < 40 && prob(3))
H.emote(pick("moan","groan"))
H.emote(pick(/decl/emote/audible/moan, /decl/emote/audible/groan))

if(H.shock_stage > 10 && prob(3))
H.emote(pick("cry","whimper"))
H.emote(pick(/decl/emote/audible/cry, /decl/emote/audible/whimper))

if(H.shock_stage >= 40 && prob(3))
H.emote("scream")
H.emote(/decl/emote/audible/scream)

if(!H.restrained() && H.lying && H.shock_stage >= 60 && prob(3))
H.custom_emote("thrashes in agony")
Expand Down
2 changes: 1 addition & 1 deletion code/game/machinery/doors/airlock_interactions.dm
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@
/mob/living/carbon/airlock_crush(var/crush_damage)
. = ..()
if (can_feel_pain())
emote("scream")
emote(/decl/emote/audible/scream)

/mob/living/silicon/robot/airlock_crush(var/crush_damage)
return ..(round(crush_damage / CYBORG_AIRLOCKCRUSH_RESISTANCE)) //TODO implement robot melee armour and remove this.
2 changes: 1 addition & 1 deletion code/game/machinery/suit_cycler.dm
Original file line number Diff line number Diff line change
Expand Up @@ -441,7 +441,7 @@

if(occupant)
if(prob(radiation_level*2) && occupant.can_feel_pain())
occupant.emote("scream")
occupant.emote(/decl/emote/audible/scream)
if(radiation_level > 2)
occupant.take_organ_damage(0, radiation_level*2 + rand(1,3))
if(radiation_level > 1)
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/effects/effect_system.dm
Original file line number Diff line number Diff line change
Expand Up @@ -296,7 +296,7 @@ steam.start() -- spawns the effect
R.take_overall_damage(0, 0.75)
if (R.coughedtime != 1)
R.coughedtime = 1
R.emote("gasp")
R.emote(/decl/emote/audible/gasp)
spawn (20)
R.coughedtime = 0

Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/items/weapons/defib.dm
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,7 @@
H.stun_effect_act(2, 120, target_zone)
var/burn_damage = H.electrocute_act(burn_damage_amt*2, src, def_zone = target_zone)
if(burn_damage > 15 && H.can_feel_pain())
H.emote("scream")
H.emote(/decl/emote/audible/scream)
var/obj/item/organ/internal/heart/doki = locate() in affecting.internal_organs
if(istype(doki) && doki.pulse && !doki.open && prob(10))
to_chat(doki, SPAN_DANGER("Your [doki] has stopped!"))
Expand All @@ -440,7 +440,7 @@
M.failed_last_breath = 0 //So mobs that died of oxyloss don't revive and have perpetual out of breath.
M.reload_fullscreen()

M.emote("gasp")
M.emote(/decl/emote/audible/gasp)
SET_STATUS_MAX(M, STAT_WEAK, rand(10,25))
apply_brain_damage(M, deadtime)

Expand Down
163 changes: 6 additions & 157 deletions code/modules/emotes/definitions/_mob.dm
Original file line number Diff line number Diff line change
@@ -1,159 +1,8 @@
/mob
var/list/default_emotes = list()
var/list/usable_emotes = list()
/mob/proc/get_default_emotes()
return

/mob/proc/update_emotes(var/skip_sort)
usable_emotes.Cut()
for(var/emote in default_emotes)
var/decl/emote/emote_datum = GET_DECL(emote)
if(emote_datum.check_user(src))
usable_emotes[emote_datum.key] = emote_datum
if(!skip_sort)
usable_emotes = sortTim(usable_emotes, /proc/cmp_text_asc)

/mob/Initialize()
/mob/living/get_default_emotes()
. = ..()
update_emotes()

// Specific defines follow.
/mob/living/carbon/alien
default_emotes = list(
/decl/emote/visible,
/decl/emote/visible/scratch,
/decl/emote/visible/drool,
/decl/emote/visible/nod,
/decl/emote/visible/sway,
/decl/emote/visible/sulk,
/decl/emote/visible/twitch,
/decl/emote/visible/dance,
/decl/emote/visible/roll,
/decl/emote/visible/shake,
/decl/emote/visible/jump,
/decl/emote/visible/shiver,
/decl/emote/visible/collapse,
/decl/emote/visible/spin,
/decl/emote/visible/sidestep,
/decl/emote/audible/hiss,
/decl/emote/audible,
/decl/emote/audible/deathgasp_alien,
/decl/emote/audible/whimper,
/decl/emote/audible/gasp,
/decl/emote/audible/scretch,
/decl/emote/audible/choke,
/decl/emote/audible/moan,
/decl/emote/audible/gnarl
)

/mob/living/carbon/human
default_emotes = list(
/decl/emote/visible/blink,
/decl/emote/audible/synth,
/decl/emote/audible/synth/ping,
/decl/emote/audible/synth/buzz,
/decl/emote/audible/synth/confirm,
/decl/emote/audible/synth/deny,
/decl/emote/visible/nod,
/decl/emote/visible/shake,
/decl/emote/visible/shiver,
/decl/emote/visible/collapse,
/decl/emote/audible/gasp,
/decl/emote/audible/sneeze,
/decl/emote/audible/sniff,
/decl/emote/audible/snore,
/decl/emote/audible/whimper,
/decl/emote/audible/yawn,
/decl/emote/audible/clap,
/decl/emote/audible/chuckle,
/decl/emote/audible/cough,
/decl/emote/audible/cry,
/decl/emote/audible/sigh,
/decl/emote/audible/laugh,
/decl/emote/audible/mumble,
/decl/emote/audible/grumble,
/decl/emote/audible/groan,
/decl/emote/audible/moan,
/decl/emote/audible/grunt,
/decl/emote/audible/slap,
/decl/emote/human/deathgasp,
/decl/emote/audible/giggle,
/decl/emote/audible/scream,
/decl/emote/visible/airguitar,
/decl/emote/visible/blink_r,
/decl/emote/visible/bow,
/decl/emote/visible/salute,
/decl/emote/visible/flap,
/decl/emote/visible/aflap,
/decl/emote/visible/drool,
/decl/emote/visible/eyebrow,
/decl/emote/visible/twitch,
/decl/emote/visible/dance,
/decl/emote/visible/twitch_v,
/decl/emote/visible/faint,
/decl/emote/visible/frown,
/decl/emote/visible/blush,
/decl/emote/visible/wave,
/decl/emote/visible/glare,
/decl/emote/visible/stare,
/decl/emote/visible/look,
/decl/emote/visible/point,
/decl/emote/visible/raise,
/decl/emote/visible/grin,
/decl/emote/visible/shrug,
/decl/emote/visible/smile,
/decl/emote/visible/pale,
/decl/emote/visible/tremble,
/decl/emote/visible/wink,
/decl/emote/visible/hug,
/decl/emote/visible/dap,
/decl/emote/visible/signal,
/decl/emote/visible/handshake,
/decl/emote/visible/afold,
/decl/emote/visible/alook,
/decl/emote/visible/eroll,
/decl/emote/visible/hbow,
/decl/emote/visible/hip,
/decl/emote/visible/holdup,
/decl/emote/visible/hshrug,
/decl/emote/visible/crub,
/decl/emote/visible/erub,
/decl/emote/visible/fslap,
/decl/emote/visible/ftap,
/decl/emote/visible/hrub,
/decl/emote/visible/hspread,
/decl/emote/visible/pocket,
/decl/emote/visible/rsalute,
/decl/emote/visible/rshoulder,
/decl/emote/visible/squint,
/decl/emote/visible/tfist,
/decl/emote/visible/tilt,
/decl/emote/visible/spin,
/decl/emote/visible/sidestep,
/decl/emote/visible/vomit
)

/mob/living/silicon/robot
default_emotes = list(
/decl/emote/audible/clap,
/decl/emote/visible/bow,
/decl/emote/visible/salute,
/decl/emote/visible/flap,
/decl/emote/visible/aflap,
/decl/emote/visible/twitch,
/decl/emote/visible/twitch_v,
/decl/emote/visible/dance,
/decl/emote/visible/nod,
/decl/emote/visible/shake,
/decl/emote/visible/glare,
/decl/emote/visible/look,
/decl/emote/visible/stare,
/decl/emote/visible/deathgasp_robot,
/decl/emote/visible/spin,
/decl/emote/visible/sidestep,
/decl/emote/audible/synth,
/decl/emote/audible/synth/ping,
/decl/emote/audible/synth/buzz,
/decl/emote/audible/synth/confirm,
/decl/emote/audible/synth/deny,
/decl/emote/audible/synth/security,
/decl/emote/audible/synth/security/halt
)
var/decl/species/my_species = get_species()
if(LAZYLEN(my_species?.default_emotes))
return . | my_species.default_emotes
11 changes: 0 additions & 11 deletions code/modules/emotes/definitions/_species.dm

This file was deleted.

Loading

0 comments on commit 6055bc6

Please sign in to comment.