/
LIB3/
LIB3/D/ADMIN/
LIB3/D/ADMIN/OBJ/
LIB3/D/ADMIN/ROOM/W/
LIB3/D/HOME/
LIB3/D/HOME/CITY/ARENA/
LIB3/D/HOME/CITY/ITEMS/
LIB3/D/HOME/CITY/POSTOFFI/
LIB3/DOC/
LIB3/GLOBAL/SPECIAL/
LIB3/GLOBAL/VIRTUAL/
LIB3/NET/
LIB3/NET/CONFIG/
LIB3/NET/DAEMON/CHARS/
LIB3/NET/GOPHER/
LIB3/NET/INHERIT/
LIB3/NET/OBJ/
LIB3/NET/SAVE/
LIB3/NET/VIRTUAL/
LIB3/OBJ/B_DAY/
LIB3/OBJ/HANDLERS/TERM_TYP/
LIB3/PLAYERS/B/
LIB3/PLAYERS/N/
LIB3/ROOM/
LIB3/SAVE/
LIB3/SAVE/BOARDS/
LIB3/SAVE/ENVIRON/
LIB3/SAVE/POST/
LIB3/STD/COMMANDS/SHADOWS/
LIB3/STD/CREATOR/
LIB3/STD/DOM/
LIB3/STD/EFFECTS/
LIB3/STD/EFFECTS/HEALING/
LIB3/STD/EFFECTS/OTHER/
LIB3/STD/EFFECTS/POISONS/
LIB3/STD/ENVIRON/
LIB3/STD/GUILDS/
LIB3/STD/LIQUIDS/
LIB3/STD/ROOM/
LIB3/STD/TRIGGER/SHADOW/
LIB3/W/
LIB3/W/BANNOR/
LIB3/W/NEWSTYLE/

string long()
{
    return "The gentle language spoken by 'good' creatures.\n";
}

int     mod( int i )
{
    return i - 4 * (i / 4);
}

string  lang( string str )
{
/* This should sound like phonetic hawaiian */
    switch( strlen( str ) )
    {
	case 1:
	    return({ "a", "h", "l", "o" })[ mod( str[ 0 ] ) ];
	case 2:
	    return({ "oh", "al", "co", "la" })[ mod( str[ 0 ] ) ];
	case 3:
	    return({ "ahl", "col", "cal", "loh" })[ mod( str[ 0 ] ) ];
	case 4:
	    return({ "ohha", "caal", "cohl", "loca" })[ mod( str[ 0 ] ) ];
	case 5:
	    return({ "ahhol", "hocal", "looha", "ohalo" })[ mod( str[ 0 ] ) ];
	case 6:
	    return({ "cohhol", "alocoh", "cocaho", "lalola" })[ mod( str[ 0 ] ) ];
	case 7:
	    return({ "ahhaloh", "holacol", "cohocal", "ocohoha" })[ mod( str[ 0 ] ) ];
	case 8:
	    return({ "ohhocola", "allocahh", "coalocla", "lalahaho" })[ mod( str[ 0 ] ) ];
	default:
	    return({ "aa", "cc", "hh", "ll" })[ 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 ) });
}