diff --git a/code/modules/mob/living/living_say.dm b/code/modules/mob/living/living_say.dm index c5f41678732cf..6116f0f702e5d 100644 --- a/code/modules/mob/living/living_say.dm +++ b/code/modules/mob/living/living_say.dm @@ -218,6 +218,7 @@ GLOBAL_LIST_INIT(message_modes_stat_limits, list( var/randomnote = pick("\u2669", "\u266A", "\u266B") message = "[randomnote] [message] [randomnote]" spans |= SPAN_SINGING + flick_overlay_static(mutable_appearance('modular_doppler/emotes/icons/mob_overlay.dmi', "sing", ABOVE_MOB_LAYER), 50) // DOPPLER STATION ADDITION - sing overlay if(message_mods[WHISPER_MODE]) // whisper away spans |= SPAN_ITALICS diff --git a/modular_doppler/emotes/code/overlay_emotes/overlay_emotes.dm b/modular_doppler/emotes/code/overlay_emotes/overlay_emotes.dm new file mode 100644 index 0000000000000..64fb90b0c6d2d --- /dev/null +++ b/modular_doppler/emotes/code/overlay_emotes/overlay_emotes.dm @@ -0,0 +1,74 @@ +#define MOB_OVERLAY_FILE 'modular_doppler/emotes/icons/mob_overlay.dmi' + +/// Overwrite +/datum/emote/living/sing_tune/run_emote(mob/living/user, params, type_override, intentional) + . = ..() + var/mutable_appearance/overlay = mutable_appearance(MOB_OVERLAY_FILE, "sing", ABOVE_MOB_LAYER) + user.flick_overlay_static(overlay, 50) + +/// Additions +/datum/emote/living/sweatdrop + key = "sweatdrop" + key_third_person = "sweatdrops" + cant_muffle = TRUE + +/datum/emote/living/sweatdrop/run_emote(mob/living/user, params, type_override, intentional) + . = ..() + var/mutable_appearance/overlay = mutable_appearance(MOB_OVERLAY_FILE, "sweatdrop", ABOVE_MOB_LAYER) + overlay.pixel_x = 10 + overlay.pixel_y = 10 + user.flick_overlay_static(overlay, 50) + playsound(get_turf(user), 'modular_doppler/emotes/sound/sweatdrop.ogg', 25, TRUE) + +/datum/emote/living/exclaim + key = "exclaim" + key_third_person = "exclaims" + cant_muffle = TRUE + +/datum/emote/living/exclaim/run_emote(mob/living/user, params, type_override, intentional) + . = ..() + var/mutable_appearance/overlay = mutable_appearance(MOB_OVERLAY_FILE, "exclamation", ABOVE_MOB_LAYER) + overlay.pixel_x = 10 + overlay.pixel_y = 28 + user.flick_overlay_static(overlay, 50) + playsound(get_turf(user), 'sound/machines/chime.ogg', 25, TRUE) + +/datum/emote/living/question + key = "question" + key_third_person = "questions" + cant_muffle = TRUE + +/datum/emote/living/question/run_emote(mob/living/user, params, type_override, intentional) + . = ..() + var/mutable_appearance/overlay = mutable_appearance(MOB_OVERLAY_FILE, "question", ABOVE_MOB_LAYER) + overlay.pixel_x = 10 + overlay.pixel_y = 28 + user.flick_overlay_static(overlay, 50) + playsound(get_turf(user), 'modular_doppler/emotes/sound/question.ogg', 25, TRUE) + +/datum/emote/living/realize + key = "realize" + key_third_person = "realizes" + cant_muffle = TRUE + +/datum/emote/living/realize/run_emote(mob/living/user, params, type_override, intentional) + . = ..() + var/mutable_appearance/overlay = mutable_appearance(MOB_OVERLAY_FILE, "realize", ABOVE_MOB_LAYER) + overlay.pixel_y = 15 + user.flick_overlay_static(overlay, 50) + playsound(get_turf(user), 'modular_doppler/emotes/sound/realize.ogg', 25, TRUE) + +/datum/emote/living/annoyed + key = "annoyed" + key_third_person = "is annoyed" + cant_muffle = TRUE + +/datum/emote/living/annoyed/run_emote(mob/living/user, params, type_override, intentional) + . = ..() + var/mutable_appearance/overlay = mutable_appearance(MOB_OVERLAY_FILE, "annoyed", ABOVE_MOB_LAYER) + overlay.pixel_x = 10 + overlay.pixel_y = 10 + user.flick_overlay_static(overlay, 50) + playsound(get_turf(user), 'modular_doppler/emotes/sound/annoyed.ogg', 25, TRUE) + +#undef MOB_OVERLAY_FILE diff --git a/modular_doppler/emotes/icons/mob_overlay.dmi b/modular_doppler/emotes/icons/mob_overlay.dmi new file mode 100644 index 0000000000000..0ebfc028dd965 Binary files /dev/null and b/modular_doppler/emotes/icons/mob_overlay.dmi differ diff --git a/modular_doppler/emotes/sound/annoyed.ogg b/modular_doppler/emotes/sound/annoyed.ogg new file mode 100644 index 0000000000000..d303a8815a1c4 Binary files /dev/null and b/modular_doppler/emotes/sound/annoyed.ogg differ diff --git a/modular_doppler/emotes/sound/question.ogg b/modular_doppler/emotes/sound/question.ogg new file mode 100644 index 0000000000000..a73f03fe2303f Binary files /dev/null and b/modular_doppler/emotes/sound/question.ogg differ diff --git a/modular_doppler/emotes/sound/realize.ogg b/modular_doppler/emotes/sound/realize.ogg new file mode 100644 index 0000000000000..c88593b329f79 Binary files /dev/null and b/modular_doppler/emotes/sound/realize.ogg differ diff --git a/modular_doppler/emotes/sound/sweatdrop.ogg b/modular_doppler/emotes/sound/sweatdrop.ogg new file mode 100644 index 0000000000000..3c5a8ae80d122 Binary files /dev/null and b/modular_doppler/emotes/sound/sweatdrop.ogg differ diff --git a/tgstation.dme b/tgstation.dme index ecd9ba9eecf86..95dd7a18b8bcb 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -6535,6 +6535,7 @@ #include "modular_doppler\emotes\code\added_emotes\animal_sounds.dm" #include "modular_doppler\emotes\code\added_emotes\human_things.dm" #include "modular_doppler\emotes\code\added_emotes\robot_sounds.dm" +#include "modular_doppler\emotes\code\overlay_emotes\overlay_emotes.dm" #include "modular_doppler\enterprise_resource_planning\code\breasts.dm" #include "modular_doppler\enterprise_resource_planning\code\erp_prefs.dm" #include "modular_doppler\examinemore\code\examine_more.dm"