mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-25 03:00:46 +00:00
Show sector/sectoreffector type in tag input fields
git-svn-id: https://svn.eduke32.com/eduke32@1049 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
7b94cf4758
commit
cb84787775
4 changed files with 478 additions and 458 deletions
|
@ -73,6 +73,7 @@ extern void ExtShowSpriteData(short spritenum);
|
||||||
extern void ExtEditSectorData(short sectnum);
|
extern void ExtEditSectorData(short sectnum);
|
||||||
extern void ExtEditWallData(short wallnum);
|
extern void ExtEditWallData(short wallnum);
|
||||||
extern void ExtEditSpriteData(short spritenum);
|
extern void ExtEditSpriteData(short spritenum);
|
||||||
|
extern const char *ExtGetSectorType(int lotag);
|
||||||
|
|
||||||
extern int circlewall;
|
extern int circlewall;
|
||||||
|
|
||||||
|
@ -82,8 +83,10 @@ int writesetup(const char *fn); // from config.c
|
||||||
void editinput(void);
|
void editinput(void);
|
||||||
void clearmidstatbar16(void);
|
void clearmidstatbar16(void);
|
||||||
|
|
||||||
int getnumber256(char namestart[80], int num, int maxnumber, char sign);
|
int _getnumber256(char namestart[80], int num, int maxnumber, char sign, void *(func)(int));
|
||||||
int getnumber16(char namestart[80], int num, int maxnumber, char sign);
|
#define getnumber256(namestart, num, maxnumber, sign) _getnumber256(namestart, num, maxnumber, sign, NULL)
|
||||||
|
int _getnumber16(char namestart[80], int num, int maxnumber, char sign, void *(func)(int));
|
||||||
|
#define getnumber16(namestart, num, maxnumber, sign) _getnumber16(namestart, num, maxnumber, sign, NULL)
|
||||||
void printmessage256(char name[82]);
|
void printmessage256(char name[82]);
|
||||||
void _printmessage16(const char *fmt, ...);
|
void _printmessage16(const char *fmt, ...);
|
||||||
|
|
||||||
|
|
|
@ -45,6 +45,7 @@ extern void ExtShowSpriteData(short spritenum);
|
||||||
extern void ExtEditSectorData(short sectnum);
|
extern void ExtEditSectorData(short sectnum);
|
||||||
extern void ExtEditWallData(short wallnum);
|
extern void ExtEditWallData(short wallnum);
|
||||||
extern void ExtEditSpriteData(short spritenum);
|
extern void ExtEditSpriteData(short spritenum);
|
||||||
|
extern const char *ExtGetSectorType(int lotag);
|
||||||
|
|
||||||
extern char spritecol2d[MAXTILES][2];
|
extern char spritecol2d[MAXTILES][2];
|
||||||
|
|
||||||
|
@ -259,13 +260,13 @@ static int osdcmd_vidmode(const osdfuncparm_t *parm)
|
||||||
|
|
||||||
ydim16 = ydim;
|
ydim16 = ydim;
|
||||||
drawline16(0,ydim-STATUS2DSIZ,xdim-1,ydim-STATUS2DSIZ,1);
|
drawline16(0,ydim-STATUS2DSIZ,xdim-1,ydim-STATUS2DSIZ,1);
|
||||||
drawline16(0,ydim-1,xdim-1,ydim-1,1);
|
/* drawline16(0,ydim-1,xdim-1,ydim-1,1);
|
||||||
drawline16(0,ydim-STATUS2DSIZ,0,ydim-1,1);
|
drawline16(0,ydim-STATUS2DSIZ,0,ydim-1,1);
|
||||||
drawline16(xdim-1,ydim-STATUS2DSIZ,xdim-1,ydim-1,1);
|
drawline16(xdim-1,ydim-STATUS2DSIZ,xdim-1,ydim-1,1);
|
||||||
drawline16(0,ydim-STATUS2DSIZ+24,xdim-1,ydim-STATUS2DSIZ+24,1);
|
drawline16(0,ydim-STATUS2DSIZ+24,xdim-1,ydim-STATUS2DSIZ+24,1);
|
||||||
drawline16(192-24,ydim-STATUS2DSIZ,192-24,ydim-STATUS2DSIZ+24,1);
|
drawline16(192-24,ydim-STATUS2DSIZ,192-24,ydim-STATUS2DSIZ+24,1);
|
||||||
drawline16(0,ydim-1-20,xdim-1,ydim-1-20,1);
|
drawline16(0,ydim-1-20,xdim-1,ydim-1-20,1);
|
||||||
drawline16(256,ydim-1-20,256,ydim-1,1);
|
drawline16(256,ydim-1-20,256,ydim-1,1); */
|
||||||
ydim16 = ydim-STATUS2DSIZ;
|
ydim16 = ydim-STATUS2DSIZ;
|
||||||
enddrawing(); //}}}
|
enddrawing(); //}}}
|
||||||
return OSDCMD_OK;
|
return OSDCMD_OK;
|
||||||
|
@ -3937,51 +3938,6 @@ void overheadeditor(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (keystatus[0x14]) // T (tag)
|
|
||||||
{
|
|
||||||
keystatus[0x14] = 0;
|
|
||||||
if (keystatus[0x1d]|keystatus[0x9d]) //Ctrl-T
|
|
||||||
{
|
|
||||||
showtags ^= 1;
|
|
||||||
if (showtags == 0)
|
|
||||||
printmessage16("Show tags OFF");
|
|
||||||
else
|
|
||||||
printmessage16("Show tags ON");
|
|
||||||
}
|
|
||||||
else if (keystatus[0x38]|keystatus[0xb8]) //ALT
|
|
||||||
{
|
|
||||||
if (pointhighlight >= 16384)
|
|
||||||
{
|
|
||||||
i = pointhighlight-16384;
|
|
||||||
Bsprintf(buffer,"Sprite (%d) Lo-tag: ",i);
|
|
||||||
sprite[i].lotag = getnumber16(buffer,sprite[i].lotag,65536L,0);
|
|
||||||
clearmidstatbar16();
|
|
||||||
showspritedata((short)i);
|
|
||||||
}
|
|
||||||
else if (linehighlight >= 0)
|
|
||||||
{
|
|
||||||
i = linehighlight;
|
|
||||||
Bsprintf(buffer,"Wall (%d) Lo-tag: ",i);
|
|
||||||
wall[i].lotag = getnumber16(buffer,wall[i].lotag,65536L,0);
|
|
||||||
clearmidstatbar16();
|
|
||||||
showwalldata((short)i);
|
|
||||||
}
|
|
||||||
printmessage16("");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
for (i=0;i<numsectors;i++)
|
|
||||||
if (inside(mousxplc,mousyplc,i) == 1)
|
|
||||||
{
|
|
||||||
Bsprintf(buffer,"Sector (%d) Lo-tag: ",i);
|
|
||||||
sector[i].lotag = getnumber16(buffer,sector[i].lotag,65536L,0);
|
|
||||||
clearmidstatbar16();
|
|
||||||
showsectordata((short)i);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
printmessage16("");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (keystatus[0x23]) //H (Hi 16 bits of tag)
|
if (keystatus[0x23]) //H (Hi 16 bits of tag)
|
||||||
{
|
{
|
||||||
keystatus[0x23] = 0;
|
keystatus[0x23] = 0;
|
||||||
|
@ -6730,7 +6686,7 @@ void clearmidstatbar16(void)
|
||||||
if (overridepm16y < 0)
|
if (overridepm16y < 0)
|
||||||
clearbuf((char *)(frameplace + (bytesperline*(ydim-STATUS2DSIZ+25L))),(bytesperline*(STATUS2DSIZ+2-(25<<1))) >> 2, 0x00000000l);
|
clearbuf((char *)(frameplace + (bytesperline*(ydim-STATUS2DSIZ+25L))),(bytesperline*(STATUS2DSIZ+2-(25<<1))) >> 2, 0x00000000l);
|
||||||
else
|
else
|
||||||
clearbuf((char *)(frameplace + (bytesperline*(ydim-3*STATUS2DSIZ+25L))),(bytesperline*(3*STATUS2DSIZ+2-(25<<1))) >> 2, 0x00000000l);
|
clearbuf((char *)(frameplace + (bytesperline*(ydim-overridepm16y+25L))),(bytesperline*(overridepm16y+2-(25<<1))) >> 2, 0x00000000l);
|
||||||
drawline16(0,ydim-STATUS2DSIZ,0,ydim-1,7);
|
drawline16(0,ydim-STATUS2DSIZ,0,ydim-1,7);
|
||||||
drawline16(xdim-1,ydim-STATUS2DSIZ,xdim-1,ydim-1,7);
|
drawline16(xdim-1,ydim-STATUS2DSIZ,xdim-1,ydim-1,7);
|
||||||
ydim16 = ydim-STATUS2DSIZ;
|
ydim16 = ydim-STATUS2DSIZ;
|
||||||
|
@ -6777,7 +6733,7 @@ int numloopsofsector(short sectnum)
|
||||||
return(numloops);
|
return(numloops);
|
||||||
}
|
}
|
||||||
|
|
||||||
int getnumber16(char namestart[80], int num, int maxnumber, char sign)
|
int _getnumber16(char namestart[80], int num, int maxnumber, char sign, void *(func)(int))
|
||||||
{
|
{
|
||||||
char buffer[80], ch;
|
char buffer[80], ch;
|
||||||
int n, danum, oldnum;
|
int n, danum, oldnum;
|
||||||
|
@ -6795,7 +6751,9 @@ int getnumber16(char namestart[80], int num, int maxnumber, char sign)
|
||||||
|
|
||||||
ch = bgetchar();
|
ch = bgetchar();
|
||||||
|
|
||||||
Bsprintf(buffer,"%s^011%d",namestart,danum);
|
if (func != NULL)
|
||||||
|
Bsprintf(buffer,"%s^011%s",namestart,(char *)func((int)danum));
|
||||||
|
else Bsprintf(buffer,"%s^011%d",namestart,danum);
|
||||||
if (totalclock & 32) Bstrcat(buffer,"_ ");
|
if (totalclock & 32) Bstrcat(buffer,"_ ");
|
||||||
printmessage16(buffer);
|
printmessage16(buffer);
|
||||||
showframe(1);
|
showframe(1);
|
||||||
|
@ -6832,7 +6790,7 @@ int getnumber16(char namestart[80], int num, int maxnumber, char sign)
|
||||||
return(oldnum);
|
return(oldnum);
|
||||||
}
|
}
|
||||||
|
|
||||||
int getnumber256(char namestart[80], int num, int maxnumber, char sign)
|
int _getnumber256(char namestart[80], int num, int maxnumber, char sign, void *(func)(int))
|
||||||
{
|
{
|
||||||
char buffer[80], ch;
|
char buffer[80], ch;
|
||||||
int n, danum, oldnum;
|
int n, danum, oldnum;
|
||||||
|
@ -6861,7 +6819,10 @@ int getnumber256(char namestart[80], int num, int maxnumber, char sign)
|
||||||
|
|
||||||
ExtCheckKeys();
|
ExtCheckKeys();
|
||||||
|
|
||||||
Bsprintf(buffer,"%s%d",namestart,danum);
|
if (func != NULL)
|
||||||
|
Bsprintf(buffer,"%s%s",namestart,(char *)func((int)danum));
|
||||||
|
else Bsprintf(buffer,"%s%d",namestart,danum);
|
||||||
|
|
||||||
if (totalclock & 32) Bstrcat(buffer,"_ ");
|
if (totalclock & 32) Bstrcat(buffer,"_ ");
|
||||||
printmessage256(buffer);
|
printmessage256(buffer);
|
||||||
showframe(1);
|
showframe(1);
|
||||||
|
@ -7865,7 +7826,7 @@ void _printmessage16(const char *fmt, ...)
|
||||||
}
|
}
|
||||||
snotbuf[54] = 0;
|
snotbuf[54] = 0;
|
||||||
begindrawing();
|
begindrawing();
|
||||||
ybase = (overridepm16y >= 0) ? overridepm16y : ydim-STATUS2DSIZ;
|
ybase = (overridepm16y >= 0) ? ydim-overridepm16y : ydim-STATUS2DSIZ;
|
||||||
printext16(200L-24, ybase+8L, 9, 0, snotbuf, 0);
|
printext16(200L-24, ybase+8L, 9, 0, snotbuf, 0);
|
||||||
i = 0;
|
i = 0;
|
||||||
while (i < 54)
|
while (i < 54)
|
||||||
|
@ -7880,21 +7841,21 @@ void _printmessage16(const char *fmt, ...)
|
||||||
|
|
||||||
void printmessage256(char name[82])
|
void printmessage256(char name[82])
|
||||||
{
|
{
|
||||||
char snotbuf[40];
|
char snotbuf[64];
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
while ((name[i] != 0) && (i < 38))
|
while ((name[i] != 0) && (i < 62))
|
||||||
{
|
{
|
||||||
snotbuf[i] = name[i];
|
snotbuf[i] = name[i];
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
while (i < 38)
|
while (i < 62)
|
||||||
{
|
{
|
||||||
snotbuf[i] = 32;
|
snotbuf[i] = 32;
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
snotbuf[38] = 0;
|
snotbuf[62] = 0;
|
||||||
printext256(2L,2L,0,-1,snotbuf,0);
|
printext256(2L,2L,0,-1,snotbuf,0);
|
||||||
printext256(0L,0L,whitecol,-1,snotbuf,0);
|
printext256(0L,0L,whitecol,-1,snotbuf,0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -964,7 +964,7 @@ void movedummyplayers(void)
|
||||||
|
|
||||||
p = sprite[OW].yvel;
|
p = sprite[OW].yvel;
|
||||||
|
|
||||||
if (g_player[p].ps->on_crane >= 0 || (g_player[p].ps->cursectnum > -1 && sector[g_player[p].ps->cursectnum].lotag != 1) || sprite[g_player[p].ps->i].extra <= 0)
|
if (g_player[p].ps->on_crane >= 0 || (g_player[p].ps->cursectnum >= 0 && sector[g_player[p].ps->cursectnum].lotag != 1) || sprite[g_player[p].ps->i].extra <= 0)
|
||||||
{
|
{
|
||||||
g_player[p].ps->dummyplayersprite = -1;
|
g_player[p].ps->dummyplayersprite = -1;
|
||||||
KILLIT(i);
|
KILLIT(i);
|
||||||
|
@ -2263,13 +2263,15 @@ CLEAR_THE_BOLT:
|
||||||
case RUBBERCAN__STATIC:
|
case RUBBERCAN__STATIC:
|
||||||
case STEAM__STATIC:
|
case STEAM__STATIC:
|
||||||
case CEILINGSTEAM__STATIC:
|
case CEILINGSTEAM__STATIC:
|
||||||
|
if (!actorscrptr[sprite[i].picnum])
|
||||||
|
goto BOLT;
|
||||||
p = findplayer(s, &x);
|
p = findplayer(s, &x);
|
||||||
if (actorscrptr[sprite[i].picnum])
|
|
||||||
execute(i,p,x);
|
execute(i,p,x);
|
||||||
goto BOLT;
|
goto BOLT;
|
||||||
case WATERBUBBLEMAKER__STATIC:
|
case WATERBUBBLEMAKER__STATIC:
|
||||||
|
if (!actorscrptr[sprite[i].picnum])
|
||||||
|
goto BOLT;
|
||||||
p = findplayer(s, &x);
|
p = findplayer(s, &x);
|
||||||
if (actorscrptr[sprite[i].picnum])
|
|
||||||
execute(i,p,x);
|
execute(i,p,x);
|
||||||
goto BOLT;
|
goto BOLT;
|
||||||
}
|
}
|
||||||
|
@ -2383,7 +2385,7 @@ static void moveweapons(void)
|
||||||
getglobalz(i);
|
getglobalz(i);
|
||||||
qq = CLIPMASK1;
|
qq = CLIPMASK1;
|
||||||
|
|
||||||
if (hittype[i].projectile.trail > -1)
|
if (hittype[i].projectile.trail >= 0)
|
||||||
{
|
{
|
||||||
for (f=0;f<=hittype[i].projectile.tnum;f++)
|
for (f=0;f<=hittype[i].projectile.tnum;f++)
|
||||||
{
|
{
|
||||||
|
@ -2444,7 +2446,7 @@ static void moveweapons(void)
|
||||||
if (hittype[i].projectile.syrepeat > 4)
|
if (hittype[i].projectile.syrepeat > 4)
|
||||||
sprite[k].yrepeat=hittype[i].projectile.syrepeat;
|
sprite[k].yrepeat=hittype[i].projectile.syrepeat;
|
||||||
}
|
}
|
||||||
if (hittype[i].projectile.isound > -1)
|
if (hittype[i].projectile.isound >= 0)
|
||||||
spritesound(hittype[i].projectile.isound,i);
|
spritesound(hittype[i].projectile.isound,i);
|
||||||
|
|
||||||
s->extra=hittype[i].projectile.extra;
|
s->extra=hittype[i].projectile.extra;
|
||||||
|
@ -2478,7 +2480,7 @@ static void moveweapons(void)
|
||||||
if (hittype[i].projectile.syrepeat > 4)
|
if (hittype[i].projectile.syrepeat > 4)
|
||||||
sprite[k].yrepeat=hittype[i].projectile.syrepeat;
|
sprite[k].yrepeat=hittype[i].projectile.syrepeat;
|
||||||
}
|
}
|
||||||
if (hittype[i].projectile.isound > -1)
|
if (hittype[i].projectile.isound >= 0)
|
||||||
spritesound(hittype[i].projectile.isound,i);
|
spritesound(hittype[i].projectile.isound,i);
|
||||||
|
|
||||||
s->extra=hittype[i].projectile.extra;
|
s->extra=hittype[i].projectile.extra;
|
||||||
|
@ -2535,7 +2537,7 @@ static void moveweapons(void)
|
||||||
k = getangle(sprite[j].x-s->x,sprite[j].y-s->y)+(sprite[j].cstat&16?0:512);
|
k = getangle(sprite[j].x-s->x,sprite[j].y-s->y)+(sprite[j].cstat&16?0:512);
|
||||||
s->ang = ((k<<1) - s->ang)&2047;
|
s->ang = ((k<<1) - s->ang)&2047;
|
||||||
|
|
||||||
if (hittype[i].projectile.bsound > -1)
|
if (hittype[i].projectile.bsound >= 0)
|
||||||
spritesound(hittype[i].projectile.bsound,i);
|
spritesound(hittype[i].projectile.bsound,i);
|
||||||
|
|
||||||
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_LOSESVELOCITY)
|
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_LOSESVELOCITY)
|
||||||
|
@ -2595,7 +2597,7 @@ static void moveweapons(void)
|
||||||
sprite[k].yrepeat=hittype[i].projectile.syrepeat;
|
sprite[k].yrepeat=hittype[i].projectile.syrepeat;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hittype[i].projectile.isound > -1)
|
if (hittype[i].projectile.isound >= 0)
|
||||||
spritesound(hittype[i].projectile.isound,i);
|
spritesound(hittype[i].projectile.isound,i);
|
||||||
|
|
||||||
if (!(hittype[i].projectile.workslike & PROJECTILE_FLAG_FORCEIMPACT))KILLIT(i);
|
if (!(hittype[i].projectile.workslike & PROJECTILE_FLAG_FORCEIMPACT))KILLIT(i);
|
||||||
|
@ -2634,7 +2636,7 @@ static void moveweapons(void)
|
||||||
wall[wall[j].point2].y-wall[j].y);
|
wall[wall[j].point2].y-wall[j].y);
|
||||||
s->ang = ((k<<1) - s->ang)&2047;
|
s->ang = ((k<<1) - s->ang)&2047;
|
||||||
|
|
||||||
if (hittype[i].projectile.bsound > -1)
|
if (hittype[i].projectile.bsound >= 0)
|
||||||
spritesound(hittype[i].projectile.bsound,i);
|
spritesound(hittype[i].projectile.bsound,i);
|
||||||
|
|
||||||
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_LOSESVELOCITY)
|
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_LOSESVELOCITY)
|
||||||
|
@ -2665,7 +2667,7 @@ static void moveweapons(void)
|
||||||
|
|
||||||
s->yvel--;
|
s->yvel--;
|
||||||
|
|
||||||
if (hittype[i].projectile.bsound > -1)
|
if (hittype[i].projectile.bsound >= 0)
|
||||||
spritesound(hittype[i].projectile.bsound,i);
|
spritesound(hittype[i].projectile.bsound,i);
|
||||||
|
|
||||||
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_LOSESVELOCITY)
|
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_LOSESVELOCITY)
|
||||||
|
@ -2694,18 +2696,16 @@ static void moveweapons(void)
|
||||||
|
|
||||||
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_HITSCAN)
|
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_HITSCAN)
|
||||||
{
|
{
|
||||||
if (actorscrptr[sprite[i].picnum])
|
if (!actorscrptr[sprite[i].picnum])
|
||||||
{
|
goto BOLT;
|
||||||
p = findplayer(s,&x);
|
p = findplayer(s,&x);
|
||||||
execute(i,p,x);
|
execute(i,p,x);
|
||||||
}
|
|
||||||
goto BOLT;
|
goto BOLT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_RPG)
|
if (hittype[i].projectile.workslike & PROJECTILE_FLAG_RPG)
|
||||||
{
|
{
|
||||||
if (hittype[i].projectile.isound > -1)
|
if (hittype[i].projectile.isound >= 0)
|
||||||
spritesound(hittype[i].projectile.isound,i);
|
spritesound(hittype[i].projectile.isound,i);
|
||||||
|
|
||||||
s->extra=hittype[i].projectile.extra;
|
s->extra=hittype[i].projectile.extra;
|
||||||
|
@ -3046,11 +3046,10 @@ static void moveweapons(void)
|
||||||
goto BOLT;
|
goto BOLT;
|
||||||
|
|
||||||
case SHOTSPARK1__STATIC:
|
case SHOTSPARK1__STATIC:
|
||||||
if (actorscrptr[sprite[i].picnum])
|
if (!actorscrptr[sprite[i].picnum])
|
||||||
{
|
goto BOLT;
|
||||||
p = findplayer(s,&x);
|
p = findplayer(s,&x);
|
||||||
execute(i,p,x);
|
execute(i,p,x);
|
||||||
}
|
|
||||||
goto BOLT;
|
goto BOLT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4712,12 +4711,10 @@ DETONATEB:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (actorscrptr[sprite[i].picnum])
|
if (!actorscrptr[sprite[i].picnum])
|
||||||
{
|
goto BOLT;
|
||||||
p = findplayer(s,&x);
|
p = findplayer(s,&x);
|
||||||
execute(i,p,x);
|
execute(i,p,x);
|
||||||
}
|
|
||||||
|
|
||||||
BOLT:
|
BOLT:
|
||||||
i = nexti;
|
i = nexti;
|
||||||
}
|
}
|
||||||
|
@ -5150,11 +5147,10 @@ static void moveexplosions(void) // STATNUM 5
|
||||||
case FORCERIPPLE__STATIC:
|
case FORCERIPPLE__STATIC:
|
||||||
case TRANSPORTERSTAR__STATIC:
|
case TRANSPORTERSTAR__STATIC:
|
||||||
case TRANSPORTERBEAM__STATIC:
|
case TRANSPORTERBEAM__STATIC:
|
||||||
if (actorscrptr[sprite[i].picnum])
|
if (!actorscrptr[sprite[i].picnum])
|
||||||
{
|
goto BOLT;
|
||||||
p = findplayer(s,&x);
|
p = findplayer(s,&x);
|
||||||
execute(i,p,x);
|
execute(i,p,x);
|
||||||
}
|
|
||||||
goto BOLT;
|
goto BOLT;
|
||||||
|
|
||||||
case SHELL__STATIC:
|
case SHELL__STATIC:
|
||||||
|
|
|
@ -358,9 +358,87 @@ int tileInGroup(int group, int tilenum)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char *ExtGetSectorType(int lotag)
|
||||||
|
{
|
||||||
|
static char tempbuf[64];
|
||||||
|
Bmemset(tempbuf,0,sizeof(tempbuf));
|
||||||
|
switch (lotag)
|
||||||
|
{
|
||||||
|
case 1:
|
||||||
|
Bsprintf(tempbuf,"1 WATER (SE 7)");
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
Bsprintf(tempbuf,"2 UNDERWATER (SE 7)");
|
||||||
|
break;
|
||||||
|
case 9:
|
||||||
|
Bsprintf(tempbuf,"9 STAR TREK DOORS");
|
||||||
|
break;
|
||||||
|
case 15:
|
||||||
|
Bsprintf(tempbuf,"15 ELEVATOR TRANSPORT (SE 17)");
|
||||||
|
break;
|
||||||
|
case 16:
|
||||||
|
Bsprintf(tempbuf,"16 ELEVATOR PLATFORM DOWN");
|
||||||
|
break;
|
||||||
|
case 17:
|
||||||
|
Bsprintf(tempbuf,"17 ELEVATOR PLATFORM UP");
|
||||||
|
break;
|
||||||
|
case 18:
|
||||||
|
Bsprintf(tempbuf,"18 ELEVATOR DOWN");
|
||||||
|
break;
|
||||||
|
case 19:
|
||||||
|
Bsprintf(tempbuf,"19 ELEVATOR UP");
|
||||||
|
break;
|
||||||
|
case 20:
|
||||||
|
Bsprintf(tempbuf,"20 CEILING DOOR");
|
||||||
|
break;
|
||||||
|
case 21:
|
||||||
|
Bsprintf(tempbuf,"21 FLOOR DOOR");
|
||||||
|
break;
|
||||||
|
case 22:
|
||||||
|
Bsprintf(tempbuf,"22 SPLIT DOOR");
|
||||||
|
break;
|
||||||
|
case 23:
|
||||||
|
Bsprintf(tempbuf,"23 SWING DOOR (SE 11)");
|
||||||
|
break;
|
||||||
|
case 25:
|
||||||
|
Bsprintf(tempbuf,"25 SLIDE DOOR (SE 15)");
|
||||||
|
break;
|
||||||
|
case 26:
|
||||||
|
Bsprintf(tempbuf,"26 SPLIT STAR TREK DOOR");
|
||||||
|
break;
|
||||||
|
case 27:
|
||||||
|
Bsprintf(tempbuf,"27 BRIDGE (SE 20)");
|
||||||
|
break;
|
||||||
|
case 28:
|
||||||
|
Bsprintf(tempbuf,"28 DROP FLOOR (SE 21)");
|
||||||
|
break;
|
||||||
|
case 29:
|
||||||
|
Bsprintf(tempbuf,"29 TEETH DOOR (SE 22)");
|
||||||
|
break;
|
||||||
|
case 30:
|
||||||
|
Bsprintf(tempbuf,"30 ROTATE RISE BRIDGE");
|
||||||
|
break;
|
||||||
|
case 31:
|
||||||
|
Bsprintf(tempbuf,"31 2 WAY TRAIN (SE=30)");
|
||||||
|
break;
|
||||||
|
case 32767:
|
||||||
|
Bsprintf(tempbuf,"32767 SECRET ROOM");
|
||||||
|
break;
|
||||||
|
case -1:
|
||||||
|
Bsprintf(tempbuf,"65535 END OF LEVEL");
|
||||||
|
break;
|
||||||
|
default :
|
||||||
|
if (lotag > 10000 && lotag < 32767)
|
||||||
|
Bsprintf(tempbuf,"%d 1 TIME SOUND",lotag);
|
||||||
|
else Bsprintf(tempbuf,"%hu",lotag);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return(tempbuf);
|
||||||
|
}
|
||||||
|
|
||||||
const char *ExtGetSectorCaption(short sectnum)
|
const char *ExtGetSectorCaption(short sectnum)
|
||||||
{
|
{
|
||||||
static char tempbuf[1024];
|
static char tempbuf[64];
|
||||||
Bmemset(tempbuf,0,sizeof(tempbuf));
|
Bmemset(tempbuf,0,sizeof(tempbuf));
|
||||||
if (qsetmode != 200 && (!(onnames==1 || onnames==4 || onnames==7) || (onnames==8)))
|
if (qsetmode != 200 && (!(onnames==1 || onnames==4 || onnames==7) || (onnames==8)))
|
||||||
{
|
{
|
||||||
|
@ -374,77 +452,7 @@ const char *ExtGetSectorCaption(short sectnum)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
switch (sector[sectnum].lotag)
|
Bstrcpy(lo,ExtGetSectorType(sector[sectnum].lotag));
|
||||||
{
|
|
||||||
case 1:
|
|
||||||
Bsprintf(lo,"1 WATER (SE 7)");
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
Bsprintf(lo,"2 UNDERWATER (SE 7)");
|
|
||||||
break;
|
|
||||||
case 9:
|
|
||||||
Bsprintf(lo,"9 STAR TREK DOORS");
|
|
||||||
break;
|
|
||||||
case 15:
|
|
||||||
Bsprintf(lo,"15 ELEVATOR TRANSPORT (SE 17)");
|
|
||||||
break;
|
|
||||||
case 16:
|
|
||||||
Bsprintf(lo,"16 ELEVATOR PLATFORM DOWN");
|
|
||||||
break;
|
|
||||||
case 17:
|
|
||||||
Bsprintf(lo,"17 ELEVATOR PLATFORM UP");
|
|
||||||
break;
|
|
||||||
case 18:
|
|
||||||
Bsprintf(lo,"18 ELEVATOR DOWN");
|
|
||||||
break;
|
|
||||||
case 19:
|
|
||||||
Bsprintf(lo,"19 ELEVATOR UP");
|
|
||||||
break;
|
|
||||||
case 20:
|
|
||||||
Bsprintf(lo,"20 CEILING DOOR");
|
|
||||||
break;
|
|
||||||
case 21:
|
|
||||||
Bsprintf(lo,"21 FLOOR DOOR");
|
|
||||||
break;
|
|
||||||
case 22:
|
|
||||||
Bsprintf(lo,"22 SPLIT DOOR");
|
|
||||||
break;
|
|
||||||
case 23:
|
|
||||||
Bsprintf(lo,"23 SWING DOOR (SE 11)");
|
|
||||||
break;
|
|
||||||
case 25:
|
|
||||||
Bsprintf(lo,"25 SLIDE DOOR (SE 15)");
|
|
||||||
break;
|
|
||||||
case 26:
|
|
||||||
Bsprintf(lo,"26 SPLIT STAR TREK DOOR");
|
|
||||||
break;
|
|
||||||
case 27:
|
|
||||||
Bsprintf(lo,"27 BRIDGE (SE 20)");
|
|
||||||
break;
|
|
||||||
case 28:
|
|
||||||
Bsprintf(lo,"28 DROP FLOOR (SE 21)");
|
|
||||||
break;
|
|
||||||
case 29:
|
|
||||||
Bsprintf(lo,"29 TEETH DOOR (SE 22)");
|
|
||||||
break;
|
|
||||||
case 30:
|
|
||||||
Bsprintf(lo,"30 ROTATE RISE BRIDGE");
|
|
||||||
break;
|
|
||||||
case 31:
|
|
||||||
Bsprintf(lo,"31 2 WAY TRAIN (SE=30)");
|
|
||||||
break;
|
|
||||||
case 32767:
|
|
||||||
Bsprintf(lo,"32767 SECRET ROOM");
|
|
||||||
break;
|
|
||||||
case -1:
|
|
||||||
Bsprintf(lo,"65535 END OF LEVEL");
|
|
||||||
break;
|
|
||||||
default :
|
|
||||||
Bsprintf(lo,"%hu",sector[sectnum].lotag);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
if (sector[sectnum].lotag > 10000 && sector[sectnum].lotag < 32767)
|
|
||||||
Bsprintf(lo,"%d 1 TIME SOUND",sector[sectnum].lotag);
|
|
||||||
if (qsetmode != 200)
|
if (qsetmode != 200)
|
||||||
Bsprintf(tempbuf,"%hu,%s",sector[sectnum].hitag,lo);
|
Bsprintf(tempbuf,"%hu,%s",sector[sectnum].hitag,lo);
|
||||||
else Bstrcpy(tempbuf,lo);
|
else Bstrcpy(tempbuf,lo);
|
||||||
|
@ -454,7 +462,7 @@ const char *ExtGetSectorCaption(short sectnum)
|
||||||
|
|
||||||
const char *ExtGetWallCaption(short wallnum)
|
const char *ExtGetWallCaption(short wallnum)
|
||||||
{
|
{
|
||||||
static char tempbuf[1024];
|
static char tempbuf[64];
|
||||||
|
|
||||||
Bmemset(tempbuf,0,sizeof(tempbuf));
|
Bmemset(tempbuf,0,sizeof(tempbuf));
|
||||||
|
|
||||||
|
@ -488,118 +496,130 @@ const char *ExtGetWallCaption(short wallnum)
|
||||||
return(tempbuf);
|
return(tempbuf);
|
||||||
} //end
|
} //end
|
||||||
|
|
||||||
const char *SectorEffectorText(short spritenum)
|
const char *SectorEffectorTagText(int lotag)
|
||||||
{
|
{
|
||||||
static char tempbuf[1024];
|
static char tempbuf[64];
|
||||||
Bmemset(tempbuf,0,sizeof(tempbuf));
|
Bmemset(tempbuf,0,sizeof(tempbuf));
|
||||||
switch (sprite[spritenum].lotag)
|
switch (lotag)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
Bsprintf(tempbuf,"SE: ROTATED SECTOR");
|
Bsprintf(tempbuf,"%d: ROTATED SECTOR",lotag);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
Bsprintf(tempbuf,"SE: PIVOT SPRITE FOR SE 0");
|
Bsprintf(tempbuf,"%d: PIVOT SPRITE FOR SE 0",lotag);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
Bsprintf(tempbuf,"SE: EARTHQUAKE");
|
Bsprintf(tempbuf,"%d: EARTHQUAKE",lotag);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
Bsprintf(tempbuf,"SE: RANDOM LIGHTS AFTER SHOT OUT");
|
Bsprintf(tempbuf,"%d: RANDOM LIGHTS AFTER SHOT OUT",lotag);
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
Bsprintf(tempbuf,"SE: RANDOM LIGHTS");
|
Bsprintf(tempbuf,"%d: RANDOM LIGHTS",lotag);
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
Bsprintf(tempbuf,"SE: SUBWAY");
|
Bsprintf(tempbuf,"%d: SUBWAY",lotag);
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
Bsprintf(tempbuf,"SE: TRANSPORT");
|
Bsprintf(tempbuf,"%d: TRANSPORT",lotag);
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
Bsprintf(tempbuf,"SE: UP OPEN DOOR LIGHTS");
|
Bsprintf(tempbuf,"%d: UP OPEN DOOR LIGHTS",lotag);
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
Bsprintf(tempbuf,"SE: DOWN OPEN DOOR LIGHTS");
|
Bsprintf(tempbuf,"%d: DOWN OPEN DOOR LIGHTS",lotag);
|
||||||
break;
|
break;
|
||||||
case 10:
|
case 10:
|
||||||
Bsprintf(tempbuf,"SE: DOOR AUTO CLOSE (H=DELAY)");
|
Bsprintf(tempbuf,"%d: DOOR AUTO CLOSE (H=DELAY)",lotag);
|
||||||
break;
|
break;
|
||||||
case 11:
|
case 11:
|
||||||
Bsprintf(tempbuf,"SE: ROTATE SECTOR DOOR");
|
Bsprintf(tempbuf,"%d: ROTATE SECTOR DOOR",lotag);
|
||||||
break;
|
break;
|
||||||
case 12:
|
case 12:
|
||||||
Bsprintf(tempbuf,"SE: LIGHT SWITCH");
|
Bsprintf(tempbuf,"%d: LIGHT SWITCH",lotag);
|
||||||
break;
|
break;
|
||||||
case 13:
|
case 13:
|
||||||
Bsprintf(tempbuf,"SE: EXPLOSIVE");
|
Bsprintf(tempbuf,"%d: EXPLOSIVE",lotag);
|
||||||
break;
|
break;
|
||||||
case 14:
|
case 14:
|
||||||
Bsprintf(tempbuf,"SE: SUBWAY CAR");
|
Bsprintf(tempbuf,"%d: SUBWAY CAR",lotag);
|
||||||
break;
|
break;
|
||||||
case 15:
|
case 15:
|
||||||
Bsprintf(tempbuf,"SE: SLIDE DOOR (ST 25)");
|
Bsprintf(tempbuf,"%d: SLIDE DOOR (ST 25)",lotag);
|
||||||
break;
|
break;
|
||||||
case 16:
|
case 16:
|
||||||
Bsprintf(tempbuf,"SE: ROTATE REACTOR SECTOR");
|
Bsprintf(tempbuf,"%d: ROTATE REACTOR SECTOR",lotag);
|
||||||
break;
|
break;
|
||||||
case 17:
|
case 17:
|
||||||
Bsprintf(tempbuf,"SE: ELEVATOR TRANSPORT (ST 15)");
|
Bsprintf(tempbuf,"%d: ELEVATOR TRANSPORT (ST 15)",lotag);
|
||||||
break;
|
break;
|
||||||
case 18:
|
case 18:
|
||||||
Bsprintf(tempbuf,"SE: INCREMENTAL SECTOR RISE/FALL");
|
Bsprintf(tempbuf,"%d: INCREMENTAL SECTOR RISE/FALL",lotag);
|
||||||
break;
|
break;
|
||||||
case 19:
|
case 19:
|
||||||
Bsprintf(tempbuf,"SE: CEILING FALL ON EXPLOSION");
|
Bsprintf(tempbuf,"%d: CEILING FALL ON EXPLOSION",lotag);
|
||||||
break;
|
break;
|
||||||
case 20:
|
case 20:
|
||||||
Bsprintf(tempbuf,"SE: BRIDGE (ST 27)");
|
Bsprintf(tempbuf,"%d: BRIDGE (ST 27)",lotag);
|
||||||
break;
|
break;
|
||||||
case 21:
|
case 21:
|
||||||
Bsprintf(tempbuf,"SE: DROP FLOOR (ST 28)");
|
Bsprintf(tempbuf,"%d: DROP FLOOR (ST 28)",lotag);
|
||||||
break;
|
break;
|
||||||
case 22:
|
case 22:
|
||||||
Bsprintf(tempbuf,"SE: TEETH DOOR (ST 29)");
|
Bsprintf(tempbuf,"%d: TEETH DOOR (ST 29)",lotag);
|
||||||
break;
|
break;
|
||||||
case 23:
|
case 23:
|
||||||
Bsprintf(tempbuf,"SE: 1-WAY SE7 DESTINATION (H=SE 7)");
|
Bsprintf(tempbuf,"%d: 1-WAY SE7 DESTINATION (H=SE 7)",lotag);
|
||||||
break;
|
break;
|
||||||
case 24:
|
case 24:
|
||||||
Bsprintf(tempbuf,"SE: CONVAYER BELT");
|
Bsprintf(tempbuf,"%d: CONVAYER BELT",lotag);
|
||||||
break;
|
break;
|
||||||
case 25:
|
case 25:
|
||||||
Bsprintf(tempbuf,"SE: ENGINE");
|
Bsprintf(tempbuf,"%d: ENGINE",lotag);
|
||||||
break;
|
break;
|
||||||
case 28:
|
case 28:
|
||||||
Bsprintf(tempbuf,"SE: LIGHTNING (H= TILE#4890)");
|
Bsprintf(tempbuf,"%d: LIGHTNING (H= TILE#4890)",lotag);
|
||||||
break;
|
break;
|
||||||
case 27:
|
case 27:
|
||||||
Bsprintf(tempbuf,"SE: CAMERA FOR PLAYBACK");
|
Bsprintf(tempbuf,"%d: CAMERA FOR PLAYBACK",lotag);
|
||||||
break;
|
break;
|
||||||
case 29:
|
case 29:
|
||||||
Bsprintf(tempbuf,"SE: FLOAT");
|
Bsprintf(tempbuf,"%d: FLOAT",lotag);
|
||||||
break;
|
break;
|
||||||
case 30:
|
case 30:
|
||||||
Bsprintf(tempbuf,"SE: 2 WAY TRAIN (ST=31)");
|
Bsprintf(tempbuf,"%d: 2 WAY TRAIN (ST=31)",lotag);
|
||||||
break;
|
break;
|
||||||
case 31:
|
case 31:
|
||||||
Bsprintf(tempbuf,"SE: FLOOR RISE");
|
Bsprintf(tempbuf,"%d: FLOOR RISE",lotag);
|
||||||
break;
|
break;
|
||||||
case 32:
|
case 32:
|
||||||
Bsprintf(tempbuf,"SE: CEILING FALL");
|
Bsprintf(tempbuf,"%d: CEILING FALL",lotag);
|
||||||
break;
|
break;
|
||||||
case 33:
|
case 33:
|
||||||
Bsprintf(tempbuf,"SE: SPAWN JIB W/QUAKE");
|
Bsprintf(tempbuf,"%d: SPAWN JIB W/QUAKE",lotag);
|
||||||
break;
|
break;
|
||||||
case 36:
|
case 36:
|
||||||
Bsprintf(tempbuf,"SE: SKRINK RAY SHOOTER");
|
Bsprintf(tempbuf,"%d: SKRINK RAY SHOOTER",lotag);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
SpriteName(spritenum,tempbuf);
|
Bsprintf(tempbuf,"%d",lotag);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return (tempbuf);
|
return (tempbuf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char *SectorEffectorText(int spritenum)
|
||||||
|
{
|
||||||
|
static char tempbuf[64];
|
||||||
|
Bmemset(tempbuf,0,sizeof(tempbuf));
|
||||||
|
Bmemset(lo,0,sizeof(lo));
|
||||||
|
Bstrcpy(lo,SectorEffectorTagText(sprite[spritenum].lotag));
|
||||||
|
if (!lo[5]) // tags are 5 chars or less
|
||||||
|
SpriteName(spritenum,tempbuf);
|
||||||
|
else Bsprintf(tempbuf,"SE: lo:%s",lo);
|
||||||
|
return (tempbuf);
|
||||||
|
}
|
||||||
|
|
||||||
const char *ExtGetSpriteCaption(short spritenum)
|
const char *ExtGetSpriteCaption(short spritenum)
|
||||||
{
|
{
|
||||||
static char tempbuf[1024];
|
static char tempbuf[1024];
|
||||||
|
@ -643,7 +663,7 @@ const char *ExtGetSpriteCaption(short spritenum)
|
||||||
tempbuf[0] = 0;
|
tempbuf[0] = 0;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Bsprintf(lo,"%s: %hu",SectorEffectorText(spritenum),sprite[spritenum].lotag);
|
Bsprintf(lo,"%s:",SectorEffectorText(spritenum));
|
||||||
Bsprintf(tempbuf,"%s, %hu",lo,sprite[spritenum].hitag);
|
Bsprintf(tempbuf,"%s, %hu",lo,sprite[spritenum].hitag);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1291,34 +1311,37 @@ HELPFILE_ERROR:
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define IHELP_NUMDISPLINES 42
|
// this obviously sucks but it works
|
||||||
|
#define IHELP_NUMDISPLINES ((overridepm16y>>4)+(overridepm16y>>5)+(overridepm16y>>7)-2)
|
||||||
#define IHELP_PATLEN 45
|
#define IHELP_PATLEN 45
|
||||||
extern int overridepm16y; // influences printmessage16() and clearmidstatbar16()
|
extern int overridepm16y; // influences printmessage16() and clearmidstatbar16()
|
||||||
|
|
||||||
static void IntegratedHelp()
|
static void IntegratedHelp()
|
||||||
{
|
{
|
||||||
|
if (!helppage) return;
|
||||||
|
|
||||||
|
overridepm16y = 3*STATUS2DSIZ;
|
||||||
|
|
||||||
|
{
|
||||||
int i, j;
|
int i, j;
|
||||||
static int curhp=0, curline=0;
|
static int curhp=0, curline=0;
|
||||||
int highlighthp=-1, highlightline=-1, lasthighlighttime=0;
|
int highlighthp=-1, highlightline=-1, lasthighlighttime=0;
|
||||||
char disptext[IHELP_NUMDISPLINES][80];
|
char disptext[IHELP_NUMDISPLINES][80];
|
||||||
char oldpattern[IHELP_PATLEN+1];
|
char oldpattern[IHELP_PATLEN+1];
|
||||||
|
|
||||||
if (!helppage) return;
|
|
||||||
|
|
||||||
begindrawing();
|
begindrawing();
|
||||||
clearbuf((char *)(frameplace + (ydim-3*STATUS2DSIZ)*bytesperline), (bytesperline*(3*STATUS2DSIZ-25)) >> 2, 0L);
|
clearbuf((char *)(frameplace + (ydim-overridepm16y)*bytesperline), (bytesperline*(overridepm16y-25)) >> 2, 0L);
|
||||||
|
|
||||||
drawline16(0,ydim-3*STATUS2DSIZ,xdim-1,ydim-3*STATUS2DSIZ,1);
|
drawline16(0,ydim-overridepm16y,xdim-1,ydim-overridepm16y,1);
|
||||||
Bsprintf(tempbuf, "Mapster32" VERSION);
|
Bsprintf(tempbuf, "Mapster32 Help Mode");
|
||||||
printext16(9L,ydim2d-3*STATUS2DSIZ+9L,4,-1,tempbuf,0);
|
printext16(9L,ydim2d-overridepm16y+9L,4,-1,tempbuf,0);
|
||||||
printext16(8L,ydim2d-3*STATUS2DSIZ+8L,12,-1,tempbuf,0);
|
printext16(8L,ydim2d-overridepm16y+8L,12,-1,tempbuf,0);
|
||||||
enddrawing();
|
enddrawing();
|
||||||
|
|
||||||
memset(oldpattern, 0, sizeof(char));
|
memset(oldpattern, 0, sizeof(char));
|
||||||
overridepm16y = ydim-3*STATUS2DSIZ;
|
|
||||||
// clearmidstatbar16();
|
// clearmidstatbar16();
|
||||||
|
|
||||||
while (keystatus[KEYSC_ESC]==0 && keystatus[KEYSC_Q]==0)
|
while (keystatus[KEYSC_ESC]==0 && keystatus[KEYSC_Q]==0 && keystatus[KEYSC_F1]==0)
|
||||||
{
|
{
|
||||||
if (handleevents())
|
if (handleevents())
|
||||||
{
|
{
|
||||||
|
@ -1461,7 +1484,7 @@ static void IntegratedHelp()
|
||||||
|
|
||||||
if (bad==1)
|
if (bad==1)
|
||||||
{
|
{
|
||||||
keystatus[KEYSC_ESC] = 0;
|
keystatus[KEYSC_ESC] = keystatus[KEYSC_Q] = keystatus[KEYSC_F1] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bad==2)
|
if (bad==2)
|
||||||
|
@ -1520,7 +1543,7 @@ ENDFOR1:
|
||||||
i<IHELP_NUMDISPLINES && j<helppage[curhp]->numlines; i++)
|
i<IHELP_NUMDISPLINES && j<helppage[curhp]->numlines; i++)
|
||||||
{
|
{
|
||||||
Bmemcpy(disptext[i], helppage[curhp]->line[j], 80);
|
Bmemcpy(disptext[i], helppage[curhp]->line[j], 80);
|
||||||
printext16(8,ydim-3*STATUS2DSIZ+28+i*9,11,
|
printext16(8,ydim-overridepm16y+28+i*9,11,
|
||||||
(j==highlightline && curhp==highlighthp
|
(j==highlightline && curhp==highlighthp
|
||||||
&& totalclock-lasthighlighttime<120*5)?1:-1,
|
&& totalclock-lasthighlighttime<120*5)?1:-1,
|
||||||
disptext[i],0);
|
disptext[i],0);
|
||||||
|
@ -1538,7 +1561,8 @@ ENDFOR1:
|
||||||
printmessage16("");
|
printmessage16("");
|
||||||
showframe(1);
|
showframe(1);
|
||||||
|
|
||||||
keystatus[KEYSC_ESC] = keystatus[KEYSC_Q] = 0;
|
keystatus[KEYSC_ESC] = keystatus[KEYSC_Q] = keystatus[KEYSC_F1] = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// PK_ ^^^^
|
// PK_ ^^^^
|
||||||
|
|
||||||
|
@ -3008,6 +3032,7 @@ static void Keys3d(void)
|
||||||
int hitx, hity, hitz, hihit, lohit;
|
int hitx, hity, hitz, hihit, lohit;
|
||||||
char smooshyalign=0, repeatpanalign=0, buffer[80];
|
char smooshyalign=0, repeatpanalign=0, buffer[80];
|
||||||
short startwall, endwall, dasector, hitsect, hitwall, hitsprite, statnum=0;
|
short startwall, endwall, dasector, hitsect, hitwall, hitsprite, statnum=0;
|
||||||
|
char tempbuf[128];
|
||||||
|
|
||||||
/* start Mapster32 */
|
/* start Mapster32 */
|
||||||
|
|
||||||
|
@ -3178,9 +3203,8 @@ static void Keys3d(void)
|
||||||
{
|
{
|
||||||
case 1:
|
case 1:
|
||||||
case 2:
|
case 2:
|
||||||
Bstrcpy(tempbuf,"Sector visibility: ");
|
|
||||||
sector[searchsector].visibility =
|
sector[searchsector].visibility =
|
||||||
getnumber256(tempbuf,sector[searchsector].visibility,256L,0);
|
getnumber256("Sector visibility: ",sector[searchsector].visibility,256L,0);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3442,31 +3466,22 @@ static void Keys3d(void)
|
||||||
switch (searchstat)
|
switch (searchstat)
|
||||||
{
|
{
|
||||||
case 1:
|
case 1:
|
||||||
strcpy(tempbuf,"Sector ceilingz: ");
|
sector[searchsector].ceilingz = getnumber256("Sector ceilingz: ",sector[searchsector].ceilingz,8388608,1);
|
||||||
sector[searchsector].ceilingz = getnumber256(tempbuf,sector[searchsector].ceilingz,8388608,1);
|
|
||||||
if (!(sector[searchsector].ceilingstat&2))
|
if (!(sector[searchsector].ceilingstat&2))
|
||||||
sector[searchsector].ceilingheinum = 0;
|
sector[searchsector].ceilingheinum = 0;
|
||||||
|
sector[searchsector].ceilingheinum = getnumber256("Sector ceiling slope: ",sector[searchsector].ceilingheinum,65536,1);
|
||||||
strcpy(tempbuf,"Sector ceiling slope: ");
|
|
||||||
sector[searchsector].ceilingheinum = getnumber256(tempbuf,sector[searchsector].ceilingheinum,65536,1);
|
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
strcpy(tempbuf,"Sector floorz: ");
|
sector[searchsector].floorz = getnumber256("Sector floorz: ",sector[searchsector].floorz,8388608,1);
|
||||||
sector[searchsector].floorz = getnumber256(tempbuf,sector[searchsector].floorz,8388608,1);
|
|
||||||
if (!(sector[searchsector].floorstat&2))
|
if (!(sector[searchsector].floorstat&2))
|
||||||
sector[searchsector].floorheinum = 0;
|
sector[searchsector].floorheinum = 0;
|
||||||
strcpy(tempbuf,"Sector floor slope: ");
|
sector[searchsector].floorheinum = getnumber256("Sector floor slope: ",sector[searchsector].floorheinum,65536,1);
|
||||||
sector[searchsector].floorheinum = getnumber256(tempbuf,sector[searchsector].floorheinum,65536,1);
|
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
strcpy(tempbuf,"Sprite x: ");
|
sprite[searchwall].x = getnumber256("Sprite x: ",sprite[searchwall].x,131072,1);
|
||||||
sprite[searchwall].x = getnumber256(tempbuf,sprite[searchwall].x,131072,1);
|
sprite[searchwall].y = getnumber256("Sprite y: ",sprite[searchwall].y,131072,1);
|
||||||
strcpy(tempbuf,"Sprite y: ");
|
sprite[searchwall].z = getnumber256("Sprite z: ",sprite[searchwall].z,8388608,1);
|
||||||
sprite[searchwall].y = getnumber256(tempbuf,sprite[searchwall].y,131072,1);
|
sprite[searchwall].ang = getnumber256("Sprite angle: ",sprite[searchwall].ang,2048L,0);
|
||||||
strcpy(tempbuf,"Sprite z: ");
|
|
||||||
sprite[searchwall].z = getnumber256(tempbuf,sprite[searchwall].z,8388608,1);
|
|
||||||
strcpy(tempbuf,"Sprite angle: ");
|
|
||||||
sprite[searchwall].ang = getnumber256(tempbuf,sprite[searchwall].ang,2048L,0);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (sector[searchsector].ceilingheinum == 0)
|
if (sector[searchsector].ceilingheinum == 0)
|
||||||
|
@ -4740,20 +4755,21 @@ static void Keys3d(void)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
case 4:
|
case 4:
|
||||||
Bstrcpy(tempbuf,"Wall lotag: ");
|
|
||||||
wall[searchwall].lotag =
|
wall[searchwall].lotag =
|
||||||
getnumber256(tempbuf,wall[searchwall].lotag,65536L,0);
|
getnumber256("Wall lotag: ",wall[searchwall].lotag,65536L,0);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
case 2:
|
case 2:
|
||||||
Bstrcpy(tempbuf,"Sector lotag: ");
|
|
||||||
sector[searchsector].lotag =
|
sector[searchsector].lotag =
|
||||||
getnumber256(tempbuf,sector[searchsector].lotag,65536L,0);
|
_getnumber256("Sector lotag: ",sector[searchsector].lotag,65536L,0,(void *)ExtGetSectorType);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
Bstrcpy(tempbuf,"Sprite lotag: ");
|
if (sprite[searchwall].picnum == SECTOREFFECTOR)
|
||||||
sprite[searchwall].lotag =
|
sprite[searchwall].lotag =
|
||||||
getnumber256(tempbuf,sprite[searchwall].lotag,65536L,0);
|
_getnumber256("Sprite lotag: ",sprite[searchwall].lotag,65536L,0,(void *)SectorEffectorTagText);
|
||||||
|
else
|
||||||
|
sprite[searchwall].lotag =
|
||||||
|
getnumber256("Sprite lotag: ",sprite[searchwall].lotag,65536L,0);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4765,20 +4781,17 @@ static void Keys3d(void)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
case 4:
|
case 4:
|
||||||
Bstrcpy(tempbuf,"Wall hitag: ");
|
|
||||||
wall[searchwall].hitag =
|
wall[searchwall].hitag =
|
||||||
getnumber256(tempbuf,wall[searchwall].hitag,65536L,0);
|
getnumber256("Wall hitag: ",wall[searchwall].hitag,65536L,0);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
case 2:
|
case 2:
|
||||||
Bstrcpy(tempbuf,"Sector hitag: ");
|
|
||||||
sector[searchsector].hitag =
|
sector[searchsector].hitag =
|
||||||
getnumber256(tempbuf,sector[searchsector].hitag,65536L,0);
|
getnumber256("Sector hitag: ",sector[searchsector].hitag,65536L,0);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
Bstrcpy(tempbuf,"Sprite hitag: ");
|
|
||||||
sprite[searchwall].hitag =
|
sprite[searchwall].hitag =
|
||||||
getnumber256(tempbuf,sprite[searchwall].hitag,65536L,0);
|
getnumber256("Sprite hitag: ",sprite[searchwall].hitag,65536L,0);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4790,24 +4803,21 @@ static void Keys3d(void)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
case 4:
|
case 4:
|
||||||
Bstrcpy(tempbuf,"Wall shade: ");
|
|
||||||
wall[searchwall].shade =
|
wall[searchwall].shade =
|
||||||
getnumber256(tempbuf,wall[searchwall].shade,128L,1);
|
getnumber256("Wall shade: ",wall[searchwall].shade,128L,1);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
case 2:
|
case 2:
|
||||||
Bstrcpy(tempbuf,"Sector shade: ");
|
|
||||||
if (searchstat==1)
|
if (searchstat==1)
|
||||||
sector[searchsector].ceilingshade =
|
sector[searchsector].ceilingshade =
|
||||||
getnumber256(tempbuf,sector[searchsector].ceilingshade,128L,1);
|
getnumber256("Ceiling shade: ",sector[searchsector].ceilingshade,128L,1);
|
||||||
if (searchstat==2)
|
if (searchstat==2)
|
||||||
sector[searchsector].floorshade =
|
sector[searchsector].floorshade =
|
||||||
getnumber256(tempbuf,sector[searchsector].floorshade,128L,1);
|
getnumber256("Floor shade: ",sector[searchsector].floorshade,128L,1);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
Bstrcpy(tempbuf,"Sprite shade: ");
|
|
||||||
sprite[searchwall].shade =
|
sprite[searchwall].shade =
|
||||||
getnumber256(tempbuf,sprite[searchwall].shade,128L,1);
|
getnumber256("Sprite shade: ",sprite[searchwall].shade,128L,1);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4865,32 +4875,27 @@ static void Keys3d(void)
|
||||||
switch (searchstat)
|
switch (searchstat)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
strcpy(tempbuf,"Wall picnum: ");
|
i = getnumber256("Wall picnum: ",wall[searchwall].picnum,MAXTILES-1,0);
|
||||||
i = getnumber256(tempbuf,wall[searchwall].picnum,MAXTILES-1,0);
|
|
||||||
if (tilesizx[i] != 0)
|
if (tilesizx[i] != 0)
|
||||||
wall[searchwall].picnum = i;
|
wall[searchwall].picnum = i;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
strcpy(tempbuf,"Sector ceiling picnum: ");
|
i = getnumber256("Sector ceiling picnum: ",sector[searchsector].ceilingpicnum,MAXTILES-1,0);
|
||||||
i = getnumber256(tempbuf,sector[searchsector].ceilingpicnum,MAXTILES-1,0);
|
|
||||||
if (tilesizx[i] != 0)
|
if (tilesizx[i] != 0)
|
||||||
sector[searchsector].ceilingpicnum = i;
|
sector[searchsector].ceilingpicnum = i;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
strcpy(tempbuf,"Sector floor picnum: ");
|
i = getnumber256("Sector floor picnum: ",sector[searchsector].floorpicnum,MAXTILES-1,0);
|
||||||
i = getnumber256(tempbuf,sector[searchsector].floorpicnum,MAXTILES-1,0);
|
|
||||||
if (tilesizx[i] != 0)
|
if (tilesizx[i] != 0)
|
||||||
sector[searchsector].floorpicnum = i;
|
sector[searchsector].floorpicnum = i;
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
strcpy(tempbuf,"Sprite picnum: ");
|
i = getnumber256("Sprite picnum: ",sprite[searchwall].picnum,MAXTILES-1,0);
|
||||||
i = getnumber256(tempbuf,sprite[searchwall].picnum,MAXTILES-1,0);
|
|
||||||
if (tilesizx[i] != 0)
|
if (tilesizx[i] != 0)
|
||||||
sprite[searchwall].picnum = i;
|
sprite[searchwall].picnum = i;
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
strcpy(tempbuf,"Masked wall picnum: ");
|
i = getnumber256("Masked wall picnum: ",wall[searchwall].overpicnum,MAXTILES-1,0);
|
||||||
i = getnumber256(tempbuf,wall[searchwall].overpicnum,MAXTILES-1,0);
|
|
||||||
if (tilesizx[i] != 0)
|
if (tilesizx[i] != 0)
|
||||||
wall[searchwall].overpicnum = i;
|
wall[searchwall].overpicnum = i;
|
||||||
break;
|
break;
|
||||||
|
@ -6004,7 +6009,7 @@ static void Keys2d(void)
|
||||||
if (strlen(names[sprite[i].picnum]) > 0)
|
if (strlen(names[sprite[i].picnum]) > 0)
|
||||||
{
|
{
|
||||||
if (sprite[i].picnum==SECTOREFFECTOR)
|
if (sprite[i].picnum==SECTOREFFECTOR)
|
||||||
Bsprintf(tmpbuf,"Sprite %d %s: lo:%d hi:%d ex:%d",i,SectorEffectorText(i),sprite[i].lotag,sprite[i].hitag,sprite[i].extra);
|
Bsprintf(tmpbuf,"Sprite %d %s, hi:%d ex:%d",i,SectorEffectorText(i),sprite[i].hitag,sprite[i].extra);
|
||||||
else Bsprintf(tmpbuf,"Sprite %d %s: lo:%d hi:%d ex:%d",i,names[sprite[i].picnum],sprite[i].lotag,sprite[i].hitag,sprite[i].extra);
|
else Bsprintf(tmpbuf,"Sprite %d %s: lo:%d hi:%d ex:%d",i,names[sprite[i].picnum],sprite[i].lotag,sprite[i].hitag,sprite[i].extra);
|
||||||
}
|
}
|
||||||
else Bsprintf(tmpbuf,"Sprite %d picnum %d: lo:%d hi:%d ex:%d",i,sprite[i].picnum,sprite[i].lotag,sprite[i].hitag,sprite[i].extra);
|
else Bsprintf(tmpbuf,"Sprite %d picnum %d: lo:%d hi:%d ex:%d",i,sprite[i].picnum,sprite[i].lotag,sprite[i].hitag,sprite[i].extra);
|
||||||
|
@ -6071,6 +6076,61 @@ static void Keys2d(void)
|
||||||
}
|
}
|
||||||
enddrawing();
|
enddrawing();
|
||||||
|
|
||||||
|
if (keystatus[0x14]) // T (tag)
|
||||||
|
{
|
||||||
|
char buffer[80];
|
||||||
|
|
||||||
|
keystatus[0x14] = 0;
|
||||||
|
if (keystatus[0x1d]|keystatus[0x9d]) //Ctrl-T
|
||||||
|
{
|
||||||
|
extern short showtags;
|
||||||
|
|
||||||
|
showtags ^= 1;
|
||||||
|
if (showtags == 0)
|
||||||
|
printmessage16("Show tags OFF");
|
||||||
|
else
|
||||||
|
printmessage16("Show tags ON");
|
||||||
|
}
|
||||||
|
else if (keystatus[0x38]|keystatus[0xb8]) //ALT
|
||||||
|
{
|
||||||
|
if (pointhighlight >= 16384)
|
||||||
|
{
|
||||||
|
i = pointhighlight-16384;
|
||||||
|
Bsprintf(buffer,"Sprite (%d) Lo-tag: ",i);
|
||||||
|
if (sprite[i].picnum == SECTOREFFECTOR)
|
||||||
|
sprite[i].lotag = _getnumber16(buffer,sprite[i].lotag,65536L,0,(void *)SectorEffectorTagText);
|
||||||
|
else sprite[i].lotag = getnumber16(buffer,sprite[i].lotag,65536L,0);
|
||||||
|
clearmidstatbar16();
|
||||||
|
showspritedata((short)i);
|
||||||
|
}
|
||||||
|
else if (linehighlight >= 0)
|
||||||
|
{
|
||||||
|
i = linehighlight;
|
||||||
|
Bsprintf(buffer,"Wall (%d) Lo-tag: ",i);
|
||||||
|
wall[i].lotag = getnumber16(buffer,wall[i].lotag,65536L,0);
|
||||||
|
clearmidstatbar16();
|
||||||
|
showwalldata((short)i);
|
||||||
|
}
|
||||||
|
printmessage16("");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
for (i=0;i<numsectors;i++)
|
||||||
|
if (inside(mousxplc,mousyplc,i) == 1)
|
||||||
|
{
|
||||||
|
Bsprintf(buffer,"Sector (%d) Lo-tag: ",i);
|
||||||
|
j = qsetmode;
|
||||||
|
qsetmode = 200;
|
||||||
|
sector[i].lotag = _getnumber16(buffer,sector[i].lotag,65536L,0,(void *)ExtGetSectorType);
|
||||||
|
qsetmode = j;
|
||||||
|
clearmidstatbar16();
|
||||||
|
showsectordata((short)i);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
printmessage16("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (keystatus[KEYSC_F1] || (keystatus[KEYSC_QUOTE] && keystatus[KEYSC_TILDE])) //F1 or ' ~
|
if (keystatus[KEYSC_F1] || (keystatus[KEYSC_QUOTE] && keystatus[KEYSC_TILDE])) //F1 or ' ~
|
||||||
{
|
{
|
||||||
keystatus[KEYSC_F1]=0;
|
keystatus[KEYSC_F1]=0;
|
||||||
|
|
Loading…
Reference in a new issue