- BuildItemAnim

This commit is contained in:
Christoph Oelckers 2021-10-21 09:50:00 +02:00
parent 6a1423d92f
commit 587cd09e8e
4 changed files with 20 additions and 20 deletions

View file

@ -156,7 +156,7 @@ enum
extern short nItemMagic[];
void BuildItemAnim(short nSprite);
void BuildItemAnim(DExhumedActor* nSprite);
void DestroyItemAnim(short nSprite);
void ItemFlash();
void FillItems(short nPlayer);

View file

@ -395,33 +395,33 @@ void ProcessSpriteTag(short nSprite, short nLotag, short nHitag)
case 60:
{
pSprite->hitag = nVal;
changespritestat(nSprite, nLotag + 900);
ChangeActorStat(pActor, nLotag + 900);
pSprite->cstat &= 0xFEFE;
BuildItemAnim(nSprite);
BuildItemAnim(pActor);
return;
}
case 12: // berry twig
{
pSprite->hitag = 40;
changespritestat(nSprite, nLotag + 900);
ChangeActorStat(pActor, nLotag + 900);
pSprite->cstat &= 0xFEFE;
BuildItemAnim(nSprite);
BuildItemAnim(pActor);
return;
}
case 13: // blood bowl
{
pSprite->hitag = 160;
changespritestat(nSprite, nLotag + 900);
ChangeActorStat(pActor, nLotag + 900);
pSprite->cstat &= 0xFEFE;
BuildItemAnim(nSprite);
BuildItemAnim(pActor);
return;
}
case 14: // venom bowl
{
pSprite->hitag = -200;
changespritestat(nSprite, nLotag + 900);
ChangeActorStat(pActor, nLotag + 900);
pSprite->cstat &= 0xFEFE;
BuildItemAnim(nSprite);
BuildItemAnim(pActor);
return;
}
@ -442,18 +442,18 @@ void ProcessSpriteTag(short nSprite, short nLotag, short nHitag)
else
{
pSprite->hitag = nVal;
changespritestat(nSprite, nLotag + 900);
ChangeActorStat(pActor, nLotag + 900);
pSprite->cstat &= 0xFEFE;
BuildItemAnim(nSprite);
BuildItemAnim(pActor);
return;
}
}
case 27:
{
pSprite->hitag = 1;
changespritestat(nSprite, 9 + 900);
ChangeActorStat(pActor, 9 + 900);
pSprite->cstat &= 0xFEFE;
BuildItemAnim(nSprite);
BuildItemAnim(pActor);
return;
}
@ -462,9 +462,9 @@ void ProcessSpriteTag(short nSprite, short nLotag, short nHitag)
nVal++;
nVal--; // CHECKME ??
pSprite->hitag = nVal;
changespritestat(nSprite, nLotag + 900);
ChangeActorStat(pActor, nLotag + 900);
pSprite->cstat &= 0xFEFE;
BuildItemAnim(nSprite);
BuildItemAnim(pActor);
return;
}
}
@ -762,7 +762,7 @@ void ProcessSpriteTag(short nSprite, short nLotag, short nHitag)
}
case 63:
{
changespritestat(nSprite, 405);
ChangeActorStat(pActor, 405);
pSprite->cstat = 0x8000;
return;
}

View file

@ -120,15 +120,15 @@ void SerializeItems(FSerializer& arc)
}
}
void BuildItemAnim(short nSprite)
void BuildItemAnim(DExhumedActor* pActor)
{
auto pSprite = &sprite[nSprite];
auto pSprite = &pActor->s();
int nItem = pSprite->statnum - 906;
if (nItemAnimInfo[nItem].a >= 0)
{
auto pAnimActor = BuildAnim(&exhumedActors[nSprite], 41, nItemAnimInfo[nItem].a, pSprite->x, pSprite->y, pSprite->z, pSprite->sectnum, nItemAnimInfo[nItem].repeat, 20);
auto pAnimActor = BuildAnim(pActor, 41, nItemAnimInfo[nItem].a, pSprite->x, pSprite->y, pSprite->z, pSprite->sectnum, nItemAnimInfo[nItem].repeat, 20);
if (nItem == 44) {
pAnimActor->s().cstat |= 2;

View file

@ -518,7 +518,7 @@ void StartDeathSeq(int nPlayer, int nVal)
pGunSprite->picnum = nGunPicnum[nWeapon];
BuildItemAnim(pGunActor->GetSpriteIndex());
BuildItemAnim(pGunActor);
}
}
}