mirror of
https://github.com/ZDoom/Raze.git
synced 2025-01-18 22:51:50 +00:00
git-svn-id: https://svn.eduke32.com/eduke32@1181 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
660f01cf46
commit
cd920963e3
3 changed files with 107 additions and 97 deletions
|
@ -4750,12 +4750,21 @@ RECHECK:
|
||||||
i = 4;
|
i = 4;
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
cullcheckcnt++;
|
cullcheckcnt += 2;
|
||||||
if (cansee(globalposx, globalposy, globalposz, globalcursectnum,
|
if (cansee(globalposx, globalposy, globalposz, globalcursectnum,
|
||||||
tspr->x+x, tspr->y+y, tspr->z-(j*i)-512, datempsectnum))
|
tspr->x+x, tspr->y+y, tspr->z-(j*i)-512, datempsectnum))
|
||||||
return 1;
|
return 1;
|
||||||
|
if (cansee(globalposx, globalposy, globalposz, globalcursectnum,
|
||||||
|
tspr->x+x, tspr->y+y, tspr->z-(j*(i-1))-512, datempsectnum))
|
||||||
|
return 1;
|
||||||
|
i -= 2;
|
||||||
}
|
}
|
||||||
while (--i > -1);
|
while (i);
|
||||||
|
|
||||||
|
cullcheckcnt++;
|
||||||
|
if (cansee(globalposx, globalposy, globalposz, globalcursectnum,
|
||||||
|
tspr->x+x, tspr->y+y, tspr->z-512, datempsectnum))
|
||||||
|
return 1;
|
||||||
|
|
||||||
if (x != y && x == oldx)
|
if (x != y && x == oldx)
|
||||||
{
|
{
|
||||||
|
|
|
@ -337,10 +337,11 @@ void A_Fall(int iActor)
|
||||||
{
|
{
|
||||||
if (sector[s->sectnum].lotag == 2 && s->zvel > 3122)
|
if (sector[s->sectnum].lotag == 2 && s->zvel > 3122)
|
||||||
s->zvel = 3144;
|
s->zvel = 3144;
|
||||||
if (s->zvel < 6144)
|
/* if (s->zvel < 6144)
|
||||||
s->zvel += c;
|
s->zvel += c;
|
||||||
else s->zvel = 6144;
|
else s->zvel = 6144;
|
||||||
s->z += s->zvel;
|
s->z += s->zvel; */
|
||||||
|
s->z += s->zvel = min(6144, s->zvel+c);
|
||||||
}
|
}
|
||||||
if (s->z >= ActorExtra[iActor].floorz-(FOURSLEIGHT))
|
if (s->z >= ActorExtra[iActor].floorz-(FOURSLEIGHT))
|
||||||
{
|
{
|
||||||
|
@ -369,7 +370,7 @@ int G_GetAngleDelta(int a,int na)
|
||||||
return (na-a);
|
return (na-a);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void X_AlterAng(int a)
|
static inline void X_AlterAng(int a)
|
||||||
{
|
{
|
||||||
intptr_t *moveptr = (intptr_t *)g_t[1];
|
intptr_t *moveptr = (intptr_t *)g_t[1];
|
||||||
int ticselapsed = (g_t[0])&31;
|
int ticselapsed = (g_t[0])&31;
|
||||||
|
@ -687,8 +688,7 @@ static int X_DoExecute(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
case CON_IFRND:
|
case CON_IFRND:
|
||||||
insptr++;
|
X_DoConditional(rnd(*(++insptr)));
|
||||||
X_DoConditional(rnd(*insptr));
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case CON_IFCANSHOOTTARGET:
|
case CON_IFCANSHOOTTARGET:
|
||||||
|
@ -840,8 +840,8 @@ static int X_DoExecute(void)
|
||||||
if (g_t[5]) g_t[1] = *(((intptr_t *)g_t[5])+1); // move
|
if (g_t[5]) g_t[1] = *(((intptr_t *)g_t[5])+1); // move
|
||||||
g_sp->hitag = *(((intptr_t *)g_t[5])+2); // move flags
|
g_sp->hitag = *(((intptr_t *)g_t[5])+2); // move flags
|
||||||
g_t[0] = g_t[2] = g_t[3] = 0; // count, actioncount... g_t[3] = ???
|
g_t[0] = g_t[2] = g_t[3] = 0; // count, actioncount... g_t[3] = ???
|
||||||
// if (A_CheckEnemySprite(g_sp) && g_sp->extra <= 0) // hack
|
if (A_CheckEnemySprite(g_sp) && g_sp->extra <= 0) // hack
|
||||||
// break;
|
break;
|
||||||
if (g_sp->hitag&random_angle)
|
if (g_sp->hitag&random_angle)
|
||||||
g_sp->ang = krand()&2047;
|
g_sp->ang = krand()&2047;
|
||||||
break;
|
break;
|
||||||
|
@ -1047,7 +1047,7 @@ static int X_DoExecute(void)
|
||||||
else if (G_CheckForSpaceFloor(g_sp->sectnum))
|
else if (G_CheckForSpaceFloor(g_sp->sectnum))
|
||||||
j = 0;
|
j = 0;
|
||||||
|
|
||||||
if (--ActorExtra[g_i].cgg == 0 || (sector[g_sp->sectnum].floorstat&2))
|
if (!ActorExtra[g_i].cgg-- || (sector[g_sp->sectnum].floorstat&2))
|
||||||
{
|
{
|
||||||
A_GetZLimits(g_i);
|
A_GetZLimits(g_i);
|
||||||
ActorExtra[g_i].cgg = 3;
|
ActorExtra[g_i].cgg = 3;
|
||||||
|
@ -1435,90 +1435,90 @@ static int X_DoExecute(void)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case CON_HEADSPRITESTAT:
|
case CON_HEADSPRITESTAT:
|
||||||
insptr++;
|
insptr++;
|
||||||
{
|
{
|
||||||
int i=*insptr++;
|
int i=*insptr++;
|
||||||
j=Gv_GetVar(*insptr++, g_i, g_p);
|
j=Gv_GetVar(*insptr++, g_i, g_p);
|
||||||
if ((j < 0 || j > MAXSTATUS) && g_scriptSanityChecks)
|
if ((j < 0 || j > MAXSTATUS) && g_scriptSanityChecks)
|
||||||
{
|
{
|
||||||
OSD_Printf(CON_ERROR "invalid status list %d\n",g_errorLineNum,keyw[g_tw],j);
|
OSD_Printf(CON_ERROR "invalid status list %d\n",g_errorLineNum,keyw[g_tw],j);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
Gv_SetVar(i,headspritestat[j],g_i,g_p);
|
Gv_SetVar(i,headspritestat[j],g_i,g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case CON_PREVSPRITESTAT:
|
case CON_PREVSPRITESTAT:
|
||||||
insptr++;
|
insptr++;
|
||||||
{
|
{
|
||||||
int i=*insptr++;
|
int i=*insptr++;
|
||||||
j=Gv_GetVar(*insptr++, g_i, g_p);
|
j=Gv_GetVar(*insptr++, g_i, g_p);
|
||||||
if ((j < 0 || j >= MAXSPRITES) && g_scriptSanityChecks)
|
if ((j < 0 || j >= MAXSPRITES) && g_scriptSanityChecks)
|
||||||
{
|
{
|
||||||
OSD_Printf(CON_ERROR "invalid sprite ID %d\n",g_errorLineNum,keyw[g_tw],j);
|
OSD_Printf(CON_ERROR "invalid sprite ID %d\n",g_errorLineNum,keyw[g_tw],j);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
Gv_SetVar(i,prevspritestat[j],g_i,g_p);
|
Gv_SetVar(i,prevspritestat[j],g_i,g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case CON_NEXTSPRITESTAT:
|
case CON_NEXTSPRITESTAT:
|
||||||
insptr++;
|
insptr++;
|
||||||
{
|
{
|
||||||
int i=*insptr++;
|
int i=*insptr++;
|
||||||
j=Gv_GetVar(*insptr++, g_i, g_p);
|
j=Gv_GetVar(*insptr++, g_i, g_p);
|
||||||
if ((j < 0 || j >= MAXSPRITES) && g_scriptSanityChecks)
|
if ((j < 0 || j >= MAXSPRITES) && g_scriptSanityChecks)
|
||||||
{
|
{
|
||||||
OSD_Printf(CON_ERROR "invalid sprite ID %d\n",g_errorLineNum,keyw[g_tw],j);
|
OSD_Printf(CON_ERROR "invalid sprite ID %d\n",g_errorLineNum,keyw[g_tw],j);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
Gv_SetVar(i,nextspritestat[j],g_i,g_p);
|
Gv_SetVar(i,nextspritestat[j],g_i,g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case CON_HEADSPRITESECT:
|
case CON_HEADSPRITESECT:
|
||||||
insptr++;
|
insptr++;
|
||||||
{
|
{
|
||||||
int i=*insptr++;
|
int i=*insptr++;
|
||||||
j=Gv_GetVar(*insptr++, g_i, g_p);
|
j=Gv_GetVar(*insptr++, g_i, g_p);
|
||||||
if ((j < 0 || j > numsectors) && g_scriptSanityChecks)
|
if ((j < 0 || j > numsectors) && g_scriptSanityChecks)
|
||||||
{
|
{
|
||||||
OSD_Printf(CON_ERROR "invalid sector %d\n",g_errorLineNum,keyw[g_tw],j);
|
OSD_Printf(CON_ERROR "invalid sector %d\n",g_errorLineNum,keyw[g_tw],j);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
Gv_SetVar(i,headspritesect[j],g_i,g_p);
|
Gv_SetVar(i,headspritesect[j],g_i,g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case CON_PREVSPRITESECT:
|
case CON_PREVSPRITESECT:
|
||||||
insptr++;
|
insptr++;
|
||||||
{
|
{
|
||||||
int i=*insptr++;
|
int i=*insptr++;
|
||||||
j=Gv_GetVar(*insptr++, g_i, g_p);
|
j=Gv_GetVar(*insptr++, g_i, g_p);
|
||||||
if ((j < 0 || j >= MAXSPRITES) && g_scriptSanityChecks)
|
if ((j < 0 || j >= MAXSPRITES) && g_scriptSanityChecks)
|
||||||
{
|
{
|
||||||
OSD_Printf(CON_ERROR "invalid sprite ID %d\n",g_errorLineNum,keyw[g_tw],j);
|
OSD_Printf(CON_ERROR "invalid sprite ID %d\n",g_errorLineNum,keyw[g_tw],j);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
Gv_SetVar(i,prevspritesect[j],g_i,g_p);
|
Gv_SetVar(i,prevspritesect[j],g_i,g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case CON_NEXTSPRITESECT:
|
case CON_NEXTSPRITESECT:
|
||||||
insptr++;
|
insptr++;
|
||||||
{
|
{
|
||||||
int i=*insptr++;
|
int i=*insptr++;
|
||||||
j=Gv_GetVar(*insptr++, g_i, g_p);
|
j=Gv_GetVar(*insptr++, g_i, g_p);
|
||||||
if ((j < 0 || j >= MAXSPRITES) && g_scriptSanityChecks)
|
if ((j < 0 || j >= MAXSPRITES) && g_scriptSanityChecks)
|
||||||
{
|
{
|
||||||
OSD_Printf(CON_ERROR "invalid sprite ID %d\n",g_errorLineNum,keyw[g_tw],j);
|
OSD_Printf(CON_ERROR "invalid sprite ID %d\n",g_errorLineNum,keyw[g_tw],j);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
Gv_SetVar(i,nextspritesect[j],g_i,g_p);
|
Gv_SetVar(i,nextspritesect[j],g_i,g_p);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case CON_GETKEYNAME:
|
case CON_GETKEYNAME:
|
||||||
insptr++;
|
insptr++;
|
||||||
{
|
{
|
||||||
|
@ -4231,7 +4231,7 @@ void A_LoadActor(int iActor)
|
||||||
|
|
||||||
void A_Execute(int iActor,int iPlayer,int lDist)
|
void A_Execute(int iActor,int iPlayer,int lDist)
|
||||||
{
|
{
|
||||||
int temp, temp2;
|
// int temp, temp2;
|
||||||
|
|
||||||
// if (actorscrptr[sprite[iActor].picnum] == 0) return;
|
// if (actorscrptr[sprite[iActor].picnum] == 0) return;
|
||||||
|
|
||||||
|
@ -4283,7 +4283,7 @@ void A_Execute(int iActor,int iPlayer,int lDist)
|
||||||
}
|
}
|
||||||
|
|
||||||
X_Move();
|
X_Move();
|
||||||
|
/*
|
||||||
if (ud.angleinterpolation)
|
if (ud.angleinterpolation)
|
||||||
{
|
{
|
||||||
temp = (g_sp->ang & 2047) - sprpos[g_i].ang;
|
temp = (g_sp->ang & 2047) - sprpos[g_i].ang;
|
||||||
|
@ -4298,7 +4298,7 @@ void A_Execute(int iActor,int iPlayer,int lDist)
|
||||||
sprpos[g_i].ang &= 2047;
|
sprpos[g_i].ang &= 2047;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
if (g_sp->statnum == 6)
|
if (g_sp->statnum == 6)
|
||||||
switch (DynamicTileMap[g_sp->picnum])
|
switch (DynamicTileMap[g_sp->picnum])
|
||||||
{
|
{
|
||||||
|
|
|
@ -27,6 +27,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
#include "osd.h"
|
#include "osd.h"
|
||||||
*/
|
*/
|
||||||
// this is all the crap for accessing the game's structs through the CON VM
|
// this is all the crap for accessing the game's structs through the CON VM
|
||||||
|
// I got a 3-4 fps gain by inlining these...
|
||||||
|
|
||||||
static inline void X_AccessUserdef(int iSet, int lLabelID, int lVar2)
|
static inline void X_AccessUserdef(int iSet, int lLabelID, int lVar2)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue