public override bool OnInteract(PlayerBehaviour player)
        {
            if (isEnabled && player.HasStackSpace() && itemStack.Count > 0)
            {
                player.PushItemStack(removeItemFromStack());
                levelBehaviour.AddScore(1);
                return(true);
            }

            return(false);
        }
        public override bool OnInteract(PlayerBehaviour player)
        {
            ItemBehaviour item = player.PeekItemStack();

            if (isEnabled && state != EBehaviourState.FAILED &&
                itemStack.Count < definition.maxStackItems &&
                item != null &&
                definition.demandItem == item.ItemDefinition)
            {
                pushItemToStack(player.PopItemStack());
                levelBehaviour.AddScore(1);
                return(true);
            }

            return(false);
        }