public void Resume() { for (int i = _buffEntityList.Count - 1; i >= 0; --i) { ActionBuff se = _buffEntityList[i]; se.Resume(); } }
public override void Reset() { for (int i = _buffEntityList.Count - 1; i >= 0; --i) { ActionBuff se = _buffEntityList[i]; se.OnEnd(); } _buffEntityList.Clear(); }
public ActionBuff CastBuff(string name) { MetaBuff buffData = BuffMgr.Instance.GetBuff(name); if (buffData == null) { buffData = new MetaBuff(); } ActionBuff buffEntity = new ActionBuff(); buffEntity.BuffData = buffData; _buffEntityList.Add(buffEntity); return(buffEntity); }
public override void Update() { for (int i = _buffEntityList.Count - 1; i >= 0; --i) { ActionBuff se = _buffEntityList[i]; se.Update(); if (se.WaitDestroy) { se.OnDestroy(); se = null; _buffEntityList.RemoveAt(i); } } }
public void AddBuffEntity(ActionBuff be) { _buffEntityList.Add(be); }
public override void playStage() { base.playStage(); if (Selection.activeGameObject == null) { return; } TreeNode node = _treeView.SelectedNode; if (node == null) { return; } NodeData data = node.Data as NodeData; if (data == null) { return; } MetaBuff buff = null; bool single = false; if (data.Type == NodeData.eType.Entity) { buff = node.ExtraData as MetaBuff; } else if (data.Type == NodeData.eType.Stage) { single = true; buff = new MetaBuff(); if (node.Text == "CastStage") { buff.CastStage = node.ExtraData as MetaStage; } else if (node.Text == "FireStage") { buff.FireStage = node.ExtraData as MetaStage; } else if (node.Text == "EndStage") { buff.EndStage = node.ExtraData as MetaStage; } } if (buff == null) { return; } ActionBuff buffEntity = new ActionBuff(); BuffMgr.Instance.AddBuffEntity(buffEntity); buffEntity.BuffData = buff; //ActorTemplate act = Selection.activeGameObject.GetComponent<ActorTemplate>(); //foreach (Actor actor in ActorMgr.Instance.Actors.Values) //{ // ActorTemplate at = actor.Template; // if (at == null) // { // continue; // } // if (act == at) // { // continue; // } // buffEntity.Targeters.Add(at.ID); //} buffEntity.Attacker = (ulong)Selection.activeGameObject.GetInstanceID(); if (single) { buffEntity.FireTime = 1.0f; buffEntity.LifeTime = 3.0f; } else { buffEntity.FireTime = 1.0f; buffEntity.LifeTime = 10.0f; } //buffEntity.ProcessInterface = ScriptMgr.Instance.GetGlobalTable("IBuff_default"); buffEntity.Start(); }