/* Create map file *
 * Viola Krings: 1.3.95   *
 * krings@securitas.net */

#include <stdio.h>
#define MAX 150 /* Zeilenlaenge im Turnfile*/
char letter;
char letter2;
char turnname[20];

void main(int argc,char *argv[])
{
	FILE *fp;
	int nr; /* Planentennummern, je eine */
	int weiter=1;
	char *point;
	char zeile[MAX]; /* Eingelesene Zeile */
	char *your_systems="		Your Systems\n";
	char *uninh="		Uninhabited Systems\n";
	char runz[20]; /*planetenname*/
	int alt;
	
	if(argc==1)
	{
		letter='V'; letter2='v';
		strcpy(turnname,"turn41.erg");
	}
	if(argc==3)
	{
		letter=argv[1][0]; letter2=letter+'a'-'A';
		if(strlen(argv[2])>20) 
		{
			printf("Turnname too long!\n");
			exit(-1);
		}
		strcpy(turnname,argv[2]);
	}
	if(argc==2||argc>3){
		printf("Usage: %s [Raceletter turnname]\n",argv[0]);
		exit(-1);
	}
	
	/* Your Systems: */
	if(fp=fopen(turnname,"r"))
	{
		weiter=1;
		while(weiter)
		{
			point=fgets(zeile,MAX,fp);
			if(point==0) {
				weiter=0;
				printf("Datei zu früh zu Ende...\n");
			}
			if(strcmp(zeile,your_systems)==0) {
				printf("%s\n",zeile);
				weiter=0;
			}
		}
		weiter=1; alt=-5;
		point=fgets(zeile,MAX,fp);	/* 2 Zeilen leerlauf */	
		point=fgets(zeile,MAX,fp);		
		while(weiter)
		{
			point=fgets(zeile,MAX,fp);
			if(point==0) weiter=0;
			else
			{
				sscanf(zeile,"%s%d",&runz,&nr);
				/* printf("%s\n",zeile); */
				if(alt!=nr) 
					printf("%d %c\n",nr,letter);
				else
					weiter=0;
				alt=nr;
			}
		}
		fclose(fp);
	} else printf("Datei %s konnte nicht geöffnet werden.\n",turnname);

	/* Uninhabited Systems: */
	if(fp=fopen(turnname,"r"))
	{
		weiter=1;
		while(weiter)
		{
			point=fgets(zeile,MAX,fp);
			if(point==0) {
				weiter=0;
				printf("Datei zu früh zu Ende...\n");
			}
			if(strcmp(zeile,uninh)==0) {
				printf("%s\n",zeile);
				weiter=0;
			}
		}
		weiter=1; alt=-5;
                point=fgets(zeile,MAX,fp);
                point=fgets(zeile,MAX,fp);

		while(weiter)
		{
			point=fgets(zeile,MAX,fp);
			if(point==0) weiter=0;
			else
			{
				sscanf(zeile,"%s%d",&runz,&nr);
				/* printf("%s\n",zeile); */
				if(alt!=nr) 
					printf("%d %c\n",nr,letter2);
				else
					weiter=0;
				alt=nr;
			}
		}
		fclose(fp);

	} else printf("Datei %s konnte nicht geöffnet werden.\n",turnname);
}


