/* /cmds/player/say.c * from the Foundation II LPC Library * the say command for local communication * created by Descartes of Borg 950412 */ #include <lib.h> inherit LIB_DAEMON; mixed cmd(string args) { string msg, punctuation, verb = "say"; int punc; if( !environment(this_player()) ) return "You are nowhere."; if( !args || args == "" ) { message("my_action", "You mutter to yourself.", this_player()); message("other_action", (string)this_player()->GetName() + " mutters to " + reflexive(this_player()) + ".", environment(this_player()), ({ this_player() })); return 1; } args = capitalize(args); switch(punc = args[<1]) { case '?': verb = "ask"; punctuation = ""; break; case '!': verb = "exclaim"; punctuation = ""; break; default: if ((punc >= 'a' && punc <= 'z') || (punc >= 'A' && punc <= 'Z')) punctuation = "."; else punctuation = ""; break; } if( creatorp(this_player()) || avatarp(this_player()) ) verb = ((string)this_player()->GetMessage(verb) || verb); msg = "You " + verb + ", %^CYAN%^\"" + args + punctuation + "%^RESET%^CYAN%^\"%^RESET%^"; message("my_action", msg, this_player()); msg = (string)this_player()->GetName() + " " + pluralize(verb) + ", %^CYAN%^\"" + args + punctuation + "%^RESET%^CYAN%^\"%^RESET%^"; message("other_action", msg, environment(this_player()), ({ this_player() })); return 1; } void help() { message("help", "Syntax: <say [message]>\n\n" "Sends the message you specify to all people in the same room " "as you. If you are an avatar, you have the ability to customize " "the way these messages come out through the \"message\" " "command.\n\n" "See also: message, page, shout, speak, tell", this_player()); }