string long() { return "The harsh language spoken by 'evil' creatures.\n"; } int mod( int i ) { return i - 4 * (i / 4); } string lang( string str ) { /* Phonetically similar to Tolkiens 'Morbeth' */ switch( strlen( str ) ) { case 1: return({ "a", "g", "k", "u" })[ mod( str[ 0 ] ) ]; case 2: return({ "ug", "ak", "vu", "ka" })[ mod( str[ 0 ] ) ]; case 3: return({ "akk", "vuk", "vak", "kug" })[ mod( str[ 0 ] ) ]; case 4: return({ "ugga", "vakk", "vugk", "kuva" })[ mod( str[ 0 ] ) ]; case 5: return({ "agguk", "guvak", "kuuga", "ugaku" })[ mod( str[ 0 ] ) ]; case 6: return({ "gugguk", "akuvug", "vuvagu", "kakuka" })[ mod( str[ 0 ] ) ]; case 7: return({ "aggakug", "gukavuk", "vuguvak", "uvuguga" })[ mod( str[ 0 ] ) ]; case 8: return({ "ugguvuka", "akkuvagg", "vuukvuka", "kakagagu" })[ mod( str[ 0 ] ) ]; default: return({ "aa", "vv", "gg", "kk" })[ mod( str[ 0 ] ) ]; } } string standard_garble( string mess ) { string ret, str; ret = ""; while( sscanf( mess, "%s %s", str, mess ) == 2 ) ret += lang( str ) + " "; return ret + lang( mess ); } mixed garble_tell( string start, string mess ) { return({ start, standard_garble( mess ) }); } mixed garble_shout( string start, string mess ) { return({ start, standard_garble( mess ) }); } mixed garble_say( string start, string mess ) { return({ start, standard_garble( mess ) }); } mixed garble_written( string start, string mess ) { return({ start, standard_garble( mess ) }); }