Beispiel #1
0
    public override void OnShow(object msg)
    {
        base.OnShow(msg);
        MSG_WarningHUDInfo info = msg as MSG_WarningHUDInfo;

        m_Text.text = TableUtil.GetLanguageString(info.languageId);
        CfgEternityProxy cfgEternityProxy = GameFacade.Instance.RetrieveProxy(ProxyName.CfgEternityProxy) as CfgEternityProxy;

        if (info.time > 0)
        {
            UIManager.Instance.StartCoroutine(Excute(info.time, () =>
            {
                UIManager.Instance.ClosePanel(UIPanel.HudWarning);
            }));
        }
    }
Beispiel #2
0
    /// <summary>
    /// 播放入侵2效果(专门给区域-精英战用的)
    /// </summary>
    private void PlayInvadedTwo(ulong aiUid)
    {
        if (aiUid <= 0)
        {
            return;
        }
        SpacecraftEntity AI = m_GameplayProxy.GetEntityById <SpacecraftEntity>((uint)aiUid);

        if (AI)
        {
            Npc npc = AI.GetNPCTemplateVO();
            if (npc.Behavior > 0)
            {
                PlotBehavior plotBehavior = m_CfgEternityProxy.PlotBehaviorsByKey((uint)npc.Behavior);
                /// 特效
                string fightBeginFx = plotBehavior.FightBeginFx;
                if (!string.IsNullOrEmpty(fightBeginFx))
                {
                    SpacecraftEntity main = m_GameplayProxy.GetEntityById <SpacecraftEntity>(m_GameplayProxy.GetMainPlayerUID());
                    m_AIActionEffect = EffectManager.GetInstance().CreateEffect(fightBeginFx, EffectManager.GetEffectGroupNameInSpace(true));
                    m_AIActionEffect.transform.SetParent(main.GetSkinRootTransform(), false);
                    m_AIActionEffect.SetCreateForMainPlayer(true);
                    /// 特效声音
                    if (plotBehavior.FightBeginFxSound > 0)
                    {
                        WwiseUtil.PlaySound((int)plotBehavior.FightBeginFxSound, false, null);
                    }
                }
                /// HUD
                if (Enum.TryParse(plotBehavior.FightBeginHud, out UIPanel panelName))
                {
                    MSG_WarningHUDInfo info = new MSG_WarningHUDInfo();
                    info.languageId = plotBehavior.FightBeginHudText;
                    info.time       = plotBehavior.FightBeginHudTime;
                    UIManager.Instance.OpenPanel(panelName, info);
                }

                CreateSoundBox(aiUid);
                if (plotBehavior.FightBeginVideo > 0)
                {
                    SendNotification((int)plotBehavior.FightBeginVideo);
                }
            }
        }
    }