82 lines
2.4 KiB
C#
82 lines
2.4 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class BuffManager : Singleton<BuffManager>
|
|
{
|
|
//团子动画
|
|
public int KowtowParameter = 2;
|
|
public int HarmerParameter = 20;
|
|
public int kowtowSpeed1 = 1;
|
|
public int kowtowSpeed2 = 1;
|
|
public float cutTreeSpeed = 1;
|
|
public bool HarmerDoubleRotate = false;
|
|
[Header("团子数量")]
|
|
public int TuanZi_Total;
|
|
public int TuanZi_Sun;
|
|
public int TuanZi_Sun_JiSi;
|
|
public int TuanZi_WoodSculpture;
|
|
public int Faith;
|
|
[Header("Buff激活和关闭的方法")]
|
|
public List<MyAction> ActiveBuff = new List<MyAction>();
|
|
private List<MyAction> DisActiveBuff = new List<MyAction>();
|
|
|
|
public delegate void MyAction();
|
|
private void Update()
|
|
{
|
|
if (!CheckParameterUpdate())
|
|
{
|
|
foreach (MyAction disactive in DisActiveBuff)
|
|
{
|
|
disactive?.Invoke();
|
|
}
|
|
UpdateParameter();
|
|
foreach (MyAction active in ActiveBuff)
|
|
{
|
|
active?.Invoke();
|
|
}
|
|
}
|
|
}
|
|
public bool CheckParameterUpdate()
|
|
{
|
|
if (TuanZi_Total!=BlobManager.Instance.Blobs.Count)
|
|
{
|
|
return false;
|
|
}
|
|
else if (TuanZi_Sun != BuildingsManager.Instance.sun.TuanZi_Num)
|
|
{
|
|
return false;
|
|
}
|
|
else if (TuanZi_Sun_JiSi != BuildingsManager.Instance.sun.JiSi_num)
|
|
{
|
|
return false;
|
|
}
|
|
else if (TuanZi_WoodSculpture != BuildingsManager.Instance.woodSculpture.TuanZi_Num)
|
|
{
|
|
return false;
|
|
}
|
|
else if (Faith.ToString().Length != GameProcedureManager.Instance.FaithCount.ToString().Length)
|
|
{
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
return true;
|
|
}
|
|
}
|
|
public void UpdateParameter()
|
|
{
|
|
TuanZi_Total = BlobManager.Instance.Blobs.Count;
|
|
TuanZi_Sun = BuildingsManager.Instance.sun.TuanZi_Num;
|
|
TuanZi_Sun_JiSi = BuildingsManager.Instance.sun.JiSi_num;
|
|
TuanZi_WoodSculpture = BuildingsManager.Instance.woodSculpture.TuanZi_Num;
|
|
Faith = GameProcedureManager.Instance.FaithCount;
|
|
}
|
|
// 注册方法
|
|
public void RegisterMethod(MyAction ActiveMethod, MyAction disActiveMethod)
|
|
{
|
|
ActiveBuff.Add(ActiveMethod);
|
|
DisActiveBuff.Add(disActiveMethod);
|
|
}
|
|
}
|