/* command, trial out by Turrican for a commands daemon. */ #include <language.h> #include <player.h> #include <drinks.h> inherit COMMAND_BASE; inherit SPEECH_BASE; int cmd(string emote, string mess) { string word, s1, cur_lang; cur_lang = this_player()->query_current_language(); if (!LANGUAGE_HAND->query_language_spoken(cur_lang)) return notify_fail(capitalize(cur_lang) + " is not a spoken language.\n"); if(TP->query_gagged()) { return notify_fail("You have been gagged! You will not be able " "to say things again until the gag is removed. Perhaps you should " "talk to a creator about this.\n"); } if (!interactive(this_player())) { mess = this_player()->convert_message(mess); mess = this_player()->fit_message(mess); } word = query_word_type(mess); if (this_player()->query_volume(D_ALCOHOL)) mess = drunk_speech(mess); // General speech modifications (curses, etc) s1 = this_player()->mangle_speech(mess); if (stringp(s1)) mess = s1; mess = de_eight(mess); this_player()->remove_hide_invis("hiding"); if (!environment(this_player())) write("You are in limbo, noone can hear you.\n"); this_player()->comm_event(environment(this_player()), "person_say", "$one_short:" + file_name(this_player()) + "$ " "$V$0=" + word + "s," + word + "$V$ " + emote + ": ", mess, cur_lang); word += " " + emote; if (cur_lang != "common") word += " in " + cur_lang; my_mess("You " + word + ": ", mess); this_player()->adjust_time_left(-5); return 1; } mixed *query_patterns() { return ({ "<word'emotion'> <string'message'>", (: cmd($4[0], $4[1]) :) }); }