RiftMayhem/Assets/Scripts/ClassResource.cs

59 lines
1.3 KiB
C#

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<PhotonView>();
}
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);
}
}