Пример #1
0
    public void InitUser(EsObject[] esoArr)
    {
        DestroyUser();
        for (int i = 0; i < esoArr.Length; i++)
        {
            EsObject           eso   = esoArr[i];
            PlayerBettingModel model = new PlayerBettingModel();;
            model.Player = GameModelChan.GetPlayer(eso.getString("userName"));
            if (model == null)
            {
                model = new PlayerBettingModel();
                model.Player.username = eso.getString("userName");
            }
            model.CardId = eso.getInteger("cardId");
            if (winner == eso.getString("userName"))
            {
                model.IsWinner = true;
            }
            else
            {
                model.IsWinner = false;
            }
            model.ETypeLaying = (ETypeLayingBetting)eso.getInteger("gaNgoaiType");
            model.ChipBetting = eso.getLong("value");
            PlayerBettingView bettingView = PlayerBettingView.Create(model, tableUser.transform);
            listBettingPlayer.Add(bettingView);
            if (eso.getString("userName") == GameManager.Instance.mInfo.username)
            {
                bettingView.gameObject.name = "__0";
            }
        }
        tableUser.repositionNow = true;
        // tableUser.Reposition();
        SetCenterUITable(tableUser);

        GameManager.Instance.FunctionDelay(delegate() {
            foreach (PlayerBettingView pv in listBettingPlayer)
            {
                if (pv.model.IsWinner != null)
                {
                    if (pv.model.IsWinner == true)
                    {
                        pv.iconChicken.gameObject.SetActive(true);
                    }
                    else
                    {
                        pv.lbMoney.gameObject.GetComponent <UILabel>().color = new Color(1f, 155f / 255f, 0f);
                        ECardTexture texture1 = pv.gameObject.GetComponentInChildren <ECardTexture>();
                        texture1.card.SetColor(new Color(1f, 1f, 1f, 90f / 255f));
                    }
                }
            }
        }, 0.1f);
    }
Пример #2
0
    public static PlayerBettingView Create(PlayerBettingModel model, Transform parent)
    {
        GameObject obj = (GameObject)GameObject.Instantiate(Resources.Load("Prefabs/Gameplay/GaNgoai/PlayerBettingView"));

        obj.transform.parent        = parent;
        obj.transform.localPosition = Vector3.zero;
        obj.transform.localScale    = Vector3.one;
        PlayerBettingView bettings = obj.GetComponent <PlayerBettingView>();

        bettings.SetData(model);
        return(bettings);
    }
Пример #3
0
    public void InitUser(EsObject[] esoArr)
    {
        while (listBettingPlayer.Count > 0)
        {
            GameObject.Destroy(listBettingPlayer[0].gameObject);
            listBettingPlayer.RemoveAt(0);
        }
        for (int i = 0; i < esoArr.Length; i++)
        {
            EsObject           eso   = esoArr[i];
            PlayerBettingModel model = new PlayerBettingModel();

            model.Player = GameModelChan.GetPlayer(eso.getString("userName"));
            if (model.Player == null)
            {
                model.Player          = new PlayerControllerChan();
                model.Player.username = eso.getString("userName");
            }
            if (!GameModelChan.game.dicUserBetting.ContainsKey(eso.getString("userName")))
            {
                GameModelChan.game.dicUserBetting.Add(eso.getString("userName"), false);
            }
            model.CardId      = eso.getInteger("cardId");
            model.ETypeLaying = (ETypeLayingBetting)eso.getInteger("gaNgoaiType");
            model.ChipBetting = eso.getLong("value");
            PlayerBettingView bettingView = PlayerBettingView.Create(model, tableUser.transform);
            listBettingPlayer.Add(bettingView);
            if (eso.getString("userName") == GameManager.Instance.mInfo.username)
            {
                parent.model = model;
                ShowButonJoin(model);
                bettingView.gameObject.name = "__0";
            }
        }
        tableUser.repositionNow = true;
        SetCenterUITable(tableUser);
        if (Array.Find <EsObject>(esoArr, eso => eso.getString("userName") == GameManager.Instance.mInfo.username) == null)
        {
            HideBothButton();
        }
        GameManager.Instance.FunctionDelay(delegate()
        {
            foreach (PlayerBettingView view in listBettingPlayer)
            {
                if (GameModelChan.game.dicUserBetting.ContainsKey(view.model.Player.username) && GameModelChan.game.dicUserBetting[view.model.Player.username])
                {
                    view.iconChange.gameObject.SetActive(true);
                    GameModelChan.game.dicUserBetting[view.model.Player.username] = false;
                }
            }
        }, 0.01f);
    }
Пример #4
0
    public void SetData(PlayerBettingModel model)
    {
        this.model    = model;
        userName.text = model.Player.username;
        model.Player.AvatarTexture(delegate(Texture texture)
        {
            avatar.mainTexture = texture;
        });
        ShowTypeAndMoney(model.ETypeLaying != ETypeLayingBetting.None);
        string textTypeGa = "";

        if (model.ETypeLaying != ETypeLayingBetting.None)
        {
            switch (model.ETypeLaying)
            {
            case ETypeLayingBetting.Rong:
                textTypeGa = "Rộng";
                break;

            case ETypeLayingBetting.Hep:
                textTypeGa = "Hẹp";
                break;

            case ETypeLayingBetting.RongHep:
                textTypeGa = "Rộng | Hẹp";
                break;
            }
            lbTypeLaying.text = textTypeGa;
            lbMoney.text      = Utility.Convert.Chip(model.ChipBetting);

            ECardTexture texture = gameObject.GetComponentInChildren <ECardTexture>();
            if (texture != null)
            {
                texture.card.CardId = model.CardId;
            }
            else
            {
                Transform cardManager = gameObject.transform.FindChild("CardManager");
                ChanCard  card        = new ChanCard();
                card.CardId = model.CardId;
                card.parent = cardManager;
                card.Instantiate();
                card.cardTexture.texture.width  = CARD_WIDTH;
                card.cardTexture.texture.height = CARD_HIGHT;
                GameObject.Destroy(card.gameObject.GetComponent <BoxCollider>());
            }
        }
    }
Пример #5
0
    private void OnClickListenerSubmit(GameObject targetObject)
    {
        ETypeLayingBetting types = ETypeLayingBetting.None;

        if (cbLarge.value && cbSmall.value)
        {
            types = ETypeLayingBetting.RongHep;
        }
        else if (cbLarge.value && !cbSmall.value)
        {
            types = ETypeLayingBetting.Rong;
        }
        else if (!cbLarge.value && cbSmall.value)
        {
            types = ETypeLayingBetting.Hep;
        }
        if (cardId == -1 || (cardId == parent.model.CardId && parent.model.ChipBetting == Convert.ToInt64(lbChipBet.text) && types == ETypeLayingBetting.None))
        {
            NotificationView.ShowMessage("Bạn chưa chọn luật hoặc quân ù hoặc chưa đổi mức tiền", 3f);
            return;
        }
        PlayerBettingModel model = new PlayerBettingModel();

        model.CardId      = cardId;
        model.ETypeLaying = types;
        model.ChipBetting = Convert.ToInt64(lbChipBet.text);
        if (esObj != null && esObj.variableExists("textNotification"))
        {
            NotificationView.ShowConfirm("Chú ý", esObj.getString("textNotification"), delegate()
            {
                GameManager.Server.DoRequestPluginGame(Utility.SetEsObject(Fields.GAMEPLAY.PLAY, new object[] { Fields.ACTION, Fields.REQUEST.GA_NGOAI, "gaNgoaiType", (int)model.ETypeLaying, "value", model.ChipBetting, "cardId", model.CardId }));
            }, delegate()
            {
            }, "Tiếp tục", "Hủy bỏ");
        }
        else
        {
            GameManager.Server.DoRequestPluginGame(Utility.SetEsObject(Fields.GAMEPLAY.PLAY, new object[] { Fields.ACTION, Fields.REQUEST.GA_NGOAI, "gaNgoaiType", (int)model.ETypeLaying, "value", model.ChipBetting, "cardId", model.CardId }));
        }
    }
Пример #6
0
 internal void ShowButonJoin(PlayerBettingModel model)
 {
     if (GameModelChan.CurrentState >= GameModelChan.EGameState.playing)
     {
         if (GameModelChan.CurrentState == GameModelChan.EGameState.playerFullLaying)
         {
             HideBothButton();
         }
         else
         if (model.ETypeLaying != ETypeLayingBetting.None)
         {
             HideJoin();
         }
         else
         {
             HideChange();
         }
     }
     else
     {
         HideBothButton();
     }
 }