Exemple #1
0
        protected void FreshUserInfoView(YxBaseUserInfo userInfo)
        {
            PlayerInfo.Info = userInfo;
            var gdata = App.GameData;

            if (gdata == null || userInfo.Seat == gdata.SelfSeat)
            {
                return;
            }
            var parm = new Dictionary <string, object>();

            parm["userId"]  = userInfo.UserId;
            parm["gameKey"] = App.GameKey;
            Facade.Instance <TwManager>().SendAction("gamePartnerInfo", parm, obj =>
            {
                if (PlayerInfo == null)
                {
                    return;
                }
                var dict = obj as Dictionary <string, object>;
                if (dict == null)
                {
                    return;
                }
                userInfo = GetData <YxBaseUserInfo>();
                if (userInfo == null)
                {
                    return;
                }
                userInfo.Parse(dict);
                PlayerInfo.Info = userInfo;
            }, false, null, false);
        }
Exemple #2
0
        protected override void OnFreshView()
        {
            var chatMgr = Facade.GetInterimManager <YxChatManager>();

            if (chatMgr == null)
            {
                Close();
                YxDebug.LogError("YxChatManager不存在!", "ChatWindow");
                return;
            }
            var db = chatMgr.LoadChatDb();

            if (db == null)
            {
                return;
            }
            var types     = db.ChatType;
            var typeCount = types.Length;
            var index     = 0;

            if (typeCount > 1)
            {
                var self = App.GameData.GetPlayerInfo();
                if (self == null)
                {
                    Close();
                    return;
                }
                var sex = self.SexI;
                index = YxBaseUserInfo.GetSexToMW(sex);
            }
            index = Mathf.Min(typeCount, index);
            var type      = types[index];
            var itemList  = type.Chats;
            var itmeCount = itemList.Length;
            var parentTs  = PrefabItemView.transform.parent;
            var curPosY   = 0;

            for (var i = 0; i < itmeCount; i++)
            {
                var chatData = itemList[i];
                if (chatData == null)
                {
                    continue;
                }
                var itemView = Instantiate(PrefabItemView);
                itemView.name = i.ToString(CultureInfo.InvariantCulture);
                itemView.gameObject.SetActive(true);
                var ts = itemView.transform;
                ts.parent = parentTs;
                itemView.UpdateView(chatData.Content);
                ts.localPosition = new Vector3(0, curPosY, 0);
                ts.localScale    = Vector3.one;
                curPosY         -= itemView.Height + OffY;
            }
        }
Exemple #3
0
 public void SetItem(YxBaseUserInfo info)
 {
     if (info == null)
     {
         return;
     }
     Id             = info.Id;
     NickName       = info.NickM;
     NameLabel.text = NickName;
     PortraitDb.SetPortrait(info.AvatarX, HeadImage, info.SexI);
     SetSpriteName(0);
 }
Exemple #4
0
        /// <summary>
        ///  显示等待上庄的玩家信息
        /// </summary>
        public void ShowUserInfoUI()
        {
            var gdata = App.GetGameData <Bjl3DGameData>();

            if (_record == -1)
            {
                _record = gdata.B;
            }

            if (_record != gdata.B)
            {
                _isChangezhuang = true;
            }
            else
            {
                _isChangezhuang = false;
            }
            if (gdata.BankList == null || gdata.BankList.Size() == 0)
            {
                gdata.CurrentBanker.Seat     = gdata.B;
                _rankerNameText.text         = "系统庄";
                _rankerAchievementText.text  = /*_resultGold +*/ "";
                _rankerGameCurrencyText.text = "∞";
                return;
            }
            var waitForRankerListUI = App.GetGameManager <Bjl3DGameManager>().TheWaitForRankerListUI;

            foreach (ISFSObject banker in gdata.BankList)
            {
                var user = new YxBaseUserInfo();
                user.Parse(banker);
                if (banker.ContainsKey("username"))
                {
                    user.NickM = banker.GetUtfString("username");
                }

                gdata.CurrentBanker.Seat = gdata.B;
                if (user.Seat == gdata.B)
                {
                    App.GameData.GStatus         = YxEGameStatus.PlayAndConfine;
                    gdata.CurrentBanker          = user;
                    _rankerNameText.text         = user.NickM;
                    _rankerAchievementText.text  = YxUtiles.GetShowNumberToString(gdata.ResultBnakerTotal);
                    _rankerGameCurrencyText.text = YxUtiles.GetShowNumberToString(user.CoinA);
                }
                else
                {
                    waitForRankerListUI.ShowRankerListUI(user.NickM, user.CoinA);
                }
            }
        }
 public void SetData(List <object> list)
 {
     if (null != list && list.Count != 0)
     {
         for (int i = 0; i < list.Count; i++)
         {
             YxBaseUserInfo info = new YxBaseUserInfo();
             info.Parse((Dictionary <string, object>)list[i]);
             mDataList.Add(info);
         }
         Scroller.ReloadData();
     }
     Title.gameObject.SetActive(mDataList.Count == 0);
 }
Exemple #6
0
 private static bool FindRepeated(Dictionary<int, GpsMoreItemData> dict, YxBaseUserInfo p1, YxBaseUserInfo p2)
 {
     foreach (var keyValue in dict)
     {
         var data = keyValue.Value;
         var list = data.List;
         var count = list.Count; 
         for (var i= list.IndexOf(p1) + 1; i < count; i++)
         {
             var temp = list[i];
             if (p2 != temp) continue;
             return true;
         } 
     }
     return false;
 }
Exemple #7
0
 public override void SetInfo(YxBaseUserInfo brnnUser, bool isBanker = false, int rank = -1)
 {
     base.SetInfo(brnnUser, isBanker, rank);
     if (rank <= 3)
     {
         _rankMark.spriteName = string.Format("{0}{1}", _rankMarkName, rank);
         SetObjActive(_rankMark.gameObject, true);
         _rankMark.MakePixelPerfect();
         SetObjActive(_rankLabel.gameObject, false);
     }
     else
     {
         _rankLabel.text = rank.ToString();
         SetObjActive(_rankLabel.gameObject, true);
         SetObjActive(_rankMark.gameObject, false);
     }
 }
Exemple #8
0
        public virtual void SetResultItem(ISFSObject user, YxBaseUserInfo userInfo)
        {
            var gdata = App.GetGameData <TexasGameData>();

            if (gdata == null)
            {
                return;
            }
            WinGold    = user.GetInt("gold");
            PlayerName = userInfo.NickM;
            SetLordMark(gdata.IsRoomOwner);
            SetBigWinnerMark(false);
            gameObject.SetActive(true);
            var sex  = userInfo.SexI;
            var head = userInfo.AvatarX;

            PortraitDb.SetPortrait(head, HeadImage, sex);
        }
        public override void SetResultItem(Sfs2X.Entities.Data.ISFSObject user, YxBaseUserInfo userInfo)
        {
            _winGold    = user.GetInt("gold");
            _score.text = YxUtiles.ReduceNumber(_winGold);

            PlayerName = user.GetUtfString("nick");
            SetLordMark(userInfo.Id == 0);
            SetBigWinnerMark(false);
            gameObject.SetActive(true);
            PortraitDb.SetPortrait(userInfo.AvatarX, HeadImage, userInfo.SexI);      //设置头像

            if (_winTimeLabel != null)
            {
                _winTimeLabel.text = user.GetInt("win").ToString();
            }
            if (_lostTimeLabel != null)
            {
                _lostTimeLabel.text = user.GetInt("lost").ToString();
            }
        }
Exemple #10
0
        protected void MahjongFreshUserInfoView(YxBaseUserInfo userInfo)
        {
            PlayerInfo.Info = userInfo;
            var gdata = App.GameData;
            //if (gdata == null || userInfo.Seat == gdata.SelfSeat) { return; }
            var parm = new Dictionary <string, object>();

            parm["userId"]  = userInfo.UserId;
            parm["gameKey"] = App.GameKey;
            Facade.Instance <TwManager>().SendAction("gamePartnerInfo", parm, obj =>
            {
                if (PlayerInfo == null)
                {
                    return;
                }
                var dict = obj as Dictionary <string, object>;
                if (dict == null)
                {
                    return;
                }
                userInfo = GetData <YxBaseUserInfo>();
                if (userInfo == null)
                {
                    return;
                }
                //userInfo.Parse(dict);
                //PlayerInfo.Info = userInfo;

                var mahjongInfo = PlayerInfo as MahjongYxBaseDetailedPlayer;
                if (mahjongInfo != null)
                {
                    var fkNum = GetValue(dict, "item2_q");
                    var flag  = !string.IsNullOrEmpty(fkNum) && GameCenter.DataCenter.Room.RoomType == MahRoomType.FanKa;
                    FkItem.SetActive(flag);

                    mahjongInfo.SetFk(fkNum);
                    mahjongInfo.SetId(GetValue(dict, "user_id"));
                }
            }, false, null, false);
        }
Exemple #11
0
 public virtual void SetInfo(YxBaseUserInfo brnnUser, bool isBanker = false, int rank = 0)
 {
     NameLabel.text = isBanker ? "[FF0000]" + brnnUser.NickM : brnnUser.NickM;
     CoinLabel.text = (isBanker ? "[FF0000]" : "") + YxUtiles.ReduceNumber((int)brnnUser.CoinA);
 }
Exemple #12
0
 public GpsMoreItemData(YxBaseUserInfo info)
 {
     List.Add(info);
 }
Exemple #13
0
 public void SetData(YxBaseUserInfo data)
 {
     Player.Info = data;
 }
Exemple #14
0
        public void RefreshBanker(ISFSObject responseData)
        {
            var gdata = App.GetGameData <BrnnGameData>();

            foreach (GameObject i in CommonObject.CurrentBankerList)
            {
                if (i == null)
                {
                    continue;
                }
                i.SetActive(false);
                Destroy(i);
            }
            CommonObject.CurrentBankerList.Clear();
            ISFSArray banbers = responseData.GetSFSArray("bankers");
            int       b       = responseData.GetInt("banker");

            bool isHaveMe = false;

            if (banbers == null || banbers.Size() == 0)
            {
                ApplyCtrl.Instance.SetStutus(gdata.GetPlayerInfo().CoinA >= gdata.MiniApplyBanker ? 1 : 2);
                gdata.CurrentBanker.Info = new YxBaseUserInfo
                {
                    NickM = "系统庄",
                    CoinA = long.MaxValue
                };
                return;
            }

            for (int i = 0; i < banbers.Size(); i++)
            {
                var banber   = banbers.GetSFSObject(i);
                var brnnUser = new YxBaseUserInfo
                {
                    Seat  = banber.GetInt("seat"),
                    CoinA = banber.GetLong("ttgold"),
                    NickM = banber.GetUtfString("name")
                };

                //同步本地玩家数据
                var player = gdata.GetPlayerInfo(brnnUser.Seat, true);
                if (player != null)
                {
                    player.CoinA = brnnUser.CoinA;
                }

                //刷新庄家数据
                if (brnnUser.Seat == b)
                {
                    var bankerInfo = gdata.GetPlayerInfo(b, true);

                    if (bankerInfo != null)
                    {
                        bankerInfo.CoinA = brnnUser.CoinA;
                        bankerInfo.NickM = brnnUser.NickM;
                        bankerInfo.Seat  = brnnUser.Seat;

                        gdata.CurrentBanker.Info = bankerInfo;
                    }

                    GameObject temp = CloneUser(ModelList, GridBankers.gameObject);
                    temp.name = "0";
                    temp.GetComponent <UserListModel>().SetInfo(brnnUser, true, i + 1);
                    CommonObject.CurrentBankerList.Add(temp);
                }
                else
                {
                    GameObject temp = CloneUser(ModelList, GridBankers.gameObject);
                    temp.name = (9999999999 - brnnUser.CoinA).ToString(CultureInfo.InvariantCulture);
                    temp.GetComponent <UserListModel>().SetInfo(brnnUser, false, i + 1);
                    CommonObject.CurrentBankerList.Add(temp);
                }
                if (gdata.GetPlayerInfo().Seat == brnnUser.Seat)
                {
                    isHaveMe = true;
                }
            }


            if (isHaveMe)
            {
                ApplyCtrl.Instance.SetStutus(0);
            }
            else
            {
                ApplyCtrl.Instance.SetStutus(App.GameData.GetPlayerInfo().CoinA >=
                                             App.GetGameData <BrnnGameData>().MiniApplyBanker
                                                 ? 1
                                                 : 2);
            }
            GridBankers.repositionNow = true;
            GridBankers.Reposition();
            ScrollView.UpdatePosition();
        }
Exemple #15
0
        public virtual void RefreshBanker(ISFSObject responseData)
        {
            var gdata = App.GetGameData <BtwGameData>();

            while (gdata.CurrentBankerList.Count != 0)
            {
                Destroy(gdata.CurrentBankerList[0]);
                gdata.CurrentBankerList.RemoveAt(0);
            }
            gdata.CurrentBankerList.Clear();
            if (!responseData.ContainsKey("bankers"))
            {
                return;
            }
            var bankers = responseData.GetSFSArray("bankers");
            var b       = responseData.GetInt("banker");

            gdata.BankSeat = b;
            bool isHasMe            = false;
            YxBaseGameUserInfo info = null;

            for (int i = 0; i < bankers.Size(); i++)
            {
                var banker = bankers.GetSFSObject(i);
                var user   = new YxBaseUserInfo
                {
                    Seat  = banker.GetInt("seat"),
                    CoinA = banker.GetLong("ttgold"),
                    NickM = banker.GetUtfString("username")
                };
                if (user.Seat == b)
                {
                    var oldBanker  = gdata.BankerPlayer.Info;
                    var bankerInfo = gdata.GetPlayerInfo(b, true);
                    if (oldBanker == null || oldBanker.NickM != user.NickM)
                    {
                        bankerInfo.CoinA = user.CoinA;
                        bankerInfo.NickM = user.NickM;
                        bankerInfo.Seat  = user.Seat;

                        gdata.BankerPlayer.Info = bankerInfo;
                        gdata.BankerPlayer.SetBankerTime(0);
                    }
                    var userItem = CloneUser(BankerItemPrefab, GridBankersPrefab.gameObject);
                    userItem.name = "0";
                    userItem.GetComponent <UserListModel>().SetInfo(user, true, i + 1);
                    gdata.CurrentBankerList.Add(userItem);
                }
                else
                {
                    var userItem = CloneUser(BankerItemPrefab, GridBankersPrefab.gameObject);
                    userItem.name = i + "";
                    userItem.GetComponent <UserListModel>().SetInfo(user, false, i + 1);
                    gdata.CurrentBankerList.Add(userItem);
                }

                if (gdata.SelfSeat == user.Seat)
                {
                    isHasMe = true;
                }
            }

            var applyCtrl = App.GetGameManager <BtwGameManager>().ApplyCtrl;

            if (isHasMe)
            {
                applyCtrl.SetStutus(0);
            }
            else
            {
                applyCtrl.SetStutus(gdata.GetPlayerInfo().CoinA >= gdata.MiniApplyBanker ? 1 : 2);
            }
            GridBankersPrefab.Reposition();
        }
Exemple #16
0
 public virtual void SetInfo(YxBaseUserInfo user, bool isBanker, int rank = 0)
 {
     NameLabel.text = isBanker ? "[FF0000]" + user.NickM : user.NickM;
     CoinLabel.text = (isBanker ? "[FF0000]" : "") + YxUtiles.ReduceNumber(user.CoinA);
     UserId         = user.Id;
 }
Exemple #17
0
        public override void RefreshBanker(ISFSObject responseData)
        {
            var gdata = App.GetGameData <BtwGameData>();

            while (gdata.CurrentBankerList.Count != 0)
            {
                Destroy(gdata.CurrentBankerList[0]);
                gdata.CurrentBankerList.RemoveAt(0);
            }
            gdata.CurrentBankerList.Clear();
            if (GridBankersPrefab.GetChildList().Count != 0)
            {
                foreach (var child in GridBankersPrefab.GetChildList())
                {
                    child.transform.parent = transform;
                    Destroy(child.gameObject);
                }
            }
            if (!responseData.ContainsKey("bankers"))
            {
                return;
            }
            var bankers = responseData.GetSFSArray("bankers");
            var b       = responseData.GetInt("banker");

            gdata.BankSeat = b;
            bool isHasMe            = false;
            YxBaseGameUserInfo info = null;

            if (bankers == null || bankers.Size() == 0)
            {
                if (b == -1)
                {
                    info = new YxBaseGameUserInfo
                    {
                        NickM        = "系统",
                        CoinA        = 1147483647,
                        Seat         = -1,
                        TotalCount   = 0,
                        WinTotalCoin = 0
                    };
                    gdata.BankerPlayer.SetMaxCoin(1147483646);
                    gdata.BankerPlayer.Info = info;
                    gdata.BankerPlayer.HideBankerTime();
                }
                ApplyCtrl.Instance.SetStutus(gdata.GetPlayerInfo().CoinA >= gdata.MiniApplyBanker ? 1 : 2);
                return;
            }

            for (int i = 0; i < bankers.Size(); i++)
            {
                var banker = bankers.GetSFSObject(i);
                var user   = new YxBaseUserInfo
                {
                    Seat  = banker.GetInt("seat"),
                    CoinA = banker.GetLong("ttgold"),
                    NickM = banker.GetUtfString("username")
                };

                if (user.Seat == b)
                {
                    var oldBanker  = gdata.BankerPlayer.Info;
                    var bankerInfo = gdata.GetPlayerInfo(b, true);
                    if (oldBanker == null || oldBanker.NickM != user.NickM)
                    {
                        bankerInfo.CoinA = user.CoinA;
                        bankerInfo.NickM = user.NickM;
                        bankerInfo.Seat  = user.Seat;

                        gdata.BankerPlayer.Info = bankerInfo;
                        gdata.BankerPlayer.SetBankerTime(0);
                    }
                    var userItem = CloneUser(BankerItemPrefab, GridBankersPrefab.gameObject);
                    userItem.name = "0";
                    userItem.GetComponent <UserListModel>().SetInfo(user, true, i + 1);
                    gdata.CurrentBankerList.Add(userItem);
                }
                else
                {
                    var userItem = CloneUser(BankerItemPrefab, GridBankersPrefab.gameObject);
                    userItem.name = i + "";
                    userItem.GetComponent <UserListModel>().SetInfo(user, false, i + 1);
                    gdata.CurrentBankerList.Add(userItem);
                }

                if (gdata.SelfSeat == user.Seat)
                {
                    isHasMe = true;
                }
            }

            var applyCtrl = App.GetGameManager <BtwGameManager>().ApplyCtrl;

            if (isHasMe)
            {
                applyCtrl.SetStutus(0);
            }
            else
            {
                applyCtrl.SetStutus(gdata.GetPlayerInfo().CoinA >= gdata.MiniApplyBanker ? 1 : 2);
            }
            GridBankersPrefab.gameObject.SetActive(true);
            GridBankersPrefab.repositionNow = true;
            GridBankersPrefab.Reposition();
        }