/* Written to get the names of imms and there levels from the players
"*.fng" file. needs to be in players directory.
-Decklarean
God have mercy on your soul. This is one long hack.
-Decklarean
*/
#include<stdio.h>
#include<stdlib.h>
int main ( void )
{
FILE *FngDirInput, *FngInput, *PfileInput;
FILE *champion, *truststrange,
*clan1,
*clan2,
*clan3,
*clan4,
*clan5,
*clan6,
*clan7,
*clan8,
*clan9,
*clan10,
*clan11,
*level101,
*level102,
*level103,
*level104,
*level105,
*level106,
*level107,
*level108;
char fngfile[256];
char garbage[256];
char PfileName[256];
char name[256];
int trust;
int clan;
int level;
int J;
char S;
int
total1 =0,
total2 =0,
total3 =0,
total4 =0,
total5 =0,
total6 =0,
total7 =0,
total8 =0,
total9 =0,
total10 =0,
total11 =0;
system ( "ls -R */*.fng > FNGDIRINFO" );
if ( ( FngDirInput = fopen( "FNGDIRINFO", "rt" ) ) == NULL )
{
printf ( "Error: Can't open FNGDIRINFO file.\n" );
fclose(FngDirInput);
fclose(FngInput);
fclose(PfileInput);
exit(1);
}
champion = fopen ( "Champion.txt", "wt" );
clan1 = fopen ( "clan1.tmpee", "wt" );
fprintf ( clan1, "\n---Dark Servants\n\n" );
clan2 = fopen ( "clan2.tmpee", "wt" );
fprintf ( clan2, "\n---Elysium\n\n" );
clan3 = fopen ( "clan3.tmpee", "wt" );
fprintf ( clan3, "\n---Vendetta\n\n" );
clan4 = fopen ( "clan4.tmpee", "wt" );
fprintf ( clan4, "\n---Mystics\n\n" );
clan5 = fopen ( "clan5.tmpee", "wt" );
fprintf ( clan5, "\n---Grim Reapers\n\n" );
clan6 = fopen ( "clan6.tmpee", "wt" );
fprintf ( clan6, "\n---Head Honchos\n\n" );
clan7 = fopen ( "clan7.tmpee", "wt" );
fprintf ( clan7, "\n---Clan of One\n\n" );
clan8 = fopen ( "clan8.tmpee", "wt" );
fprintf ( clan8, "\n---Incarnate\n\n" );
clan9 = fopen ( "clan9.tmpee", "wt" );
fprintf ( clan9, "\n---Special Forces\n\n" );
clan10 = fopen ( "clan10.tmpee", "wt" );
fprintf ( clan10, "\n---Curators\n\n" );
clan11 = fopen ( "clan11.tmpee", "wt" );
fprintf ( clan11, "\n---Merry Pirates\n\n" );
level101 = fopen ( "level101.tmpee", "wt" );
fprintf( level101, "\n---Avatar\n\n" );
level102 = fopen ( "level102.tmpee", "wt" );
fprintf( level102, "\n---Immortals\n\n" );
level103 = fopen ( "level103.tmpee", "wt" );
fprintf( level103, "\n---Builders\n\n" );
level104 = fopen ( "level104.tmpee", "wt" );
fprintf( level104, "\n---Gods\n\n" );
level105 = fopen ( "level105.tmpee", "wt" );
fprintf( level105, "\n---Dieties\n\n" );
level106 = fopen ( "level106.tmpee", "wt" );
fprintf( level106, "\n---Guardians\n\n" );
level107 = fopen ( "level107.tmpee", "wt" );
fprintf( level107, "\n---Council\n\n" );
level108 = fopen ( "level108.tmpee", "wt" );
fprintf( level108, "\n---Implementors\n\n" );
truststrange = fopen ( "truststrange.tmpee", "wt" );
fprintf( truststrange, "\n---Trusted nonimmortals\n\n" );
pclist = fopen ( "pclist", "wt" );
printf("Building ImmsLevels.txt, ClanList.txt, Champion.txt\n");
while ( fscanf( FngDirInput, "%s", &fngfile ) != EOF )
{
if ( ( FngInput = fopen( fngfile, "rt" ) ) == NULL )
{
printf ( "Error: Unable to open %s.\n", fngfile );
fclose(FngDirInput);
fclose(FngInput);
fclose(PfileInput);
exit(1);
}
fscanf( FngInput, "%s", &garbage ); /*name:*/
fscanf( FngInput, "%s", &name ); /*player name*/
fscanf( FngInput, "%s", &garbage ); /*mud*/
fscanf( FngInput, "%s", &garbage ); /*age*/
fscanf( FngInput, "%s", &garbage ); /*player age*/
fscanf( FngInput, "%s", &garbage ); /*level:*/
/* fscanf( FngInput, "%d", &level ); *//*player level*/
/*got what we want so close the file*/
fclose(FngInput);
/* printf( "%s: %d\n", name, level); */
/* if ( level == 100 )
fprintf( champion, "%s\n", name);
if ( level == 106 )
fprintf( level101, "%s: %d\n", name, level );
if ( level == 107 )
fprintf( level102, "%s: %d\n", name, level );
if ( level == 108 )
fprintf( level103, "%s: %d\n", name, level );
if ( level == 109 )
fprintf( level104, "%s: %d\n", name, level );
if ( level == 110 )
fprintf( level105, "%s: %d\n", name, level );
if ( level == 111 )
fprintf( level106, "%s: %d\n", name, level );
if ( level == 112 )
fprintf( level107, "%s: %d\n", name, level );
if ( level == 113 )
fprintf( level108, "%s: %d\n", name, level );
*/
/* if (strstr(fngfile, "A"))
strcpy (PfileName, "a");
if (strstr(fngfile, "B"))
strcpy (PfileName, "b");
if (strstr(fngfile, "C"))
strcpy (PfileName, "c");
if (strstr(fngfile, "D"))
strcpy (PfileName, "d");
if (strstr(fngfile, "E"))
strcpy (PfileName, "e");
if (strstr(fngfile, "F"))
strcpy (PfileName, "f");
if (strstr(fngfile, "G"))
strcpy (PfileName, "g");
if (strstr(fngfile, "H"))
strcpy (PfileName, "h");
if (strstr(fngfile, "I"))
strcpy (PfileName, "i");
if (strstr(fngfile, "J"))
strcpy (PfileName, "j");
if (strstr(fngfile, "K"))
strcpy (PfileName, "k");
if (strstr(fngfile, "L"))
strcpy (PfileName, "l");
if (strstr(fngfile, "M"))
strcpy (PfileName, "m");
if (strstr(fngfile, "N"))
strcpy (PfileName, "n");
if (strstr(fngfile, "O"))
strcpy (PfileName, "o");
if (strstr(fngfile, "P"))
strcpy (PfileName, "p");
if (strstr(fngfile, "Q"))
strcpy (PfileName, "q");
if (strstr(fngfile, "R"))
strcpy (PfileName, "r");
if (strstr(fngfile, "S"))
strcpy (PfileName, "s");
if (strstr(fngfile, "T"))
strcpy (PfileName, "t");
if (strstr(fngfile, "U"))
strcpy (PfileName, "u");
if (strstr(fngfile, "V"))
strcpy (PfileName, "v");
if (strstr(fngfile, "W"))
strcpy (PfileName, "w");
if (strstr(fngfile, "X"))
strcpy (PfileName, "x");
if (strstr(fngfile, "Y"))
strcpy (PfileName, "y");
if (strstr(fngfile, "Z"))
strcpy (PfileName, "z");
strcat(PfileName, "/" );
*/
J = strlen( fngfile );
fngfile[J-1] = ' ';
fngfile[J-2] = ' ';
fngfile[J-3] = ' ';
fngfile[J-4] = '\0';
strcpy (PfileName, fngfile);
/* strcat(PfileName, name);*/
/* printf( "??? %s \n", PfileName ); */
if ( ( PfileInput = fopen( PfileName, "rt" ) ) == NULL )
{
printf ( "Error: Can't open pfile %s.\n", PfileName );
fclose(FngDirInput);
fclose(FngInput);
fclose(PfileInput);
exit(1);
}
clan = 0; /* default the clan to 0 */
while (strcmp ( garbage, "Nm" ) )
fscanf( PfileInput, "%s", &garbage );
fscanf( PfileInput, "%s", &name );
/* find the clan information */
while ( strcmp ( garbage , "Clan" ) )
fscanf( PfileInput, "%s", &garbage );
/* get the clan */
fscanf( PfileInput, "%d", &clan );
while ( strcmp ( garbage, "Lvl" ) )
fscanf( PfileInput, "%s", &garbage );
fscanf( PfileInput, "%d", &level );
while ( strcmp ( garbage, "Trst" ) )
fscanf( PfileInput, "%s", &garbage );
fscanf( PfileInput, "%d", &trust );
if ( level == 106 )
fprintf( level101, "%s: %d, %d\n", name, level,trust );
else if ( level == 107 )
fprintf( level102, "%s: %d, %d\n", name, level, trust );
else if ( level == 108 )
fprintf( level103, "%s: %d, %d\n", name, level, trust );
else if ( level == 109 )
fprintf( level104, "%s: %d, %d\n", name, level, trust );
else if ( level == 110 )
fprintf( level105, "%s: %d, %d\n", name, level, trust );
else if ( level == 111 )
fprintf( level106, "%s: %d, %d\n", name, level, trust );
else if ( level == 112 )
fprintf( level107, "%s: %d, %d\n", name, level, trust );
else if ( level == 113 )
fprintf( level108, "%s: %d, %d\n", name, level, trust );
else if ( trust != 0 )
fprintf( truststrange, "%s: %d, %d\n", name, level, trust );
/* find the clan information */
/* while ( strcmp ( garbage , "Clan" ) )
fscanf( PfileInput, "%s", &garbage );
*/
/* get the clan */
/* fscanf( PfileInput, "%d", &clan );
*/
/* got what we want so close the file */
fclose( PfileInput );
if ( clan == 1 )
{
fprintf( clan1, "%s: %d\n", name, level);
/*if ( level < 101 )*/ total1++;
}
if ( clan == 2 )
{
fprintf( clan2, "%s: %d\n", name, level);
/* if ( level < 101 )*/ total2++;
}
if ( clan == 3 )
{
fprintf( clan3, "%s: %d\n", name, level);
/* if ( level < 101 )*/ total3++;
}
if ( clan == 4 )
{
fprintf( clan4, "%s: %d\n", name, level);
/* if ( level < 101 )*/ total4++;
}
if ( clan == 5 )
{
fprintf( clan5, "%s: %d\n", name, level);
/* if ( level < 101 )*/ total5++;
}
if ( clan == 6 )
{
fprintf( clan6, "%s: %d\n", name, level);
/* if ( level < 101 )*/ total6++;
}
if ( clan == 7 )
{
fprintf( clan7, "%s: %d\n", name, level);
/* if ( level < 101 ) */ total7++;
}
if ( clan == 8 )
{
fprintf( clan8, "%s: %d\n", name, level);
/* if ( level < 101 )*/ total8++;
}
if ( clan == 9 )
{
fprintf( clan9, "%s: %d\n", name, level);
/* if ( level < 101 )*/ total9++;
}
if ( clan == 10 )
{
fprintf( clan10, "%s: %d\n", name, level);
/* if ( level < 101 )*/ total10++;
}
if ( clan == 11 )
{
fprintf( clan11, "%s: %d\n", name, level);
/* if ( level < 101 ) */ total11++;
}
}
fprintf( clan1, "Total members: %d\n", total1 );
fprintf( clan2, "Total members: %d\n", total2 );
fprintf( clan3, "Total members: %d\n", total3 );
fprintf( clan4, "Total members: %d\n", total4 );
fprintf( clan5, "Total members: %d\n", total5 );
fprintf( clan6, "Total members: %d\n", total6 );
fprintf( clan7, "Total members: %d\n", total7 );
fprintf( clan8, "Total members: %d\n", total8 );
fprintf( clan9, "Total members: %d\n", total9 );
fprintf( clan10, "Total members: %d\n", total10 );
fprintf( clan11, "Total members: %d\n", total11 );
fprintf( clan11, "\n\n\n\n****Clan Member Totals****\n" );
fprintf( clan11, "Total members 1: %d\n", total1 );
fprintf( clan11, "Total members 2: %d\n", total2 );
fprintf( clan11, "Total members 3: %d\n", total3 );
fprintf( clan11, "Total members 4: %d\n", total4 );
fprintf( clan11, "Total members 5: %d\n", total5 );
fprintf( clan11, "Total members 6: %d\n", total6 );
fprintf( clan11, "Total members 7: %d\n", total7 );
fprintf( clan11, "Total members 8: %d\n", total8 );
fprintf( clan11, "Total members 9: %d\n", total9 );
fprintf( clan11, "Total members 10: %d\n", total10 );
fprintf( clan11, "Total members 11: %d\n", total11 );
fclose(FngDirInput);
system( "rm FNGDIRINFO" );
/* printf( " hello \n\n\n\n\n" );*/
fclose( level101);
fclose( level102);
fclose( level103);
fclose( level104);
fclose( level105);
fclose( level106);
fclose( level107);
fclose( level108);
fclose( truststrange) ;
fclose( champion );
fclose( clan1);
fclose( clan2);
fclose( clan3);
fclose( clan4);
fclose( clan5);
fclose( clan6);
fclose( clan7);
fclose( clan8);
fclose( clan9);
fclose( clan10);
fclose( clan11);
system ( "cat level108.tmpee level107.tmpee > build1.tmpee" );
system ( "cat build1.tmpee level106.tmpee > build2.tmpee" );
system ( "cat build2.tmpee level105.tmpee > build3.tmpee" );
system ( "cat build3.tmpee level104.tmpee > build4.tmpee" );
system ( "cat build4.tmpee level103.tmpee > build5.tmpee" );
system ( "cat build5.tmpee level102.tmpee > build6.tmpee" );
system ( "cat build6.tmpee level101.tmpee > build7.tmpee" );
system ( "cat build7.tmpee truststrange.tmpee > ImmsLevels.txt" );
system ( "cat clan1.tmpee clan2.tmpee clan3.tmpee > build4.tmpee" );
system ( "cat build4.tmpee clan4.tmpee clan5.tmpee > build5.tmpee" );
system ( "cat build5.tmpee clan6.tmpee clan7.tmpee > build6.tmpee" );
system ( "cat build6.tmpee clan8.tmpee clan9.tmpee > build7.tmpee" );
system ( "cat build7.tmpee clan10.tmpee clan11.tmpee > ClanList.txt" );
system ( "rm *.tmpee" );
printf( "Done.\n" );
return 0;
}