using System; using System.Collections; using System.Collections.Generic; using UnityEngine; public class EmptyCounter : BaseCounter { [SerializeField] private ObjectSO _objectSo; [SerializeField] private bool _shouldSpawnOnInteract; public override void Interact() { InteractionBehaviour interactionBehaviour = PlayerController.Instance.InteractionBehaviour; if (_shouldSpawnOnInteract) { if (_currentObject == null) { Transform objectTransform = Instantiate(_objectSo.prefab, _counterObjectHandle); objectTransform.GetComponent().setObjectParent(this); } } if (!HasObject()) { //No item on the counter //Check player if he has something if (interactionBehaviour.HasObject()) { Object obj = interactionBehaviour.GetObject(); obj.setObjectParent(this); } else { //Player has no item } } else { //Item on Counter //Check player if he has something if (interactionBehaviour.HasObject()) { //Player has something } else { //Player has nothing //Take the object GetObject().setObjectParent(interactionBehaviour); } } } }