Beispiel #1
0
        /// <summary>
        /// 更新主界面的角色
        /// </summary>
        /// <param name="e"></param>
        void UpdateActor(KHEvent e)
        {
            actorId = int.Parse(e.data.ToString());
            if (!RemoteModel.Instance.NinjaCollection.TryGetNinjaData(actorId, out curActorCfg, false))
            {
                Debuger.LogWarning("更换了不存在的忍者. id=" + actorId);
                return;
            }
            if (curActorObj != null)
            {
                Destroy(curActorObj);
                KHResource.unLoadRes(curActorPath, OnLoaded);

                for (int i = 0; i < actorEffectList.Count; ++i)
                {
                    KHResource.unLoadRes(string.Format("Effect/{0}", actorEffectList[i]), OnEffectLoadedCallback);
                }
            }

            if (curActorCfg == null)
            {
                Debuger.LogWarning("更换了不存在的忍者. id=" + actorId);
                return;
            }
            if (!KHVer.IsOfflineMatch)
            {
                curActorPath = UIActorPrefabPath + curActorCfg.res_id;
                KHResource.LoadRes(curActorPath, OnLoaded);
            }

            actorEffectList.Clear();
            curEffectResIndex = 0;
        }
    ///// <summary>
    ///// 需要隐藏主界面的Layer为Freewindow的界面
    ///// </summary>
    //void InitNeedHideFreeWindow()
    //{
    //    NeedHideFreeWindow.Clear();
    //    NeedHideFreeWindow.Add(UIDef.LEVEL_SELECT_DUNGEON, true);
    //    NeedHideFreeWindow.Add(UIDef.LEVEL_SELECT_DETAIL, true);
    //    NeedHideFreeWindow.Add(UIDef.ELITE_LEVEL_DETAIL_VIEW, true);
    //}

    /// <summary>
    /// 监听弹出动画结束事件
    /// </summary>
    /// <param name="e"></param>
    //void OnRecieveOpen(KHEvent e)
    //{
    //    string _name = e.data.ToString();
    //    if (!IgnoreWindow.Contains(_name))
    //    {
    //        RefreshShowState(false, _name);
    //    }
    //}

    /// <summary>
    /// 监听关闭窗口事件
    /// </summary>
    /// <param name="e"></param>
    void OnRecieveClose(KHEvent e)
    {
        isWaitingForChState = false;
        curCountDown        = REFRESH_TIME;
        if (_needHideObj == null)
        {
            return;
        }

        if (_needHideObj.activeSelf || e.data == null)
        {
            return;
        }
        string   _name = e.data.ToString();
        int      layer = KHUIManager.getInstance().GetWindowLayer(_name);
        UIWindow win   = KHUIManager.getInstance().FindWindow <UIWindow>(_name);

        if (win != null)
        {
            bool freeNeedHide = win.FreeLayerHideMainScene;
            bool fullNeedShow = win.FullLayerShowMainScene;
            if (!IgnoreLayer.Contains(layer) && ((layer == WindowLayer.FullScreenWindow && !fullNeedShow) || (layer == WindowLayer.FreeWindow && freeNeedHide)))
            {
                RefreshShowState(true, _name);
            }
        }
    }
Beispiel #3
0
        void OnEnable()
        {
            //this.RefereshMainScene();
            this.DoRefereshSceneLoad();

            RegistBuildingButtonClickEvtProc();
            SaveEntryElementOnBuild();

            //初始化人物样式
            playerEntity = RemoteModel.Instance.Player;
            playerEntity.addEventListener(PlayerEntity.MainNinjaChangeEvent, UpdateActor);
            KHEvent initEvent = new KHEvent("init");

            initEvent.data = playerEntity.MainNinja;
            UpdateActor(initEvent);

            KHUIManager.getInstance().Dispatcher.addEventListener("OnOpenWindow", OnOpenOtherWindow);
            KHUIManager.getInstance().Dispatcher.addEventListener("OnCloseWindow", OnCloseOtherWindow);

            mainModel = KHPluginManager.Instance.GetModel("MainUI") as MainUIModel;
            mainModel.Dispatcher.addEventListener(UIMainScene.EVT_REQ_SCENE_CHANGE_CHECK, OnReqSceneChangeCheckRecived);


            KHSceneSettingModel sceneSettingModel = KHPluginManager.Instance.GetModel(KHSceneSettingPlugin.pluginName) as KHSceneSettingModel;

            sceneSettingModel.Dispatcher.addEventListener(KHSceneSettingModel.SELECT_SCENE_SETTING_EVT, OnRreshSceneSetting);
            sceneSettingModel.Dispatcher.addEventListener(KHSceneSettingModel.PREVIEW_SCENE_SETTING_CANCEL_EVT, OnRreshSceneSetting);

            sceneSettingModel.Dispatcher.addEventListener(KHSceneSettingModel.PREVIEW_SCENE_SETTING_EVT, OnRreshSceneSetting);
            //显示气泡;
            ShowBubble();
        }
Beispiel #4
0
        private void OnRreshSceneSetting(KHEvent evt)
        {
            MainSceneLoader.Instance.RefreshResPath();
            forceToRefresh = true;

            this.DoRefereshSceneLoad();
            ResetActorEffects();
        }
Beispiel #5
0
 private void OnExitAnimPlayComplete(KHEvent _evt)
 {
     curEvtCount++;
     if (curEvtCount >= (_isShowScrollEx ? maxScrollExEvtCount : maxNormalEvtCount))
     {
         KHUIManager.Instance.Dispatcher.removeEventListener(LevelSelectModel.CHAPTER_ITEM_PLAY_EXIT_ANIM_COMPLETE, OnExitAnimPlayComplete);
         isExitAnimPlaying = false;
         JumpToDungeonView();
     }
 }
Beispiel #6
0
 void Start()
 {
     _exitAnimComplete = new KHEvent(LevelSelectModel.CHAPTER_ITEM_PLAY_EXIT_ANIM_COMPLETE);
     if (uiPlayAni == null)
     {
         uiPlayAni = AdapterHost.GetComponent <UIPlayAnimation>();
     }
     uiAA = uiPlayAni.GetComponent <ActiveAnimation> ();
     uiPlayAni.onFinished.Add(new EventDelegate(OnPaComplete));
     lblNeedDonwload.bitmapFont = KHUIManager.Instance.FZYHJWFont;
 }
Beispiel #7
0
 public void OnOpenOtherWindow(KHEvent e)
 {
     if (curActorSnd != null)
     {
         KHAudioManager.RemoveSound(curActorSnd);
     }
     if (this.CurActorSandAni != null)
     {
         this.CurActorSandAni.gameObject.SetActive(false);
         this.CurActorSandAni.StopPlayback();
     }
 }
Beispiel #8
0
        void OnBuildingButtonClickEvtRecived(KHEvent evt)
        {
            UIPlayerBar.BtnDestination tTargetDest = UIPlayerBar.BtnDestination.None;
            if ((evt.data as UIEntryButton) != null)
            {
                tTargetDest = ((UIEntryButton)evt.data).MyDest;
            }
            this.OnClickButton(tTargetDest);

            MessageManager.Instance.serializeToLocal(
                new MouseAction(this, RemoteModel.Instance.CurrentTime, tTargetDest),
                MessageManager.DEST_PATH_MOUSE_EVENT
                );
        }
 // 每次切换场景
 private void onSceneInit(KHEvent evt)
 {
     //UICamera.currentCamera.nearClipPlane = KHSceneUtil.CameraNear;
     //UICamera.currentCamera.farClipPlane = KHSceneUtil.CameraFar;
     this.calculatePositionLimitRect();
 }
Beispiel #10
0
 public void OnReqSceneChangeCheckRecived(KHEvent evt)
 {
     this.DoRefereshSceneLoad();
     ResetActorEffects();
 }
Beispiel #11
0
 public void OnCloseOtherWindow(KHEvent e)
 {
 }