Ejemplo n.º 1
0
        /// <summary>
        /// 这里单独处理view逻辑
        /// </summary>
        public void OnLookUpUpdateView()
        {
            if (!string.IsNullOrEmpty(mDataID))
            {
                m_HeadBars2D.SetBarHudState(eHeadBarHud.FightStateHud, null, mFighting);

                {
                    Hashtable tmp = Johny.HashtablePool.Claim();
                    tmp.Add("TeamType", eTeamId.Player);
                    string uid = mDataID.Split('.')[2];
                    if (AllianceUtil.GetLocalUid().ToString().Equals(uid))
                    {
                        tmp.Add("PlayerType", ePlayerType.LocalPlayer);
                    }
                    else
                    {
                        tmp.Add("PlayerType", ePlayerType.OtherPlayer);
                    }
                    tmp.Add("RedName", mIsRedName);

                    string redNameStatePath = mDataID.Replace("state", "promoid");
                    int    promoid          = 0;
                    DataLookupsCache.Instance.SearchDataByID <int>(redNameStatePath, out promoid);
                    tmp.Add("Promoid", promoid);

                    m_HeadBars2D.SetBarHudState(eHeadBarHud.PlayerHeadBarHud, tmp, true);
                }
                mDataID = null;
            }
        }
Ejemplo n.º 2
0
        private void OnAccept(InviteData invite)
        {
            if (invite.Catalog == InvitesMessage.FRIEND_OPERATE)
            {
                long agreeUid = 0;
                long.TryParse(invite.OrgnizationId.ToString(), out agreeUid);
                string agreeName = EB.Dot.String(agreeUid + ".name", invite.Infos, "");
                if (agreeUid <= 0)
                {
                    EB.Debug.LogError("friend agree uid=null");
                }
                if (string.IsNullOrEmpty(agreeName))
                {
                    EB.Debug.LogError("friend agree name=null");
                }

                long localUid = AllianceUtil.GetLocalUid();
                if (agreeUid != localUid)
                {
                    MessageTemplateManager.ShowMessage(FriendManager.CodeAcceptFriendInvite, agreeName, null);
                }

                //var friendData = MyFriends.Parse(invite.Data,invite.SenderUid);
                //MyFriends.Add(friendData);
                //GameDataSparxManager.Instance.SetDirty(MyFriendListId);
                GetInfo();
                return;
            }
        }
Ejemplo n.º 3
0
 public void Agree(int aid, string inviteId, System.Action <Hashtable> dataHandler)
 {
     EB.Sparx.Request request = endPoint.Post("/escortAndRob/agree");
     request.AddData("aid", aid);
     request.AddData("requesterId", AllianceUtil.GetLocalUid());
     request.AddData("inviteId", inviteId);
     BlockService(request, dataHandler);
 }
Ejemplo n.º 4
0
 private void OnRemoveTargetListener(RemoveData payload)
 {
     if (payload.Catalog == InvitesMessage.ESCORT_HELP)
     {
         if (payload.TargetUid != AllianceUtil.GetLocalUid().ToString())
         {
             return;
         }
         AlliancesManager.Instance.GetHelpApplyInfo(delegate(Hashtable result) {
             Hashtable list = EB.Dot.Object("escortAndRob.helpApply.list", result, null);
             if (list != null && list.Count == 0)
             {
                 HelpOtherBtn.gameObject.SetActive(false);
             }
         });
     }
 }
Ejemplo n.º 5
0
        private void OnRequest(InviteData invite)   //请求加好友
        {
            if (invite.Catalog == InvitesMessage.FRIEND_OPERATE)
            {
                var sender = MyFriends.Find(invite.SenderUid);
                if (sender != null)
                {
                    EB.Debug.LogError("already is my friend uid={0}", invite.SenderUid);
                    return;
                    //Applys.Add(sender);
                }

                if (invite.SenderUid != AllianceUtil.GetLocalUid() && Applys.Find(invite.SenderUid) == null)
                {
                    Info.ApplyCount++;
                    Messenger.Raise(Hotfix_LT.EventName.FriendApplyEvent, true);
                    //MarkDirty(ApplyListId);
                    GetApplyList();
                }
            }
        }
Ejemplo n.º 6
0
 public void OnLookupUpdate(string dataID, object value)
 {
     if (dataID != null && value != null)
     {
         string    uname = value.ToString();
         Hashtable tmp   = Johny.HashtablePool.Claim();
         tmp.Add("Name", uname);
         bool     isRedName        = false;
         string[] splitArr         = dataID.Split('.');
         string   redNameStatePath = dataID.Replace(splitArr[splitArr.Length - 1], "") + "state.R";
         DataLookupsCache.Instance.SearchDataByID <bool>(redNameStatePath, out isRedName);
         tmp.Add("RedName", isRedName);
         //if (isRedName)
         //{
         //	tmp.Add("TeamType", eTeamId.Player);
         //	tmp.Add("PlayerType", ePlayerType.EnemyPlayer);  //redName need EnemyPlayer
         //	if (m_HeadBars2D != null)
         //	{
         //		m_HeadBars2D.SetBarHudState(eHeadBarHud.PlayerHeadBarHud, tmp, true);
         //	}
         //}
         //else
         {
             tmp.Add("TeamType", eTeamId.Player);
             string uid = dataID.Split('.')[2];                      //mainlands.pl.1003180.un
             if (AllianceUtil.GetLocalUid().ToString().Equals(uid))
             {
                 tmp.Add("PlayerType", ePlayerType.LocalPlayer);
             }
             else
             {
                 tmp.Add("PlayerType", ePlayerType.OtherPlayer);
             }
             if (m_HeadBars2D != null)
             {
                 m_HeadBars2D.SetBarHudState(eHeadBarHud.PlayerHeadBarHud, tmp, true);
             }
         }
     }
 }
Ejemplo n.º 7
0
        private void OnReject(InviteData invite)
        {
            if (invite.Catalog == InvitesMessage.FRIEND_OPERATE)
            {
                long rejectUid = 0;
                long.TryParse(invite.OrgnizationId.ToString(), out rejectUid);
                string rejectName = EB.Dot.String(rejectUid + ".name", invite.Infos, "");
                if (rejectUid <= 0)
                {
                    EB.Debug.LogError("friend reject uid<=0");
                }
                if (string.IsNullOrEmpty(rejectName))
                {
                    EB.Debug.LogError("friend reject name=null");
                }

                long localUid = AllianceUtil.GetLocalUid();
                if (rejectUid != localUid)
                {
                    FriendRejectTarget target = new FriendRejectTarget();
                    target.Uid = rejectUid;
                    target.Ts  = EB.Time.Now;
                    var existTarget = Instance.Info.RejectTargets.Find(m => m.Uid == target.Uid);
                    if (existTarget != null)
                    {
                        EB.Debug.Log("modify rejectTarget");
                        existTarget.Ts = EB.Time.Now;
                    }
                    else
                    {
                        Instance.Info.RejectTargets.Add(target);
                    }
                    MessageTemplateManager.ShowMessage(FriendManager.CodeRejectFriendInvite, rejectName, null);
                }
                return;
            }
        }
Ejemplo n.º 8
0
        //点击立马交互处理函数
        private void OnImmediatelyIntactFunc(GameObject player, GameObject interactable)
        {
            //if (SceneLogicManager.isCampaign())return;
            //在这里区分 玩家之间交互, 玩家与NPC之间的交互
            if (interactable == null)//点击地面
            {
                FusionAudio.PostEvent("UI/MainView/ShowSelfSelection", true);
            }
            else if (interactable.GetComponent <PlayerController>() != null)
            {
                FusionAudio.PostEvent("UI/MainView/ShowSelfSelection", true);
                if (interactable != null)
                {
                    //目标可被点击
                    long   uid = interactable.GetComponent <PlayerController>().playerUid;
                    string playerName;

                    if (GetIsTargetInFightState(uid) || GetIsTargetInDartState(uid))
                    {
                        //目标是否处于战斗等不可交互状态
                        MessageTemplateManager.ShowMessage(902069);
                        return;
                    }
                    else if (GetIsRedName(uid.ToString(), out playerName))
                    {
                        //目标是否是可被攻击的(红名玩家)
                        if (BalanceResourceUtil.GetUserLevel() < AlliancesManager.Instance.DartConfig.AttackRedNameLevelLimit)
                        {
                            //目标当前等级过高不可被攻击
                            Hashtable h = Johny.HashtablePool.Claim();
                            h.Add("0", AlliancesManager.Instance.DartConfig.AttackRedNameLevelLimit);
                            MessageTemplateManager.ShowMessage(902096, h, null);
                        }
                        else
                        {
                            //目标可被攻击
                            int aid = 0;
                            DataLookupsCache.Instance.SearchIntByID("mainlands.pl." + uid + ".aid", out aid);
                            if (aid > 0 && AllianceUtil.GetIsInAlliance(uid))
                            {
                                //不可攻击同军团玩家
                                MessageTemplateManager.ShowMessage(902095);
                            }
                            else
                            {
                                //是否要发起攻击
                                MessageTemplateManager.ShowMessage(902058, playerName, delegate(int result)
                                {
                                    if (result == 0)
                                    {
                                        if (!LegionModel.GetInstance().isJoinedLegion)
                                        {
                                            MessageTemplateManager.ShowMessage(eMessageUIType.FloatingText, string.Format(EB.Localizer.GetString("ID_NOT_JOIN_ALLIANCE")));
                                            return;
                                        }
                                        string pn;
                                        if (GetIsRedName(AllianceUtil.GetLocalUid().ToString(), out pn))
                                        {
                                            MessageTemplateManager.ShowMessage(902103);
                                        }
                                        else
                                        {
                                            AlliancesManager.Instance.AttackRedName(uid);
                                        }
                                    }
                                });
                            }
                        }
                        return;
                    }
                    DataLookupsCache.Instance.SetCache("intact.player", uid, true);

                    if (UIStack.Instance.GetBackStackCount() > 1)
                    {
                        EB.Debug.LogWarning("Don't Open OtherPlayerInfoView");
                        EB.Debug.Log(UIStack.Instance.GetBackStackItem());
                        return;
                    }
                    EB.Debug.Log(UIStack.Instance.GetBackStackItem());
                    GlobalMenuManager.Instance.Open("OtherPlayerInfoView");

                    //if (null != PlayerIntactUI.Instance)
                    //	PlayerIntactUI.Instance.Uid = uid;
                }
            }
            else
            {
                if (IsGhost(interactable))
                {
                    FusionAudio.PostEvent("SFX_CombatView_BattleStart");
                }
            }
        }
Ejemplo n.º 9
0
        public void OnSearchBtnClick()
        {
            string str = string.Empty;

            if (string.IsNullOrEmpty(InputLabel.value))
            {
                str = EB.Localizer.GetString("ID_INPUT_EMPTY");
            }

            if (InputLabel.value.IndexOf(" ") >= 0)
            {
                str = EB.Localizer.GetString("ID_INPUT_CONTAINS_SPACE");
            }

            if (InputLabel.value.IndexOf("\n") >= 0)
            {
                str = EB.Localizer.GetString("ID_INPUT_CONTAINS_NEWLINE");
            }

            if (!string.IsNullOrEmpty(str))
            {
                MessageTemplateManager.ShowMessage(eMessageUIType.MessageDialogue_4, str);
                return;
            }

            if (InputLabel.value.IndexOf('#') == 0 && InputLabel.value.Length >= 2)
            {
                int uid;
                int.TryParse(InputLabel.value.Substring(1), out uid);
                long localUid = AllianceUtil.GetLocalUid();
                if (uid == localUid)
                {
                    MessageTemplateManager.ShowMessage(FriendManager.CodeCouldNotFindSelf);
                    return;
                }
            }
            else if (InputLabel.value == LTGameSettingController.GetPlayerName())
            {
                MessageTemplateManager.ShowMessage(FriendManager.CodeCouldNotFindSelf);
                return;
            }

            FriendManager.Instance.Search(InputLabel.value, delegate(Hashtable result) {
                if (result != null && result.Count > 0)
                {
                    object searchResult = EB.Dot.Object("friendsInfo.search", result, null);
                    if (searchResult != null)
                    {
                        List <RecommendFriendData> searchList = new List <RecommendFriendData>();
                        searchList = Hotfix_LT.EBCore.Dot.List <RecommendFriendData, long>(null, searchResult, searchList, delegate(object value, long uid)
                        {
                            RecommendFriendData friend = new RecommendFriendData();
                            friend.Uid         = EB.Dot.Long("uid", value, friend.Uid);
                            friend.Name        = EB.Dot.String("name", value, friend.Name);
                            friend.Level       = EB.Dot.Integer("level", value, friend.Level);
                            friend.Head        = EB.Dot.String("portrait", value, friend.Head);
                            friend.Skin        = EB.Dot.Integer("skin", value, friend.Skin);
                            friend.Frame       = EB.Dot.String("headFrame", value, friend.Frame);
                            friend.Fight       = EB.Dot.Integer("battleRating", value, friend.Fight);
                            friend.AlliName    = EB.Dot.String("allianceName", value, friend.AlliName);
                            friend.OfflineTime = EB.Dot.Single("offlineTime", value, friend.OfflineTime);
                            friend.IsFriend    = EB.Dot.Bool("isFriend", value, friend.IsFriend);
                            friend.Desc        = EB.Dot.String("desc", value, friend.Desc);
                            return(friend);
                        });
                        RecommendDynamicScroll.SetItemDatas(searchList.ToArray());

                        SearchTipLabel.text = SearchTipLabel.transform.GetChild(0).GetComponent <UILabel>().text = EB.Localizer.GetString("ID_codefont_in_ShowFriendSearchContent_4033");
                    }
                }
                else
                {
                    MessageTemplateManager.ShowMessage(FriendManager.CodeHasNotPlayer);
                }
            });
        }
Ejemplo n.º 10
0
 public void OnTestSendClick()
 {
     MailBoxManager.Instance.SendUserMail(AllianceUtil.GetLocalUid(), "测试邮件", "123456sssssssss");
 }