mirror of
https://github.com/DrBeef/Raze.git
synced 2024-11-15 08:52:00 +00:00
Misc cleanups, mostly const correctness
git-svn-id: https://svn.eduke32.com/eduke32@6244 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
50bc1aa2ba
commit
65a2c38ba8
3 changed files with 173 additions and 204 deletions
|
@ -848,7 +848,7 @@ void G_AddGameLight(int lightRadius, int spriteNum, int zOffset, int lightRange,
|
|||
#endif
|
||||
}
|
||||
|
||||
ACTOR_STATIC void A_MaybeAwakenBadGuys(int spriteNum)
|
||||
ACTOR_STATIC void A_MaybeAwakenBadGuys(int const spriteNum)
|
||||
{
|
||||
if (sprite[spriteNum].sectnum == MAXSECTORS)
|
||||
return;
|
||||
|
@ -882,7 +882,7 @@ ACTOR_STATIC void A_MaybeAwakenBadGuys(int spriteNum)
|
|||
// sleeping monsters, etc
|
||||
ACTOR_STATIC void G_MoveZombieActors(void)
|
||||
{
|
||||
int spriteNum = headspritestat[STAT_ZOMBIEACTOR], j;
|
||||
int spriteNum = headspritestat[STAT_ZOMBIEACTOR], canSeePlayer;
|
||||
|
||||
while (spriteNum >= 0)
|
||||
{
|
||||
|
@ -929,13 +929,13 @@ ACTOR_STATIC void G_MoveZombieActors(void)
|
|||
continue;
|
||||
}
|
||||
|
||||
j = cansee(s.x, s.y, s.z, sectNum, p.x, p.y, p.z, pSectnum);
|
||||
canSeePlayer = cansee(s.x, s.y, s.z, sectNum, p.x, p.y, p.z, pSectnum);
|
||||
}
|
||||
else
|
||||
j = cansee(pSprite->x, pSprite->y, pSprite->z - ((krand() & 31) << 8), pSprite->sectnum, pPlayer->opos.x,
|
||||
canSeePlayer = cansee(pSprite->x, pSprite->y, pSprite->z - ((krand() & 31) << 8), pSprite->sectnum, pPlayer->opos.x,
|
||||
pPlayer->opos.y, pPlayer->opos.z - ((krand() & 31) << 8), pPlayer->cursectnum);
|
||||
|
||||
if (j)
|
||||
if (canSeePlayer)
|
||||
{
|
||||
switch (DYNAMICTILEMAP(pSprite->picnum))
|
||||
{
|
||||
|
@ -995,10 +995,10 @@ ACTOR_STATIC void G_MoveZombieActors(void)
|
|||
}
|
||||
|
||||
// stupid name, but it's what the function does.
|
||||
static FORCE_INLINE int G_FindExplosionInSector(int sectnum)
|
||||
static FORCE_INLINE int G_FindExplosionInSector(int const sectNum)
|
||||
{
|
||||
for (bssize_t SPRITES_OF(STAT_MISC, i))
|
||||
if (PN(i) == EXPLOSION2 && sectnum == SECT(i))
|
||||
if (PN(i) == EXPLOSION2 && sectNum == SECT(i))
|
||||
return i;
|
||||
|
||||
return -1;
|
||||
|
@ -1010,7 +1010,7 @@ static FORCE_INLINE void P_Nudge(int playerNum, int spriteNum, int shiftLeft)
|
|||
g_player[playerNum].ps->vel.y += actor[spriteNum].extra * (sintable[actor[spriteNum].ang & 2047]) << shiftLeft;
|
||||
}
|
||||
|
||||
int A_IncurDamage(int spriteNum)
|
||||
int A_IncurDamage(int const spriteNum)
|
||||
{
|
||||
spritetype *const pSprite = &sprite[spriteNum];
|
||||
actor_t *const pActor = &actor[spriteNum];
|
||||
|
@ -1120,7 +1120,7 @@ void A_MoveCyclers(void)
|
|||
|
||||
void A_MoveDummyPlayers(void)
|
||||
{
|
||||
int32_t spriteNum = headspritestat[STAT_DUMMYPLAYER];
|
||||
int spriteNum = headspritestat[STAT_DUMMYPLAYER];
|
||||
|
||||
while (spriteNum >= 0)
|
||||
{
|
||||
|
@ -1168,7 +1168,7 @@ static void P_FinishWaterChange(int, DukePlayer_t *, int, int, int);
|
|||
|
||||
ACTOR_STATIC void G_MovePlayers(void)
|
||||
{
|
||||
int32_t spriteNum = headspritestat[STAT_PLAYER];
|
||||
int spriteNum = headspritestat[STAT_PLAYER];
|
||||
|
||||
while (spriteNum >= 0)
|
||||
{
|
||||
|
@ -1190,7 +1190,7 @@ ACTOR_STATIC void G_MovePlayers(void)
|
|||
}
|
||||
else
|
||||
{
|
||||
int32_t otherx;
|
||||
int32_t otherPlayerDist;
|
||||
#ifdef YAX_ENABLE
|
||||
// TROR water submerge/emerge
|
||||
int const playerSectnum = pSprite->sectnum;
|
||||
|
@ -1199,30 +1199,25 @@ ACTOR_STATIC void G_MovePlayers(void)
|
|||
|
||||
if (A_CheckNoSE7Water((uspritetype const *)pSprite, playerSectnum, sectorLotag, &otherSector))
|
||||
{
|
||||
int32_t k = 0;
|
||||
|
||||
// NOTE: Compare with G_MoveTransports().
|
||||
pPlayer->on_warping_sector = 1;
|
||||
|
||||
if (sectorLotag==ST_1_ABOVE_WATER)
|
||||
k = P_Submerge(spriteNum, P_GetP(pSprite), pPlayer, playerSectnum, otherSector);
|
||||
else
|
||||
k = P_Emerge(spriteNum, P_GetP(pSprite), pPlayer, playerSectnum, otherSector);
|
||||
|
||||
if (k == 1)
|
||||
if (((sectorLotag == ST_1_ABOVE_WATER) ?
|
||||
P_Submerge(spriteNum, P_GetP(pSprite), pPlayer, playerSectnum, otherSector) :
|
||||
P_Emerge(spriteNum, P_GetP(pSprite), pPlayer, playerSectnum, otherSector) == 1))
|
||||
P_FinishWaterChange(spriteNum, pPlayer, sectorLotag, -1, otherSector);
|
||||
}
|
||||
#endif
|
||||
if (g_netServer || ud.multimode > 1)
|
||||
otherp = P_FindOtherPlayer(P_GetP(pSprite), &otherx);
|
||||
otherp = P_FindOtherPlayer(P_GetP(pSprite), &otherPlayerDist);
|
||||
else
|
||||
{
|
||||
otherp = P_GetP(pSprite);
|
||||
otherx = 0;
|
||||
otherPlayerDist = 0;
|
||||
}
|
||||
|
||||
if (G_HaveActor(sprite[spriteNum].picnum))
|
||||
A_Execute(spriteNum, P_GetP(pSprite), otherx);
|
||||
A_Execute(spriteNum, P_GetP(pSprite), otherPlayerDist);
|
||||
|
||||
if (g_netServer || ud.multimode > 1)
|
||||
{
|
||||
|
@ -1230,7 +1225,7 @@ ACTOR_STATIC void G_MovePlayers(void)
|
|||
{
|
||||
if (pSprite->yrepeat > 32 && sprite[g_player[otherp].ps->i].yrepeat < 32)
|
||||
{
|
||||
if (otherx < 1400 && pPlayer->knee_incs == 0)
|
||||
if (otherPlayerDist < 1400 && pPlayer->knee_incs == 0)
|
||||
{
|
||||
pPlayer->knee_incs = 1;
|
||||
pPlayer->weapon_pos = -1;
|
||||
|
@ -1359,23 +1354,23 @@ ACTOR_STATIC void G_MoveFX(void)
|
|||
|
||||
if (pSprite->lotag >= 1000 && pSprite->lotag < 2000)
|
||||
{
|
||||
int32_t x = ldist(&sprite[pPlayer->i],pSprite);
|
||||
int playerDist = ldist(&sprite[pPlayer->i],pSprite);
|
||||
|
||||
#ifdef SPLITSCREEN_MOD_HACKS
|
||||
if (g_fakeMultiMode==2)
|
||||
{
|
||||
// HACK for splitscreen mod
|
||||
int32_t otherdist = ldist(&sprite[g_player[1].ps->i],pSprite);
|
||||
x = min(x, otherdist);
|
||||
playerDist = min(playerDist, otherdist);
|
||||
}
|
||||
#endif
|
||||
|
||||
if (x < spriteHitag && T1(spriteNum) == 0)
|
||||
if (playerDist < spriteHitag && T1(spriteNum) == 0)
|
||||
{
|
||||
FX_SetReverb(pSprite->lotag - 1000);
|
||||
T1(spriteNum) = 1;
|
||||
}
|
||||
if (x >= spriteHitag && T1(spriteNum) == 1)
|
||||
else if (playerDist >= spriteHitag && T1(spriteNum) == 1)
|
||||
{
|
||||
FX_SetReverb(0);
|
||||
FX_SetReverbDelay(0);
|
||||
|
@ -1387,7 +1382,7 @@ ACTOR_STATIC void G_MoveFX(void)
|
|||
{
|
||||
if (g_sounds[pSprite->lotag].m & SF_MSFX)
|
||||
{
|
||||
int32_t playerDist = dist(&sprite[pPlayer->i], pSprite);
|
||||
int playerDist = dist(&sprite[pPlayer->i], pSprite);
|
||||
|
||||
#ifdef SPLITSCREEN_MOD_HACKS
|
||||
if (g_fakeMultiMode==2)
|
||||
|
@ -1442,9 +1437,8 @@ ACTOR_STATIC void G_MoveFX(void)
|
|||
T5(spriteNum)--;
|
||||
else
|
||||
{
|
||||
int32_t p;
|
||||
for (TRAVERSE_CONNECT(p))
|
||||
if (p == myconnectindex && g_player[p].ps->cursectnum == pSprite->sectnum)
|
||||
for (int TRAVERSE_CONNECT(playerNum))
|
||||
if (playerNum == myconnectindex && g_player[playerNum].ps->cursectnum == pSprite->sectnum)
|
||||
{
|
||||
S_PlaySound(pSprite->lotag + (unsigned)g_globalRandom % (pSprite->hitag+1));
|
||||
T5(spriteNum) = GAMETICSPERSEC*40 + g_globalRandom%(GAMETICSPERSEC*40);
|
||||
|
@ -1462,7 +1456,7 @@ next_sprite:
|
|||
|
||||
ACTOR_STATIC void G_MoveFallers(void)
|
||||
{
|
||||
int32_t spriteNum = headspritestat[STAT_FALLER];
|
||||
int spriteNum = headspritestat[STAT_FALLER];
|
||||
|
||||
while (spriteNum >= 0)
|
||||
{
|
||||
|
@ -1472,11 +1466,12 @@ ACTOR_STATIC void G_MoveFallers(void)
|
|||
|
||||
if (T1(spriteNum) == 0)
|
||||
{
|
||||
const int32_t oextra = pSprite->extra;
|
||||
const int16_t oextra = pSprite->extra;
|
||||
int j;
|
||||
|
||||
pSprite->z -= ZOFFSET2;
|
||||
T2(spriteNum) = pSprite->ang;
|
||||
|
||||
if ((j = A_IncurDamage(spriteNum)) >= 0)
|
||||
{
|
||||
if (j == FIREEXT || j == RPG || j == RADIUSEXPLOSION || j == SEENINE || j == OOZFILTER)
|
||||
|
@ -1519,7 +1514,7 @@ ACTOR_STATIC void G_MoveFallers(void)
|
|||
}
|
||||
else
|
||||
{
|
||||
int32_t x;
|
||||
int32_t spriteGravity = g_spriteGravity;
|
||||
|
||||
if (pSprite->xvel > 0)
|
||||
{
|
||||
|
@ -1528,26 +1523,22 @@ ACTOR_STATIC void G_MoveFallers(void)
|
|||
}
|
||||
|
||||
if (EDUKE32_PREDICT_FALSE(G_CheckForSpaceFloor(pSprite->sectnum)))
|
||||
x = 0;
|
||||
else
|
||||
{
|
||||
if (EDUKE32_PREDICT_FALSE(G_CheckForSpaceCeiling(pSprite->sectnum)))
|
||||
x = g_spriteGravity/6;
|
||||
else
|
||||
x = g_spriteGravity;
|
||||
}
|
||||
spriteGravity = 0;
|
||||
else if (EDUKE32_PREDICT_FALSE(G_CheckForSpaceCeiling(pSprite->sectnum)))
|
||||
spriteGravity = g_spriteGravity / 6;
|
||||
|
||||
if (pSprite->z < (sector[sectNum].floorz-ZOFFSET))
|
||||
{
|
||||
pSprite->zvel += x;
|
||||
pSprite->zvel += spriteGravity;
|
||||
if (pSprite->zvel > 6144)
|
||||
pSprite->zvel = 6144;
|
||||
pSprite->z += pSprite->zvel;
|
||||
}
|
||||
|
||||
if ((sector[sectNum].floorz-pSprite->z) < ZOFFSET2)
|
||||
{
|
||||
int32_t j = 1+(krand()&7);
|
||||
for (x=0; x<j; x++) RANDOMSCRAP(pSprite, spriteNum);
|
||||
for (bsize_t x=0; x<1+(krand()&7); ++x)
|
||||
RANDOMSCRAP(pSprite, spriteNum);
|
||||
DELETE_SPRITE_AND_CONTINUE(spriteNum);
|
||||
}
|
||||
}
|
||||
|
@ -1560,15 +1551,15 @@ next_sprite:
|
|||
|
||||
ACTOR_STATIC void G_MoveStandables(void)
|
||||
{
|
||||
int32_t spriteNum = headspritestat[STAT_STANDABLE], j, switchPic;
|
||||
int32_t l=0, x;
|
||||
int spriteNum = headspritestat[STAT_STANDABLE], j, switchPic;
|
||||
int32_t playerDist;
|
||||
|
||||
while (spriteNum >= 0)
|
||||
{
|
||||
const int32_t nextSprite = nextspritestat[spriteNum];
|
||||
const int nextSprite = nextspritestat[spriteNum];
|
||||
int32_t *const pData = &actor[spriteNum].t_data[0];
|
||||
spritetype *const pSprite = &sprite[spriteNum];
|
||||
const int32_t sectNum = pSprite->sectnum;
|
||||
const int sectNum = pSprite->sectnum;
|
||||
|
||||
if (sectNum < 0)
|
||||
DELETE_SPRITE_AND_CONTINUE(spriteNum);
|
||||
|
@ -1779,9 +1770,9 @@ ACTOR_STATIC void G_MoveStandables(void)
|
|||
}
|
||||
else
|
||||
{
|
||||
A_FindPlayer(pSprite,&x);
|
||||
A_FindPlayer(pSprite,&playerDist);
|
||||
|
||||
if (x > 512)
|
||||
if (playerDist > 512)
|
||||
{
|
||||
pData[0] = 0;
|
||||
pSprite->picnum = WATERFOUNTAIN;
|
||||
|
@ -1853,9 +1844,11 @@ ACTOR_STATIC void G_MoveStandables(void)
|
|||
|
||||
if (T3(spriteNum) == 8)
|
||||
{
|
||||
for (j=0; j<5; j++) RANDOMSCRAP(pSprite, spriteNum);
|
||||
x = pSprite->extra;
|
||||
A_RadiusDamage(spriteNum, g_tripbombRadius, x>>2,x>>1,x-(x>>2),x);
|
||||
for (j=0; j<5; j++)
|
||||
RANDOMSCRAP(pSprite, spriteNum);
|
||||
|
||||
int const dmg = pSprite->extra;
|
||||
A_RadiusDamage(spriteNum, g_tripbombRadius, dmg>>2, dmg>>1, dmg-(dmg>>2), dmg);
|
||||
|
||||
j = A_Spawn(spriteNum,EXPLOSION2);
|
||||
A_PlaySound(LASERTRIP_EXPLODE,j);
|
||||
|
@ -1875,30 +1868,34 @@ ACTOR_STATIC void G_MoveStandables(void)
|
|||
}
|
||||
else
|
||||
{
|
||||
const int32_t oextra = pSprite->extra;
|
||||
int const oldExtra = pSprite->extra;
|
||||
int const oldAng = pSprite->ang;
|
||||
|
||||
pSprite->extra = 1;
|
||||
l = pSprite->ang;
|
||||
if (A_IncurDamage(spriteNum) >= 0)
|
||||
{
|
||||
actor[spriteNum].t_data[6] = 3;
|
||||
T3(spriteNum) = 16;
|
||||
}
|
||||
pSprite->extra = oextra;
|
||||
pSprite->ang = l;
|
||||
pSprite->extra = oldExtra;
|
||||
pSprite->ang = oldAng;
|
||||
}
|
||||
|
||||
switch (T1(spriteNum))
|
||||
{
|
||||
default:
|
||||
A_FindPlayer(pSprite,&x);
|
||||
if (x > 768 || T1(spriteNum) > 16) T1(spriteNum)++;
|
||||
{
|
||||
int32_t playerDist;
|
||||
A_FindPlayer(pSprite, &playerDist);
|
||||
if (playerDist > 768 || T1(spriteNum) > 16) T1(spriteNum)++;
|
||||
break;
|
||||
}
|
||||
|
||||
case 32:
|
||||
{
|
||||
int16_t m;
|
||||
int16_t hitSprite;
|
||||
int const oldAng = pSprite->ang;
|
||||
|
||||
l = pSprite->ang;
|
||||
pSprite->ang = T6(spriteNum);
|
||||
|
||||
T4(spriteNum) = pSprite->x;
|
||||
|
@ -1910,11 +1907,10 @@ ACTOR_STATIC void G_MoveStandables(void)
|
|||
|
||||
setsprite(spriteNum,(vec3_t *)pSprite);
|
||||
|
||||
x = A_CheckHitSprite(spriteNum, &m);
|
||||
int hitDist = A_CheckHitSprite(spriteNum, &hitSprite);
|
||||
|
||||
actor[spriteNum].lastv.x = x;
|
||||
|
||||
pSprite->ang = l;
|
||||
actor[spriteNum].lastv.x = hitDist;
|
||||
pSprite->ang = oldAng;
|
||||
|
||||
// if(lTripBombControl & TRIPBOMB_TRIPWIRE)
|
||||
if (actor[spriteNum].t_data[6] != 1)
|
||||
|
@ -1922,7 +1918,7 @@ ACTOR_STATIC void G_MoveStandables(void)
|
|||
// we're on a trip wire
|
||||
int16_t cursectnum;
|
||||
|
||||
while (x > 0)
|
||||
while (hitDist > 0)
|
||||
{
|
||||
j = A_Spawn(spriteNum,LASERLINE);
|
||||
setsprite(j,(vec3_t *)&sprite[j]);
|
||||
|
@ -1932,12 +1928,12 @@ ACTOR_STATIC void G_MoveStandables(void)
|
|||
pSprite->x += sintable[(T6(spriteNum)+512)&2047]>>4;
|
||||
pSprite->y += sintable[(T6(spriteNum))&2047]>>4;
|
||||
|
||||
if (x < 1024)
|
||||
if (hitDist < 1024)
|
||||
{
|
||||
sprite[j].xrepeat = x>>5;
|
||||
sprite[j].xrepeat = hitDist>>5;
|
||||
break;
|
||||
}
|
||||
x -= 1024;
|
||||
hitDist -= 1024;
|
||||
|
||||
cursectnum = pSprite->sectnum;
|
||||
updatesector(pSprite->x, pSprite->y, &cursectnum);
|
||||
|
@ -1955,7 +1951,7 @@ ACTOR_STATIC void G_MoveStandables(void)
|
|||
setsprite(spriteNum,(vec3_t *)pSprite);
|
||||
T4(spriteNum) = T3(spriteNum) = 0;
|
||||
|
||||
if (m >= 0 && actor[spriteNum].t_data[6] != 1)
|
||||
if (hitSprite >= 0 && actor[spriteNum].t_data[6] != 1)
|
||||
{
|
||||
actor[spriteNum].t_data[6] = 3;
|
||||
T3(spriteNum) = 13;
|
||||
|
@ -1965,6 +1961,7 @@ ACTOR_STATIC void G_MoveStandables(void)
|
|||
}
|
||||
|
||||
case 33:
|
||||
{
|
||||
T2(spriteNum)++;
|
||||
|
||||
T4(spriteNum) = pSprite->x;
|
||||
|
@ -1974,24 +1971,25 @@ ACTOR_STATIC void G_MoveStandables(void)
|
|||
pSprite->y += sintable[(T6(spriteNum))&2047]>>9;
|
||||
pSprite->z -= (3<<8);
|
||||
|
||||
setsprite(spriteNum,(vec3_t *)pSprite);
|
||||
setsprite(spriteNum, (vec3_t *) pSprite);
|
||||
|
||||
x = A_CheckHitSprite(spriteNum, NULL);
|
||||
int hitDist = A_CheckHitSprite(spriteNum, NULL);
|
||||
|
||||
pSprite->x = T4(spriteNum);
|
||||
pSprite->y = T5(spriteNum);
|
||||
pSprite->z += (3<<8);
|
||||
setsprite(spriteNum,(vec3_t *)pSprite);
|
||||
setsprite(spriteNum, (vec3_t *) pSprite);
|
||||
|
||||
// if( Actor[i].lastvx != x && lTripBombControl & TRIPBOMB_TRIPWIRE)
|
||||
if (actor[spriteNum].lastv.x != x && actor[spriteNum].t_data[6] != 1)
|
||||
// if( Actor[i].lastvx != x && lTripBombControl & TRIPBOMB_TRIPWIRE)
|
||||
if (actor[spriteNum].lastv.x != hitDist && actor[spriteNum].t_data[6] != 1)
|
||||
{
|
||||
actor[spriteNum].t_data[6] = 3;
|
||||
T3(spriteNum) = 13;
|
||||
A_PlaySound(LASERTRIP_ARMING,spriteNum);
|
||||
A_PlaySound(LASERTRIP_ARMING, spriteNum);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
goto next_sprite;
|
||||
}
|
||||
|
@ -2037,14 +2035,15 @@ crack_default:
|
|||
}
|
||||
else if (pSprite->picnum == FIREEXT)
|
||||
{
|
||||
int32_t k;
|
||||
|
||||
if (A_IncurDamage(spriteNum) < 0)
|
||||
goto next_sprite;
|
||||
|
||||
for (k=0; k<16; k++)
|
||||
for (bsize_t k=0; k<16; k++)
|
||||
{
|
||||
j = A_InsertSprite(SECT(spriteNum),SX(spriteNum),SY(spriteNum),SZ(spriteNum)-(krand()%(48<<8)),SCRAP3+(krand()&3),-8,48,48,krand()&2047,(krand()&63)+64,-(krand()&4095)-(sprite[spriteNum].zvel>>2),spriteNum,5);
|
||||
j = A_InsertSprite(SECT(spriteNum), SX(spriteNum), SY(spriteNum), SZ(spriteNum) - (krand() % (48 << 8)),
|
||||
SCRAP3 + (krand() & 3), -8, 48, 48, krand() & 2047, (krand() & 63) + 64,
|
||||
-(krand() & 4095) - (sprite[spriteNum].zvel >> 2), spriteNum, 5);
|
||||
|
||||
sprite[j].pal = 2;
|
||||
}
|
||||
|
||||
|
@ -2062,8 +2061,8 @@ crack_default:
|
|||
sprite[j].shade = -32;
|
||||
}
|
||||
|
||||
x = pSprite->extra;
|
||||
A_RadiusDamage(spriteNum, g_pipebombRadius,x>>2, x-(x>>1),x-(x>>2), x);
|
||||
int const dmg = pSprite->extra;
|
||||
A_RadiusDamage(spriteNum, g_pipebombRadius,dmg>>2, dmg-(dmg>>1),dmg-(dmg>>2), dmg);
|
||||
j = A_Spawn(spriteNum,EXPLOSION2);
|
||||
A_PlaySound(PIPEBOMB_EXPLODE,j);
|
||||
|
||||
|
@ -2165,14 +2164,16 @@ DETONATE:
|
|||
pSprite->z -= ZOFFSET5;
|
||||
|
||||
if (pSprite->xrepeat)
|
||||
for (x=0; x<8; x++) RANDOMSCRAP(pSprite, spriteNum);
|
||||
for (bsize_t x=0; x<8; x++)
|
||||
RANDOMSCRAP(pSprite, spriteNum);
|
||||
|
||||
if ((pData[3] == 1 && pSprite->xrepeat) || (int16_t)pSprite->lotag == -99)
|
||||
{
|
||||
int32_t j = A_Spawn(spriteNum,EXPLOSION2);
|
||||
x = pSprite->extra;
|
||||
A_RadiusDamage(spriteNum,g_seenineRadius,x>>2, x-(x>>1),x-(x>>2), x);
|
||||
A_PlaySound(PIPEBOMB_EXPLODE,j);
|
||||
int const newSprite = A_Spawn(spriteNum,EXPLOSION2);
|
||||
int const dmg = pSprite->extra;
|
||||
|
||||
A_RadiusDamage(spriteNum,g_seenineRadius,dmg>>2, dmg-(dmg>>1),dmg-(dmg>>2), dmg);
|
||||
A_PlaySound(PIPEBOMB_EXPLODE, newSprite);
|
||||
}
|
||||
|
||||
DELETE_SPRITE_AND_CONTINUE(spriteNum);
|
||||
|
@ -2184,8 +2185,7 @@ DETONATE:
|
|||
{
|
||||
if (pSprite->yvel == 1)
|
||||
{
|
||||
pSprite->hitag--;
|
||||
if ((int16_t)pSprite->hitag <= 0)
|
||||
if ((int16_t)--pSprite->hitag <= 0)
|
||||
{
|
||||
G_OperateSectors(sectNum,spriteNum);
|
||||
|
||||
|
@ -2242,7 +2242,8 @@ DETONATE:
|
|||
DELETE_SPRITE_AND_CONTINUE(spriteNum);
|
||||
|
||||
{
|
||||
const int32_t p = A_FindPlayer(pSprite, &x);
|
||||
int32_t playerDist;
|
||||
int const p = A_FindPlayer(pSprite, &playerDist);
|
||||
const DukePlayer_t *const ps = g_player[p].ps;
|
||||
|
||||
if (dist(&sprite[ps->i], pSprite) < VIEWSCREEN_ACTIVE_DISTANCE)
|
||||
|
@ -2281,53 +2282,11 @@ DETONATE:
|
|||
break;
|
||||
|
||||
case SIDEBOLT1__STATIC:
|
||||
// case SIDEBOLT1+1:
|
||||
// case SIDEBOLT1+2:
|
||||
// case SIDEBOLT1+3:
|
||||
A_FindPlayer(pSprite, &x);
|
||||
if (x > 20480)
|
||||
goto next_sprite;
|
||||
|
||||
CLEAR_THE_BOLT2:
|
||||
if (pData[2])
|
||||
{
|
||||
pData[2]--;
|
||||
goto next_sprite;
|
||||
}
|
||||
if ((pSprite->xrepeat | pSprite->yrepeat) == 0)
|
||||
{
|
||||
pSprite->xrepeat = pData[0];
|
||||
pSprite->yrepeat = pData[1];
|
||||
}
|
||||
if ((krand() & 8) == 0)
|
||||
{
|
||||
pData[0] = pSprite->xrepeat;
|
||||
pData[1] = pSprite->yrepeat;
|
||||
pData[2] = g_globalRandom & 4;
|
||||
pSprite->xrepeat = pSprite->yrepeat = 0;
|
||||
goto CLEAR_THE_BOLT2;
|
||||
}
|
||||
pSprite->picnum++;
|
||||
|
||||
// NOTE: Um, this 'l' was assigned to last at the beginning of this function.
|
||||
// SIDEBOLT1 never gets translucent as a consequence, unlike BOLT1.
|
||||
if (l & 1)
|
||||
pSprite->cstat ^= 2;
|
||||
|
||||
if ((krand() & 1) && sector[sectNum].floorpicnum == HURTRAIL)
|
||||
A_PlaySound(SHORT_CIRCUIT, spriteNum);
|
||||
|
||||
if (pSprite->picnum == SIDEBOLT1 + 4)
|
||||
pSprite->picnum = SIDEBOLT1;
|
||||
|
||||
goto next_sprite;
|
||||
|
||||
case BOLT1__STATIC:
|
||||
// case BOLT1+1:
|
||||
// case BOLT1+2:
|
||||
// case BOLT1+3:
|
||||
A_FindPlayer(pSprite, &x);
|
||||
if (x > 20480)
|
||||
{
|
||||
int32_t playerDist;
|
||||
A_FindPlayer(pSprite, &playerDist);
|
||||
if (playerDist > 20480)
|
||||
goto next_sprite;
|
||||
|
||||
if (pData[3] == 0)
|
||||
|
@ -2337,8 +2296,11 @@ DETONATE:
|
|||
if (pData[2])
|
||||
{
|
||||
pData[2]--;
|
||||
sector[sectNum].floorshade = 20;
|
||||
sector[sectNum].ceilingshade = 20;
|
||||
if (DYNAMICTILEMAP(switchPic) == BOLT1__STATIC)
|
||||
{
|
||||
sector[sectNum].floorshade = 20;
|
||||
sector[sectNum].ceilingshade = 20;
|
||||
}
|
||||
goto next_sprite;
|
||||
}
|
||||
if ((pSprite->xrepeat | pSprite->yrepeat) == 0)
|
||||
|
@ -2356,29 +2318,37 @@ DETONATE:
|
|||
}
|
||||
pSprite->picnum++;
|
||||
|
||||
l = g_globalRandom & 7;
|
||||
pSprite->xrepeat = l + 8;
|
||||
int const randomRepeat = g_globalRandom & 7;
|
||||
pSprite->xrepeat = randomRepeat + 8;
|
||||
|
||||
if (l & 1)
|
||||
if (randomRepeat & 1)
|
||||
pSprite->cstat ^= 2;
|
||||
|
||||
if (pSprite->picnum == (BOLT1 + 1) && (krand() & 7) == 0 && sector[sectNum].floorpicnum == HURTRAIL)
|
||||
if ((pSprite->picnum == (BOLT1 + 1) || pSprite->picnum == (SIDEBOLT1 + 1))
|
||||
&& (krand() & 7) == 0 && sector[sectNum].floorpicnum == HURTRAIL)
|
||||
A_PlaySound(SHORT_CIRCUIT, spriteNum);
|
||||
|
||||
if (pSprite->picnum == BOLT1 + 4)
|
||||
pSprite->picnum = BOLT1;
|
||||
if (DYNAMICTILEMAP(switchPic) == BOLT1__STATIC)
|
||||
{
|
||||
if (pSprite->picnum == BOLT1 + 4)
|
||||
pSprite->picnum = BOLT1;
|
||||
|
||||
if (pSprite->picnum & 1)
|
||||
{
|
||||
sector[sectNum].floorshade = 0;
|
||||
sector[sectNum].ceilingshade = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
sector[sectNum].floorshade = 20;
|
||||
sector[sectNum].ceilingshade = 20;
|
||||
if (pSprite->picnum & 1)
|
||||
{
|
||||
sector[sectNum].floorshade = 0;
|
||||
sector[sectNum].ceilingshade = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
sector[sectNum].floorshade = 20;
|
||||
sector[sectNum].ceilingshade = 20;
|
||||
}
|
||||
}
|
||||
else if (pSprite->picnum == SIDEBOLT1 + 4)
|
||||
pSprite->picnum = SIDEBOLT1;
|
||||
|
||||
goto next_sprite;
|
||||
}
|
||||
|
||||
case WATERDRIP__STATIC:
|
||||
|
||||
|
@ -2417,8 +2387,7 @@ DETONATE:
|
|||
goto next_sprite;
|
||||
|
||||
case DOORSHOCK__STATIC:
|
||||
j = klabs(sector[sectNum].ceilingz - sector[sectNum].floorz) >> 9;
|
||||
pSprite->yrepeat = j + 4;
|
||||
pSprite->yrepeat = (klabs(sector[sectNum].ceilingz - sector[sectNum].floorz) >> 9) + 4;
|
||||
pSprite->xrepeat = 16;
|
||||
pSprite->z = sector[sectNum].floorz;
|
||||
goto next_sprite;
|
||||
|
@ -2426,27 +2395,26 @@ DETONATE:
|
|||
case TOUCHPLATE__STATIC:
|
||||
if (pData[1] == 1 && (int16_t)pSprite->hitag >= 0) // Move the sector floor
|
||||
{
|
||||
x = sector[sectNum].floorz;
|
||||
int const floorZ = sector[sectNum].floorz;
|
||||
|
||||
if (pData[3] == 1)
|
||||
{
|
||||
if (x >= pData[2])
|
||||
if (floorZ >= pData[2])
|
||||
{
|
||||
sector[sectNum].floorz = x;
|
||||
sector[sectNum].floorz = floorZ;
|
||||
pData[1] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
int32_t p;
|
||||
sector[sectNum].floorz += sector[sectNum].extra;
|
||||
p = G_CheckPlayerInSector(sectNum);
|
||||
if (p >= 0)
|
||||
g_player[p].ps->pos.z += sector[sectNum].extra;
|
||||
int const playerNum = G_CheckPlayerInSector(sectNum);
|
||||
if (playerNum >= 0)
|
||||
g_player[playerNum].ps->pos.z += sector[sectNum].extra;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (x <= pSprite->z)
|
||||
if (floorZ <= pSprite->z)
|
||||
{
|
||||
sector[sectNum].floorz = pSprite->z;
|
||||
pData[1] = 0;
|
||||
|
@ -2538,8 +2506,9 @@ DETONATE:
|
|||
if (!G_HaveActor(sprite[spriteNum].picnum))
|
||||
goto next_sprite;
|
||||
{
|
||||
int32_t p = A_FindPlayer(pSprite, &x);
|
||||
A_Execute(spriteNum, p, x);
|
||||
int32_t playerDist;
|
||||
int const playerNum = A_FindPlayer(pSprite, &playerDist);
|
||||
A_Execute(spriteNum, playerNum, playerDist);
|
||||
}
|
||||
goto next_sprite;
|
||||
}
|
||||
|
@ -2550,9 +2519,9 @@ DETONATE:
|
|||
}
|
||||
}
|
||||
|
||||
ACTOR_STATIC void A_DoProjectileBounce(int32_t i)
|
||||
ACTOR_STATIC void A_DoProjectileBounce(int const spriteNum)
|
||||
{
|
||||
spritetype * const pSprite = &sprite[i];
|
||||
spritetype * const pSprite = &sprite[spriteNum];
|
||||
int32_t const hitSectnum = pSprite->sectnum;
|
||||
int const firstWall = sector[hitSectnum].wallptr;
|
||||
int const secondWall = wall[firstWall].point2;
|
||||
|
@ -2560,7 +2529,7 @@ ACTOR_STATIC void A_DoProjectileBounce(int32_t i)
|
|||
vec3_t vect = { mulscale10(pSprite->xvel, sintable[(pSprite->ang + 512) & 2047]),
|
||||
mulscale10(pSprite->xvel, sintable[pSprite->ang & 2047]), pSprite->zvel };
|
||||
|
||||
int k = (pSprite->z<(actor[i].floorz + actor[i].ceilingz)>> 1) ? sector[hitSectnum].ceilingheinum
|
||||
int k = (pSprite->z<(actor[spriteNum].floorz + actor[spriteNum].ceilingz)>> 1) ? sector[hitSectnum].ceilingheinum
|
||||
: sector[hitSectnum].floorheinum;
|
||||
|
||||
vec3_t const da = { mulscale14(k, sintable[(wallAngle)&2047]),
|
||||
|
@ -2605,19 +2574,19 @@ ACTOR_STATIC void P_HandleBeingSpitOn(DukePlayer_t * const ps)
|
|||
|
||||
static void A_DoProjectileEffects(int spriteNum, const vec3_t *davect, int radiusDamage)
|
||||
{
|
||||
const projectile_t *pProj = &SpriteProjectile[spriteNum];
|
||||
projectile_t const * const pProj = &SpriteProjectile[spriteNum];
|
||||
|
||||
if (pProj->spawns >= 0)
|
||||
{
|
||||
int const k = A_Spawn(spriteNum,pProj->spawns);
|
||||
int const newSpr = A_Spawn(spriteNum,pProj->spawns);
|
||||
|
||||
if (davect)
|
||||
Bmemcpy(&sprite[k],davect,sizeof(vec3_t));
|
||||
Bmemcpy(&sprite[newSpr],davect,sizeof(vec3_t));
|
||||
|
||||
if (pProj->sxrepeat > 4)
|
||||
sprite[k].xrepeat=pProj->sxrepeat;
|
||||
sprite[newSpr].xrepeat=pProj->sxrepeat;
|
||||
if (pProj->syrepeat > 4)
|
||||
sprite[k].yrepeat=pProj->syrepeat;
|
||||
sprite[newSpr].yrepeat=pProj->syrepeat;
|
||||
}
|
||||
|
||||
if (pProj->isound >= 0)
|
||||
|
@ -2628,8 +2597,8 @@ static void A_DoProjectileEffects(int spriteNum, const vec3_t *davect, int radiu
|
|||
|
||||
spritetype *const pSprite = &sprite[spriteNum];
|
||||
pSprite->extra = Proj_GetDamage(pProj);
|
||||
int const x = pSprite->extra;
|
||||
A_RadiusDamage(spriteNum, pProj->hitradius, x >> 2, x >> 1, x - (x >> 2), x);
|
||||
int const dmg = pSprite->extra;
|
||||
A_RadiusDamage(spriteNum, pProj->hitradius, dmg >> 2, dmg >> 1, dmg - (dmg >> 2), dmg);
|
||||
}
|
||||
|
||||
static void G_WeaponHitCeilingOrFloor(int32_t i, spritetype *s, int *j)
|
||||
|
@ -2691,7 +2660,7 @@ static int Proj_MaybeDamageCF(uspritetype const * const s)
|
|||
return 0;
|
||||
}
|
||||
|
||||
ACTOR_STATIC void Proj_MoveCustom(int spriteNum)
|
||||
ACTOR_STATIC void Proj_MoveCustom(int const spriteNum)
|
||||
{
|
||||
int const projectileMoved = SpriteProjectile[spriteNum].workslike & PROJECTILE_MOVED;
|
||||
SpriteProjectile[spriteNum].workslike |= PROJECTILE_MOVED;
|
||||
|
@ -3253,7 +3222,7 @@ ACTOR_STATIC void G_MoveWeapons(void)
|
|||
}
|
||||
|
||||
|
||||
static int P_Submerge(int spriteNum, int playerNum, DukePlayer_t *pPlayer, int sectNum, int otherSect)
|
||||
static int P_Submerge(int const spriteNum, int const playerNum, DukePlayer_t * const pPlayer, int const sectNum, int const otherSect)
|
||||
{
|
||||
if (pPlayer->on_ground && pPlayer->pos.z >= sector[sectNum].floorz
|
||||
&& (TEST_SYNC_KEY(g_player[playerNum].inputBits->bits, SK_CROUCH) || pPlayer->vel.z > 2048))
|
||||
|
@ -3279,7 +3248,7 @@ static int P_Submerge(int spriteNum, int playerNum, DukePlayer_t *pPlayer, int s
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int P_Emerge(int spriteNum, int playerNum, DukePlayer_t *pPlayer, int sectNum, int otherSect)
|
||||
static int P_Emerge(int const spriteNum, int const playerNum, DukePlayer_t * const pPlayer, int const sectNum, int const otherSect)
|
||||
{
|
||||
// r1449-:
|
||||
if (pPlayer->pos.z < (sector[sectNum].ceilingz+1080) && pPlayer->vel.z == 0)
|
||||
|
@ -3308,7 +3277,7 @@ static int P_Emerge(int spriteNum, int playerNum, DukePlayer_t *pPlayer, int sec
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void P_FinishWaterChange(int playerNum, DukePlayer_t *pPlayer, int sectLotag, int spriteOwner, int newSector)
|
||||
static void P_FinishWaterChange(int const playerNum, DukePlayer_t * const pPlayer, int const sectLotag, int const spriteOwner, int const newSector)
|
||||
{
|
||||
pPlayer->bobpos.x = pPlayer->opos.x = pPlayer->pos.x;
|
||||
pPlayer->bobpos.y = pPlayer->opos.y = pPlayer->pos.y;
|
||||
|
@ -3337,7 +3306,7 @@ static void P_FinishWaterChange(int playerNum, DukePlayer_t *pPlayer, int sectLo
|
|||
|
||||
// Check prevention of teleportation *when alive*. For example, commanders and
|
||||
// octabrains would be transported by SE7 (both water and normal) only if dead.
|
||||
static int A_CheckNonTeleporting(int spriteNum)
|
||||
static int A_CheckNonTeleporting(int const spriteNum)
|
||||
{
|
||||
int const tileNum = sprite[spriteNum].picnum;
|
||||
return !!(A_CheckSpriteFlags(spriteNum, SFLAG_NOTELEPORT) || tileNum == SHARK || tileNum == COMMANDER || tileNum == OCTABRAIN
|
||||
|
@ -3632,7 +3601,7 @@ ACTOR_STATIC void G_MoveTransports(void)
|
|||
}
|
||||
}
|
||||
|
||||
static int A_FindLocator(int tag, int sectNum)
|
||||
static int A_FindLocator(int const tag, int const sectNum)
|
||||
{
|
||||
for (bssize_t SPRITES_OF(STAT_LOCATOR, spriteNum))
|
||||
{
|
||||
|
|
|
@ -169,19 +169,19 @@ typedef struct
|
|||
vec2_t lastv; // 8b
|
||||
int16_t picnum, ang, extra, owner; // 8b
|
||||
int16_t movflag, tempang, timetosleep; // 6b
|
||||
int16_t actorstayput;
|
||||
int16_t actorstayput; // 2b
|
||||
|
||||
#ifdef LUNATIC
|
||||
// Movement flags, sprite[i].hitag in C-CON:
|
||||
uint16_t movflags;
|
||||
#endif
|
||||
uint8_t cgg, lasttransport;
|
||||
uint8_t cgg, lasttransport; // 2b
|
||||
// NOTE: 'dispicnum' is updated every frame, not in sync with game tics!
|
||||
int16_t dispicnum;
|
||||
int16_t dispicnum; // 2b
|
||||
|
||||
#ifdef POLYMER
|
||||
_prlight *lightptr; // 4b/8b
|
||||
int16_t lightId, lightmaxrange; // 4b
|
||||
_prlight *lightptr; // 4b/8b aligned on 96 bytes
|
||||
uint8_t lightcount, filler[3];
|
||||
#endif
|
||||
} actor_t;
|
||||
|
@ -221,10 +221,10 @@ typedef struct
|
|||
intptr_t *execPtr; // pointer to CON script for this tile, formerly actorscrptr
|
||||
intptr_t *loadPtr; // pointer to load time CON script, formerly actorLoadEventScrPtr or something
|
||||
#endif
|
||||
uint32_t flags; // formerly SpriteFlags, ActorType
|
||||
int32_t cacherange; // formerly SpriteCache
|
||||
projectile_t *proj;
|
||||
projectile_t *defproj;
|
||||
uint32_t flags; // formerly SpriteFlags, ActorType
|
||||
int32_t cacherange; // formerly SpriteCache
|
||||
} tiledata_t;
|
||||
|
||||
|
||||
|
@ -302,7 +302,7 @@ extern projectile_t SpriteProjectile[MAXSPRITES];
|
|||
|
||||
int A_CheckNoSE7Water(uspritetype const *const pSprite, int sectNum, int sectLotag, int32_t *pOther);
|
||||
int A_CheckSwitchTile(int spriteNum);
|
||||
int A_IncurDamage(int spriteNum);
|
||||
int A_IncurDamage(int const spriteNum);
|
||||
void A_AddToDeleteQueue(int spriteNum);
|
||||
void A_DeleteSprite(int spriteNum);
|
||||
void A_DoGuts(int spriteNum, int tileNum, int spawnCnt);
|
||||
|
|
|
@ -501,7 +501,7 @@ notarget:
|
|||
}
|
||||
|
||||
// Hitscan weapon fired from actor (sprite s);
|
||||
static void A_PreFireHitscan(const spritetype *pSprite, vec3_t *srcVect, int32_t *zvel, int *shootAng, int doSpread)
|
||||
static void A_PreFireHitscan(const spritetype *pSprite, vec3_t * const srcVect, int32_t * const zvel, int * const shootAng, int const doSpread)
|
||||
{
|
||||
int const playerNum = A_FindPlayer(pSprite, NULL);
|
||||
const DukePlayer_t *pPlayer = g_player[playerNum].ps;
|
||||
|
@ -514,10 +514,10 @@ static void A_PreFireHitscan(const spritetype *pSprite, vec3_t *srcVect, int32_t
|
|||
if (pSprite->picnum == BOSS1)
|
||||
*shootAng = getangle(pPlayer->pos.x - srcVect->x, pPlayer->pos.y - srcVect->y);
|
||||
|
||||
Proj_MaybeAddSpread(doSpread, zvel, shootAng, 256, 128 >> (pSprite->picnum != BOSS1));
|
||||
Proj_MaybeAddSpread(doSpread, zvel, shootAng, 256, 128 >> (uint8_t)(pSprite->picnum != BOSS1));
|
||||
}
|
||||
|
||||
static int Proj_DoHitscan(int spriteNum, int32_t cstatmask, const vec3_t *srcVect, int zvel, int shootAng, hitdata_t *hitData)
|
||||
static int Proj_DoHitscan(int spriteNum, int32_t const cstatmask, const vec3_t * const srcVect, int zvel, int const shootAng, hitdata_t * const hitData)
|
||||
{
|
||||
spritetype *const pSprite = &sprite[spriteNum];
|
||||
|
||||
|
@ -543,7 +543,7 @@ static void Proj_DoRandDecalSize(int const spriteNum, int const projecTile)
|
|||
}
|
||||
}
|
||||
|
||||
static int SectorContainsSE13(int sectNum)
|
||||
static int SectorContainsSE13(int const sectNum)
|
||||
{
|
||||
if (sectNum >= 0)
|
||||
{
|
||||
|
@ -569,7 +569,7 @@ static inline void HandleHitWall(hitdata_t *hitData)
|
|||
// Maybe damage a ceiling or floor as the consequence of projectile impact.
|
||||
// Returns 1 if projectile hit a parallaxed ceiling.
|
||||
// NOTE: Compare with Proj_MaybeDamageCF() in actors.c
|
||||
static int Proj_MaybeDamageCF2(int zvel, int hitSect)
|
||||
static int Proj_MaybeDamageCF2(int const zvel, int const hitSect)
|
||||
{
|
||||
Bassert(hitSect >= 0);
|
||||
|
||||
|
@ -604,8 +604,9 @@ static int Proj_MaybeDamageCF2(int zvel, int hitSect)
|
|||
// 2: set cstat to wall-aligned + random x/y flip
|
||||
//
|
||||
// TODO: maybe split into 3 cases (hit neither wall nor sprite, hit sprite, hit wall)?
|
||||
static int P_PostFireHitscan(int playerNum, int spriteNum, hitdata_t *hitData, int spriteOwner, int projecTile, int zvel,
|
||||
int spawnTile, int decalTile, int wallDamage, int decalFlags)
|
||||
static int P_PostFireHitscan(int const playerNum, int const spriteNum, hitdata_t *const hitData, int const spriteOwner,
|
||||
int const projecTile, int const zvel, int const spawnTile, int const decalTile, int const wallDamage,
|
||||
int const decalFlags)
|
||||
{
|
||||
if (hitData->wall == -1 && hitData->sprite == -1)
|
||||
{
|
||||
|
@ -1425,7 +1426,7 @@ static int32_t A_ShootHardcoded(int spriteNum, int projecTile, int shootAng, vec
|
|||
|
||||
if (placeMine == 1)
|
||||
{
|
||||
int32_t lTripBombControl = (playerNum < 0) ? 0 :
|
||||
int const tripBombMode = (playerNum < 0) ? 0 :
|
||||
#ifdef LUNATIC
|
||||
g_player[playerNum].ps->tripbombControl;
|
||||
#else
|
||||
|
@ -1434,7 +1435,7 @@ static int32_t A_ShootHardcoded(int spriteNum, int projecTile, int shootAng, vec
|
|||
#endif
|
||||
int const spawnedSprite = A_InsertSprite(hitData.sect, hitData.pos.x, hitData.pos.y, hitData.pos.z, TRIPBOMB, -16, 4, 5,
|
||||
shootAng, 0, 0, spriteNum, 6);
|
||||
if (lTripBombControl & TRIPBOMB_TIMER)
|
||||
if (tripBombMode & TRIPBOMB_TIMER)
|
||||
{
|
||||
#ifdef LUNATIC
|
||||
int32_t lLifetime = g_player[playerNum].ps->tripbombLifetime;
|
||||
|
@ -1457,11 +1458,10 @@ static int32_t A_ShootHardcoded(int spriteNum, int projecTile, int shootAng, vec
|
|||
A_SetSprite(spawnedSprite, CLIPMASK0);
|
||||
sprite[spawnedSprite].cstat = 16;
|
||||
|
||||
{
|
||||
int32_t p2 = wall[hitData.wall].point2;
|
||||
int32_t a = getangle(wall[hitData.wall].x - wall[p2].x, wall[hitData.wall].y - wall[p2].y) - 512;
|
||||
actor[spawnedSprite].t_data[5] = sprite[spawnedSprite].ang = a;
|
||||
}
|
||||
int const p2 = wall[hitData.wall].point2;
|
||||
int const wallAng = getangle(wall[hitData.wall].x - wall[p2].x, wall[hitData.wall].y - wall[p2].y) - 512;
|
||||
|
||||
actor[spawnedSprite].t_data[5] = sprite[spawnedSprite].ang = wallAng;
|
||||
|
||||
return spawnedSprite;
|
||||
}
|
||||
|
@ -1524,7 +1524,7 @@ static int32_t A_ShootHardcoded(int spriteNum, int projecTile, int shootAng, vec
|
|||
return -1;
|
||||
}
|
||||
|
||||
int A_ShootWithZvel(int spriteNum, int projecTile, int forceZvel)
|
||||
int A_ShootWithZvel(int const spriteNum, int const projecTile, int const forceZvel)
|
||||
{
|
||||
Bassert(projecTile >= 0);
|
||||
|
||||
|
|
Loading…
Reference in a new issue