public void StopPlayingVoice() { MahjongCommonMethod mc = MahjongCommonMethod.Instance;//开静音 PlayerPlayingPanelData pppd = GameData.Instance.PlayerPlayingPanelData; if (VoiceFlag == 1) { int err = m_voiceengine.StopPlayFile(); if (err != 0) { ErroOccur(err, null); } } else { YunVaImSDK.instance.RecordStopPlayRequest(); } UIMainView.Instance.PlayerPlayingPanel._playingHead[pppd.GetOtherPlayerShowPos(pppd.GetOtherPlayerPos(voices[0].iUserId)) - 1].GetChild(4).GetComponent <Animator>().SetBool("isPlayOthers", false); isPlayingState = false; //关闭播放状态 // mc.isMusicShut = false; if (voices.Count > 0) { voices.RemoveAt(0); } // SystemMgr.Instance.BgmSystem.UpdateVolume(); }
/// <summary> /// 设置语音 /// </summary> void HandleSetVoice() { MahjongCommonMethod uipd = MahjongCommonMethod.Instance; if (uipd.isOpenVoicePlay) { uipd.isOpenVoicePlay = false; } else { uipd.isOpenVoicePlay = true; } }
/// <summary> /// 处理设置音效 /// </summary> void HandleSetMusicEffect() { MahjongCommonMethod uipd = MahjongCommonMethod.Instance; if (uipd.isEfectShut) { uipd.isEfectShut = false; } else { uipd.isEfectShut = true; } SystemMgr.Instance.AudioSystem.UpdateVolume(); }
/// <summary> /// 处理设置音乐 /// </summary> void HandleSetMusic() { MahjongCommonMethod com = MahjongCommonMethod.Instance; if (com.isMusicShut) { com.isMusicShut = false; // AudioListener.pause=false ; } else { com.isMusicShut = true; // AudioListener.pause = true ; } SystemMgr.Instance.BgmSystem.UpdateVolume(); }
/// <summary> /// 产生房间对应的预置体 /// </summary> /// <param name="status">1表示已创建未开始房间,2表示已开始的房间</param> /// <param name="rule">房间的规则参数</param> /// <param name="time">房间创建时间</param> void SpwanRoomMessagePanel() { int status = 0; if (roomInfo.cOpenRoomStatus < 3) { status = 1; } else { status = 2; } //已创建未开始房间 if (status == 1) { for (int i = 0; i < ShareWx.Length; i++) { ShareWx[i].SetActive(true); } //设置间距 ShareWx[2].GetComponent <GridLayoutGroup>().spacing = new Vector2(0, -20f); ShareWx[2].GetComponent <GridLayoutGroup>().transform.localPosition = new Vector3(-75f, 8f, 0); int num = 0; //在线玩家个数 for (int i = 0; i < roomInfo.iuserId.Length; i++) { if (roomInfo.iuserId[i] != 0) { Debug.LogError("num:" + num); num++; } } RoomMessage[3].text = num + "/4"; //处理房间的颜色状态 for (int i = 0; i < 4; i++) { if (i == roomInfo.byColorFlag - 1) { RoomSignColor[i].gameObject.SetActive(true); } else { RoomSignColor[i].gameObject.SetActive(false); } } } //已开始的房间 if (status == 2) { ShareWx[0].SetActive(false); ShareWx[1].SetActive(false); ShareWx[2].SetActive(true); //设置房间信息的间距位置 ShareWx[2].GetComponent <GridLayoutGroup>().spacing = new Vector2(0, 10f); ShareWx[2].GetComponent <GridLayoutGroup>().transform.localPosition = new Vector3(-75f, -32f, 0); RoomMessage[3].text = "游戏中"; } StringBuilder text = new StringBuilder(); string name = MahjongCommonMethod.Instance._dicMethodConfig[roomInfo.iPlayingMethod].METHOD_NAME; text.Append(name); MahjongCommonMethod mcm = MahjongCommonMethod.Instance; mcm.ShowParamOfOpenRoom(ref text, roomInfo.caOpenRoomParam, 1, MahjongCommonMethod.Instance.iPlayingMethod); //text.Append(mcm.ReadInt32toInt4(roomInfo.caOpenRoomParam[1], 0) * 10 + mcm.ReadInt32toInt4(roomInfo.caOpenRoomParam[0], 0)); //int rowNum = 2; //text.Append(mcm.ReadColumnValue(roomInfo.caOpenRoomParam, rowNum, 4) > 0 ? "局 " : "圈 "); #region oldCode //switch (roomInfo.iPlayingMethod) //{ // case 1: // case 2: // case 4: // case 5: // case 8: // case 9: // case 11: // case 12: // case 13: // case 14: // text.Append(roomInfo.caOpenRoomParam[0]); // text.Append("圈"); // break; // case 7: // case 10: // if(roomInfo.caOpenRoomParam[0]==1) // { // text.Append("8局"); // } // else if(roomInfo.caOpenRoomParam[0] == 2) // { // text.Append("16局"); // } // else if (roomInfo.caOpenRoomParam[0] == 3) // { // text.Append("24局"); // } // break; // case 3: // case 6: // text.Append(roomInfo.caOpenRoomParam[0] * 10); // text.Append("分"); // break; // default: // text.Append("获取数据错误"); // break; //} #endregion RoomMessage[0].text = string.Format("{0:d6}", roomInfo.roomNum); RoomMessage[1].text = text.ToString(); RoomMessage[2].text = MahjongCommonMethod.Instance.UnixTimeStampToDateTime(roomInfo.iOpenRoomTime, 0).ToString("yyyy-MM-dd HH:mm"); }
/// <summary> /// 处理点击邀请按钮 /// </summary> public void HandleBtnShareWx() { // Debug.LogError("+++RoomId :" +Convert.ToInt32( RoomMessage[0].text)); string url = SDKManager.WXInviteUrl + Convert.ToInt32(RoomMessage[0].text); // Debug.LogError("分享链接" + url); string city; try { city = MahjongLobby_AH.GameData.Instance.SelectAreaPanelData.listCityMessage[MahjongLobby_AH.GameData.Instance.PlayerNodeDef.iCityId].cityName; } catch (System.Exception) { city = "双喜"; } StringBuilder title = new StringBuilder(); // Debug.LogError("玩法Num" + MahjongCommonMethod.Instance.iPlayingMethod); MahjongCommonMethod mcm = MahjongCommonMethod.Instance; if (MahjongLobby_AH.SDKManager.Instance.CheckStatus == 1) { title.AppendFormat("代开房间:{0}麻将->{1}<-房号:{2} 点击进入房间", city, "推倒胡", Convert.ToInt32(RoomMessage[0].text).ToString("d6")); } else { title.AppendFormat("代开房间:{0}麻将->{1}<-房号:{2} 点击进入房间", city, mcm._dicMethodConfig[roomInfo.iPlayingMethod].METHOD_NAME, Convert.ToInt32(RoomMessage[0].text).ToString("d6")); } StringBuilder discription = new StringBuilder("玩法:"); mcm.ShowParamOfOpenRoom(ref discription, roomInfo.caOpenRoomParam, 0, MahjongCommonMethod.Instance.iPlayingMethod); #region 代替换 //switch (roomInfo.iPlayingMethod) //{ // case 1: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else discription.Append("明杠收三家 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("可胡七对 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("十三不靠 "); // if (roomInfo.caOpenRoomParam[4] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[4] == 1) discription.Append("四杠荒庄 "); // if (roomInfo.caOpenRoomParam[5] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[5] == 1) discription.Append("前台 "); // else discription.Append("后和 "); // if (roomInfo.caOpenRoomParam[6] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[6] == 1) discription.Append("一炮单响 "); // else discription.Append("一炮多响 "); // break; // case 2: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else discription.Append("明杠收三家 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("可胡七对 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[4] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[4] == 1) discription.Append("前台 "); // else discription.Append("后和 "); // if (roomInfo.caOpenRoomParam[5] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[5] == 1) discription.Append("一炮单响 "); // else discription.Append("一炮多响 "); // break; // case 3: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("10分 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("20分 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else discription.Append("明杠收三家 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("可胡七对 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[4] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[4] == 1) discription.Append("前台 "); // else discription.Append("后和 "); // break; // case 4: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[1] == 1) discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("可胡七对 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("前台 "); // else discription.Append("后和 "); // break; // case 5: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[1] == 1) discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("可胡七对 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("前台 "); // else discription.Append("后和 "); // break; // case 6: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("30分 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("60分 "); // else discription.Append("90分 "); // break; // case 7: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("8局 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("16局 "); // else discription.Append("24局 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[1] == 1) discription.Append("自摸翻倍 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("带字牌 "); // break; // case 8: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else discription.Append("明杠收三家 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[1] == 1) discription.Append("可胡七对 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("十三不靠 "); // if (roomInfo.caOpenRoomParam[5] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[5] == 1) discription.Append("前台 "); // else discription.Append("后和 "); // if (roomInfo.caOpenRoomParam[4] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[4] == 1) discription.Append("四杠荒庄 "); // break; // case 9: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[1] == 1) discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("可胡七对 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append("一人付 "); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("多人付 "); // break; // case 10: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("8局 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("16局 "); // else discription.Append("24局 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[1] == 1) discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("可胡七对 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append("一炮单响 "); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("一炮多响 "); // break; // case 11: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("可胡七对 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("明杠收三家 "); // if (roomInfo.caOpenRoomParam[4] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[4] == 1) discription.Append("前台 "); // else if (roomInfo.caOpenRoomParam[4] == 2) discription.Append("后和 "); // else discription.Append("前台加后和"); // if (roomInfo.caOpenRoomParam[5] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[5] == 1) discription.Append("坐庄 "); // if (roomInfo.caOpenRoomParam[6] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[6] == 1) discription.Append("能跑能下 "); // if (roomInfo.caOpenRoomParam[7] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[7] == 1) discription.Append("放几出几 "); // break; // case 12: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else discription.Append("带字牌 "); // break; // case 13: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("前台 "); // else if (roomInfo.caOpenRoomParam[2] == 2) discription.Append("后和 "); // else discription.Append("前台加后和"); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else discription.Append("翻" + roomInfo.caOpenRoomParam[3] + "倍 "); // if (roomInfo.caOpenRoomParam[4] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[4] == 1) discription.Append("可胡七对 "); // break; // case 14: // if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 2) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else discription.Append("十三幺 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("可胡七对 "); // break; // case 15: // if (roomInfo.caOpenRoomParam[0] == 0) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append("不带字牌 "); // else discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append("轮庄 "); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("连庄 "); // break; // case 16: // if (roomInfo.caOpenRoomParam[0] == 0) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("2圈 "); // else discription.Append("3圈 "); // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append("不带字牌 "); // else discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append("被杠者支付 "); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("三家都支付 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("点炮三分 "); // if (roomInfo.caOpenRoomParam[4] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[4] == 1) discription.Append("一炮多响 "); // if (roomInfo.caOpenRoomParam[5] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[5] == 1) discription.Append("前抬 "); // if (roomInfo.caOpenRoomParam[6] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[6] == 1) discription.Append("后和 "); // break; // case 17: // if (roomInfo.caOpenRoomParam[0] >= 3) // { // if (roomInfo.caOpenRoomParam[0] == 3) discription.Append("4局 "); // else if (roomInfo.caOpenRoomParam[0] == 4) discription.Append("8局 "); // else discription.Append("12局 "); // } // else // { // if (roomInfo.caOpenRoomParam[0] == 0) discription.Append("1圈 "); // else if (roomInfo.caOpenRoomParam[0] == 1) discription.Append("2圈 "); // else discription.Append("3圈 "); // } // if (roomInfo.caOpenRoomParam[1] == 0) discription.Append(""); // else discription.Append("带庄 "); // if (roomInfo.caOpenRoomParam[2] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[2] == 1) discription.Append("带字牌 "); // if (roomInfo.caOpenRoomParam[3] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[3] == 1) discription.Append("明杠收3家 "); // if (roomInfo.caOpenRoomParam[4] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[4] == 1) discription.Append("点炮三分 "); // if (roomInfo.caOpenRoomParam[5] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[5] == 1) discription.Append("一炮多响 "); // if (roomInfo.caOpenRoomParam[6] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[6] == 1) discription.Append("前抬 "); // if (roomInfo.caOpenRoomParam[7] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[7] == 1) discription.Append("后和 "); // if (roomInfo.caOpenRoomParam[8] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[8] == 1) discription.Append("抢庄 "); // if (roomInfo.caOpenRoomParam[9] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[9] == 1) discription.Append("杠随胡走 "); // if (roomInfo.caOpenRoomParam[10] == 0) discription.Append(""); // else if (roomInfo.caOpenRoomParam[10] == 1) discription.Append("仅自摸 "); // break; // default: // break; //} #endregion MahjongLobby_AH.SDKManager.Instance.HandleShareWX(url, title.ToString(), discription.ToString(), 0, 0, 0, ""); }
/// <summary> /// 更新面板 /// </summary> public void UpdateShow() { GameData gd = GameData.Instance; UserInfoPanelData uipd = gd.UserInfoPanelData; if (uipd.isPanelShow) { gameObject.SetActive(true); if (SDKManager.Instance.IOSCheckStaus == 1 || SDKManager.Instance.CheckStatus == 1) { ParlorMessage.SetActive(false); } else { ParlorMessage.SetActive(true); } if (gd.PlayerNodeDef.iPlayCardAcc != 0) { PlayerNode[0].text = (gd.PlayerNodeDef.iPlayCardTimeAcc / gd.PlayerNodeDef.iPlayCardAcc).ToString("0") + "秒/平均"; } else { PlayerNode[0].text = "0秒/平均"; } // Debug.LogError("游戏局数:" + gd.PlayerNodeDef.iGameNumAcc + ",掉线次数:" + gd.PlayerNodeDef.iDisconnectAcc); if (gd.PlayerNodeDef.iGameNumAcc != 0) { PlayerNode[1].text = ((gd.PlayerNodeDef.iDisconnectAcc / (float)gd.PlayerNodeDef.iGameNumAcc) * 100f).ToString("0.00") + "%"; } else { PlayerNode[1].text = "0%"; } //声音关闭按钮显示 Button[] gomusic = _Music.GetComponentsInChildren <Button>(true); gomusic[0].gameObject.SetActive(MahjongCommonMethod.Instance.isMusicShut); gomusic[1].gameObject.SetActive(!MahjongCommonMethod.Instance.isMusicShut); Button[] goeffect = _Effect.GetComponentsInChildren <Button>(true); goeffect[0].gameObject.SetActive(MahjongCommonMethod.Instance.isEfectShut); goeffect[1].gameObject.SetActive(!MahjongCommonMethod.Instance.isEfectShut); _sliderM.value = MahjongCommonMethod.Instance.MusicVolume * 0.01f; _sliderE.value = MahjongCommonMethod.Instance.EffectValume * 0.01f; PlayerNode[2].text = gd.PlayerNodeDef.iCompliment.ToString(); PlayerNode[3].text = MahjongCommonMethod.PlayerIp; PlayerNode[4].text = gd.PlayerNodeDef.iUserId.ToString(); PlayerNode[5].text = gd.PlayerNodeDef.szNickname; MahjongCommonMethod com = MahjongCommonMethod.Instance; com.GetPlayerAvatar(headImage, gd.PlayerNodeDef.szHeadimgurl); if (uipd.SettingPanelShow) { SettingPanel.SetActive(true); } else { SettingPanel.SetActive(false); } //处理麻将馆信息 PlayerNodeDef pnd = GameData.Instance.PlayerNodeDef; if (pnd.iMyParlorId > 0) { ParlorIdentity.text = "麻将馆老板"; JoinParlorTitle.text = "创建的麻将馆:"; } else { ParlorIdentity.text = "麻将馆会员"; JoinParlorTitle.text = "加入的麻将馆:"; } ParlorShowPanelData pspd = GameData.Instance.ParlorShowPanelData; int parlorCount = 0; for (int i = 0; i < pspd.parlorInfoDef.Length; i++) { if (pspd.parlorInfoDef[i] != null && pspd.parlorInfoDef[i].iParlorId > 0) { parlorCount++; Parlor[i].SetActive(true); Parlor[i].transform.GetChild(1).GetComponent <Text>().text = pspd.parlorInfoDef[i].szParlorName; } else { Parlor[i].SetActive(false); } } if (parlorCount == 0) { NoneParlor.SetActive(true); } else { NoneParlor.SetActive(false); } ParlorCount[0].text = pnd.iLeaveParlorAcc + "次"; if (pnd.iMyParlorId > 0) { ParlorCount[1].text = (pnd.iCreatParlorAcc + 1) + "次"; } else { ParlorCount[1].text = (pnd.iCreatParlorAcc) + "次"; } ParlorCount[2].text = pnd.iKickParlorAcc + "次"; ParlorCount[3].text = pnd.iDismissParlorAcc + "次"; } else { GameData.Instance.isShowQuitPanel = true; gameObject.SetActive(false); } }
/// <summary> /// 产生玩法数量的预置体 /// </summary> /// <param name="index">玩法id</param> /// <param name="ChoiceIndex">玩家选择的下标</param> void SpwanPayNum(int index) { int ChoiceIndex = -1; MahjongCommonMethod mcm = MahjongCommonMethod.Instance; PlayerPlayingPanelData pppd = GameData.Instance.PlayerPlayingPanelData; //玩法局或圈的数量 int[] sum = new int[5]; //玩法数量对应支付的房卡数量 int[] pay = new int[5]; //获取对应的游戏局或者圈的数量 if (mcm._dicMethodConfig[index].sum.Contains("|")) { string[] str_0 = mcm._dicMethodConfig[index].sum.Split('|')[0].Split('_'); string[] str_1 = mcm._dicMethodConfig[index].sum.Split('|')[1].Split('_'); for (int i = 0; i < 3; i++) { sum[i] = Convert.ToInt16(str_0[i]); } for (int i = 0; i < 2; i++) { sum[i + 3] = Convert.ToInt16(str_1[i]); } } else { string[] str_0 = mcm._dicMethodConfig[index].sum.Split('_'); for (int i = 0; i < 3; i++) { if (i < str_0.Length) { sum[i] = Convert.ToInt16(str_0[i]); } else { sum[i] = 0; } } sum[3] = 0; sum[4] = 0; } //获取玩家对应的支付数量 if (mcm._dicMethodConfig[index].pay.Contains("|")) { string[] str_0 = mcm._dicMethodConfig[index].pay.Split('|')[0].Split('_'); string[] str_1 = mcm._dicMethodConfig[index].pay.Split('|')[1].Split('_'); for (int i = 0; i < 3; i++) { pay[i] = Convert.ToInt16(str_0[i]); } for (int i = 0; i < 2; i++) { pay[i + 3] = Convert.ToInt16(str_1[i]); } } else { string[] str_0 = mcm._dicMethodConfig[index].pay.Split('_'); for (int i = 0; i < 3; i++) { if (i < str_0.Length) { pay[i] = Convert.ToInt16(str_0[i]); } else { pay[i] = 0; } } pay[3] = 0; pay[4] = 0; } //if (index == 17) //{ // sum[3] = 4; pay[3] = pay[0]; // sum[4] = 8; pay[4] = pay[1]; // sum[5] = 12; pay[5] = pay[2]; //} //int addChoiceIndex = 0; if (index == 17) { if (pppd.playingMethodConf.byBillingMode == 2) { sum[0] = 4; sum[1] = 8; sum[2] = 12; //addChoiceIndex = 3; } } int count = 0; //根据付费数量,判断出玩家的信息 for (int i = 0; i < 5; i++) { if (index == 2 && pppd.playingMethodConf.byBillingPrice == pay[i] && pppd.playingMethodConf.byBillingMode == 2) { ChoiceIndex = i; //pppd.playingMethodConf.byBillingMode = 1; } else if (pppd.playingMethodConf.byBillingNumber == sum[i] && pppd.playingMethodConf.byBillingPrice == pay[i]) { ChoiceIndex = i; } } MahjongLobby_AH.Data.CreatRoomMessagePanelData cd = MahjongLobby_AH.GameData.Instance.CreatRoomMessagePanelData; if (MahjongCommonMethod.Instance.ReadColumnValue(cd.roomMessage_, 2, 39) <= 1) { for (int pay_index = 0; pay_index < pay.Length; pay_index++) { if (pay[pay_index] != 0) { pay[pay_index] = pay[pay_index] / 4; Debug.LogError(pay[pay_index]); } } } //删除自己的之前的房间规则信息 CreatRoomChoiceMethod[] method = PayNumParent.Find("GameNumbers").GetComponentsInChildren <CreatRoomChoiceMethod>(); if (method.Length > 0) { for (int i = 0; i < method.Length; i++) { Destroy(method[i].gameObject); } } //产生对应的玩法数据 for (int i = 0; i < sum.Length; i++) { if (sum[i] == 0) { continue; } GameObject go = Instantiate(Resources.Load <GameObject>("Lobby/PlayerMethodPanel/CreatRoomChoiceMethod")); go.name = "CreatRoomChoiceMethod"; go.transform.SetParent(PayNumParent.Find("GameNumbers")); go.transform.localPosition = new Vector3(go.transform.localPosition.x, go.transform.localPosition.y, 0); go.transform.localScale = Vector3.one; if (i == ChoiceIndex) { go.transform.GetComponent <Toggle>().isOn = true; } else { go.transform.GetComponent <Toggle>().isOn = false; } go.transform.GetComponent <Toggle>().interactable = false; CreatRoomChoiceMethod crcm = go.GetComponent <CreatRoomChoiceMethod>(); crcm.type = pppd.playingMethodConf.byBillingMode; crcm.num = sum[i]; crcm.pay = pay[i]; crcm.UpdateShow(); count++; } if (pppd.playingMethodConf.byBillingMode == 1) { PayNumParent.GetChild(1).GetComponent <Text>().text = "圈数:"; } else if (pppd.playingMethodConf.byBillingMode == 2) { PayNumParent.GetChild(1).GetComponent <Text>().text = "局数:"; } else if (pppd.playingMethodConf.byBillingMode == 3) { PayNumParent.GetChild(1).GetComponent <Text>().text = "分数:"; } PayNumParent.GetComponent <LayoutElement>().minHeight = 60f; //PayNumParent.GetComponent<LayoutElement>().minHeight = 60f + ((int)(count / 3f + 0.5f) - 1f) * 45; }
/// <summary> /// 产生规则的信息 /// </summary> /// <param name="index"></param> void SpwanMethod(int index) { int num_MultiChoiceBtn = 0; //表示隐藏多选按钮数量 //int num_OnlyOneChoice = 0; //表示隐藏多选按钮数量 MahjongCommonMethod mcm = MahjongCommonMethod.Instance; MahjongLobby_AH.Data.CreatRoomMessagePanelData cd = MahjongLobby_AH.GameData.Instance.CreatRoomMessagePanelData; //删除规则 for (int i = 0; i < RuleParent.Length - 1; i++) { Toggle[] tog = new Toggle[RuleParent[i].GetComponentsInChildren <Toggle>().Length]; tog = RuleParent[i].GetComponentsInChildren <Toggle>(); if (tog.Length > 0) { for (int k = 0; k < tog.Length; k++) { Destroy(tog[k].gameObject); } } } #region 托管条显示不显示 /////////////////////////////////////////////////////////// if (cd.roomMessage_[5] > 0) { TuoGuan.SetActive(true); GameObject gotuoguan = null; m_GameRule.enabled = true; m_GameRule.transform.GetChild(0).GetChild(0).transform.SetParent(m_GameRule.transform.GetChild(0)); m_GameRule.transform.GetChild(0).GetChild(0).transform.localPosition = new Vector3(0, 0, 0); for (int i = 0; i < 4; i++) { gotuoguan = Instantiate(Resources.Load <GameObject>("Lobby/PlayerMethodPanel/OnlyOneChoice")); gotuoguan.GetComponent <Toggle>().group = RuleParent[3].GetComponent <ToggleGroup>(); gotuoguan.name = "OnlyOneChoice"; gotuoguan.transform.SetParent(RuleParent[3].transform); gotuoguan.transform.localPosition = new Vector3(gotuoguan.transform.localPosition.x, gotuoguan.transform.localPosition.y, 0); gotuoguan.transform.localScale = Vector3.one; gotuoguan.transform.Find("Label").GetComponent <Text>().text = MahjongLobby_AH.UIMainView.Instance.CreatRoomMessagePanel.lTuoGuan[i]; gotuoguan.GetComponent <Toggle>().interactable = false; int LateTime = 0; if (i != 0) { string str = MahjongLobby_AH.UIMainView.Instance.CreatRoomMessagePanel.lTuoGuan[i]; str = str.Substring(0, MahjongLobby_AH.UIMainView.Instance.CreatRoomMessagePanel.lTuoGuan[i].Length - 1); LateTime = (Convert.ToInt32(str) / 60); } if (cd.roomMessage_[5] == LateTime) { gotuoguan.GetComponent <Toggle>().isOn = true; } else { gotuoguan.GetComponent <Toggle>().isOn = false; } } } else { TuoGuan.SetActive(false); m_GameRule.enabled = false; } if (MahjongCommonMethod.Instance.ReadColumnValue(cd.roomMessage_, 2, 39) == 2) { RuleParent[4].transform.GetChild(0).GetComponent <Toggle>().isOn = true; RuleParent[4].transform.GetChild(1).GetComponent <Toggle>().isOn = false; } else if (MahjongCommonMethod.Instance.ReadColumnValue(cd.roomMessage_, 2, 39) <= 1) { RuleParent[4].transform.GetChild(0).GetComponent <Toggle>().isOn = false; RuleParent[4].transform.GetChild(1).GetComponent <Toggle>().isOn = true; } if (RuleParent[0].GetComponentsInChildren <Transform>().Length < 1) { RuleParent[0].transform.parent.gameObject.SetActive(false); } else { RuleParent[0].transform.parent.gameObject.SetActive(true); } if (PlayGoldModth.activeSelf) { m_GameRule.enabled = true; } #endregion if (!mcm._dicMethodCardType.ContainsKey(index)) { RuleParent_.SetActive(false); return; } RuleParent_.SetActive(true); //该玩法有多个规则可以实现 for (int i = 0; i < mcm._dicMethodCardType[index].Count; i++) { GameObject go = null; //如果该玩法为多选 if (mcm._dicmethodToCardType[index][i].Choice == 2) { go = Instantiate(Resources.Load <GameObject>("Lobby/PlayerMethodPanel/MultiChoiceBtn")); go.name = "MultiChoiceBtn"; if (mcm._dicmethodToCardType[index][i].Hierarchy == 1) { num_MultiChoiceBtn++; } else { RuleParent[mcm._dicmethodToCardType[index][i].Hierarchy - 1].GetComponent <GridLayoutGroup>().padding.left = 65; go.transform.Find("Label").transform.localPosition += new Vector3(20, 0, 0); } } else { go = Instantiate(Resources.Load <GameObject>("Lobby/PlayerMethodPanel/OnlyOneChoice")); go.GetComponent <Toggle>().group = RuleParent[mcm._dicmethodToCardType[index][i].Hierarchy - 1].GetComponent <ToggleGroup>(); go.name = "OnlyOneChoice"; } bool status = mcm.JudgeIsShow(mcm._dicmethodToCardType[index][i].RuleId); if (status) { for (int k = 0; k < mcm._dicMethodCardType[index].Count; k++) { if (mcm._dicMethodCardType[index][i].ID == mcm._dicmethodToCardType[index][i].RuleId) { SelectContent.Add(mcm._dicMethodCardType[index][i].notes); break; } } } go.transform.SetParent(RuleParent[mcm._dicmethodToCardType[index][i].Hierarchy - 1].transform); go.transform.localPosition = new Vector3(go.transform.localPosition.x, go.transform.localPosition.y, 0); go.transform.localScale = Vector3.one; go.transform.Find("Label").GetComponent <Text>().text = mcm._dicMethodCardType[index][i].card_type; go.GetComponent <Toggle>().interactable = false; if (status) { go.transform.Find("Label").GetComponent <Text>().color = new Color(1, 0, 0, 1);//红色 选中为红色 go.GetComponent <Toggle>().isOn = true; } } if (num_MultiChoiceBtn <= 4) { RuleParent[0].GetComponentInParent <LayoutElement>().minHeight = 70f; } else { RuleParent[0].GetComponentInParent <LayoutElement>().minHeight = 120f; } //if (num_OnlyOneChoice == 0) //{ // RuleParent[1].SetActive(false); // RuleParent[2].SetActive(false); //} //else //{ // RuleParent[1].SetActive(true); // RuleParent[2].SetActive(true); //} RuleParent_.GetComponent <LayoutElement>().minHeight = 170f + (int)((num_MultiChoiceBtn) / 4f - 0.5f) * 50f; }