PRC8/trunk/tools/cls_feat_2da.c
Jaysyn904 1662218bb4 Initial upload.
Adding base PRC 4.19a files to repository.
2022-10-07 13:51:24 -04:00

68 lines
1.4 KiB
C

// -------------------------
// CLS_FEAT_2DA by WodahsEht
// -------------------------
// Basically this utility goes through any specified cls_feat_*.2da and determines which feats
// are duplicated. It's not exactly the fastest algorithm possible but it shouldn't take long at
// all to parse all 2da's in one fell swoop.
//
// If you want to parse all 2da's at one time, add this line to a batch file:
// for %%a in (..\2das\cls_feat_*.2da) do cls_feat_2da.exe %%a
#include <stdio.h>
#include <string.h>
int main (int argc, char *argv[])
{
char featnum[1000][20];
int i, j, k;
char find[20];
FILE *input2da;
input2da = fopen(argv[1],"r");
if (input2da == NULL)
{
printf("Error, invalid file name.\n");
return (1);
}
while (i != -1 && !feof(input2da))
{
fscanf(input2da, "%s", &find);
if (strcmp(find, "OnMenu") == 0)
i = -1;
}
i = 0;
while (!feof(input2da))
{
fscanf(input2da, "%*s");
fscanf(input2da, "%*s");
fscanf(input2da, "%s", &featnum[i]);
fscanf(input2da, "%*s");
fscanf(input2da, "%*s");
fscanf(input2da, "%*s");
i++;
}
fclose(input2da);
i--;
i = (i > 1000) ? 1000 : i;
for (j = 0 ; j <= i ; j++)
{
for (k = j - 1 ; k >= 0 ; k--)
{
if (strcmp(featnum[j], featnum[k]) == 0 &&
strcmp(featnum[j], "****") != 0 &&
strcmp(featnum[k], "****") != 0)
printf("Lines %i and %i have the same feat number.\n", j/* + 4*/, k/* + 4*/); // Busquishage - Ornedan
}
}
return (0);
}