Exemplo n.º 1
0
        public override void SetItemData(YxBaseGameUserInfo userInfo)
        {
            base.SetItemData(userInfo);
            int seat = userInfo.Seat;

            HeadImage.SetTexture(App.GameData.GetPlayer <PlayerPanel>(seat, true).HeadPortrait.GetTexture());
        }
Exemplo n.º 2
0
        public void OpenPanel(YxBaseGameUserInfo selfInfo = null)
        {
            Bg.SetActive(true);
            if (selfInfo == null)
            {
                return;
            }
            selfInfo.State = false;

            int ante = App.GetGameData <TexasGameData>().Ante;

            //MinGold = selfInfo.RoomGold >= App.GetGameData<GlobalData>().Ante * 10 ? App.GetGameData<GlobalData>().Ante * 10 : selfInfo.RoomGold;
            MinGold = selfInfo.RoomCoin >= ante * 10 ? 0 : ante * 10 - selfInfo.RoomCoin;
            MinGold = MinGold > selfInfo.CoinA ? selfInfo.CoinA : MinGold;

            MaxGold = (selfInfo.CoinA + selfInfo.RoomCoin) > ante * 100 ? ante * 100 : selfInfo.CoinA + selfInfo.RoomCoin; //App.GetGameData<GlobalData>().Ante * 100 ? App.GetGameData<GlobalData>().Ante * 100 : selfInfo.Gold;
            MaxGold = selfInfo.RoomCoin >= ante * 100
                ? 0
                : MaxGold - selfInfo.RoomCoin; //App.GetGameData<GlobalData>().Ante*100 - selfInfo.RoomGold;

            Debug.Log(" ==== Ante == " + ante + " , MinGold == " + MinGold + " , MaxGold == " + MaxGold + " ==== ");

            MinGoldLabel.text   = string.Format("最小:{0}", YxUtiles.ReduceNumber(MinGold));
            MaxGoldLabel.text   = string.Format("最大:{0}", YxUtiles.ReduceNumber(MaxGold));
            TotalGoldLabel.text = string.Format("现有金额:{0}", YxUtiles.ReduceNumber(selfInfo.CoinA));

            ChooseSlider.value = 1f;
            ChooseGold         = MaxGold;

            //显示要带入筹码金额
            ChooseGoldLabelAdp.Text(YxUtiles.ReduceNumber(ChooseGold));
        }
Exemplo n.º 3
0
        /// <summary>
        /// 设置庄家信息
        /// </summary>
        public void SetBankerInfo(ISFSObject data)
        {
            YxBaseGameUserInfo bankerInfo = null;

            if (data == null)
            {
                bankerInfo = new YxBaseGameUserInfo
                {
                    NickM        = "系统",
                    CoinA        = 1147483647,
                    Seat         = -1,
                    TotalCount   = 0,
                    WinTotalCoin = 0
                };
                Banker.SetMaxCoin(1147483646);
                Banker.Info = bankerInfo;
            }
            else
            {
                var newBanker = new YxBaseGameUserInfo();
                newBanker.Parse(data);
                newBanker.NickM = data.GetUtfString("username");
                var oldBnaker = Banker.Info;
                if (oldBnaker == null || oldBnaker.NickM != newBanker.NickM)
                {
                    YxDebug.Log("重置庄家信息!!");
                    newBanker.NickM        = data.GetUtfString("username");
                    newBanker.CoinA        = data.GetLong("ttgold");
                    newBanker.TotalCount   = 0;
                    newBanker.WinTotalCoin = 0;
                    bankerInfo             = newBanker;
                    Banker.Info            = bankerInfo;
                }
            }
        }
Exemplo n.º 4
0
        public void SetInfo(YxBaseGameUserInfo user, bool isBanker)
        {
            NameLabel.text = user.NickM;
            CoinLabel.text = YxUtiles.GetShowNumberForm(user.CoinA);

            if (isBanker)
            {
                NameLabel.color = Color.red;
                CoinLabel.color = Color.red;
                name            = "banker";
            }
            UserId = user.Id;
        }
Exemplo n.º 5
0
        public void AutoShowPanel(YxBaseGameUserInfo selfInfo = null)
        {
            if (selfInfo == null)
            {
                return;
            }
            var ante = App.GetGameData <TexasGameData>().Ante;

            MaxGold = (selfInfo.CoinA + selfInfo.RoomCoin) > ante * 100 ? ante * 100 : selfInfo.CoinA + selfInfo.RoomCoin;
            MaxGold = selfInfo.RoomCoin >= ante * 100 ? 0 : MaxGold - selfInfo.RoomCoin;

            if (MaxGold > 0)
            {
                OpenPanel(selfInfo);
            }
        }
Exemplo n.º 6
0
        public void SetNum(ISFSObject responseData)
        {
            var gdata = App.GetGameData <BtwGameData>();

            if (!responseData.ContainsKey("bankers"))
            {
                return;
            }
            var bankers             = responseData.GetSFSArray("bankers");
            var b                   = responseData.GetInt("banker");
            YxBaseGameUserInfo info = null;

            if (b == -1)
            {
                info = new YxBaseGameUserInfo
                {
                    NickM        = "系统",
                    CoinA        = 1147483647,
                    Seat         = -1,
                    TotalCount   = 0,
                    WinTotalCoin = 0
                };
                gdata.BankerPlayer.SetMaxCoin(1147483646);
                gdata.BankerPlayer.Info = info;
                _num     = 1147483646;
                Num.text = "∞";
                gdata.CurrentCanInGold = _num;
                return;
            }
            if (bankers.Size() == 0)
            {
                gdata.CurrentCanInGold = 0;
                _num     = 0;
                Num.text = "0";
            }
            else if (!gdata.BeginBet || bankers.Size() >= 1)
            {
                _num     = gdata.BankerPlayer.Coin;
                Num.text = YxUtiles.ReduceNumber(_num);
                gdata.CurrentCanInGold = _num;
            }
        }
Exemplo n.º 7
0
        void SetBankerInfo(int seat, int maxBet)
        {
            var gdata = App.GetGameData <MdxGameData>();

            if (gdata.BankSeat == seat)
            {
                return;
            }
            gdata.BankSeat = seat;
            if (seat >= 0)
            {
                var userInfo = gdata.GetPlayerInfo(seat, true);
                var banker   = gdata.CurrentBanker;
                banker.StopWaiting();
                if (userInfo == null)
                {
                    SetSystemBanker(GetRandomName());
                    return;
                }
                var bankerInfo = new YxBaseGameUserInfo
                {
                    NickM   = userInfo.NickM,
                    CoinA   = maxBet,
                    AvatarX = userInfo.AvatarX,
                    Seat    = seat
                };
                banker.Info = bankerInfo;
                banker.gameObject.SetActive(true);
                if (seat == gdata.SelfSeat)
                {
                    gdata.SetGameStatus(YxEGameStatus.PlayAndConfine);
                    gdata.GetPlayer <MdxPlayer>().Coin -= maxBet;
                }
            }
            else
            {
                SetSystemBanker("等待抢庄");
            }
        }
Exemplo n.º 8
0
        public void AutoMaxGold(YxBaseGameUserInfo selfInfo)
        {
            var gdata = App.GetGameData <TexasGameData>();
            int ante  = gdata.Ante;

            MaxGold = selfInfo.CoinA > ante * 100 ? ante * 100 : selfInfo.CoinA;
            MaxGold = selfInfo.RoomCoin >= ante * 100
                ? 0
                : MaxGold - selfInfo.RoomCoin;


            Dictionary <string, object> data = new Dictionary <string, object>()
            {
                { "gold", (int)MaxGold }
            };

            App.GetRServer <TexasGameServer>().SendRequest(GameRequestType.SetGold, data);

            if (!gdata.IsRoomGame && selfInfo.State)
            {
                //自动准备
                App.GetRServer <TexasGameServer>().SendReadyGame();
            }
        }
Exemplo n.º 9
0
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="gameInfo"></param>
        public void Init(ISFSObject gameInfo)
        {
            if (!gameInfo.ContainsKey(RequestKey.KeyUser))
            {
                return;
            }
            var userInfo = gameInfo.GetSFSObject(RequestKey.KeyUser);
            var user     = new YxBaseGameUserInfo();

            user.Parse(userInfo);

            //名字
            SetUserName(user.NickM);
            SetHead(user.AvatarX, user.SexI);
            //总金币
            var totalCoin = user.CoinA;

            App.GetGameData <FishGameData>().TotalCoin = totalCoin;
            SetUserCoin(totalCoin);
            if (!App.GetGameData <FishGameData>().NeedUpperScore)
            {
                App.GetRServer <FishGameServer>().SendBuyCoin((int)totalCoin);
            }
        }
Exemplo n.º 10
0
 public virtual void SetItemData(YxBaseGameUserInfo userInfo)
 {
     _playerName.text = userInfo.NickM;
     PlayerId         = userInfo.Id;
 }
Exemplo n.º 11
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();
        }
Exemplo n.º 12
0
        public void RefreshBankerList(ISFSObject responseData)
        {
            var gdata = App.GetGameData <BrttzGameData>();

            while (gdata.CurrentBankerList.Count != 0)
            {
                Destroy(gdata.CurrentBankerList[0]);
                gdata.CurrentBankerList.RemoveAt(0);
            }
            gdata.CurrentBankerList.Clear();
            if (!responseData.ContainsKey(Parameter.Bankers) || !responseData.ContainsKey(Parameter.Banker))
            {
                return;
            }
            var  bankers = responseData.GetSFSArray(Parameter.Bankers);
            var  b       = responseData.GetInt(Parameter.Banker);
            bool isHasMe = false;

            if (bankers == null || bankers.Size() == 0)
            {
                if (b == -1)
                {
                    var 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;
            }
            var len = bankers.Size();

            for (int i = 0; i < len; i++)
            {
                var banker = bankers.GetSFSObject(i);
                var user   = new YxBaseGameUserInfo
                {
                    Seat  = banker.GetInt(Parameter.Seat),
                    CoinA = banker.GetLong("ttgold"),
                    NickM = banker.GetUtfString(Parameter.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;
                        bankerInfo.WinTotalCoin = 0;
                        gdata.BankerPlayer.Info = bankerInfo;
                        gdata.BankerPlayer.SetBankerTime(0);
                    }
                    else
                    {
                        gdata.BankerPlayer.Coin = user.CoinA;
                    }
                    var temp = CloneUser(BankerItem, GridBankers.gameObject);
                    temp.name = "0";
                    temp.GetComponent <UserListModel>().SetInfo(user, true, i + 1);
                    gdata.CurrentBankerList.Add(temp);
                }
                else
                {
                    var bankerItem = CloneUser(BankerItem, GridBankers.gameObject);
                    bankerItem.name = i + "";
                    bankerItem.GetComponent <UserListModel>().SetInfo(user, false, i + 1);
                    gdata.CurrentBankerList.Add(bankerItem);
                }
                if (gdata.SelfSeat == user.Seat)
                {
                    isHasMe = true;
                }
            }
            var applyCtrl = App.GetGameManager <BrttzGameManager>().ApplyCtrl;

            if (isHasMe)
            {
                applyCtrl.SetStutus(0);
            }
            else
            {
                applyCtrl.SetStutus(gdata.GetPlayerInfo().CoinA >= gdata.MiniApplyBanker ? 1 : 2);
            }
            GridBankers.enabled = true;
            GridBankers.Reposition();
            if (BankLimitLabel != null)
            {
                BankLimitLabel.Text(YxUtiles.ReduceNumber(gdata.MiniApplyBanker));
            }
        }
Exemplo n.º 13
0
        /// <summary>
        /// 刷新banker数据
        /// </summary>
        /// <param name="responseData"></param>
        public override void RefreshBanker(ISFSObject responseData)
        {
            if (!responseData.ContainsKey("bankers"))
            {
                return;
            }
            Debug.Log("Get Bankers Info!!!!");
            var banbers    = responseData.GetSFSArray("bankers");
            var b          = responseData.GetInt("banker");
            var bankTotal  = responseData.ContainsKey("bankTotal") ? responseData.GetLong("bankTotal") : 0;
            var bankerLens = banbers.Count;

            BankersInfo = new YxBaseGameUserInfo[bankerLens];
            var gdata = App.GetGameData <BjlGameData>();

            gdata.BankSeat = b;
            var isHaveMe  = false;
            var selfInfo  = gdata.GetPlayerInfo();
            var curBanker = gdata.CurrentBanker;

            if (bankerLens < 1)//系统庄
            {
                SetBankerType();
                if (curBanker != null)
                {
                    curBanker.Info = null;
                }
                return;
            }

            var index      = 0;
            var bankerInfo = curBanker.GetInfo <BjlUserInfo>();

            //遍历庄家
            foreach (ISFSObject banber in banbers)
            {
                var bseat  = banber.GetInt("seat");
                var ttgold = banber.GetLong("ttgold");

                YxBaseGameUserInfo user = gdata.GetPlayerInfo(bseat, true);
                if (user == null)
                {
                    continue;
                }
                user.CoinA = ttgold;

                BankersInfo[index++] = user;

                if (user.Seat == b)
                {
                    if (bankerInfo == null || bankerInfo.Seat != b || bankerInfo.NickM != user.NickM) //换庄家以后局数重新开始计数
                    {
                        user.TotalCount = 0;
                    }
                    else
                    {
                        user.TotalCount = bankerInfo.TotalCount;
                    }
                    user.WinTotalCoin = bankTotal;

                    curBanker.UpdateView(user);
                }

                if (selfInfo.Seat == user.Seat)
                {
                    isHaveMe = true;
                }
            }
            SetBankerType(isHaveMe, b);

            RefreahAll(UserListType.Banker);
        }
Exemplo n.º 14
0
        /// <summary>
        /// 刷新banker数据
        /// </summary>
        /// <param name="responseData"></param>
        public virtual void RefreshBanker(ISFSObject responseData)
        {
            if (!responseData.ContainsKey("bankers"))
            {
                return;
            }

            var banbers    = responseData.GetSFSArray("bankers");
            var b          = responseData.GetInt("banker");
            var bankTotal  = responseData.ContainsKey("bankTotal") ? responseData.GetLong("bankTotal") : 0;
            var bankerLens = banbers.Count;

            BankersInfo = new YxBaseGameUserInfo[bankerLens];
            var gdata = App.GetGameData <BjlGameData>();

            gdata.BankSeat = b;
            var curBanker = gdata.CurrentBanker;
            var isHaveMe  = false;
            var selfInfo  = gdata.GetPlayerInfo();

            if (bankerLens < 1)//系统庄
            {
                SetBankerType();
                var sysBanker = new BjlUserInfo
                {
                    NickM        = "系统庄",
                    Seat         = -1,
                    CoinA        = long.MaxValue,
                    WinTotalCoin = bankTotal
                };
                SetBankerType();
                if (curBanker != null)
                {
                    curBanker.UpdateView(sysBanker);
                }
                if (_gridBankers != null)
                {
                    _gridBankers.gameObject.SetActive(false);
                }
                RefreahAll(UserListType.Banker);
                return;
            }

            var index = 0;

            if (curBanker == null)
            {
                return;
            }
            var bankerInfo = curBanker.GetInfo <BjlUserInfo>();

            //遍历庄家
            foreach (ISFSObject banber in banbers)
            {
                var bseat  = banber.GetInt("seat");
                var ttGold = banber.GetLong("ttgold");

                //同步本地数据
                YxBaseGameUserInfo user = gdata.GetPlayerInfo(bseat, true);
                if (user == null)
                {
                    continue;
                }

                user.CoinA = ttGold;

                BankersInfo[index++] = user;

                if (user.Seat == b)
                {
                    if (bankerInfo == null || bankerInfo.Seat != b || bankerInfo.NickM != user.NickM) //换庄家以后局数重新开始计数
                    {
                        user.TotalCount = 0;
                    }
                    else
                    {
                        user.TotalCount = bankerInfo.TotalCount;
                    }
                    user.WinTotalCoin = bankTotal;
                    curBanker.UpdateView(user);
                }

                if (selfInfo.Seat == user.Seat)
                {
                    isHaveMe = true;
                }
            }
            SetBankerType(isHaveMe, b);

            RefreahAll(UserListType.Banker);
        }
Exemplo n.º 15
0
 void GetOnePlayerInfo(UserRecord userRecord, YxBaseGameUserInfo userInfo)
 {
     userRecord.PlayerName = userInfo.NickM;
     userRecord.AvatarX    = userInfo.AvatarX;
     userRecord.SexI       = userInfo.SexI;
 }
Exemplo n.º 16
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();
        }