Пример #1
0
 /**点击玩家 弹出加好友,组队功能界面*/
 void OnCheckPlayerInfo(int actorid)
 {
     try
     {
         SharedGameObjectInfo share_info = ArkCrossEngine.LogicSystem.GetSharedGameObjectInfo(actorid);
         GfxUserInfo          userInfo;
         bool sign = true;
         for (int i = 0; i < DFMUiRoot.GfxUserInfoListForUI.Count; i++)
         {
             if (DFMUiRoot.GfxUserInfoListForUI[i].m_ActorId == actorid)
             {
                 sign     = false;
                 userInfo = DFMUiRoot.GfxUserInfoListForUI[i];
                 UnityEngine.GameObject go = UIManager.Instance.GetWindowGoByName("DynamicFriend");
                 if (null != go)
                 {
                     go.GetComponent <DynamicFriend>().InitPanel(userInfo, new UnityEngine.Vector3());
                 }
                 LogicSystem.PublishLogicEvent("ge_request_player_info", "lobby", userInfo.m_Nick);
                 break;
             }
         }
         if (sign)
         {
             GfxSystem.PublishGfxEvent("ge_screen_tip", "ui", ArkCrossEngine.StrDictionaryProvider.Instance.GetDictString(557), UIScreenTipPosEnum.AlignCenter, UnityEngine.Vector3.zero);
         }
     }
     catch (Exception ex)
     {
         ArkCrossEngine.LogicSystem.LogFromGfx("[Error]:Exception:{0}\n{1}", ex.Message, ex.StackTrace);
     }
 }
Пример #2
0
    private IEnumerator EndGame()
    {
        // 关掉输入和移动
        TouchManager.TouchEnable = false;
        GameObject player = GetPlayer();

        if (null != player)
        {
            SharedGameObjectInfo info = LogicSystem.GetSharedGameObjectInfo(gameObject);
            if (null != info)
            {
                LogicSystem.PublishLogicEvent("ge_set_ai_enable", "ai", info.m_LogicObjectId, false);
            }
        }
        // 慢放 3s
        Time.timeScale = 0.1f;
        yield return(new WaitForSeconds(0.3f));

        Time.timeScale = 1.0f;
        // stage clear
        OnStageClear();
        player = GetPlayer();
        if (null != player)
        {
            BaseSkillManager bsm = player.GetComponent <BaseSkillManager>();
            if (null != bsm)
            {
                if (!bsm.IsUsingSkill())
                {
                }
                else
                {
                    SkillControllerInterface sc = bsm.GetSkillController();
                    if (null != sc)
                    {
                        sc.ForceStopCurSkill();
                    }
                }
            }
        }
        yield return(new WaitForSeconds(0.9f));

        // 耍帅动作
        GameObject gfxGameRoot   = GameObject.Find("GfxGameRoot");
        MainCamera cameraControl = gfxGameRoot.GetComponent <MainCamera>();

        cameraControl.m_Distance = 10.0f;
        cameraControl.m_Height   = 7.0f;
        player = GetPlayer();
        if (null != player)
        {
            player.GetComponent <Animation>().PlayQueued("jianshi_shenguizhan_01", QueueMode.PlayNow);
        }
        yield return(new WaitForSeconds(1.2f));

        cameraControl.m_Distance = 12.5f;
        cameraControl.m_Height   = 7.9f;
        TouchManager.TouchEnable = true;
        OnShieldSword();
    }
Пример #3
0
 private void SendStart(int action)
 {
     if (action == 1)
     {
         LogicSystem.PublishLogicEvent("ge_start_mpve", "lobby", sceneId /*(int)MatchSceneEnum.Gold*/);
     }
 }
Пример #4
0
    public void ExchangeSlot(UISkillSlot draged, UISkillSlot surface)
    {
        //NGUIDebug.Log(surface.name);
        if (draged == null || surface == null)
        {
            return;
        }
        UISkillSlot skillSlot = null;

        foreach (UISkillSlot slot in skillStorageArr)
        {
            if (slot != null && slot.SkillId == draged.SkillId)
            {
                skillSlot = slot;
                break;
            }
        }
        if (null == skillSlot)
        {
            return;
        }
        //被拖拽的技能之前没有被装备上
        if (skillSlot.EquipedPos != null && skillSlot.EquipedPos.Presets[UISkillSetting.presetIndex] == SlotPosition.SP_None)
        {
            //todo:发送消息通知装载操作
            LogicSystem.PublishLogicEvent("ge_mount_skill", "lobby", UISkillSetting.presetIndex, skillSlot.SkillId,
                                          surface.slotIndex);
        }
        else
        {
            LogicSystem.PublishLogicEvent("ge_swap_skill", "lobby", UISkillSetting.presetIndex, skillSlot.SkillId,
                                          (SlotPosition)skillSlot.EquipedPos.Presets[UISkillSetting.presetIndex], surface.slotIndex);
        }
    }
Пример #5
0
    //点击操作装备技能
    public void SendMsg(int targetId, SlotPosition targetPos)
    {
        if (uiSkillInfo == null)
        {
            return;
        }
        //uiSkillInfo.SkillId为SourceId,==-1则返回
        if (uiSkillInfo.SkillId == -1)
        {
            return;
        }
        int         sourceId      = uiSkillInfo.SkillId;
        UISkillSlot sourceSlot    = uiSkillStorage.GetSlot(sourceId);
        int         currentPreset = UISkillSetting.presetIndex;

        if (sourceSlot != null)
        {
            if (sourceSlot.EquipedPos != null && sourceSlot.EquipedPos.Presets[currentPreset] == SlotPosition.SP_None)
            {
                LogicSystem.PublishLogicEvent("ge_mount_skill", "lobby", currentPreset, sourceId, targetPos);
            }
            else
            {
                LogicSystem.PublishLogicEvent("ge_swap_skill", "lobby", currentPreset, sourceId, sourceSlot.EquipedPos.Presets[UISkillSetting.presetIndex], targetPos);
            }
        }
    }
Пример #6
0
    void Start()
    {
        try
        {
            // if get notice content successfully, show notice window
            OpenNotice();

            // register events
            object obj = LogicSystem.EventChannelForGfx.Subscribe <int>("ge_set_current_server", "ui", SetCurrentServer);
            if (obj != null)
            {
                m_EventList.Add(obj);
            }
            obj = LogicSystem.EventChannelForGfx.Subscribe <int, string>("ge_login_result", "lobby", OnLoginResult);
            if (obj != null)
            {
                m_EventList.Add(obj);
            }
            obj = LogicSystem.EventChannelForGfx.Subscribe <bool>("ge_rolelist_result", "lobby", OnRoleListResult);
            if (obj != null)
            {
                m_EventList.Add(obj);
            }
            obj = LogicSystem.EventChannelForGfx.Subscribe("ge_ui_unsubscribe", "ui", UnSubscribe);
            if (obj != null)
            {
                m_EventList.Add(obj);
            }

            // try get server last login, or read from server table
            m_ServerId = PlayerPrefs.GetInt("LastLoginServerId");
            SetCurrentServer(m_ServerId);

            // try get logic server last login
            m_LogicServerId = PlayerPrefs.GetInt("LastLoginLogicServerId");
            SetCurrentLogicServer(m_LogicServerId);

            // update client version
            string version = "";

            // get device info ,including uuid, system info, etc. UNITY_EDITOR

#if UNITY_EDITOR
            string deviceUniqueIdentifier = SystemInfo.deviceUniqueIdentifier + ((uint)UnityEngine.Application.dataPath.GetHashCode()).ToString();
#elif UNITY_ANDROID || UNITY_IOS
            string deviceUniqueIdentifier = SystemInfo.deviceUniqueIdentifier;
#else
            string deviceUniqueIdentifier = System.Guid.NewGuid().ToString();
#endif

            Debug.Log("device uuid: " + deviceUniqueIdentifier);
            string system = "all";
            LogicSystem.PublishLogicEvent("ge_device_info", "lobby", deviceUniqueIdentifier, version, system);
            NormLog.Instance.UpdateDeviceidAndVersion(deviceUniqueIdentifier, version);
        }
        catch (System.Exception ex)
        {
            ArkCrossEngine.LogicSystem.LogErrorFromGfx("Exception {0}\n{1}", ex.Message, ex.StackTrace);
        }
    }
Пример #7
0
 /*同意组队*/
 void AgreeTeam(UnityEngine.GameObject go)
 {
     try
     {
         if (null != go)
         {
             RoleInfo role = LobbyClient.Instance.CurrentRole;
             if (null != role)
             {
                 if (role.Group.Count < 3)
                 {
                     ulong guid = confirmDic[go].Guid;
                     LogicSystem.PublishLogicEvent("ge_confirm_join_group", "lobby", role.Nickname, guid);
                     //confirmDic.Remove(go);
                     //NGUITools.DestroyImmediate(go);
                     //RefreshGrid();
                 }
                 else
                 {
                     SendScreeTipCenter(567);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         ArkCrossEngine.LogicSystem.LogFromGfx("[Error]:Exception:{0}\n{1}", ex.Message, ex.StackTrace);
     }
 }
Пример #8
0
    void OnTriggerEnter(Collider other)
    {
        //玩家进入该区域触发
        if (other.tag != "Player")
        {
            return;
        }
        if (NextSceneId <= 0)
        {
            return;
        }
        GameObject uiRoot = GameObject.FindGameObjectWithTag("UI");

        if (uiRoot != null)
        {
            uiRoot.BroadcastMessage("OnStopBtnClicked");
        }
        ///
        JoyStickInputProvider.JoyStickEnable = false;
        GestureArgs e = new GestureArgs();

        e.name           = "OnSingleTap";
        e.airWelGamePosX = 0f;
        e.airWelGamePosY = 0f;
        e.airWelGamePosZ = 0f;
        e.selectedObjID  = -1;
        LogicSystem.FireGestureEvent(e);

        //通知逻辑层切换场景
        Debug.LogError("Change to Scene : " + NextSceneId);
        LogicSystem.PublishLogicEvent("ge_change_scene", "game", NextSceneId);
    }
Пример #9
0
 private void AutoUnlockSkill(SkillInfo info)
 {
     if (null != info & info.SkillLevel <= 0)
     {
         LogicSystem.PublishLogicEvent("ge_unlock_skill", "lobby", UISkillSetting.presetIndex, info.SkillId);
     }
 }
Пример #10
0
 /*离开队伍*/
 void LeaveTeam(UnityEngine.GameObject go)
 {
     try
     {
         if (null != go)
         {
             RoleInfo role = LobbyClient.Instance.CurrentRole;
             if (null != role)
             {
                 string name = teamDic[go].Nick;
                 if (WorldSystem.Instance.WaitMatchSceneId > 0)
                 {
                     LogicSystem.PublishLogicEvent("ge_cancel_match", "lobby", (MatchSceneEnum)WorldSystem.Instance.WaitMatchSceneId);
                 }
                 LogicSystem.PublishLogicEvent("ge_quit_group", "lobby", name);
                 confirmDic.Remove(go);
                 NGUITools.DestroyImmediate(go);
                 if (role.Guid == teamDic[go].Guid)
                 {
                     role.Group.Reset();
                     ArkCrossEngine.LogicSystem.EventChannelForGfx.Publish("ge_updata_member_info", "team");
                 }
                 RefreshGrid();
             }
         }
     }
     catch (Exception ex)
     {
         ArkCrossEngine.LogicSystem.LogFromGfx("[Error]:Exception:{0}\n{1}", ex.Message, ex.StackTrace);
     }
 }
Пример #11
0
    public void OnSubmit()
    {
        string hintStr = "";

        if (m_AcivateFailureCount > c_BanCount)
        {
            //封停
            m_ActivateState = ActivateAccountState.Banned;
            string chn_des = StrDictionaryProvider.Instance.GetDictString(202);
            hintStr = chn_des;
        }
        if (m_ActivateState == ActivateAccountState.Unactivated)
        {
            if (uiInput != null)
            {
                string code = uiInput.value.Trim();
                if (code.Equals(String.Empty))
                {
                    string chn_des = StrDictionaryProvider.Instance.GetDictString(203);
                    hintStr = chn_des;
                }
                else
                {
                    LogicSystem.PublishLogicEvent("ge_activate_account", "lobby", code);
                    Invoke("OnActivateTimeout", c_TimeoutInterval);
                }
            }
        }
        if (lblHint != null)
        {
            lblHint.text = hintStr;
            NGUITools.SetActive(lblHint.gameObject, true);
        }
    }
Пример #12
0
 private void SendStart(int action)
 {
     if (action == 1)
     {
         LogicSystem.PublishLogicEvent("ge_start_mpve", "lobby", sceneId);
     }
 }
Пример #13
0
    public void ExchangeSlot(UISkillSlot draged, UISkillSlot surface)
    {
        if (draged == null || surface == null)
        {
            return;
        }
        UISkillSlot skillSlot = null;

        foreach (UISkillSlot slot in skillStorageArr)
        {
            if (slot != null && slot.SkillId == draged.SkillId)
            {
                skillSlot = slot;
                break;
            }
        }
        if (null == skillSlot)
        {
            return;
        }
        //如果surface与draged为同一个Slot,则不交换
        if (surface.SkillId == skillSlot.SkillId)
        {
            string iconName = draged.icon.spriteName;
            skillSlot.SetIcon(iconName);
            return;
        }
        if (surface.slotType == SlotType.SkillSetting)
        {
            LogicSystem.PublishLogicEvent("ge_swap_skill", "lobby", UISkillSetting.presetIndex, skillSlot.SkillId,
                                          skillSlot.slotIndex, surface.slotIndex);
        }
    }
Пример #14
0
 void OnClick()
 {
     if (m_IsPartnerFrag)
     {  //todo:为伙伴灵魂石时,点击响应还待商讨
         if (m_CanCompoundPartner)
         {
             LogicSystem.PublishLogicEvent("ge_compound_partner", "partner", m_PartnerId);
         }
         else
         {
             LogicSystem.EventChannelForGfx.Publish("ge_item_come_from", "ui", m_PartnerFragId);
         }
     }
     else
     {
         UIPartnerPanel partnerPanel = NGUITools.FindInParents <UIPartnerPanel>(gameObject);
         if (partnerPanel != null)
         {
             partnerPanel.SetPartnerInfo(m_PartnerId);
         }
         if (spSelectFlag != null)
         {
             NGUITools.SetActive(spSelectFlag.gameObject, true);
         }
     }
 }
Пример #15
0
    private IEnumerator ReturnToMainCity()
    {
        yield return(new WaitForSeconds(5f));

        //UIManager.Instance.HideWindowByName("JinBiVictoryPanel");
        LogicSystem.PublishLogicEvent("ge_quit_battle", "lobby", false);
    }
Пример #16
0
    public void OnLoginResult(int result, string accountId)
    {
        try
        {
            // mark account login
            GfxSystem.PublishGfxEvent("ge_enable_accountlogin", "ui");

            // close connection window
            LogicSystem.EventChannelForGfx.Publish("ge_ui_connect_hint", "ui", true, false);

            // vairy login result
            AccountLoginResult ret = (AccountLoginResult)result;
            if (ret == AccountLoginResult.Success)
            {
                NormLog.Instance.UpdateUserid(accountId);
            }
            else if (ret == AccountLoginResult.FirstLogin)
            {
                UIManager.Instance.HideWindowByName("LoginPrefab");
                UnityEngine.GameObject go = UIManager.Instance.GetWindowGoByName("Verification");
                if (null != go)
                {
                    go.GetComponent <UIVerification>().InitOpenType(UIVerification.OpenType.Verification);
                }
                UIManager.Instance.ShowWindowByName("Verification");
                NormLog.Instance.UpdateUserid(accountId);
            }
            // login failed, back to login scene
            else
            {
                // get description of login result
                string chn_desc = string.Empty;
                if (ret == AccountLoginResult.Banned)
                {
                    chn_desc = ArkCrossEngine.StrDictionaryProvider.Instance.GetDictString(209);
                }
                else if (ret == AccountLoginResult.AlreadyOnline)
                {
                    chn_desc = ArkCrossEngine.StrDictionaryProvider.Instance.GetDictString(210);
                }
                else
                {
                    chn_desc = ArkCrossEngine.StrDictionaryProvider.Instance.GetDictString(208);
                }
                string reloginTip = ArkCrossEngine.StrDictionaryProvider.Instance.GetDictString(211);

                // display YesOrNo dialog, call relogin if needed
                LogicSystem.EventChannelForGfx.Publish("ge_show_dialog", "ui", chn_desc, reloginTip, null, null, (MyAction <int>)OnRelogin, false);

                // close socket connection
                LogicSystem.PublishLogicEvent("ge_stop_login", "lobby");
            }
            NormLog.Instance.Record(GameEventCode.VerifyResult);
        }
        catch (Exception ex)
        {
            ArkCrossEngine.LogicSystem.LogFromGfx("[Error]:Exception:{0}\n{1}", ex.Message, ex.StackTrace);
        }
    }
Пример #17
0
 public void OnMarsLoadingFinished()
 {
     if (ArkCrossEngine.WorldSystem.Instance.IsPvapScene())
     {
         LogicSystem.PublishLogicEvent("pvp_begin_fight", "pvp");
     }
     UIManager.Instance.HideWindowByName("Marsloading");
 }
Пример #18
0
 public void ClickToMainCity()
 {
     if (canClick)
     {
         //UIManager.Instance.HideWindowByName("JinBiVictoryPanel");
         LogicSystem.PublishLogicEvent("ge_quit_battle", "lobby", true);
     }
 }
Пример #19
0
 public void OnChallengeClick()
 {
     LogicSystem.PublishLogicEvent("start_challenge", "arena", m_PlayerInfo.Guid);
     //     UIPartnerPvpRightInfo right_info = NGUITools.FindInParents<UIPartnerPvpRightInfo>(gameObject);
     //     if (right_info != null) {
     //       right_info.RefreshMatchPlayerInfo(true);
     //     }
 }
Пример #20
0
 protected void NotifyNpcDead(GameObject obj)
 {
     if (null != obj)
     {
         LogicSystem.PublishLogicEvent("ge_notify_npc_dead", "npc", GetLogicId(obj));
         //Debug.LogError("on npc dead" + GetLogicId(obj));
     }
 }
Пример #21
0
 public void StartStory()
 {
     m_BoxCollider.isTrigger = true;
     DisableParticals();
     LogicSystem.PublishLogicEvent("ge_create_npc_by_story", "npc", m_UnitIdFrom, m_UnitIdTo);
     m_AliveUnitCount = m_UnitIdTo - m_UnitIdFrom + 1;
     m_Batch         -= 1;
     Debug.Log("Start Story, there are " + m_AliveUnitCount + " to be kill.");
 }
Пример #22
0
    public void OnMonsterEnterScene()
    {
        Animator animator       = gameObject.GetComponent <Animator>();
        float    directionAngle = Quaternion.ToEulerAngles(animator.bodyRotation).y;

        Debug.LogError(this.transform.eulerAngles);
        LogicSystem.PublishLogicEvent("ge_create_npc", "npc", m_NpcId, this.transform.position.x, this.transform.position.y, this.transform.position.z, directionAngle);
        GameObject.Destroy(gameObject);
    }
Пример #23
0
 //刷新玩家
 public void RefreshMatchPlayerInfo(bool isRefresh, bool resetIndex)
 {
     if (!isRefresh)
     {
         //从副本(除战神赛)中回到主城不需要刷新拼配伙伴
         if (m_CurrentChallengeGroupIndex > 0 && m_CurrentChallengeGroupIndex <= 3)
         {
             m_CurrentChallengeGroupIndex--;
         }
     }
     if (resetIndex)
     {
         m_CurrentChallengeGroupIndex = 0;            //从服务器取的新数据
     }
     if (m_CurrentChallengeGroupIndex == 3)
     {
         //缓存数据已更新完  需要重新发送消息更新缓存数据
         LogicSystem.EventChannelForGfx.Publish("ge_ui_connect_hint", "ui", true, true);
         m_CurrentChallengeGroupIndex = 0;
         LogicSystem.PublishLogicEvent("query_match_group", "arena");
         return;
     }
     else
     {
         RoleInfo role_info = LobbyClient.Instance.CurrentRole;
         if (role_info != null && role_info.ArenaStateInfo != null)
         {
             ArenaStateInfo arena_info = role_info.ArenaStateInfo;
             if (m_CurrentChallengeGroupIndex < arena_info.MatchGroups.Count)
             {
                 //默认arena_info.MatchGroups一直顺序存放着数据且数据正确
                 MatchGroup match_group = arena_info.MatchGroups[m_CurrentChallengeGroupIndex];
                 if (match_group == null)
                 {
                     return;
                 }
                 if (arenaPlayerArr.Length == 3)
                 {
                     if (arenaPlayerArr[0] != null)
                     {
                         arenaPlayerArr[0].InitPlayerInfo(match_group.One);
                     }
                     if (arenaPlayerArr[1] != null)
                     {
                         arenaPlayerArr[1].InitPlayerInfo(match_group.Two);
                     }
                     if (arenaPlayerArr[2] != null)
                     {
                         arenaPlayerArr[2].InitPlayerInfo(match_group.Three);
                     }
                 }
             }
             m_CurrentChallengeGroupIndex++;
         }
     }
 }
Пример #24
0
    public void OnLoginButtonClick()
    {
        string password = this.transform.Find("Input/Password").GetComponent <UIInput>().value;
        string username = this.transform.Find("Input/UserName").GetComponent <UIInput>().value;
        string nodeIp   = this.transform.Find("IpAddr").GetComponent <UIInput>().value;
        int    nodePort = int.Parse(this.transform.Find("Port").GetComponent <UIInput>().value);

        LogicSystem.PublishLogicEvent("ge_login_lobby", "lobby", "http://" + nodeIp + ":" + nodePort, username, password);
        UnityEngine.Debug.LogError(string.Format("publish ge_login_lobby {0} {1} {2}", "http://" + nodeIp + ":" + nodePort, username, password));
    }
Пример #25
0
    //扫荡事件
    public void OnWipeoutBtnClick()
    {
        if (m_SubSceneType == SubSceneType.Master)
        {
        }
        RoleInfo role = LobbyClient.Instance.CurrentRole;

        if (null != role)
        {
            ItemDataInfo info = role.GetItemData(ItemConfigProvider.Instance.GetSweepStageItemId(), 0);
            if (null != info)
            {
                Data_SceneConfig sceneCfg = SceneConfigProvider.Instance.GetSceneConfigById(m_SceneId);
                if (role.CurStamina < sceneCfg.m_CostStamina)
                {
                    SendDialog(907, 4, null);
                    return;
                }
                if (info.ItemNum < 1)
                {
                    SendDialog(901, 4, null);
                    return;
                }
                if (m_SubSceneType == SubSceneType.Common)
                {
                    if (info.ItemNum >= 1)
                    {
                        LogicSystem.PublishLogicEvent("ge_sweep_stage", "lobby", m_SceneId, 1);
                        return;
                    }
                }
                else if (m_SubSceneType == SubSceneType.Master)
                {
                    if (info.ItemNum >= 1)
                    {
                        int complete_count = role.GetCompletedSceneCount(m_SceneId);
                        if (complete_count < 3)
                        {
                            LogicSystem.PublishLogicEvent("ge_sweep_stage", "lobby", m_SceneId, 1);
                            return;
                        }
                        else
                        {
                            SendDialog(902, 4, null);
                            return;
                        }
                    }
                }
            }
            else
            {
                SendDialog(901, 4, null);
            }
        }
    }
Пример #26
0
 //召唤队友
 public void OnSummonPartnerClick()
 {
     if (!m_IsStartCd)
     {
         LogicSystem.PublishLogicEvent("ge_summon_partner", "partner");
     }
     else
     {
         string CHN = StrDictionaryProvider.Instance.GetDictString(704);
         LogicSystem.EventChannelForGfx.Publish("ge_screen_tip", "ui", CHN, UIScreenTipPosEnum.AlignBottom, UnityEngine.Vector3.zero);
     }
 }
Пример #27
0
 public void ButtonForNickName()
 {
     if (m_NicknameCount < m_NicknameList.Count)
     {
         SetHeroNickName(m_NicknameList[m_NicknameCount]);
         m_NicknameCount++;
     }
     else
     {
         LogicSystem.PublishLogicEvent("ge_create_nickname", "lobby");
     }
 }
Пример #28
0
    public void OnClickMatch()
    {
        if (CheckMatchingOther())
        {//正在匹配其他
            return;
        }
        RoleInfo  role  = LobbyClient.Instance.CurrentRole;
        GroupInfo group = role.Group;

        if (isMatching == true)
        {
            if (null != group && group.Members.Count > 1)
            {
                if (group.CreatorGuid == role.Guid)
                {
                    LogicSystem.PublishLogicEvent("ge_cancel_match", "lobby", MatchSceneEnum.Attempt);
                }
                else
                {
                    SendScreeTipCenter(853);
                }
            }
            else
            {
                LogicSystem.PublishLogicEvent("ge_cancel_match", "lobby", MatchSceneEnum.Attempt);
            }
        }
        else
        {
            if (group.Count == 0)
            {//无组队
                LogicSystem.PublishLogicEvent("ge_request_match_mpve", "lobby", sceneId);
            }
            else
            {                                                                                      //有组队
                if (group.CreatorGuid == role.Guid)
                {                                                                                  //自己是队长
                    if (group.Members.Count >= GroupInfo.c_MemberNumMax)
                    {                                                                              //已满
                        ShowTip(ArkCrossEngine.StrDictionaryProvider.Instance.GetDictString(567)); //提示队伍已满
                    }
                    else
                    {
                        LogicSystem.PublishLogicEvent("ge_request_match_mpve", "lobby", sceneId);
                    }
                }
                else
                {                            //其他人队长
                    SendScreeTipCenter(853); //提示 你不是队长
                }
            }
        }
    }
Пример #29
0
 //
 void OnEnable()
 {
     try
     {
         isEnable = true;
         LogicSystem.PublishLogicEvent("ge_request_vigor", "lobby");
     }
     catch (System.Exception ex)
     {
         ArkCrossEngine.LogicSystem.LogErrorFromGfx("[Error]:Exception:{0}\n{1}", ex.Message, ex.StackTrace);
     }
 }
Пример #30
0
 public void InitPanel()
 {
     ClearItem();
     GfxSystem.EventChannelForLogic.Publish("ge_get_gowstar_list", "lobby", 0, 10);
     if (role.ArenaStateInfo.IsNeedQueryTopRank())
     {
         LogicSystem.PublishLogicEvent("query_rank_list", "arena");
     }
     else
     {
         RecordInfoHandler(role.ArenaStateInfo.RankList);
     }
 }