BOOL NPC_CHECKFREEPETSKILL( int toindex, int petindex, int skillID){ int skillindex=-1; char SCode[256]; char Free[256]; int i, petID; skillindex = PETSKILL_getPetskillArray( skillID ); memset( Free, 0, sizeof( Free)); if( !PETSKILL_CHECKINDEX( skillindex) ) { return FALSE; } petID = CHAR_getInt( petindex, CHAR_PETID); sprintf( SCode, "%s", PETSKILL_getChar( skillindex, PETSKILL_KINDCODE)); sprintf( Free, "%s", PETSKILL_getChar( skillindex, PETSKILL_FREE)); //CHECK CODE if( !strcmp( SCode, "/0")) { return TRUE; } for( i=0; i<arraysizeof( Code_skill); i++) { if( Code_skill[i].PetId == petID ) { break; } } //找不到这只宠物 if( i == arraysizeof( Code_skill) ) { { char buff1[256]; sprintf( buff1, "%s不能学特殊技能!!", CHAR_getChar( petindex, CHAR_NAME)); CHAR_talkToCli( toindex, -1, buff1, CHAR_COLORYELLOW); } return FALSE; } if( strstr( Code_skill[i].Code, SCode ) != NULL ) { if( NPC_SkillShopPetCheck( toindex, petindex, skillID) == FALSE ) { char buff1[256]; sprintf( buff1, "%s现在还不能学%s!", CHAR_getChar( petindex, CHAR_NAME), PETSKILL_getChar( skillindex, PETSKILL_NAME) ); CHAR_talkToCli( toindex, -1, buff1, CHAR_COLORYELLOW); return FALSE; } return TRUE; }else { char buff1[256]; sprintf( buff1, "%s不能学%s!!", CHAR_getChar( petindex, CHAR_NAME), PETSKILL_getChar( skillindex, PETSKILL_NAME) ); CHAR_talkToCli( toindex, -1, buff1, CHAR_COLORYELLOW); } return FALSE;}