// Use this for initialization void Awake() { //Application.targetFrameRate = 60; NeatlyTimer.Init(); MainBattleManager.Instance.Start(); MainBattleManager.Instance.InitLogicTime(1 / BattleLogicDefine.logicSecFrame); }
public void Awake() { Instance = this; NeatlyTimer.Init(); meshRenderer = gameObject.AddComponent <MeshRenderer>(); meshFilter = gameObject.AddComponent <MeshFilter>(); meshSeqList = AnimatorSequence.LoadMeshSequences("SK_Blue_CasterMinion_000"); // meshSeqList = AnimatorSequence.LoadMeshSequences("Footman_Blue"); shareMaterial = new[] { material }; meshRenderer.sharedMaterials = shareMaterial; combineMap = new Dictionary <int, CombineInstance[]>(); }
private void DieOne(float deg) { int randIndex = Random.Range(0, soldierIndexList.Count); var soldierObject = GetSoldierByIndex(soldierIndexList[randIndex]); soldierObject.SetState(TroopAnimState.Die); m_CacheDieSoldier.Add(soldierObject); //固定时间后回收 soldierObject.SetParent(MainBattleManager.Instance.m_BattleViewRoot); //SoarDTween.Alpha(soldierObject.Renderer, 0, 1); NeatlyTimer.AddClock(soldierObject, f => { soldierObject.Dispose(); m_CacheDieSoldier.Clear(); }, 1.2f, true); soldierIndexList.RemoveAt(randIndex); }
public void SetState(TroopAnimState state) { if (m_CurrentState == state) { return; } if (state == TroopAnimState.Die) { m_CurrentState = state; //执行 Play(); //渐隐 NeatlyTimer.AddClock(this, f => { this.SetActive(false); }, 2, true); return; } if (m_CurrentState == TroopAnimState.Attack) { return; } m_CurrentState = state; Play(); }
public static GameObject AddFrame(string name, Action <float> action, float intervalClock = 1, bool once = false) { Transform Root = MainBattleManager.Instance.m_BattleViewRoot; Transform trans = Root.Find(name); NeatlyBehaviour frame; if (trans == null) { frame = new GameObject(name).AddComponent <NeatlyBehaviour>(); frame.transform.SetParent(Root); } else { frame = trans.GetComponent <NeatlyBehaviour>(); if (frame == null) { frame = trans.gameObject.AddComponent <NeatlyBehaviour>(); } } NeatlyTimer.AddFrame(frame, action); return(frame.gameObject); }
public void Dispose() { NeatlyTimer.Remove(this); MainBattleManager.Instance.RecycleSoldierObject(mData.type, this); }
public void Init(MeshSequence[] seqArray) { meshSeqArray = seqArray; Play(AnimatorSeqDef.Attack1); NeatlyTimer.AddClock(this, this.OnClock, meshSeq.frameTime); }
public static void Remove(object timeObj) { NeatlyTimer.Remove(timeObj as GameObject); }
protected void Start() { NeatlyTimer.AddFrame(this, FrameUpdate); }