/mob/living/carbon/alien/emote(var/act,var/m_type=1,var/message = null) var/param = null if (findtext(act, "-", 1, null)) var/t1 = findtext(act, "-", 1, null) param = copytext(act, t1 + 1, length(act) + 1) act = copytext(act, 1, t1) if(findtext(act,"s",-1) && !findtext(act,"_",-2))//Removes ending s's unless they are prefixed with a '_' act = copytext(act,1,length(act)) var/muzzled = istype(src.wear_mask, /obj/item/clothing/mask/muzzle) switch(act) if ("me") if(silent) return if (src.client) if (client.prefs.muted & MUTE_IC) src << "\red You cannot send IC messages (muted)." return if (src.client.handle_spam_prevention(message,MUTE_IC)) return if (stat) return if(!(message)) return return custom_emote(m_type, message) if ("custom") return custom_emote(m_type, message) if("sign") if (!src.restrained()) message = text("The alien signs[].", (text2num(param) ? text(" the number []", text2num(param)) : null)) m_type = 1 if ("burp") if (!muzzled) message = "[src] burps." m_type = 2 if("deathgasp") message = "The [src.name] lets out a waning guttural screech, green blood bubbling from its maw." m_type = 2 if("scratch") if (!src.restrained()) message = "The [src.name] scratches." m_type = 1 if("whimper") if (!muzzled) message = "The [src.name] whimpers." m_type = 2 if("tail") message = "The [src.name] waves its tail." m_type = 1 if("gasp") message = "The [src.name] gasps." m_type = 2 if("shiver") message = "The [src.name] shivers." m_type = 2 if("drool") message = "The [src.name] drools." m_type = 1 if("scretch") if (!muzzled) message = "The [src.name] scretches." m_type = 2 if("choke") message = "The [src.name] chokes." m_type = 2 if("moan") message = "The [src.name] moans!" m_type = 2 if("nod") message = "The [src.name] nods its head." m_type = 1 // if("sit") // message = "The [src.name] sits down." //Larvan can't sit down, /N // m_type = 1 if("sway") message = "The [src.name] sways around dizzily." m_type = 1 if("sulk") message = "The [src.name] sulks down sadly." m_type = 1 if("twitch") message = "The [src.name] twitches violently." m_type = 1 if("dance") if (!src.restrained()) message = "The [src.name] dances around happily." m_type = 1 if("roll") if (!src.restrained()) message = "The [src.name] rolls." m_type = 1 if("shake") message = "The [src.name] shakes its head." m_type = 1 if("gnarl") if (!muzzled) message = "The [src.name] gnarls and shows its teeth.." m_type = 2 if("jump") message = "The [src.name] jumps!" m_type = 1 if("hiss_") message = "The [src.name] hisses softly." m_type = 1 if("collapse") Paralyse(2) message = text("[] collapses!", src) m_type = 2 if("chirp") message = "The [src.name] chirps!" playsound(src.loc, 'sound/misc/nymphchirp.ogg', 50, 0) m_type = 2 if("help") src << "burp, chirp, choke, collapse, dance, drool, gasp, shiver, gnarl, jump, moan, nod, roll, scratch,\nscretch, shake, sign-#, sulk, sway, tail, twitch, whimper" else src << text("Invalid Emote: []", act) if ((message && src.stat == 0)) log_emote("[name]/[key] : [message]") if (m_type & 1) for(var/mob/O in viewers(src, null)) O.show_message(message, m_type) //Foreach goto(703) else for(var/mob/O in hearers(src, null)) O.show_message(message, m_type) //Foreach goto(746) return