diff --git a/source/blood/src/actor.cpp b/source/blood/src/actor.cpp index b05ad5773..5382ec633 100644 --- a/source/blood/src/actor.cpp +++ b/source/blood/src/actor.cpp @@ -2558,7 +2558,7 @@ void actInit(bool bSaveLoad) { if (xsprite[i].reference < 0) continue; XSPRITE* pXSprite = &xsprite[i]; spritetype* pSprite = &sprite[pXSprite->reference]; - switch (pSprite->lotag) { + switch (pSprite->type) { // add statnum for faster dude searching case kGDXDudeTargetChanger: changespritestat(i, kStatGDXDudeTargetChanger); @@ -2586,7 +2586,7 @@ void actInit(bool bSaveLoad) { if (pXSprite->data3 != pXSprite->sysData1) { switch (pSprite->statnum) { case 6: - switch (pSprite->lotag) { + switch (pSprite->type) { case kCustomDude: case kCustomDudeBurning: pXSprite->data3 = pXSprite->sysData1; // move sndStartId back from sysData1 to data3 @@ -2685,9 +2685,9 @@ void actInit(bool bSaveLoad) { XSPRITE *pXSprite = &xsprite[nXSprite]; int nType = pSprite->type - 400; pSprite->clipdist = thingInfo[nType].at4; - pSprite->hitag = thingInfo[nType].at5; - if (pSprite->hitag&2) - pSprite->hitag |= 4; + pSprite->flags = thingInfo[nType].at5; + if (pSprite->flags&2) + pSprite->flags |= 4; xvel[nSprite] = yvel[nSprite] = zvel[nSprite] = 0; pXSprite->health = thingInfo[nType].at0<<4; switch (pSprite->type) @@ -2760,7 +2760,7 @@ void actInit(bool bSaveLoad) { if (!IsPlayerSprite(pSprite)) { switch (pSprite->type) { - case 225: // by NoOne: FakeDude type (no seq, custom hitag, clipdist and cstat) + case 225: // by NoOne: FakeDude type (no seq, custom flags, clipdist and cstat) break; case kCustomDude: case kCustomDudeBurning: @@ -2798,12 +2798,12 @@ void ConcussSprite(int a1, spritetype *pSprite, int x, int y, int z, int a6) int dist2 = 0x40000+dx*dx+dy*dy+dz*dz; dassert(dist2 > 0); a6 = scale(0x40000, a6, dist2); - if (pSprite->hitag & 1) + if (pSprite->flags & 1) { int mass = 0; if (IsDudeSprite(pSprite)) { - mass = dudeInfo[pSprite->lotag - kDudeBase].mass; - switch (pSprite->lotag) { + mass = dudeInfo[pSprite->type - kDudeBase].mass; + switch (pSprite->type) { case kCustomDude: case kCustomDudeBurning: mass = getSpriteMassBySize(pSprite); @@ -2886,7 +2886,7 @@ void sub_2A620(int nSprite, int x, int y, int z, int nSector, int nDist, int a7, spritetype *pSprite2 = &sprite[i]; if (pSprite2->extra > 0 && pSprite2->extra < kMaxXSprites) { - if (pSprite2->hitag & 0x20) + if (pSprite2->flags & 0x20) continue; if (!TestBitString(va0, pSprite2->sectnum)) continue; @@ -2915,7 +2915,7 @@ void sub_2A620(int nSprite, int x, int y, int z, int nSector, int nDist, int a7, for (int i = headspritestat[4]; i >= 0; i = nextspritestat[i]) { spritetype *pSprite2 = &sprite[i]; - if (pSprite2->hitag&0x20) + if (pSprite2->flags&0x20) continue; if (!TestBitString(va0, pSprite2->sectnum)) continue; @@ -2948,7 +2948,7 @@ void sub_2AA94(spritetype *pSprite, XSPRITE *pXSprite) seqSpawn(9, 3, pSprite->extra); if (Chance(0x8000)) pSprite->cstat |= 4; - sfxPlay3DSound(pSprite, 303, 24+(pSprite->hitag&3), 1); + sfxPlay3DSound(pSprite, 303, 24+(pSprite->flags&3), 1); sub_2A620(nSprite, pSprite->x, pSprite->y, pSprite->z, pSprite->sectnum, 128, 0, 60, DAMAGE_TYPE_3, 15, 120, 0, 0); if (pXSprite->data4 > 1) { @@ -3159,7 +3159,7 @@ void actKillDude(int nKillerSprite, spritetype *pSprite, DAMAGE_TYPE damageType, if (pXSprite->dropMsg > 0) // drop items actDropObject(pSprite, pXSprite->dropMsg); - pSprite->hitag &= ~kPhysMove; xvel[pSprite->index] = yvel[pSprite->index] = 0; + pSprite->flags &= ~kPhysMove; xvel[pSprite->index] = yvel[pSprite->index] = 0; int seqId = pXSprite->data2 + 18; if (!gSysRes.Lookup(seqId, "SEQ")) { @@ -3237,7 +3237,7 @@ void actKillDude(int nKillerSprite, spritetype *pSprite, DAMAGE_TYPE damageType, } if (pSprite->type != 249) trTriggerSprite(pSprite->index, pXSprite, 0); - pSprite->hitag |= 7; + pSprite->flags |= 7; if (VanillaMode()) { if (IsPlayerSprite(pKillerSprite)) @@ -3673,7 +3673,7 @@ void actKillDude(int nKillerSprite, spritetype *pSprite, DAMAGE_TYPE damageType, if (pSprite->owner != -1 && pSprite->owner != (kMaxSprites - 1)) { //int owner = actSpriteIdToOwnerId(pSprite->xvel); int owner = pSprite->owner; - switch (sprite[owner].lotag) { + switch (sprite[owner].type) { case kCustomDude: case kCustomDudeBurning: if (owner != -1) gDudeExtra[sprite[owner].extra].at6.u1.at4--; @@ -3701,7 +3701,7 @@ void actKillDude(int nKillerSprite, spritetype *pSprite, DAMAGE_TYPE damageType, int actDamageSprite(int nSource, spritetype *pSprite, DAMAGE_TYPE damageType, int damage) { dassert(nSource < kMaxSprites); - if (pSprite->hitag&32) + if (pSprite->flags&32) return 0; int nXSprite = pSprite->extra; if (nXSprite <= 0) @@ -3724,7 +3724,7 @@ int actDamageSprite(int nSource, spritetype *pSprite, DAMAGE_TYPE damageType, in { if (pSprite->type < kDudeBase || pSprite->type >= kDudeMax) { - sprintf(buffer, "Bad Dude Failed: initial=%d type=%d %s\n", (int)pSprite->zvel, (int)pSprite->type, (int)(pSprite->hitag&16) ? "RESPAWN" : "NORMAL"); + sprintf(buffer, "Bad Dude Failed: initial=%d type=%d %s\n", (int)pSprite->inittype, (int)pSprite->type, (int)(pSprite->flags&16) ? "RESPAWN" : "NORMAL"); ThrowError(buffer); } dassert(pSprite->type >= kDudeBase && pSprite->type < kDudeMax); @@ -3779,7 +3779,7 @@ int actDamageSprite(int nSource, spritetype *pSprite, DAMAGE_TYPE damageType, in if (pSprite->owner >= 0 && sprite[pSprite->owner].type == kCustomDude) sprite[pSprite->owner].owner = kMaxSprites -1; // By NoOne: indicates if custom dude had life leech. } - else if (!(pSprite->hitag&16)) + else if (!(pSprite->flags&16)) actPropagateSpriteOwner(pSprite, &sprite[nSource]); trTriggerSprite(pSprite->index, pXSprite, 0); switch (pSprite->type) @@ -3946,7 +3946,7 @@ void actImpactMissile(spritetype *pMissile, int a2) XSPRITE* pXSource = (pSource->extra >= 0) ? &xsprite[pSource->extra] : NULL; if (IsDudeSprite(pSource) && pXSource != NULL && pXSource->health != 0) - actHealDude(pXSource, nDamage >> 2, dudeInfo[pSource->lotag - kDudeBase].startHealth); + actHealDude(pXSource, nDamage >> 2, dudeInfo[pSource->type - kDudeBase].startHealth); } } if (pMissile->extra > 0) @@ -4214,7 +4214,7 @@ void actKickObject(spritetype *pSprite1, spritetype *pSprite2) xvel[nSprite2] = mulscale30(nSpeed, Cos(pSprite1->ang+Random2(85))); yvel[nSprite2] = mulscale30(nSpeed, Sin(pSprite1->ang+Random2(85))); zvel[nSprite2] = mulscale(nSpeed, -0x2000, 14); - pSprite2->hitag = 7; + pSprite2->flags = 7; } void actTouchFloor(spritetype *pSprite, int nSector) @@ -4226,10 +4226,10 @@ void actTouchFloor(spritetype *pSprite, int nSector) if (pSector->extra > 0) pXSector = &xsector[pSector->extra]; - if (pXSector && (pSector->lotag == 618 || pXSector->damageType > 0)) + if (pXSector && (pSector->type == 618 || pXSector->damageType > 0)) { DAMAGE_TYPE nDamageType; - if (pSector->lotag == 618) + if (pSector->type == 618) nDamageType = (DAMAGE_TYPE)ClipRange(pXSector->damageType, DAMAGE_TYPE_0, DAMAGE_TYPE_6); else nDamageType = (DAMAGE_TYPE)ClipRange(pXSector->damageType - 1, DAMAGE_TYPE_0, DAMAGE_TYPE_6); @@ -4272,16 +4272,16 @@ void ProcessTouchObjects(spritetype *pSprite, int nXSprite) int nType = pSprite2->type-kThingBase; THINGINFO *pThingInfo = &thingInfo[nType]; if (pThingInfo->at5&1) - pSprite2->hitag |= 1; + pSprite2->flags |= 1; if (pThingInfo->at5&2) - pSprite2->hitag |= 4; + pSprite2->flags |= 4; // Inlined ? xvel[pSprite2->index] += mulscale(4, pSprite2->x-sprite[nSprite].x, 2); yvel[pSprite2->index] += mulscale(4, pSprite2->y-sprite[nSprite].y, 2); } else { - pSprite2->hitag |= 5; + pSprite2->flags |= 5; xvel[pSprite2->index] += mulscale(4, pSprite2->x-sprite[nSprite].x, 2); yvel[pSprite2->index] += mulscale(4, pSprite2->y-sprite[nSprite].y, 2); @@ -4655,7 +4655,7 @@ int MoveThing(spritetype *pSprite) int ceilZ, ceilHit, floorZ, floorHit; GetZRange(pSprite, &ceilZ, &ceilHit, &floorZ, &floorHit, pSprite->clipdist<<2, CLIPMASK0); GetSpriteExtents(pSprite, &top, &bottom); - if ((pSprite->hitag & 2) && bottom < floorZ) + if ((pSprite->flags & 2) && bottom < floorZ) { pSprite->z += 455; zvel[nSprite] += 58254; @@ -4690,7 +4690,7 @@ int MoveThing(spritetype *pSprite) int v20 = zvel[nSprite]-velFloor[pSprite->sectnum]; if (v20 > 0) { - pSprite->hitag |= 4; + pSprite->flags |= 4; int vax = actFloorBounceVector((int*)&xvel[nSprite], (int*)&yvel[nSprite], (int*)&v20, pSprite->sectnum, pThingInfo->at7); int nDamage = mulscale(vax, vax, 30)-pThingInfo->atb; if (nDamage > 0) @@ -4699,7 +4699,7 @@ int MoveThing(spritetype *pSprite) if (velFloor[pSprite->sectnum] == 0 && klabs(zvel[nSprite]) < 0x10000) { zvel[nSprite] = 0; - pSprite->hitag &= ~4; + pSprite->flags &= ~4; } switch (pSprite->type) { @@ -4722,13 +4722,13 @@ int MoveThing(spritetype *pSprite) v8 = 0x4000|nSector; } else if (zvel[nSprite] == 0) - pSprite->hitag &= ~4; + pSprite->flags &= ~4; } else { gSpriteHit[nXSprite].florhit = 0; - if (pSprite->hitag&2) - pSprite->hitag |= 4; + if (pSprite->flags&2) + pSprite->flags |= 4; } if (top <= ceilZ) { @@ -4820,7 +4820,7 @@ void MoveDude(spritetype *pSprite) if (pSprite->statnum == 6 || pSprite->statnum == 4) actDamageSprite(pSprite->index, pSprite, DAMAGE_TYPE_0, 1000<<4); } - if (sector[nSector].lotag >= 612 && sector[nSector].lotag <= 617) + if (sector[nSector].type >= 612 && sector[nSector].type <= 617) { short nSector2 = nSector; if (pushmove_old(&pSprite->x, &pSprite->y, &pSprite->z, &nSector2, wd, tz, bz, CLIPMASK0) == -1) @@ -4842,7 +4842,7 @@ void MoveDude(spritetype *pSprite) if (pSprite->extra > 0) pHitXSprite = &xsprite[pHitSprite->extra]; int nOwner = actSpriteOwnerToSpriteId(pHitSprite); - if (pHitSprite->statnum == 5 && !(pHitSprite->hitag&32) && pSprite->index != nOwner) + if (pHitSprite->statnum == 5 && !(pHitSprite->flags&32) && pSprite->index != nOwner) { HITINFO hitInfo = gHitInfo; gHitInfo.hitsprite = nSprite; @@ -4908,7 +4908,7 @@ void MoveDude(spritetype *pSprite) pXSector = NULL; if (pXSector && pXSector->Enter && (pPlayer || !pXSector->at37_7)) { - if (sector[nSector].lotag == 604) + if (sector[nSector].type == 604) pXSector->data = pPlayer ? nSprite : -1; trTriggerSector(nSector, pXSector, 42); } @@ -4937,7 +4937,7 @@ void MoveDude(spritetype *pSprite) int ceilZ, ceilHit, floorZ, floorHit; GetZRange(pSprite, &ceilZ, &ceilHit, &floorZ, &floorHit, wd, CLIPMASK0, PARALLAXCLIP_CEILING|PARALLAXCLIP_FLOOR); GetSpriteExtents(pSprite, &top, &bottom); - if (pSprite->hitag & 2) + if (pSprite->flags & 2) { int vc = 58254; if (bDepth) @@ -5021,7 +5021,7 @@ void MoveDude(spritetype *pSprite) break; case 217: aiNewState(pSprite, pXSprite, &gillBeastGoto); - pSprite->hitag |= 6; + pSprite->flags |= 6; break; case 218: actKillDude(pSprite->index, pSprite, DAMAGE_TYPE_0, 1000<<4); @@ -5098,7 +5098,7 @@ void MoveDude(spritetype *pSprite) evPost(nSprite, 3, 0, CALLBACK_ID_11); sfxPlay3DSound(pSprite, 720, -1, 0); aiNewState(pSprite, pXSprite, &gillBeastSwimGoto); - pSprite->hitag &= ~6; + pSprite->flags &= ~6; break; case 206: case 211: @@ -5174,7 +5174,7 @@ void MoveDude(spritetype *pSprite) evPost(nSprite, 3, 0, CALLBACK_ID_11); sfxPlay3DSound(pSprite, 720, -1, 0); aiNewState(pSprite, pXSprite, &gillBeastSwimGoto); - pSprite->hitag &= ~6; + pSprite->flags &= ~6; break; case 206: case 211: @@ -5215,7 +5215,7 @@ void MoveDude(spritetype *pSprite) if (pPlayer) { pPlayer->at31b = 0; - if (nDamage > (15<<4) && (pSprite->hitag&4)) + if (nDamage > (15<<4) && (pSprite->flags&4)) playerLandingSound(pPlayer); if (nDamage > (30<<4)) sfxPlay3DSound(pSprite, 701, 0, 0); @@ -5227,10 +5227,10 @@ void MoveDude(spritetype *pSprite) if (klabs(zvel[nSprite]) < 0x10000) { zvel[nSprite] = velFloor[pSprite->sectnum]; - pSprite->hitag &= ~4; + pSprite->flags &= ~4; } else - pSprite->hitag |= 4; + pSprite->flags |= 4; switch (tileGetSurfType(floorHit)) { case kSurfWater: @@ -5257,19 +5257,19 @@ void MoveDude(spritetype *pSprite) } } else if (zvel[nSprite] == 0) - pSprite->hitag &= ~4; + pSprite->flags &= ~4; } else { gSpriteHit[nXSprite].florhit = 0; - if (pSprite->hitag&2) - pSprite->hitag |= 4; + if (pSprite->flags&2) + pSprite->flags |= 4; } if (top <= ceilZ) { gSpriteHit[nXSprite].ceilhit = ceilHit; pSprite->z += ClipLow(ceilZ-top, 0); - if (zvel[nSprite] <= 0 && (pSprite->hitag&4)) + if (zvel[nSprite] <= 0 && (pSprite->flags&4)) zvel[nSprite] = mulscale16(-zvel[nSprite], 0x2000); } else @@ -5605,7 +5605,7 @@ void actExplodeSprite(spritetype *pSprite) xvel[nSprite] = yvel[nSprite] = zvel[nSprite] = 0; actPostSprite(nSprite, 2); pSprite->xrepeat = pSprite->yrepeat = explodeInfo[nType].at0; - pSprite->hitag &= ~3; + pSprite->flags &= ~3; pSprite->type = nType; EXPLOSION *pExplodeInfo = &explodeInfo[nType]; xsprite[nXSprite].target = 0; @@ -5631,7 +5631,7 @@ void actActivateGibObject(spritetype *pSprite, XSPRITE *pXSprite) sfxPlay3DSound(pSprite->x, pSprite->y, pSprite->z, vbp, pSprite->sectnum); if (v8 > 0) actDropObject(pSprite, v8); - if (!(pSprite->cstat&32768) && !(pSprite->hitag&16)) + if (!(pSprite->cstat&32768) && !(pSprite->flags&16)) actPostSprite(pSprite->index, 1024); } @@ -5670,7 +5670,7 @@ void actProcessSprites(void) if (!pXProxSpr->DudeLockout) { for (int nAffected = headspritestat[6]; nAffected >= 0; nAffected = nextspritestat[nAffected]) { - if ((sprite[nAffected].hitag & 32) || xsprite[sprite[nAffected].extra].health <= 0) continue; + if ((sprite[nAffected].flags & 32) || xsprite[sprite[nAffected].extra].health <= 0) continue; else if (CheckProximity(&sprite[nAffected], x, y, z, sectnum, 96)) { trTriggerSprite(index, pXProxSpr, 35); break; @@ -5718,7 +5718,7 @@ void actProcessSprites(void) //System.err.println("PHYS COUNT: "+gPhysSpritesCount); for (int i = 0; i < gPhysSpritesCount; i++) { if (gPhysSpritesList[i] == -1) continue; - else if (sprite[gPhysSpritesList[i]].statnum == kStatFree || (sprite[gPhysSpritesList[i]].hitag & kHitagFree) != 0) { + else if (sprite[gPhysSpritesList[i]].statnum == kStatFree || (sprite[gPhysSpritesList[i]].flags & kHitagFree) != 0) { gPhysSpritesList[i] = -1; continue; } @@ -5778,7 +5778,7 @@ void actProcessSprites(void) for (nSprite = headspritestat[4]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag&32) + if (pSprite->flags&32) continue; int nXSprite = pSprite->extra; if (nXSprite > 0) @@ -5800,7 +5800,7 @@ void actProcessSprites(void) nNextSprite = nextspritestat[nSprite2]; spritetype *pSprite2 = &sprite[nSprite2]; - if (pSprite2->hitag&32) continue; + if (pSprite2->flags&32) continue; XSPRITE *pXSprite2 = &xsprite[pSprite2->extra]; if ((unsigned int)pXSprite2->health > 0) { @@ -5854,7 +5854,7 @@ void actProcessSprites(void) for (nSprite = headspritestat[4]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag & 32) + if (pSprite->flags & 32) continue; int nSector = pSprite->sectnum; int nXSprite = pSprite->extra; @@ -5872,11 +5872,11 @@ void actProcessSprites(void) int nType = pSprite->type - kThingBase; THINGINFO *pThingInfo = &thingInfo[nType]; if (pThingInfo->at5 & 1) - pSprite->hitag |= 1; + pSprite->flags |= 1; if (pThingInfo->at5 & 2) - pSprite->hitag |= 4; + pSprite->flags |= 4; } - if (pSprite->hitag&3) + if (pSprite->flags&3) { viewBackupSpriteLoc(nSprite, pSprite); if (pXSector && pXSector->panVel) @@ -5902,9 +5902,9 @@ void actProcessSprites(void) } } actAirDrag(pSprite, 128); - if (((pSprite->index>>8)&15) == (gFrame&15) && (pSprite->hitag&2)) - pSprite->hitag |= 4; - if ((pSprite->hitag&4) || xvel[nSprite] || yvel[nSprite] || zvel[nSprite] || + if (((pSprite->index>>8)&15) == (gFrame&15) && (pSprite->flags&2)) + pSprite->flags |= 4; + if ((pSprite->flags&4) || xvel[nSprite] || yvel[nSprite] || zvel[nSprite] || velFloor[pSprite->sectnum] || velCeil[pSprite->sectnum]) { int hit = MoveThing(pSprite); @@ -5980,7 +5980,7 @@ void actProcessSprites(void) for (nSprite = headspritestat[5]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag & 32) + if (pSprite->flags & 32) continue; viewBackupSpriteLoc(nSprite, pSprite); int hit = MoveMissile(pSprite); @@ -5991,7 +5991,7 @@ void actProcessSprites(void) { char v24c[(kMaxSectors+7)>>3]; spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag & 32) + if (pSprite->flags & 32) continue; int nOwner = actSpriteOwnerToSpriteId(pSprite); int nType = pSprite->type; @@ -6027,7 +6027,7 @@ void actProcessSprites(void) for (int nSprite2 = headspritestat[6]; nSprite2 >= 0; nSprite2 = nextspritestat[nSprite2]) { spritetype *pDude = &sprite[nSprite2]; - if (pDude->hitag & 32) + if (pDude->flags & 32) continue; if (TestBitString(v24c, pDude->sectnum)) { @@ -6055,7 +6055,7 @@ void actProcessSprites(void) for (int nSprite2 = headspritestat[4]; nSprite2 >= 0; nSprite2 = nextspritestat[nSprite2]) { spritetype *pThing = &sprite[nSprite2]; - if (pThing->hitag & 32) + if (pThing->flags & 32) continue; if (TestBitString(v24c, pThing->sectnum)) { @@ -6083,7 +6083,7 @@ void actProcessSprites(void) if (gPhysSpritesCount > 0 && pExplodeInfo->dmgType != 0 && pXSprite->data1 != 0) { for (int i = 0; i < gPhysSpritesCount; i++) { if (gPhysSpritesList[i] == -1) continue; - else if (sprite[gPhysSpritesList[i]].sectnum < 0 || (sprite[gPhysSpritesList[i]].hitag & kHitagFree) != 0) + else if (sprite[gPhysSpritesList[i]].sectnum < 0 || (sprite[gPhysSpritesList[i]].flags & kHitagFree) != 0) continue; spritetype* pDebris = &sprite[gPhysSpritesList[i]]; @@ -6105,7 +6105,7 @@ void actProcessSprites(void) // By NoOne: if data4 > 0, do not remove explosion. This can be useful when designer wants put explosion generator in map manually // via sprite statnum 2. - if (!(pSprite->hitag & kModernTypeFlag1)) { + if (!(pSprite->flags & kModernTypeFlag1)) { pXSprite->data1 = ClipLow(pXSprite->data1 - 4, 0); pXSprite->data2 = ClipLow(pXSprite->data2 - 4, 0); pXSprite->data3 = ClipLow(pXSprite->data3 - 4, 0); @@ -6117,7 +6117,7 @@ void actProcessSprites(void) for (nSprite = headspritestat[11]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag & 32) + if (pSprite->flags & 32) continue; int nXSprite = pSprite->extra; dassert(nXSprite > 0 && nXSprite < kMaxXSprites); @@ -6159,7 +6159,7 @@ void actProcessSprites(void) for (nSprite = headspritestat[6]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag & 32) + if (pSprite->flags & 32) continue; int nXSprite = pSprite->extra; if (nXSprite > 0) @@ -6200,8 +6200,8 @@ void actProcessSprites(void) // trigger dude death before transform trTriggerSprite(nSprite, pXSprite, COMMAND_ID_0); - pSprite->lotag = pIncarnation->lotag; - pSprite->hitag = pIncarnation->hitag; + pSprite->type = pIncarnation->type; + pSprite->flags = pIncarnation->flags; pSprite->pal = pIncarnation->pal; pSprite->shade = pIncarnation->shade; pSprite->clipdist = pIncarnation->clipdist; @@ -6277,7 +6277,7 @@ void actProcessSprites(void) // remove the incarnation in case if non-locked if (pXIncarnation->locked == 0) { - pXIncarnation->txID = pIncarnation->lotag = 0; + pXIncarnation->txID = pIncarnation->type = 0; actPostSprite(pIncarnation->xvel, kStatFree); // or restore triggerOn and off options } else { @@ -6310,7 +6310,7 @@ void actProcessSprites(void) { nNextSprite = nextspritestat[nSprite2]; spritetype *pSprite2 = &sprite[nSprite2]; - if (pSprite2->hitag&32) + if (pSprite2->flags&32) continue; XSPRITE *pXSprite2 = &xsprite[pSprite2->extra]; if ((unsigned int)pXSprite2->health > 0 && pSprite2->type >= kDudePlayer1 && pSprite2->type <= kDudePlayer8) @@ -6365,7 +6365,7 @@ void actProcessSprites(void) for (nSprite = headspritestat[6]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag & 32) + if (pSprite->flags & 32) continue; int nXSprite = pSprite->extra; dassert(nXSprite > 0 && nXSprite < kMaxXSprites); @@ -6405,14 +6405,14 @@ void actProcessSprites(void) actAirDrag(pSprite, 5376); else actAirDrag(pSprite, 128); - if ((pSprite->hitag&4) || xvel[nSprite] || yvel[nSprite] || zvel[nSprite] || + if ((pSprite->flags&4) || xvel[nSprite] || yvel[nSprite] || zvel[nSprite] || velFloor[pSprite->sectnum] || velCeil[pSprite->sectnum]) MoveDude(pSprite); } for (nSprite = headspritestat[14]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag & 32) + if (pSprite->flags & 32) continue; int nXSprite = pSprite->extra; dassert(nXSprite > 0 && nXSprite < kMaxXSprites); @@ -6508,7 +6508,7 @@ spritetype *actSpawnDude(spritetype *pSource, short nType, int a3, int a4) // By NoOne: add a way to inherit some values of spawner type 18 by dude. // This way designer can count enemies via switches and do many other interesting things. - if (pSource->hitag & kModernTypeFlag1) { + if (pSource->flags & kModernTypeFlag1) { switch (pSource->type) { // allow inheriting only for selected source types case 18: //inherit pal? @@ -6554,7 +6554,7 @@ spritetype * actSpawnSprite(spritetype *pSource, int nStat) xvel[nSprite] = xvel[pSource->index]; yvel[nSprite] = yvel[pSource->index]; zvel[nSprite] = zvel[pSource->index]; - pSprite->hitag = 0; + pSprite->flags = 0; int nXSprite = dbInsertXSprite(nSprite); gSpriteHit[nXSprite].florhit = 0; gSpriteHit[nXSprite].ceilhit = 0; @@ -6574,9 +6574,9 @@ spritetype * actSpawnThing(int nSector, int x, int y, int z, int nThingType) THINGINFO *pThingInfo = &thingInfo[nType]; pXThing->health = pThingInfo->at0<<4; pSprite->clipdist = pThingInfo->at4; - pSprite->hitag = pThingInfo->at5; - if (pSprite->hitag & 2) - pSprite->hitag |= 4; + pSprite->flags = pThingInfo->at5; + if (pSprite->flags & 2) + pSprite->flags |= 4; pSprite->cstat |= pThingInfo->atf; pSprite->picnum = pThingInfo->at11; pSprite->shade = pThingInfo->at13; @@ -6708,7 +6708,7 @@ spritetype* actFireMissile(spritetype *pSprite, int a2, int a3, int a4, int a5, pMissile->shade = pMissileInfo->atc; pMissile->pal = 0; pMissile->clipdist = pMissileInfo->atd; - pMissile->hitag = 1; + pMissile->flags = 1; pMissile->xrepeat = pMissileInfo->ata; pMissile->yrepeat = pMissileInfo->atb; pMissile->picnum = pMissileInfo->picnum; @@ -6879,7 +6879,7 @@ bool actCheckRespawn(spritetype *pSprite) nRespawnTime = mulscale16(nRespawnTime, 0xa000); pSprite->owner = pSprite->statnum; actPostSprite(pSprite->index, 8); - pSprite->hitag |= 16; + pSprite->flags |= 16; if (pSprite->type >= kDudeBase && pSprite->type < kDudeMax) { pSprite->cstat &= ~257; @@ -6908,7 +6908,7 @@ bool actCanSplatWall(int nWall) if (pWall->nextsector != -1) { sectortype *pSector = §or[pWall->nextsector]; - if (pSector->lotag >= 600 && pSector->lotag < 620) + if (pSector->type >= 600 && pSector->type < 620) return 0; } return 1; @@ -7048,7 +7048,7 @@ void actFireVector(spritetype *pShooter, int a2, int a3, int a4, int a5, int a6, int t = pSprite->type == 426 ? 0 : dudeInfo[pSprite->type-kDudeBase].mass; if (IsDudeSprite(pSprite)) { - switch (pSprite->lotag) { + switch (pSprite->type) { case kCustomDude: case kCustomDudeBurning: t = getSpriteMassBySize(pSprite); @@ -7260,7 +7260,7 @@ void actPostSprite(int nSprite, int nStatus) dassert(gPostCount < kMaxSprites); dassert(nSprite < kMaxSprites && sprite[nSprite].statnum < kMaxStatus); dassert(nStatus >= 0 && nStatus <= kStatFree); - if (sprite[nSprite].hitag&32) + if (sprite[nSprite].flags&32) { for (n = 0; n < gPostCount; n++) if (gPost[n].at0 == nSprite) @@ -7270,7 +7270,7 @@ void actPostSprite(int nSprite, int nStatus) else { n = gPostCount; - sprite[nSprite].hitag |= 32; + sprite[nSprite].flags |= 32; gPostCount++; } gPost[n].at0 = nSprite; @@ -7284,7 +7284,7 @@ void actPostProcess(void) POSTPONE *pPost = &gPost[i]; int nSprite = pPost->at0; spritetype *pSprite = &sprite[nSprite]; - pSprite->hitag &= ~32; + pSprite->flags &= ~32; int nStatus = pPost->at2; if (nStatus == kStatFree) { @@ -7302,7 +7302,7 @@ void actPostProcess(void) void MakeSplash(spritetype *pSprite, XSPRITE *pXSprite) { UNREFERENCED_PARAMETER(pXSprite); - pSprite->hitag &= ~2; + pSprite->flags &= ~2; int nXSprite = pSprite->extra; pSprite->z -= 4<<8; int nSurface = tileGetSurfType(gSpriteHit[nXSprite].florhit); @@ -7462,12 +7462,12 @@ spritetype* DropRandomPickupObject(spritetype* pSprite, short prevItem) { pSprite2 = actDropObject(pSprite, selected); if (pSprite2 != NULL) { - pXSource->dropMsg = pSprite2->lotag; // store dropped item lotag in dropMsg + pXSource->dropMsg = pSprite2->type; // store dropped item type in dropMsg pSprite2->x = pSource->x; pSprite2->y = pSource->y; pSprite2->z = pSource->z; - if ((pSource->hitag & kModernTypeFlag1) && (pXSource->txID > 0 || (pXSource->txID != 3 && pXSource->lockMsg > 0)) && + if ((pSource->flags & kModernTypeFlag1) && (pXSource->txID > 0 || (pXSource->txID != 3 && pXSource->lockMsg > 0)) && dbInsertXSprite(pSprite2->xvel) > 0) { XSPRITE * pXSprite2 = &xsprite[pSprite2->extra]; @@ -7549,7 +7549,7 @@ spritetype* actSpawnCustomDude(spritetype* pSprite, int nDist) { y = pSprite->y; } - pDude->lotag = nType; pDude->ang = nAngle; + pDude->type = nType; pDude->ang = nAngle; vec3_t pos = { x, y, z }; setsprite(pDude->index, &pos); pDude->cstat |= 0x1101; pDude->clipdist = dudeInfo[nType - kDudeBase].clipdist; @@ -7572,7 +7572,7 @@ spritetype* actSpawnCustomDude(spritetype* pSprite, int nDist) { if (pXSource->data4 <= 0) pXDude->health = dudeInfo[nType].startHealth << 4; else pXDude->health = ClipRange(pXSource->data4 << 4, 1, 65535); - if (pSource->hitag & kModernTypeFlag1) { + if (pSource->flags & kModernTypeFlag1) { switch (pSource->type) { case kGDXCustomDudeSpawn: //inherit pal? @@ -7607,7 +7607,7 @@ int getSpriteMassBySize(spritetype* pSprite) { int mass = 0; int seqId = -1; Seq* pSeq = NULL; if (IsDudeSprite(pSprite)) { - switch (pSprite->lotag) { + switch (pSprite->type) { case 225: // fake dude, no seq break; case kCustomDude: @@ -7615,7 +7615,7 @@ int getSpriteMassBySize(spritetype* pSprite) { seqId = xsprite[pSprite->extra].data2; break; default: - seqId = dudeInfo[pSprite->lotag - kDudeBase].seqStartID; + seqId = dudeInfo[pSprite->type - kDudeBase].seqStartID; break; } @@ -7717,7 +7717,7 @@ int isDebris(int nSprite) { int debrisGetFreeIndex(void) { for (int i = 0; i < kMaxSuperXSprites; i++) { if (gPhysSpritesList[i] == -1 || sprite[gPhysSpritesList[i]].statnum == kStatFree) return i; - else if ((sprite[gPhysSpritesList[i]].hitag & kHitagFree) || sprite[gPhysSpritesList[i]].extra < 0) return i; + else if ((sprite[gPhysSpritesList[i]].flags & kHitagFree) || sprite[gPhysSpritesList[i]].extra < 0) return i; else if (xsprite[sprite[gPhysSpritesList[i]].extra].physAttr == 0) return i; } @@ -7921,7 +7921,7 @@ void debrisMove(int listIndex) { if (moveHit != 0 && pXDebris->Impact && pXDebris->locked != 1 && !pXDebris->isTriggered) { if (!pXDebris->Interrutable && pXDebris->state != pXDebris->restState) return; - if (pSprite->lotag >= kThingBase && pSprite->lotag < kThingMax) + if (pSprite->type >= kThingBase && pSprite->type < kThingMax) // if thing was turned in debris, change it's stat back so it will do on impact what it supposed to do... //actPostSprite(nSprite, 4); // !!!! not working here for some reason changespritestat(nSprite, 4); diff --git a/source/blood/src/ai.cpp b/source/blood/src/ai.cpp index 992664fb4..b7f463ae3 100644 --- a/source/blood/src/ai.cpp +++ b/source/blood/src/ai.cpp @@ -167,7 +167,7 @@ bool CanMove(spritetype *pSprite, int a2, int nAngle, int nRange) Underwater = 1; if (pXSector->Depth) Depth = 1; - if (sector[nSector].lotag == kSecDamage || pXSector->damageType > 0) { + if (sector[nSector].type == kSecDamage || pXSector->damageType > 0) { // By NoOne: a quick fix for Cerberus spinning in E3M7-like maps, where damage sectors is used. // It makes ignore danger if enemy immune to N damageType. As result Cerberus start acting like // in Blood 1.0 so it can move normally to player. It's up to you for adding rest of enemies here as @@ -281,7 +281,7 @@ void aiChooseDirection(spritetype *pSprite, XSPRITE *pXSprite, int a3) pXSprite->goalAng = pSprite->ang; else if (CanMove(pSprite, pXSprite->target, pSprite->ang-v8, vsi)) pXSprite->goalAng = pSprite->ang-v8; - else if (pSprite->hitag&2) + else if (pSprite->flags&2) pXSprite->goalAng = pSprite->ang+341; else // Weird.. pXSprite->goalAng = pSprite->ang+341; @@ -546,8 +546,8 @@ void aiActivateDude(spritetype *pSprite, XSPRITE *pXSprite) pDudeExtraE->at4 = 0; pDudeExtraE->at8 = 1; pDudeExtraE->at0 = 0; - if (!pSprite->hitag) - pSprite->hitag = 9; + if (!pSprite->flags) + pSprite->flags = 9; if (pXSprite->target == -1) aiNewState(pSprite, pXSprite, &batSearch); else @@ -801,7 +801,7 @@ void aiActivateDude(spritetype *pSprite, XSPRITE *pXSprite) case 213: case 214: case 215: - pSprite->hitag |= 2; + pSprite->flags |= 2; pSprite->cstat &= ~8; if (pXSprite->target == -1) aiNewState(pSprite, pXSprite, &spidSearch); @@ -816,7 +816,7 @@ void aiActivateDude(spritetype *pSprite, XSPRITE *pXSprite) DUDEEXTRA_at6_u1 *pDudeExtraE = &gDudeExtra[pSprite->extra].at6.u1; pDudeExtraE->at8 = 1; pDudeExtraE->at0 = 0; - pSprite->hitag |= 2; + pSprite->flags |= 2; pSprite->cstat &= ~8; if (pXSprite->target == -1) aiNewState(pSprite, pXSprite, &spidSearch); @@ -1496,7 +1496,7 @@ void aiProcessDudes(void) for (int nSprite = headspritestat[6]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag&32) + if (pSprite->flags&32) continue; int nXSprite = pSprite->extra; XSPRITE *pXSprite = &xsprite[nXSprite]; @@ -1611,7 +1611,7 @@ void aiInitSprite(spritetype *pSprite) pDudeExtraE->at4 = 0; pDudeExtraE->at0 = 0; aiNewState(pSprite, pXSprite, &zombieSIdle); - pSprite->hitag &= ~1; + pSprite->flags &= ~1; break; } case 205: @@ -1743,26 +1743,26 @@ void aiInitSprite(spritetype *pSprite) case 214: case 215: if (pSprite->cstat&8) - pSprite->hitag |= 9; + pSprite->flags |= 9; else - pSprite->hitag = 15; + pSprite->flags = 15; break; case 206: case 207: case 210: case 218: case 219: - pSprite->hitag |= 9; + pSprite->flags |= 9; break; case 217: if (pXSector && pXSector->Underwater) - pSprite->hitag |= 9; + pSprite->flags |= 9; else - pSprite->hitag = 15; + pSprite->flags = 15; break; case 205: case 244: - pSprite->hitag = 7; + pSprite->flags = 7; break; case 225: // by NoOne: FakeDude type break; @@ -1773,14 +1773,14 @@ void aiInitSprite(spritetype *pSprite) case 224: case 226: if ((pSprite->cstat & CSTAT_SPRITE_YFLIP) != 0) { - if (!(pSprite->hitag & kModernTypeFlag1)) // don't add autoaim for player if hitag 1 specified in editor. - pSprite->hitag = kHitagAutoAim; + if (!(pSprite->flags & kModernTypeFlag1)) // don't add autoaim for player if hitag 1 specified in editor. + pSprite->flags = kHitagAutoAim; break; } fallthrough__; // go default default: - pSprite->hitag = 15; + pSprite->flags = 15; break; } } diff --git a/source/blood/src/aibat.cpp b/source/blood/src/aibat.cpp index 22d015c24..369313fe3 100644 --- a/source/blood/src/aibat.cpp +++ b/source/blood/src/aibat.cpp @@ -434,7 +434,7 @@ void MoveToCeil(spritetype *pSprite, XSPRITE *pXSprite) { DUDEEXTRA_at6_u1 *pDudeExtraE = &gDudeExtra[pSprite->extra].at6.u1; pDudeExtraE->at8 = 0; - pSprite->hitag = 0; + pSprite->flags = 0; aiNewState(pSprite, pXSprite, &batIdle); } else diff --git a/source/blood/src/aibeast.cpp b/source/blood/src/aibeast.cpp index 5a394aba0..b9cfe5db5 100644 --- a/source/blood/src/aibeast.cpp +++ b/source/blood/src/aibeast.cpp @@ -136,7 +136,7 @@ static void StompSeqCallback(int, int nXSprite) { if (pSprite2->type == 251) continue; - if (pSprite2->hitag&32) + if (pSprite2->flags&32) continue; if (TestBitString(vb8, pSprite2->sectnum) && CheckProximity(pSprite2, x, y, z, nSector, vc)) { @@ -166,7 +166,7 @@ static void StompSeqCallback(int, int nXSprite) for (int nSprite2 = headspritestat[4]; nSprite2 >= 0; nSprite2 = nextspritestat[nSprite2]) { spritetype *pSprite2 = &sprite[nSprite2]; - if (pSprite2->hitag&32) + if (pSprite2->flags&32) continue; if (TestBitString(vb8, pSprite2->sectnum) && CheckProximity(pSprite2, x, y, z, nSector, vc)) { @@ -293,7 +293,7 @@ static void thinkChase(spritetype *pSprite, XSPRITE *pXSprite) aiSetTarget(pXSprite, pXSprite->target); int nXSprite = sprite[pXSprite->reference].extra; gDudeSlope[nXSprite] = divscale(pTarget->z-pSprite->z, nDist, 10); - if (nDist < 0x1400 && nDist > 0xa00 && klabs(nDeltaAngle) < 85 && (pTarget->hitag&2) + if (nDist < 0x1400 && nDist > 0xa00 && klabs(nDeltaAngle) < 85 && (pTarget->flags&2) && IsPlayerSprite(pTarget) && Chance(0x8000)) { XSECTOR *pXSector; diff --git a/source/blood/src/aiboneel.cpp b/source/blood/src/aiboneel.cpp index 2c08df11f..bcbd66847 100644 --- a/source/blood/src/aiboneel.cpp +++ b/source/blood/src/aiboneel.cpp @@ -439,7 +439,7 @@ void MoveToCeil(spritetype *pSprite, XSPRITE *pXSprite) { DUDEEXTRA_at6_u1 *pDudeExtraE = &gDudeExtra[pSprite->extra].at6.u1; pDudeExtraE->at8 = 0; - pSprite->hitag = 0; + pSprite->flags = 0; aiNewState(pSprite, pXSprite, &eelIdle); } else diff --git a/source/blood/src/aicerber.cpp b/source/blood/src/aicerber.cpp index d96dfd6f1..dfeeb1f0c 100644 --- a/source/blood/src/aicerber.cpp +++ b/source/blood/src/aicerber.cpp @@ -117,7 +117,7 @@ static void BurnSeqCallback(int, int nXSprite) for (short nSprite2 = headspritestat[6]; nSprite2 >= 0; nSprite2 = nextspritestat[nSprite2]) { spritetype *pSprite2 = &sprite[nSprite2]; - if (pSprite == pSprite2 || !(pSprite2->hitag&8)) + if (pSprite == pSprite2 || !(pSprite2->flags&8)) continue; int x2 = pSprite2->x; int y2 = pSprite2->y; @@ -200,7 +200,7 @@ static void BurnSeqCallback2(int, int nXSprite) for (short nSprite2 = headspritestat[6]; nSprite2 >= 0; nSprite2 = nextspritestat[nSprite2]) { spritetype *pSprite2 = &sprite[nSprite2]; - if (pSprite == pSprite2 || !(pSprite2->hitag&8)) + if (pSprite == pSprite2 || !(pSprite2->flags&8)) continue; int x2 = pSprite2->x; int y2 = pSprite2->y; diff --git a/source/blood/src/aicult.cpp b/source/blood/src/aicult.cpp index 838293a4c..63cd1b8fe 100644 --- a/source/blood/src/aicult.cpp +++ b/source/blood/src/aicult.cpp @@ -331,7 +331,7 @@ static void thinkChase(spritetype *pSprite, XSPRITE *pXSprite) { case 201: if (nDist < 0x1e00 && nDist > 0xe00 && klabs(nDeltaAngle) < 85 && !TargetNearExplosion(pTarget) - && (pTarget->hitag&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].at2e + && (pTarget->flags&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].at2e && Chance(0x8000)) { int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); @@ -399,7 +399,7 @@ static void thinkChase(spritetype *pSprite, XSPRITE *pXSprite) break; case 202: if (nDist < 0x2c00 && nDist > 0x1400 && !TargetNearExplosion(pTarget) - && (pTarget->hitag&2) && gGameOptions.nDifficulty >= 2 && IsPlayerSprite(pTarget) && !gPlayer[pTarget->type-kDudePlayer1].at2e + && (pTarget->flags&2) && gGameOptions.nDifficulty >= 2 && IsPlayerSprite(pTarget) && !gPlayer[pTarget->type-kDudePlayer1].at2e && Chance(0x8000)) { int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); @@ -467,7 +467,7 @@ static void thinkChase(spritetype *pSprite, XSPRITE *pXSprite) break; case 247: if (nDist < 0x1e00 && nDist > 0xe00 && !TargetNearExplosion(pTarget) - && (pTarget->hitag&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].at2e + && (pTarget->flags&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].at2e && Chance(0x8000)) { int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); @@ -535,7 +535,7 @@ static void thinkChase(spritetype *pSprite, XSPRITE *pXSprite) break; case 248: if (nDist < 0x2c00 && nDist > 0x1400 && klabs(nDeltaAngle) < 85 - && (pTarget->hitag&2) && IsPlayerSprite(pTarget)) + && (pTarget->flags&2) && IsPlayerSprite(pTarget)) { int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); switch (hit) @@ -556,7 +556,7 @@ static void thinkChase(spritetype *pSprite, XSPRITE *pXSprite) } } else if (nDist < 0x1400 && klabs(nDeltaAngle) < 85 - && (pTarget->hitag&2) && IsPlayerSprite(pTarget)) + && (pTarget->flags&2) && IsPlayerSprite(pTarget)) { int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); switch (hit) @@ -579,7 +579,7 @@ static void thinkChase(spritetype *pSprite, XSPRITE *pXSprite) break; case 249: if (nDist < 0x1e00 && nDist > 0xe00 && !TargetNearExplosion(pTarget) - && (pTarget->hitag&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].at2e + && (pTarget->flags&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].at2e && Chance(0x8000)) { int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); diff --git a/source/blood/src/aigarg.cpp b/source/blood/src/aigarg.cpp index de76025e9..a949daaa6 100644 --- a/source/blood/src/aigarg.cpp +++ b/source/blood/src/aigarg.cpp @@ -152,7 +152,7 @@ static void BlastSSeqCallback(int, int nXSprite) for (short nSprite2 = headspritestat[6]; nSprite2 >= 0; nSprite2 = nextspritestat[nSprite2]) { spritetype *pSprite2 = &sprite[nSprite2]; - if (pSprite == pSprite2 || !(pSprite2->hitag&8)) + if (pSprite == pSprite2 || !(pSprite2->flags&8)) continue; int x2 = pSprite2->x; int y2 = pSprite2->y; diff --git a/source/blood/src/aighost.cpp b/source/blood/src/aighost.cpp index 4e1c8f74e..13feedf47 100644 --- a/source/blood/src/aighost.cpp +++ b/source/blood/src/aighost.cpp @@ -135,7 +135,7 @@ static void BlastSeqCallback(int, int nXSprite) for (short nSprite2 = headspritestat[6]; nSprite2 >= 0; nSprite2 = nextspritestat[nSprite2]) { spritetype *pSprite2 = &sprite[nSprite2]; - if (pSprite == pSprite2 || !(pSprite2->hitag&8)) + if (pSprite == pSprite2 || !(pSprite2->flags&8)) continue; int x2 = pSprite2->x; int y2 = pSprite2->y; diff --git a/source/blood/src/aitchern.cpp b/source/blood/src/aitchern.cpp index dc927a7f0..e1f72db0b 100644 --- a/source/blood/src/aitchern.cpp +++ b/source/blood/src/aitchern.cpp @@ -104,7 +104,7 @@ static void sub_71BD4(int, int nXSprite) for (short nSprite2 = headspritestat[6]; nSprite2 >= 0; nSprite2 = nextspritestat[nSprite2]) { spritetype *pSprite2 = &sprite[nSprite2]; - if (pSprite == pSprite2 || !(pSprite2->hitag&8)) + if (pSprite == pSprite2 || !(pSprite2->flags&8)) continue; int x2 = pSprite2->x; int y2 = pSprite2->y; @@ -180,7 +180,7 @@ static void sub_720AC(int, int nXSprite) for (short nSprite2 = headspritestat[6]; nSprite2 >= 0; nSprite2 = nextspritestat[nSprite2]) { spritetype *pSprite2 = &sprite[nSprite2]; - if (pSprite == pSprite2 || !(pSprite2->hitag&8)) + if (pSprite == pSprite2 || !(pSprite2->flags&8)) continue; int x2 = pSprite2->x; int y2 = pSprite2->y; diff --git a/source/blood/src/aiunicult.cpp b/source/blood/src/aiunicult.cpp index 84ce4966a..8b7e543c0 100644 --- a/source/blood/src/aiunicult.cpp +++ b/source/blood/src/aiunicult.cpp @@ -355,7 +355,7 @@ static void thinkGoto( spritetype* pSprite, XSPRITE* pXSprite ) { int dx, dy, dist; dassert(pSprite->type >= kDudeBase && pSprite->type < kDudeMax); - DUDEINFO* pDudeInfo = &dudeInfo[pSprite->lotag - kDudeBase]; + DUDEINFO* pDudeInfo = &dudeInfo[pSprite->type - kDudeBase]; dx = pXSprite->targetX - pSprite->x; dy = pXSprite->targetY - pSprite->y; @@ -867,7 +867,7 @@ bool spriteIsUnderwater(spritetype* pSprite,bool oldWay) { spritetype* leechIsDropped(spritetype* pSprite) { for (int nSprite = headspritestat[4]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { - if (sprite[nSprite].lotag == kGDXThingCustomDudeLifeLeech && sprite[nSprite].owner == pSprite->xvel) + if (sprite[nSprite].type == kGDXThingCustomDudeLifeLeech && sprite[nSprite].owner == pSprite->xvel) return &sprite[nSprite]; } @@ -878,11 +878,11 @@ spritetype* leechIsDropped(spritetype* pSprite) { void removeDudeStuff(spritetype* pSprite) { for (short nSprite = headspritestat[4]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { if (sprite[nSprite].owner != pSprite->xvel) continue; - switch (sprite[nSprite].lotag) { + switch (sprite[nSprite].type) { case 401: case 402: case 433: - sprite[nSprite].lotag = 0; + sprite[nSprite].type = 0; actPostSprite(sprite[nSprite].xvel, kStatFree); break; case kGDXThingCustomDudeLifeLeech: @@ -1009,7 +1009,7 @@ void dudeLeechOperate(spritetype* pSprite, XSPRITE* pXSprite, EVENT a3) int nTarget = pXSprite->target; if (nTarget >= 0 && nTarget < kMaxSprites) { spritetype* pTarget = &sprite[nTarget]; - if (pTarget->statnum == 6 && !(pTarget->hitag & 32) && pTarget->extra > 0 && pTarget->extra < kMaxXSprites && !pXSprite->stateTimer) + if (pTarget->statnum == 6 && !(pTarget->flags & 32) && pTarget->extra > 0 && pTarget->extra < kMaxXSprites && !pXSprite->stateTimer) { int top, bottom; GetSpriteExtents(pSprite, &top, &bottom); @@ -1057,7 +1057,7 @@ bool doExplosion(spritetype* pSprite, int nType) { pExplosion->yrepeat = pExpl->at0; pExplosion->xrepeat = pExpl->at0; - pExplosion->lotag = nType; + pExplosion->type = nType; pExplosion->cstat |= CSTAT_SPRITE_INVISIBLE | CSTAT_SPRITE_ALIGNMENT_SLAB; pExplosion->owner = pSprite->xvel; diff --git a/source/blood/src/aizomba.cpp b/source/blood/src/aizomba.cpp index 10dfb8bed..fefd8bf2a 100644 --- a/source/blood/src/aizomba.cpp +++ b/source/blood/src/aizomba.cpp @@ -270,7 +270,7 @@ static void entryEZombie(spritetype *pSprite, XSPRITE *pXSprite) { UNREFERENCED_PARAMETER(pXSprite); pSprite->type = 203; - pSprite->hitag |= 1; + pSprite->flags |= 1; } static void entryAIdle(spritetype *pSprite, XSPRITE *pXSprite) diff --git a/source/blood/src/callback.cpp b/source/blood/src/callback.cpp index fee1f2c75..d5ebaa3a6 100644 --- a/source/blood/src/callback.cpp +++ b/source/blood/src/callback.cpp @@ -67,7 +67,7 @@ void UniMissileBurst(int nSprite) // 22 { spritetype* pBurst = actSpawnSprite(pSprite, 5); - pBurst->lotag = pSprite->lotag; + pBurst->type = pSprite->type; pBurst->shade = pSprite->shade; pBurst->picnum = pSprite->picnum; @@ -79,10 +79,10 @@ void UniMissileBurst(int nSprite) // 22 pBurst->pal = pSprite->pal; pBurst->clipdist = pSprite->clipdist / 4; - pBurst->hitag = pSprite->hitag; + pBurst->flags = pSprite->flags; pBurst->xrepeat = pSprite->xrepeat / 2; pBurst->yrepeat = pSprite->yrepeat / 2; - pBurst->ang = ((pSprite->ang + missileInfo[pSprite->lotag - kMissileBase].at6) & 2047); + pBurst->ang = ((pSprite->ang + missileInfo[pSprite->type - kMissileBase].at6) & 2047); pBurst->owner = pSprite->owner; actBuildMissile(pBurst, pBurst->extra, pSprite->xvel); @@ -308,7 +308,7 @@ void Respawn(int nSprite) // 9 XSPRITE *pXSprite = &xsprite[nXSprite]; if (pSprite->statnum != 8 && pSprite->statnum != 4) ThrowError("Sprite %d is not on Respawn or Thing list\n", nSprite); - if (!(pSprite->hitag&16)) + if (!(pSprite->flags&16)) ThrowError("Sprite %d does not have the respawn attribute\n", nSprite); switch (pXSprite->respawnPending) { @@ -331,9 +331,9 @@ void Respawn(int nSprite) // 9 dassert(pSprite->owner != kStatRespawn); dassert(pSprite->owner >= 0 && pSprite->owner < kMaxStatus); ChangeSpriteStat(nSprite, pSprite->owner); - pSprite->type = pSprite->zvel; + pSprite->type = pSprite->inittype; pSprite->owner = -1; - pSprite->hitag &= ~16; + pSprite->flags &= ~16; xvel[nSprite] = yvel[nSprite] = zvel[nSprite] = 0; pXSprite->respawnPending = 0; pXSprite->burnTime = 0; @@ -426,7 +426,7 @@ void CounterCheck(int nSector) // 12 sectortype *pSector = §or[nSector]; // By NoOne: edits for counter sector new features. // remove check below, so every sector can be counter if command 12 (this callback) received. - //if (pSector->lotag != 619) return; + //if (pSector->type != 619) return; int nXSprite = pSector->extra; if (nXSprite > 0) { @@ -622,8 +622,8 @@ void sub_768E8(int nSprite) // 18 void sub_769B4(int nSprite) // 19 { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->statnum == 4 && !(pSprite->hitag & 32)) { - switch (pSprite->lotag) { + if (pSprite->statnum == 4 && !(pSprite->flags & 32)) { + switch (pSprite->type) { case 431: case kGDXThingCustomDudeLifeLeech: xsprite[pSprite->extra].stateTimer = 0; diff --git a/source/blood/src/db.cpp b/source/blood/src/db.cpp index efbbe90d9..78bb990b7 100644 --- a/source/blood/src/db.cpp +++ b/source/blood/src/db.cpp @@ -882,7 +882,7 @@ int dbLoadMap(const char *pPath, int *pX, int *pY, int *pZ, short *pAngle, short pSector->ceilingheinum = B_LITTLE16(pSector->ceilingheinum); pSector->floorpicnum = B_LITTLE16(pSector->floorpicnum); pSector->floorheinum = B_LITTLE16(pSector->floorheinum); - pSector->lotag = B_LITTLE16(pSector->lotag); + pSector->type = B_LITTLE16(pSector->type); pSector->hitag = B_LITTLE16(pSector->hitag); pSector->extra = B_LITTLE16(pSector->extra); #endif @@ -1004,7 +1004,7 @@ int dbLoadMap(const char *pPath, int *pX, int *pY, int *pZ, short *pAngle, short pWall->cstat = B_LITTLE16(pWall->cstat); pWall->picnum = B_LITTLE16(pWall->picnum); pWall->overpicnum = B_LITTLE16(pWall->overpicnum); - pWall->lotag = B_LITTLE16(pWall->lotag); + pWall->type = B_LITTLE16(pWall->type); pWall->hitag = B_LITTLE16(pWall->hitag); pWall->extra = B_LITTLE16(pWall->extra); #endif @@ -1081,11 +1081,11 @@ int dbLoadMap(const char *pPath, int *pX, int *pY, int *pZ, short *pAngle, short pSprite->statnum = B_LITTLE16(pSprite->statnum); pSprite->ang = B_LITTLE16(pSprite->ang); pSprite->owner = B_LITTLE16(pSprite->owner); - pSprite->xvel = B_LITTLE16(pSprite->xvel); + pSprite->index = B_LITTLE16(pSprite->index); pSprite->yvel = B_LITTLE16(pSprite->yvel); - pSprite->zvel = B_LITTLE16(pSprite->zvel); - pSprite->lotag = B_LITTLE16(pSprite->lotag); - pSprite->hitag = B_LITTLE16(pSprite->hitag); + pSprite->inittype = B_LITTLE16(pSprite->inittype); + pSprite->type = B_LITTLE16(pSprite->type); + pSprite->flags = B_LITTLE16(pSprite->hitag); pSprite->extra = B_LITTLE16(pSprite->extra); #endif InsertSpriteSect(i, sprite[i].sectnum); diff --git a/source/blood/src/db.h b/source/blood/src/db.h index 05088d586..b68bf8d99 100644 --- a/source/blood/src/db.h +++ b/source/blood/src/db.h @@ -295,7 +295,7 @@ static inline int GetWallType(int nWall) if (yax_hasnextwall(nWall)) return 0; #endif - return wall[nWall].lotag; + return wall[nWall].type; } inline void GetSpriteExtents(spritetype *pSprite, int *top, int *bottom) diff --git a/source/blood/src/eventq.cpp b/source/blood/src/eventq.cpp index f55055a54..33d545dc7 100644 --- a/source/blood/src/eventq.cpp +++ b/source/blood/src/eventq.cpp @@ -411,7 +411,7 @@ void evSend(int nIndex, int nType, int rxId, COMMAND_ID command) for (int nSprite = headspritestat[4]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag&32) + if (pSprite->flags&32) continue; int nXSprite = pSprite->extra; if (nXSprite > 0) @@ -427,7 +427,7 @@ void evSend(int nIndex, int nType, int rxId, COMMAND_ID command) for (int nSprite = headspritestat[3]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag&32) + if (pSprite->flags&32) continue; int nXSprite = pSprite->extra; if (nXSprite > 0) @@ -456,7 +456,7 @@ void evSend(int nIndex, int nType, int rxId, COMMAND_ID command) { int nSprite = rxBucket[i].index; spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag&32) + if (pSprite->flags&32) continue; int nXSprite = pSprite->extra; if (nXSprite > 0) diff --git a/source/blood/src/fx.cpp b/source/blood/src/fx.cpp index 29282e108..bfe48f43d 100644 --- a/source/blood/src/fx.cpp +++ b/source/blood/src/fx.cpp @@ -170,7 +170,7 @@ spritetype * CFX::fxSpawn(FX_ID nFx, int nSector, int x, int y, int z, unsigned if (gStatCount[1] == 512) { int nSprite = headspritestat[1];; - while ((sprite[nSprite].hitag & 32) && nSprite != -1) + while ((sprite[nSprite].flags & 32) && nSprite != -1) nSprite = nextspritestat[nSprite]; if (nSprite == -1) return NULL; diff --git a/source/blood/src/gameutil.cpp b/source/blood/src/gameutil.cpp index f421743f7..eeca63b53 100644 --- a/source/blood/src/gameutil.cpp +++ b/source/blood/src/gameutil.cpp @@ -481,7 +481,7 @@ int VectorScan(spritetype *pSprite, int nOffset, int nZOffset, int dx, int dy, i if (gHitInfo.hitsprite >= 0) { spritetype *pOther = &sprite[gHitInfo.hitsprite]; - if ((pOther->hitag & 8) && !(ac & 1)) + if ((pOther->flags & 8) && !(ac & 1)) return 3; if ((pOther->cstat & 0x30) != 0) return 3; diff --git a/source/blood/src/mirrors.cpp b/source/blood/src/mirrors.cpp index 6a7bb7b26..fed130586 100644 --- a/source/blood/src/mirrors.cpp +++ b/source/blood/src/mirrors.cpp @@ -288,7 +288,7 @@ void sub_557C4(int x, int y, int interpolation) pTSprite->statnum = 0; pTSprite->owner = pSprite->index; pTSprite->extra = pSprite->extra; - pTSprite->hitag = pSprite->hitag|0x200; + pTSprite->flags = pSprite->hitag|0x200; LOCATION *pLocation = &gPrevSpriteLoc[pSprite->index]; pTSprite->x = dx+interpolate(pLocation->x, pSprite->x, interpolation); pTSprite->y = dy+interpolate(pLocation->y, pSprite->y, interpolation); diff --git a/source/blood/src/player.cpp b/source/blood/src/player.cpp index 40e3f3470..bcf031a94 100644 --- a/source/blood/src/player.cpp +++ b/source/blood/src/player.cpp @@ -905,7 +905,7 @@ void playerStart(int nPlayer) pPlayer->q16ang = fix16_from_int(pSprite->ang); pSprite->type = kDudePlayer1+nPlayer; pSprite->clipdist = pDudeInfo->clipdist; - pSprite->hitag = 15; + pSprite->flags = 15; pXSprite->burnTime = 0; pXSprite->burnSource = -1; pPlayer->pXSprite->health = pDudeInfo->startHealth<<4; @@ -1396,7 +1396,7 @@ void CheckPickUp(PLAYER *pPlayer) { spritetype *pItem = &sprite[nSprite]; nNextSprite = nextspritestat[nSprite]; - if (pItem->hitag&32) + if (pItem->flags&32) continue; int dx = klabs(x-pItem->x)>>4; if (dx > 48) @@ -2282,7 +2282,7 @@ int playerDamageSprite(int nSource, PLAYER *pPlayer, DAMAGE_TYPE nDamageType, in powerupClear(pPlayer); if (nXSector > 0 && xsector[nXSector].Exit) trTriggerSector(pSprite->sectnum, &xsector[nXSector], 43); - pSprite->hitag |= 7; + pSprite->flags |= 7; for (int p = connecthead; p >= 0; p = connectpoint2[p]) { if (gPlayer[p].at2ee == nSprite && gPlayer[p].at1fe > 0) diff --git a/source/blood/src/seq.cpp b/source/blood/src/seq.cpp index 4f83c374e..99023194e 100644 --- a/source/blood/src/seq.cpp +++ b/source/blood/src/seq.cpp @@ -99,11 +99,11 @@ void UpdateSprite(int nXSprite, SEQFRAME *pFrame) dassert(nSprite >= 0 && nSprite < kMaxSprites); spritetype *pSprite = &sprite[nSprite]; dassert(pSprite->extra == nXSprite); - if (pSprite->hitag & 2) + if (pSprite->flags & 2) { if (tilesiz[pSprite->picnum].y != tilesiz[seqGetTile(pFrame)].y || picanm[pSprite->picnum].yofs != picanm[seqGetTile(pFrame)].yofs || (pFrame->at3_0 && pFrame->at3_0 != pSprite->yrepeat)) - pSprite->hitag |= 4; + pSprite->flags |= 4; } pSprite->picnum = seqGetTile(pFrame); if (pFrame->at5_0) @@ -146,21 +146,21 @@ void UpdateSprite(int nXSprite, SEQFRAME *pFrame) else pSprite->cstat &= ~4096; if (pFrame->at5_6) - pSprite->hitag |= 256; + pSprite->flags |= 256; else - pSprite->hitag &= ~256; + pSprite->flags &= ~256; if (pFrame->at5_7) - pSprite->hitag |= 8; + pSprite->flags |= 8; else - pSprite->hitag &= ~8; + pSprite->flags &= ~8; if (pFrame->at6_3) - pSprite->hitag |= 1024; + pSprite->flags |= 1024; else - pSprite->hitag &= ~1024; + pSprite->flags &= ~1024; if (pFrame->at6_4) - pSprite->hitag |= 2048; + pSprite->flags |= 2048; else - pSprite->hitag &= ~2048; + pSprite->flags &= ~2048; } void UpdateWall(int nXWall, SEQFRAME *pFrame) @@ -510,7 +510,7 @@ void seqProcess(int a1) int nSprite = xsprite[nXSprite].reference; dassert(nSprite >= 0 && nSprite < kMaxSprites); evKill(nSprite, 3); - if ((sprite[nSprite].hitag & 16) && sprite[nSprite].zvel >= 200 && sprite[nSprite].zvel < 254) + if ((sprite[nSprite].flags & 16) && sprite[nSprite].inittype >= 200 && sprite[nSprite].inittype < 254) evPost(nSprite, 3, gGameOptions.nMonsterSettings, (COMMAND_ID)9); else DeleteSprite(nSprite); diff --git a/source/blood/src/triggers.cpp b/source/blood/src/triggers.cpp index b9dd31e5e..cfbf55503 100644 --- a/source/blood/src/triggers.cpp +++ b/source/blood/src/triggers.cpp @@ -90,7 +90,7 @@ char SetSpriteState(int nSprite, XSPRITE* pXSprite, int nState) pXSprite->busy = nState << 16; pXSprite->state = nState; evKill(nSprite, 3); - if ((sprite[nSprite].hitag & 16) != 0 && sprite[nSprite].zvel >= kDudeBase && sprite[nSprite].zvel < kDudeMax) + if ((sprite[nSprite].flags & 16) != 0 && sprite[nSprite].inittype >= kDudeBase && sprite[nSprite].inittype < kDudeMax) { pXSprite->respawnPending = 3; evPost(nSprite, 3, gGameOptions.nMonsterRespawnTime, CALLBACK_ID_9); @@ -115,7 +115,7 @@ char modernTypeSetSpriteState(int nSprite, XSPRITE *pXSprite, int nState) pXSprite->busy = nState<<16; pXSprite->state = nState; evKill(nSprite, 3); - if ((sprite[nSprite].hitag & 16) != 0 && sprite[nSprite].zvel >= kDudeBase && sprite[nSprite].zvel < kDudeMax) + if ((sprite[nSprite].flags & 16) != 0 && sprite[nSprite].inittype >= kDudeBase && sprite[nSprite].inittype < kDudeMax) { pXSprite->respawnPending = 3; evPost(nSprite, 3, gGameOptions.nMonsterRespawnTime, CALLBACK_ID_9); @@ -315,7 +315,7 @@ void sub_43CF8(spritetype *pSprite, XSPRITE *pXSprite, EVENT a3) if (!pXSprite->stateTimer) { spritetype *pTarget = &sprite[nTarget]; - if (pTarget->statnum == 6 && !(pTarget->hitag&32) && pTarget->extra > 0 && pTarget->extra < kMaxXSprites) + if (pTarget->statnum == 6 && !(pTarget->flags&32) && pTarget->extra > 0 && pTarget->extra < kMaxXSprites) { int top, bottom; GetSpriteExtents(pSprite, &top, &bottom); @@ -474,7 +474,7 @@ void OperateSprite(int nSprite, XSPRITE *pXSprite, EVENT a3) } // force send command to all TX id in a range - if (pSprite->hitag & kModernTypeFlag1) { + if (pSprite->flags & kModernTypeFlag1) { for (pXSprite->txID = pXSprite->data1; pXSprite->txID <= pXSprite->data4; pXSprite->txID++) { if (pXSprite->txID > 0) evSend(nSprite, 3, pXSprite->txID, (COMMAND_ID)pXSprite->command); @@ -493,7 +493,7 @@ void OperateSprite(int nSprite, XSPRITE *pXSprite, EVENT a3) } else { // force send command to all TX id specified in data - if (pSprite->hitag & kModernTypeFlag1) { + if (pSprite->flags & kModernTypeFlag1) { for (int i = 0; i <= 3; i++) { if ((pXSprite->txID = GetDataVal(pSprite, i)) > 0) evSend(nSprite, 3, pXSprite->txID, (COMMAND_ID)pXSprite->command); @@ -575,7 +575,7 @@ void OperateSprite(int nSprite, XSPRITE *pXSprite, EVENT a3) break; case 414: if (SetSpriteState(nSprite, pXSprite, 1)) - pSprite->hitag |= 7; + pSprite->flags |= 7; break; case 408: if (SetSpriteState(nSprite, pXSprite, 0)) @@ -816,7 +816,7 @@ void OperateSprite(int nSprite, XSPRITE *pXSprite, EVENT a3) } break; case 400: - if (pSprite->hitag&16) + if (pSprite->flags&16) return; fallthrough__; case 418: @@ -1022,7 +1022,7 @@ void OperateSprite(int nSprite, XSPRITE *pXSprite, EVENT a3) case COMMAND_ID_21: // force OFF after *all* TX objects reach the goal value - if (pSprite->hitag == 0 && goalValueIsReached(pXSprite)) { + if (pSprite->flags == 0 && goalValueIsReached(pXSprite)) { evPost(nSprite, 3, 0, COMMAND_ID_0); break; } @@ -1189,7 +1189,7 @@ void stopWindOnSectors(XSPRITE* pXSource) { for (int i = bucketHead[pXSource->txID]; i < bucketHead[pXSource->txID + 1]; i++) { if (rxBucket[i].type != 6) continue; XSECTOR * pXSector = &xsector[sector[rxBucket[i].index].extra]; - if ((pXSector->state == 1 && !pXSector->windAlways) || (sprite[pXSource->reference].hitag & kModernTypeFlag1)) + if ((pXSector->state == 1 && !pXSector->windAlways) || (sprite[pXSource->reference].flags & kModernTypeFlag1)) pXSector->windVel = 0; } } @@ -1219,7 +1219,7 @@ void useTeleportTarget(XSPRITE* pXSource, spritetype* pSprite) { if (pXSource->data1 < kMaxPlayers) // relative to connected players if (pXSource->data1 != (i + 1)) continue; - else if (pXSource->data1 < (kDudePlayer1 + kMaxPlayers)) // absolute lotag + else if (pXSource->data1 < (kDudePlayer1 + kMaxPlayers)) // absolute type if (pXSource->data1 >= kDudePlayer1 && (pXSource->data1 + (kDudePlayer1 - 1)) == gPlayer[i].pSprite->type) continue; @@ -1235,7 +1235,7 @@ void useTeleportTarget(XSPRITE* pXSource, spritetype* pSprite) { pSprite->x = pSource->x; pSprite->y = pSource->y; pSprite->z += (sector[pSource->sectnum].floorz - sector[pSprite->sectnum].floorz); - if (pSource->hitag & kModernTypeFlag1) // force telefrag + if (pSource->flags & kModernTypeFlag1) // force telefrag TeleFrag(pSprite->xvel, pSource->sectnum); changespritesect((short)pSprite->xvel, pSource->sectnum); @@ -1255,7 +1255,7 @@ void useTeleportTarget(XSPRITE* pXSource, spritetype* pSprite) { if (IsPlayerSprite(pSprite)) { - PLAYER* pPlayer = &gPlayer[pSprite->lotag - kDudePlayer1]; + PLAYER* pPlayer = &gPlayer[pSprite->type - kDudePlayer1]; playerResetInertia(pPlayer); if (pXSource->data2 == 1) { @@ -1321,7 +1321,7 @@ void useSectorWindGen(XSPRITE* pXSource, sectortype* pSector) { nXSector = sector[pXSector->reference].extra; } - if (pSource->hitag) { + if (pSource->flags) { pXSector->panAlways = 1; pXSector->windAlways = 1; } else if (forceWind) @@ -1393,7 +1393,7 @@ void useSpriteDamager(XSPRITE* pXSource, spritetype* pSprite) { if (pXSource->data1 < kMaxPlayers) // relative to connected players if (pXSource->data1 != (i + 1)) continue; - else if (pXSource->data1 < (kDudePlayer1 + kMaxPlayers)) // absolute lotag + else if (pXSource->data1 < (kDudePlayer1 + kMaxPlayers)) // absolute type if (pXSource->data1 >= kDudePlayer1 && (pXSource->data1 + (kDudePlayer1 - 1)) == gPlayer[i].pSprite->type) continue; actDamageSprite(sprite[pXSource->reference].xvel, gPlayer[i].pSprite, (DAMAGE_TYPE) dmgType, dmg); @@ -1525,7 +1525,7 @@ void OperateWall(int nWall, XWALL *pXWall, EVENT a3) return; } - switch (pWall->lotag) { + switch (pWall->type) { // by NoOne: make 1-Way switch type for walls to work... case 21: if (VanillaMode()) break; @@ -1749,9 +1749,9 @@ void TranslateSector(int nSector, int a2, int a3, int a4, int a5, int a6, int a7 for (int nSprite = headspritesect[nSector]; nSprite >= 0; nSprite = nextspritesect[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - // By NoOne: allow to move markers by sector movements in game if hitag 1 is added in editor. + // By NoOne: allow to move markers by sector movements in game if flags 1 is added in editor. if (pSprite->statnum == 10 || pSprite->statnum == 16) { - if (!(pSprite->hitag & kModernTypeFlag1)) continue; + if (!(pSprite->flags & kModernTypeFlag1)) continue; } x = baseSprite[nSprite].x; y = baseSprite[nSprite].y; @@ -1813,8 +1813,8 @@ void ZTranslateSector(int nSector, XSECTOR *pXSector, int a3, int a4) viewBackupSpriteLoc(nSprite, pSprite); pSprite->z += pSector->floorz-oldZ; } - else if (pSprite->hitag&2) - pSprite->hitag |= 4; + else if (pSprite->flags&2) + pSprite->flags |= 4; else if (oldZ <= bottom && !(pSprite->cstat&48)) { viewBackupSpriteLoc(nSprite, pSprite); @@ -2090,7 +2090,7 @@ int HDoorBusy(unsigned int nSector, unsigned int a2) nWave = pXSector->at7_5; spritetype *pSprite1 = &sprite[pXSector->at2c_0]; spritetype *pSprite2 = &sprite[pXSector->at2e_0]; - TranslateSector(nSector, GetWaveValue(pXSector->busy, nWave), GetWaveValue(a2, nWave), pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, pSprite1->ang, pSprite2->x, pSprite2->y, pSprite2->ang, pSector->lotag == 616); + TranslateSector(nSector, GetWaveValue(pXSector->busy, nWave), GetWaveValue(a2, nWave), pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, pSprite1->ang, pSprite2->x, pSprite2->y, pSprite2->ang, pSector->type == 616); ZTranslateSector(nSector, pXSector, a2, nWave); pXSector->busy = a2; if (pXSector->command == 5 && pXSector->txID) @@ -2117,7 +2117,7 @@ int RDoorBusy(unsigned int nSector, unsigned int a2) else nWave = pXSector->at7_5; spritetype *pSprite = &sprite[pXSector->at2c_0]; - TranslateSector(nSector, GetWaveValue(pXSector->busy, nWave), GetWaveValue(a2, nWave), pSprite->x, pSprite->y, pSprite->x, pSprite->y, 0, pSprite->x, pSprite->y, pSprite->ang, pSector->lotag == 617); + TranslateSector(nSector, GetWaveValue(pXSector->busy, nWave), GetWaveValue(a2, nWave), pSprite->x, pSprite->y, pSprite->x, pSprite->y, 0, pSprite->x, pSprite->y, pSprite->ang, pSector->type == 617); ZTranslateSector(nSector, pXSector, a2, nWave); pXSector->busy = a2; if (pXSector->command == 5 && pXSector->txID) @@ -2375,7 +2375,7 @@ void OperateSector(unsigned int nSector, XSECTOR *pXSector, EVENT a3) pXSector->locked = 0; // By NoOne: reset counter sector state and make it work again after unlock, so it can be used again. // See callback.cpp for more info. - if (pSector->lotag == kSecCounter) { + if (pSector->type == kSecCounter) { pXSector->state = 0; evPost(nSector, 6, 0, CALLBACK_ID_12); } @@ -2383,7 +2383,7 @@ void OperateSector(unsigned int nSector, XSECTOR *pXSector, EVENT a3) case 8: pXSector->locked ^= 1; // same as above... - if (pSector->lotag == kSecCounter && pXSector->locked != 1) { + if (pSector->type == kSecCounter && pXSector->locked != 1) { pXSector->state = 0; evPost(nSector, 6, 0, CALLBACK_ID_12); } @@ -2401,7 +2401,7 @@ void OperateSector(unsigned int nSector, XSECTOR *pXSector, EVENT a3) pXSector->at1b_3 = 1; break; default: - switch (pSector->lotag) + switch (pSector->type) { case 602: OperateDoor(nSector, pXSector, a3, BUSYID_1); @@ -2493,7 +2493,7 @@ void LinkSector(int nSector, XSECTOR *pXSector, EVENT a3) { sectortype *pSector = §or[nSector]; int nBusy = GetSourceBusy(a3); - switch (pSector->lotag) + switch (pSector->type) { case 602: VSpriteBusy(nSector, nBusy); @@ -2824,7 +2824,7 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { if (pSource->type == kModernConcussSprite) { /* - Concussing any physics affected sprite with give strength - */ if (type != 3) return; - else if ((sprite[nDest].hitag & kPhysMove) || (sprite[nDest].hitag & kPhysGravity) || isDebris(nDest)) + else if ((sprite[nDest].flags & kPhysMove) || (sprite[nDest].flags & kPhysGravity) || isDebris(nDest)) useConcussSprite(pXSource, &sprite[nDest]); return; @@ -2881,9 +2881,9 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { /* - data4 = step value - */ /* - min > max = sub, min < max = sum - */ - /* - hitag: 0 = force OFF if goal value was reached for all objects - */ - /* - hitag: 2 = force swap min and max if goal value was reached - */ - /* - hitag: 3 = force reset counter - */ + /* - flags: 0 = force OFF if goal value was reached for all objects - */ + /* - flags: 2 = force swap min and max if goal value was reached - */ + /* - flags: 3 = force reset counter - */ int data = getDataFieldOfObject(type, nDest, pXSource->data1); if (data == -65535) return; @@ -2895,7 +2895,7 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { if ((data += pXSource->data4) >= pXSource->data3) { - switch (pSource->hitag) { + switch (pSource->flags) { case kModernTypeFlag0: case kModernTypeFlag1: if (data > pXSource->data3) data = pXSource->data3; @@ -2920,7 +2920,7 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { if (data < pXSource->data3) data = pXSource->data3; if ((data -= pXSource->data4) <= pXSource->data3) { - switch (pSource->hitag) { + switch (pSource->flags) { case kModernTypeFlag0: case kModernTypeFlag1: if (data < pXSource->data3) data = pXSource->data3; @@ -2952,30 +2952,30 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { /* - data3 = sprite data3 - */ /* - data4 = sprite data4 - */ - /* - hitag: 1 = treat "ignore value" as actual value - */ + /* - flags: 1 = treat "ignore value" as actual value - */ switch (type) { case 6: - if ((pSource->hitag & kModernTypeFlag1) || (pXSource->data1 != -1 && pXSource->data1 != 32767)) + if ((pSource->flags & kModernTypeFlag1) || (pXSource->data1 != -1 && pXSource->data1 != 32767)) setDataValueOfObject(type, nDest, 1, pXSource->data1); break; case 3: - if ((pSource->hitag & kModernTypeFlag1) || (pXSource->data1 != -1 && pXSource->data1 != 32767)) + if ((pSource->flags & kModernTypeFlag1) || (pXSource->data1 != -1 && pXSource->data1 != 32767)) setDataValueOfObject(type, nDest, 1, pXSource->data1); - if ((pSource->hitag & kModernTypeFlag1) || (pXSource->data2 != -1 && pXSource->data2 != 32767)) + if ((pSource->flags & kModernTypeFlag1) || (pXSource->data2 != -1 && pXSource->data2 != 32767)) setDataValueOfObject(type, nDest, 2, pXSource->data2); - if ((pSource->hitag & kModernTypeFlag1) || (pXSource->data3 != -1 && pXSource->data3 != 32767)) + if ((pSource->flags & kModernTypeFlag1) || (pXSource->data3 != -1 && pXSource->data3 != 32767)) setDataValueOfObject(type, nDest, 3, pXSource->data3); - if ((pSource->hitag & kModernTypeFlag1) || (pXSource->data4 != -1 && pXSource->data1 != 65535)) + if ((pSource->flags & kModernTypeFlag1) || (pXSource->data4 != -1 && pXSource->data1 != 65535)) setDataValueOfObject(type, nDest, 4, pXSource->data4); break; case 0: - if ((pSource->hitag & kModernTypeFlag1) || (pXSource->data1 != -1 && pXSource->data1 != 32767)) + if ((pSource->flags & kModernTypeFlag1) || (pXSource->data1 != -1 && pXSource->data1 != 32767)) setDataValueOfObject(type, nDest, 1, pXSource->data1); break; } @@ -3005,7 +3005,7 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { pXSector->phase = (pXSource->data4 > 255) ? 255 : pXSource->data4; // force shadeAlways - if (pSource->hitag & kModernTypeFlag1) + if (pSource->flags & kModernTypeFlag1) pXSector->shadeAlways = true; // add to shadeList if amplitude was set to 0 previously @@ -3042,7 +3042,7 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { if (type != 3 || !IsDudeSprite(&sprite[nDest]) || sprite[nDest].statnum != 6) return; spritetype* pSprite = &sprite[nDest]; XSPRITE* pXSprite = &xsprite[pSprite->extra]; spritetype* pTarget = NULL; XSPRITE* pXTarget = NULL; int receiveHp = 33 + Random(33); - DUDEINFO* pDudeInfo = &dudeInfo[pSprite->lotag - kDudeBase]; int matesPerEnemy = 1; + DUDEINFO* pDudeInfo = &dudeInfo[pSprite->type - kDudeBase]; int matesPerEnemy = 1; // dude is burning? if (pXSprite->burnTime > 0 && pXSprite->burnSource >= 0 && pXSprite->burnSource < kMaxSprites) { @@ -3076,12 +3076,12 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { if (pXSource->data4 == 3) { aiSetTarget(pXSprite, pSprite->x, pSprite->y, pSprite->z); aiSetGenIdleState(pSprite, pXSprite); - if (pSprite->lotag == kCustomDude) + if (pSprite->type == kCustomDude) removeLeech(leechIsDropped(pSprite)); } else if (pXSource->data4 == 4) { aiSetTarget(pXSprite, pPlayer->x, pPlayer->y, pPlayer->z); - if (pSprite->lotag == kCustomDude) + if (pSprite->type == kCustomDude) removeLeech(leechIsDropped(pSprite)); } } @@ -3091,9 +3091,9 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { pTarget = &sprite[pXSprite->target]; pXTarget = &xsprite[pTarget->extra]; if (unitCanFly(pSprite) && isMeleeUnit(pTarget) && !unitCanFly(pTarget)) - pSprite->hitag |= 0x0002; + pSprite->flags |= 0x0002; else if (unitCanFly(pSprite)) - pSprite->hitag &= ~0x0002; + pSprite->flags &= ~0x0002; if (!IsDudeSprite(pTarget) || pXTarget->health < 1 || !dudeCanSeeTarget(pXSprite, pDudeInfo, pTarget)) { aiSetTarget(pXSprite, pSprite->x, pSprite->y, pSprite->z); @@ -3139,7 +3139,7 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { if (pXMate->data4 > 0 && pXMate->health < pXMate->data4) actHealDude(pXMate, receiveHp, pXMate->data4); else { - DUDEINFO* pTDudeInfo = &dudeInfo[pMate->lotag - kDudeBase]; + DUDEINFO* pTDudeInfo = &dudeInfo[pMate->type - kDudeBase]; if (pXMate->health < pTDudeInfo->startHealth) actHealDude(pXMate, receiveHp, pTDudeInfo->startHealth); } @@ -3367,13 +3367,13 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { XSECTOR *pXSector = &xsector[sector[nDest].extra]; if (valueIsBetween(pXSource->data3, -1, 32767)) { sector[nDest].floorpal = pXSource->data3; - if (pSource->hitag & kModernTypeFlag1) + if (pSource->flags & kModernTypeFlag1) pXSector->floorpal = pXSource->data3; } if (valueIsBetween(pXSource->data4, -1, 65535)) { sector[nDest].ceilingpal = pXSource->data4; - if (pSource->hitag & kModernTypeFlag1) + if (pSource->flags & kModernTypeFlag1) pXSector->ceilpal = pXSource->data4; } break; @@ -3407,7 +3407,7 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { /* - properties changer can change various properties of sprite/wall/sector via TX ID - */ /* - data1 = sector underwater status - */ /* - data2 = sector visibility - */ - /* - data3 = sector ceiling cstat / sprite / wall hitag - */ + /* - data3 = sector ceiling cstat / sprite / wall flags - */ /* - data4 = sector floor / sprite / wall cstat - */ int old = -1; switch (type) { @@ -3440,11 +3440,11 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { XSPRITE* pXSprite = &xsprite[pSprite->extra]; if (valueIsBetween(pXSource->data3, -1, 32767)) { - old = pSprite->hitag; pSprite->hitag = pXSource->data3; // set new hitag + old = pSprite->flags; pSprite->flags = pXSource->data3; // set new flags // and handle exceptions - if ((old & kHitagFree) && !(pSprite->hitag & kHitagFree)) pSprite->hitag |= kHitagFree; - if ((old & kHitagRespawn) && !(pSprite->hitag & kHitagRespawn)) pSprite->hitag |= kHitagRespawn; + if ((old & kHitagFree) && !(pSprite->flags & kHitagFree)) pSprite->flags |= kHitagFree; + if ((old & kHitagRespawn) && !(pSprite->flags & kHitagRespawn)) pSprite->flags |= kHitagRespawn; // prepare things for different (debris) physics. if (pSprite->statnum == 4 && debrisGetFreeIndex() >= 0) thing2debris = true; @@ -3459,19 +3459,19 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { case 16: // path marker break; default: - // store physics attributes in xsprite to avoid setting hitag for modern types! + // store physics attributes in xsprite to avoid setting flags for modern types! int flags = (pXSprite->physAttr != 0) ? pXSprite->physAttr : 0; if (thing2debris) { // converting thing to debris - if ((pSprite->hitag & kPhysMove) != 0) flags |= kPhysMove; + if ((pSprite->flags & kPhysMove) != 0) flags |= kPhysMove; else flags &= ~kPhysMove; - if ((pSprite->hitag & kPhysGravity) != 0) flags |= (kPhysGravity | kPhysFalling); + if ((pSprite->flags & kPhysGravity) != 0) flags |= (kPhysGravity | kPhysFalling); else flags &= ~(kPhysGravity | kPhysFalling); - pSprite->hitag &= ~(kPhysMove | kPhysGravity | kPhysFalling); + pSprite->flags &= ~(kPhysMove | kPhysGravity | kPhysFalling); xvel[nDest] = yvel[nDest] = zvel[nDest] = 0; pXSprite->restState = pXSprite->state; } else { @@ -3549,7 +3549,7 @@ void pastePropertiesInObj(int type, int nDest, EVENT event) { } else if (nIndex != -1) { pXSprite->physAttr = flags; xvel[nDest] = yvel[nDest] = zvel[nDest] = 0; - if (pSprite->lotag >= kThingBase && pSprite->lotag < kThingMax) + if (pSprite->type >= kThingBase && pSprite->type < kThingMax) changespritestat(nDest, 4); // if it was a thing - restore statnum } @@ -3869,7 +3869,7 @@ bool getDudesForTargetChg(XSPRITE* pXSprite) { void disturbDudesInSight(spritetype* pSprite, int max) { spritetype* pDude = NULL; XSPRITE* pXDude = NULL; XSPRITE* pXSprite = &xsprite[pSprite->extra]; - DUDEINFO* pDudeInfo = &dudeInfo[pSprite->lotag - kDudeBase]; + DUDEINFO* pDudeInfo = &dudeInfo[pSprite->type - kDudeBase]; for (int nSprite = headspritestat[6]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { pDude = &sprite[nSprite]; if (pDude->xvel == pSprite->xvel || !IsDudeSprite(pDude) || pDude->extra < 0) @@ -3944,7 +3944,7 @@ bool IsKillableDude(spritetype* pSprite) { } bool isAnnoyingUnit(spritetype* pDude) { - switch (pDude->lotag) { + switch (pDude->type) { case 212: // hand case 213: // brown spider case 214: // red spider @@ -3965,7 +3965,7 @@ bool isAnnoyingUnit(spritetype* pDude) { } bool unitCanFly(spritetype* pDude) { - switch (pDude->lotag) { + switch (pDude->type) { case 219: // bat case 206: // gargoyle case 207: // stone gargoyle @@ -3977,7 +3977,7 @@ bool unitCanFly(spritetype* pDude) { } bool isMeleeUnit(spritetype* pDude) { - switch (pDude->lotag) { + switch (pDude->type) { case 203: // axe zombie case 205: // earth zombie case 206: // gargoyle @@ -4042,8 +4042,8 @@ void ProcessMotion(void) for (int nSprite = headspritesect[nSector]; nSprite >= 0; nSprite = nextspritesect[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag&2) - pSprite->hitag |= 4; + if (pSprite->flags&2) + pSprite->flags |= 4; else { int top, bottom; @@ -4153,13 +4153,13 @@ void trInit(void) { if (sprite[i].statnum < kStatFree) { - sprite[i].zvel = sprite[i].type; + sprite[i].inittype = sprite[i].type; baseSprite[i].x = sprite[i].x; baseSprite[i].y = sprite[i].y; baseSprite[i].z = sprite[i].z; } else - sprite[i].zvel = -1; + sprite[i].inittype = -1; } for (int i = 0; i < numwalls; i++) { @@ -4185,7 +4185,7 @@ void trInit(void) XSECTOR *pXSector = &xsector[nXSector]; if (pXSector->state) pXSector->busy = 65536; - switch (pSector->lotag) + switch (pSector->type) { case kSecCounter: //By NoOne: no need to trigger once it, instead lock so it can be unlocked and used again. @@ -4201,7 +4201,7 @@ void trInit(void) { spritetype *pSprite1 = &sprite[pXSector->at2c_0]; spritetype *pSprite2 = &sprite[pXSector->at2e_0]; - TranslateSector(i, 0, -65536, pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, pSprite1->ang, pSprite2->x, pSprite2->y, pSprite2->ang, pSector->lotag == 616); + TranslateSector(i, 0, -65536, pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, pSprite1->ang, pSprite2->x, pSprite2->y, pSprite2->ang, pSector->type == 616); for (int j = 0; j < pSector->wallnum; j++) { baseWall[pSector->wallptr+j].x = wall[pSector->wallptr+j].x; @@ -4213,7 +4213,7 @@ void trInit(void) baseSprite[nSprite].y = sprite[nSprite].y; baseSprite[nSprite].z = sprite[nSprite].z; } - TranslateSector(i, 0, pXSector->busy, pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, pSprite1->ang, pSprite2->x, pSprite2->y, pSprite2->ang, pSector->lotag == 616); + TranslateSector(i, 0, pXSector->busy, pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, pSprite1->ang, pSprite2->x, pSprite2->y, pSprite2->ang, pSector->type == 616); ZTranslateSector(i, pXSector, pXSector->busy, 1); break; } @@ -4221,7 +4221,7 @@ void trInit(void) case 617: { spritetype *pSprite1 = &sprite[pXSector->at2c_0]; - TranslateSector(i, 0, -65536, pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, 0, pSprite1->x, pSprite1->y, pSprite1->ang, pSector->lotag == 617); + TranslateSector(i, 0, -65536, pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, 0, pSprite1->x, pSprite1->y, pSprite1->ang, pSector->type == 617); for (int j = 0; j < pSector->wallnum; j++) { baseWall[pSector->wallptr+j].x = wall[pSector->wallptr+j].x; @@ -4233,7 +4233,7 @@ void trInit(void) baseSprite[nSprite].y = sprite[nSprite].y; baseSprite[nSprite].z = sprite[nSprite].z; } - TranslateSector(i, 0, pXSector->busy, pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, 0, pSprite1->x, pSprite1->y, pSprite1->ang, pSector->lotag == 617); + TranslateSector(i, 0, pXSector->busy, pSprite1->x, pSprite1->y, pSprite1->x, pSprite1->y, 0, pSprite1->x, pSprite1->y, pSprite1->ang, pSector->type == 617); ZTranslateSector(i, pXSector, pXSector->busy, 1); break; } @@ -4283,9 +4283,9 @@ void trInit(void) break; case 414: if (pXSprite->state) - sprite[i].hitag |= 7; + sprite[i].flags |= 7; else - sprite[i].hitag &= ~7; + sprite[i].flags &= ~7; break; } if (pXSprite->Vector) @@ -4377,7 +4377,7 @@ void ActivateGenerator(int nSprite) if (pXSprite->dropMsg > 0) { for (short nItem = headspritestat[3]; nItem >= 0; nItem = nextspritestat[nItem]) { spritetype* pItem = &sprite[nItem]; - if (pItem->lotag == pXSprite->dropMsg && pItem->x == pSprite->x && pItem->y == pSprite->y && pItem->z == pSprite->z) { + if (pItem->type == pXSprite->dropMsg && pItem->x == pSprite->x && pItem->y == pSprite->y && pItem->z == pSprite->z) { gFX.fxSpawn((FX_ID)29, pSprite->sectnum, pSprite->x, pSprite->y, pSprite->z, 0); deletesprite(nItem); break; @@ -4498,7 +4498,7 @@ void UniMissileTrapSeqCallback(int, int nXSprite) if (pMissile != NULL) { // inherit some properties of the generator - if (pSprite->hitag & kModernTypeFlag1) { + if (pSprite->flags & kModernTypeFlag1) { pMissile->xrepeat = pSprite->xrepeat; pMissile->yrepeat = pSprite->yrepeat; diff --git a/source/blood/src/view.cpp b/source/blood/src/view.cpp index 22a06a242..c2d53e426 100644 --- a/source/blood/src/view.cpp +++ b/source/blood/src/view.cpp @@ -258,7 +258,7 @@ void viewInitializePrediction(void) predict.at54 = gMe->pSprite->y; predict.at58 = gMe->pSprite->z; predict.at68 = gMe->pSprite->sectnum; - predict.at73 = gMe->pSprite->hitag; + predict.at73 = gMe->pSprite->flags; predict.at5c = xvel[gMe->pSprite->index]; predict.at60 = yvel[gMe->pSprite->index]; predict.at64 = zvel[gMe->pSprite->index]; @@ -608,7 +608,7 @@ void fakeMoveDude(spritetype *pSprite) if (nSector == -1) nSector = predict.at68; - if (sector[nSector].lotag >= 612 && sector[nSector].lotag <= 617) + if (sector[nSector].type >= 612 && sector[nSector].type <= 617) { short nSector2 = nSector; pushmove_old((int32_t*)&predict.at50, (int32_t*)&predict.at54, (int32_t*)&predict.at58, &nSector2, wd, tz, bz, CLIPMASK0); @@ -2176,7 +2176,7 @@ void viewProcessSprites(int32_t cX, int32_t cY, int32_t cZ, int32_t cA, int32_t } int nSprite = pTSprite->owner; - if (gViewInterpolate && TestBitString(gInterpolateSprite, nSprite) && !(pTSprite->hitag&512)) + if (gViewInterpolate && TestBitString(gInterpolateSprite, nSprite) && !(pTSprite->flags&512)) { LOCATION *pPrevLoc = &gPrevSpriteLoc[nSprite]; pTSprite->x = interpolate(pPrevLoc->x, pTSprite->x, gInterpolate); @@ -2267,7 +2267,7 @@ void viewProcessSprites(int32_t cX, int32_t cY, int32_t cZ, int32_t cA, int32_t // Can be overridden by def script if (usevoxels && gDetail >= 4 && videoGetRenderMode() != REND_POLYMER && tiletovox[pTSprite->picnum] == -1 && voxelIndex[pTSprite->picnum] != -1) { - if ((pTSprite->hitag&16) == 0) + if ((pTSprite->flags&16) == 0) { pTSprite->cstat |= 48; pTSprite->cstat &= ~(4|8); @@ -2327,7 +2327,7 @@ void viewProcessSprites(int32_t cX, int32_t cY, int32_t cZ, int32_t cA, int32_t } nShade += tileShade[pTSprite->picnum]; pTSprite->shade = ClipRange(nShade, -128, 127); - if ((pTSprite->hitag&16) && sprite[pTSprite->owner].owner == 3) + if ((pTSprite->flags&16) && sprite[pTSprite->owner].owner == 3) { dassert(pTXSprite != NULL); pTSprite->xrepeat = 48; @@ -2350,15 +2350,15 @@ void viewProcessSprites(int32_t cX, int32_t cY, int32_t cZ, int32_t cA, int32_t { pTSprite->shade = ClipRange(pTSprite->shade-16-QRandom(8), -128, 127); } - if (pTSprite->hitag&256) + if (pTSprite->flags&256) { viewAddEffect(nTSprite, VIEW_EFFECT_6); } - if (pTSprite->hitag&1024) + if (pTSprite->flags&1024) { pTSprite->cstat |= 4; } - if (pTSprite->hitag&2048) + if (pTSprite->flags&2048) { pTSprite->cstat |= 8; } @@ -2620,7 +2620,7 @@ void viewProcessSprites(int32_t cX, int32_t cY, int32_t cZ, int32_t cA, int32_t { pTSprite->pal = pSector->floorpal; } - if (pTSprite->hitag&1) + if (pTSprite->flags&1) { if (getflorzofslope(pTSprite->sectnum, pTSprite->x, pTSprite->y) >= cZ) { diff --git a/source/blood/src/weapon.cpp b/source/blood/src/weapon.cpp index 7f4e56c38..85f105022 100644 --- a/source/blood/src/weapon.cpp +++ b/source/blood/src/weapon.cpp @@ -327,9 +327,9 @@ void UpdateAimVector(PLAYER * pPlayer) continue; if (!gGameOptions.bFriendlyFire && IsTargetTeammate(pPlayer, pSprite)) continue; - if (pSprite->hitag&32) + if (pSprite->flags&32) continue; - if (!(pSprite->hitag&8)) + if (!(pSprite->flags&8)) continue; int x2 = pSprite->x; int y2 = pSprite->y; @@ -383,7 +383,7 @@ void UpdateAimVector(PLAYER * pPlayer) pSprite = &sprite[nSprite]; if (!gGameOptions.bFriendlyFire && IsTargetTeammate(pPlayer, pSprite)) continue; - if (!(pSprite->hitag&8)) + if (!(pSprite->flags&8)) continue; int x2 = pSprite->x; int y2 = pSprite->y; @@ -2469,7 +2469,7 @@ void sub_51340(spritetype *pMissile, int a2) if (nSprite != nOwner || v4) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag&32) + if (pSprite->flags&32) continue; if (TestBitString(va4, pSprite->sectnum) && CheckProximity(pSprite, x, y, z, nSector, nDist)) { @@ -2485,7 +2485,7 @@ void sub_51340(spritetype *pMissile, int a2) for (int nSprite = headspritestat[4]; nSprite >= 0; nSprite = nextspritestat[nSprite]) { spritetype *pSprite = &sprite[nSprite]; - if (pSprite->hitag&32) + if (pSprite->flags&32) continue; if (TestBitString(va4, pSprite->sectnum) && CheckProximity(pSprite, x, y, z, nSector, nDist)) { diff --git a/source/build/include/buildtypes.h b/source/build/include/buildtypes.h index 4661adfaf..72545057e 100644 --- a/source/build/include/buildtypes.h +++ b/source/build/include/buildtypes.h @@ -50,7 +50,10 @@ typedef struct StructTracker(Sector, int8_t) floorshade; StructTracker(Sector, uint8_t) floorpal, floorxpanning, floorypanning; StructTracker(Sector, uint8_t) /*CM_CEILINGZ:*/ visibility, fogpal; - StructTracker(Sector, int16_t) lotag, hitag; + union { + StructTracker(Sector, int16_t) lotag, type; + }; + StructTracker(Sector, int16_t) hitag; StructTracker(Sector, int16_t) extra; } StructName(sectortypev7); @@ -83,7 +86,10 @@ typedef struct StructTracker(Wall, int16_t) picnum, overpicnum; StructTracker(Wall, int8_t) shade; StructTracker(Wall, uint8_t) pal, xrepeat, yrepeat, xpanning, ypanning; - StructTracker(Wall, int16_t) lotag, hitag; + union { + StructTracker(Wall, int16_t) lotag, type; + }; + StructTracker(Wall, int16_t) hitag; StructTracker(Wall, int16_t) extra; } StructName(walltypev7); @@ -183,18 +189,21 @@ typedef struct struct { union { - StructTracker(Sprite, int16_t) xvel; - StructTracker(Sprite, int16_t) index; + StructTracker(Sprite, int16_t) xvel, index; + }; + StructTracker(Sprite, int16_t) yvel; + union { + StructTracker(Sprite, int16_t) zvel, inittype; }; - StructTracker(Sprite, int16_t) yvel, zvel; }; vec3_16_t vel; }; union { - StructTracker(Sprite, int16_t) lotag; - StructTracker(Sprite, int16_t) type; + StructTracker(Sprite, int16_t) lotag, type; + }; + union { + StructTracker(Sprite, int16_t) hitag, flags; }; - StructTracker(Sprite, int16_t) hitag; StructTracker(Sprite, int16_t) extra; } StructName(spritetypev7);