using Photon.Pun; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; public class ClassResource : Resource { [HideInInspector] public PhotonView photonView; private void Awake() { photonView = GetComponent(); } protected override void Start() { currentValue = 0f; onResourceChanged.Invoke(currentValue); canRegen = false; } public override void ChangeValue(float value) { if (value == 0) return; //Debug.Log("Class resource change value:" + value); currentValue += value; currentValue = Mathf.Clamp(currentValue, 0, maxValue); onResourceChanged.Invoke(currentValue); } public override void SetCurrentValue(float value) { currentValue = value; currentValue = Mathf.Clamp(currentValue, 0, maxValue); onResourceChanged.Invoke(currentValue); } public bool EnoughResource(float cost) { return currentValue >= cost; } [PunRPC] public void RPC_ChangeValueClassResource(float value) { if (!photonView.IsMine) return; //Debug.Log("Received ChangeValue from RPC from someone"); ChangeValue(value); } }