void BtnClose_OnClickEventHandler(UIButton sender) { GameObjectActionWait gad = new GameObjectActionWait(ConstantData.fPopDownAniTime); gad.m_complete = DestoryDialogCallBack; WndEffects.PlayWndAnimation(gameObject, gad, "popupEnd"); }
void AddEffect(object o) { GameObjectActionExcute gae = gameObject.GetComponent <GameObjectActionExcute>(); if (gae) { GameObjectActionWait wait = gae.GetCurrentAction() as GameObjectActionWait; if (wait != null) { int level = (int)wait.Data1; float fill = (float)wait.Data2; bool bShow = (bool)wait.Data3; NGUIUtil.UpdateExpFromValue(MyHead.SprNumPercentage, fill, 0.1f); NGUIUtil.SetLableText <string>(MyHead.LblLv, level.ToString()); if (gae.GetNextAction() == null) { MyHead.LblNumUsed.gameObject.SetActive(false); } else { MyHead.LblNumUsed.gameObject.SetActive(bShow); } } } }
/// <summary> /// 攻击范围 光效半圆环 /// </summary> /// <param name="isShow">是否显示</param> /// <param name="radius">攻击半径</param> public void ShowAttackRangeSemi(bool isShow, float radius = 1.0f) { if (isShow) { if (AttackRangeSemiCircle02 == null && AttackRangeSemiCircle01 == null) { AttackRangeSemiCircle01 = GameObjectLoader.LoadPath("effect/prefab/", "2000681_01", m_thisT); Vector3 pos = AttackRangeSemiCircle01.transform.position; AttackRangeSemiCircle01.transform.position = U3DUtil.AddX(pos, 1.5f); AttackRangeSemiCircle01.transform.Rotate(0, -180f, 0); GameObjectActionExcute gae = AttackRangeSemiCircle01.AddComponent <GameObjectActionExcute>(); GameObjectActionWait wait = new GameObjectActionWait(1 + Time.deltaTime, ShowSemiLoop); GameObjectActionDelayDestory fade = new GameObjectActionDelayDestory(1f); gae.AddAction(wait); gae.AddAction(fade); } } else { if (AttackRangeSemiCircle01) { GameObject.Destroy(AttackRangeSemiCircle01); } if (AttackRangeSemiCircle02) { GameObject.Destroy(AttackRangeSemiCircle02); } } }
private void SetOpenDoor(object o) { m_Attr.DoorState = true; GameObjectActionExcute gae = GameObjectActionExcute.CreateExcute(m_thisT.gameObject); GameObjectActionWait wait = new GameObjectActionWait(2.5f, CloseDoor); gae.AddAction(wait); }
private void UpdateHpBG() { NGUIUtil.UpdateSpriteValue(MyHead.hpBG, MyHead.hpSprite.fillAmount, 0.3f); GameObjectActionExcute gae = GameObjectActionExcute.CreateExcute(gameObject); GameObjectActionWait wait = new GameObjectActionWait(0.3f, HideHpBG); gae.AddAction(wait); }
/// <summary> /// 实现伤害数字向上漂浮消失的表现 /// </summary> public static void AddHudTextShow(GameObject go, HUDText hud, string showText, Color c, float delay = 0) { GameObjectActionExcute gae = GameObjectActionExcute.CreateExcute(go); GameObjectActionWait wait = new GameObjectActionWait(delay); wait.Data1 = hud; wait.Data2 = showText; wait.Data3 = c; wait.m_complete = ShowHudText; gae.AddAction(wait); }
/// <summary> /// 开门 /// </summary> private void OpenDoor() { if (ani != null) { ani.SetInteger("iState", 1); // SoundPlay.Play("open_door",false,false); m_open = true; GameObjectActionExcute gae = GameObjectActionExcute.CreateExcute(m_thisT.gameObject); GameObjectActionWait wait = new GameObjectActionWait(0.5f, SetOpenDoor); gae.AddAction(wait); } }
/// <summary> /// 显示toggle动画 /// </summary> /// <param name="delay">开始显示第一个toggle的延时</param> /// <param name="interval">显示下一个toggle的间隔</param> void ShowTogglesAni(float delay, float interval) { GameObjectActionExcute gae = GameObjectActionExcute.CreateExcute(gameObject); float waitInterval = delay; for (int i = 0; i < MyHead.ToggleList.Length; i++) { GameObjectActionWait wait = new GameObjectActionWait(waitInterval, WaitFinish); wait.Data1 = i; gae.AddAction(wait); waitInterval = interval; } }
public static void ExcuteWaitAction(GameObject go, float waitDuration, Complete callBack) { if (go == null) { return; } GameObjectActionWait gaw = new GameObjectActionWait(waitDuration); gaw.m_complete = callBack; GameObjectActionExcute gae = GameObjectActionExcute.CreateExcute(go); gae.AddAction(gaw); }
public void DelayCallBack(object o) { GameObjectActionExcute gae = GetComponent <GameObjectActionExcute>(); if (gae) { GameObjectActionWait wait = gae.GetCurrentAction() as GameObjectActionWait; if (wait != null) { CanvasItem selecteditem = wait.Data1 as CanvasItem; selecteditem.m_bSelect = false; } } }
//自动切换到休闲动作 IEnumerator AutoToIdle() { yield return(new WaitForEndOfFrame()); GameObjectActionExcute gae = GameObjectActionExcute.CreateExcute(MyHead.BtnClickSoldier.gameObject); gae.Stop(); float aniLength = m_role.RoleSkinCom.GetAniLength(); //NGUIUtil.DebugLog("index=" + m_iRoleAniIndex + "length=" + aniLength); GameObjectActionWait wait = new GameObjectActionWait(aniLength, PlayIdle); wait.Data1 = aniLength; gae.AddAction(wait); }
/// <summary> /// Shows the window animation when the window will distory. /// </summary> /// <param name="gameObject">Game object.</param> /// <param name="gad">Gad.</param> /// <param name="animationName">Animation name.</param> public static void PlayWndAnimation(GameObject gameObject, GameObjectActionWait gad, string animationName) { Animation ani = gameObject.GetComponent <Animation>(); if (ani) { //ani.enabled = true; ActiveAnimation.Play(ani, animationName, AnimationOrTween.Direction.Forward); } GameObjectActionExcute gae = gameObject.AddComponent <GameObjectActionExcute>(); gae.AddAction(gad); }
void BtnClose_OnClickHander(UIButton sender) { GameObject WndBack = WndEffects.FineChildGameObject(gameObject, "WndBackground"); WndEffects.PlayWndAnimation(WndBack, "wndBackOver"); GameObject Control = WndEffects.FineChildGameObject(gameObject, "Control"); if (Control == null) { DestoryDialogCallBack(null); } GameObjectActionWait gadBack = new GameObjectActionWait(ConstantData.fPopDownAniTime);; gadBack.m_complete = DestoryDialogCallBack; WndEffects.PlayWndAnimation(Control, gadBack, "popupEnd"); }
/// <summary> /// 顺序显示toggle /// </summary> private void WaitFinish(object o) { GameObject go = o as GameObject; if (go == null) { return; } GameObjectActionExcute gae = go.GetComponent <GameObjectActionExcute>(); if (gae) { GameObjectActionWait wait = gae.GetCurrentAction() as GameObjectActionWait; if (wait != null) { int index = (int)wait.Data1; NGUIUtil.SetActive(MyHead.ToggleList[index].gameObject, true); } } }
private void AddLeveAndExp(int level, float fill, bool bShowNum) { // if(m_bLongPress) // { // m_delay = 0.13f/(m_iLongPressAddNum + 1); // } // else // { // m_delay = 0.13f; // } m_delay = 0.13f / (m_iLongPressAddNum + 1); GameObjectActionExcute gae = GameObjectActionExcute.CreateExcute(gameObject); GameObjectActionWait wait = new GameObjectActionWait(m_delay); wait.Data1 = level; wait.Data2 = fill; wait.Data3 = bShowNum; wait.m_complete = AddEffect; gae.AddAction(wait); }
/// <summary> /// 攻击范围 光效完整环 /// </summary> /// <param name="isShow">是否显示</param> /// <param name="radius">攻击半径</param> public void ShowAttackRange(bool isShow, int radius = 1) { if (isShow) { if (AttackRangeInCircle01 == null && AttackRangeInCircle02 == null) { AttackRangeInCircle01 = GameObjectLoader.LoadPath("effect/prefab/", "2000661_01", m_thisT); Vector3 pos = AttackRangeInCircle01.transform.position; AttackRangeInCircle01.transform.position = U3DUtil.AddX(pos, 1.5f); pos = AttackRangeInCircle01.transform.position; AttackRangeInCircle01.transform.position = U3DUtil.AddY(pos, 1.5f); AttackRangeInCircle01.transform.Rotate(0, -180f, 0); GameObjectActionExcute gae = AttackRangeInCircle01.AddComponent <GameObjectActionExcute>(); GameObjectActionWait wait = new GameObjectActionWait(1f, ShowInLoop01); GameObjectActionDelayDestory fade = new GameObjectActionDelayDestory(1.0f); gae.AddAction(wait); gae.AddAction(fade); } if (AttackRangeOutCircle01 == null && AttackRangeOutCircle02 == null) { AttackRangeOutCircle01 = GameObjectLoader.LoadPath("effect/prefab/", "2000671_01", m_thisT); Vector3 pos = AttackRangeOutCircle01.transform.position; AttackRangeOutCircle01.transform.position = U3DUtil.AddX(pos, 1.5f); pos = AttackRangeOutCircle01.transform.position; AttackRangeOutCircle01.transform.position = U3DUtil.AddY(pos, 1.5f); AttackRangeOutCircle01.transform.Rotate(0, -180f, 0); GameObjectActionExcute gae = AttackRangeOutCircle01.AddComponent <GameObjectActionExcute>(); GameObjectActionWait wait = new GameObjectActionWait(1.0f, ShowInLoop02); GameObjectActionDelayDestory fade = new GameObjectActionDelayDestory(1.0f); gae.AddAction(wait); gae.AddAction(fade); } } else { U3DUtil.Destroy(AttackRangeInCircle01); U3DUtil.Destroy(AttackRangeInCircle02); U3DUtil.Destroy(AttackRangeOutCircle01); U3DUtil.Destroy(AttackRangeOutCircle02); } }
public static void DoCloseWndEffect(GameObject obj, Complete complete = null, string ControlStr = "Control", string wndStr = "WndBackground") { GameObject Bott = WndEffects.FineChildGameObject(obj, ControlStr); WndEffects.PlayWndAnimation(Bott, "popupEnd"); GameObjectActionWait gadBack = new GameObjectActionWait(ConstantData.fPopDownAniTime);; gadBack.m_complete = complete; GameObject WndBack = WndEffects.FineChildGameObject(obj, wndStr); if (WndBack != null) { WndEffects.PlayWndAnimation(WndBack, gadBack, "wndBackOver"); } else { WndEffects.PlayWndAnimation(Bott, gadBack, "popupEnd"); } }
public override void BeforeDead() { int loss = CmCarbon.DefenderInfo.Coin - CmCarbon.GetWinGold(); CmCarbon.SetAddWinGold(loss); CombatInfoWnd Wnd = WndManager.FindDialog <CombatInfoWnd>(); if (Wnd != null) { Wnd.SetCombatGold(loss, true); Wnd.SetCombatGold(-loss, false); } GameObjectActionExcute gae = m_thisT.gameObject.AddComponent <GameObjectActionExcute>(); for (int i = 0; i < 4; i++) { GameObjectActionWait gaw = new GameObjectActionWait(0.5f); gaw.m_complete = BombCall; gae.AddAction(gaw); } base.BeforeDead(); }
Transform SetEffect(StageClickType type, int ID) { string path = ""; if (type == StageClickType.Room) { path = "Textures/room/"; } else if (type == StageClickType.Role || type == StageClickType.Captain) { path = "Textures/role/"; } else if (type == StageClickType.Item) { path = "Textures/item/"; } GameObjectActionExcute gae = EffectM.LoadEffect("effect/prefab/", "DropReward", m_target.transform.position + m_EndPos, BattleEnvironmentM.GetLifeMBornNode(true)); if (gae != null) { gae.transform.localScale = m_StartScale; Sprite s = GameObjectLoader.LoadSprite(path, ID.ToString()); if (s != null) { foreach (SpriteRenderer r in gae.gameObject.GetComponentsInChildren <SpriteRenderer>()) { r.sprite = s; } } GameObjectActionWait gaw = new GameObjectActionWait(1.0f); gae.AddAction(gaw); GameObjectActionResourceFlyToUI gar = new GameObjectActionResourceFlyToUI(); gar.SetData(EffectCamera.camera, WndManager.GetNGUICamera(), 1, ResourceType.Box); gae.AddAction(gar); return(gae.transform); } return(null); }
static void ShowHudText(object o) { GameObject go = o as GameObject; if (go == null) { return; } GameObjectActionExcute gae = go.GetComponent <GameObjectActionExcute>(); if (gae) { GameObjectActionWait wait = gae.GetCurrentAction() as GameObjectActionWait; if (wait != null) { HUDText hud = wait.Data1 as HUDText; Color c = (Color)wait.Data3; if (hud != null) { hud.Add(wait.Data2.ToString(), c, 0f); } } } }