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

This commit is contained in:
terminx 2008-08-26 04:00:42 +00:00
parent 951edcaa78
commit 69dbba841c
9 changed files with 45 additions and 30 deletions

View file

@ -62,7 +62,7 @@ enum
T_SKYBOX, T_SKYBOX,
T_FRONT,T_RIGHT,T_BACK,T_LEFT,T_TOP,T_BOTTOM, T_FRONT,T_RIGHT,T_BACK,T_LEFT,T_TOP,T_BOTTOM,
T_TINT,T_RED,T_GREEN,T_BLUE, T_TINT,T_RED,T_GREEN,T_BLUE,
T_TEXTURE,T_ALPHACUT,T_XSCALE,T_YSCALE,T_NOCOMPRESS, T_TEXTURE,T_ALPHACUT,T_XSCALE,T_YSCALE,T_NOCOMPRESS,T_NODOWNSIZE,
T_UNDEFMODEL,T_UNDEFMODELRANGE,T_UNDEFMODELOF,T_UNDEFTEXTURE,T_UNDEFTEXTURERANGE, T_UNDEFMODEL,T_UNDEFMODELRANGE,T_UNDEFMODELOF,T_UNDEFTEXTURE,T_UNDEFTEXTURERANGE,
T_ALPHAHACK,T_ALPHAHACKRANGE, T_ALPHAHACK,T_ALPHAHACKRANGE,
T_SPRITECOL,T_2DCOL, T_SPRITECOL,T_2DCOL,
@ -241,6 +241,7 @@ static tokenlist texturetokens_pal[] =
{ "detailscale", T_XSCALE }, { "scale", T_XSCALE }, { "xscale", T_XSCALE }, { "intensity", T_XSCALE }, { "detailscale", T_XSCALE }, { "scale", T_XSCALE }, { "xscale", T_XSCALE }, { "intensity", T_XSCALE },
{ "yscale", T_YSCALE }, { "yscale", T_YSCALE },
{ "nocompress", T_NOCOMPRESS }, { "nocompress", T_NOCOMPRESS },
{ "nodownsize", T_NODOWNSIZE },
}; };
static tokenlist sound_musictokens[] = static tokenlist sound_musictokens[] =
@ -1380,6 +1381,8 @@ static int defsparser(scriptfile *script)
scriptfile_getdouble(script,&yscale); break; scriptfile_getdouble(script,&yscale); break;
case T_NOCOMPRESS: case T_NOCOMPRESS:
flags |= 1; break; flags |= 1; break;
case T_NODOWNSIZE:
flags |= 16; break;
default: default:
break; break;
} }
@ -1446,6 +1449,8 @@ static int defsparser(scriptfile *script)
scriptfile_getdouble(script,&yscale); break; scriptfile_getdouble(script,&yscale); break;
case T_NOCOMPRESS: case T_NOCOMPRESS:
flags |= 1; break; flags |= 1; break;
case T_NODOWNSIZE:
flags |= 16; break;
default: default:
break; break;
} }

View file

@ -1659,7 +1659,7 @@ int gloadtile_hi(int dapic,int dapalnum, int facen, hicreplctyp *hicr, int damet
cachefil=0; cachefil=0;
} }
fixtransparency(pic,tsizx,tsizy,xsiz,ysiz,dameth); fixtransparency(pic,tsizx,tsizy,xsiz,ysiz,dameth);
uploadtexture(doalloc,xsiz,ysiz,intexfmt,texfmt,pic,-1,tsizy,dameth|8192|(hicr->flags & 1?4096:0)); uploadtexture(doalloc,xsiz,ysiz,intexfmt,texfmt,pic,-1,tsizy,dameth|8192|(hicr->flags & 16?4096:0));
} }
// precalculate scaling parameters for replacement // precalculate scaling parameters for replacement
@ -1705,10 +1705,11 @@ int gloadtile_hi(int dapic,int dapalnum, int facen, hicreplctyp *hicr, int damet
pth->skyface = facen; pth->skyface = facen;
pth->hicr = hicr; pth->hicr = hicr;
if (glinfo.texcompr && glusetexcompr && !(hicr->flags & 1))
if (cachefil < 0) if (cachefil < 0)
{ {
// save off the compressed version // save off the compressed version
if (hicr->flags & 1) cachead.quality = 0; if (hicr->flags & 16) cachead.quality = 0;
else cachead.quality = r_downsize; else cachead.quality = r_downsize;
cachead.xdim = tsizx>>cachead.quality; cachead.xdim = tsizx>>cachead.quality;
cachead.ydim = tsizy>>cachead.quality; cachead.ydim = tsizy>>cachead.quality;
@ -1718,7 +1719,7 @@ int gloadtile_hi(int dapic,int dapalnum, int facen, hicreplctyp *hicr, int damet
if (xsiz == pow2long[j]) { x |= 1; } if (xsiz == pow2long[j]) { x |= 1; }
if (ysiz == pow2long[j]) { x |= 2; } if (ysiz == pow2long[j]) { x |= 2; }
} }
cachead.flags = (x!=3) | (hasalpha != 255 ? 2 : 0) | (hicr->flags & 1?8:0); // handle nocompress cachead.flags = (x!=3) | (hasalpha != 255 ? 2 : 0) | (hicr->flags & 16?8:0); // handle nocompress
OSD_Printf("No cached tex for tile %d pal %d.\n",dapic,dapalnum); OSD_Printf("No cached tex for tile %d pal %d.\n",dapic,dapalnum);
writexcache(fn, picfillen+(dapalnum<<8), dameth, effect, &cachead); writexcache(fn, picfillen+(dapalnum<<8), dameth, effect, &cachead);
} }

View file

@ -2405,13 +2405,16 @@ static void moveweapons(void)
j = movesprite(i, j = movesprite(i,
(k*(sintable[(s->ang+512)&2047]))>>14, (k*(sintable[(s->ang+512)&2047]))>>14,
(k*(sintable[s->ang&2047]))>>14,ll,qq); (k*(sintable[s->ang&2047]))>>14,ll,qq);
if (j)break; if (j)
break;
} }
if (!(hittype[i].projectile.workslike & PROJECTILE_FLAG_BOUNCESOFFWALLS) && s->yvel >= 0 && sprite[s->yvel].sectnum < MAXSECTORS) if (!(hittype[i].projectile.workslike & PROJECTILE_FLAG_BOUNCESOFFWALLS) && s->yvel >= 0 && sprite[s->yvel].sectnum < MAXSECTORS)
if (FindDistance2D(s->x-sprite[s->yvel].x,s->y-sprite[s->yvel].y) < 256) if (FindDistance2D(s->x-sprite[s->yvel].x,s->y-sprite[s->yvel].y) < 256)
j = 49152|s->yvel; j = 49152|s->yvel;
hittype[i].movflag = j;
if (s->sectnum < 0) if (s->sectnum < 0)
{ {
KILLIT(i); KILLIT(i);
@ -2873,6 +2876,8 @@ static void moveweapons(void)
if (FindDistance2D(s->x-sprite[s->yvel].x,s->y-sprite[s->yvel].y) < 256) if (FindDistance2D(s->x-sprite[s->yvel].x,s->y-sprite[s->yvel].y) < 256)
j = 49152|s->yvel; j = 49152|s->yvel;
hittype[i].movflag = j;
if (s->sectnum < 0) if (s->sectnum < 0)
KILLIT(i); KILLIT(i);
@ -4385,6 +4390,8 @@ static void moveactors(void)
(s->xvel*(sintable[s->ang&2047]))>>14, (s->xvel*(sintable[s->ang&2047]))>>14,
s->zvel,CLIPMASK0); s->zvel,CLIPMASK0);
hittype[i].movflag = j;
if (sector[SECT].lotag == 1 && s->zvel == 0 && hittype[i].floorz == sector[sect].floorz) if (sector[SECT].lotag == 1 && s->zvel == 0 && hittype[i].floorz == sector[sect].floorz)
{ {
s->z += (32<<8); s->z += (32<<8);

View file

@ -22,9 +22,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/ */
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
// this is checked against http://eduke32.com/VERSION
#define BUILDDATE " 20080825"
#define APPNAME "EDuke32" #define APPNAME "EDuke32"
#define VERSION " 1.5.0devel" #define VERSION " 1.5.0devel"
#define HEAD2 APPNAME VERSION #define HEAD2 APPNAME VERSION BUILDDATE
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {

View file

@ -50,8 +50,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include <windows.h> #include <windows.h>
#include <shellapi.h> #include <shellapi.h>
extern int getversionfromwebsite(char *buffer); extern int getversionfromwebsite(char *buffer);
// this is checked against http://eduke32.com/VERSION
#define BUILDDATE 20080825
#define UPDATEINTERVAL 604800 // 1w #define UPDATEINTERVAL 604800 // 1w
#else #else
static int usecwd = 0; static int usecwd = 0;
@ -10561,7 +10559,7 @@ void app_main(int argc,const char **argv)
{ {
int i, j; int i, j;
char cwd[BMAX_PATH]; char cwd[BMAX_PATH];
extern char datetimestring[]; // extern char datetimestring[];
#ifdef RENDERTYPEWIN #ifdef RENDERTYPEWIN
if (win_checkinstance()) if (win_checkinstance())
@ -10599,7 +10597,8 @@ void app_main(int argc,const char **argv)
); );
wm_setapptitle(HEAD2); wm_setapptitle(HEAD2);
initprintf("%s (%s)\n",apptitle,datetimestring); initprintf("%s\n",apptitle);
// initprintf("Compiled %s\n",datetimestring);
initprintf("Copyright (c) 1996, 2003 3D Realms Entertainment\n"); initprintf("Copyright (c) 1996, 2003 3D Realms Entertainment\n");
initprintf("Copyright (c) 2008 EDuke32 team\n"); initprintf("Copyright (c) 2008 EDuke32 team\n");
@ -10723,7 +10722,7 @@ void app_main(int argc,const char **argv)
{ {
ud.config.LastUpdateCheck = time(NULL); ud.config.LastUpdateCheck = time(NULL);
if (atol(tempbuf) > BUILDDATE) if (atol(tempbuf) > atol(BUILDDATE))
{ {
if (wm_ynbox("EDuke32","A new version of EDuke32 is available. " if (wm_ynbox("EDuke32","A new version of EDuke32 is available. "
"Browse to http://eduke32.sourceforge.net now?")) "Browse to http://eduke32.sourceforge.net now?"))

View file

@ -1077,8 +1077,11 @@ static int increasescriptsize(int size)
} }
//initprintf("offset: %d\n",(unsigned)(scriptptr-script)); //initprintf("offset: %d\n",(unsigned)(scriptptr-script));
if (size <= g_ScriptSize) if (size <= osize)
{
g_ScriptSize = size;
initprintf("Shrinking bytecode buffer, final size: %d*%d bytes\n",g_ScriptSize, sizeof(intptr_t)); initprintf("Shrinking bytecode buffer, final size: %d*%d bytes\n",g_ScriptSize, sizeof(intptr_t));
}
else else
{ {
g_ScriptSize = size; g_ScriptSize = size;
@ -5648,9 +5651,7 @@ void loadefs(const char *filenam)
total_lines += line_number; total_lines += line_number;
while ((g_ScriptSize-128) > (scriptptr-script)) increasescriptsize(scriptptr-script+1);
g_ScriptSize -= 128;
increasescriptsize(g_ScriptSize);
initprintf("Compiled code size: %ld*%d bytes, version %s\n",(unsigned)(scriptptr-script),sizeof(intptr_t),(g_ScriptVersion == 14?"1.4+":"1.3D")); initprintf("Compiled code size: %ld*%d bytes, version %s\n",(unsigned)(scriptptr-script),sizeof(intptr_t),(g_ScriptVersion == 14?"1.4+":"1.3D"));
initprintf("%ld/%ld labels, %d/%d variables\n",labelcnt,min((MAXSECTORS * sizeof(sectortype)/sizeof(int)),(MAXSPRITES * sizeof(spritetype)/(1<<6))),iGameVarCount,MAXGAMEVARS); initprintf("%ld/%ld labels, %d/%d variables\n",labelcnt,min((MAXSECTORS * sizeof(sectortype)/sizeof(int)),(MAXSPRITES * sizeof(spritetype)/(1<<6))),iGameVarCount,MAXGAMEVARS);
@ -5839,7 +5840,7 @@ void ReportError(int iError)
initprintf("%s:%d: warning: expected a label, found a constant.\n",compilefile,line_number); initprintf("%s:%d: warning: expected a label, found a constant.\n",compilefile,line_number);
break; break;
case WARNING_NAMEMATCHESVAR: case WARNING_NAMEMATCHESVAR:
initprintf("%s:%d: warning: symbol `%s' is a game variable.\n",compilefile,line_number,label+(labelcnt<<6)); initprintf("%s:%d: warning: symbol `%s' already used for game variable.\n",compilefile,line_number,label+(labelcnt<<6));
break; break;
case WARNING_REVEVENTSYNC: case WARNING_REVEVENTSYNC:
initprintf("%s:%d: warning: found `%s' outside of a local event.\n",compilefile,line_number,tempbuf); initprintf("%s:%d: warning: found `%s' outside of a local event.\n",compilefile,line_number,tempbuf);

View file

@ -177,7 +177,7 @@ projectile_t projectile[MAXTILES], thisprojectile[MAXSPRITES], defaultprojectile
char cheatkey[2] = { sc_D, sc_N }; char cheatkey[2] = { sc_D, sc_N };
char setupfilename[BMAX_PATH]= "duke3d.cfg"; char setupfilename[BMAX_PATH]= "duke3d.cfg";
char datetimestring[] = ""__DATE__" "__TIME__""; // char datetimestring[] = ""__DATE__" "__TIME__"";
int doquicksave = 0; int doquicksave = 0;

View file

@ -1852,9 +1852,9 @@ cheat_for_port_credits:
"This program is distributed under the terms of the", "This program is distributed under the terms of the",
"GNU General Public License version 2 as published by the", "GNU General Public License version 2 as published by the",
"Free Software Foundation. See GNU.TXT for details.", "Free Software Foundation. See GNU.TXT for details.",
"", " ",
"Thanks to the following people for their contributions:", "Thanks to the following people for their contributions:",
"", " ",
"Adam Fazakerley", "Adam Fazakerley",
"Charlie Honig", "Charlie Honig",
"Ed Coolidge", "Ed Coolidge",
@ -1872,16 +1872,16 @@ cheat_for_port_credits:
"Philipp Kutin", "Philipp Kutin",
"Ryan Gordon", "Ryan Gordon",
"Stephen Anthony", "Stephen Anthony",
"", " ",
"EDuke originally by Matt Saettler", "EDuke originally by Matt Saettler",
"", " ",
"--x--", "--x--",
"", " ",
"", " ",
"", " ",
"", " ",
"", " ",
"" " "
}; };
const int numlines = sizeof(scroller)/sizeof(char *); const int numlines = sizeof(scroller)/sizeof(char *);
for (m=0,i=(totalclock/104)%numlines; m<6; m++,i++) for (m=0,i=(totalclock/104)%numlines; m<6; m++,i++)
@ -1895,7 +1895,7 @@ cheat_for_port_credits:
p = "Visit www.eduke32.com for news and updates"; p = "Visit www.eduke32.com for news and updates";
minitext(161-(Bstrlen(p)<<1), 136+10+10+10+10+4-l, p, 4, 10+16+128); minitext(161-(Bstrlen(p)<<1), 136+10+10+10+10+4-l, p, 4, 10+16+128);
minitext(160-(Bstrlen(p)<<1), 135+10+10+10+10+4-l, p, 8, 10+16+128); minitext(160-(Bstrlen(p)<<1), 135+10+10+10+10+4-l, p, 8, 10+16+128);
p = "See wiki.eduke32.com/stuff for new beta snapshots"; p = "See wiki.eduke32.com/stuff for new releases";
minitext(161-(Bstrlen(p)<<1), 143+10+10+10+10+4-l, p, 4, 10+16+128); minitext(161-(Bstrlen(p)<<1), 143+10+10+10+10+4-l, p, 4, 10+16+128);
minitext(160-(Bstrlen(p)<<1), 142+10+10+10+10+4-l, p, 8, 10+16+128); minitext(160-(Bstrlen(p)<<1), 142+10+10+10+10+4-l, p, 8, 10+16+128);
} }

View file

@ -32,8 +32,8 @@ struct dynitem
{ {
char *s; char *s;
int *v; int *v;
int vstat; short vstat;
int val; short val;
}; };
struct HASH_table dynnamesH = {4096, NULL}; struct HASH_table dynnamesH = {4096, NULL};