public void Init(Mj mj, MaJangPlayer mjp = null) { this.mj = mj; this.mjp = mjp; if (mj != null) { mjNo = mj.type * 10 + mj.point; transform.GetChild(0).GetComponent <MeshRenderer>().material.mainTexture = BundleManager.Instance.GetSprite(mjNo.ToString(), MaJangPage.Instance.majangBundle).texture; } SetStatu(true); canSelect = true; }
public void AddResultInfo(MaJangPlayer player, net_protocol.Mj xiaoji) { var otherItem = Instantiate(otherItemPrefab, othersComtent); otherItem.xiaoji = xiaoji; otherItem.Init(player); itemList.Add(otherItem); if (player.Equals(MaJangPage.Instance.currentPlayer)) { myResultItem.Init(player); bool isWin = player.win > 0; titleWord.sprite = BundleManager.Instance.GetSprite("common/" + (isWin ? "normal_word_win" : "normal_word_lose")); TitleIcon.sprite = BundleManager.Instance.GetSprite("common/" + (isWin ? "normal_icon_win" : "normal_icon_lose")); type.sprite = player.currencyIcon.sprite; score.text = player.win.ToString(); } }
public void Inits(int jiesanId) { if (PageManager.Instance.CurrentPage is LandlordsPage) { LandkirdsHandCardModel player = LandlordsModel.Instance.RoomPlayerHands.Find(p => p.playerInfo.uid == jiesanId.ToString()); if (player != null) { desLb.text = "用户" + player.playerInfo.userNickname + "申请解散该房间"; } SetPlayerState(jiesanId, true); } else if (PageManager.Instance.CurrentPage is MaJangPage) { MaJangPlayer player = MaJangPage.Instance.GetPlayerFromSeatNo(jiesanId); if (player != null) { desLb.text = "用户" + player.nickName.text + "申请解散该房间"; } SetPlayerState(player.userId, true); } }
//public bool AddTargetType(int targetNum, MaJangRateMask mjrm, StringBuilder sb) //{ // if ((targetNum & (int)mjrm) > 0) // { // sb.Append(mjrm.ToString()); // return true; // } // return false; //} public string GetOrigin(MaJangPlayer mjPlayer, int targetTableNo) { int selfNo = mjPlayer.seatNo; switch (targetTableNo - selfNo) { case -1: case 3: return("上家"); case 0: return("本家"); case 1: case -3: return("下家"); case -2: case 2: return("对家"); } return(null); }
public void Init(MaJangPlayer player) { mPlayer = player; if (itemName) { itemName.text = player.nickName.text; } if (score) { score.text = player.win.ToString(); } #region 吃 碰 杠 List <MaJangModel[]> altList = player.lightMjList; if (altList.Count > 0) { for (int i = 0; i < altList.Count; i++) { MaJangModel[] mjModel = altList[i]; GameObject mjAlt = Instantiate(altPrefab, horizontal); mjAlt.SetActive(true); for (int j = 0; j < mjAlt.transform.childCount; j++) { if (mjModel.Length > j) { mjAlt.transform.GetChild(j).GetComponent <MaJangResultMj>().Init(mjModel[j].mjNo.ToString()); } else { mjAlt.transform.GetChild(j).gameObject.SetActive(false); } } mjAlt.transform.SetParent(horizontal); } } #endregion #region 手牌 List <MaJangModel> handList = player.handMjList; int handCount = player.win > 0 ? handList.Count - 1 : handList.Count; for (int i = 0; i < handCount; i++) { MaJangResultMj mj = Instantiate(mjPrefab, handParent); mj.gameObject.SetActive(true); mj.Init(handList[i].mjNo.ToString()); mj.transform.SetParent(handParent); } handParent.gameObject.SetActive(false); handParent.GetComponent <HorizontalLayoutGroup>().enabled = false; handParent.GetComponent <HorizontalLayoutGroup>().enabled = true; handParent.SetParent(horizontal); if (player.win > 0) { MaJangModel last = player.handMjList[handList.Count - 1]; mjPrefab.Init(last.mjNo.ToString()); mjPrefab.transform.SetParent(horizontal); } else { mjPrefab.gameObject.SetActive(false); } #endregion gameObject.SetActive(true); horizontal.GetComponent <HorizontalLayoutGroup>().enabled = false; horizontal.GetComponent <HorizontalLayoutGroup>().enabled = true; SetTimeout.add(0.1f, () => { handParent.gameObject.SetActive(false); horizontal.gameObject.SetActive(false); handParent.gameObject.SetActive(true); horizontal.gameObject.SetActive(true); }); }
public void RefreshData(MaJangPlayer mjPlayer, List <MjResultRate> mrrs = null) { return; bool hasPlayer = mjPlayer.userId != 0; gameObject.SetActive(hasPlayer); if (hasPlayer) { Init(); headIcon.sprite = mjPlayer.headIcon.sprite; typeIcon.sprite = mjPlayer.currencyIcon.sprite; nickName.text = mjPlayer.nickName.text; if (infoPanel && mrrs != null) { MjResultRate mrr1 = mrrs[0]; { //StringBuilder sb = new StringBuilder(); //char comma = ','; //if (mrr1.type == 1) // sb.Append("自摸"); //else if (mrr1.type == 2) // sb.Append("点炮"); //sb.Append("("); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.天胡, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.地胡, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.风宝, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.小鸡下蛋, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.平胡, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.大世界, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.七小对, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.清一色, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.摸宝, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.大风, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.豪, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.红中满天飞, sb)) sb.Append(comma); //if (AddTargetType(mrr1.rateMask, MaJangRateMask.直播, sb)) sb.Append(comma); //sb.Remove(sb.Length - 1, 1); //sb.Append(")"); //item.transform.Find("TypeName").GetComponent<Text>().text = sb.ToString(); //item.transform.Find("Multiple").GetComponent<Text>().text = mrr1.rate + "倍"; //item.transform.Find("Type").GetComponent<Image>().sprite = typeIcon.sprite; //item.transform.Find("Score").GetComponent<Text>().text = mrr1.win > 0 ? '+' + mrr1.win.ToString() : mrr1.win.ToString(); //item.transform.Find("Target").GetComponent<Text>().text = GetOrigin(mjPlayer, mrr1.pos); } if (mrrs.Count > 1) { //MjResultRate mrr2 = mrrs[1]; //GameObject item2 = Instantiate(item, item.transform.parent); //StringBuilder sb = new StringBuilder(); //AddTargetType(mrr2.rateMask, MaJangRateMask.小鸡下蛋, sb); //item2.transform.Find("TypeName").GetComponent<Text>().text = sb.ToString(); //item2.transform.Find("Multiple").GetComponent<Text>().text = mrr2.rate + "倍"; //item2.transform.Find("Type").GetComponent<Image>().sprite = typeIcon.sprite; //item2.transform.Find("Score").GetComponent<Text>().text = mrr2.win > 0 ? '+' + mrr2.win.ToString() : mrr2.win.ToString(); //if (MaJangPage.Instance.playerCount == 2) // mrr2.pos *= 2; //item2.transform.Find("Target").GetComponent<Text>().text = GetOrigin(mjPlayer, mrr2.pos); } } } }