mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-28 04:20:45 +00:00
- more simple pointer replacements - lots of them...
This commit is contained in:
parent
0c95aee8f5
commit
76e4661eea
2 changed files with 276 additions and 278 deletions
|
@ -1023,11 +1023,11 @@ bool checkhitceiling_d(int sn)
|
|||
void checkhitsprite_d(int i, int sn)
|
||||
{
|
||||
int j, k, p;
|
||||
spritetype* s;
|
||||
|
||||
i &= (MAXSPRITES - 1);
|
||||
spritetype* s = &sprite[i];
|
||||
|
||||
switch (sprite[i].picnum)
|
||||
switch (s->picnum)
|
||||
{
|
||||
case WTGLASS1:
|
||||
case WTGLASS2:
|
||||
|
@ -1050,9 +1050,9 @@ void checkhitsprite_d(int i, int sn)
|
|||
case STRIPEBALL:
|
||||
if (sprite[sn].picnum == QUEBALL || sprite[sn].picnum == STRIPEBALL)
|
||||
{
|
||||
sprite[sn].xvel = (sprite[i].xvel >> 1) + (sprite[i].xvel >> 2);
|
||||
sprite[sn].ang -= (sprite[i].ang << 1) + 1024;
|
||||
sprite[i].ang = getangle(sprite[i].x - sprite[sn].x, sprite[i].y - sprite[sn].y) - 512;
|
||||
sprite[sn].xvel = (s->xvel >> 1) + (s->xvel >> 2);
|
||||
sprite[sn].ang -= (s->ang << 1) + 1024;
|
||||
s->ang = getangle(s->x - sprite[sn].x, s->y - sprite[sn].y) - 512;
|
||||
if (S_CheckSoundPlaying(POOLBALLHIT) < 2)
|
||||
S_PlayActorSound(POOLBALLHIT, i);
|
||||
}
|
||||
|
@ -1060,8 +1060,8 @@ void checkhitsprite_d(int i, int sn)
|
|||
{
|
||||
if (krand() & 3)
|
||||
{
|
||||
sprite[i].xvel = 164;
|
||||
sprite[i].ang = sprite[sn].ang;
|
||||
s->xvel = 164;
|
||||
s->ang = sprite[sn].ang;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1084,7 +1084,7 @@ void checkhitsprite_d(int i, int sn)
|
|||
case HEAVYHBOMB:
|
||||
if (hittype[i].temp_data[0] == 0)
|
||||
{
|
||||
sprite[i].cstat &= ~257;
|
||||
s->cstat &= ~257;
|
||||
hittype[i].temp_data[0] = 1;
|
||||
fi.spawn(i, BURNING);
|
||||
}
|
||||
|
@ -1102,13 +1102,13 @@ void checkhitsprite_d(int i, int sn)
|
|||
case HEAVYHBOMB:
|
||||
for (k = 0; k < 64; k++)
|
||||
{
|
||||
j = EGS(sprite[i].sectnum, sprite[i].x, sprite[i].y, sprite[i].z - (krand() % (48 << 8)), SCRAP3 + (krand() & 3), -8, 48, 48, krand() & 2047, (krand() & 63) + 64, -(krand() & 4095) - (sprite[i].zvel >> 2), i, 5);
|
||||
j = EGS(s->sectnum, s->x, s->y, s->z - (krand() % (48 << 8)), SCRAP3 + (krand() & 3), -8, 48, 48, krand() & 2047, (krand() & 63) + 64, -(krand() & 4095) - (s->zvel >> 2), i, 5);
|
||||
sprite[j].pal = 8;
|
||||
}
|
||||
|
||||
if (sprite[i].picnum == CACTUS)
|
||||
sprite[i].picnum = CACTUSBROKE;
|
||||
sprite[i].cstat &= ~257;
|
||||
if (s->picnum == CACTUS)
|
||||
s->picnum = CACTUSBROKE;
|
||||
s->cstat &= ~257;
|
||||
// else deletesprite(i);
|
||||
break;
|
||||
}
|
||||
|
@ -1117,20 +1117,19 @@ void checkhitsprite_d(int i, int sn)
|
|||
case HANGLIGHT:
|
||||
case GENERICPOLE2:
|
||||
for (k = 0; k < 6; k++)
|
||||
EGS(sprite[i].sectnum, sprite[i].x, sprite[i].y, sprite[i].z - (8 << 8), SCRAP1 + (krand() & 15), -8, 48, 48, krand() & 2047, (krand() & 63) + 64, -(krand() & 4095) - (sprite[i].zvel >> 2), i, 5);
|
||||
EGS(s->sectnum, s->x, s->y, s->z - (8 << 8), SCRAP1 + (krand() & 15), -8, 48, 48, krand() & 2047, (krand() & 63) + 64, -(krand() & 4095) - (s->zvel >> 2), i, 5);
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
deletesprite(i);
|
||||
break;
|
||||
|
||||
|
||||
case FANSPRITE:
|
||||
sprite[i].picnum = FANSPRITEBROKE;
|
||||
sprite[i].cstat &= (65535 - 257);
|
||||
if (sector[sprite[i].sectnum].floorpicnum == FANSHADOW)
|
||||
sector[sprite[i].sectnum].floorpicnum = FANSHADOWBROKE;
|
||||
s->picnum = FANSPRITEBROKE;
|
||||
s->cstat &= (65535 - 257);
|
||||
if (sector[s->sectnum].floorpicnum == FANSHADOW)
|
||||
sector[s->sectnum].floorpicnum = FANSHADOWBROKE;
|
||||
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
s = &sprite[i];
|
||||
for (j = 0; j < 16; j++) RANDOMSCRAP(s, i);
|
||||
|
||||
break;
|
||||
|
@ -1138,7 +1137,7 @@ void checkhitsprite_d(int i, int sn)
|
|||
case WATERFOUNTAIN + 1:
|
||||
case WATERFOUNTAIN + 2:
|
||||
case WATERFOUNTAIN + 3:
|
||||
sprite[i].picnum = WATERFOUNTAINBROKE;
|
||||
s->picnum = WATERFOUNTAINBROKE;
|
||||
fi.spawn(i, TOILETWATER);
|
||||
break;
|
||||
case SATELITE:
|
||||
|
@ -1148,7 +1147,7 @@ void checkhitsprite_d(int i, int sn)
|
|||
if (actorinfo[SHOTSPARK1].scriptaddress && sprite[sn].extra != ScriptCode[actorinfo[SHOTSPARK1].scriptaddress])
|
||||
{
|
||||
for (j = 0; j < 15; j++)
|
||||
EGS(sprite[i].sectnum, sprite[i].x, sprite[i].y, sector[sprite[i].sectnum].floorz - (12 << 8) - (j << 9), SCRAP1 + (krand() & 15), -8, 64, 64,
|
||||
EGS(s->sectnum, s->x, s->y, sector[s->sectnum].floorz - (12 << 8) - (j << 9), SCRAP1 + (krand() & 15), -8, 64, 64,
|
||||
krand() & 2047, (krand() & 127) + 64, -(krand() & 511) - 256, i, 5);
|
||||
fi.spawn(i, EXPLOSION2);
|
||||
deletesprite(i);
|
||||
|
@ -1182,23 +1181,23 @@ void checkhitsprite_d(int i, int sn)
|
|||
case VASE:
|
||||
case STATUEFLASH:
|
||||
case STATUE:
|
||||
if (sprite[i].picnum == BOTTLE10)
|
||||
if (s->picnum == BOTTLE10)
|
||||
fi.lotsofmoney(&sprite[i], 4 + (krand() & 3));
|
||||
else if (sprite[i].picnum == STATUE || sprite[i].picnum == STATUEFLASH)
|
||||
else if (s->picnum == STATUE || s->picnum == STATUEFLASH)
|
||||
{
|
||||
lotsofcolourglass(i, -1, 40);
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
}
|
||||
else if (sprite[i].picnum == VASE)
|
||||
else if (s->picnum == VASE)
|
||||
lotsofglass(i, -1, 40);
|
||||
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->ang = krand() & 2047;
|
||||
lotsofglass(i, -1, 8);
|
||||
deletesprite(i);
|
||||
break;
|
||||
case FETUS:
|
||||
sprite[i].picnum = FETUSBROKE;
|
||||
s->picnum = FETUSBROKE;
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
lotsofglass(i, -1, 10);
|
||||
break;
|
||||
|
@ -1206,7 +1205,7 @@ void checkhitsprite_d(int i, int sn)
|
|||
for (j = 0; j < 48; j++)
|
||||
{
|
||||
fi.shoot(i, BLOODSPLAT1);
|
||||
sprite[i].ang += 333;
|
||||
s->ang += 333;
|
||||
}
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
S_PlayActorSound(SQUISHED, i);
|
||||
|
@ -1216,77 +1215,77 @@ void checkhitsprite_d(int i, int sn)
|
|||
deletesprite(i);
|
||||
break;
|
||||
case HYDROPLANT:
|
||||
sprite[i].picnum = BROKEHYDROPLANT;
|
||||
s->picnum = BROKEHYDROPLANT;
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
lotsofglass(i, -1, 10);
|
||||
break;
|
||||
|
||||
case FORCESPHERE:
|
||||
sprite[i].xrepeat = 0;
|
||||
hittype[sprite[i].owner].temp_data[0] = 32;
|
||||
hittype[sprite[i].owner].temp_data[1] = !hittype[sprite[i].owner].temp_data[1];
|
||||
hittype[sprite[i].owner].temp_data[2] ++;
|
||||
s->xrepeat = 0;
|
||||
hittype[s->owner].temp_data[0] = 32;
|
||||
hittype[s->owner].temp_data[1] = !hittype[s->owner].temp_data[1];
|
||||
hittype[s->owner].temp_data[2] ++;
|
||||
fi.spawn(i, EXPLOSION2);
|
||||
break;
|
||||
|
||||
case BROKEHYDROPLANT:
|
||||
if (sprite[i].cstat & 1)
|
||||
if (s->cstat & 1)
|
||||
{
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
sprite[i].z += 16 << 8;
|
||||
sprite[i].cstat = 0;
|
||||
s->z += 16 << 8;
|
||||
s->cstat = 0;
|
||||
lotsofglass(i, -1, 5);
|
||||
}
|
||||
break;
|
||||
|
||||
case TOILET:
|
||||
sprite[i].picnum = TOILETBROKE;
|
||||
sprite[i].cstat |= (krand() & 1) << 2;
|
||||
sprite[i].cstat &= ~257;
|
||||
s->picnum = TOILETBROKE;
|
||||
s->cstat |= (krand() & 1) << 2;
|
||||
s->cstat &= ~257;
|
||||
fi.spawn(i, TOILETWATER);
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
break;
|
||||
|
||||
case STALL:
|
||||
sprite[i].picnum = STALLBROKE;
|
||||
sprite[i].cstat |= (krand() & 1) << 2;
|
||||
sprite[i].cstat &= ~257;
|
||||
s->picnum = STALLBROKE;
|
||||
s->cstat |= (krand() & 1) << 2;
|
||||
s->cstat &= ~257;
|
||||
fi.spawn(i, TOILETWATER);
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
|
||||
case HYDRENT:
|
||||
sprite[i].picnum = BROKEFIREHYDRENT;
|
||||
s->picnum = BROKEFIREHYDRENT;
|
||||
fi.spawn(i, TOILETWATER);
|
||||
|
||||
// for(k=0;k<5;k++)
|
||||
// {
|
||||
// j = EGS(sprite[i].sectnum,sprite[i].x,sprite[i].y,sprite[i].z-(krand()%(48<<8)),SCRAP3+(krand()&3),-8,48,48,krand()&2047,(krand()&63)+64,-(krand()&4095)-(sprite[i].zvel>>2),i,5);
|
||||
// j = EGS(s->sectnum,s->x,s->y,s->z-(krand()%(48<<8)),SCRAP3+(krand()&3),-8,48,48,krand()&2047,(krand()&63)+64,-(krand()&4095)-(s->zvel>>2),i,5);
|
||||
// sprite[j].pal = 2;
|
||||
// }
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
|
||||
case GRATE1:
|
||||
sprite[i].picnum = BGRATE1;
|
||||
sprite[i].cstat &= (65535 - 256 - 1);
|
||||
s->picnum = BGRATE1;
|
||||
s->cstat &= (65535 - 256 - 1);
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
|
||||
case CIRCLEPANNEL:
|
||||
sprite[i].picnum = CIRCLEPANNELBROKE;
|
||||
sprite[i].cstat &= (65535 - 256 - 1);
|
||||
s->picnum = CIRCLEPANNELBROKE;
|
||||
s->cstat &= (65535 - 256 - 1);
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
case PANNEL1:
|
||||
case PANNEL2:
|
||||
sprite[i].picnum = BPANNEL1;
|
||||
sprite[i].cstat &= (65535 - 256 - 1);
|
||||
s->picnum = BPANNEL1;
|
||||
s->cstat &= (65535 - 256 - 1);
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
case PANNEL3:
|
||||
sprite[i].picnum = BPANNEL3;
|
||||
sprite[i].cstat &= (65535 - 256 - 1);
|
||||
s->picnum = BPANNEL3;
|
||||
s->cstat &= (65535 - 256 - 1);
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
case PIPE1:
|
||||
|
@ -1295,44 +1294,44 @@ void checkhitsprite_d(int i, int sn)
|
|||
case PIPE4:
|
||||
case PIPE5:
|
||||
case PIPE6:
|
||||
switch (sprite[i].picnum)
|
||||
switch (s->picnum)
|
||||
{
|
||||
case PIPE1:sprite[i].picnum = PIPE1B; break;
|
||||
case PIPE2:sprite[i].picnum = PIPE2B; break;
|
||||
case PIPE3:sprite[i].picnum = PIPE3B; break;
|
||||
case PIPE4:sprite[i].picnum = PIPE4B; break;
|
||||
case PIPE5:sprite[i].picnum = PIPE5B; break;
|
||||
case PIPE6:sprite[i].picnum = PIPE6B; break;
|
||||
case PIPE1:s->picnum = PIPE1B; break;
|
||||
case PIPE2:s->picnum = PIPE2B; break;
|
||||
case PIPE3:s->picnum = PIPE3B; break;
|
||||
case PIPE4:s->picnum = PIPE4B; break;
|
||||
case PIPE5:s->picnum = PIPE5B; break;
|
||||
case PIPE6:s->picnum = PIPE6B; break;
|
||||
}
|
||||
|
||||
j = fi.spawn(i, STEAM);
|
||||
sprite[j].z = sector[sprite[i].sectnum].floorz - (32 << 8);
|
||||
sprite[j].z = sector[s->sectnum].floorz - (32 << 8);
|
||||
break;
|
||||
|
||||
case MONK:
|
||||
case LUKE:
|
||||
case INDY:
|
||||
case JURYGUY:
|
||||
S_PlayActorSound(sprite[i].lotag, i);
|
||||
fi.spawn(i, sprite[i].hitag);
|
||||
S_PlayActorSound(s->lotag, i);
|
||||
fi.spawn(i, s->hitag);
|
||||
case SPACEMARINE:
|
||||
sprite[i].extra -= sprite[sn].extra;
|
||||
if (sprite[i].extra > 0) break;
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->extra -= sprite[sn].extra;
|
||||
if (s->extra > 0) break;
|
||||
s->ang = krand() & 2047;
|
||||
fi.shoot(i, BLOODSPLAT1);
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->ang = krand() & 2047;
|
||||
fi.shoot(i, BLOODSPLAT2);
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->ang = krand() & 2047;
|
||||
fi.shoot(i, BLOODSPLAT3);
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->ang = krand() & 2047;
|
||||
fi.shoot(i, BLOODSPLAT4);
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->ang = krand() & 2047;
|
||||
fi.shoot(i, BLOODSPLAT1);
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->ang = krand() & 2047;
|
||||
fi.shoot(i, BLOODSPLAT2);
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->ang = krand() & 2047;
|
||||
fi.shoot(i, BLOODSPLAT3);
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->ang = krand() & 2047;
|
||||
fi.shoot(i, BLOODSPLAT4);
|
||||
fi.guts(&sprite[i], JIBS1, 1, myconnectindex);
|
||||
fi.guts(&sprite[i], JIBS2, 2, myconnectindex);
|
||||
|
@ -1345,8 +1344,8 @@ void checkhitsprite_d(int i, int sn)
|
|||
break;
|
||||
case CHAIR1:
|
||||
case CHAIR2:
|
||||
sprite[i].picnum = BROKENCHAIR;
|
||||
sprite[i].cstat = 0;
|
||||
s->picnum = BROKENCHAIR;
|
||||
s->cstat = 0;
|
||||
break;
|
||||
case CHAIR3:
|
||||
case MOVIECAMERA:
|
||||
|
@ -1359,28 +1358,28 @@ void checkhitsprite_d(int i, int sn)
|
|||
case POT3:
|
||||
case TRIPODCAMERA:
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
s = &sprite[i];
|
||||
for (j = 0; j < 16; j++) RANDOMSCRAP(s, i);
|
||||
deletesprite(i);
|
||||
break;
|
||||
case PLAYERONWATER:
|
||||
i = sprite[i].owner;
|
||||
i = s->owner;
|
||||
s = &sprite[i];
|
||||
default:
|
||||
if ((sprite[i].cstat & 16) && sprite[i].hitag == 0 && sprite[i].lotag == 0 && sprite[i].statnum == 0)
|
||||
if ((s->cstat & 16) && s->hitag == 0 && s->lotag == 0 && s->statnum == 0)
|
||||
break;
|
||||
|
||||
if ((sprite[sn].picnum == FREEZEBLAST || sprite[sn].owner != i) && sprite[i].statnum != 4)
|
||||
if ((sprite[sn].picnum == FREEZEBLAST || sprite[sn].owner != i) && s->statnum != 4)
|
||||
{
|
||||
if (badguy(&sprite[i]) == 1)
|
||||
{
|
||||
if (isWorldTour() && sprite[i].picnum == FIREFLY && sprite[i].xrepeat < 48)
|
||||
if (isWorldTour() && s->picnum == FIREFLY && s->xrepeat < 48)
|
||||
break;
|
||||
|
||||
if (sprite[sn].picnum == RPG) sprite[sn].extra <<= 1;
|
||||
|
||||
if ((sprite[i].picnum != DRONE) && (sprite[i].picnum != ROTATEGUN) && (sprite[i].picnum != COMMANDER) && (sprite[i].picnum < GREENSLIME || sprite[i].picnum > GREENSLIME + 7))
|
||||
if ((s->picnum != DRONE) && (s->picnum != ROTATEGUN) && (s->picnum != COMMANDER) && (s->picnum < GREENSLIME || s->picnum > GREENSLIME + 7))
|
||||
if (sprite[sn].picnum != FREEZEBLAST)
|
||||
//if (actortype[sprite[i].picnum] == 0) //TRANSITIONAL. Cannot be done right with EDuke mess backing the engine.
|
||||
//if (actortype[s->picnum] == 0) //TRANSITIONAL. Cannot be done right with EDuke mess backing the engine.
|
||||
{
|
||||
j = fi.spawn(sn, JIBS6);
|
||||
if (sprite[sn].pal == 6)
|
||||
|
@ -1393,7 +1392,7 @@ void checkhitsprite_d(int i, int sn)
|
|||
|
||||
j = sprite[sn].owner;
|
||||
|
||||
if (j >= 0 && sprite[j].picnum == APLAYER && sprite[i].picnum != ROTATEGUN && sprite[i].picnum != DRONE)
|
||||
if (j >= 0 && sprite[j].picnum == APLAYER && s->picnum != ROTATEGUN && s->picnum != DRONE)
|
||||
if (ps[sprite[j].yvel].curr_weapon == SHOTGUN_WEAPON)
|
||||
{
|
||||
fi.shoot(i, BLOODSPLAT3);
|
||||
|
@ -1402,38 +1401,38 @@ void checkhitsprite_d(int i, int sn)
|
|||
fi.shoot(i, BLOODSPLAT4);
|
||||
}
|
||||
|
||||
if (sprite[i].picnum != TANK && !bossguy(&sprite[i]) && sprite[i].picnum != RECON && sprite[i].picnum != ROTATEGUN)
|
||||
if (s->picnum != TANK && !bossguy(&sprite[i]) && s->picnum != RECON && s->picnum != ROTATEGUN)
|
||||
{
|
||||
if ((sprite[i].cstat & 48) == 0)
|
||||
sprite[i].ang = (sprite[sn].ang + 1024) & 2047;
|
||||
sprite[i].xvel = -(sprite[sn].extra << 2);
|
||||
short j = sprite[i].sectnum;
|
||||
pushmove(&sprite[i].x, &sprite[i].y, &sprite[i].z, &j, 128L, (4L << 8), (4L << 8), CLIPMASK0);
|
||||
if (j != sprite[i].sectnum && j >= 0 && j < MAXSECTORS)
|
||||
if ((s->cstat & 48) == 0)
|
||||
s->ang = (sprite[sn].ang + 1024) & 2047;
|
||||
s->xvel = -(sprite[sn].extra << 2);
|
||||
short j = s->sectnum;
|
||||
pushmove(&s->x, &s->y, &s->z, &j, 128L, (4L << 8), (4L << 8), CLIPMASK0);
|
||||
if (j != s->sectnum && j >= 0 && j < MAXSECTORS)
|
||||
changespritesect(i, j);
|
||||
}
|
||||
|
||||
if (sprite[i].statnum == 2)
|
||||
if (s->statnum == 2)
|
||||
{
|
||||
changespritestat(i, 1);
|
||||
hittype[i].timetosleep = SLEEPTIME;
|
||||
}
|
||||
if ((sprite[i].xrepeat < 24 || sprite[i].picnum == SHARK) && sprite[sn].picnum == SHRINKSPARK) return;
|
||||
if ((s->xrepeat < 24 || s->picnum == SHARK) && sprite[sn].picnum == SHRINKSPARK) return;
|
||||
}
|
||||
|
||||
if (sprite[i].statnum != 2)
|
||||
if (s->statnum != 2)
|
||||
{
|
||||
if (sprite[sn].picnum == FREEZEBLAST && ((sprite[i].picnum == APLAYER && sprite[i].pal == 1) || (freezerhurtowner == 0 && sprite[sn].owner == i)))
|
||||
if (sprite[sn].picnum == FREEZEBLAST && ((s->picnum == APLAYER && s->pal == 1) || (freezerhurtowner == 0 && sprite[sn].owner == i)))
|
||||
return;
|
||||
|
||||
|
||||
int hitpic = sprite[sn].picnum;
|
||||
if (sprite[sprite[sn].owner].picnum == APLAYER)
|
||||
{
|
||||
if (sprite[i].picnum == APLAYER && ud.coop != 0 && ud.ffire == 0)
|
||||
if (s->picnum == APLAYER && ud.coop != 0 && ud.ffire == 0)
|
||||
return;
|
||||
|
||||
if (isWorldTour() && hitpic == FIREBALL && sprite[sprite[i].owner].picnum != FIREBALL)
|
||||
if (isWorldTour() && hitpic == FIREBALL && sprite[s->owner].picnum != FIREBALL)
|
||||
hitpic = FLAMETHROWERFLAME;
|
||||
}
|
||||
|
||||
|
@ -1443,9 +1442,9 @@ void checkhitsprite_d(int i, int sn)
|
|||
hittype[i].owner = sprite[sn].owner;
|
||||
}
|
||||
|
||||
if (sprite[i].statnum == 10)
|
||||
if (s->statnum == 10)
|
||||
{
|
||||
p = sprite[i].yvel;
|
||||
p = s->yvel;
|
||||
if (ps[p].newowner >= 0)
|
||||
{
|
||||
ps[p].newowner = -1;
|
||||
|
@ -1464,7 +1463,7 @@ void checkhitsprite_d(int i, int sn)
|
|||
}
|
||||
}
|
||||
|
||||
if (sprite[i].xrepeat < 24 && sprite[sn].picnum == SHRINKSPARK)
|
||||
if (s->xrepeat < 24 && sprite[sn].picnum == SHRINKSPARK)
|
||||
return;
|
||||
|
||||
if (sprite[hittype[i].owner].picnum != APLAYER)
|
||||
|
|
|
@ -1527,18 +1527,18 @@ bool checkhitceiling_r(int sn)
|
|||
void checkhitsprite_r(int i, int sn)
|
||||
{
|
||||
int j, k, p;
|
||||
spritetype* s;
|
||||
|
||||
i &= (MAXSPRITES - 1);
|
||||
spritetype* s = &sprite[i];
|
||||
|
||||
if (isRRRA()) switch (sprite[i].picnum)
|
||||
if (isRRRA()) switch (s->picnum)
|
||||
{
|
||||
case RRTILE8464:
|
||||
break;
|
||||
case RRTILE8487:
|
||||
case RRTILE8489:
|
||||
S_PlayActorSound(471, i);
|
||||
sprite[i].picnum++;
|
||||
s->picnum++;
|
||||
break;
|
||||
case RRTILE7638:
|
||||
case RRTILE7644:
|
||||
|
@ -1550,11 +1550,11 @@ void checkhitsprite_r(int i, int sn)
|
|||
case RRTILE7876:
|
||||
case RRTILE7881:
|
||||
case RRTILE7883:
|
||||
sprite[i].picnum++;
|
||||
s->picnum++;
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
case RRTILE7879:
|
||||
sprite[i].picnum++;
|
||||
s->picnum++;
|
||||
S_PlayActorSound(495, i);
|
||||
fi.hitradius(i, 10, 0, 0, 1, 1);
|
||||
break;
|
||||
|
@ -1563,120 +1563,120 @@ void checkhitsprite_r(int i, int sn)
|
|||
case RRTILE7700:
|
||||
case RRTILE7702:
|
||||
case RRTILE7711:
|
||||
sprite[i].picnum++;
|
||||
s->picnum++;
|
||||
S_PlayActorSound(47, i);
|
||||
break;
|
||||
case RRTILE7636:
|
||||
sprite[i].picnum += 3;
|
||||
s->picnum += 3;
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
case RRTILE7875:
|
||||
sprite[i].picnum += 3;
|
||||
s->picnum += 3;
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
case RRTILE7640:
|
||||
sprite[i].picnum += 2;
|
||||
s->picnum += 2;
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
case RRTILE7595:
|
||||
case RRTILE7704:
|
||||
sprite[i].picnum = RRTILE7705;
|
||||
s->picnum = RRTILE7705;
|
||||
S_PlayActorSound(495, i);
|
||||
break;
|
||||
case RRTILE8579:
|
||||
sprite[i].picnum = RRTILE5014;
|
||||
s->picnum = RRTILE5014;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7441:
|
||||
sprite[i].picnum = RRTILE5016;
|
||||
s->picnum = RRTILE5016;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7534:
|
||||
sprite[i].picnum = RRTILE5029;
|
||||
s->picnum = RRTILE5029;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7545:
|
||||
sprite[i].picnum = RRTILE5030;
|
||||
s->picnum = RRTILE5030;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7547:
|
||||
sprite[i].picnum = RRTILE5031;
|
||||
s->picnum = RRTILE5031;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7574:
|
||||
sprite[i].picnum = RRTILE5032;
|
||||
s->picnum = RRTILE5032;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7575:
|
||||
sprite[i].picnum = RRTILE5033;
|
||||
s->picnum = RRTILE5033;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7578:
|
||||
sprite[i].picnum = RRTILE5034;
|
||||
s->picnum = RRTILE5034;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7478:
|
||||
sprite[i].picnum = RRTILE5035;
|
||||
s->picnum = RRTILE5035;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8525:
|
||||
sprite[i].picnum = RRTILE5036;
|
||||
s->picnum = RRTILE5036;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8537:
|
||||
sprite[i].picnum = RRTILE5062;
|
||||
s->picnum = RRTILE5062;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8215:
|
||||
sprite[i].picnum = RRTILE5064;
|
||||
s->picnum = RRTILE5064;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8216:
|
||||
sprite[i].picnum = RRTILE5065;
|
||||
s->picnum = RRTILE5065;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8217:
|
||||
sprite[i].picnum = RRTILE5066;
|
||||
s->picnum = RRTILE5066;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8218:
|
||||
sprite[i].picnum = RRTILE5067;
|
||||
s->picnum = RRTILE5067;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8220:
|
||||
sprite[i].picnum = RRTILE5068;
|
||||
s->picnum = RRTILE5068;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8221:
|
||||
sprite[i].picnum = RRTILE5069;
|
||||
s->picnum = RRTILE5069;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8312:
|
||||
sprite[i].picnum = RRTILE5071;
|
||||
s->picnum = RRTILE5071;
|
||||
S_PlayActorSound(472, i);
|
||||
break;
|
||||
case RRTILE8395:
|
||||
sprite[i].picnum = RRTILE5072;
|
||||
s->picnum = RRTILE5072;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8423:
|
||||
sprite[i].picnum = RRTILE5073;
|
||||
s->picnum = RRTILE5073;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE3462:
|
||||
sprite[i].picnum = RRTILE5074;
|
||||
s->picnum = RRTILE5074;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case UWHIP:
|
||||
sprite[i].picnum = RRTILE5075;
|
||||
s->picnum = RRTILE5075;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8608:
|
||||
sprite[i].picnum = RRTILE5083;
|
||||
s->picnum = RRTILE5083;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8609:
|
||||
sprite[i].picnum = RRTILE5084;
|
||||
s->picnum = RRTILE5084;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8567:
|
||||
|
@ -1684,23 +1684,23 @@ void checkhitsprite_r(int i, int sn)
|
|||
case RRTILE8569:
|
||||
case RRTILE8570:
|
||||
case RRTILE8571:
|
||||
sprite[i].picnum = RRTILE5082;
|
||||
s->picnum = RRTILE5082;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8640:
|
||||
sprite[i].picnum = RRTILE5085;
|
||||
s->picnum = RRTILE5085;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8611:
|
||||
sprite[i].picnum = RRTILE5086;
|
||||
s->picnum = RRTILE5086;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case TECHLIGHTBUST2:
|
||||
sprite[i].picnum = TECHLIGHTBUST4;
|
||||
s->picnum = TECHLIGHTBUST4;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8497:
|
||||
sprite[i].picnum = RRTILE5076;
|
||||
s->picnum = RRTILE5076;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8162:
|
||||
|
@ -1711,7 +1711,7 @@ void checkhitsprite_r(int i, int sn)
|
|||
case RRTILE8167:
|
||||
case RRTILE8168:
|
||||
changespritestat(i, STAT_MISC);
|
||||
sprite[i].picnum = RRTILE5063;
|
||||
s->picnum = RRTILE5063;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8589:
|
||||
|
@ -1722,218 +1722,218 @@ void checkhitsprite_r(int i, int sn)
|
|||
case RRTILE8594:
|
||||
case RRTILE8595:
|
||||
changespritestat(i, STAT_MISC);
|
||||
sprite[i].picnum = RRTILE8588;
|
||||
s->picnum = RRTILE8588;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE3497:
|
||||
sprite[i].picnum = RRTILE5076;
|
||||
s->picnum = RRTILE5076;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE3498:
|
||||
sprite[i].picnum = RRTILE5077;
|
||||
s->picnum = RRTILE5077;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE3499:
|
||||
sprite[i].picnum = RRTILE5078;
|
||||
s->picnum = RRTILE5078;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8503:
|
||||
sprite[i].picnum = RRTILE5079;
|
||||
s->picnum = RRTILE5079;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7901:
|
||||
sprite[i].picnum = RRTILE5080;
|
||||
s->picnum = RRTILE5080;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7696:
|
||||
sprite[i].picnum = RRTILE7697;
|
||||
s->picnum = RRTILE7697;
|
||||
S_PlayActorSound(DUKE_SHUCKS, i);
|
||||
break;
|
||||
case RRTILE7806:
|
||||
sprite[i].picnum = RRTILE5043;
|
||||
s->picnum = RRTILE5043;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7885:
|
||||
case RRTILE7890:
|
||||
sprite[i].picnum = RRTILE5045;
|
||||
s->picnum = RRTILE5045;
|
||||
S_PlayActorSound(495, i);
|
||||
fi.hitradius(i, 10, 0, 0, 1, 1);
|
||||
break;
|
||||
case RRTILE7886:
|
||||
sprite[i].picnum = RRTILE5046;
|
||||
s->picnum = RRTILE5046;
|
||||
S_PlayActorSound(495, i);
|
||||
fi.hitradius(i, 10, 0, 0, 1, 1);
|
||||
break;
|
||||
case RRTILE7887:
|
||||
sprite[i].picnum = RRTILE5044;
|
||||
s->picnum = RRTILE5044;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
fi.hitradius(i, 10, 0, 0, 1, 1);
|
||||
break;
|
||||
case RRTILE7900:
|
||||
sprite[i].picnum = RRTILE5047;
|
||||
s->picnum = RRTILE5047;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7906:
|
||||
sprite[i].picnum = RRTILE5048;
|
||||
s->picnum = RRTILE5048;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7912:
|
||||
case RRTILE7913:
|
||||
sprite[i].picnum = RRTILE5049;
|
||||
s->picnum = RRTILE5049;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8047:
|
||||
sprite[i].picnum = RRTILE5050;
|
||||
s->picnum = RRTILE5050;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8596:
|
||||
sprite[i].picnum = RRTILE8598;
|
||||
s->picnum = RRTILE8598;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8059:
|
||||
sprite[i].picnum = RRTILE5051;
|
||||
s->picnum = RRTILE5051;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8060:
|
||||
sprite[i].picnum = RRTILE5052;
|
||||
s->picnum = RRTILE5052;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8222:
|
||||
sprite[i].picnum = RRTILE5053;
|
||||
s->picnum = RRTILE5053;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8223:
|
||||
sprite[i].picnum = RRTILE5054;
|
||||
s->picnum = RRTILE5054;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8224:
|
||||
sprite[i].picnum = RRTILE5055;
|
||||
s->picnum = RRTILE5055;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8370:
|
||||
sprite[i].picnum = RRTILE5056;
|
||||
s->picnum = RRTILE5056;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8371:
|
||||
sprite[i].picnum = RRTILE5057;
|
||||
s->picnum = RRTILE5057;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8372:
|
||||
sprite[i].picnum = RRTILE5058;
|
||||
s->picnum = RRTILE5058;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8373:
|
||||
sprite[i].picnum = RRTILE5059;
|
||||
s->picnum = RRTILE5059;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8396:
|
||||
sprite[i].picnum = RRTILE5038;
|
||||
s->picnum = RRTILE5038;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8397:
|
||||
sprite[i].picnum = RRTILE5039;
|
||||
s->picnum = RRTILE5039;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8398:
|
||||
sprite[i].picnum = RRTILE5040;
|
||||
s->picnum = RRTILE5040;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8399:
|
||||
sprite[i].picnum = RRTILE5041;
|
||||
s->picnum = RRTILE5041;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8385:
|
||||
sprite[i].picnum = RRTILE8386;
|
||||
s->picnum = RRTILE8386;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8387:
|
||||
sprite[i].picnum = RRTILE8388;
|
||||
s->picnum = RRTILE8388;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8389:
|
||||
sprite[i].picnum = RRTILE8390;
|
||||
s->picnum = RRTILE8390;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8391:
|
||||
sprite[i].picnum = RRTILE8392;
|
||||
s->picnum = RRTILE8392;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE7553:
|
||||
sprite[i].picnum = RRTILE5035;
|
||||
s->picnum = RRTILE5035;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8475:
|
||||
sprite[i].picnum = RRTILE5075;
|
||||
s->picnum = RRTILE5075;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8498:
|
||||
sprite[i].picnum = RRTILE5077;
|
||||
s->picnum = RRTILE5077;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8499:
|
||||
sprite[i].picnum = RRTILE5078;
|
||||
s->picnum = RRTILE5078;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE2445:
|
||||
sprite[i].picnum = RRTILE2450;
|
||||
s->picnum = RRTILE2450;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE2123:
|
||||
sprite[i].picnum = RRTILE2124;
|
||||
s->picnum = RRTILE2124;
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
lotsofglass(i, -1, 10);
|
||||
break;
|
||||
case RRTILE3773:
|
||||
sprite[i].picnum = RRTILE8651;
|
||||
s->picnum = RRTILE8651;
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
lotsofglass(i, -1, 10);
|
||||
break;
|
||||
case RRTILE7533:
|
||||
sprite[i].picnum = RRTILE5035;
|
||||
s->picnum = RRTILE5035;
|
||||
S_PlayActorSound(495, i);
|
||||
fi.hitradius(i, 10, 0, 0, 1, 1);
|
||||
break;
|
||||
case RRTILE8394:
|
||||
sprite[i].picnum = RRTILE5072;
|
||||
s->picnum = RRTILE5072;
|
||||
S_PlayActorSound(495, i);
|
||||
break;
|
||||
case RRTILE8461:
|
||||
case RRTILE8462:
|
||||
sprite[i].picnum = RRTILE5074;
|
||||
s->picnum = RRTILE5074;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8679:
|
||||
sprite[i].picnum = RRTILE8680;
|
||||
s->picnum = RRTILE8680;
|
||||
S_PlayActorSound(DUKE_SHUCKS, i);
|
||||
fi.hitradius(i, 10, 0, 0, 1, 1);
|
||||
if (sprite[i].lotag != 0)
|
||||
if (s->lotag != 0)
|
||||
{
|
||||
short j;
|
||||
for (j = 0; j < MAXSPRITES; j++)
|
||||
{
|
||||
if (sprite[j].picnum == RRTILE8679 && sprite[j].pal == 4)
|
||||
{
|
||||
if (sprite[j].lotag == sprite[i].lotag)
|
||||
if (sprite[j].lotag == s->lotag)
|
||||
sprite[j].picnum = RRTILE8680;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case RRTILE3584:
|
||||
sprite[i].picnum = RRTILE8681;
|
||||
s->picnum = RRTILE8681;
|
||||
S_PlayActorSound(495, i);
|
||||
fi.hitradius(i, 250, 0, 0, 1, 1);
|
||||
break;
|
||||
case RRTILE8682:
|
||||
sprite[i].picnum = RRTILE8683;
|
||||
s->picnum = RRTILE8683;
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
case RRTILE8099:
|
||||
if (sprite[i].lotag == 5)
|
||||
if (s->lotag == 5)
|
||||
{
|
||||
short j;
|
||||
sprite[i].lotag = 0;
|
||||
sprite[i].picnum = RRTILE5087;
|
||||
s->lotag = 0;
|
||||
s->picnum = RRTILE5087;
|
||||
S_PlayActorSound(340, i);
|
||||
for (j = 0; j < MAXSPRITES; j++)
|
||||
{
|
||||
|
@ -1943,17 +1943,17 @@ void checkhitsprite_r(int i, int sn)
|
|||
}
|
||||
break;
|
||||
case RRTILE2431:
|
||||
if (sprite[i].pal != 4)
|
||||
if (s->pal != 4)
|
||||
{
|
||||
sprite[i].picnum = RRTILE2451;
|
||||
if (sprite[i].lotag != 0)
|
||||
s->picnum = RRTILE2451;
|
||||
if (s->lotag != 0)
|
||||
{
|
||||
short j;
|
||||
for (j = 0; j < MAXSPRITES; j++)
|
||||
{
|
||||
if (sprite[j].picnum == RRTILE2431 && sprite[j].pal == 4)
|
||||
{
|
||||
if (sprite[i].lotag == sprite[j].lotag)
|
||||
if (s->lotag == sprite[j].lotag)
|
||||
sprite[j].picnum = RRTILE2451;
|
||||
}
|
||||
}
|
||||
|
@ -1961,8 +1961,8 @@ void checkhitsprite_r(int i, int sn)
|
|||
}
|
||||
break;
|
||||
case RRTILE2443:
|
||||
if (sprite[i].pal != 19)
|
||||
sprite[i].picnum = RRTILE2455;
|
||||
if (s->pal != 19)
|
||||
s->picnum = RRTILE2455;
|
||||
break;
|
||||
case RRTILE2455:
|
||||
S_PlayActorSound(SQUISHED, i);
|
||||
|
@ -1970,24 +1970,24 @@ void checkhitsprite_r(int i, int sn)
|
|||
deletesprite(i);
|
||||
break;
|
||||
case RRTILE2451:
|
||||
if (sprite[i].pal != 4)
|
||||
if (s->pal != 4)
|
||||
{
|
||||
S_PlayActorSound(SQUISHED, i);
|
||||
if (sprite[i].lotag != 0)
|
||||
if (s->lotag != 0)
|
||||
{
|
||||
short j;
|
||||
for (j = 0; j < MAXSPRITES; j++)
|
||||
{
|
||||
if (sprite[j].picnum == RRTILE2451 && sprite[j].pal == 4)
|
||||
{
|
||||
if (sprite[i].lotag == sprite[j].lotag)
|
||||
if (s->lotag == sprite[j].lotag)
|
||||
{
|
||||
fi.guts(&sprite[i], RRTILE2460, 12, myconnectindex);
|
||||
fi.guts(&sprite[i], RRTILE2465, 3, myconnectindex);
|
||||
sprite[j].xrepeat = 0;
|
||||
sprite[j].yrepeat = 0;
|
||||
sprite[i].xrepeat = 0;
|
||||
sprite[i].yrepeat = 0;
|
||||
s->xrepeat = 0;
|
||||
s->yrepeat = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1996,8 +1996,8 @@ void checkhitsprite_r(int i, int sn)
|
|||
{
|
||||
fi.guts(&sprite[i], RRTILE2460, 12, myconnectindex);
|
||||
fi.guts(&sprite[i], RRTILE2465, 3, myconnectindex);
|
||||
sprite[i].xrepeat = 0;
|
||||
sprite[i].yrepeat = 0;
|
||||
s->xrepeat = 0;
|
||||
s->yrepeat = 0;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -2006,22 +2006,22 @@ void checkhitsprite_r(int i, int sn)
|
|||
break;
|
||||
}
|
||||
|
||||
switch (sprite[i].picnum)
|
||||
switch (s->picnum)
|
||||
{
|
||||
case RRTILE3114:
|
||||
sprite[i].picnum = RRTILE3117;
|
||||
s->picnum = RRTILE3117;
|
||||
break;
|
||||
case RRTILE2876:
|
||||
sprite[i].picnum = RRTILE2990;
|
||||
s->picnum = RRTILE2990;
|
||||
break;
|
||||
case RRTILE3152:
|
||||
sprite[i].picnum = RRTILE3218;
|
||||
s->picnum = RRTILE3218;
|
||||
break;
|
||||
case RRTILE3153:
|
||||
sprite[i].picnum = RRTILE3219;
|
||||
s->picnum = RRTILE3219;
|
||||
break;
|
||||
case RRTILE2030:
|
||||
sprite[i].picnum = RRTILE2034;
|
||||
s->picnum = RRTILE2034;
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
lotsofglass(i, -1, 10);
|
||||
break;
|
||||
|
@ -2029,19 +2029,19 @@ void checkhitsprite_r(int i, int sn)
|
|||
case RRTILE2915:
|
||||
case RRTILE3115:
|
||||
case RRTILE3171:
|
||||
switch (sprite[i].picnum)
|
||||
switch (s->picnum)
|
||||
{
|
||||
case RRTILE2915:
|
||||
sprite[i].picnum = RRTILE2977;
|
||||
s->picnum = RRTILE2977;
|
||||
break;
|
||||
case RRTILE2893:
|
||||
sprite[i].picnum = RRTILE2978;
|
||||
s->picnum = RRTILE2978;
|
||||
break;
|
||||
case RRTILE3115:
|
||||
sprite[i].picnum = RRTILE3116;
|
||||
s->picnum = RRTILE3116;
|
||||
break;
|
||||
case RRTILE3171:
|
||||
sprite[i].picnum = RRTILE3216;
|
||||
s->picnum = RRTILE3216;
|
||||
break;
|
||||
}
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
|
@ -2051,7 +2051,7 @@ void checkhitsprite_r(int i, int sn)
|
|||
case RRTILE2158:
|
||||
case RRTILE2160:
|
||||
case RRTILE2175:
|
||||
sprite[i].picnum++;
|
||||
s->picnum++;
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
lotsofglass(i, -1, 10);
|
||||
break;
|
||||
|
@ -2060,12 +2060,12 @@ void checkhitsprite_r(int i, int sn)
|
|||
case RRTILE2152:
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
lotsofglass(i, -1, 10);
|
||||
sprite[i].picnum++;
|
||||
s->picnum++;
|
||||
for (k = 0; k < 6; k++)
|
||||
EGS(sprite[i].sectnum, sprite[i].x, sprite[i].y, sprite[i].z - (8 << 8), SCRAP6 + (krand() & 15), -8, 48, 48, krand() & 2047, (krand() & 63) + 64, -(krand() & 4095) - (sprite[i].zvel >> 2), i, 5);
|
||||
EGS(s->sectnum, s->x, s->y, s->z - (8 << 8), SCRAP6 + (krand() & 15), -8, 48, 48, krand() & 2047, (krand() & 63) + 64, -(krand() & 4095) - (s->zvel >> 2), i, 5);
|
||||
break;
|
||||
case BOWLINGBALL:
|
||||
sprite[sn].xvel = (sprite[i].xvel >> 1) + (sprite[i].xvel >> 2);
|
||||
sprite[sn].xvel = (s->xvel >> 1) + (s->xvel >> 2);
|
||||
sprite[sn].ang -= (krand() & 16);
|
||||
S_PlayActorSound(355, i);
|
||||
break;
|
||||
|
@ -2078,32 +2078,32 @@ void checkhitsprite_r(int i, int sn)
|
|||
case HENSTAND + 1:
|
||||
if (sprite[sn].picnum == QUEBALL || sprite[sn].picnum == STRIPEBALL)
|
||||
{
|
||||
sprite[sn].xvel = (sprite[i].xvel >> 1) + (sprite[i].xvel >> 2);
|
||||
sprite[sn].ang -= (sprite[i].ang << 1) + 1024;
|
||||
sprite[i].ang = getangle(sprite[i].x - sprite[sn].x, sprite[i].y - sprite[sn].y) - 512;
|
||||
sprite[sn].xvel = (s->xvel >> 1) + (s->xvel >> 2);
|
||||
sprite[sn].ang -= (s->ang << 1) + 1024;
|
||||
s->ang = getangle(s->x - sprite[sn].x, s->y - sprite[sn].y) - 512;
|
||||
if (S_CheckSoundPlaying(POOLBALLHIT) < 2)
|
||||
S_PlayActorSound(POOLBALLHIT, i);
|
||||
}
|
||||
else if (sprite[sn].picnum == RRTILE3440 || sprite[sn].picnum == RRTILE3440 + 1)
|
||||
{
|
||||
sprite[sn].xvel = (sprite[i].xvel >> 1) + (sprite[i].xvel >> 2);
|
||||
sprite[sn].ang -= ((sprite[i].ang << 1) + krand()) & 64;
|
||||
sprite[i].ang = (sprite[i].ang + krand()) & 16;
|
||||
sprite[sn].xvel = (s->xvel >> 1) + (s->xvel >> 2);
|
||||
sprite[sn].ang -= ((s->ang << 1) + krand()) & 64;
|
||||
s->ang = (s->ang + krand()) & 16;
|
||||
S_PlayActorSound(355, i);
|
||||
}
|
||||
else if (sprite[sn].picnum == HENSTAND || sprite[sn].picnum == HENSTAND + 1)
|
||||
{
|
||||
sprite[sn].xvel = (sprite[i].xvel >> 1) + (sprite[i].xvel >> 2);
|
||||
sprite[sn].ang -= ((sprite[i].ang << 1) + krand()) & 16;
|
||||
sprite[i].ang = (sprite[i].ang + krand()) & 16;
|
||||
sprite[sn].xvel = (s->xvel >> 1) + (s->xvel >> 2);
|
||||
sprite[sn].ang -= ((s->ang << 1) + krand()) & 16;
|
||||
s->ang = (s->ang + krand()) & 16;
|
||||
S_PlayActorSound(355, i);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (krand() & 3)
|
||||
{
|
||||
sprite[i].xvel = 164;
|
||||
sprite[i].ang = sprite[sn].ang;
|
||||
s->xvel = 164;
|
||||
s->ang = sprite[sn].ang;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -2127,7 +2127,7 @@ void checkhitsprite_r(int i, int sn)
|
|||
case UWHIP:
|
||||
if (hittype[i].temp_data[0] == 0)
|
||||
{
|
||||
sprite[i].cstat &= ~257;
|
||||
s->cstat &= ~257;
|
||||
hittype[i].temp_data[0] = 1;
|
||||
fi.spawn(i, BURNING);
|
||||
}
|
||||
|
@ -2152,13 +2152,13 @@ void checkhitsprite_r(int i, int sn)
|
|||
case UWHIP:
|
||||
for (k = 0; k < 64; k++)
|
||||
{
|
||||
j = EGS(sprite[i].sectnum, sprite[i].x, sprite[i].y, sprite[i].z - (krand() % (48 << 8)), SCRAP6 + (krand() & 3), -8, 48, 48, krand() & 2047, (krand() & 63) + 64, -(krand() & 4095) - (sprite[i].zvel >> 2), i, 5);
|
||||
j = EGS(s->sectnum, s->x, s->y, s->z - (krand() % (48 << 8)), SCRAP6 + (krand() & 3), -8, 48, 48, krand() & 2047, (krand() & 63) + 64, -(krand() & 4095) - (s->zvel >> 2), i, 5);
|
||||
sprite[j].pal = 8;
|
||||
}
|
||||
|
||||
if (sprite[i].picnum == CACTUS)
|
||||
sprite[i].picnum = CACTUSBROKE;
|
||||
sprite[i].cstat &= ~257;
|
||||
if (s->picnum == CACTUS)
|
||||
s->picnum = CACTUSBROKE;
|
||||
s->cstat &= ~257;
|
||||
// else deletesprite(i);
|
||||
break;
|
||||
}
|
||||
|
@ -2166,10 +2166,9 @@ void checkhitsprite_r(int i, int sn)
|
|||
|
||||
|
||||
case FANSPRITE:
|
||||
sprite[i].picnum = FANSPRITEBROKE;
|
||||
sprite[i].cstat &= (65535 - 257);
|
||||
s->picnum = FANSPRITEBROKE;
|
||||
s->cstat &= (65535 - 257);
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
s = &sprite[i];
|
||||
for (j = 0; j < 16; j++) RANDOMSCRAP(s, i);
|
||||
|
||||
break;
|
||||
|
@ -2186,7 +2185,7 @@ void checkhitsprite_r(int i, int sn)
|
|||
if (actorinfo[SHOTSPARK1].scriptaddress && sprite[sn].extra != ScriptCode[actorinfo[SHOTSPARK1].scriptaddress])
|
||||
{
|
||||
for (j = 0; j < 15; j++)
|
||||
EGS(sprite[i].sectnum, sprite[i].x, sprite[i].y, sector[sprite[i].sectnum].floorz - (12 << 8) - (j << 9), SCRAP1 + (krand() & 15), -8, 64, 64,
|
||||
EGS(s->sectnum, s->x, s->y, sector[s->sectnum].floorz - (12 << 8) - (j << 9), SCRAP1 + (krand() & 15), -8, 64, 64,
|
||||
krand() & 2047, (krand() & 127) + 64, -(krand() & 511) - 256, i, 5);
|
||||
fi.spawn(i, EXPLOSION2);
|
||||
deletesprite(i);
|
||||
|
@ -2221,18 +2220,18 @@ void checkhitsprite_r(int i, int sn)
|
|||
case VASE:
|
||||
case STATUEFLASH:
|
||||
case STATUE:
|
||||
if (sprite[i].picnum == BOTTLE10)
|
||||
if (s->picnum == BOTTLE10)
|
||||
fi.lotsofmoney(&sprite[i], 4 + (krand() & 3));
|
||||
else if (sprite[i].picnum == STATUE || sprite[i].picnum == STATUEFLASH)
|
||||
else if (s->picnum == STATUE || s->picnum == STATUEFLASH)
|
||||
{
|
||||
lotsofcolourglass(i, -1, 40);
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
}
|
||||
else if (sprite[i].picnum == VASE)
|
||||
else if (s->picnum == VASE)
|
||||
lotsofglass(i, -1, 40);
|
||||
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
sprite[i].ang = krand() & 2047;
|
||||
s->ang = krand() & 2047;
|
||||
lotsofglass(i, -1, 8);
|
||||
deletesprite(i);
|
||||
break;
|
||||
|
@ -2246,49 +2245,49 @@ void checkhitsprite_r(int i, int sn)
|
|||
deletesprite(i);
|
||||
break;
|
||||
case FORCESPHERE:
|
||||
sprite[i].xrepeat = 0;
|
||||
hittype[sprite[i].owner].temp_data[0] = 32;
|
||||
hittype[sprite[i].owner].temp_data[1] = !hittype[sprite[i].owner].temp_data[1];
|
||||
hittype[sprite[i].owner].temp_data[2] ++;
|
||||
s->xrepeat = 0;
|
||||
hittype[s->owner].temp_data[0] = 32;
|
||||
hittype[s->owner].temp_data[1] = !hittype[s->owner].temp_data[1];
|
||||
hittype[s->owner].temp_data[2] ++;
|
||||
fi.spawn(i, EXPLOSION2);
|
||||
break;
|
||||
case TOILET:
|
||||
sprite[i].picnum = TOILETBROKE;
|
||||
sprite[i].cstat |= (krand() & 1) << 2;
|
||||
sprite[i].cstat &= ~257;
|
||||
s->picnum = TOILETBROKE;
|
||||
s->cstat |= (krand() & 1) << 2;
|
||||
s->cstat &= ~257;
|
||||
fi.spawn(i, TOILETWATER);
|
||||
S_PlayActorSound(GLASS_BREAKING, i);
|
||||
break;
|
||||
|
||||
case STALL:
|
||||
sprite[i].picnum = STALLBROKE;
|
||||
sprite[i].cstat |= (krand() & 1) << 2;
|
||||
sprite[i].cstat &= ~257;
|
||||
s->picnum = STALLBROKE;
|
||||
s->cstat |= (krand() & 1) << 2;
|
||||
s->cstat &= ~257;
|
||||
fi.spawn(i, TOILETWATER);
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
|
||||
case HYDRENT:
|
||||
sprite[i].picnum = BROKEFIREHYDRENT;
|
||||
s->picnum = BROKEFIREHYDRENT;
|
||||
fi.spawn(i, TOILETWATER);
|
||||
|
||||
// for(k=0;k<5;k++)
|
||||
// {
|
||||
// j = EGS(sprite[i].sectnum,sprite[i].x,sprite[i].y,sprite[i].z-(krand()%(48<<8)),SCRAP3+(krand()&3),-8,48,48,krand()&2047,(krand()&63)+64,-(krand()&4095)-(sprite[i].zvel>>2),i,5);
|
||||
// j = EGS(s->sectnum,s->x,s->y,s->z-(krand()%(48<<8)),SCRAP3+(krand()&3),-8,48,48,krand()&2047,(krand()&63)+64,-(krand()&4095)-(s->zvel>>2),i,5);
|
||||
// sprite[j].pal = 2;
|
||||
// }
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
break;
|
||||
|
||||
case GRATE1:
|
||||
sprite[i].picnum = BGRATE1;
|
||||
sprite[i].cstat &= (65535 - 256 - 1);
|
||||
s->picnum = BGRATE1;
|
||||
s->cstat &= (65535 - 256 - 1);
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
|
||||
case CIRCLEPANNEL:
|
||||
sprite[i].picnum = CIRCLEPANNELBROKE;
|
||||
sprite[i].cstat &= (65535 - 256 - 1);
|
||||
s->picnum = CIRCLEPANNELBROKE;
|
||||
s->cstat &= (65535 - 256 - 1);
|
||||
S_PlayActorSound(VENT_BUST, i);
|
||||
break;
|
||||
|
||||
|
@ -2298,24 +2297,24 @@ void checkhitsprite_r(int i, int sn)
|
|||
case PIPE4:
|
||||
case PIPE5:
|
||||
case PIPE6:
|
||||
switch (sprite[i].picnum)
|
||||
switch (s->picnum)
|
||||
{
|
||||
case PIPE1:sprite[i].picnum = PIPE1B; break;
|
||||
case PIPE2:sprite[i].picnum = PIPE2B; break;
|
||||
case PIPE3:sprite[i].picnum = PIPE3B; break;
|
||||
case PIPE4:sprite[i].picnum = PIPE4B; break;
|
||||
case PIPE5:sprite[i].picnum = PIPE5B; break;
|
||||
case PIPE6:sprite[i].picnum = PIPE6B; break;
|
||||
case PIPE1:s->picnum = PIPE1B; break;
|
||||
case PIPE2:s->picnum = PIPE2B; break;
|
||||
case PIPE3:s->picnum = PIPE3B; break;
|
||||
case PIPE4:s->picnum = PIPE4B; break;
|
||||
case PIPE5:s->picnum = PIPE5B; break;
|
||||
case PIPE6:s->picnum = PIPE6B; break;
|
||||
}
|
||||
|
||||
j = fi.spawn(i, STEAM);
|
||||
sprite[j].z = sector[sprite[i].sectnum].floorz - (32 << 8);
|
||||
sprite[j].z = sector[s->sectnum].floorz - (32 << 8);
|
||||
break;
|
||||
|
||||
case CHAIR1:
|
||||
case CHAIR2:
|
||||
sprite[i].picnum = BROKENCHAIR;
|
||||
sprite[i].cstat = 0;
|
||||
s->picnum = BROKENCHAIR;
|
||||
s->cstat = 0;
|
||||
break;
|
||||
case CHAIR3:
|
||||
case MOVIECAMERA:
|
||||
|
@ -2327,26 +2326,26 @@ void checkhitsprite_r(int i, int sn)
|
|||
case POT2:
|
||||
case POT3:
|
||||
S_PlayActorSound(GLASS_HEAVYBREAK, i);
|
||||
s = &sprite[i];
|
||||
for (j = 0; j < 16; j++) RANDOMSCRAP(s, i);
|
||||
deletesprite(i);
|
||||
break;
|
||||
case PLAYERONWATER:
|
||||
i = sprite[i].owner;
|
||||
i = s->owner;
|
||||
s = &sprite[i];
|
||||
default:
|
||||
if ((sprite[i].cstat & 16) && sprite[i].hitag == 0 && sprite[i].lotag == 0 && sprite[i].statnum == 0)
|
||||
if ((s->cstat & 16) && s->hitag == 0 && s->lotag == 0 && s->statnum == 0)
|
||||
break;
|
||||
|
||||
if ((sprite[sn].picnum == SHRINKSPARK || sprite[sn].picnum == FREEZEBLAST || sprite[sn].owner != i) && sprite[i].statnum != 4)
|
||||
if ((sprite[sn].picnum == SHRINKSPARK || sprite[sn].picnum == FREEZEBLAST || sprite[sn].owner != i) && s->statnum != 4)
|
||||
{
|
||||
if (badguy(&sprite[i]) == 1)
|
||||
{
|
||||
if (sprite[sn].picnum == RPG) sprite[sn].extra <<= 1;
|
||||
else if (isRRRA() && sprite[sn].picnum == RPG2) sprite[sn].extra <<= 1;
|
||||
|
||||
if ((sprite[i].picnum != DRONE))
|
||||
if ((s->picnum != DRONE))
|
||||
if (sprite[sn].picnum != FREEZEBLAST)
|
||||
//if (actortype[sprite[i].picnum] == 0) //TRANSITIONAL. Cannot be done right with EDuke mess backing the engine.
|
||||
//if (actortype[s->picnum] == 0) //TRANSITIONAL. Cannot be done right with EDuke mess backing the engine.
|
||||
{
|
||||
j = fi.spawn(sn, JIBS6);
|
||||
if (sprite[sn].pal == 6)
|
||||
|
@ -2359,7 +2358,7 @@ void checkhitsprite_r(int i, int sn)
|
|||
|
||||
j = sprite[sn].owner;
|
||||
|
||||
if (j >= 0 && sprite[j].picnum == APLAYER && sprite[i].picnum != DRONE)
|
||||
if (j >= 0 && sprite[j].picnum == APLAYER && s->picnum != DRONE)
|
||||
if (ps[sprite[j].yvel].curr_weapon == SHOTGUN_WEAPON)
|
||||
{
|
||||
fi.shoot(i, BLOODSPLAT3);
|
||||
|
@ -2368,28 +2367,28 @@ void checkhitsprite_r(int i, int sn)
|
|||
fi.shoot(i, BLOODSPLAT4);
|
||||
}
|
||||
|
||||
if (sprite[i].statnum == 2)
|
||||
if (s->statnum == 2)
|
||||
{
|
||||
changespritestat(i, 1);
|
||||
hittype[i].timetosleep = SLEEPTIME;
|
||||
}
|
||||
}
|
||||
|
||||
if (sprite[i].statnum != 2)
|
||||
if (s->statnum != 2)
|
||||
{
|
||||
if (sprite[sn].picnum == FREEZEBLAST && ((sprite[i].picnum == APLAYER && sprite[i].pal == 1) || (freezerhurtowner == 0 && sprite[sn].owner == i)))
|
||||
if (sprite[sn].picnum == FREEZEBLAST && ((s->picnum == APLAYER && s->pal == 1) || (freezerhurtowner == 0 && sprite[sn].owner == i)))
|
||||
return;
|
||||
|
||||
hittype[i].picnum = sprite[sn].picnum;
|
||||
hittype[i].extra += sprite[sn].extra;
|
||||
if (sprite[i].picnum != COW)
|
||||
if (s->picnum != COW)
|
||||
hittype[i].ang = sprite[sn].ang;
|
||||
hittype[i].owner = sprite[sn].owner;
|
||||
}
|
||||
|
||||
if (sprite[i].statnum == 10)
|
||||
if (s->statnum == 10)
|
||||
{
|
||||
p = sprite[i].yvel;
|
||||
p = s->yvel;
|
||||
if (ps[p].newowner >= 0)
|
||||
{
|
||||
ps[p].newowner = -1;
|
||||
|
|
Loading…
Reference in a new issue