mirror of
https://github.com/id-Software/idsetup.git
synced 2026-03-19 16:39:39 +01:00
The source of the setup program included with DOOM, Final DOOM, Strife, etc.
This commit is contained in:
655
OLDSETUP.C
Normal file
655
OLDSETUP.C
Normal file
@@ -0,0 +1,655 @@
|
||||
|
||||
|
||||
//===================================================
|
||||
//
|
||||
// Enter modem savegame info
|
||||
//
|
||||
//===================================================
|
||||
int RestoreModem(void)
|
||||
{
|
||||
char * wstr = "MODSAVE";
|
||||
short *window;
|
||||
short field;
|
||||
int rval = 0;
|
||||
char *args[MAXARGS];
|
||||
int argcount;
|
||||
char string[MAXARGS*2][16];
|
||||
union REGS r;
|
||||
int i;
|
||||
int numplayers[6];
|
||||
int saveslot;
|
||||
int handle;
|
||||
char name[32];
|
||||
char p1,p2,p3,p4;
|
||||
|
||||
|
||||
minfo = modeminfo; // save copy of netinfo
|
||||
|
||||
field = MS_SAVEGAME0; // FIRST FIELD TO LIGHT BAR
|
||||
|
||||
if ( ( window = IWD_OpenWindow( NULL, wstr ) ) == NULL )
|
||||
{
|
||||
IWD_CloseWRF ( NULL );
|
||||
printf( "\nError opening %s window.\n", wstr );
|
||||
exit(1);
|
||||
}
|
||||
|
||||
saveslot = -1;
|
||||
memset(savenames,0,6*24);
|
||||
|
||||
//
|
||||
// Read in savegame strings
|
||||
//
|
||||
for (i = 0;i < 6;i++)
|
||||
{
|
||||
sprintf(name,SAVENAME,i);
|
||||
handle = open (name, O_BINARY | O_RDONLY);
|
||||
if (handle == -1)
|
||||
continue;
|
||||
|
||||
read(handle,savenames[i],24);
|
||||
lseek(handle,27+16,SEEK_SET);
|
||||
read(handle,&p1,1);
|
||||
read(handle,&p2,1);
|
||||
read(handle,&p3,1);
|
||||
read(handle,&p4,1);
|
||||
numplayers[i] = p1+p2+p3+p4;
|
||||
close(handle);
|
||||
|
||||
IWD_PutFieldData(window,MS_SAVEGAME0+i,savenames[i]);
|
||||
}
|
||||
|
||||
//
|
||||
// Set defaults
|
||||
//
|
||||
IWD_SetFieldMark(window,MS_CONTYPE0M,0);
|
||||
IWD_SetFieldMark(window,MS_CONTYPE1M,1);
|
||||
IWD_SetFieldMark(window,MS_CONTYPE2M,0);
|
||||
minfo.comtype = 1;
|
||||
|
||||
IWD_SetFieldMark(window,MS_COM1M,1);
|
||||
IWD_SetFieldMark(window,MS_COM2M,0);
|
||||
IWD_SetFieldMark(window,MS_COM3M,0);
|
||||
IWD_SetFieldMark(window,MS_COM4M,0);
|
||||
minfo.comport = 1;
|
||||
|
||||
IWD_SetFieldMark(window,MS_DEATHNOM2,1);
|
||||
IWD_SetFieldMark(window,MS_DEATHYESM2,0);
|
||||
minfo.deathMatch = 0;
|
||||
|
||||
strcpy(minfo.phonenum,"");
|
||||
IWD_PutFieldDataType(window,MS_PHONENUM, FTYPE_STRING,&minfo.phonenum);
|
||||
|
||||
IWD_ShowWindow ( window );
|
||||
|
||||
for (;;)
|
||||
{
|
||||
switch ( IWD_Dialog ( window, &field, DialogControl, hot_keys ) )
|
||||
{
|
||||
case KEY_ESC:
|
||||
rval = -1;
|
||||
goto func_exit;
|
||||
|
||||
exitandsave:
|
||||
case KEY_F10:
|
||||
|
||||
if (saveslot < 0)
|
||||
{
|
||||
short *window;
|
||||
|
||||
if ( ( window = IWD_OpenWindow( NULL, "NETSERR" ) ) == NULL )
|
||||
exit(1);
|
||||
IWD_ShowWindow ( window );
|
||||
while(kbhit());
|
||||
getch();
|
||||
IWD_CloseWindow( window );
|
||||
break;
|
||||
}
|
||||
|
||||
IWD_GetFieldDataType(window,MS_PHONENUM,FTYPE_STRING,&minfo.phonenum);
|
||||
modeminfo = minfo;
|
||||
|
||||
M_SaveDefaults();
|
||||
IWD_CloseWRF( NULL );
|
||||
IWD_Shutdown();
|
||||
|
||||
argcount = 1;
|
||||
|
||||
args[0] = "sersetup.exe ";
|
||||
|
||||
if (cdrom)
|
||||
args[argcount++] = "-cdrom";
|
||||
|
||||
args[argcount++] = "-nodes";
|
||||
sprintf(string[argcount],"%d",numplayers[saveslot]);
|
||||
args[argcount] = string[argcount];
|
||||
argcount++;
|
||||
|
||||
if (modeminfo.deathMatch)
|
||||
args[argcount++] = "-deathmatch";
|
||||
|
||||
sprintf(string[argcount],"-com%d",modeminfo.comport);
|
||||
args[argcount] = string[argcount];
|
||||
argcount++;
|
||||
|
||||
switch(modeminfo.comtype)
|
||||
{
|
||||
case 0: // no parameter if already connected!
|
||||
break;
|
||||
case 1:
|
||||
args[argcount++] = "-answer";
|
||||
break;
|
||||
case 2:
|
||||
args[argcount++] = "-dial";
|
||||
sprintf(string[argcount],"%s",minfo.phonenum);
|
||||
args[argcount] = string[argcount];
|
||||
argcount++;
|
||||
break;
|
||||
}
|
||||
|
||||
args[argcount++] = "-loadgame";
|
||||
sprintf(string[argcount],"%d",saveslot);
|
||||
args[argcount] = string[argcount];
|
||||
argcount++;
|
||||
|
||||
for (i = 1;i < myargc; i++)
|
||||
args[argcount++] = myargv[i];
|
||||
|
||||
args[argcount] = NULL;
|
||||
|
||||
r.x.ax = 3;
|
||||
int86(0x10,&r,&r);
|
||||
|
||||
execv("sersetup.exe",args);
|
||||
|
||||
//
|
||||
// ERROR EXECing!
|
||||
//
|
||||
printf("Problem EXECing SERSETUP for netplay. Need to be in same directory!");
|
||||
exit(0);
|
||||
|
||||
case KEY_CR:
|
||||
case 32:
|
||||
switch ( field )
|
||||
{
|
||||
case MS_COM1:
|
||||
IWD_SetFieldMark(window,MS_COM1M,1);
|
||||
IWD_SetFieldMark(window,MS_COM2M,0);
|
||||
IWD_SetFieldMark(window,MS_COM3M,0);
|
||||
IWD_SetFieldMark(window,MS_COM4M,0);
|
||||
minfo.comport = 1;
|
||||
break;
|
||||
|
||||
case MS_COM2:
|
||||
IWD_SetFieldMark(window,MS_COM1M,0);
|
||||
IWD_SetFieldMark(window,MS_COM2M,1);
|
||||
IWD_SetFieldMark(window,MS_COM3M,0);
|
||||
IWD_SetFieldMark(window,MS_COM4M,0);
|
||||
minfo.comport = 2;
|
||||
break;
|
||||
|
||||
case MS_COM3:
|
||||
IWD_SetFieldMark(window,MS_COM1M,0);
|
||||
IWD_SetFieldMark(window,MS_COM2M,0);
|
||||
IWD_SetFieldMark(window,MS_COM3M,1);
|
||||
IWD_SetFieldMark(window,MS_COM4M,0);
|
||||
minfo.comport = 3;
|
||||
break;
|
||||
|
||||
case MS_COM4:
|
||||
IWD_SetFieldMark(window,MS_COM1M,0);
|
||||
IWD_SetFieldMark(window,MS_COM2M,0);
|
||||
IWD_SetFieldMark(window,MS_COM3M,0);
|
||||
IWD_SetFieldMark(window,MS_COM4M,1);
|
||||
minfo.comport = 4;
|
||||
break;
|
||||
|
||||
|
||||
case MS_CONTYPE0:
|
||||
IWD_SetFieldMark(window,MS_CONTYPE0M,1);
|
||||
IWD_SetFieldMark(window,MS_CONTYPE1M,0);
|
||||
IWD_SetFieldMark(window,MS_CONTYPE2M,0);
|
||||
minfo.comtype = 0;
|
||||
break;
|
||||
|
||||
case MS_CONTYPE1:
|
||||
IWD_SetFieldMark(window,MS_CONTYPE0M,0);
|
||||
IWD_SetFieldMark(window,MS_CONTYPE1M,1);
|
||||
IWD_SetFieldMark(window,MS_CONTYPE2M,0);
|
||||
minfo.comtype = 1;
|
||||
break;
|
||||
|
||||
case MS_CONTYPE2:
|
||||
IWD_SetFieldMark(window,MS_CONTYPE0M,0);
|
||||
IWD_SetFieldMark(window,MS_CONTYPE1M,0);
|
||||
IWD_SetFieldMark(window,MS_CONTYPE2M,1);
|
||||
minfo.comtype = 2;
|
||||
field = MS_PHONENUM;
|
||||
break;
|
||||
|
||||
|
||||
case MS_SAVEGAME0:
|
||||
if (!savenames[0][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 0;
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME0M,1);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
case MS_SAVEGAME1:
|
||||
if (!savenames[1][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 1;
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME1M,1);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
|
||||
case MS_SAVEGAME2:
|
||||
if (!savenames[2][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 2;
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME2M,1);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
case MS_SAVEGAME3:
|
||||
if (!savenames[3][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 3;
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME3M,1);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
case MS_SAVEGAME4:
|
||||
if (!savenames[4][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 4;
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME4M,1);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
case MS_SAVEGAME5:
|
||||
if (!savenames[5][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 5;
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,MS_SAVEGAME5M,1);
|
||||
break;
|
||||
|
||||
//
|
||||
// Deathmatch
|
||||
//
|
||||
case MS_DEATHNO2:
|
||||
minfo.deathMatch = 0;
|
||||
IWD_SetFieldMark(window,MS_DEATHNOM2,1);
|
||||
IWD_SetFieldMark(window,MS_DEATHYESM2,0);
|
||||
break;
|
||||
|
||||
case MS_DEATHYES2:
|
||||
minfo.deathMatch = 1;
|
||||
IWD_SetFieldMark(window,MS_DEATHNOM2,0);
|
||||
IWD_SetFieldMark(window,MS_DEATHYESM2,1);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
func_exit:
|
||||
|
||||
IWD_CloseWindow(window);
|
||||
|
||||
return ( rval );
|
||||
}
|
||||
|
||||
|
||||
//===================================================
|
||||
//
|
||||
// Enter serial-link savegame info
|
||||
//
|
||||
//===================================================
|
||||
int RestoreSerial(void)
|
||||
{
|
||||
char * wstr = "SERSAVE";
|
||||
short *window;
|
||||
short field;
|
||||
int rval = 0;
|
||||
char *args[MAXARGS];
|
||||
int argcount;
|
||||
char string[MAXARGS*2][16];
|
||||
union REGS r;
|
||||
int i;
|
||||
int numplayers[6];
|
||||
int saveslot;
|
||||
int handle;
|
||||
char name[32];
|
||||
char p1,p2,p3,p4;
|
||||
|
||||
|
||||
sinfo = serialinfo; // save copy of netinfo
|
||||
|
||||
field = SS_SAVEGAME0; // FIRST FIELD TO LIGHT BAR
|
||||
|
||||
if ( ( window = IWD_OpenWindow( NULL, wstr ) ) == NULL )
|
||||
{
|
||||
IWD_CloseWRF ( NULL );
|
||||
printf( "\nError opening %s window.\n", wstr );
|
||||
exit(1);
|
||||
}
|
||||
|
||||
saveslot = -1;
|
||||
memset(savenames,0,6*24);
|
||||
|
||||
//
|
||||
// Read in savegame strings
|
||||
//
|
||||
for (i = 0;i < 6;i++)
|
||||
{
|
||||
sprintf(name,SAVENAME,i);
|
||||
handle = open (name, O_BINARY | O_RDONLY);
|
||||
if (handle == -1)
|
||||
continue;
|
||||
|
||||
read(handle,savenames[i],24);
|
||||
lseek(handle,27+16,SEEK_SET);
|
||||
read(handle,&p1,1);
|
||||
read(handle,&p2,1);
|
||||
read(handle,&p3,1);
|
||||
read(handle,&p4,1);
|
||||
numplayers[i] = p1+p2+p3+p4;
|
||||
close(handle);
|
||||
|
||||
IWD_PutFieldData(window,SS_SAVEGAME0+i,savenames[i]);
|
||||
}
|
||||
|
||||
//
|
||||
// Set defaults
|
||||
//
|
||||
IWD_SetFieldMark(window,SS_COM1M,1);
|
||||
IWD_SetFieldMark(window,SS_COM2M,0);
|
||||
IWD_SetFieldMark(window,SS_COM3M,0);
|
||||
IWD_SetFieldMark(window,SS_COM4M,0);
|
||||
sinfo.comport = 1;
|
||||
|
||||
IWD_SetFieldMark(window,SS_DEATHNOM2,1);
|
||||
IWD_SetFieldMark(window,SS_DEATHYESM2,0);
|
||||
sinfo.deathMatch = 0;
|
||||
|
||||
IWD_ShowWindow ( window );
|
||||
|
||||
for (;;)
|
||||
{
|
||||
switch ( IWD_Dialog ( window, &field, DialogControl, hot_keys ) )
|
||||
{
|
||||
case KEY_ESC:
|
||||
rval = -1;
|
||||
goto func_exit;
|
||||
|
||||
exitandsave:
|
||||
case KEY_F10:
|
||||
|
||||
if (saveslot < 0)
|
||||
{
|
||||
short *window;
|
||||
|
||||
if ( ( window = IWD_OpenWindow( NULL, "NETSERR" ) ) == NULL )
|
||||
exit(1);
|
||||
IWD_ShowWindow ( window );
|
||||
while(kbhit());
|
||||
getch();
|
||||
IWD_CloseWindow( window );
|
||||
break;
|
||||
}
|
||||
|
||||
serialinfo = sinfo;
|
||||
|
||||
M_SaveDefaults();
|
||||
IWD_CloseWRF( NULL );
|
||||
IWD_Shutdown();
|
||||
|
||||
argcount = 1;
|
||||
|
||||
args[0] = "sersetup.exe ";
|
||||
|
||||
if (cdrom)
|
||||
args[argcount++] = "-cdrom";
|
||||
|
||||
args[argcount++] = "-nodes";
|
||||
sprintf(string[argcount],"%d",numplayers[saveslot]);
|
||||
args[argcount] = string[argcount];
|
||||
argcount++;
|
||||
|
||||
if (modeminfo.deathMatch)
|
||||
args[argcount++] = "-deathmatch";
|
||||
|
||||
sprintf(string[argcount],"-com%d",serialinfo.comport);
|
||||
args[argcount] = string[argcount];
|
||||
argcount++;
|
||||
|
||||
args[argcount++] = "-loadgame";
|
||||
sprintf(string[argcount],"%d",saveslot);
|
||||
args[argcount] = string[argcount];
|
||||
argcount++;
|
||||
|
||||
for (i = 1;i < myargc; i++)
|
||||
args[argcount++] = myargv[i];
|
||||
|
||||
args[argcount] = NULL;
|
||||
|
||||
r.x.ax = 3;
|
||||
int86(0x10,&r,&r);
|
||||
|
||||
execv("sersetup.exe",args);
|
||||
|
||||
//
|
||||
// ERROR EXECing!
|
||||
//
|
||||
printf("Problem EXECing SERSETUP for netplay. Need to be in same directory!");
|
||||
exit(0);
|
||||
|
||||
case KEY_CR:
|
||||
case 32:
|
||||
switch ( field )
|
||||
{
|
||||
case SS_COM1:
|
||||
IWD_SetFieldMark(window,SS_COM1M,1);
|
||||
IWD_SetFieldMark(window,SS_COM2M,0);
|
||||
IWD_SetFieldMark(window,SS_COM3M,0);
|
||||
IWD_SetFieldMark(window,SS_COM4M,0);
|
||||
sinfo.comport = 1;
|
||||
break;
|
||||
|
||||
case SS_COM2:
|
||||
IWD_SetFieldMark(window,SS_COM1M,0);
|
||||
IWD_SetFieldMark(window,SS_COM2M,1);
|
||||
IWD_SetFieldMark(window,SS_COM3M,0);
|
||||
IWD_SetFieldMark(window,SS_COM4M,0);
|
||||
sinfo.comport = 2;
|
||||
break;
|
||||
|
||||
case SS_COM3:
|
||||
IWD_SetFieldMark(window,SS_COM1M,0);
|
||||
IWD_SetFieldMark(window,SS_COM2M,0);
|
||||
IWD_SetFieldMark(window,SS_COM3M,1);
|
||||
IWD_SetFieldMark(window,SS_COM4M,0);
|
||||
sinfo.comport = 3;
|
||||
break;
|
||||
|
||||
case SS_COM4:
|
||||
IWD_SetFieldMark(window,SS_COM1M,0);
|
||||
IWD_SetFieldMark(window,SS_COM2M,0);
|
||||
IWD_SetFieldMark(window,SS_COM3M,0);
|
||||
IWD_SetFieldMark(window,SS_COM4M,1);
|
||||
sinfo.comport = 4;
|
||||
break;
|
||||
|
||||
|
||||
case SS_SAVEGAME0:
|
||||
if (!savenames[0][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 0;
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME0M,1);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
case SS_SAVEGAME1:
|
||||
if (!savenames[1][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 1;
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME1M,1);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
|
||||
case SS_SAVEGAME2:
|
||||
if (!savenames[2][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 2;
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME2M,1);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
case SS_SAVEGAME3:
|
||||
if (!savenames[3][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 3;
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME3M,1);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
case SS_SAVEGAME4:
|
||||
if (!savenames[4][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 4;
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME4M,1);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME5M,0);
|
||||
break;
|
||||
|
||||
case SS_SAVEGAME5:
|
||||
if (!savenames[5][0])
|
||||
{
|
||||
IWD_Sound(1000,6);
|
||||
break;
|
||||
}
|
||||
saveslot = 5;
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME0M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME1M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME2M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME3M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME4M,0);
|
||||
IWD_SetFieldMark(window,SS_SAVEGAME5M,1);
|
||||
break;
|
||||
|
||||
//
|
||||
// Deathmatch
|
||||
//
|
||||
case SS_DEATHNO2:
|
||||
sinfo.deathMatch = 0;
|
||||
IWD_SetFieldMark(window,SS_DEATHNOM2,1);
|
||||
IWD_SetFieldMark(window,SS_DEATHYESM2,0);
|
||||
break;
|
||||
|
||||
case SS_DEATHYES2:
|
||||
sinfo.deathMatch = 1;
|
||||
IWD_SetFieldMark(window,SS_DEATHNOM2,0);
|
||||
IWD_SetFieldMark(window,SS_DEATHYESM2,1);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
func_exit:
|
||||
|
||||
IWD_CloseWindow(window);
|
||||
|
||||
return ( rval );
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user