mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-16 01:11:44 +00:00
git-svn-id: https://svn.eduke32.com/eduke32@559 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
c9e97fa954
commit
b5a81483f2
18 changed files with 1326 additions and 1263 deletions
0
polymer/eduke32/eobj_win/keep.me
Executable file
0
polymer/eduke32/eobj_win/keep.me
Executable file
0
polymer/eduke32/obj_win/keep.me
Executable file
0
polymer/eduke32/obj_win/keep.me
Executable file
|
@ -1239,7 +1239,7 @@ static void movefx(void)
|
|||
if (p == myconnectindex && ps[p].cursectnum == s->sectnum)
|
||||
{
|
||||
j = s->lotag+((unsigned)global_random%(s->hitag+1));
|
||||
sound(j);
|
||||
sound(j);
|
||||
T5 = 26*40 + (global_random%(26*40));
|
||||
}
|
||||
}
|
||||
|
@ -1272,8 +1272,8 @@ static void movefallers(void)
|
|||
IFHIT
|
||||
{
|
||||
if (j == FIREEXT || j == RPG || j == RADIUSEXPLOSION || j == SEENINE || j == OOZFILTER)
|
||||
{
|
||||
if (s->extra <= 0)
|
||||
{
|
||||
if (s->extra <= 0)
|
||||
{
|
||||
T1 = 1;
|
||||
j = headspritestat[12];
|
||||
|
@ -1516,31 +1516,31 @@ static void movestandables(void)
|
|||
IFHIT
|
||||
{
|
||||
if (s->owner == -2)
|
||||
if (ps[p].on_crane == i)
|
||||
ps[p].on_crane = -1;
|
||||
s->owner = -1;
|
||||
s->picnum = CRANE;
|
||||
goto BOLT;
|
||||
}
|
||||
if (ps[p].on_crane == i)
|
||||
ps[p].on_crane = -1;
|
||||
s->owner = -1;
|
||||
s->picnum = CRANE;
|
||||
goto BOLT;
|
||||
}
|
||||
|
||||
if (s->owner >= 0)
|
||||
{
|
||||
setsprite(s->owner,s->x,s->y,s->z);
|
||||
if (s->owner >= 0)
|
||||
{
|
||||
setsprite(s->owner,s->x,s->y,s->z);
|
||||
|
||||
hittype[s->owner].bposx = s->x;
|
||||
hittype[s->owner].bposy = s->y;
|
||||
hittype[s->owner].bposz = s->z;
|
||||
hittype[s->owner].bposx = s->x;
|
||||
hittype[s->owner].bposy = s->y;
|
||||
hittype[s->owner].bposz = s->z;
|
||||
|
||||
s->zvel = 0;
|
||||
}
|
||||
else if (s->owner == -2)
|
||||
{
|
||||
ps[p].oposx = ps[p].posx = s->x-(sintable[(ps[p].ang+512)&2047]>>6);
|
||||
ps[p].oposy = ps[p].posy = s->y-(sintable[ps[p].ang&2047]>>6);
|
||||
ps[p].oposz = ps[p].posz = s->z+(2<<8);
|
||||
setsprite(ps[p].i,ps[p].posx,ps[p].posy,ps[p].posz);
|
||||
ps[p].cursectnum = sprite[ps[p].i].sectnum;
|
||||
}
|
||||
s->zvel = 0;
|
||||
}
|
||||
else if (s->owner == -2)
|
||||
{
|
||||
ps[p].oposx = ps[p].posx = s->x-(sintable[(ps[p].ang+512)&2047]>>6);
|
||||
ps[p].oposy = ps[p].posy = s->y-(sintable[ps[p].ang&2047]>>6);
|
||||
ps[p].oposz = ps[p].posz = s->z+(2<<8);
|
||||
setsprite(ps[p].i,ps[p].posx,ps[p].posy,ps[p].posz);
|
||||
ps[p].cursectnum = sprite[ps[p].i].sectnum;
|
||||
}
|
||||
}
|
||||
|
||||
goto BOLT;
|
||||
|
@ -2037,8 +2037,8 @@ DETONATE:
|
|||
if (TRAND&1) s->zvel -= 256;
|
||||
if (klabs(s->xvel) < 48)
|
||||
s->xvel += (TRAND&3);
|
||||
}
|
||||
else KILLIT(i);
|
||||
}
|
||||
else KILLIT(i);
|
||||
break;
|
||||
|
||||
case SIDEBOLT1__STATIC:
|
||||
|
@ -2258,28 +2258,28 @@ CLEAR_THE_BOLT:
|
|||
{
|
||||
spritesound(VENT_BUST,i);
|
||||
for (j=0;j<10;j++)
|
||||
RANDOMSCRAP;
|
||||
RANDOMSCRAP;
|
||||
|
||||
if (s->lotag) spawn(i,s->lotag);
|
||||
|
||||
KILLIT(i);
|
||||
}
|
||||
goto BOLT;
|
||||
KILLIT(i);
|
||||
}
|
||||
goto BOLT;
|
||||
|
||||
case EXPLODINGBARREL__STATIC:
|
||||
case WOODENHORSE__STATIC:
|
||||
case HORSEONSIDE__STATIC:
|
||||
case FLOORFLAME__STATIC:
|
||||
case FIREBARREL__STATIC:
|
||||
case FIREVASE__STATIC:
|
||||
case NUKEBARREL__STATIC:
|
||||
case NUKEBARRELDENTED__STATIC:
|
||||
case NUKEBARRELLEAKED__STATIC:
|
||||
case TOILETWATER__STATIC:
|
||||
case RUBBERCAN__STATIC:
|
||||
case STEAM__STATIC:
|
||||
case CEILINGSTEAM__STATIC:
|
||||
p = findplayer(s, &x);
|
||||
case EXPLODINGBARREL__STATIC:
|
||||
case WOODENHORSE__STATIC:
|
||||
case HORSEONSIDE__STATIC:
|
||||
case FLOORFLAME__STATIC:
|
||||
case FIREBARREL__STATIC:
|
||||
case FIREVASE__STATIC:
|
||||
case NUKEBARREL__STATIC:
|
||||
case NUKEBARRELDENTED__STATIC:
|
||||
case NUKEBARRELLEAKED__STATIC:
|
||||
case TOILETWATER__STATIC:
|
||||
case RUBBERCAN__STATIC:
|
||||
case STEAM__STATIC:
|
||||
case CEILINGSTEAM__STATIC:
|
||||
p = findplayer(s, &x);
|
||||
execute(i,p,x);
|
||||
goto BOLT;
|
||||
case WATERBUBBLEMAKER__STATIC:
|
||||
|
@ -3581,11 +3581,11 @@ static void moveactors(void)
|
|||
{
|
||||
T1++;
|
||||
if (T1 > 1)
|
||||
{
|
||||
KILLIT(i);
|
||||
}
|
||||
else s->ang = (TRAND&2047);
|
||||
{
|
||||
KILLIT(i);
|
||||
}
|
||||
else s->ang = (TRAND&2047);
|
||||
}
|
||||
if (s->xvel < 128)
|
||||
s->xvel+=2;
|
||||
s->ang += (TRAND&3)-6;
|
||||
|
@ -3745,8 +3745,8 @@ static void moveactors(void)
|
|||
IFHIT
|
||||
{
|
||||
if (s->extra < 0 && t[0] != -1)
|
||||
{
|
||||
t[0] = -1;
|
||||
{
|
||||
t[0] = -1;
|
||||
s->extra = 0;
|
||||
}
|
||||
spritesound(RECO_PAIN,i);
|
||||
|
@ -3983,8 +3983,8 @@ static void moveactors(void)
|
|||
for (j=16; j >= 0 ;j--)
|
||||
{
|
||||
k = EGS(SECT,SX,SY,SZ,GLASSPIECES+(j%3),-32,36,36,TRAND&2047,32+(TRAND&63),1024-(TRAND&1023),i,5);
|
||||
sprite[k].pal = 1;
|
||||
}
|
||||
sprite[k].pal = 1;
|
||||
}
|
||||
spritesound(GLASS_BREAKING,i);
|
||||
KILLIT(i);
|
||||
}
|
||||
|
@ -4116,25 +4116,25 @@ static void moveactors(void)
|
|||
|
||||
ps[p].actors_killed ++;
|
||||
if (ps[p].somethingonplayer == i)
|
||||
ps[p].somethingonplayer = -1;
|
||||
ps[p].somethingonplayer = -1;
|
||||
|
||||
if (j == FREEZEBLAST)
|
||||
{
|
||||
spritesound(SOMETHINGFROZE,i);
|
||||
t[0] = -5 ;
|
||||
t[3] = 0 ;
|
||||
goto BOLT;
|
||||
}
|
||||
t[0] = -5 ;
|
||||
t[3] = 0 ;
|
||||
goto BOLT;
|
||||
}
|
||||
|
||||
if ((TRAND&255) < 32)
|
||||
{
|
||||
j = spawn(i,BLOODPOOL);
|
||||
{
|
||||
j = spawn(i,BLOODPOOL);
|
||||
sprite[j].pal = 0;
|
||||
}
|
||||
|
||||
for (x=0;x<8;x++)
|
||||
{
|
||||
j = EGS(sect,s->x,s->y,s->z-(8<<8),SCRAP3+(TRAND&3),-8,48,48,TRAND&2047,(TRAND&63)+64,-(TRAND&4095)-(s->zvel>>2),i,5);
|
||||
{
|
||||
j = EGS(sect,s->x,s->y,s->z-(8<<8),SCRAP3+(TRAND&3),-8,48,48,TRAND&2047,(TRAND&63)+64,-(TRAND&4095)-(s->zvel>>2),i,5);
|
||||
sprite[j].pal = 6;
|
||||
}
|
||||
t[0] = -3;
|
||||
|
@ -4714,16 +4714,16 @@ DETONATEB:
|
|||
IFHIT
|
||||
{
|
||||
for (x=0;x<32;x++)
|
||||
RANDOMSCRAP;
|
||||
RANDOMSCRAP;
|
||||
if (s->extra < 0)
|
||||
t[1] = 1;
|
||||
}
|
||||
}
|
||||
goto BOLT;
|
||||
}
|
||||
goto BOLT;
|
||||
|
||||
case CAMERA1__STATIC:
|
||||
case CAMERA1__STATIC:
|
||||
|
||||
if (t[0] == 0)
|
||||
if (t[0] == 0)
|
||||
{
|
||||
t[1]+=8;
|
||||
if (camerashitable)
|
||||
|
@ -4737,7 +4737,7 @@ DETONATEB:
|
|||
}
|
||||
}
|
||||
|
||||
if (s->hitag > 0)
|
||||
if (s->hitag > 0)
|
||||
{
|
||||
if (t[1]<s->hitag)
|
||||
s->ang+=8;
|
||||
|
@ -6169,9 +6169,9 @@ static void moveeffectors(void) //STATNUM 3
|
|||
{
|
||||
t[3]++;
|
||||
if (t[3] == 5)
|
||||
{
|
||||
s->zvel += 1024;
|
||||
FTA(7,&ps[myconnectindex]);
|
||||
{
|
||||
s->zvel += 1024;
|
||||
FTA(7,&ps[myconnectindex]);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -6793,8 +6793,8 @@ static void moveeffectors(void) //STATNUM 3
|
|||
|
||||
l = headspritestat[3];
|
||||
while (l >= 0)
|
||||
{
|
||||
x = sprite[l].lotag&0x7fff;
|
||||
{
|
||||
x = sprite[l].lotag&0x7fff;
|
||||
switch (x)
|
||||
{
|
||||
case 0:
|
||||
|
|
|
@ -204,7 +204,7 @@ void playanm(const char *fn,char t)
|
|||
char *animbuf;
|
||||
unsigned char *palptr;
|
||||
long i, j, length=0, numframes=0;
|
||||
#if defined(POLYMOST) && defined(USE_OPENGL)
|
||||
#if defined(POLYMOST) && defined(USE_OPENGL)
|
||||
int ogltexfiltermode=gltexfiltermode;
|
||||
#endif
|
||||
int32 handle=-1;
|
||||
|
@ -250,7 +250,7 @@ void playanm(const char *fn,char t)
|
|||
//setbrightness(ud.brightness>>2,tempbuf,2);
|
||||
setgamepalette(&ps[myconnectindex],animpal,10);
|
||||
|
||||
#if defined(POLYMOST) && defined(USE_OPENGL)
|
||||
#if defined(POLYMOST) && defined(USE_OPENGL)
|
||||
gltexfiltermode = 0;
|
||||
gltexapplyprops();
|
||||
#endif
|
||||
|
@ -300,10 +300,10 @@ void playanm(const char *fn,char t)
|
|||
|
||||
ENDOFANIMLOOP:
|
||||
|
||||
#if defined(POLYMOST) && defined(USE_OPENGL)
|
||||
#if defined(POLYMOST) && defined(USE_OPENGL)
|
||||
gltexfiltermode = ogltexfiltermode;
|
||||
gltexapplyprops();
|
||||
#endif
|
||||
#endif
|
||||
MOUSE_ClearButton(LEFT_MOUSE);
|
||||
ANIM_FreeAnim();
|
||||
walock[TILE_ANIM] = 1;
|
||||
|
|
|
@ -59,95 +59,95 @@ static struct strllist
|
|||
|
||||
#define MAXHELP2D (signed int)(sizeof(Help2d)/sizeof(Help2d[0]))
|
||||
static char *Help2d[]=
|
||||
{
|
||||
" 'A = Autosave toggle",
|
||||
" 'J = Jump to location",
|
||||
" 'L = Adjust sprite/wall coords",
|
||||
" 'S = Sprite size",
|
||||
" '3 = Caption mode",
|
||||
" '7 = Swap tags",
|
||||
" 'F = Special functions",
|
||||
" X = Horiz. flip selected sects",
|
||||
" Y = Vert. flip selected sects",
|
||||
" F5 = Item count",
|
||||
" F6 = Actor count/SE help",
|
||||
" F7 = Edit sector",
|
||||
" F8 = Edit wall/sprite",
|
||||
" F9 = Sector tag help",
|
||||
" Ctrl-S = Quick save",
|
||||
" Alt-F7 = Search sector lotag",
|
||||
" Alt-F8 = Search wall/sprite tags",
|
||||
" [ = Search forward",
|
||||
" ] = Search backward",
|
||||
};
|
||||
{
|
||||
" 'A = Autosave toggle",
|
||||
" 'J = Jump to location",
|
||||
" 'L = Adjust sprite/wall coords",
|
||||
" 'S = Sprite size",
|
||||
" '3 = Caption mode",
|
||||
" '7 = Swap tags",
|
||||
" 'F = Special functions",
|
||||
" X = Horiz. flip selected sects",
|
||||
" Y = Vert. flip selected sects",
|
||||
" F5 = Item count",
|
||||
" F6 = Actor count/SE help",
|
||||
" F7 = Edit sector",
|
||||
" F8 = Edit wall/sprite",
|
||||
" F9 = Sector tag help",
|
||||
" Ctrl-S = Quick save",
|
||||
" Alt-F7 = Search sector lotag",
|
||||
" Alt-F8 = Search wall/sprite tags",
|
||||
" [ = Search forward",
|
||||
" ] = Search backward",
|
||||
};
|
||||
|
||||
static char *SpriteMode[]=
|
||||
{
|
||||
"NONE",
|
||||
"SECTORS",
|
||||
"WALLS",
|
||||
"SPRITES",
|
||||
"ALL",
|
||||
"ITEMS ONLY",
|
||||
"CURRENT SPRITE ONLY",
|
||||
"ONLY SECTOREFFECTORS AND SECTORS",
|
||||
"NO SECTOREFFECTORS OR SECTORS"
|
||||
};
|
||||
{
|
||||
"NONE",
|
||||
"SECTORS",
|
||||
"WALLS",
|
||||
"SPRITES",
|
||||
"ALL",
|
||||
"ITEMS ONLY",
|
||||
"CURRENT SPRITE ONLY",
|
||||
"ONLY SECTOREFFECTORS AND SECTORS",
|
||||
"NO SECTOREFFECTORS OR SECTORS"
|
||||
};
|
||||
|
||||
#define MAXSKILL 5
|
||||
static char *SKILLMODE[MAXSKILL]=
|
||||
{
|
||||
"Actor skill display: PIECE OF CAKE",
|
||||
"Actor skill display: LET'S ROCK",
|
||||
"Actor skill display: COME GET SOME",
|
||||
"Actor skill display: DAMN I'M GOOD",
|
||||
"Actor skill display: ALL SKILL LEVELS"
|
||||
};
|
||||
{
|
||||
"Actor skill display: PIECE OF CAKE",
|
||||
"Actor skill display: LET'S ROCK",
|
||||
"Actor skill display: COME GET SOME",
|
||||
"Actor skill display: DAMN I'M GOOD",
|
||||
"Actor skill display: ALL SKILL LEVELS"
|
||||
};
|
||||
|
||||
#define MAXNOSPRITES 4
|
||||
static char *SPRDSPMODE[MAXNOSPRITES]=
|
||||
{
|
||||
"Sprite display: DISPLAY ALL SPRITES",
|
||||
"Sprite display: NO EFFECTORS",
|
||||
"Sprite display: NO ACTORS",
|
||||
"Sprite display: NO EFFECTORS OR ACTORS"
|
||||
};
|
||||
{
|
||||
"Sprite display: DISPLAY ALL SPRITES",
|
||||
"Sprite display: NO EFFECTORS",
|
||||
"Sprite display: NO ACTORS",
|
||||
"Sprite display: NO EFFECTORS OR ACTORS"
|
||||
};
|
||||
|
||||
#define MAXHELP3D (signed int)(sizeof(Help3d)/sizeof(Help3d[0]))
|
||||
static char *Help3d[]=
|
||||
{
|
||||
"Mapster32 3D mode help",
|
||||
" ",
|
||||
" F1 = TOGGLE THIS HELP DISPLAY",
|
||||
" F2 = TOGGLE CLIPBOARD",
|
||||
" F3 = MOUSELOOK",
|
||||
" F6 = AUTOMATIC SECTOREFFECTOR HELP",
|
||||
" F7 = AUTOMATIC SECTOR TAG HELP",
|
||||
"",
|
||||
" ' A = TOGGLE AUTOSAVE",
|
||||
" ' D = CYCLE SPRITE SKILL DISPLAY",
|
||||
" ' G = TOGGLE CLIPBOARD GRAPHIC DISPLAY",
|
||||
" ' R = TOGGLE FRAMERATE DISPLAY",
|
||||
" ' W = TOGGLE SPRITE DISPLAY",
|
||||
" ' X = SPRITE SHADE PREVIEW",
|
||||
" ' Y = TOGGLE PURPLE BACKGROUND",
|
||||
"",
|
||||
" ' T = CHANGE LOTAG",
|
||||
" ' H = CHANGE HITAG",
|
||||
" ' S = CHANGE SHADE",
|
||||
" ' M = CHANGE EXTRA",
|
||||
" ' V = CHANGE VISIBILITY",
|
||||
" ' L = CHANGE OBJECT COORDINATES",
|
||||
" ' C = CHANGE GLOBAL SHADE",
|
||||
"",
|
||||
" ' ENTER = PASTE GRAPHIC ONLY",
|
||||
" ' P & ; P = PASTE PALETTE TO ALL SELECTED SECTORS",
|
||||
" ; V = SET VISIBILITY ON ALL SELECTED SECTORS",
|
||||
" ' DEL = CSTAT=0",
|
||||
" CTRL-S = SAVE BOARD",
|
||||
" HOME = PGUP/PGDN MODIFIER (256 UNITS)",
|
||||
" END = PGUP/PGDN MODIFIER (512 UNITS)",
|
||||
};
|
||||
{
|
||||
"Mapster32 3D mode help",
|
||||
" ",
|
||||
" F1 = TOGGLE THIS HELP DISPLAY",
|
||||
" F2 = TOGGLE CLIPBOARD",
|
||||
" F3 = MOUSELOOK",
|
||||
" F6 = AUTOMATIC SECTOREFFECTOR HELP",
|
||||
" F7 = AUTOMATIC SECTOR TAG HELP",
|
||||
"",
|
||||
" ' A = TOGGLE AUTOSAVE",
|
||||
" ' D = CYCLE SPRITE SKILL DISPLAY",
|
||||
" ' G = TOGGLE CLIPBOARD GRAPHIC DISPLAY",
|
||||
" ' R = TOGGLE FRAMERATE DISPLAY",
|
||||
" ' W = TOGGLE SPRITE DISPLAY",
|
||||
" ' X = SPRITE SHADE PREVIEW",
|
||||
" ' Y = TOGGLE PURPLE BACKGROUND",
|
||||
"",
|
||||
" ' T = CHANGE LOTAG",
|
||||
" ' H = CHANGE HITAG",
|
||||
" ' S = CHANGE SHADE",
|
||||
" ' M = CHANGE EXTRA",
|
||||
" ' V = CHANGE VISIBILITY",
|
||||
" ' L = CHANGE OBJECT COORDINATES",
|
||||
" ' C = CHANGE GLOBAL SHADE",
|
||||
"",
|
||||
" ' ENTER = PASTE GRAPHIC ONLY",
|
||||
" ' P & ; P = PASTE PALETTE TO ALL SELECTED SECTORS",
|
||||
" ; V = SET VISIBILITY ON ALL SELECTED SECTORS",
|
||||
" ' DEL = CSTAT=0",
|
||||
" CTRL-S = SAVE BOARD",
|
||||
" HOME = PGUP/PGDN MODIFIER (256 UNITS)",
|
||||
" END = PGUP/PGDN MODIFIER (512 UNITS)",
|
||||
};
|
||||
|
||||
static CACHE1D_FIND_REC *finddirs=NULL, *findfiles=NULL, *finddirshigh=NULL, *findfileshigh=NULL;
|
||||
static int numdirs=0, numfiles=0;
|
||||
|
@ -203,7 +203,7 @@ void ExtLoadMap(const char *mapname)
|
|||
{
|
||||
polymost_precache(sector[j].floorpicnum,sector[j].floorpal,0);
|
||||
polymost_precache(sector[j].floorpicnum,sector[j].floorpal,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for(j=0;j<numsprites;j++)
|
||||
|
@ -3895,11 +3895,11 @@ static void Keys3d(void)
|
|||
}
|
||||
|
||||
/* if(purpleon) {
|
||||
begindrawing();
|
||||
// printext256(1*4,1*8,whitecol,-1,"Purple ON",0);
|
||||
begindrawing();
|
||||
// printext256(1*4,1*8,whitecol,-1,"Purple ON",0);
|
||||
sprintf(getmessage,"Purple ON");
|
||||
message(getmessage);
|
||||
enddrawing();
|
||||
enddrawing();
|
||||
}
|
||||
*/
|
||||
if (sector[cursectnum].lotag==2)
|
||||
|
@ -5513,7 +5513,8 @@ void GAME_clearbackground(int c, int r)
|
|||
}
|
||||
#endif
|
||||
|
||||
enum {
|
||||
enum
|
||||
{
|
||||
T_EOF = -2,
|
||||
T_ERROR = -1,
|
||||
T_INCLUDE = 0,
|
||||
|
@ -5569,11 +5570,11 @@ int parsegroupfiles(scriptfile *script)
|
|||
char *cmdtokptr;
|
||||
|
||||
tokenlist grptokens[] =
|
||||
{
|
||||
{ "include", T_INCLUDE },
|
||||
{ "#include", T_INCLUDE },
|
||||
{ "loadgrp", T_LOADGRP },
|
||||
};
|
||||
{
|
||||
{ "include", T_INCLUDE },
|
||||
{ "#include", T_INCLUDE },
|
||||
{ "loadgrp", T_LOADGRP },
|
||||
};
|
||||
|
||||
while (1)
|
||||
{
|
||||
|
@ -5655,13 +5656,13 @@ int parsetilegroups(scriptfile *script)
|
|||
char *cmdtokptr;
|
||||
|
||||
tokenlist tgtokens[] =
|
||||
{
|
||||
{ "include", T_INCLUDE },
|
||||
{ "#include", T_INCLUDE },
|
||||
{ "define", T_DEFINE },
|
||||
{ "#define", T_DEFINE },
|
||||
{ "tilegroup", T_TILEGROUP },
|
||||
};
|
||||
{
|
||||
{ "include", T_INCLUDE },
|
||||
{ "#include", T_INCLUDE },
|
||||
{ "define", T_DEFINE },
|
||||
{ "#define", T_DEFINE },
|
||||
{ "tilegroup", T_TILEGROUP },
|
||||
};
|
||||
|
||||
while (1)
|
||||
{
|
||||
|
@ -5717,13 +5718,13 @@ int parsetilegroups(scriptfile *script)
|
|||
while (script->textptr < end)
|
||||
{
|
||||
tokenlist tgtokens2[] =
|
||||
{
|
||||
{ "tilegroup", T_TILEGROUP },
|
||||
{ "tile", T_TILE },
|
||||
{ "tilerange", T_TILERANGE },
|
||||
{ "hotkey", T_HOTKEY },
|
||||
{ "tiles", T_TILES },
|
||||
};
|
||||
{
|
||||
{ "tilegroup", T_TILEGROUP },
|
||||
{ "tile", T_TILE },
|
||||
{ "tilerange", T_TILERANGE },
|
||||
{ "hotkey", T_HOTKEY },
|
||||
{ "tiles", T_TILES },
|
||||
};
|
||||
|
||||
int token = getatoken(script,tgtokens2,sizeof(tgtokens2)/sizeof(tokenlist));
|
||||
switch (token)
|
||||
|
@ -5903,8 +5904,10 @@ int ExtInit(void)
|
|||
}
|
||||
loadgroupfiles(defsfilename);
|
||||
|
||||
if (grps && grpstoadd > 0) {
|
||||
for (i=0;i<grpstoadd;i++) {
|
||||
if (grps && grpstoadd > 0)
|
||||
{
|
||||
for (i=0;i<grpstoadd;i++)
|
||||
{
|
||||
initprintf("Adding %s\n",grps[i]);
|
||||
initgroupfile(grps[i]);
|
||||
if (!NoAutoLoad)
|
||||
|
@ -7287,7 +7290,8 @@ static void FuncMenu(void)
|
|||
disptext[dispwidth] = 0;
|
||||
if (row > rowmax) row = rowmax;
|
||||
}
|
||||
else */ if (col == 1)
|
||||
else */
|
||||
if (col == 1)
|
||||
{
|
||||
printext16(xpos,ypos+row*8,11,0,disptext,0);
|
||||
col = 0;
|
||||
|
|
|
@ -381,7 +381,6 @@ struct player_orig {
|
|||
|
||||
|
||||
extern char numplayersprites;
|
||||
extern char picsiz[MAXTILES];
|
||||
|
||||
extern long fricxv,fricyv;
|
||||
|
||||
|
@ -883,7 +882,9 @@ enum logoflags {
|
|||
LOGO_FLAG_TITLESCREEN = 16,
|
||||
LOGO_FLAG_DUKENUKEM = 32,
|
||||
LOGO_FLAG_THREEDEE = 64,
|
||||
LOGO_FLAG_PLUTOPAKSPRITE = 128
|
||||
LOGO_FLAG_PLUTOPAKSPRITE = 128,
|
||||
LOGO_FLAG_SHAREWARESCREENS = 256,
|
||||
LOGO_FLAG_TENSCREEN = 512
|
||||
};
|
||||
|
||||
extern char numl;
|
||||
|
|
|
@ -2510,7 +2510,11 @@ void fadepal(int r, int g, int b, int start, int end, int step)
|
|||
|
||||
static void showtwoscreens(void)
|
||||
{
|
||||
if (!VOLUMEALL)
|
||||
int flags = GetGameVar("LOGO_FLAGS",255, -1, -1);
|
||||
|
||||
MUSIC_StopSong();
|
||||
|
||||
if (!VOLUMEALL || flags & LOGO_FLAG_SHAREWARESCREENS)
|
||||
{
|
||||
setview(0,0,xdim-1,ydim-1);
|
||||
flushperms();
|
||||
|
@ -2538,6 +2542,24 @@ static void showtwoscreens(void)
|
|||
getpackets();
|
||||
}
|
||||
}
|
||||
|
||||
if (flags & LOGO_FLAG_TENSCREEN)
|
||||
{
|
||||
setview(0,0,xdim-1,ydim-1);
|
||||
flushperms();
|
||||
//ps[myconnectindex].palette = palette;
|
||||
setgamepalette(&ps[myconnectindex], palette, 1); // JBF 20040308
|
||||
fadepal(0,0,0, 0,64,7);
|
||||
KB_FlushKeyboardQueue();
|
||||
rotatesprite(0,0,65536L,0,TENSCREEN,0,0,2+8+16+64, 0,0,xdim-1,ydim-1);
|
||||
IFISSOFTMODE fadepal(0,0,0, 63,0,-7);
|
||||
else nextpage();
|
||||
while (!KB_KeyWaiting() && totalclock < 2400)
|
||||
{
|
||||
handleevents();
|
||||
getpackets();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extern long qsetmode;
|
||||
|
@ -2626,7 +2648,8 @@ static int strget_(int small,int x,int y,char *t,int dalen,int c)
|
|||
{
|
||||
ch = Btoupper(ch);
|
||||
if (c != 997 || (ch >= '0' && ch <= '9'))
|
||||
{ // JBF 20040508: so we can have numeric only if we want
|
||||
{
|
||||
// JBF 20040508: so we can have numeric only if we want
|
||||
*(t+inputloc) = ch;
|
||||
*(t+inputloc+1) = 0;
|
||||
inputloc++;
|
||||
|
@ -3930,7 +3953,8 @@ void displayrooms(int snum,long smoothratio)
|
|||
else tang = 0;
|
||||
|
||||
if (xres <= 320 && yres <= 240)
|
||||
{ // JBF 20030807: Increased tilted-screen quality
|
||||
{
|
||||
// JBF 20030807: Increased tilted-screen quality
|
||||
tiltcs = 1;
|
||||
tiltcx = 320;
|
||||
tiltcy = 200;
|
||||
|
@ -3950,7 +3974,8 @@ void displayrooms(int snum,long smoothratio)
|
|||
else
|
||||
setviewtotile(TILE_TILT,tiltcx>>(1-ud.detail),tiltcx>>(1-ud.detail));
|
||||
if ((tang&1023) == 512)
|
||||
{ //Block off unscreen section of 90ø tilted screen
|
||||
{
|
||||
//Block off unscreen section of 90ø tilted screen
|
||||
j = ((tiltcx-(60*tiltcs))>>(1-ud.detail));
|
||||
for (i=((60*tiltcs)>>(1-ud.detail))-1;i>=0;i--)
|
||||
{
|
||||
|
@ -5289,7 +5314,8 @@ int spawn(int j, int pn)
|
|||
}
|
||||
case WATERBUBBLEMAKER__STATIC:
|
||||
if (sp->hitag && sp->picnum == WATERBUBBLEMAKER)
|
||||
{ // JBF 20030913: Pisses off move(), eg. in bobsp2
|
||||
{
|
||||
// JBF 20030913: Pisses off move(), eg. in bobsp2
|
||||
OSD_Printf("WARNING: WATERBUBBLEMAKER %d @ %d,%d with hitag!=0. Applying fixup.\n",
|
||||
i,sp->x,sp->y);
|
||||
sp->hitag = 0;
|
||||
|
@ -6224,7 +6250,7 @@ void animatesprites(long x,long y,int a,long smoothratio)
|
|||
|
||||
//greenslime can't be handled through the dynamictostatic system due to addition on constant
|
||||
if ((t->picnum >= GREENSLIME)&&(t->picnum <= GREENSLIME+7))
|
||||
{}
|
||||
{}
|
||||
else switch (dynamictostatic[t->picnum])
|
||||
{
|
||||
case BLOODPOOL__STATIC:
|
||||
|
@ -6311,7 +6337,8 @@ void animatesprites(long x,long y,int a,long smoothratio)
|
|||
}
|
||||
|
||||
for (j=0;j < spritesortcnt; j++) //Between drawrooms() and drawmasks()
|
||||
{ //is the perfect time to animate sprites
|
||||
{
|
||||
//is the perfect time to animate sprites
|
||||
t = &tsprite[j];
|
||||
i = t->owner;
|
||||
s = &sprite[i];
|
||||
|
@ -7042,35 +7069,35 @@ PALONLY:
|
|||
static char terminx[64] = { "Undead TC still sucks." };
|
||||
|
||||
char cheatquotes[][MAXCHEATLEN] =
|
||||
{
|
||||
"cornholio", // 0
|
||||
"stuff", // 1
|
||||
"scotty###", // 2
|
||||
"coords", // 3
|
||||
"view", // 4
|
||||
"time", // 5
|
||||
"unlock", // 6
|
||||
"cashman", // 7
|
||||
"items", // 8
|
||||
"rate", // 9
|
||||
"skill#", // 10
|
||||
"beta", // 11
|
||||
"hyper", // 12
|
||||
"monsters", // 13
|
||||
"<RESERVED>", // 14
|
||||
"<RESERVED>", // 15
|
||||
"todd", // 16
|
||||
"showmap", // 17
|
||||
"kroz", // 18
|
||||
"allen", // 19
|
||||
"clip", // 20
|
||||
"weapons", // 21
|
||||
"inventory", // 22
|
||||
"keys", // 23
|
||||
"debug", // 24
|
||||
"<RESERVED>", // 25
|
||||
"sfm", // 26
|
||||
};
|
||||
{
|
||||
"cornholio", // 0
|
||||
"stuff", // 1
|
||||
"scotty###", // 2
|
||||
"coords", // 3
|
||||
"view", // 4
|
||||
"time", // 5
|
||||
"unlock", // 6
|
||||
"cashman", // 7
|
||||
"items", // 8
|
||||
"rate", // 9
|
||||
"skill#", // 10
|
||||
"beta", // 11
|
||||
"hyper", // 12
|
||||
"monsters", // 13
|
||||
"<RESERVED>", // 14
|
||||
"<RESERVED>", // 15
|
||||
"todd", // 16
|
||||
"showmap", // 17
|
||||
"kroz", // 18
|
||||
"allen", // 19
|
||||
"clip", // 20
|
||||
"weapons", // 21
|
||||
"inventory", // 22
|
||||
"keys", // 23
|
||||
"debug", // 24
|
||||
"<RESERVED>", // 25
|
||||
"sfm", // 26
|
||||
};
|
||||
|
||||
enum cheats
|
||||
{
|
||||
|
@ -7179,7 +7206,8 @@ static void cheats(void)
|
|||
char consolecheat = 0; // JBF 20030914
|
||||
|
||||
if (osdcmd_cheatsinfo_stat.cheatnum != -1)
|
||||
{ // JBF 20030914
|
||||
{
|
||||
// JBF 20030914
|
||||
k = osdcmd_cheatsinfo_stat.cheatnum;
|
||||
osdcmd_cheatsinfo_stat.cheatnum = -1;
|
||||
consolecheat = 1;
|
||||
|
@ -7420,7 +7448,8 @@ FOUNDCHEAT:
|
|||
{
|
||||
i = Bstrlen(cheatquotes[k])-3+VOLUMEONE;
|
||||
if (!consolecheat)
|
||||
{ // JBF 20030914
|
||||
{
|
||||
// JBF 20030914
|
||||
short volnume,levnume;
|
||||
if (VOLUMEALL)
|
||||
{
|
||||
|
@ -7448,7 +7477,8 @@ FOUNDCHEAT:
|
|||
ud.m_level_number = ud.level_number = levnume;
|
||||
}
|
||||
else
|
||||
{ // JBF 20030914
|
||||
{
|
||||
// JBF 20030914
|
||||
ud.m_volume_number = ud.volume_number = osdcmd_cheatsinfo_stat.volume;
|
||||
ud.m_level_number = ud.level_number = osdcmd_cheatsinfo_stat.level;
|
||||
}
|
||||
|
@ -8232,11 +8262,11 @@ static int load_rancid_net(const char *fn)
|
|||
char *cmdtokptr;
|
||||
|
||||
tokenlist rancidtokens[] =
|
||||
{
|
||||
{ "interface", T_INTERFACE },
|
||||
{ "mode", T_MODE },
|
||||
{ "allow", T_ALLOW },
|
||||
};
|
||||
{
|
||||
{ "interface", T_INTERFACE },
|
||||
{ "mode", T_MODE },
|
||||
{ "allow", T_ALLOW },
|
||||
};
|
||||
|
||||
scriptfile *script;
|
||||
|
||||
|
@ -8450,12 +8480,12 @@ static int parsegroupfiles(scriptfile *script)
|
|||
char *cmdtokptr;
|
||||
|
||||
tokenlist grptokens[] =
|
||||
{
|
||||
{ "include", T_INCLUDE },
|
||||
{ "#include", T_INCLUDE },
|
||||
{ "loadgrp", T_LOADGRP },
|
||||
{ "cachesize", T_CACHESIZE },
|
||||
};
|
||||
{
|
||||
{ "include", T_INCLUDE },
|
||||
{ "#include", T_INCLUDE },
|
||||
{ "loadgrp", T_LOADGRP },
|
||||
{ "cachesize", T_CACHESIZE },
|
||||
};
|
||||
|
||||
while (1)
|
||||
{
|
||||
|
@ -9157,7 +9187,8 @@ static void Logo(void)
|
|||
}
|
||||
else soundanm = 2;
|
||||
if (PLUTOPAK && (logoflags & LOGO_FLAG_PLUTOPAKSPRITE))
|
||||
{ // JBF 20030804
|
||||
{
|
||||
// JBF 20030804
|
||||
if (totalclock >= 280 && totalclock < 395)
|
||||
{
|
||||
rotatesprite(160<<16,(151)<<16,(410-totalclock)<<12,0,PLUTOPAKSPRITE+1,0,0,2+8,0,0,xdim-1,ydim-1);
|
||||
|
@ -9960,7 +9991,8 @@ void app_main(int argc,const char **argv)
|
|||
initprintf("Using config file '%s'.\n",setupfilename);
|
||||
|
||||
ScanGroups();
|
||||
{ // try and identify the 'defaultduke3dgrp' in the set of GRPs.
|
||||
{
|
||||
// try and identify the 'defaultduke3dgrp' in the set of GRPs.
|
||||
// if it is found, set up the environment accordingly for the game it represents.
|
||||
// if it is not found, choose the first GRP from the list of
|
||||
struct grpfile *fg, *first = NULL;
|
||||
|
@ -10026,7 +10058,7 @@ void app_main(int argc,const char **argv)
|
|||
if (!NoAutoLoad)
|
||||
{
|
||||
getfilenames("autoload","*.grp");
|
||||
while (findfiles) { Bsprintf(tempbuf,"autoload/%s",findfiles->name); initprintf("Using group file '%s'.\n",tempbuf); initgroupfile(tempbuf); findfiles = findfiles->next; }
|
||||
while (findfiles) { Bsprintf(tempbuf,"autoload/%s",findfiles->name); initprintf("Using group file '%s'.\n",tempbuf); initgroupfile(tempbuf); findfiles = findfiles->next; }
|
||||
getfilenames("autoload","*.zip");
|
||||
while (findfiles) { Bsprintf(tempbuf,"autoload/%s",findfiles->name); initprintf("Using group file '%s'.\n",tempbuf); initgroupfile(tempbuf); findfiles = findfiles->next; }
|
||||
getfilenames("autoload","*.pk3");
|
||||
|
@ -10294,7 +10326,8 @@ MAIN_LOOP_RESTART:
|
|||
while (!(ps[myconnectindex].gm&MODE_END)) //The whole loop!!!!!!!!!!!!!!!!!!
|
||||
{
|
||||
if (handleevents())
|
||||
{ // JBF
|
||||
{
|
||||
// JBF
|
||||
if (quitevent)
|
||||
{
|
||||
KB_KeyDown[sc_Escape] = 1;
|
||||
|
@ -10440,7 +10473,8 @@ static int opendemoread(int which_demo) // 0 = mine
|
|||
if (kread(recfilep,&ver,sizeof(char)) != sizeof(char)) goto corrupt;
|
||||
|
||||
if (ver != BYTEVERSION /*&& ver != 116 && ver != 117*/)
|
||||
{ /* old demo playback */
|
||||
{
|
||||
/* old demo playback */
|
||||
if (ver == BYTEVERSION_JF) initprintf("Demo %s is for Regular edition.\n", d);
|
||||
else if (ver == BYTEVERSION_JF+1) initprintf("Demo %s is for Atomic edition.\n", d);
|
||||
else if (ver == BYTEVERSION_JF+2) initprintf("Demo %s is for Shareware version.\n", d);
|
||||
|
@ -11149,7 +11183,8 @@ static void fakedomovethings(void)
|
|||
myyvel = 0;
|
||||
}
|
||||
else if (syn->avel) //p->ang += syncangvel * constant
|
||||
{ //ENGINE calculates angvel for you
|
||||
{
|
||||
//ENGINE calculates angvel for you
|
||||
long tempang = syn->avel<<1;
|
||||
|
||||
if (psectlotag == 2)
|
||||
|
@ -11566,22 +11601,22 @@ void dobonus(int bonusonly)
|
|||
int32 playerbest = -1;
|
||||
|
||||
int breathe[] =
|
||||
{
|
||||
0, 30,VICTORY1+1,176,59,
|
||||
30, 60,VICTORY1+2,176,59,
|
||||
60, 90,VICTORY1+1,176,59,
|
||||
90, 120,0 ,176,59
|
||||
};
|
||||
{
|
||||
0, 30,VICTORY1+1,176,59,
|
||||
30, 60,VICTORY1+2,176,59,
|
||||
60, 90,VICTORY1+1,176,59,
|
||||
90, 120,0 ,176,59
|
||||
};
|
||||
|
||||
int bossmove[] =
|
||||
{
|
||||
0, 120,VICTORY1+3,86,59,
|
||||
220, 260,VICTORY1+4,86,59,
|
||||
260, 290,VICTORY1+5,86,59,
|
||||
290, 320,VICTORY1+6,86,59,
|
||||
320, 350,VICTORY1+7,86,59,
|
||||
350, 380,VICTORY1+8,86,59
|
||||
};
|
||||
{
|
||||
0, 120,VICTORY1+3,86,59,
|
||||
220, 260,VICTORY1+4,86,59,
|
||||
260, 290,VICTORY1+5,86,59,
|
||||
290, 320,VICTORY1+6,86,59,
|
||||
320, 350,VICTORY1+7,86,59,
|
||||
350, 380,VICTORY1+8,86,59
|
||||
};
|
||||
|
||||
if (VOLUMEALL) wm_setapptitle(HEAD2);
|
||||
else wm_setapptitle(HEAD);
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -4258,30 +4258,30 @@ static int parse(void)
|
|||
j=GetGameVarID(*insptr++, g_i, g_p);
|
||||
switch (tw)
|
||||
{
|
||||
case CON_HEADSPRITESTAT:
|
||||
if (j < MAXSTATUS)
|
||||
SetGameVarID(i,headspritestat[j],g_i,g_p);
|
||||
break;
|
||||
case CON_PREVSPRITESTAT:
|
||||
if (j < MAXSPRITES)
|
||||
SetGameVarID(i,prevspritestat[j],g_i,g_p);
|
||||
break;
|
||||
case CON_NEXTSPRITESTAT:
|
||||
if (j < MAXSPRITES)
|
||||
SetGameVarID(i,nextspritestat[j],g_i,g_p);
|
||||
break;
|
||||
case CON_HEADSPRITESECT:
|
||||
if (j < MAXSECTORS)
|
||||
SetGameVarID(i,headspritesect[j],g_i,g_p);
|
||||
break;
|
||||
case CON_PREVSPRITESECT:
|
||||
if (j < MAXSPRITES)
|
||||
SetGameVarID(i,prevspritesect[j],g_i,g_p);
|
||||
break;
|
||||
case CON_NEXTSPRITESECT:
|
||||
if (j < MAXSPRITES)
|
||||
SetGameVarID(i,nextspritesect[j],g_i,g_p);
|
||||
break;
|
||||
case CON_HEADSPRITESTAT:
|
||||
if (j < MAXSTATUS)
|
||||
SetGameVarID(i,headspritestat[j],g_i,g_p);
|
||||
break;
|
||||
case CON_PREVSPRITESTAT:
|
||||
if (j < MAXSPRITES)
|
||||
SetGameVarID(i,prevspritestat[j],g_i,g_p);
|
||||
break;
|
||||
case CON_NEXTSPRITESTAT:
|
||||
if (j < MAXSPRITES)
|
||||
SetGameVarID(i,nextspritestat[j],g_i,g_p);
|
||||
break;
|
||||
case CON_HEADSPRITESECT:
|
||||
if (j < MAXSECTORS)
|
||||
SetGameVarID(i,headspritesect[j],g_i,g_p);
|
||||
break;
|
||||
case CON_PREVSPRITESECT:
|
||||
if (j < MAXSPRITES)
|
||||
SetGameVarID(i,prevspritesect[j],g_i,g_p);
|
||||
break;
|
||||
case CON_NEXTSPRITESECT:
|
||||
if (j < MAXSPRITES)
|
||||
SetGameVarID(i,nextspritesect[j],g_i,g_p);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -6373,7 +6373,7 @@ static int parse(void)
|
|||
adduserquote(fta_quotes[i]);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case CON_IFINOUTERSPACE:
|
||||
parseifelse(floorspace(g_sp->sectnum));
|
||||
break;
|
||||
|
|
|
@ -1332,5 +1332,5 @@ static void ResetPointerVars(void)
|
|||
aGameVars[GetGameID("myreturntocenter")].lValue = (long)&myreturntocenter;
|
||||
|
||||
aGameVars[GetGameID("display_mirror")].lValue = (long)&display_mirror;
|
||||
aGameVars[GetGameID("randomseed")].lValue = (long)&randomseed;
|
||||
aGameVars[GetGameID("randomseed")].lValue = (long)&randomseed;
|
||||
}
|
||||
|
|
|
@ -128,23 +128,24 @@ char env_music_fn[MAXVOLUMES+1][BMAX_PATH];
|
|||
char rtsplaying;
|
||||
|
||||
|
||||
short weaponsandammosprites[15] = {
|
||||
RPGSPRITE__STATIC,
|
||||
CHAINGUNSPRITE__STATIC,
|
||||
DEVISTATORAMMO__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
JETPACK__STATIC,
|
||||
SHIELD__STATIC,
|
||||
FIRSTAID__STATIC,
|
||||
STEROIDS__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
RPGSPRITE__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
FREEZESPRITE__STATIC,
|
||||
FREEZEAMMO__STATIC
|
||||
};
|
||||
short weaponsandammosprites[15] =
|
||||
{
|
||||
RPGSPRITE__STATIC,
|
||||
CHAINGUNSPRITE__STATIC,
|
||||
DEVISTATORAMMO__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
JETPACK__STATIC,
|
||||
SHIELD__STATIC,
|
||||
FIRSTAID__STATIC,
|
||||
STEROIDS__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
RPGSPRITE__STATIC,
|
||||
RPGAMMO__STATIC,
|
||||
FREEZESPRITE__STATIC,
|
||||
FREEZEAMMO__STATIC
|
||||
};
|
||||
|
||||
long impact_damage;
|
||||
int condebug;
|
||||
|
|
|
@ -9,17 +9,17 @@
|
|||
#include "grpscan.h"
|
||||
|
||||
struct grpfile grpfiles[numgrpfiles] =
|
||||
{
|
||||
{ "Duke Nukem 3D", 0xBBC9CE44, 26524524, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D: Atomic Edition", 0xF514A6AC, 44348015, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D: Atomic Edition", 0xFD3DCFF1, 44356548, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D Shareware", 0x983AD923, 11035779, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D Mac Shareware", 0xC5F71561, 10444391, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D Mac", 0x00000000, 0, GAMEDUKE, NULL },
|
||||
{ "NAM", 0x75C1F07B, 43448927, GAMENAM, NULL },
|
||||
{ "Napalm", 0x3DE1589A, 44365728, GAMENAM, NULL },
|
||||
{ "WW2GI", 0x907B82BF, 77939508, GAMEWW2, NULL },
|
||||
};
|
||||
{
|
||||
{ "Duke Nukem 3D", 0xBBC9CE44, 26524524, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D: Atomic Edition", 0xF514A6AC, 44348015, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D: Atomic Edition", 0xFD3DCFF1, 44356548, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D Shareware", 0x983AD923, 11035779, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D Mac Shareware", 0xC5F71561, 10444391, GAMEDUKE, NULL },
|
||||
{ "Duke Nukem 3D Mac", 0x00000000, 0, GAMEDUKE, NULL },
|
||||
{ "NAM", 0x75C1F07B, 43448927, GAMENAM, NULL },
|
||||
{ "Napalm", 0x3DE1589A, 44365728, GAMENAM, NULL },
|
||||
{ "WW2GI", 0x907B82BF, 77939508, GAMEWW2, NULL },
|
||||
};
|
||||
struct grpfile *foundgrps = NULL;
|
||||
|
||||
#define GRPCACHEFILE "grpfiles.cache"
|
||||
|
|
|
@ -726,28 +726,29 @@ void menus(void)
|
|||
c = (320>>1)-120;
|
||||
{
|
||||
int io, ii, yy = 37, d=c+140, enabled;
|
||||
char *opts[] = {
|
||||
"Name",
|
||||
"-",
|
||||
"Color",
|
||||
"-",
|
||||
"Team",
|
||||
"-",
|
||||
"-",
|
||||
"Auto aim",
|
||||
"Mouse aim",
|
||||
"-",
|
||||
"-",
|
||||
"Switch weapon on pickup",
|
||||
"Switch weapon when empty",
|
||||
"-",
|
||||
"-",
|
||||
"Network packets/sec",
|
||||
"-",
|
||||
"-",
|
||||
"Multiplayer macros",
|
||||
NULL
|
||||
};
|
||||
char *opts[] =
|
||||
{
|
||||
"Name",
|
||||
"-",
|
||||
"Color",
|
||||
"-",
|
||||
"Team",
|
||||
"-",
|
||||
"-",
|
||||
"Auto aim",
|
||||
"Mouse aim",
|
||||
"-",
|
||||
"-",
|
||||
"Switch weapon on pickup",
|
||||
"Switch weapon when empty",
|
||||
"-",
|
||||
"-",
|
||||
"Network packets/sec",
|
||||
"-",
|
||||
"-",
|
||||
"Multiplayer macros",
|
||||
NULL
|
||||
};
|
||||
|
||||
x = ud.color;
|
||||
|
||||
|
@ -940,7 +941,8 @@ void menus(void)
|
|||
case 1:
|
||||
{
|
||||
char *s[] = { "Auto","","","","","","","","","Blue","Red","Green","Gray","Dark gray","Dark green","Brown",
|
||||
"Dark blue","","","","","Bright red","","Yellow","","" };
|
||||
"Dark blue","","","","","Bright red","","Yellow","",""
|
||||
};
|
||||
gametext(d-50,yy,s[ud.color],MENUHIGHLIGHT(io),2+8+16);
|
||||
}
|
||||
break;
|
||||
|
@ -1248,7 +1250,7 @@ void menus(void)
|
|||
current_menu = 20022;
|
||||
}
|
||||
else if (x == 2)
|
||||
{}
|
||||
{}
|
||||
KB_ClearKeyDown(sc_Enter);
|
||||
KB_ClearKeyDown(sc_kpad_Enter);
|
||||
KB_FlushKeyboardQueue();
|
||||
|
@ -1867,36 +1869,36 @@ cheat_for_port_credits:
|
|||
gametext(160,122-l,"LICENSE AND OTHER CONTRIBUTORS",0,2+8+16);
|
||||
{
|
||||
const char *scroller[] =
|
||||
{
|
||||
"This program is distributed under the terms of the",
|
||||
"GNU General Public License version 2 as published by the",
|
||||
"Free Software Foundation. See GNU.TXT for details.",
|
||||
"",
|
||||
"Thanks to the following people for their contributions:",
|
||||
"",
|
||||
"Adam Fazakerley",
|
||||
"Charlie Honig",
|
||||
"Ed Coolidge",
|
||||
"James Bentler",
|
||||
"Javier Martinez",
|
||||
"Jeff Hart",
|
||||
"Jonathan Smith",
|
||||
"Jose del Castillo",
|
||||
"Lachlan McDonald",
|
||||
"Matthew Palmer",
|
||||
"Peter Green",
|
||||
"Ryan Gordon",
|
||||
"",
|
||||
"EDuke originally by Matt Saettler",
|
||||
"",
|
||||
"--x--",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
""
|
||||
};
|
||||
{
|
||||
"This program is distributed under the terms of the",
|
||||
"GNU General Public License version 2 as published by the",
|
||||
"Free Software Foundation. See GNU.TXT for details.",
|
||||
"",
|
||||
"Thanks to the following people for their contributions:",
|
||||
"",
|
||||
"Adam Fazakerley",
|
||||
"Charlie Honig",
|
||||
"Ed Coolidge",
|
||||
"James Bentler",
|
||||
"Javier Martinez",
|
||||
"Jeff Hart",
|
||||
"Jonathan Smith",
|
||||
"Jose del Castillo",
|
||||
"Lachlan McDonald",
|
||||
"Matthew Palmer",
|
||||
"Peter Green",
|
||||
"Ryan Gordon",
|
||||
"",
|
||||
"EDuke originally by Matt Saettler",
|
||||
"",
|
||||
"--x--",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
""
|
||||
};
|
||||
const int numlines = sizeof(scroller)/sizeof(char *);
|
||||
for (m=0,i=(totalclock/104)%numlines; m<6; m++,i++)
|
||||
{
|
||||
|
@ -2182,7 +2184,8 @@ cheat_for_port_credits:
|
|||
// path
|
||||
minitext(52,32,boardfilename,0,26);
|
||||
|
||||
{ // JBF 20040208: seek to first name matching pressed character
|
||||
{
|
||||
// JBF 20040208: seek to first name matching pressed character
|
||||
CACHE1D_FIND_REC *seeker = currentlist ? findfiles : finddirs;
|
||||
if ((KB_KeyPressed(sc_Home)|KB_KeyPressed(sc_End)) > 0)
|
||||
{
|
||||
|
@ -2418,25 +2421,26 @@ cheat_for_port_credits:
|
|||
|
||||
{
|
||||
int io, ii, yy, d=c+160+40, enabled;
|
||||
char *opts[] = {
|
||||
"Widescreen",
|
||||
"-",
|
||||
"Anisotropic filtering",
|
||||
"-",
|
||||
"Hightile textures",
|
||||
"Precache textures",
|
||||
"GL texture compression",
|
||||
"Cache textures on disk",
|
||||
"Compress disk cache",
|
||||
"Detail mapping",
|
||||
"Glow mapping",
|
||||
"-",
|
||||
"Models",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
NULL
|
||||
};
|
||||
char *opts[] =
|
||||
{
|
||||
"Widescreen",
|
||||
"-",
|
||||
"Anisotropic filtering",
|
||||
"-",
|
||||
"Hightile textures",
|
||||
"Precache textures",
|
||||
"GL texture compression",
|
||||
"Cache textures on disk",
|
||||
"Compress disk cache",
|
||||
"Detail mapping",
|
||||
"Glow mapping",
|
||||
"-",
|
||||
"Models",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
NULL
|
||||
};
|
||||
|
||||
yy = 37;
|
||||
for (ii=io=0; opts[ii]; ii++)
|
||||
|
@ -2554,29 +2558,30 @@ cheat_for_port_credits:
|
|||
|
||||
{
|
||||
int io, ii, yy, d=c+160+40, enabled;
|
||||
char *opts[] = {
|
||||
"Crosshair",
|
||||
"Level stats",
|
||||
"-",
|
||||
"Screen size",
|
||||
"Status bar size",
|
||||
"-",
|
||||
"Run key style",
|
||||
"-",
|
||||
"Shadows",
|
||||
"Screen tilting",
|
||||
"-",
|
||||
"Show opponent weapon",
|
||||
"Demo playback cameras",
|
||||
"Record demo",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"More...",
|
||||
NULL
|
||||
};
|
||||
char *opts[] =
|
||||
{
|
||||
"Crosshair",
|
||||
"Level stats",
|
||||
"-",
|
||||
"Screen size",
|
||||
"Status bar size",
|
||||
"-",
|
||||
"Run key style",
|
||||
"-",
|
||||
"Shadows",
|
||||
"Screen tilting",
|
||||
"-",
|
||||
"Show opponent weapon",
|
||||
"Demo playback cameras",
|
||||
"Record demo",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"More...",
|
||||
NULL
|
||||
};
|
||||
|
||||
yy = 37;
|
||||
for (ii=io=0; opts[ii]; ii++)
|
||||
|
@ -2694,7 +2699,7 @@ cheat_for_port_credits:
|
|||
gametextpal(d,yy,ud.m_recstat?((ud.m_recstat && enabled && ps[myconnectindex].gm&MODE_GAME)?"Running":"On"):"Off",enabled?MENUHIGHLIGHT(io):DISABLEDMENUSHADE,enabled?0:1);
|
||||
break;
|
||||
case 10:
|
||||
if (x==io) cmenu(201);
|
||||
if (x==io) cmenu(201);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -2715,35 +2720,36 @@ cheat_for_port_credits:
|
|||
|
||||
{
|
||||
int io, ii, yy, d=c+160+40, enabled;
|
||||
char *opts[] = {
|
||||
"Parental lock",
|
||||
"-",
|
||||
"Game messages",
|
||||
"HUD weapon",
|
||||
"FPS counter",
|
||||
"-",
|
||||
"Automatic voting",
|
||||
"Send MP messages to all",
|
||||
"Display other player IDs",
|
||||
"-",
|
||||
"Show startup window",
|
||||
char *opts[] =
|
||||
{
|
||||
"Parental lock",
|
||||
"-",
|
||||
"Game messages",
|
||||
"HUD weapon",
|
||||
"FPS counter",
|
||||
"-",
|
||||
"Automatic voting",
|
||||
"Send MP messages to all",
|
||||
"Display other player IDs",
|
||||
"-",
|
||||
"Show startup window",
|
||||
#ifdef _WIN32
|
||||
"Release notification",
|
||||
"Release notification",
|
||||
#else
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
#endif
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"Previous page",
|
||||
NULL
|
||||
};
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"-",
|
||||
"Previous page",
|
||||
NULL
|
||||
};
|
||||
|
||||
yy = 37;
|
||||
for (ii=io=0; opts[ii]; ii++)
|
||||
|
@ -3535,22 +3541,26 @@ cheat_for_port_credits:
|
|||
if (x==-1)
|
||||
{
|
||||
if (function == 0)
|
||||
{ // mouse button
|
||||
{
|
||||
// mouse button
|
||||
cmenu(205);
|
||||
probey = whichkey;
|
||||
}
|
||||
else if (function == 1)
|
||||
{ // mouse digital axis
|
||||
{
|
||||
// mouse digital axis
|
||||
cmenu(212);
|
||||
probey = 3+(whichkey^2);
|
||||
}
|
||||
else if (function == 2)
|
||||
{ // joystick button/hat
|
||||
{
|
||||
// joystick button/hat
|
||||
cmenu(207);
|
||||
probey = whichkey;
|
||||
}
|
||||
else if (function == 3)
|
||||
{ // joystick digital axis
|
||||
{
|
||||
// joystick digital axis
|
||||
cmenu((whichkey>>2)+208);
|
||||
probey = 1+((whichkey>>1)&1)*4+(whichkey&1);
|
||||
}
|
||||
|
@ -4117,7 +4127,8 @@ cheat_for_port_credits:
|
|||
case 214:
|
||||
case 215:
|
||||
case 216:
|
||||
{ // Pray this is enough pages for now :-|
|
||||
{
|
||||
// Pray this is enough pages for now :-|
|
||||
int first,last;
|
||||
rotatesprite(320<<15,19<<16,65536L,0,MENUBAR,16,0,10,0,0,xdim-1,ydim-1);
|
||||
menutext(320>>1,24,0,0,"JOY DEAD ZONES");
|
||||
|
|
|
@ -600,7 +600,8 @@ static int osdcmd_exec(const osdfuncparm_t *parm)
|
|||
return OSDCMD_OK;
|
||||
}
|
||||
|
||||
enum cvartypes {
|
||||
enum cvartypes
|
||||
{
|
||||
CVAR_INT,
|
||||
CVAR_UNSIGNEDINT,
|
||||
CVAR_BOOL,
|
||||
|
@ -618,56 +619,56 @@ struct cvarmappings
|
|||
int max;
|
||||
}
|
||||
cvar[] =
|
||||
{
|
||||
{ "crosshair", "crosshair: enable/disable crosshair", (void*)&ud.crosshair, CVAR_INT, 0, 0, 3 },
|
||||
{
|
||||
{ "crosshair", "crosshair: enable/disable crosshair", (void*)&ud.crosshair, CVAR_INT, 0, 0, 3 },
|
||||
|
||||
{ "cl_autoaim", "cl_autoaim: enable/disable weapon autoaim", (void*)&AutoAim, CVAR_INT|256, 0, 0, 2 },
|
||||
{ "cl_automsg", "cl_automsg: enable/disable automatically sending messages to all players", (void*)&ud.automsg, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_autovote", "cl_autovote: enable/disable automatic voting", (void*)&ud.autovote, CVAR_INT|256, 0, 0, 2 },
|
||||
{ "cl_autoaim", "cl_autoaim: enable/disable weapon autoaim", (void*)&AutoAim, CVAR_INT|256, 0, 0, 2 },
|
||||
{ "cl_automsg", "cl_automsg: enable/disable automatically sending messages to all players", (void*)&ud.automsg, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_autovote", "cl_autovote: enable/disable automatic voting", (void*)&ud.autovote, CVAR_INT|256, 0, 0, 2 },
|
||||
|
||||
|
||||
{ "cl_deathmessages", "cl_deathmessages: enable/disable multiplayer death messages", (void*)&ud.deathmsgs, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_democams", "cl_democams: enable/disable demo playback cameras", (void*)&ud.democams, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_drawweapon", "cl_drawweapon: enable/disable weapon drawing", (void*)&ud.drawweapon, CVAR_INT, 0, 0, 2 },
|
||||
{ "cl_deathmessages", "cl_deathmessages: enable/disable multiplayer death messages", (void*)&ud.deathmsgs, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_democams", "cl_democams: enable/disable demo playback cameras", (void*)&ud.democams, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_drawweapon", "cl_drawweapon: enable/disable weapon drawing", (void*)&ud.drawweapon, CVAR_INT, 0, 0, 2 },
|
||||
|
||||
{ "cl_idplayers", "cl_idplayers: enable/disable name display when aiming at opponents", (void*)&ud.idplayers, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_idplayers", "cl_idplayers: enable/disable name display when aiming at opponents", (void*)&ud.idplayers, CVAR_BOOL, 0, 0, 1 },
|
||||
|
||||
{ "cl_messagetime", "cl_messagetime: length of time to display multiplayer chat messages\n", (void*)&ud.msgdisptime, CVAR_INT, 0, 0, 3600 },
|
||||
{ "cl_messagetime", "cl_messagetime: length of time to display multiplayer chat messages\n", (void*)&ud.msgdisptime, CVAR_INT, 0, 0, 3600 },
|
||||
|
||||
{ "cl_mousebias", "cl_mousebias: emulates the original mouse code's weighting of input towards whichever axis is moving the most at any given time\n", (void*)&MouseBias, CVAR_INT, 0, 0, 32 },
|
||||
{ "cl_mousefilter", "cl_mousefilter: amount of mouse movement to filter out\n", (void*)&MouseFilter, CVAR_INT, 0, 0, 512 },
|
||||
{ "cl_mousebias", "cl_mousebias: emulates the original mouse code's weighting of input towards whichever axis is moving the most at any given time\n", (void*)&MouseBias, CVAR_INT, 0, 0, 32 },
|
||||
{ "cl_mousefilter", "cl_mousefilter: amount of mouse movement to filter out\n", (void*)&MouseFilter, CVAR_INT, 0, 0, 512 },
|
||||
|
||||
{ "cl_showcoords", "cl_showcoords: show your position in the game world", (void*)&ud.coords, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_showfps", "cl_showfps: show the frame rate counter", (void*)&ud.tickrate, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_smoothinput", "cl_smoothinput: enable/disable input smoothing\n", (void*)&SmoothInput, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_showcoords", "cl_showcoords: show your position in the game world", (void*)&ud.coords, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_showfps", "cl_showfps: show the frame rate counter", (void*)&ud.tickrate, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_smoothinput", "cl_smoothinput: enable/disable input smoothing\n", (void*)&SmoothInput, CVAR_BOOL, 0, 0, 1 },
|
||||
|
||||
{ "cl_viewbob", "cl_viewbob: enable/disable player head bobbing\n", (void*)&ud.viewbob, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_viewbob", "cl_viewbob: enable/disable player head bobbing\n", (void*)&ud.viewbob, CVAR_BOOL, 0, 0, 1 },
|
||||
|
||||
{ "cl_weaponsway", "cl_weaponsway: enable/disable player weapon swaying\n", (void*)&ud.weaponsway, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_weaponswitch", "cl_weaponswitch: enable/disable auto weapon switching", (void*)&ud.weaponswitch, CVAR_INT|256, 0, 0, 3 },
|
||||
{ "cl_angleinterpolation", "cl_angleinterpolation: enable/disable angle interpolation", (void*)&ud.angleinterpolation, CVAR_INT, 0, 0, 256 },
|
||||
{ "cl_weaponsway", "cl_weaponsway: enable/disable player weapon swaying\n", (void*)&ud.weaponsway, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "cl_weaponswitch", "cl_weaponswitch: enable/disable auto weapon switching", (void*)&ud.weaponswitch, CVAR_INT|256, 0, 0, 3 },
|
||||
{ "cl_angleinterpolation", "cl_angleinterpolation: enable/disable angle interpolation", (void*)&ud.angleinterpolation, CVAR_INT, 0, 0, 256 },
|
||||
#if defined(POLYMOST) && defined(USE_OPENGL)
|
||||
{ "r_anamorphic", "r_anamorphic: enable/disable widescreen mode", (void*)&glwidescreen, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "r_projectionhack", "r_projectionhack: enable/disable projection hack", (void*)&glprojectionhacks, CVAR_BOOL, 0, 0, 1 },
|
||||
// polymer cvars
|
||||
{ "pr_cliplanes", "pr_cliplanes: toggles clipping behind map limits (recommended yet may decrease performance in complex maps)", (void*)&pr_cliplanes, CVAR_INT, 0, 0, 1 },
|
||||
{ "pr_fov", "pr_fov: sets the field of vision in build angle", (void*)&pr_fov, CVAR_INT, 0, 0, 1023},
|
||||
{ "pr_showportals", "pr_showportals: toggles frustum culling (recommended)", (void*)&pr_showportals, CVAR_INT, 0, 0, 1 },
|
||||
{ "pr_verbosity", "pr_verbosity: verbosity level of the polymer renderer", (void*)&pr_verbosity, CVAR_INT, 0, 0, 3 },
|
||||
{ "pr_wireframe", "pr_wireframe: toggles wireframe mode", (void*)&pr_wireframe, CVAR_INT, 0, 0, 1 },
|
||||
{ "r_anamorphic", "r_anamorphic: enable/disable widescreen mode", (void*)&glwidescreen, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "r_projectionhack", "r_projectionhack: enable/disable projection hack", (void*)&glprojectionhacks, CVAR_BOOL, 0, 0, 1 },
|
||||
// polymer cvars
|
||||
{ "pr_cliplanes", "pr_cliplanes: toggles clipping behind map limits (recommended yet may decrease performance in complex maps)", (void*)&pr_cliplanes, CVAR_INT, 0, 0, 1 },
|
||||
{ "pr_fov", "pr_fov: sets the field of vision in build angle", (void*)&pr_fov, CVAR_INT, 0, 0, 1023},
|
||||
{ "pr_showportals", "pr_showportals: toggles frustum culling (recommended)", (void*)&pr_showportals, CVAR_INT, 0, 0, 1 },
|
||||
{ "pr_verbosity", "pr_verbosity: verbosity level of the polymer renderer", (void*)&pr_verbosity, CVAR_INT, 0, 0, 3 },
|
||||
{ "pr_wireframe", "pr_wireframe: toggles wireframe mode", (void*)&pr_wireframe, CVAR_INT, 0, 0, 1 },
|
||||
#endif
|
||||
{ "r_precache", "r_precache: enable/disable the pre-level caching routine", (void*)&useprecache, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "r_precache", "r_precache: enable/disable the pre-level caching routine", (void*)&useprecache, CVAR_BOOL, 0, 0, 1 },
|
||||
|
||||
{ "snd_ambience", "snd_ambience: enables/disables ambient sounds", (void*)&AmbienceToggle, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "snd_duketalk", "snd_duketalk: enables/disables Duke's speech", (void*)&VoiceToggle, CVAR_INT, 0, 0, 2 },
|
||||
{ "snd_fxvolume", "snd_fxvolume: volume of sound effects", (void*)&FXVolume, CVAR_INT, 0, 0, 255 },
|
||||
{ "snd_mixrate", "snd_mixrate: sound mixing rate", (void*)&MixRate, CVAR_INT, 0, 0, 48000 },
|
||||
{ "snd_musvolume", "snd_musvolume: volume of midi music", (void*)&MusicVolume, CVAR_INT, 0, 0, 255 },
|
||||
{ "snd_numbits", "snd_numbits: sound bits", (void*)&NumBits, CVAR_INT, 0, 8, 16 },
|
||||
{ "snd_numchannels", "snd_numchannels: the number of sound channels", (void*)&NumChannels, CVAR_INT, 0, 0, 2 },
|
||||
{ "snd_numvoices", "snd_numvoices: the number of concurrent sounds", (void*)&NumVoices, CVAR_INT, 0, 0, 32 },
|
||||
{ "snd_reversestereo", "snd_reversestereo: reverses the stereo channels", (void*)&ReverseStereo, CVAR_BOOL, 0, 0, 16 },
|
||||
};
|
||||
{ "snd_ambience", "snd_ambience: enables/disables ambient sounds", (void*)&AmbienceToggle, CVAR_BOOL, 0, 0, 1 },
|
||||
{ "snd_duketalk", "snd_duketalk: enables/disables Duke's speech", (void*)&VoiceToggle, CVAR_INT, 0, 0, 2 },
|
||||
{ "snd_fxvolume", "snd_fxvolume: volume of sound effects", (void*)&FXVolume, CVAR_INT, 0, 0, 255 },
|
||||
{ "snd_mixrate", "snd_mixrate: sound mixing rate", (void*)&MixRate, CVAR_INT, 0, 0, 48000 },
|
||||
{ "snd_musvolume", "snd_musvolume: volume of midi music", (void*)&MusicVolume, CVAR_INT, 0, 0, 255 },
|
||||
{ "snd_numbits", "snd_numbits: sound bits", (void*)&NumBits, CVAR_INT, 0, 8, 16 },
|
||||
{ "snd_numchannels", "snd_numchannels: the number of sound channels", (void*)&NumChannels, CVAR_INT, 0, 0, 2 },
|
||||
{ "snd_numvoices", "snd_numvoices: the number of concurrent sounds", (void*)&NumVoices, CVAR_INT, 0, 0, 32 },
|
||||
{ "snd_reversestereo", "snd_reversestereo: reverses the stereo channels", (void*)&ReverseStereo, CVAR_BOOL, 0, 0, 16 },
|
||||
};
|
||||
|
||||
static int osdcmd_cvar_set(const osdfuncparm_t *parm)
|
||||
{
|
||||
|
|
|
@ -3222,7 +3222,8 @@ static int doincrements(struct player_struct *p)
|
|||
|
||||
short weapon_sprites[MAX_WEAPONS] = { KNEE__STATIC, FIRSTGUNSPRITE__STATIC, SHOTGUNSPRITE__STATIC,
|
||||
CHAINGUNSPRITE__STATIC, RPGSPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC, DEVISTATORSPRITE__STATIC,
|
||||
TRIPBOMBSPRITE__STATIC, FREEZESPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC};
|
||||
TRIPBOMBSPRITE__STATIC, FREEZESPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC
|
||||
};
|
||||
|
||||
void checkweapons(struct player_struct *p)
|
||||
{
|
||||
|
@ -4176,7 +4177,8 @@ void processinput(int snum)
|
|||
p->posyv = 0;
|
||||
}
|
||||
else if (sync[snum].avel) //p->ang += syncangvel * constant
|
||||
{ //ENGINE calculates angvel for you
|
||||
{
|
||||
//ENGINE calculates angvel for you
|
||||
long tempang = sync[snum].avel<<1;
|
||||
|
||||
if (psectlotag == 2) p->angvel =(tempang-(tempang>>3))*ksgn(doubvel);
|
||||
|
@ -4504,7 +4506,8 @@ HORIZONLY:
|
|||
}
|
||||
|
||||
else if (sb_snum&(1<<3))
|
||||
{ // aim_up
|
||||
{
|
||||
// aim_up
|
||||
SetGameVarID(g_iReturnVarID,0,pi,snum);
|
||||
OnEvent(EVENT_AIMUP,pi,snum, -1);
|
||||
if (GetGameVarID(g_iReturnVarID,pi,snum) == 0)
|
||||
|
@ -4517,7 +4520,8 @@ HORIZONLY:
|
|||
}
|
||||
|
||||
else if (sb_snum&(1<<4))
|
||||
{ // aim_down
|
||||
{
|
||||
// aim_down
|
||||
SetGameVarID(g_iReturnVarID,0,pi,snum);
|
||||
OnEvent(EVENT_AIMDOWN,pi,snum, -1);
|
||||
if (GetGameVarID(g_iReturnVarID,pi,snum) == 0)
|
||||
|
@ -5185,21 +5189,21 @@ int getspritescore(long snum, long dapicnum)
|
|||
}
|
||||
|
||||
static long fdmatrix[12][12] =
|
||||
{
|
||||
//KNEE PIST SHOT CHAIN RPG PIPE SHRI DEVI WALL FREE HAND EXPA
|
||||
{ 128, -1, -1, -1, 128, -1, -1, -1, 128, -1, 128, -1 }, //KNEE
|
||||
{ 1024,1024,1024,1024,2560, 128,2560,2560,1024,2560,2560,2560 }, //PIST
|
||||
{ 512, 512, 512, 512,2560, 128,2560,2560,1024,2560,2560,2560 }, //SHOT
|
||||
{ 512, 512, 512, 512,2560, 128,2560,2560,1024,2560,2560,2560 }, //CHAIN
|
||||
{ 2560,2560,2560,2560,2560,2560,2560,2560,2560,2560,2560,2560 }, //RPG
|
||||
{ 512, 512, 512, 512,2048, 512,2560,2560, 512,2560,2560,2560 }, //PIPE
|
||||
{ 128, 128, 128, 128,2560, 128,2560,2560, 128, 128, 128, 128 }, //SHRI
|
||||
{ 1536,1536,1536,1536,2560,1536,1536,1536,1536,1536,1536,1536 }, //DEVI
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, //WALL
|
||||
{ 128, 128, 128, 128,2560, 128,2560,2560, 128, 128, 128, 128 }, //FREE
|
||||
{ 2560,2560,2560,2560,2560,2560,2560,2560,2560,2560,2560,2560 }, //HAND
|
||||
{ 128, 128, 128, 128,2560, 128,2560,2560, 128, 128, 128, 128 } //EXPA
|
||||
};
|
||||
{
|
||||
//KNEE PIST SHOT CHAIN RPG PIPE SHRI DEVI WALL FREE HAND EXPA
|
||||
{ 128, -1, -1, -1, 128, -1, -1, -1, 128, -1, 128, -1 }, //KNEE
|
||||
{ 1024,1024,1024,1024,2560, 128,2560,2560,1024,2560,2560,2560 }, //PIST
|
||||
{ 512, 512, 512, 512,2560, 128,2560,2560,1024,2560,2560,2560 }, //SHOT
|
||||
{ 512, 512, 512, 512,2560, 128,2560,2560,1024,2560,2560,2560 }, //CHAIN
|
||||
{ 2560,2560,2560,2560,2560,2560,2560,2560,2560,2560,2560,2560 }, //RPG
|
||||
{ 512, 512, 512, 512,2048, 512,2560,2560, 512,2560,2560,2560 }, //PIPE
|
||||
{ 128, 128, 128, 128,2560, 128,2560,2560, 128, 128, 128, 128 }, //SHRI
|
||||
{ 1536,1536,1536,1536,2560,1536,1536,1536,1536,1536,1536,1536 }, //DEVI
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, //WALL
|
||||
{ 128, 128, 128, 128,2560, 128,2560,2560, 128, 128, 128, 128 }, //FREE
|
||||
{ 2560,2560,2560,2560,2560,2560,2560,2560,2560,2560,2560,2560 }, //HAND
|
||||
{ 128, 128, 128, 128,2560, 128,2560,2560, 128, 128, 128, 128 } //EXPA
|
||||
};
|
||||
|
||||
static long goalx[MAXPLAYERS], goaly[MAXPLAYERS], goalz[MAXPLAYERS];
|
||||
static long goalsect[MAXPLAYERS], goalwall[MAXPLAYERS], goalsprite[MAXPLAYERS], goalspritescore[MAXPLAYERS];
|
||||
|
|
|
@ -202,7 +202,6 @@ int loadplayer(int spot)
|
|||
|
||||
FX_StopAllSounds();
|
||||
clearsoundlocks();
|
||||
MUSIC_StopSong();
|
||||
|
||||
if (numplayers > 1)
|
||||
{
|
||||
|
@ -403,9 +402,13 @@ int loadplayer(int spot)
|
|||
clearsoundlocks();
|
||||
cacheit();
|
||||
|
||||
i = music_select;
|
||||
music_select = (ud.volume_number*MAXLEVELS) + ud.level_number;
|
||||
if (music_fn[0][(unsigned char)music_select] != NULL)
|
||||
if (music_fn[0][(unsigned char)music_select] != NULL && i != music_select)
|
||||
{
|
||||
MUSIC_StopSong();
|
||||
playmusic(&music_fn[0][(unsigned char)music_select][0]);
|
||||
}
|
||||
|
||||
ps[myconnectindex].gm = MODE_GAME;
|
||||
ud.recstat = 0;
|
||||
|
|
|
@ -30,7 +30,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|||
#include "music.h"
|
||||
#include "duke3d.h"
|
||||
#include "util_lib.h"
|
||||
|
||||
#include "osd.h"
|
||||
|
||||
#define LOUDESTVOLUME 150
|
||||
|
||||
|
@ -164,25 +164,25 @@ unsigned char menunum=0;
|
|||
void intomenusounds(void)
|
||||
{
|
||||
short menusnds[] =
|
||||
{
|
||||
LASERTRIP_EXPLODE,
|
||||
DUKE_GRUNT,
|
||||
DUKE_LAND_HURT,
|
||||
CHAINGUN_FIRE,
|
||||
SQUISHED,
|
||||
KICK_HIT,
|
||||
PISTOL_RICOCHET,
|
||||
PISTOL_BODYHIT,
|
||||
PISTOL_FIRE,
|
||||
SHOTGUN_FIRE,
|
||||
BOS1_WALK,
|
||||
RPG_EXPLODE,
|
||||
PIPEBOMB_BOUNCE,
|
||||
PIPEBOMB_EXPLODE,
|
||||
NITEVISION_ONOFF,
|
||||
RPG_SHOOT,
|
||||
SELECT_WEAPON
|
||||
};
|
||||
{
|
||||
LASERTRIP_EXPLODE,
|
||||
DUKE_GRUNT,
|
||||
DUKE_LAND_HURT,
|
||||
CHAINGUN_FIRE,
|
||||
SQUISHED,
|
||||
KICK_HIT,
|
||||
PISTOL_RICOCHET,
|
||||
PISTOL_BODYHIT,
|
||||
PISTOL_FIRE,
|
||||
SHOTGUN_FIRE,
|
||||
BOS1_WALK,
|
||||
RPG_EXPLODE,
|
||||
PIPEBOMB_BOUNCE,
|
||||
PIPEBOMB_EXPLODE,
|
||||
NITEVISION_ONOFF,
|
||||
RPG_SHOOT,
|
||||
SELECT_WEAPON
|
||||
};
|
||||
sound(menusnds[menunum++]);
|
||||
menunum %= 17;
|
||||
}
|
||||
|
@ -414,9 +414,9 @@ void sound(int num)
|
|||
if (VoiceToggle==0 && (soundm[num]&4)) return;
|
||||
if ((soundm[num]&8) && ud.lockout) return;
|
||||
if (FX_VoiceAvailable(soundpr[num]) == 0) return;
|
||||
if (num > NUM_SOUNDS-1 || !sounds[num])
|
||||
if (num > NUM_SOUNDS-1 || !sounds[num])
|
||||
{
|
||||
OSD_Printf("WARNING: invalid sound #%d\n",num);
|
||||
OSD_Printf("WARNING: invalid sound #%d\n",num);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -39,9 +39,9 @@ settings;
|
|||
|
||||
static HWND startupdlg = NULL;
|
||||
static HWND pages[3] =
|
||||
{
|
||||
NULL, NULL, NULL
|
||||
};
|
||||
{
|
||||
NULL, NULL, NULL
|
||||
};
|
||||
static int done = -1, mode = TAB_CONFIG;
|
||||
|
||||
#define POPULATE_VIDEO 1
|
||||
|
|
Loading…
Reference in a new issue