示例#1
0
 void OnSelectRoleFail()
 {
     if (null != LoginUILogic.Instance())
     {
         LoginUILogic.Instance().EnterServerChoose();
     }
     else
     {
         LoadingWindow.LoadScene(Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_LOGIN);
     }
 }
示例#2
0
 public void WPLogOutCallBack()
 {
     if (GameManager.gameManager.RunningScene != (int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_LOGIN)
     {
         NetManager.SendUserLogout();
     }
     else
     {
         if (LoginUILogic.Instance() != null)
         {
             LoginUILogic.Instance().EnterServerChoose();
         }
         else
         {
             LoadingWindow.LoadScene(Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_LOGIN);
         }
     }
 }
示例#3
0
    void SendChangeScene(Tab_Teleport teleport)
    {
        //向服务器发起切场景请求
        if (GameManager.gameManager.OnLineState)
        {
            //自动寻路处理
            GameManager.gameManager.AutoSearch.ProcessTelepoint(this);

            SceneData.RequestChangeScene((int)CG_REQ_CHANGE_SCENE.CHANGETYPE.TELEPORT, teleport.Id, 0, 0);
            m_bValid           = false;
            m_fLastInvaildTime = Time.time;//记录下失效时间点
        }
        else
        {
            //自动寻路处理
            GameManager.gameManager.AutoSearch.ProcessTelepoint(this);
            LoadingWindow.LoadScene((Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE)teleport.DstSceneID);
        }
    }
        public uint Execute(PacketDistributed ipacket)
        {
            GC_RET_QUIT_GAME packet = (GC_RET_QUIT_GAME )ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            //enter your logic
            WorldMapWindow.OnDisConnect();
            HuaShanPVPData.OnDisconnect();
            LoginUILogic.m_LoginSelect = 0;
            if (packet.Type == (int)GC_RET_QUIT_GAME.GameSelectType.GAMESELECTTYPE_ACCOUNT)
            {
                if (GameManager.gameManager.RunningScene != (int)(int)Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_LOGIN)
                {
                    LoginUILogic.m_LoginSelect = 1;
                    LoadingWindow.LoadScene(Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_LOGIN);
                    OnClearAccount();
                }
                else
                {
                    // 如果在登陆场景,直接返回服务器选择界面
                    if (LoginUILogic.Instance() != null)
                    {
                        LoginUILogic.Instance().EnterServerChoose();
                    }
                }
            }
            else if (packet.Type == (int)GC_RET_QUIT_GAME.GameSelectType.GAMESELECTTYPE_ROLE)
            {
                LoginUILogic.m_LoginSelect = 2;
                LoadingWindow.LoadScene(Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_LOGIN);
                OnClearRole();
            }
            else if (packet.Type == (int)GC_RET_QUIT_GAME.GameSelectType.GAMESELECTTYPE_QUIT)
            {
                Application.Quit();
            }

            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
示例#5
0
 void EnterLoginScene()
 {
     LoadingWindow.LoadScene(Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE.SCENE_LOGIN);
 }
示例#6
0
        //实际事件处理接口
        void _ProcessEvent(GameEvent _event)
        {
            //首先弹出这个Events
            m_DelayEventQueue.Remove(_event);
            switch (_event.EventID)
            {
            case Games.GlobeDefine.GameDefine_Globe.EVENT_DEFINE.EVENT_ENTERGAME:
            {
                //举个例子,之后处理函数过多的时候可以考虑封装
                int nLevel = _event.GetIntParam(0);
                LoadingWindow.LoadScene((Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE)nLevel);
            }
            break;

            case Games.GlobeDefine.GameDefine_Globe.EVENT_DEFINE.EVENT_MISSION_COLLECTITEM:
            {
                //int nMissionID = _event.GetIntParam(0);
                GameManager.gameManager.MissionManager.MissionCollectItem();
            }
            break;

            case Games.GlobeDefine.GameDefine_Globe.EVENT_DEFINE.EVENT_CHANGESCENE:
            {
                int nLevel = _event.GetIntParam(0);
                if (Singleton <ObjManager> .Instance.MainPlayer != null)
                {
                    Singleton <ObjManager> .Instance.MainPlayer.OnPlayerLeaveScene();
                }
                LoadingWindow.LoadScene((Games.GlobeDefine.GameDefine_Globe.SCENE_DEFINE)nLevel);

                //处理消息包标记位
                //NetWorkLogic.GetMe().CanProcessPacket = false;
                //Application.LoadLevel(nLevel);
            }
            break;

            case Games.GlobeDefine.GameDefine_Globe.EVENT_DEFINE.EVENT_QINGGONG:
            {
//                         if (Singleton<ObjManager>.Instance.MainPlayer != null)
//                         {
//                             Singleton<ObjManager>.Instance.MainPlayer.BeginQingGong(_event);
//                         }
                int nServerID = _event.GetIntParam(2);
                Obj obj       = Singleton <ObjManager> .Instance.FindObjInScene(nServerID);

                if (obj)
                {
                    if (obj.ObjType == Games.GlobeDefine.GameDefine_Globe.OBJ_TYPE.OBJ_OTHER_PLAYER ||
                        obj.ObjType == Games.GlobeDefine.GameDefine_Globe.OBJ_TYPE.OBJ_MAIN_PLAYER)
                    {
                        Obj_OtherPlayer OtherPlayer = obj as Obj_OtherPlayer;
                        if (OtherPlayer)
                        {
                            OtherPlayer.BeginQingGong(_event);
                        }
                    }
                }
            }
            break;

            case Games.GlobeDefine.GameDefine_Globe.EVENT_DEFINE.EVENT_COLLECTITEM_RESEED:
            {
                int nSceneID    = _event.GetIntParam(0);
                int nSceneIndex = _event.GetIntParam(1);
                int nItemIndex  = _event.GetIntParam(2);
                if (Singleton <CollectItem> .GetInstance() != null)
                {
                    Singleton <CollectItem> .GetInstance().ReSeedItems(nSceneID, nSceneIndex, nItemIndex);
                }
            }
            break;

            case GameDefine_Globe.EVENT_DEFINE.EVENT_TOUCH_UI:
            {
                RequestReviewWindow.OnTouchUI();
            }
            break;

            case GameDefine_Globe.EVENT_DEFINE.EVENT_TOUCH_OBJECT:
                RequestReviewWindow.OnTouchObject();
                break;

            case GameDefine_Globe.EVENT_DEFINE.EVENT_TOUCH_SCENE:
                RequestReviewWindow.OnTouchScene();
                break;

            case Games.GlobeDefine.GameDefine_Globe.EVENT_DEFINE.EVENT_CALL_NAVIGATOR:
                Application.OpenURL(PlatformHelper.GetAppDetailUrl());
                break;

            default:
                break;
            }
        }