BOOL NPC_readNPCCreateFiles( char* topdirectory ,int createsize) { STRING64 *filenames; int filenum; int i; filenames = (STRING64 *)allocateMemory( sizeof( STRING64 ) * (int)getFilesearchnum( ) ); if( filenames == NULL ){ print( "Reading NPC Create files... Memory Error\n" ); return FALSE; } filenum = rgetFileName( topdirectory ,filenames ,getFilesearchnum( ) ); if( filenum == -1 ){ freeMemory( filenames ); return FALSE; } if( filenum >= getFilesearchnum( ) ){ print( "filessearchnum failure %d\n", getFilesearchnum( ) ); while( 1 ); } if( !NPC_initCreateArray( createsize ) ){ fprint( "initCreateArray Error\n" ); freeMemory( filenames ); return FALSE; } print( "Reading NPC Create files... " ); for( i = 0 ; i < filenum ; i ++ ) if( NPC_IsNPCCreateFile( filenames[i].string )) if( NPC_readCreateFile( filenames[i].string ) == -1 ) break; print( "There is %d valid create\n" , NPC_create_readindex ); NPC_createnum=NPC_create_readindex; #ifdef DEBUG /* 99/4/8 By Kawata csv形式にしてやる */ print( "Npc_Create's\n"); for( i = 0 ; i < NPC_createnum ; i ++ ){ int j; /*print( "NPC_create[%d]:\n", i);*/ print( "%d,", i); for( j = 0 ; j < NPC_CREATECHARNUM ; j ++ ) print("%s," , NPC_create[i].chardata[j].string ); /*print( "\tIntdata\t" );*/ for( j = 0 ; j < NPC_CREATEINTNUM ; j ++ ) print("%d," , NPC_create[i].intdata[j] ); /***print("\n" ); print( "\tChardata\t" );***/ for( j = 0 ; j < NPC_create[i].intdata[NPC_CREATEENEMYNUM]; j ++ ) print("%d" , NPC_create[i].templateindex[j] ); /*print("\n" );*/ print("\n" ); } #endif /*DEBUG*/ freeMemory( filenames ); return TRUE; }
BOOL NPC_readNPCTemplateFiles( char* topdirectory ,int templatesize) { STRING64 *filenames; int filenum; int i; filenames = (STRING64 *)allocateMemory( sizeof( STRING64 ) * (int)getFilesearchnum( ) ); if( filenames == NULL ){ print( "Reading NPC Create files... Memory Error\n" ); return FALSE; } filenum = rgetFileName( topdirectory ,filenames ,getFilesearchnum( ) ); if( filenum == -1 ){ fprint("Can't get file names recursively from %s\n",topdirectory); freeMemory( filenames ); return FALSE; } if( filenum >= getFilesearchnum( ) ){ print( "filessearchnum failure %d\n", getFilesearchnum( ) ); while( 1 ); }else{ print( "Searched File = %d\n", filenum ); } if( !NPC_initTemplateArray( templatesize ) ){ fprint( "initTemplateArray Error\n" ); freeMemory( filenames ); return FALSE; } print( "Reading NPC template files.... " ); for( i = 0 ; i < filenum ; i ++ ) if( NPC_IsNPCTemplateFile( filenames[i].string )) NPC_readTemplateFile( filenames[i].string ); print( "There is %d valid template\n" , NPC_template_readindex ); NPC_templatenum=NPC_template_readindex; freeMemory( filenames ); return TRUE; }