Files
SimUL/Assets/Scripts/InteractableObjects/CashierDesk.cs
T
Vladimir Koshevarov 1b5e1b9359 Fridge can store food
2023-03-05 18:37:28 +02:00

40 lines
1.1 KiB
C#

using System.Linq;
using UnityEngine;
public class CashierDesk : BaseInteractableObject
{
[SerializeField]
private ContainerSO _containerSO;
public override void Interact(Player player)
{
if (player.IsHoldContainerItem())
{
var playerContainer = player.GetContainerItem();
var playerItemsList = playerContainer.GetItems();
player.ClearContainerItem();
if (playerItemsList.Any())
{
float finalPrice = 0;
foreach (var item in playerItemsList)
{
finalPrice += item.Price;
}
var transform = Instantiate(_containerSO.prefab, _playerArrivePoint);
var containerItem = transform.GetComponent<ContainerItem>();
if (containerItem == null)
{
Debug.LogError("Container Item is null");
return;
}
player.Pay(finalPrice);
containerItem.AddItems(playerItemsList);
player.SetContainerItem(containerItem);
}
}
}
}