void RefreshPayInfo(int levelindex, ESlefContestType contestType) { Transform groupTransform = null; switch (contestType) { case ESlefContestType.TimeContest: groupTransform = rulepanel2_.transform.Find("Right"); break; case ESlefContestType.PlayerNumberContest: groupTransform = rulepanel1_.transform.Find("Right"); break; } byte gameid = SelfContestDataManager.instance().gameid; int power = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[0]; int level = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[levelindex]; int pay4appointment = power * level; groupTransform.Find("ImageBG/Button_chuangjian").gameObject.SetActive(pay4appointment > 0); groupTransform.Find("ImageBG/Button_chuangjian_0").gameObject.SetActive(pay4appointment <= 0); Text pay = groupTransform.Find("ImageBG/ImageBGcost").Find("Textnum").gameObject.GetComponent <Text>(); pay.text = pay4appointment.ToString(); playtimesindex_ = (byte)levelindex; }
void ChangeRuleInfo(int pick, bool ison, ESlefContestType constType) { if (ison) { byte CurGameId = 0; Transform groupTransform = null; switch (constType) { case ESlefContestType.TimeContest: CurGameId = (byte)TimeMatchGameIdData[pick]; groupTransform = rulepanel2_.transform.Find("Right"); break; case ESlefContestType.PlayerNumberContest: CurGameId = (byte)PlayerNumberMatchGameIdData[pick]; groupTransform = rulepanel1_.transform.Find("Right"); break; } int lastIndex = groupTransform.childCount - 1; for (int index = 0; index < groupTransform.childCount; index++) { GameObject child = groupTransform.GetChild(index).gameObject; child.SetActive(lastIndex == index || pick == index); } SelfContestDataManager.instance().gameid = CurGameId; CurContestGameIndex = pick; SelfContestDataManager.instance().SetGameDataID((int)constType * 3 + pick); RefreshPayInfo(1, constType); RefreshPlayerNumber(CurGameId, constType); RefreshContestTime(groupTransform.parent); } }
public static SelfContestDataManager instance() { if (instance_ == null) { instance_ = new SelfContestDataManager(); } return(instance_); }
void InitRulePanel(ESlefContestType createtype) { switch (createtype) { case ESlefContestType.PlayerNumberContest: { GameObject returnBtn1 = rulepanel1_.transform.Find("Top/ButtonReturn").gameObject; XPointEvent.AutoAddListener(returnBtn1, OnBack2SelfContest, null); Text diamond1 = rulepanel1_.transform.Find("Top/Image_DiamondFrame/Text_Diamond").gameObject.GetComponent <Text>(); diamond1.text = (GameMain.hall_.GetPlayerData().GetDiamond() + GameMain.hall_.GetPlayerData().GetCoin()).ToString(); GameObject togglebg1 = rulepanel1_.transform.Find("Left").gameObject; for (int index = 0; index < togglebg1.transform.childCount; index++) { Toggle toggle = togglebg1.transform.GetChild(index).gameObject.GetComponent <Toggle>(); int temp = index; toggle.onValueChanged.AddListener(delegate(bool value) { CustomAudio.GetInstance().PlayCustomAudio(1003); ChangeRuleInfo(temp, value, createtype); }); } InitRightRuleEvents(rulepanel1_, createtype); } break; case ESlefContestType.TimeContest: { GameObject returnBtn2 = rulepanel2_.transform.Find("Top/ButtonReturn").gameObject; XPointEvent.AutoAddListener(returnBtn2, OnBack2SelfContest, null); Text diamond2 = rulepanel2_.transform.Find("Top/Image_DiamondFrame/Text_Diamond").gameObject.GetComponent <Text>(); diamond2.text = (GameMain.hall_.GetPlayerData().GetDiamond() + GameMain.hall_.GetPlayerData().GetCoin()).ToString(); GameObject togglebg2 = rulepanel2_.transform.Find("Left").gameObject; for (int index = 0; index < togglebg2.transform.childCount; index++) { Toggle toggle = togglebg2.transform.GetChild(index).gameObject.GetComponent <Toggle>(); int temp = index; toggle.onValueChanged.AddListener(delegate(bool value) { CustomAudio.GetInstance().PlayCustomAudio(1003); ChangeRuleInfo(temp, value, createtype); }); } InitRightRuleEvents(rulepanel2_, createtype); } break; } InitMatchData(createtype); SelfContestDataManager.instance().gameid = (byte)GameKind_Enum.GameKind_LandLords; RefreshPayInfo(1, createtype); RefreshPlayerNumber(SelfContestDataManager.instance().gameid, createtype); CurContestGameIndex = 0; SelfContestDataManager.instance().SetGameDataID((int)createtype * 3); }
//创建比赛 private void OnCreateContest() { CustomAudio.GetInstance().PlayCustomAudio(1002); if (selfcreateNumber_ >= 10) { CCustomDialog.OpenCustomConfirmUI(1651); return; } byte gameid = SelfContestDataManager.instance().gameid; int power = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[0]; int level = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[playtimesindex_]; int pay4appointment = power * level; if (GameMain.hall_.GetPlayerData().GetDiamond() + GameMain.hall_.GetPlayerData().GetCoin() < pay4appointment) { CCustomDialog.OpenCustomConfirmUI(1501); return; } UMessage createContestDataMsg = new UMessage((uint)GameCity.EMSG_ENUM.Contestmsg_PlayerCreateContestRequest); createContestDataMsg.Add(GameMain.hall_.GetPlayerId()); createContestDataMsg.Add(SelfContestDataManager.instance().gamedataid); createContestDataMsg.Add(scr_.playernumber); createContestDataMsg.Add(scr_.cost); createContestDataMsg.Add(scr_.precontest); createContestDataMsg.Add(scr_.finalcontest); Debug.Log(" 比赛游戏:" + SelfContestDataManager.instance().gamedataid + " 比赛人数:" + scr_.playernumber + " 报名费:" + scr_.cost + "预赛场数:" + scr_.precontest + " 决赛场数" + scr_.finalcontest); if (rulepanel2_ == null) { createContestDataMsg.Add((uint)0); } else { if (!rulepanel2_.activeSelf) { createContestDataMsg.Add((uint)0); } else { createContestDataMsg.Add(scr_.timeseconds); } } NetWorkClient.GetInstance().SendMsg(createContestDataMsg); UnityEngine.Transform groupTransform = rulepanel1_ ? rulepanel1_.transform : rulepanel2_.transform; groupTransform.Find("Right/ImageBG/Button_chuangjian").GetComponent <Button>().interactable = false; groupTransform.Find("Right/ImageBG/Button_chuangjian_0").GetComponent <Button>().interactable = false; }
private void OnPickContestType(EventTriggerType eventtype, object button, PointerEventData eventData) { if (eventtype == EventTriggerType.PointerClick) { CustomAudio.GetInstance().PlayCustomAudio(1002); ESlefContestType createtype = (ESlefContestType)button; LoadRulePanel(createtype); if (rulepanel1_ != null) { rulepanel1_.SetActive(false); } if (rulepanel2_ != null) { rulepanel2_.SetActive(false); } createPanel_.SetActive(false); int SelfGameDataIndex = ((int)createtype) * 3 + CurContestGameIndex; SelfContestDataManager.instance().SetGameDataID(SelfGameDataIndex); switch (createtype) { case ESlefContestType.TimeContest: { rulepanel2_.SetActive(true); GameObject BG = rulepanel2_.transform.Find("Right").gameObject; for (int index = 0; index < 3; index++) { Text texttips = BG.transform.GetChild(index).Find("shijian/Text_tips").gameObject.GetComponent <Text>(); RefreshContestTimeTipsText(texttips); } } break; case ESlefContestType.PlayerNumberContest: { rulepanel1_.SetActive(true); } break; } UnityEngine.Transform groupTransform = rulepanel1_ ? rulepanel1_.transform : rulepanel2_.transform; groupTransform.Find("Right/ImageBG/Button_chuangjian").GetComponent <Button>().interactable = true; groupTransform.Find("Right/ImageBG/Button_chuangjian_0").GetComponent <Button>().interactable = true; RefreshContestTime(groupTransform); } }