public void updateGuessNumbers() { int now = ServerTimeKit.getSecondTime(); for (int i = 0; i < 5; i++) { List <ArenaFinalInfo> infoList = allInfoList [i]; int count = 0; for (int j = 0; j < infoList.Count - 1; j += 2) { ArenaFinalInfo info = infoList [j].hasUser() ? infoList [j] : infoList [j + 1]; if (info.guessStartTime + 60 <= now && now <= info.guessEndTime) { guessTapIndex = i; if (!(infoList [j].guessed || infoList [j + 1].guessed)) { count++; } } } guessNumbers [i].transform.parent.gameObject.SetActive(count > 0); if (count > 0) { guessNumbers [i].text = count.ToString(); } } }
public ArenaFinalInfo[] getFinalInfo(int star, int len) { ArenaFinalInfo[] infos = new ArenaFinalInfo[len]; for (int i = 0; i < len; i++) { infos[i] = finalInfoList[star + i]; } return(infos); }
private void initAllInfoList() { bool findMe = false; allInfoList = new List <ArenaFinalInfo> [5]; for (int i = 0; i < 5; i++) { List <ArenaFinalInfo> infoList = new List <ArenaFinalInfo> (); ArenaFinalInfo[][] infoListArr; if (i <= 3) { infoListArr = new ArenaFinalInfo[5][]; addArenaFinalInfo(infoList, infoListArr [0] = am.getFinalInfo(i * 16, 16)); addArenaFinalInfo(infoList, infoListArr [1] = am.getFinalInfo(i * 8 + 64, 8)); addArenaFinalInfo(infoList, infoListArr [2] = am.getFinalInfo(i * 4 + 96, 4)); addArenaFinalInfo(infoList, infoListArr [3] = am.getFinalInfo(i * 2 + 112, 2)); addArenaFinalInfo(infoList, infoListArr [4] = am.getFinalInfo(i + 120, 1)); } else { infoListArr = new ArenaFinalInfo[3][]; addArenaFinalInfo(infoList, infoListArr [0] = am.getFinalInfo(120, 4)); addArenaFinalInfo(infoList, infoListArr [1] = am.getFinalInfo(124, 2)); addArenaFinalInfo(infoList, infoListArr [2] = am.getFinalInfo(126, 1)); } allInfoList [i] = infoList; for (int j = 0; j < infoListArr.Length; j++) { foreach (ArenaFinalInfo info in infoListArr[j]) { if (i <= 3) { info.finalState = ArenaManager.STATE_64_32 + j; } else { info.finalState = ArenaManager.STATE_4_2 + j; } if (!findMe && info.uid == UserManager.Instance.self.uid) { findMe = true; myRank = info.finalState - 1; myTeamIndex = i; } } } } lblRank.text = LanguageConfigManager.Instance.getLanguage("Arena45") + " : " + LanguageConfigManager.Instance.getLanguage("Arena14_" + myRank + "_2"); }
public void init(ArenaFinalInfo info) { this.info = info; window.map.addPoint(gameObject, info.finalState == ArenaManager.STATE_RESET, ((obj) => { point3d = obj; })); if (string.IsNullOrEmpty(info.userName)) { lblRoleName.transform.parent.gameObject.SetActive(false); } else { lblRoleName.transform.parent.gameObject.SetActive(true); lblRoleName.text = info.userName; role3d = window.map.addRole(info.userIcon, gameObject); } }
public void init(ArenaReplayInfo replayInfo, ArenaFinalInfo info, CallBack callback) { this.callback = callback; this.info = info; this.replayInfo = replayInfo; if (replayInfo.user1.win) { winer = replayInfo.user1; loser = replayInfo.user2; } else { winer = replayInfo.user2; loser = replayInfo.user1; } lblTitle.text = winer.score + " : " + loser.score; }
public void init(ArenaFinalPoint point) { this.point = point; this.info = point.ParentPoint.info; string str = LanguageConfigManager.Instance.getLanguage("Arena14_" + info.finalState); string award = ArenaAwardSampleManager.Instance.getGuessPrizeDescription(info.finalState) + "\n"; string text = LanguageConfigManager.Instance.getLanguage("Arena21", str, award); lblExplanation.text = text; for (int i = 0; i < lblButton.Length; i++) { lblButton [i].text = LanguageConfigManager.Instance.getLanguage("Arena12"); } for (int i = 0; i < lblSelect.Length; i++) { lblSelect [i].text = LanguageConfigManager.Instance.getLanguage("Arena13"); } }
/** 计算竞技场可竞猜数 */ public static int computeGuessNumber() { if (ArenaManager.instance.finalInfoList == null) { return(0); } List <ArenaFinalInfo>[] allInfoList = new List <ArenaFinalInfo> [5]; for (int i = 0; i < 5; i++) { List <ArenaFinalInfo> infoList = new List <ArenaFinalInfo> (); ArenaFinalInfo[][] infoListArr; ArenaFinalInfo[] infos; if (i <= 3) { infoListArr = new ArenaFinalInfo[5][]; infos = ArenaManager.instance.getFinalInfo(i * 16, 16); if (infos != null) { addArenaFinalInfo(infoList, infos); } infos = ArenaManager.instance.getFinalInfo(i * 8 + 64, 8); if (infos != null) { addArenaFinalInfo(infoList, infos); } infos = ArenaManager.instance.getFinalInfo(i * 4 + 96, 4); if (infos != null) { addArenaFinalInfo(infoList, infos); } infos = ArenaManager.instance.getFinalInfo(i * 2 + 112, 2); if (infos != null) { addArenaFinalInfo(infoList, infos); } infos = ArenaManager.instance.getFinalInfo(i + 120, 1); if (infos != null) { addArenaFinalInfo(infoList, infos); } } else { infoListArr = new ArenaFinalInfo[3][]; infos = ArenaManager.instance.getFinalInfo(120, 4); if (infos != null) { addArenaFinalInfo(infoList, infos); } infos = ArenaManager.instance.getFinalInfo(124, 2); if (infos != null) { addArenaFinalInfo(infoList, infos); } infos = ArenaManager.instance.getFinalInfo(126, 1); if (infos != null) { addArenaFinalInfo(infoList, infos); } } allInfoList [i] = infoList; } int now = ServerTimeKit.getSecondTime(); int count = 0; for (int i = 0; i < 5; i++) { List <ArenaFinalInfo> infoList = allInfoList [i]; for (int j = 0; j < infoList.Count - 1; j += 2) { ArenaFinalInfo info = infoList [j].hasUser() ? infoList [j] : infoList [j + 1]; if (info.guessStartTime + 60 <= now && now <= info.guessEndTime) { if (!(infoList [j].guessed || infoList [j + 1].guessed)) { count++; } } } } return(count); }
private IEnumerator initData(int index) { pointRoot.GetComponent <UIScrollView> ().ResetPosition(); yield return(1); map.clear(); if (focusGuess == null) { focusGuess = new ArenaFocusGuess(); } else { focusGuess.Clear(); } Utils.DestoryChilds(pointRoot); ArenaFinalInfo[][] infos; if (index <= 3) { infos = new ArenaFinalInfo[5][]; infos [0] = am.getFinalInfo(index * 16, 16); infos [1] = am.getFinalInfo(index * 8 + 64, 8); infos [2] = am.getFinalInfo(index * 4 + 96, 4); infos [3] = am.getFinalInfo(index * 2 + 112, 2); infos [4] = am.getFinalInfo(index + 120, 1); } else { infos = new ArenaFinalInfo[3][]; infos [0] = am.getFinalInfo(120, 4); infos [1] = am.getFinalInfo(124, 2); infos [2] = am.getFinalInfo(126, 1); } ArenaFinalPoint[][] points = new ArenaFinalPoint[infos.Length][]; for (int i = 0; i < points.Length; i++) { points [i] = new ArenaFinalPoint[infos [i].Length]; } Vector3 postion = new Vector3(-263, 62, 0); //bool isFocusCuess = false; for (int i = 0; i < infos.Length; i++) { for (int j = 0; j < infos[i].Length; j++) { ArenaFinalInfo info = infos [i] [j]; GameObject obj = NGUITools.AddChild(pointRoot, rolePointPrefab); obj.name = "rolepoint_" + (i * 100) + j; obj.SetActive(true); if (i == 0) { obj.transform.localPosition = postion + new Vector3(0, j * -233, 0); } else { ArenaFinalPoint paren1 = points [i - 1] [j * 2]; ArenaFinalPoint paren2 = points [i - 1] [j * 2 + 1]; float len = (paren2.transform.localPosition.y - paren1.transform.localPosition.y) / 2; obj.transform.localPosition = paren1.transform.localPosition + new Vector3(200, len, 0); } ArenaFinalPoint point = obj.GetComponent <ArenaFinalPoint> (); point.window = this; point.init(info); points [i] [j] = point; if (i > 0) { ArenaFinalPoint paren1 = points [i - 1] [j * 2]; ArenaFinalPoint paren2 = points [i - 1] [j * 2 + 1]; point.initParent(paren1, paren2); if (point.buttonGuess.activeInHierarchy) { focusGuess.AddFocusCuessPoint(point.gameObject.transform.localPosition, i, j, point.guessNum.activeInHierarchy, index, obj.name); } } chanPoint = point; if (info.uid == UserManager.Instance.self.uid) { myPoint = point; } yield return(1); } } focusGuess.SortFocusCuess(); ResetSpringPanel(); updateGuessNumbers(); if (am.state == ArenaManager.STATE_RESET && am.tapIndex == 4) { lookChanPosition(); chanPoint.chanName.text = LanguageConfigManager.Instance.getLanguage("Arena80", chanPoint.lblRoleName.text); chanPoint.chanName.gameObject.SetActive(true); chanPoint.timecd.text = lblNextCD.text; chanPoint.nextTime.gameObject.SetActive(true); EndLabel.text = LanguageConfigManager.Instance.getLanguage("Arena73"); EndLabel.gameObject.SetActive(true); } MaskWindow.UnlockUI(); }
public override void read(ErlKVMessage message) { ErlArray array = message.getValue("msg") as ErlArray; if (array != null) { ArenaManager.instance.self = null; int state = ArenaManager.instance.state = StringKit.toInt(array.Value[0].getValueString()); ArenaManager.instance.stateEndTime = StringKit.toInt(array.Value[1].getValueString()); ArenaManager.instance.finalRound = StringKit.toInt(array.Value[2].getValueString()); ArenaManager.instance.finalCD = StringKit.toInt(array.Value[3].getValueString()) + 60; if (ArenaManager.instance.finalCD < 60) { ArenaManager.instance.finalDelay = ArenaManager.instance.finalCD; } else { ArenaManager.instance.finalDelay = 0; } if (state >= ArenaManager.STATE_64_32 && state <= ArenaManager.STATE_RESET) { array = array.Value[4] as ErlArray; ArenaManager.instance.finalInfoList = new List <ArenaFinalInfo>(); for (int i = 0; i < 127; i++) { int pos = 0; ErlArray arr = array.Value[i] as ErlArray; ArenaFinalInfo info = new ArenaFinalInfo(); info.startTime = StringKit.toInt(arr.Value[pos++].getValueString()); if (arr.Value.Length > 2) { info.guessStartTime = StringKit.toInt(arr.Value[pos++].getValueString()); info.guessEndTime = StringKit.toInt(arr.Value[pos++].getValueString()); info.uid = arr.Value[pos++].getValueString(); info.userName = arr.Value[pos++].getValueString(); info.userIcon = StringKit.toInt(arr.Value[pos++].getValueString()); info.lose = bool.Parse(arr.Value[pos++].getValueString()); info.index = StringKit.toInt(arr.Value[pos++].getValueString()); info.guessed = bool.Parse(arr.Value[pos++].getValueString()); } else if (arr.Value[pos].getValueString() != "none") { info.userId = arr.Value[pos].getValueString(); } ArenaManager.instance.finalInfoList.Add(info); } } else { ArenaManager.instance.finalInfoList = null; } } else { ArenaManager.instance.finalInfoList = null; ArenaManager.instance.state = -1; } if (callback != null) { callback(); callback = null; } }