Esempio n. 1
0
        public void TryActive(GameObject target)
        {
            if (target == null)
            {
                return;
            }
            if (!this.bValid)
            {
                return;
            }
            if (!string.IsNullOrEmpty(this.effect))
            {
                MinimapSys theMinimapSys = Singleton <CBattleSystem> .GetInstance().TheMinimapSys;

                if (theMinimapSys != null && theMinimapSys.CurMapType() == MinimapSys.EMapType.Mini)
                {
                    TowerHit._play_effect(this.effect, 2f, target);
                }
            }
            if (!string.IsNullOrEmpty(this.voice))
            {
                Singleton <CSoundManager> .GetInstance().PlayBattleSound2D(this.voice);
            }
            Singleton <CTimerManager> .get_instance().ResumeTimer(this.cd_timer);

            this.bValid = false;
        }
Esempio n. 2
0
        private void onDragon_Born(ActorRoot actor)
        {
            DragonIcon.DragonNode dragonNode = this.getDragonNode(actor.ObjID, actor.ActorControl.GetActorSubSoliderType());
            DebugHelper.Assert(dragonNode != null, "onDragon_Born mmDNode_ugui == null, check out...");
            if (dragonNode == null)
            {
                return;
            }
            MinimapSys theMinimapSys = Singleton <CBattleSystem> .GetInstance().TheMinimapSys;

            bool bRefreshCache = theMinimapSys.CurMapType() == MinimapSys.EMapType.Mini;

            dragonNode.SetData(actor.myTransform.position, (int)actor.ActorControl.GetActorSubSoliderType(), actor.ObjID, this.m_b5v5, true, bRefreshCache, true);
            dragonNode.ShowDead(actor.ActorControl.IsDeadState);
            byte actorSubSoliderType = actor.ActorControl.GetActorSubSoliderType();

            if (actorSubSoliderType == 8 || actorSubSoliderType == 9 || actorSubSoliderType == 13)
            {
                bool flag = theMinimapSys != null && theMinimapSys.CurMapType() == MinimapSys.EMapType.Mini;
                if (flag)
                {
                    Camera currentCamera = Singleton <Camera_UI3D> .GetInstance().GetCurrentCamera();

                    if (currentCamera != null)
                    {
                        Vector3 v = currentCamera.WorldToScreenPoint((!flag) ? dragonNode.bmDragonNode_3dui.transform.position : dragonNode.mmDragonNode_3dui.transform.position);
                        Singleton <CUIParticleSystem> .get_instance().AddParticle(DragonIcon.dragonBornEffect, 3f, v);
                    }
                }
            }
            if (actorSubSoliderType == 8)
            {
                Singleton <CSoundManager> .GetInstance().PlayBattleSound2D("Play_DaLong_VO_Refresh");
            }
            else if (actorSubSoliderType == 9)
            {
                Singleton <CSoundManager> .GetInstance().PlayBattleSound2D("Play_XiaoLong_VO_Refresh");
            }
            else
            {
                Singleton <CSoundManager> .GetInstance().PlayBattleSound2D("Play_BaoJun_VO_Anger");
            }
        }
Esempio n. 3
0
        private void onDragon_Born(ActorRoot actor)
        {
            DragonNode node = this.getDragonNode(actor.ObjID, actor.ActorControl.GetActorSubSoliderType());

            DebugHelper.Assert(node != null, "onDragon_Born node == null, check out...");
            if (node != null)
            {
                node.SetData(actor.gameObject.transform.position, actor.ActorControl.GetActorSubSoliderType(), actor.ObjID, this.m_b5v5);
                node.ShowDead(actor.ActorControl.IsDeadState);
                byte actorSubSoliderType = actor.ActorControl.GetActorSubSoliderType();
                if (((actorSubSoliderType == 8) || (actorSubSoliderType == 9)) || (actorSubSoliderType == 13))
                {
                    MinimapSys theMinimapSys = Singleton <CBattleSystem> .GetInstance().TheMinimapSys;

                    bool flag = (theMinimapSys != null) && (theMinimapSys.CurMapType() == MinimapSys.EMapType.Mini);
                    if (flag)
                    {
                        TowerHit._play_effect("Prefab_Skill_Effects/tongyong_effects/Indicator/blin_01_c.prefab", 3f, !flag ? node.node_in_bigMap : node.node_in_smallMap);
                    }
                    switch (actorSubSoliderType)
                    {
                    case 7:
                        MiniMapSysUT.SetMapElement_EventParam(node.node_in_bigMap, false, MinimapSys.ElementType.Dragon_3, actor.ObjID, 0);
                        break;

                    case 8:
                        MiniMapSysUT.SetMapElement_EventParam(node.node_in_bigMap, false, MinimapSys.ElementType.Dragon_5_big, actor.ObjID, 0);
                        break;

                    case 9:
                        MiniMapSysUT.SetMapElement_EventParam(node.node_in_bigMap, false, MinimapSys.ElementType.Dragon_5_small, actor.ObjID, 0);
                        break;
                    }
                    MiniMapSysUT.RefreshMapPointerBig(node.node_in_bigMap);
                }
                switch (actorSubSoliderType)
                {
                case 8:
                    Singleton <CSoundManager> .GetInstance().PlayBattleSound2D("Play_DaLong_VO_Refresh");

                    break;

                case 9:
                    Singleton <CSoundManager> .GetInstance().PlayBattleSound2D("Play_XiaoLong_VO_Refresh");

                    break;

                default:
                    Singleton <CSoundManager> .GetInstance().PlayBattleSound2D("Play_BaoJun_VO_Anger");

                    break;
                }
            }
        }
        public void Process_MiniMap()
        {
            MinimapSys theMinimapSys = Singleton <CBattleSystem> .GetInstance().TheMinimapSys;

            if (theMinimapSys == null)
            {
                return;
            }
            if (theMinimapSys.CurMapType() == MinimapSys.EMapType.Mini)
            {
                Singleton <CUIEventManager> .instance.DispatchUIEvent(enUIEventID.BigMap_Open_BigMap);
            }
        }
Esempio n. 5
0
        public void ExecCommand_4_SignalPanel_Sign(PoolObjHandle <ActorRoot> sender, uint senderPlayerID, uint heroID, int signalID, int worldPositionX, int worldPositionY, int worldPositionZ)
        {
            if (!this.m_useSignalButton || this.m_formScript == null)
            {
                return;
            }
            Player hostPlayer = Singleton <GamePlayerCenter> .GetInstance().GetHostPlayer();

            Player player = Singleton <GamePlayerCenter> .GetInstance().GetPlayer(senderPlayerID);

            if (hostPlayer == null || player == null)
            {
                return;
            }
            if (hostPlayer.PlayerCamp != player.PlayerCamp)
            {
                return;
            }
            bool          flag      = hostPlayer == player;
            ResSignalInfo dataByKey = GameDataMgr.signalDatabin.GetDataByKey((long)signalID);

            if (dataByKey == null)
            {
                DebugHelper.Assert(dataByKey != null, "ExecCommand signalInfo is null, check out...");
                return;
            }
            uint  cDTime         = this.GetCDTime(dataByKey);
            ulong logicFrameTick = Singleton <FrameSynchr> .GetInstance().LogicFrameTick;

            SignalPanel.CPlayerSignalCooldown cPlayerSignalCooldown = null;
            this.m_playerSignalCooldowns.TryGetValue(senderPlayerID, ref cPlayerSignalCooldown);
            if (cPlayerSignalCooldown != null)
            {
                if ((uint)(logicFrameTick - cPlayerSignalCooldown.m_lastSignalExecuteTimestamp) < cPlayerSignalCooldown.m_cooldownTime)
                {
                    return;
                }
                cPlayerSignalCooldown.m_lastSignalExecuteTimestamp = logicFrameTick;
                cPlayerSignalCooldown.m_cooldownTime = cDTime;
            }
            else
            {
                cPlayerSignalCooldown = new SignalPanel.CPlayerSignalCooldown(logicFrameTick, cDTime);
                this.m_playerSignalCooldowns.Add(senderPlayerID, cPlayerSignalCooldown);
            }
            if (flag && this.m_signalButtons != null)
            {
                for (int i = 0; i < this.m_signalButtons.Length; i++)
                {
                    if (this.m_signalButtons[i] != null)
                    {
                        this.m_signalButtons[i].StartCooldown(cDTime);
                    }
                }
            }
            Singleton <CSoundManager> .GetInstance().PlayBattleSound2D(dataByKey.szSound);

            MiniMapEffectModule miniMapEffectModule = Singleton <CBattleSystem> .instance.TheMinimapSys.miniMapEffectModule;

            if (miniMapEffectModule != null)
            {
                Vector3    vector     = new Vector3((float)worldPositionX, (float)worldPositionY, (float)worldPositionZ);
                GameObject gameObject = miniMapEffectModule.PlaySceneEffect(dataByKey.szSceneEffect, (int)dataByKey.bTime * 1000, vector);
                if (signalID == 202 && gameObject != null)
                {
                    TextMesh component = gameObject.transform.FindChild("text").GetComponent <TextMesh>();
                    if (component != null)
                    {
                        ResHeroCfgInfo dataByKey2 = GameDataMgr.heroDatabin.GetDataByKey(heroID);
                        if (dataByKey2 == null)
                        {
                            return;
                        }
                        component.text = dataByKey2.szName;
                        component.gameObject.CustomSetActive(true);
                    }
                    Transform transform = gameObject.transform.FindChild("JianTou");
                    Vector3   forward   = sender.handle.gameObject.transform.position - vector;
                    forward.Normalize();
                    transform.forward = forward;
                    if (Singleton <BattleLogic> .instance.m_LevelContext.m_isCameraFlip)
                    {
                        component.transform.rotation = Quaternion.AngleAxis(180f, Vector3.up);
                    }
                }
                if (signalID == 203 && Singleton <BattleLogic> .instance.m_LevelContext.m_isCameraFlip)
                {
                    gameObject.transform.rotation = Quaternion.AngleAxis(180f, Vector3.up);
                }
                if (!string.IsNullOrEmpty(dataByKey.szRealEffect))
                {
                    bool       bMiniMap      = false;
                    MinimapSys theMinimapSys = Singleton <CBattleSystem> .GetInstance().TheMinimapSys;

                    if (theMinimapSys != null)
                    {
                        bMiniMap = (theMinimapSys.CurMapType() == MinimapSys.EMapType.Mini);
                    }
                    Vector2 screenPos = MiniMapSysUT.CalcScreenPosInMapByWorldPos(ref vector, bMiniMap);
                    miniMapEffectModule.PlayScreenPosEffect(dataByKey.szRealEffect, (float)((int)dataByKey.bTime * 1000), screenPos);
                }
            }
        }