mirror of
https://github.com/ZDoom/Raze.git
synced 2025-02-21 02:51:46 +00:00
- explosion2, trailingsmoke
This commit is contained in:
parent
4af9d43a28
commit
46b45b6a4d
1 changed files with 39 additions and 37 deletions
|
@ -1429,66 +1429,68 @@ void explosion(int i, int x, int y, int z, int owner) {
|
|||
|
||||
void explosion2(int i, int x, int y, int z, int owner) {
|
||||
int j = insertsprite(sprite[i].sectnum, EXPLO);
|
||||
auto& spawned = sprite[j];
|
||||
|
||||
boolean isWH2 = isWh2();
|
||||
|
||||
if(!isWH2) {
|
||||
sprite[j].x = x + (krand() & 256) - 128;
|
||||
sprite[j].y = y + (krand() & 256) - 128;
|
||||
sprite[j].z = z;
|
||||
spawned.x = x + (krand() & 256) - 128;
|
||||
spawned.y = y + (krand() & 256) - 128;
|
||||
spawned.z = z;
|
||||
} else {
|
||||
sprite[j].x = x;
|
||||
sprite[j].y = y;
|
||||
sprite[j].z = z + (16 << 8);
|
||||
spawned.x = x;
|
||||
spawned.y = y;
|
||||
spawned.z = z + (16 << 8);
|
||||
}
|
||||
|
||||
sprite[j].cstat = 0;
|
||||
sprite[j].cstat &= ~3;
|
||||
spawned.cstat = 0;
|
||||
spawned.cstat &= ~3;
|
||||
|
||||
sprite[j].shade = -25;
|
||||
sprite[j].xrepeat = 64;
|
||||
sprite[j].yrepeat = 64;
|
||||
sprite[j].ang = (short) (krand() & 2047);
|
||||
sprite[j].xvel = (short) ((krand() & 256) - 128);
|
||||
sprite[j].yvel = (short) ((krand() & 256) - 128);
|
||||
sprite[j].zvel = (short) ((krand() & 256) - 128);
|
||||
sprite[j].owner = sprite[i].owner;
|
||||
sprite[j].hitag = 0;
|
||||
sprite[j].pal = 0;
|
||||
spawned.shade = -25;
|
||||
spawned.xrepeat = 64;
|
||||
spawned.yrepeat = 64;
|
||||
spawned.ang = (short) (krand() & 2047);
|
||||
spawned.xvel = (short) ((krand() & 256) - 128);
|
||||
spawned.yvel = (short) ((krand() & 256) - 128);
|
||||
spawned.zvel = (short) ((krand() & 256) - 128);
|
||||
spawned.owner = sprite[i].owner;
|
||||
spawned.hitag = 0;
|
||||
spawned.pal = 0;
|
||||
|
||||
if(!isWH2) {
|
||||
sprite[j].picnum = MONSTERBALL;
|
||||
sprite[j].lotag = 128;
|
||||
spawned.picnum = MONSTERBALL;
|
||||
spawned.lotag = 128;
|
||||
} else {
|
||||
sprite[j].picnum = EXPLOSTART;
|
||||
sprite[j].lotag = 12;
|
||||
spawned.picnum = EXPLOSTART;
|
||||
spawned.lotag = 12;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void trailingsmoke(int i, boolean ball) {
|
||||
int j = insertsprite(sprite[i].sectnum, SMOKE);
|
||||
auto& spawned = sprite[j];
|
||||
|
||||
sprite[j].x = sprite[i].x;
|
||||
sprite[j].y = sprite[i].y;
|
||||
sprite[j].z = sprite[i].z;
|
||||
spawned.x = sprite[i].x;
|
||||
spawned.y = sprite[i].y;
|
||||
spawned.z = sprite[i].z;
|
||||
|
||||
sprite[j].cstat = 0x03;
|
||||
sprite[j].cstat &= ~3;
|
||||
sprite[j].picnum = SMOKEFX;
|
||||
sprite[j].shade = 0;
|
||||
spawned.cstat = 0x03;
|
||||
spawned.cstat &= ~3;
|
||||
spawned.picnum = SMOKEFX;
|
||||
spawned.shade = 0;
|
||||
if (ball) {
|
||||
sprite[j].xrepeat = 128;
|
||||
sprite[j].yrepeat = 128;
|
||||
spawned.xrepeat = 128;
|
||||
spawned.yrepeat = 128;
|
||||
} else {
|
||||
sprite[j].xrepeat = 32;
|
||||
sprite[j].yrepeat = 32;
|
||||
spawned.xrepeat = 32;
|
||||
spawned.yrepeat = 32;
|
||||
}
|
||||
sprite[j].pal = 0;
|
||||
spawned.pal = 0;
|
||||
|
||||
sprite[j].owner = sprite[i].owner;
|
||||
sprite[j].lotag = 256;
|
||||
sprite[j].hitag = 0;
|
||||
spawned.owner = sprite[i].owner;
|
||||
spawned.lotag = 256;
|
||||
spawned.hitag = 0;
|
||||
}
|
||||
|
||||
void icecubes(int i, int x, int y, int z, int owner) {
|
||||
|
|
Loading…
Reference in a new issue