git-svn-id: https://svn.eduke32.com/eduke32@559 1a8010ca-5511-0410-912e-c29ae57300e0

This commit is contained in:
terminx 2007-08-25 01:05:00 +00:00
parent c9e97fa954
commit b5a81483f2
18 changed files with 1326 additions and 1263 deletions

View file

View file

View file

@ -5513,7 +5513,8 @@ void GAME_clearbackground(int c, int r)
} }
#endif #endif
enum { enum
{
T_EOF = -2, T_EOF = -2,
T_ERROR = -1, T_ERROR = -1,
T_INCLUDE = 0, T_INCLUDE = 0,
@ -5903,8 +5904,10 @@ int ExtInit(void)
} }
loadgroupfiles(defsfilename); loadgroupfiles(defsfilename);
if (grps && grpstoadd > 0) { if (grps && grpstoadd > 0)
for (i=0;i<grpstoadd;i++) { {
for (i=0;i<grpstoadd;i++)
{
initprintf("Adding %s\n",grps[i]); initprintf("Adding %s\n",grps[i]);
initgroupfile(grps[i]); initgroupfile(grps[i]);
if (!NoAutoLoad) if (!NoAutoLoad)
@ -7287,7 +7290,8 @@ static void FuncMenu(void)
disptext[dispwidth] = 0; disptext[dispwidth] = 0;
if (row > rowmax) row = rowmax; if (row > rowmax) row = rowmax;
} }
else */ if (col == 1) else */
if (col == 1)
{ {
printext16(xpos,ypos+row*8,11,0,disptext,0); printext16(xpos,ypos+row*8,11,0,disptext,0);
col = 0; col = 0;

View file

@ -381,7 +381,6 @@ struct player_orig {
extern char numplayersprites; extern char numplayersprites;
extern char picsiz[MAXTILES];
extern long fricxv,fricyv; extern long fricxv,fricyv;
@ -883,7 +882,9 @@ enum logoflags {
LOGO_FLAG_TITLESCREEN = 16, LOGO_FLAG_TITLESCREEN = 16,
LOGO_FLAG_DUKENUKEM = 32, LOGO_FLAG_DUKENUKEM = 32,
LOGO_FLAG_THREEDEE = 64, LOGO_FLAG_THREEDEE = 64,
LOGO_FLAG_PLUTOPAKSPRITE = 128 LOGO_FLAG_PLUTOPAKSPRITE = 128,
LOGO_FLAG_SHAREWARESCREENS = 256,
LOGO_FLAG_TENSCREEN = 512
}; };
extern char numl; extern char numl;

View file

@ -2510,7 +2510,11 @@ void fadepal(int r, int g, int b, int start, int end, int step)
static void showtwoscreens(void) 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); setview(0,0,xdim-1,ydim-1);
flushperms(); flushperms();
@ -2538,6 +2542,24 @@ static void showtwoscreens(void)
getpackets(); 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; 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); ch = Btoupper(ch);
if (c != 997 || (ch >= '0' && ch <= '9')) 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) = ch;
*(t+inputloc+1) = 0; *(t+inputloc+1) = 0;
inputloc++; inputloc++;
@ -3930,7 +3953,8 @@ void displayrooms(int snum,long smoothratio)
else tang = 0; else tang = 0;
if (xres <= 320 && yres <= 240) if (xres <= 320 && yres <= 240)
{ // JBF 20030807: Increased tilted-screen quality {
// JBF 20030807: Increased tilted-screen quality
tiltcs = 1; tiltcs = 1;
tiltcx = 320; tiltcx = 320;
tiltcy = 200; tiltcy = 200;
@ -3950,7 +3974,8 @@ void displayrooms(int snum,long smoothratio)
else else
setviewtotile(TILE_TILT,tiltcx>>(1-ud.detail),tiltcx>>(1-ud.detail)); setviewtotile(TILE_TILT,tiltcx>>(1-ud.detail),tiltcx>>(1-ud.detail));
if ((tang&1023) == 512) 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)); j = ((tiltcx-(60*tiltcs))>>(1-ud.detail));
for (i=((60*tiltcs)>>(1-ud.detail))-1;i>=0;i--) for (i=((60*tiltcs)>>(1-ud.detail))-1;i>=0;i--)
{ {
@ -5289,7 +5314,8 @@ int spawn(int j, int pn)
} }
case WATERBUBBLEMAKER__STATIC: case WATERBUBBLEMAKER__STATIC:
if (sp->hitag && sp->picnum == WATERBUBBLEMAKER) 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", OSD_Printf("WARNING: WATERBUBBLEMAKER %d @ %d,%d with hitag!=0. Applying fixup.\n",
i,sp->x,sp->y); i,sp->x,sp->y);
sp->hitag = 0; sp->hitag = 0;
@ -6311,7 +6337,8 @@ void animatesprites(long x,long y,int a,long smoothratio)
} }
for (j=0;j < spritesortcnt; j++) //Between drawrooms() and drawmasks() 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]; t = &tsprite[j];
i = t->owner; i = t->owner;
s = &sprite[i]; s = &sprite[i];
@ -7179,7 +7206,8 @@ static void cheats(void)
char consolecheat = 0; // JBF 20030914 char consolecheat = 0; // JBF 20030914
if (osdcmd_cheatsinfo_stat.cheatnum != -1) if (osdcmd_cheatsinfo_stat.cheatnum != -1)
{ // JBF 20030914 {
// JBF 20030914
k = osdcmd_cheatsinfo_stat.cheatnum; k = osdcmd_cheatsinfo_stat.cheatnum;
osdcmd_cheatsinfo_stat.cheatnum = -1; osdcmd_cheatsinfo_stat.cheatnum = -1;
consolecheat = 1; consolecheat = 1;
@ -7420,7 +7448,8 @@ FOUNDCHEAT:
{ {
i = Bstrlen(cheatquotes[k])-3+VOLUMEONE; i = Bstrlen(cheatquotes[k])-3+VOLUMEONE;
if (!consolecheat) if (!consolecheat)
{ // JBF 20030914 {
// JBF 20030914
short volnume,levnume; short volnume,levnume;
if (VOLUMEALL) if (VOLUMEALL)
{ {
@ -7448,7 +7477,8 @@ FOUNDCHEAT:
ud.m_level_number = ud.level_number = levnume; ud.m_level_number = ud.level_number = levnume;
} }
else else
{ // JBF 20030914 {
// JBF 20030914
ud.m_volume_number = ud.volume_number = osdcmd_cheatsinfo_stat.volume; ud.m_volume_number = ud.volume_number = osdcmd_cheatsinfo_stat.volume;
ud.m_level_number = ud.level_number = osdcmd_cheatsinfo_stat.level; ud.m_level_number = ud.level_number = osdcmd_cheatsinfo_stat.level;
} }
@ -9157,7 +9187,8 @@ static void Logo(void)
} }
else soundanm = 2; else soundanm = 2;
if (PLUTOPAK && (logoflags & LOGO_FLAG_PLUTOPAKSPRITE)) if (PLUTOPAK && (logoflags & LOGO_FLAG_PLUTOPAKSPRITE))
{ // JBF 20030804 {
// JBF 20030804
if (totalclock >= 280 && totalclock < 395) 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); 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); initprintf("Using config file '%s'.\n",setupfilename);
ScanGroups(); 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 found, set up the environment accordingly for the game it represents.
// if it is not found, choose the first GRP from the list of // if it is not found, choose the first GRP from the list of
struct grpfile *fg, *first = NULL; struct grpfile *fg, *first = NULL;
@ -10294,7 +10326,8 @@ MAIN_LOOP_RESTART:
while (!(ps[myconnectindex].gm&MODE_END)) //The whole loop!!!!!!!!!!!!!!!!!! while (!(ps[myconnectindex].gm&MODE_END)) //The whole loop!!!!!!!!!!!!!!!!!!
{ {
if (handleevents()) if (handleevents())
{ // JBF {
// JBF
if (quitevent) if (quitevent)
{ {
KB_KeyDown[sc_Escape] = 1; 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 (kread(recfilep,&ver,sizeof(char)) != sizeof(char)) goto corrupt;
if (ver != BYTEVERSION /*&& ver != 116 && ver != 117*/) 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); 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+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); 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; myyvel = 0;
} }
else if (syn->avel) //p->ang += syncangvel * constant else if (syn->avel) //p->ang += syncangvel * constant
{ //ENGINE calculates angvel for you {
//ENGINE calculates angvel for you
long tempang = syn->avel<<1; long tempang = syn->avel<<1;
if (psectlotag == 2) if (psectlotag == 2)

View file

@ -2888,7 +2888,8 @@ static int parsecommand(void)
i=GetDefID(label+(labelcnt<<6)); i=GetDefID(label+(labelcnt<<6));
//printf("Label '%s' ID is %d\n",label+(labelcnt<<6), i); //printf("Label '%s' ID is %d\n",label+(labelcnt<<6), i);
if (i<0) if (i<0)
{ // not a defined DEF {
// not a defined DEF
error++; error++;
ReportError(ERROR_NOTAGAMEVAR); ReportError(ERROR_NOTAGAMEVAR);
return 0; return 0;
@ -4820,7 +4821,8 @@ void loadefs(const char *filenam)
if (fta_quotes[i] == NULL) if (fta_quotes[i] == NULL)
fta_quotes[i] = Bcalloc(MAXQUOTELEN,sizeof(char)); fta_quotes[i] = Bcalloc(MAXQUOTELEN,sizeof(char));
{ {
char *ppdeathstrings[] = { char *ppdeathstrings[] =
{
"^2%s ^2WAS KICKED TO THE CURB BY %s", "^2%s ^2WAS KICKED TO THE CURB BY %s",
"^2%s ^2WAS PICKED OFF BY %s", "^2%s ^2WAS PICKED OFF BY %s",
"^2%s ^2TOOK %s^2'S SHOT TO THE FACE", "^2%s ^2TOOK %s^2'S SHOT TO THE FACE",
@ -4855,7 +4857,8 @@ void loadefs(const char *filenam)
"^2%s ^2WANTS TO KNOW WHY %s ^2IS EVEN PLAYING COOP", "^2%s ^2WANTS TO KNOW WHY %s ^2IS EVEN PLAYING COOP",
}; };
char *podeathstrings[] = { char *podeathstrings[] =
{
"^2%s ^2KILLED HIMSELF. WHAT A TOOL!", "^2%s ^2KILLED HIMSELF. WHAT A TOOL!",
"^2%s ^2TRIED TO LEAVE", "^2%s ^2TRIED TO LEAVE",
"^2%s ^2GOT FRAGGED BY A MONSTER. IT WAS PROBABLY A LIZTROOP.", "^2%s ^2GOT FRAGGED BY A MONSTER. IT WAS PROBABLY A LIZTROOP.",

View file

@ -128,7 +128,8 @@ char env_music_fn[MAXVOLUMES+1][BMAX_PATH];
char rtsplaying; char rtsplaying;
short weaponsandammosprites[15] = { short weaponsandammosprites[15] =
{
RPGSPRITE__STATIC, RPGSPRITE__STATIC,
CHAINGUNSPRITE__STATIC, CHAINGUNSPRITE__STATIC,
DEVISTATORAMMO__STATIC, DEVISTATORAMMO__STATIC,

View file

@ -726,7 +726,8 @@ void menus(void)
c = (320>>1)-120; c = (320>>1)-120;
{ {
int io, ii, yy = 37, d=c+140, enabled; int io, ii, yy = 37, d=c+140, enabled;
char *opts[] = { char *opts[] =
{
"Name", "Name",
"-", "-",
"Color", "Color",
@ -940,7 +941,8 @@ void menus(void)
case 1: case 1:
{ {
char *s[] = { "Auto","","","","","","","","","Blue","Red","Green","Gray","Dark gray","Dark green","Brown", 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); gametext(d-50,yy,s[ud.color],MENUHIGHLIGHT(io),2+8+16);
} }
break; break;
@ -2182,7 +2184,8 @@ cheat_for_port_credits:
// path // path
minitext(52,32,boardfilename,0,26); 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; CACHE1D_FIND_REC *seeker = currentlist ? findfiles : finddirs;
if ((KB_KeyPressed(sc_Home)|KB_KeyPressed(sc_End)) > 0) if ((KB_KeyPressed(sc_Home)|KB_KeyPressed(sc_End)) > 0)
{ {
@ -2418,7 +2421,8 @@ cheat_for_port_credits:
{ {
int io, ii, yy, d=c+160+40, enabled; int io, ii, yy, d=c+160+40, enabled;
char *opts[] = { char *opts[] =
{
"Widescreen", "Widescreen",
"-", "-",
"Anisotropic filtering", "Anisotropic filtering",
@ -2554,7 +2558,8 @@ cheat_for_port_credits:
{ {
int io, ii, yy, d=c+160+40, enabled; int io, ii, yy, d=c+160+40, enabled;
char *opts[] = { char *opts[] =
{
"Crosshair", "Crosshair",
"Level stats", "Level stats",
"-", "-",
@ -2715,7 +2720,8 @@ cheat_for_port_credits:
{ {
int io, ii, yy, d=c+160+40, enabled; int io, ii, yy, d=c+160+40, enabled;
char *opts[] = { char *opts[] =
{
"Parental lock", "Parental lock",
"-", "-",
"Game messages", "Game messages",
@ -3535,22 +3541,26 @@ cheat_for_port_credits:
if (x==-1) if (x==-1)
{ {
if (function == 0) if (function == 0)
{ // mouse button {
// mouse button
cmenu(205); cmenu(205);
probey = whichkey; probey = whichkey;
} }
else if (function == 1) else if (function == 1)
{ // mouse digital axis {
// mouse digital axis
cmenu(212); cmenu(212);
probey = 3+(whichkey^2); probey = 3+(whichkey^2);
} }
else if (function == 2) else if (function == 2)
{ // joystick button/hat {
// joystick button/hat
cmenu(207); cmenu(207);
probey = whichkey; probey = whichkey;
} }
else if (function == 3) else if (function == 3)
{ // joystick digital axis {
// joystick digital axis
cmenu((whichkey>>2)+208); cmenu((whichkey>>2)+208);
probey = 1+((whichkey>>1)&1)*4+(whichkey&1); probey = 1+((whichkey>>1)&1)*4+(whichkey&1);
} }
@ -4117,7 +4127,8 @@ cheat_for_port_credits:
case 214: case 214:
case 215: case 215:
case 216: case 216:
{ // Pray this is enough pages for now :-| {
// Pray this is enough pages for now :-|
int first,last; int first,last;
rotatesprite(320<<15,19<<16,65536L,0,MENUBAR,16,0,10,0,0,xdim-1,ydim-1); 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"); menutext(320>>1,24,0,0,"JOY DEAD ZONES");

View file

@ -600,7 +600,8 @@ static int osdcmd_exec(const osdfuncparm_t *parm)
return OSDCMD_OK; return OSDCMD_OK;
} }
enum cvartypes { enum cvartypes
{
CVAR_INT, CVAR_INT,
CVAR_UNSIGNEDINT, CVAR_UNSIGNEDINT,
CVAR_BOOL, CVAR_BOOL,

View file

@ -3222,7 +3222,8 @@ static int doincrements(struct player_struct *p)
short weapon_sprites[MAX_WEAPONS] = { KNEE__STATIC, FIRSTGUNSPRITE__STATIC, SHOTGUNSPRITE__STATIC, short weapon_sprites[MAX_WEAPONS] = { KNEE__STATIC, FIRSTGUNSPRITE__STATIC, SHOTGUNSPRITE__STATIC,
CHAINGUNSPRITE__STATIC, RPGSPRITE__STATIC, HEAVYHBOMB__STATIC, SHRINKERSPRITE__STATIC, DEVISTATORSPRITE__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) void checkweapons(struct player_struct *p)
{ {
@ -4176,7 +4177,8 @@ void processinput(int snum)
p->posyv = 0; p->posyv = 0;
} }
else if (sync[snum].avel) //p->ang += syncangvel * constant 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; long tempang = sync[snum].avel<<1;
if (psectlotag == 2) p->angvel =(tempang-(tempang>>3))*ksgn(doubvel); if (psectlotag == 2) p->angvel =(tempang-(tempang>>3))*ksgn(doubvel);
@ -4504,7 +4506,8 @@ HORIZONLY:
} }
else if (sb_snum&(1<<3)) else if (sb_snum&(1<<3))
{ // aim_up {
// aim_up
SetGameVarID(g_iReturnVarID,0,pi,snum); SetGameVarID(g_iReturnVarID,0,pi,snum);
OnEvent(EVENT_AIMUP,pi,snum, -1); OnEvent(EVENT_AIMUP,pi,snum, -1);
if (GetGameVarID(g_iReturnVarID,pi,snum) == 0) if (GetGameVarID(g_iReturnVarID,pi,snum) == 0)
@ -4517,7 +4520,8 @@ HORIZONLY:
} }
else if (sb_snum&(1<<4)) else if (sb_snum&(1<<4))
{ // aim_down {
// aim_down
SetGameVarID(g_iReturnVarID,0,pi,snum); SetGameVarID(g_iReturnVarID,0,pi,snum);
OnEvent(EVENT_AIMDOWN,pi,snum, -1); OnEvent(EVENT_AIMDOWN,pi,snum, -1);
if (GetGameVarID(g_iReturnVarID,pi,snum) == 0) if (GetGameVarID(g_iReturnVarID,pi,snum) == 0)

View file

@ -202,7 +202,6 @@ int loadplayer(int spot)
FX_StopAllSounds(); FX_StopAllSounds();
clearsoundlocks(); clearsoundlocks();
MUSIC_StopSong();
if (numplayers > 1) if (numplayers > 1)
{ {
@ -403,9 +402,13 @@ int loadplayer(int spot)
clearsoundlocks(); clearsoundlocks();
cacheit(); cacheit();
i = music_select;
music_select = (ud.volume_number*MAXLEVELS) + ud.level_number; 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]); playmusic(&music_fn[0][(unsigned char)music_select][0]);
}
ps[myconnectindex].gm = MODE_GAME; ps[myconnectindex].gm = MODE_GAME;
ud.recstat = 0; ud.recstat = 0;

View file

@ -30,7 +30,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include "music.h" #include "music.h"
#include "duke3d.h" #include "duke3d.h"
#include "util_lib.h" #include "util_lib.h"
#include "osd.h"
#define LOUDESTVOLUME 150 #define LOUDESTVOLUME 150