mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-24 10:40:46 +00:00
This raises the max number of levels per episode to 32 and alters the game to use dynamically allocated memory for level and music names and filenames. No null pointer checks yet.
git-svn-id: https://svn.eduke32.com/eduke32@381 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
3a811040af
commit
57042cd9a7
7 changed files with 71 additions and 50 deletions
|
@ -77,6 +77,7 @@ extern int conversion, shareware, gametype;
|
||||||
#define FOURSLEIGHT (1<<8)
|
#define FOURSLEIGHT (1<<8)
|
||||||
|
|
||||||
#define MAXVOLUMES 7
|
#define MAXVOLUMES 7
|
||||||
|
#define MAXLEVELS 32
|
||||||
|
|
||||||
#include "types.h"
|
#include "types.h"
|
||||||
#include "file_lib.h"
|
#include "file_lib.h"
|
||||||
|
@ -473,8 +474,8 @@ extern long *actorLoadEventScrptr[MAXTILES];
|
||||||
extern char actortype[MAXTILES];
|
extern char actortype[MAXTILES];
|
||||||
extern char *music_pointer;
|
extern char *music_pointer;
|
||||||
|
|
||||||
extern char music_fn[MAXVOLUMES+1][11][13],music_select;
|
extern char *music_fn[MAXVOLUMES+1][MAXLEVELS],music_select;
|
||||||
extern char env_music_fn[MAXVOLUMES+1][13];
|
extern char env_music_fn[MAXVOLUMES+1][BMAX_PATH];
|
||||||
extern short camsprite;
|
extern short camsprite;
|
||||||
|
|
||||||
// extern char gotz;
|
// extern char gotz;
|
||||||
|
@ -527,14 +528,14 @@ extern char screencapt;
|
||||||
extern short soundps[NUM_SOUNDS],soundpe[NUM_SOUNDS],soundvo[NUM_SOUNDS];
|
extern short soundps[NUM_SOUNDS],soundpe[NUM_SOUNDS],soundvo[NUM_SOUNDS];
|
||||||
extern char soundpr[NUM_SOUNDS],soundm[NUM_SOUNDS];
|
extern char soundpr[NUM_SOUNDS],soundm[NUM_SOUNDS];
|
||||||
extern long soundsiz[NUM_SOUNDS];
|
extern long soundsiz[NUM_SOUNDS];
|
||||||
extern char level_names[MAXVOLUMES*11][33];
|
extern char *level_names[MAXVOLUMES*MAXLEVELS];
|
||||||
extern long partime[MAXVOLUMES*11],designertime[MAXVOLUMES*11];
|
extern long partime[MAXVOLUMES*MAXLEVELS],designertime[MAXVOLUMES*MAXLEVELS];
|
||||||
extern char volume_names[MAXVOLUMES][33];
|
extern char volume_names[MAXVOLUMES][33];
|
||||||
extern char skill_names[5][33];
|
extern char skill_names[5][33];
|
||||||
|
|
||||||
extern int framerate;
|
extern int framerate;
|
||||||
|
|
||||||
#define MAXGAMETYPES 32
|
#define MAXGAMETYPES 16
|
||||||
extern char gametype_names[MAXGAMETYPES][33];
|
extern char gametype_names[MAXGAMETYPES][33];
|
||||||
extern int gametype_flags[MAXGAMETYPES];
|
extern int gametype_flags[MAXGAMETYPES];
|
||||||
extern char num_gametypes;
|
extern char num_gametypes;
|
||||||
|
@ -562,7 +563,7 @@ enum gametypeflags {
|
||||||
|
|
||||||
#define GTFLAGS(x) (gametype_flags[ud.coop] & x)
|
#define GTFLAGS(x) (gametype_flags[ud.coop] & x)
|
||||||
|
|
||||||
extern char level_file_names[MAXVOLUMES*11][BMAX_PATH];
|
extern char *level_file_names[MAXVOLUMES*MAXLEVELS];
|
||||||
extern char num_volumes;
|
extern char num_volumes;
|
||||||
|
|
||||||
extern int32 SoundToggle,MusicToggle;
|
extern int32 SoundToggle,MusicToggle;
|
||||||
|
|
|
@ -580,7 +580,7 @@ void getpackets(void)
|
||||||
voting = packbuf[2];
|
voting = packbuf[2];
|
||||||
vote_episode = packbuf[3];
|
vote_episode = packbuf[3];
|
||||||
vote_map = packbuf[4];
|
vote_map = packbuf[4];
|
||||||
Bsprintf(tempbuf,"%s^00 HAS CALLED A VOTE TO CHANGE MAP TO %s (E%dL%d)",ud.user_name[(unsigned char)packbuf[2]],level_names[(unsigned char)(packbuf[3]*11 + packbuf[4])],packbuf[3]+1,packbuf[4]+1);
|
Bsprintf(tempbuf,"%s^00 HAS CALLED A VOTE TO CHANGE MAP TO %s (E%dL%d)",ud.user_name[(unsigned char)packbuf[2]],level_names[(unsigned char)(packbuf[3]*MAXLEVELS + packbuf[4])],packbuf[3]+1,packbuf[4]+1);
|
||||||
adduserquote(tempbuf);
|
adduserquote(tempbuf);
|
||||||
Bsprintf(tempbuf,"PRESS F1 TO VOTE YES, F2 TO VOTE NO");
|
Bsprintf(tempbuf,"PRESS F1 TO VOTE YES, F2 TO VOTE NO");
|
||||||
adduserquote(tempbuf);
|
adduserquote(tempbuf);
|
||||||
|
@ -3360,7 +3360,7 @@ void displayrest(long smoothratio)
|
||||||
else a = 182;
|
else a = 182;
|
||||||
|
|
||||||
minitext(1,a+6,volume_names[ud.volume_number],0,2+8+16);
|
minitext(1,a+6,volume_names[ud.volume_number],0,2+8+16);
|
||||||
minitext(1,a+12,level_names[ud.volume_number*11 + ud.level_number],0,2+8+16);
|
minitext(1,a+12,level_names[ud.volume_number*MAXLEVELS + ud.level_number],0,2+8+16);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7839,9 +7839,9 @@ void nonsharedkeys(void)
|
||||||
{
|
{
|
||||||
if (i == 5 && ps[myconnectindex].fta > 0 && ps[myconnectindex].ftq == 26)
|
if (i == 5 && ps[myconnectindex].fta > 0 && ps[myconnectindex].ftq == 26)
|
||||||
{
|
{
|
||||||
i = (VOLUMEALL?num_volumes*11:6);
|
i = (VOLUMEALL?num_volumes*MAXLEVELS:6);
|
||||||
music_select++;
|
music_select++;
|
||||||
while (!music_fn[0][(unsigned char)music_select][0] && music_select < i)
|
while ((music_fn[0][(unsigned char)music_select] == NULL) && music_select < i)
|
||||||
music_select++;
|
music_select++;
|
||||||
if (music_select == i)
|
if (music_select == i)
|
||||||
music_select = 0;
|
music_select = 0;
|
||||||
|
@ -8739,7 +8739,7 @@ void checkcommandline(int argc,char **argv)
|
||||||
case 'L':
|
case 'L':
|
||||||
ud.warp_on = 1;
|
ud.warp_on = 1;
|
||||||
c++;
|
c++;
|
||||||
ud.m_level_number = ud.level_number = (atol(c)-1)%11;
|
ud.m_level_number = ud.level_number = (atol(c)-1)%MAXLEVELS;
|
||||||
break;
|
break;
|
||||||
case 'm':
|
case 'm':
|
||||||
case 'M':
|
case 'M':
|
||||||
|
@ -9087,6 +9087,16 @@ void freeconmem(void)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
for (i=0;i<MAXLEVELS*MAXVOLUMES;i++)
|
||||||
|
{
|
||||||
|
if (level_names[i] != NULL)
|
||||||
|
Bfree(level_names[i]);
|
||||||
|
if (level_file_names[i] != NULL)
|
||||||
|
Bfree(level_file_names[i]);
|
||||||
|
if (music_fn[0][i] != NULL)
|
||||||
|
Bfree(music_fn[0][i]);
|
||||||
|
}
|
||||||
|
|
||||||
for (i=0;i<MAXQUOTES;i++)
|
for (i=0;i<MAXQUOTES;i++)
|
||||||
{
|
{
|
||||||
if (fta_quotes[i] != NULL)
|
if (fta_quotes[i] != NULL)
|
||||||
|
@ -10059,7 +10069,7 @@ MAIN_LOOP_RESTART:
|
||||||
{
|
{
|
||||||
Bsprintf(tempbuf,"%s^00 HAS CALLED A VOTE FOR MAP",ud.user_name[voting]);
|
Bsprintf(tempbuf,"%s^00 HAS CALLED A VOTE FOR MAP",ud.user_name[voting]);
|
||||||
gametext(160,40,tempbuf,0,2+8+16);
|
gametext(160,40,tempbuf,0,2+8+16);
|
||||||
Bsprintf(tempbuf,"%s (E%dL%d)",level_names[vote_episode*11 + vote_map],vote_episode+1,vote_map+1);
|
Bsprintf(tempbuf,"%s (E%dL%d)",level_names[vote_episode*MAXLEVELS + vote_map],vote_episode+1,vote_map+1);
|
||||||
gametext(160,48,tempbuf,0,2+8+16);
|
gametext(160,48,tempbuf,0,2+8+16);
|
||||||
gametext(160,70,"PRESS F1 TO VOTE YES, F2 TO VOTE NO",0,2+8+16);
|
gametext(160,70,"PRESS F1 TO VOTE YES, F2 TO VOTE NO",0,2+8+16);
|
||||||
}
|
}
|
||||||
|
@ -11378,7 +11388,7 @@ void dobonus(char bonusonly)
|
||||||
if (!lastmapname) lastmapname = Bstrrchr(boardfilename,'/');
|
if (!lastmapname) lastmapname = Bstrrchr(boardfilename,'/');
|
||||||
if (!lastmapname) lastmapname = boardfilename;
|
if (!lastmapname) lastmapname = boardfilename;
|
||||||
}
|
}
|
||||||
else lastmapname = level_names[(ud.volume_number*11)+ud.last_level-1];
|
else lastmapname = level_names[(ud.volume_number*MAXLEVELS)+ud.last_level-1];
|
||||||
|
|
||||||
bonuscnt = 0;
|
bonuscnt = 0;
|
||||||
|
|
||||||
|
@ -11689,7 +11699,7 @@ FRAGBONUS:
|
||||||
if (PLUTOPAK) // JBF 20030804
|
if (PLUTOPAK) // JBF 20030804
|
||||||
rotatesprite((260)<<16,36<<16,65536L,0,PLUTOPAKSPRITE+2,0,0,2+8,0,0,xdim-1,ydim-1);
|
rotatesprite((260)<<16,36<<16,65536L,0,PLUTOPAKSPRITE+2,0,0,2+8,0,0,xdim-1,ydim-1);
|
||||||
gametext(160,58+2,"MULTIPLAYER TOTALS",0,2+8+16);
|
gametext(160,58+2,"MULTIPLAYER TOTALS",0,2+8+16);
|
||||||
gametext(160,58+10,level_names[(ud.volume_number*11)+ud.last_level-1],0,2+8+16);
|
gametext(160,58+10,level_names[(ud.volume_number*MAXLEVELS)+ud.last_level-1],0,2+8+16);
|
||||||
|
|
||||||
gametext(160,165,"PRESS ANY KEY TO CONTINUE",0,2+8+16);
|
gametext(160,165,"PRESS ANY KEY TO CONTINUE",0,2+8+16);
|
||||||
|
|
||||||
|
@ -11803,11 +11813,11 @@ FRAGBONUS:
|
||||||
totalclock = 0;
|
totalclock = 0;
|
||||||
tinc = 0;
|
tinc = 0;
|
||||||
|
|
||||||
playerbest = CONFIG_GetMapBestTime(level_file_names[ud.volume_number*11+ud.last_level-1]);
|
playerbest = CONFIG_GetMapBestTime(level_file_names[ud.volume_number*MAXLEVELS+ud.last_level-1]);
|
||||||
|
|
||||||
if (ps[myconnectindex].player_par < playerbest || playerbest < 0)
|
if (ps[myconnectindex].player_par < playerbest || playerbest < 0)
|
||||||
{
|
{
|
||||||
CONFIG_SetMapBestTime(level_file_names[ud.volume_number*11+ud.last_level-1], ps[myconnectindex].player_par);
|
CONFIG_SetMapBestTime(level_file_names[ud.volume_number*MAXLEVELS+ud.last_level-1], ps[myconnectindex].player_par);
|
||||||
// if(playerbest != -1)
|
// if(playerbest != -1)
|
||||||
// playerbest = ps[myconnectindex].player_par;
|
// playerbest = ps[myconnectindex].player_par;
|
||||||
}
|
}
|
||||||
|
@ -11819,11 +11829,11 @@ FRAGBONUS:
|
||||||
clockpad = max(clockpad,ij);
|
clockpad = max(clockpad,ij);
|
||||||
if (!(ud.volume_number == 0 && ud.last_level-1 == 7))
|
if (!(ud.volume_number == 0 && ud.last_level-1 == 7))
|
||||||
{
|
{
|
||||||
for (ii=partime[ud.volume_number*11+ud.last_level-1]/(26*60), ij=1; ii>9; ii/=10, ij++) ;
|
for (ii=partime[ud.volume_number*MAXLEVELS+ud.last_level-1]/(26*60), ij=1; ii>9; ii/=10, ij++) ;
|
||||||
clockpad = max(clockpad,ij);
|
clockpad = max(clockpad,ij);
|
||||||
if (!NAM)
|
if (!NAM)
|
||||||
{
|
{
|
||||||
for (ii=designertime[ud.volume_number*11+ud.last_level-1]/(26*60), ij=1; ii>9; ii/=10, ij++) ;
|
for (ii=designertime[ud.volume_number*MAXLEVELS+ud.last_level-1]/(26*60), ij=1; ii>9; ii/=10, ij++) ;
|
||||||
clockpad = max(clockpad,ij);
|
clockpad = max(clockpad,ij);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11945,16 +11955,16 @@ FRAGBONUS:
|
||||||
if (!(ud.volume_number == 0 && ud.last_level-1 == 7))
|
if (!(ud.volume_number == 0 && ud.last_level-1 == 7))
|
||||||
{
|
{
|
||||||
Bsprintf(tempbuf,"%0*ld:%02ld",clockpad,
|
Bsprintf(tempbuf,"%0*ld:%02ld",clockpad,
|
||||||
(partime[ud.volume_number*11+ud.last_level-1]/(26*60)),
|
(partime[ud.volume_number*MAXLEVELS+ud.last_level-1]/(26*60)),
|
||||||
(partime[ud.volume_number*11+ud.last_level-1]/26)%60);
|
(partime[ud.volume_number*MAXLEVELS+ud.last_level-1]/26)%60);
|
||||||
gametext((320>>2)+71,yy+9,tempbuf,0,2+8+16);
|
gametext((320>>2)+71,yy+9,tempbuf,0,2+8+16);
|
||||||
yy+=10;
|
yy+=10;
|
||||||
|
|
||||||
if (!NAM)
|
if (!NAM)
|
||||||
{
|
{
|
||||||
Bsprintf(tempbuf,"%0*ld:%02ld",clockpad,
|
Bsprintf(tempbuf,"%0*ld:%02ld",clockpad,
|
||||||
(designertime[ud.volume_number*11+ud.last_level-1]/(26*60)),
|
(designertime[ud.volume_number*MAXLEVELS+ud.last_level-1]/(26*60)),
|
||||||
(designertime[ud.volume_number*11+ud.last_level-1]/26)%60);
|
(designertime[ud.volume_number*MAXLEVELS+ud.last_level-1]/26)%60);
|
||||||
gametext((320>>2)+71,yy+9,tempbuf,0,2+8+16);
|
gametext((320>>2)+71,yy+9,tempbuf,0,2+8+16);
|
||||||
yy+=10;
|
yy+=10;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2370,6 +2370,8 @@ char parsecommand(void)
|
||||||
if (*textptr == 0) break;
|
if (*textptr == 0) break;
|
||||||
}
|
}
|
||||||
j = 0;
|
j = 0;
|
||||||
|
if (music_fn[k][i] == NULL)
|
||||||
|
music_fn[k][i] = Bcalloc(BMAX_PATH,sizeof(char));
|
||||||
while (isaltok(*(textptr+j)))
|
while (isaltok(*(textptr+j)))
|
||||||
{
|
{
|
||||||
music_fn[k][i][j] = textptr[j];
|
music_fn[k][i][j] = textptr[j];
|
||||||
|
@ -2377,7 +2379,7 @@ char parsecommand(void)
|
||||||
}
|
}
|
||||||
music_fn[k][i][j] = '\0';
|
music_fn[k][i][j] = '\0';
|
||||||
textptr += j;
|
textptr += j;
|
||||||
if (i > 9) break;
|
if (i > MAXLEVELS-1) break;
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2393,6 +2395,7 @@ char parsecommand(void)
|
||||||
if (*textptr == 0) break;
|
if (*textptr == 0) break;
|
||||||
}
|
}
|
||||||
j = 0;
|
j = 0;
|
||||||
|
|
||||||
while (isaltok(*(textptr+j)))
|
while (isaltok(*(textptr+j)))
|
||||||
{
|
{
|
||||||
env_music_fn[i][j] = textptr[j];
|
env_music_fn[i][j] = textptr[j];
|
||||||
|
@ -2401,7 +2404,7 @@ char parsecommand(void)
|
||||||
env_music_fn[i][j] = '\0';
|
env_music_fn[i][j] = '\0';
|
||||||
|
|
||||||
textptr += j;
|
textptr += j;
|
||||||
if (i > 9) break;
|
if (i > MAXVOLUMES-1) break;
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4506,7 +4509,7 @@ repeatcase:
|
||||||
while (*textptr != 0x0a && *textptr != 0) textptr++;
|
while (*textptr != 0x0a && *textptr != 0) textptr++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (k < 0 || k > 10)
|
if (k < 0 || k > MAXLEVELS-1)
|
||||||
{
|
{
|
||||||
initprintf("%s:%ld: error: level number exceeds maximum number of levels per episode.\n",compilefile,line_number);
|
initprintf("%s:%ld: error: level number exceeds maximum number of levels per episode.\n",compilefile,line_number);
|
||||||
error++;
|
error++;
|
||||||
|
@ -4515,9 +4518,13 @@ repeatcase:
|
||||||
}
|
}
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
|
|
||||||
|
if (level_file_names[j*MAXLEVELS+k] == NULL)
|
||||||
|
level_file_names[j*MAXLEVELS+k] = Bcalloc(BMAX_PATH,sizeof(char));
|
||||||
|
|
||||||
while (*textptr != ' ' && *textptr != '\t' && *textptr != 0x0a)
|
while (*textptr != ' ' && *textptr != '\t' && *textptr != 0x0a)
|
||||||
{
|
{
|
||||||
level_file_names[j*11+k][i] = *textptr;
|
level_file_names[j*MAXLEVELS+k][i] = *textptr;
|
||||||
textptr++,i++;
|
textptr++,i++;
|
||||||
if (i >= BMAX_PATH)
|
if (i >= BMAX_PATH)
|
||||||
{
|
{
|
||||||
|
@ -4527,18 +4534,18 @@ repeatcase:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
level_names[j*11+k][i] = '\0';
|
level_file_names[j*MAXLEVELS+k][i] = '\0';
|
||||||
|
|
||||||
while (*textptr == ' ' || *textptr == '\t') textptr++;
|
while (*textptr == ' ' || *textptr == '\t') textptr++;
|
||||||
|
|
||||||
partime[j*11+k] =
|
partime[j*MAXLEVELS+k] =
|
||||||
(((*(textptr+0)-'0')*10+(*(textptr+1)-'0'))*26*60)+
|
(((*(textptr+0)-'0')*10+(*(textptr+1)-'0'))*26*60)+
|
||||||
(((*(textptr+3)-'0')*10+(*(textptr+4)-'0'))*26);
|
(((*(textptr+3)-'0')*10+(*(textptr+4)-'0'))*26);
|
||||||
|
|
||||||
textptr += 5;
|
textptr += 5;
|
||||||
while (*textptr == ' ' || *textptr == '\t') textptr++;
|
while (*textptr == ' ' || *textptr == '\t') textptr++;
|
||||||
|
|
||||||
designertime[j*11+k] =
|
designertime[j*MAXLEVELS+k] =
|
||||||
(((*(textptr+0)-'0')*10+(*(textptr+1)-'0'))*26*60)+
|
(((*(textptr+0)-'0')*10+(*(textptr+1)-'0'))*26*60)+
|
||||||
(((*(textptr+3)-'0')*10+(*(textptr+4)-'0'))*26);
|
(((*(textptr+3)-'0')*10+(*(textptr+4)-'0'))*26);
|
||||||
|
|
||||||
|
@ -4547,19 +4554,22 @@ repeatcase:
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
|
|
||||||
|
if (level_names[j*MAXLEVELS+k] == NULL)
|
||||||
|
level_names[j*MAXLEVELS+k] = Bcalloc(32,sizeof(char));
|
||||||
|
|
||||||
while (*textptr != 0x0a && *textptr != 0x0d && *textptr != 0)
|
while (*textptr != 0x0a && *textptr != 0x0d && *textptr != 0)
|
||||||
{
|
{
|
||||||
level_names[j*11+k][i] = toupper(*textptr);
|
level_names[j*MAXLEVELS+k][i] = toupper(*textptr);
|
||||||
textptr++,i++;
|
textptr++,i++;
|
||||||
if (i >= (signed)sizeof(level_names[j*11+k])-1)
|
if (i >= 32)
|
||||||
{
|
{
|
||||||
initprintf("%s:%ld: error: level name exceeds limit of %ld characters.\n",compilefile,line_number,sizeof(level_names[j*11+k])-1);
|
initprintf("%s:%ld: error: level name exceeds limit of %ld characters.\n",compilefile,line_number,sizeof(level_names[j*MAXLEVELS+k])-1);
|
||||||
error++;
|
error++;
|
||||||
while (*textptr != 0x0a && *textptr != 0x0d && *textptr != 0) textptr++;
|
while (*textptr != 0x0a && *textptr != 0x0d && *textptr != 0) textptr++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
level_names[j*11+k][i] = '\0';
|
level_names[j*MAXLEVELS+k][i] = '\0';
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case CON_DEFINEQUOTE:
|
case CON_DEFINEQUOTE:
|
||||||
|
|
|
@ -53,8 +53,8 @@ short mirrorwall[64], mirrorsector[64], mirrorcnt;
|
||||||
|
|
||||||
int current_menu;
|
int current_menu;
|
||||||
|
|
||||||
char level_names[MAXVOLUMES*11][33],level_file_names[MAXVOLUMES*11][BMAX_PATH];
|
char *level_names[MAXVOLUMES*MAXLEVELS],*level_file_names[MAXVOLUMES*MAXLEVELS];
|
||||||
long partime[MAXVOLUMES*11],designertime[MAXVOLUMES*11];
|
long partime[MAXVOLUMES*MAXLEVELS],designertime[MAXVOLUMES*MAXLEVELS];
|
||||||
char volume_names[MAXVOLUMES][33] = { "L.A. MELTDOWN", "LUNAR APOCALYPSE", "SHRAPNEL CITY" };
|
char volume_names[MAXVOLUMES][33] = { "L.A. MELTDOWN", "LUNAR APOCALYPSE", "SHRAPNEL CITY" };
|
||||||
char skill_names[5][33] = { "PIECE OF CAKE", "LET'S ROCK", "COME GET SOME", "DAMN I'M GOOD" };
|
char skill_names[5][33] = { "PIECE OF CAKE", "LET'S ROCK", "COME GET SOME", "DAMN I'M GOOD" };
|
||||||
|
|
||||||
|
@ -120,8 +120,8 @@ long script[MAXSCRIPTSIZE+16];
|
||||||
|
|
||||||
char display_mirror,typebuflen,typebuf[141];
|
char display_mirror,typebuflen,typebuf[141];
|
||||||
|
|
||||||
char music_fn[MAXVOLUMES+1][11][13],music_select;
|
char *music_fn[MAXVOLUMES+1][MAXLEVELS],music_select;
|
||||||
char env_music_fn[MAXVOLUMES+1][13];
|
char env_music_fn[MAXVOLUMES+1][BMAX_PATH];
|
||||||
char rtsplaying;
|
char rtsplaying;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -909,7 +909,7 @@ void menus(void)
|
||||||
gametext(90+60,60,gametype_names[ud.m_coop],0,26);
|
gametext(90+60,60,gametype_names[ud.m_coop],0,26);
|
||||||
|
|
||||||
minitext(90+60,60+8, volume_names[ud.m_volume_number],0,26);
|
minitext(90+60,60+8, volume_names[ud.m_volume_number],0,26);
|
||||||
minitext(90+60,60+8+8, level_names[11*ud.m_volume_number+ud.m_level_number],0,26);
|
minitext(90+60,60+8+8, level_names[MAXLEVELS*ud.m_volume_number+ud.m_level_number],0,26);
|
||||||
if (ud.m_monsters_off == 0 || ud.m_player_skill > 0)
|
if (ud.m_monsters_off == 0 || ud.m_player_skill > 0)
|
||||||
minitext(90+60,60+8+8+8, skill_names[ud.m_player_skill],0,26);
|
minitext(90+60,60+8+8+8, skill_names[ud.m_player_skill],0,26);
|
||||||
else minitext(90+60,60+8+8+8, "NONE",0,28);
|
else minitext(90+60,60+8+8+8, "NONE",0,28);
|
||||||
|
@ -1012,7 +1012,7 @@ void menus(void)
|
||||||
|
|
||||||
gametext(c+70,57+16-7-9,volume_names[ud.m_volume_number],0,2+8+16);
|
gametext(c+70,57+16-7-9,volume_names[ud.m_volume_number],0,2+8+16);
|
||||||
|
|
||||||
gametext(c+70,57+16+16-7-9,&level_names[11*ud.m_volume_number+ud.m_level_number][0],0,2+8+16);
|
gametext(c+70,57+16+16-7-9,&level_names[MAXLEVELS*ud.m_volume_number+ud.m_level_number][0],0,2+8+16);
|
||||||
|
|
||||||
if (ud.m_monsters_off == 0 || ud.m_player_skill > 0)
|
if (ud.m_monsters_off == 0 || ud.m_player_skill > 0)
|
||||||
gametext(c+70,57+16+16+16-7-9,skill_names[ud.m_player_skill],0,2+8+16);
|
gametext(c+70,57+16+16+16-7-9,skill_names[ud.m_player_skill],0,2+8+16);
|
||||||
|
@ -4700,7 +4700,7 @@ VOLUME_ALL_40x:
|
||||||
gametext(c+70,57+16-7-9,volume_names[ud.m_volume_number],MENUHIGHLIGHT(1),2+8+16);
|
gametext(c+70,57+16-7-9,volume_names[ud.m_volume_number],MENUHIGHLIGHT(1),2+8+16);
|
||||||
}
|
}
|
||||||
|
|
||||||
gametext(c+70,57+16+16-7-9,&level_names[11*ud.m_volume_number+ud.m_level_number][0],MENUHIGHLIGHT(2),2+8+16);
|
gametext(c+70,57+16+16-7-9,&level_names[MAXLEVELS*ud.m_volume_number+ud.m_level_number][0],MENUHIGHLIGHT(2),2+8+16);
|
||||||
|
|
||||||
gametext(c+70,57+16+16+16-7-9,ud.m_monsters_off == 0 || ud.m_player_skill > 0?skill_names[ud.m_player_skill]:"NONE",MENUHIGHLIGHT(3),2+8+16);
|
gametext(c+70,57+16+16+16-7-9,ud.m_monsters_off == 0 || ud.m_player_skill > 0?skill_names[ud.m_player_skill]:"NONE",MENUHIGHLIGHT(3),2+8+16);
|
||||||
|
|
||||||
|
|
|
@ -1491,7 +1491,7 @@ void dofrontscreens(char *statustext)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
menutext(160,90,0,0,"ENTERING");
|
menutext(160,90,0,0,"ENTERING");
|
||||||
menutext(160,90+16+8,0,0,level_names[(ud.volume_number*11) + ud.level_number]);
|
menutext(160,90+16+8,0,0,level_names[(ud.volume_number*MAXLEVELS) + ud.level_number]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (statustext) gametext(160,180,statustext,0,2+8+16);
|
if (statustext) gametext(160,180,statustext,0,2+8+16);
|
||||||
|
@ -1616,7 +1616,7 @@ int enterlevel(char g)
|
||||||
Bstrcpy(levname, boardfilename);
|
Bstrcpy(levname, boardfilename);
|
||||||
Bsprintf(apptitle," - %s",levname);
|
Bsprintf(apptitle," - %s",levname);
|
||||||
}
|
}
|
||||||
else Bsprintf(apptitle," - %s",level_names[(ud.volume_number*11)+ud.level_number]);
|
else Bsprintf(apptitle," - %s",level_names[(ud.volume_number*MAXLEVELS)+ud.level_number]);
|
||||||
|
|
||||||
Bstrcat(tempbuf,apptitle);
|
Bstrcat(tempbuf,apptitle);
|
||||||
wm_setapptitle(tempbuf);
|
wm_setapptitle(tempbuf);
|
||||||
|
@ -1657,16 +1657,16 @@ int enterlevel(char g)
|
||||||
if (!loadmaphack(levname)) initprintf("Loaded map hack file %s\n",levname);
|
if (!loadmaphack(levname)) initprintf("Loaded map hack file %s\n",levname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (loadboard(level_file_names[(ud.volume_number*11)+ud.level_number],0,&ps[0].posx, &ps[0].posy, &ps[0].posz, &ps[0].ang,&ps[0].cursectnum) == -1)
|
else if (loadboard(level_file_names[(ud.volume_number*MAXLEVELS)+ud.level_number],0,&ps[0].posx, &ps[0].posy, &ps[0].posz, &ps[0].ang,&ps[0].cursectnum) == -1)
|
||||||
{
|
{
|
||||||
initprintf("Map %s not found!\n",level_file_names[(ud.volume_number*11)+ud.level_number]);
|
initprintf("Map %s not found!\n",level_file_names[(ud.volume_number*MAXLEVELS)+ud.level_number]);
|
||||||
//gameexit(tempbuf);
|
//gameexit(tempbuf);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
char *p;
|
char *p;
|
||||||
strcpy(levname, level_file_names[(ud.volume_number*11)+ud.level_number]);
|
strcpy(levname, level_file_names[(ud.volume_number*MAXLEVELS)+ud.level_number]);
|
||||||
p = Bstrrchr(levname,'.');
|
p = Bstrrchr(levname,'.');
|
||||||
if (!p) strcat(levname,".mhk");
|
if (!p) strcat(levname,".mhk");
|
||||||
else
|
else
|
||||||
|
@ -1683,14 +1683,14 @@ int enterlevel(char g)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
l = strlen(level_file_names[(ud.volume_number*11)+ud.level_number]);
|
l = strlen(level_file_names[(ud.volume_number*MAXLEVELS)+ud.level_number]);
|
||||||
copybufbyte(level_file_names[(ud.volume_number*11)+ud.level_number],&levname[0],l);
|
copybufbyte(level_file_names[(ud.volume_number*MAXLEVELS)+ud.level_number],&levname[0],l);
|
||||||
levname[l] = 255;
|
levname[l] = 255;
|
||||||
levname[l+1] = 0;
|
levname[l+1] = 0;
|
||||||
|
|
||||||
if (loadboard(levname,1,&ps[0].posx, &ps[0].posy, &ps[0].posz, &ps[0].ang,&ps[0].cursectnum) == -1)
|
if (loadboard(levname,1,&ps[0].posx, &ps[0].posy, &ps[0].posz, &ps[0].ang,&ps[0].cursectnum) == -1)
|
||||||
{
|
{
|
||||||
initprintf("Map %s not found!\n",level_file_names[(ud.volume_number*11)+ud.level_number]);
|
initprintf("Map %s not found!\n",level_file_names[(ud.volume_number*MAXLEVELS)+ud.level_number]);
|
||||||
//gameexit(tempbuf);
|
//gameexit(tempbuf);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -1729,7 +1729,7 @@ int enterlevel(char g)
|
||||||
|
|
||||||
if (ud.recstat != 2)
|
if (ud.recstat != 2)
|
||||||
{
|
{
|
||||||
music_select = (ud.volume_number*11) + ud.level_number;
|
music_select = (ud.volume_number*MAXLEVELS) + ud.level_number;
|
||||||
playmusic(&music_fn[0][(unsigned char)music_select][0]);
|
playmusic(&music_fn[0][(unsigned char)music_select][0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -353,7 +353,7 @@ int loadplayer(signed char spot)
|
||||||
clearsoundlocks();
|
clearsoundlocks();
|
||||||
cacheit();
|
cacheit();
|
||||||
|
|
||||||
music_select = (ud.volume_number*11) + ud.level_number;
|
music_select = (ud.volume_number*MAXLEVELS) + ud.level_number;
|
||||||
playmusic(&music_fn[0][(unsigned char)music_select][0]);
|
playmusic(&music_fn[0][(unsigned char)music_select][0]);
|
||||||
|
|
||||||
ps[myconnectindex].gm = MODE_GAME;
|
ps[myconnectindex].gm = MODE_GAME;
|
||||||
|
|
Loading…
Reference in a new issue