- Exhumed: Consolidate two more cases in pickup code.

This commit is contained in:
Mitchell Richters 2023-03-25 08:44:27 +11:00
parent c0d13f7619
commit 1ebc634ac0

View file

@ -334,15 +334,8 @@ void doPlayerItemPickups(Player* const pPlayer)
} }
case 31: // Cobra staff ammo case 31: // Cobra staff ammo
if (AddAmmo(pPlayer->nPlayer, 5, 1))
{
doProcessPickup();
doConsoleMessage(StaticSound[kSoundAmmoPickup]);
}
break;
case 32: // Raw Energy case 32: // Raw Energy
if (AddAmmo(pPlayer->nPlayer, 6, pPickupActor->spr.hitag)) if (AddAmmo(pPlayer->nPlayer, itemtype - 26, (itemtype == 32) ? pPickupActor->spr.hitag : 1))
{ {
doProcessPickup(); doProcessPickup();
doConsoleMessage(StaticSound[kSoundAmmoPickup]); doConsoleMessage(StaticSound[kSoundAmmoPickup]);
@ -355,7 +348,6 @@ void doPlayerItemPickups(Player* const pPlayer)
case 42: // Earth key case 42: // Earth key
{ {
const int keybit = 4096 << (itemtype - 39); const int keybit = 4096 << (itemtype - 39);
if (!(pPlayer->keys & keybit)) if (!(pPlayer->keys & keybit))
{ {
pPlayer->keys |= keybit; pPlayer->keys |= keybit;
@ -372,9 +364,7 @@ void doPlayerItemPickups(Player* const pPlayer)
pPlayer->nMagic += 100; pPlayer->nMagic += 100;
if (pPlayer->nMagic >= 1000) if (pPlayer->nMagic >= 1000)
{
pPlayer->nMagic = 1000; pPlayer->nMagic = 1000;
}
doProcessPickup(); doProcessPickup();
doConsoleMessage(StaticSound[kSoundMana1]); doConsoleMessage(StaticSound[kSoundMana1]);
@ -387,19 +377,13 @@ void doPlayerItemPickups(Player* const pPlayer)
pPickupActor->nIndex2++; pPickupActor->nIndex2++;
pPickupActor->nAction &= 0xEF; pPickupActor->nAction &= 0xEF;
pPickupActor->nIndex = 0; pPickupActor->nIndex = 0;
ChangeActorStat(pPickupActor, 899); ChangeActorStat(pPickupActor, 899);
} }
SetSavePoint(pPlayer->nPlayer, pPlayerActor->spr.pos, pPlayerActor->sector(), pPlayerActor->spr.Angles.Yaw); SetSavePoint(pPlayer->nPlayer, pPlayerActor->spr.pos, pPlayerActor->sector(), pPlayerActor->spr.Angles.Yaw);
break; break;
case 54: // Golden Sarcophagus (End Level) case 54: // Golden Sarcophagus (End Level)
if (!bInDemo) if (!bInDemo) LevelFinished();
{
LevelFinished();
}
DestroyItemAnim(pPickupActor); DestroyItemAnim(pPickupActor);
DeleteActor(pPickupActor); DeleteActor(pPickupActor);
break; break;