Simple Mob Talk Fix (#8970)

This commit is contained in:
Geeves
2020-05-29 14:04:28 +02:00
committed by GitHub
parent baf5832def
commit 2caef587d9
12 changed files with 43 additions and 2 deletions
+4 -1
View File
@@ -278,7 +278,7 @@ proc/get_radio_key_from_channel(var/channel)
var/speech_bubble_test = say_test(message)
var/image/speech_bubble = image('icons/mob/talk.dmi',src,"h[speech_bubble_test]")
INVOKE_ASYNC(GLOBAL_PROC, /proc/animate_speechbubble, speech_bubble, hear_clients, 30)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, speaking, italics, hear_clients, 30)
do_animate_chat(message, speaking, italics, hear_clients, 30)
for(var/o in listening_obj)
var/obj/O = o
@@ -289,6 +289,9 @@ proc/get_radio_key_from_channel(var/channel)
log_say("[key_name(src)] : ([get_lang_name(speaking)]) [message]",ckey=key_name(src))
return 1
/mob/living/proc/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
/proc/animate_speechbubble(image/I, list/show_to, duration)
var/matrix/M = matrix()
M.Scale(0,0)
@@ -156,3 +156,6 @@
newstate = "[health_prefix]_health[newstate]"
if(healths.icon_state != newstate)
healths.icon_state = newstate
/mob/living/simple_animal/construct/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
@@ -25,6 +25,9 @@
for(var/spell in wizardy_spells)
src.add_spell(new spell, "const_spell_ready")
/mob/living/simple_animal/familiar/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
/mob/living/simple_animal/familiar/carcinus
name = "crab"
desc = "A small crab said to be made of stone and starlight."
@@ -217,3 +220,6 @@
add_language(LANGUAGE_TCB)
name = initial(name)
desc = initial(desc)
/mob/living/simple_animal/rat/familiar/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
@@ -51,6 +51,8 @@
icon_living = "horror_alt"
icon_dead = "horror_alt_dead"
/mob/living/simple_animal/hostile/true_changeling/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
/mob/living/simple_animal/hostile/true_changeling/Life()
..()
@@ -1,6 +1,6 @@
/mob/living/simple_animal/hostile/faithless
name = "Faithless"
desc = "The Wish Granter's faith in humanity, incarnate"
desc = "The Wish Granter's faith in humanity, incarnate."
icon = 'icons/mob/npc/human.dmi'
icon_state = "faithless"
icon_living = "faithless"
@@ -65,6 +65,9 @@
..()
check_horde()
/mob/living/simple_animal/hostile/faithless/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
/mob/living/simple_animal/hostile/faithless/wizard
name = "lost soul"
desc = "The result of a dark bargain."
@@ -41,6 +41,9 @@
attack_emote = "focuses on"
var/mob/living/simple_animal/hostile/hivebotbeacon/linked_parent = null
/mob/living/simple_animal/hostile/hivebot/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
/mob/living/simple_animal/hostile/hivebot/get_bullet_impact_effect_type(var/def_zone)
return BULLET_IMPACT_METAL
@@ -63,6 +63,9 @@
add_language(LANGUAGE_SIIK_MAAS)
set_default_language(LANGUAGE_SIIK_MAAS)
/mob/living/simple_animal/hostile/republicon/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
/mob/living/simple_animal/hostile/republicon/get_bullet_impact_effect_type(var/def_zone)
return BULLET_IMPACT_METAL
@@ -62,6 +62,9 @@
ion_trail = new(src)
ion_trail.start()
/mob/living/simple_animal/hostile/retaliate/malf_drone/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
/mob/living/simple_animal/hostile/retaliate/malf_drone/Allow_Spacemove(var/check_drift = 0)
return 1
@@ -121,6 +121,9 @@
..()
stat("Held Item", held_item)
/mob/living/simple_animal/parrot/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
/*
* Inventory
*/
@@ -40,6 +40,9 @@
new residue(loc)
qdel(src)
/mob/living/simple_animal/shade/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, message, language, small, show_to, duration)
/mob/living/simple_animal/shade/attackby(var/obj/item/O as obj, var/mob/user as mob) //Marker -Agouri
if(istype(O, /obj/item/device/soulstone))
var/obj/item/device/soulstone/S = O;
@@ -598,6 +598,9 @@ mob/living/simple_animal/bullet_act(var/obj/item/projectile/Proj)
..(message, null, verb)
/mob/living/simple_animal/do_animate_chat(var/message, var/datum/language/language, var/small, var/list/show_to, var/duration, var/list/message_override)
INVOKE_ASYNC(src, /atom/movable/proc/animate_chat, pick(speak), language, small, show_to, duration)
/mob/living/simple_animal/get_speech_ending(verb, var/ending)
return verb
+6
View File
@@ -0,0 +1,6 @@
author: Geeves
delete-after: True
changes:
- bugfix: "Most simple mobs can no longer communicate via floating messages."