This commit is contained in:
Woops 2020-06-20 06:35:13 -05:00
parent 040df20441
commit 52b5cc7472

View file

@ -738,8 +738,8 @@ void KeyHoleCollision(short itemNum, ITEM_INFO* l, COLL_INFO* coll)
void do_pickup()
{
pickupitem = (short)Lara.generalPtr;
ITEM_INFO* item = &Items[pickupitem];
pickupitem = item->objectNumber;
short oldXrot = item->pos.xRot;
short oldYrot = item->pos.yRot;
short oldZrot = item->pos.zRot;
@ -782,12 +782,13 @@ void do_pickup()
InitialiseNewWeapon();
Lara.gunStatus = LG_SPECIAL;
Lara.flareAge = (short)(item->data) & 0x7FFF;
KillItem(pickupitem);
return;
}
}
else
{
if (LaraItem->animNumber == ANIMATION_LARA_UNDERWATER_PICKUP)
if (LaraItem->animNumber == ANIMATION_LARA_UNDERWATER_PICKUP)//dirty but what can I do, it uses the same state
{
AddDisplayPickup(item->objectNumber);
if (!(item->triggerFlags & 0xC0))
@ -807,7 +808,7 @@ void do_pickup()
}
else
{
if (LaraItem->animNumber == ANIMATION_LARA_PICKUP)
if (LaraItem->currentAnimState == STATE_LARA_PICKUP || LaraItem->currentAnimState == STATE_LARA_PICKUP_FROM_CHEST)
{
AddDisplayPickup(item->objectNumber);
if (item->triggerFlags & 0x100)