- fixed disappearing inventory after morphing pickup

When player is picked up item that does morph, the corresponding toucher actor is changed in process
Previously, morhing item was removed from original actor leaving player's inventory in inconsistent state

https://forum.zdoom.org/viewtopic.php?t=63124
This commit is contained in:
alexey.lysiuk 2019-01-17 15:06:10 +02:00 committed by Christoph Oelckers
parent 5e4ef04a4d
commit 8aa47e664e

View file

@ -509,6 +509,13 @@ class Inventory : Actor
// The item is placed in the inventory just long enough to be used. // The item is placed in the inventory just long enough to be used.
toucher.AddInventory(self); toucher.AddInventory(self);
bool usegood = Use(true); bool usegood = Use(true);
// Handle potential change of toucher/owner because of morph
if (usegood && self.owner)
{
toucher = self.owner;
}
toucher.RemoveInventory(self); toucher.RemoveInventory(self);
if (usegood) if (usegood)