Well then...I showed you what I removed for common. As I said over again I removed everything with LANG_CLAN did I do it right? I have no clue...I heard about using something called CVS to keep track of what you edited. Is there a way to use it on Cygwin? But I will show you where I think the problem may lie.
This is the part of nanny that says its suppose to give it thier racial language and set it to 100
ch->height =
number_range( ( int )( race_table[ch->race]->height * .9 ), ( int )( race_table[ch->race]->height * 1.1 ) );
ch->weight =
number_range( ( int )( race_table[ch->race]->weight * .9 ), ( int )( race_table[ch->race]->weight * 1.1 ) );
if( ch->Class == CLASS_PALADIN )
ch->alignment = 1000;
/* Give them their racial languages */
if( race_table[ch->race] )
{
for( iLang = 0; lang_array[iLang] != LANG_UNKNOWN; iLang++ )
{
if( IS_SET( race_table[ch->race]->language, 1 << iLang ) )
{
if( ( uLang = skill_lookup( lang_names[iLang] ) ) < 0 )
bug( "%s: cannot find racial language [%s].", __FUNCTION__, lang_names[iLang] );
else
ch->pcdata->learned[uLang] = 100;
}
}
}
And here is my do_speak
void do_speak( CHAR_DATA * ch, char *argument )
{
int langs;
char arg[MAX_INPUT_LENGTH];
argument = one_argument( argument, arg );
if( !str_cmp( arg, "all" ) && IS_IMMORTAL( ch ) )
{
set_char_color( AT_SAY, ch );
send_to_char( "Now speaking all languages.\r\n", ch );
return;
}
for( langs = 0; lang_array[langs] != LANG_UNKNOWN; langs++ )
if( !str_prefix( arg, lang_names[langs] ) )
{
if( knows_language( ch, lang_array[langs], ch ) )
ch->speaking = lang_array[langs];
set_char_color( AT_SAY, ch );
ch_printf( ch, "You now speak %s.\r\n", lang_names[langs] );
return;
}
set_char_color( AT_SAY, ch );
send_to_char( "You do not know that language.\r\n", ch );
}
If there is anything else you need to see let me know. I'm trying my best here lol. |