void FilterAvailableJudges(string InFilterStr, ref List <NameData> OutFilteredJudges) { if (InFilterStr.Trim().Length == 0) { return; } char[] Seperators = new char[] { ',', ' ', '-' }; string[] Names = InFilterStr.Split(Seperators); List <MatchData> CloseNames = NameDatabase.GetCloseNames(Names.Length > 0 ? Names[0].Trim() : "", Names.Length > 1 ? Names[1].Trim() : ""); CloseNames.AddRange(NameDatabase.GetCloseNames(Names.Length > 1 ? Names[1].Trim() : "", Names.Length > 0 ? Names[0].Trim() : "")); for (int JudgeIndex = 0; JudgeIndex < OutFilteredJudges.Count; ++JudgeIndex) { NameData nd = OutFilteredJudges[JudgeIndex]; bool bFound = false; foreach (MatchData md in CloseNames) { if (nd == md.Name) { bFound = true; } } if (!bFound) { OutFilteredJudges.RemoveAt(JudgeIndex); --JudgeIndex; } } }
public static void GenerateName(IQuestSource instance, ReputationNameConventions forcedType) { while (forcedType == ReputationNameConventions.UNKNOWN) { forcedType = EnumUtility.GetRandomEnumValue <ReputationNameConventions>(); } StringBuilder sb = new StringBuilder(); switch (forcedType) { case ReputationNameConventions.COMPOUND: instance.DisplayName = NameDatabase.GetCompoundName(); break; case ReputationNameConventions.GROUP: instance.DisplayName = NameDatabase.GetGroupName(); break; case ReputationNameConventions.POINT_OF_INTEREST: instance.DisplayName = NameDatabase.GetPointOfInterestName(); break; case ReputationNameConventions.TERRITORY: instance.DisplayName = NameDatabase.GetTerritoryName(); break; } }
void WriteJudgeNamesXml(XmlWriter writer, int PoolIndex) { ResultsData RData = TournamentData.FindResultsData((EDivision)CurDivIndex, (ERound)CurRoundIndex, (EPool)PoolIndex); int ExCount = RData.ExJudgeIds.Count; for (int ExIndex = 0; ExIndex < ExCount; ++ExIndex) { string JudgeName = NameDatabase.FindInDatabase(RData.ExJudgeIds[ExIndex]).DisplayName; writer.WriteElementString("ns2:Ex" + (ExIndex + 1), JudgeName); } int AiCount = RData.AIJudgeIds.Count; for (int AiIndex = 0; AiIndex < AiCount; ++AiIndex) { string JudgeName = NameDatabase.FindInDatabase(RData.AIJudgeIds[AiIndex]).DisplayName; writer.WriteElementString("ns2:Ai" + (AiIndex + 1), JudgeName); } int DiffCount = RData.DiffJudgeIds.Count; for (int DiffIndex = 0; DiffIndex < DiffCount; ++DiffIndex) { string JudgeName = NameDatabase.FindInDatabase(RData.DiffJudgeIds[DiffIndex]).DisplayName; writer.WriteElementString("ns2:Diff" + (DiffIndex + 1), JudgeName); } }
public static NameDatabase Load(Stream InStream) { XmlSerializer serializer = new XmlSerializer(typeof(NameDatabase)); NameDatabase LoadedData = serializer.Deserialize(InStream) as NameDatabase; return(LoadedData); }
private void Awake() { if (instance == null) { instance = this; } }
static Agent() { TextAsset asset = Resources.Load("names") as TextAsset; Debug.Log(asset); names = JsonUtility.FromJson <NameDatabase>(asset.text); }
public GameItem(GameItemTypes type, GameItemRarity rarity) { ItemType = type; Rarity = rarity; DisplayName = NameDatabase.GetItemName(this); BasePower = Random.Range(12f, 15f); }
void OnServerInitialized() { Debug.Log("Server Initialized"); connected = true; NameDatabase.clearNames(); NameDatabase.addName(Network.player.guid, PlayerPrefs.GetString("userName")); setRace(Network.player, raceListKey[raceListEntry]); }
public static FactionInstance GenerateFaction() { FactionInstance newFaction = new FactionInstance(); newFaction.DisplayName = NameDatabase.GetGroupName(); return(newFaction); }
public static QuestInstance GenerateQuest(int difficulty, QuestMakeupType makeup) { string questName = NameDatabase.GetQuestName(); QuestInstance quest = new QuestInstance(questName, difficulty, QuestMakeup.GetMakeup(makeup)); quest.Duration.OriginalValue = UnityEngine.Random.Range(TimeUtilities.GetSecondsInDays(0.1f), TimeUtilities.GetSecondsInDays(0.4f)); quest.TravelTime.OriginalValue = UnityEngine.Random.Range(TimeUtilities.GetSecondsInDays(0.2f), TimeUtilities.GetSecondsInDays(0.4f)); quest.ExpireTime = UnityEngine.Random.Range(TimeUtilities.MIN_QUEST_EXPIRE_TIME, TimeUtilities.MAX_QUEST_EXPIRE_TIME); return(quest); }
string GetBackupDisplayString(BackupAIData bd) { TeamData td = Global.GetTeamData(bd.Data.Division, bd.Data.Round, bd.Data.Pool, bd.Data.Team); string TeamName = td != null ? td.PlayerNames : "Missing Team"; NameData JudgeNameData = NameDatabase.FindInDatabase(bd.Data.JudgeNameId); string JudgeName = JudgeNameData != null ? JudgeNameData.DisplayName : "Missing Judge"; string BackupStr = JudgeName + " " + bd.Data.Division.ToString() + " " + bd.Data.Round.ToString() + " " + (char)(bd.Data.Pool + 'A') + " | " + TeamName + " | " + bd.WrittenTime.ToString(); return(BackupStr); }
void OnConnectedToServer() { NameDatabase.clearNames(); Debug.Log("Connected to Server"); connected = true; string myname = PlayerPrefs.GetString("userName"); NameDatabase.addName(Network.player.guid, myname); networkView.RPC("registerName", RPCMode.Server, myname, Network.player.guid); networkView.RPC("requestNames", RPCMode.Server); }
public static void LoadNameData() { if (Global.AllNameData == null) { Global.AllNameData = NameDatabase.Load(Application.persistentDataPath + "/names.xml"); if (Global.AllNameData == null) { Global.AllNameData = new NameDatabase(); } } }
void GetPlayersFromString(string InLine, ref List <PlayerData> OutPlayers) { for (int PlayerIndex = 0; PlayerIndex < AllPlayers.Count; ++PlayerIndex) { PlayerData Data = AllPlayers[PlayerIndex]; if (NameDatabase.FindInDatabase(Data.NameId).IsInLine(InLine)) { OutPlayers.Add(Data); } } }
public static OracleConnection GetOracleConnection(OracleConnection connect, NameDatabase dbName = NameDatabase.GiamSat) { try { connect.ConnectionString = dbName == NameDatabase.DauTu ? OradbDt : OradbGs; connect.Open(); return connect; } catch (Exception) { return null; } }
public static OracleConnection GetOracleConnection(OracleConnection connect, NameDatabase dbName = NameDatabase.GiamSat) { try { connect.ConnectionString = dbName == NameDatabase.DauTu ? OradbDt : OradbGs; connect.Open(); return(connect); } catch (Exception) { return(null); } }
public static NameData TryAddNewName(string InFirstName, string InLastName) { NameData NewName = NameDatabase.FindInDatabase(InFirstName, InLastName); if (NewName == null) { NewName = new NameData(InFirstName, InLastName); Global.AllNameData.AllNames.Add(NewName); Global.AllNameData.Save(); } return(NewName); }
void OnGUI_DisplayPlayer(NetworkPlayer player) { GUILayout.BeginHorizontal("box", GUILayout.Height(50)); GUILayout.Label(NameDatabase.getName(player.guid), GUILayout.Width(200)); if (Network.isServer && player != Network.player) { if (GUILayout.Button("Kick")) { Network.CloseConnection(player, true); } } GUILayout.FlexibleSpace(); if (player == Network.player) { GUILayout.Label(new GUIContent("", "Click to pick a Race!"), "", GUILayout.Width(125)); if (GUI.tooltip != "") { GUI.Label(new Rect(Input.mousePosition.x - 50, Screen.height - Input.mousePosition.y - 50, 200, 30), "Click to pick a Race!"); } Rect popupRect = GUILayoutUtility.GetLastRect(); if (player == Network.player) { if (Popup.List(popupRect, ref raceListShow, ref raceListEntry, new GUIContent(RaceDatabase.getRace(Network.player)), raceList, "button", "box", raceListStyle)) { if (Network.isServer) { requestRace(Network.player, raceListKey[raceListEntry]); } else { networkView.RPC("requestRace", RPCMode.Server, Network.player, raceListKey[raceListEntry]); } } } } else { GUILayout.Label(RaceDatabase.getRace(player)); } GUILayout.FlexibleSpace(); GUILayout.Label("Ping: " + Network.GetAveragePing(player), GUILayout.Width(150)); GUILayout.EndHorizontal(); }
void DrawJudgeLabel(ResultsData InRData, int InId) { GUIStyle JudgeStyle = new GUIStyle("label"); JudgeStyle.fontSize = 15; GUIStyle LabelStyle = new GUIStyle("label"); NameData NData = NameDatabase.FindInDatabase(InId); if (NData != null) { string Str = NData.DisplayName; NetworkJudgeData NJData = GetJudgeDataFromNameId(InRData, NData.Id); //Debug.Log(" asdf: " + InRData.AIJudgeIds[0] + " " + NData.Id + " " + InId); if (NJData != null) { if (NJData.bJudging) { JudgeStyle.normal.textColor = Color.yellow; Str += " - JUDGING"; } else if (NJData.bLocked) { JudgeStyle.normal.textColor = Color.green; Str += " - LOCKED"; } else if (NJData.bIsHoldReady) { JudgeStyle.normal.textColor = Color.green; Str += " - READY"; } else if (NJData.bEditing) { JudgeStyle.normal.textColor = Color.yellow; Str += " - EDITING"; } else { JudgeStyle.normal.textColor = Color.red; Str += " - NOT READY"; } } else { JudgeStyle.normal.textColor = LabelStyle.normal.textColor; Str += " - NOT CONNECTED"; } GUILayout.Label(Str, JudgeStyle); } }
void FinishSendNamesRPC() { bGettingNames = false; try { using (Stream stream = Global.GenerateStreamFromString(NamesBuilderString)) Global.AllNameData = NameDatabase.Load(stream); } catch (Exception e) { Debug.Log("Exception in FinishSendNamesRPC: " + e.Message); } //Debug.Log(" finished: "); }
public static HeroInstance GenerateHero(int level, HeroType heroType) { HeroInstance newHero = new HeroInstance(); newHero.DisplayName = NameDatabase.GetHeroName(); newHero.Experience = HeroUtility.GetTotalExperienceRequiredForLevel(level); newHero.HeroType = heroType; for (int i = 0; i < Random.Range(0, 4); i++) { newHero.Traits.Add(DataFetcher.HeroTraits.traits.GetRandom()); } return(newHero); }
string GetBackupDisplayString(BackupDiffData bd) { if (bd.Data == null) { Debug.Log(String.Format(" {0}, {1}, {2} ", bd != null, bd != null && bd.Data != null, bd != null && bd.Data != null ? (int)bd.Data.Pool : 0)); } TeamData td = Global.GetTeamData(bd.Data.Division, bd.Data.Round, bd.Data.Pool, bd.Data.Team); string TeamName = td != null ? td.PlayerNames : "Missing Team"; NameData JudgeNameData = NameDatabase.FindInDatabase(bd.Data.JudgeNameId); string JudgeName = JudgeNameData != null ? JudgeNameData.DisplayName : "Missing Judge"; string BackupStr = JudgeName + " " + bd.Data.Division.ToString() + " " + bd.Data.Round.ToString() + " " + (char)(bd.Data.Pool + 'A') + " | " + TeamName + " | " + bd.WrittenTime.ToString(); return(BackupStr); }
void requestNames(NetworkMessageInfo info) { Debug.Log("requestNames received from " + info); foreach (string key in NameDatabase.getKeys()) { //Register other users Debug.Log("Sent name= " + NameDatabase.getName(key) + ", key = " + key); if (Network.isServer && key == Network.player.guid) { networkView.RPC("registerName", info.sender, NameDatabase.getName(key), ""); } else { networkView.RPC("registerName", info.sender, NameDatabase.getName(key), key); } } }
public static GameItem GenerateItem( GameItemTypes type = GameItemTypes.UNKNOWN, GameItemRarity rarity = GameItemRarity.UNKNOWN, float quality = 0.5f) { if (type == GameItemTypes.UNKNOWN) { type = EnumUtility.GetRandomEnumValue <GameItemTypes>(1); } if (rarity == GameItemRarity.UNKNOWN) { rarity = EnumUtility.GetRandomEnumValue <GameItemRarity>(1); } GameItem newItem = new GameItem(type, rarity, quality); newItem.DisplayName = NameDatabase.GetItemName(newItem); newItem.BaseAttackPower = Random.Range(1f, 3f); newItem.BaseDefencePower = Random.Range(1f, 3f); return(newItem); }
public static HeroInstance GenerateHero(QuestSourceFaction faction, int level, bool addToRoster) { HeroInstance newHero = new HeroInstance(); newHero.DisplayName = NameDatabase.GetHeroName(); //newHero.Nickname = UnityEngine.Random.Range(0, 4) == 0 ? NameDatabase.GetCompoundName() : ""; newHero.Class = EnumUtility.GetRandomEnumValue <HeroClasses>(); newHero.Experience = HeroUtility.GetTotalExperienceRequiredForLevel(level); newHero.EquipmentLevel = UnityEngine.Random.Range(1, 10); newHero.HeroState = HeroStates.IDLE; Dictionary <QuestTypes, float> tempQuestValues = new Dictionary <QuestTypes, float>(); float tempQuestValuesTotal = 0; foreach (QuestTypes questType in Enum.GetValues(typeof(QuestTypes))) { tempQuestValues.Add(questType, UnityEngine.Random.Range(0f, 10f)); tempQuestValuesTotal = tempQuestValues[questType]; } foreach (QuestTypes questType in Enum.GetValues(typeof(QuestTypes))) { newHero.QuestTypePreferences[questType] = (tempQuestValues[questType] / tempQuestValuesTotal).Map(0, 1, 0.6f, 1.25f); } float offset = 0.25f; newHero.QuestPrefRewardGold = UnityEngine.Random.Range(0f, 1f); newHero.QuestPrefRewardItem = 1 - newHero.QuestPrefRewardGold; newHero.QuestPrefRewardGold += offset; newHero.QuestPrefRewardItem += offset; if (addToRoster) { HeroManager.AddHero(newHero, faction); } return(newHero); }
// Update is called once per frame public void Update() { UpdateQuitGesture(); Global.NetObj.UpdateUdpListener(); Global.NetObj.UpdateClientJudgeState(); if (bIsJudging && HeaderDrawer.RoutineTime / 60f >= GetRoutineLengthMinutes()) { bRoutineTimeEnded = true; } TestReadyTimer -= Time.deltaTime; if (Global.AllData == null || Global.AllNameData == null) { return; } if (CurPool != EPool.None) { int NameId = GetJudgeNameId(); if (NameId != -1) { HeaderDrawer.JudgeName = NameDatabase.FindInDatabase(NameId).DisplayName; } } HeaderDrawer.DivisionString = CurDivision.ToString(); HeaderDrawer.RoutineTime = bIsJudging ? (float)(DateTime.Now - RoutineStartTime).TotalSeconds : 0; HeaderDrawer.bShowReadyButton = bHeadJudgeRequestingReady && !bLockedForJudging && !bRoutineTimeEnded && !bClientReadyToBeLocked; HeaderDrawer.bShowFinishedButton = bRoutineTimeEnded; HeaderDrawer.WaitingForJudgesCount = WaitingForJudgesCount; HeaderDrawer.bShowWaitingForJudges = WaitingForJudgesCount > 0 && !bLockedForJudging && !bIsJudging && !HeaderDrawer.bShowFinishedButton && !HeaderDrawer.bShowReadyButton && !bIsEditing; bIsDataDirty = false; }
public static NameDatabase Load(string Filename) { if (!File.Exists(Filename)) { return(null); } NameDatabase LoadedData = null; try { XmlSerializer serializer = new XmlSerializer(typeof(NameDatabase)); FileStream stream = new FileStream(Filename, FileMode.Open); LoadedData = serializer.Deserialize(stream) as NameDatabase; stream.Close(); } catch (IOException e) { Debug.Log("Loading exception: " + e.Message); } return(LoadedData); }
public string GetResultsString(int InResultIndex, ECategoryView InCat, bool bInIncludeName, List <RoutineScoreData> sortedScores) { switch (InCat) { case ECategoryView.AI: if (InResultIndex < AIResults.Count) { return(System.String.Format((bInIncludeName ? "{6}: " : "") + "V: {0:0.0} T: {1:0.0} M: {2:0.0} Fw: {3:0.0} Fm: {4:0.0} G: {5:0.0} Total: {7:0.00}", AIResults[InResultIndex].Variety, AIResults[InResultIndex].Teamwork, AIResults[InResultIndex].Music, AIResults[InResultIndex].Flow, AIResults[InResultIndex].Form, AIResults[InResultIndex].General, NameDatabase.FindInDatabase(AIResults[InResultIndex].JudgeNameId).DisplayName, AIResults[InResultIndex].GetTotalPoints())); } break; case ECategoryView.Ex: if (InResultIndex < ExResults.Count) { return(System.String.Format((bInIncludeName ? "{4}: " : "") + ".1: {0} .2: {1} .3: {2} .5: {3} Total: {5:0.00}", ExResults[InResultIndex].Point1Count, ExResults[InResultIndex].Point2Count, ExResults[InResultIndex].Point3Count, ExResults[InResultIndex].Point5Count, NameDatabase.FindInDatabase(ExResults[InResultIndex].JudgeNameId).DisplayName, ExResults[InResultIndex].GetTotalPoints())); } break; case ECategoryView.Diff: if (InResultIndex < DiffResults.Count) { string Ret = bInIncludeName ? NameDatabase.FindInDatabase(DiffResults[InResultIndex].JudgeNameId).DisplayName + ": " : ""; for (int i = 0; i < DiffResults[InResultIndex].NumScores; ++i) { Ret += DiffResults[InResultIndex].DiffScores[i].ToString("0.0") + DiffResults[InResultIndex].GetConsecString(i) + ((i < DiffResults[InResultIndex].NumScores - 1) ? ", " : ""); } Ret += " Total: " + DiffResults[InResultIndex].GetTotalPoints().ToString("0.00"); return(Ret); } break; case ECategoryView.Overview: { string Ret = ""; float AIPoints = 0; foreach (AIData aid in AIResults) { AIPoints += aid.GetTotalPoints(); Ret += " AI: " + aid.GetTotalPoints().ToString("0.00"); } float ExPoints = 0; foreach (ExData exd in ExResults) { ExPoints += exd.GetTotalPoints(); Ret += " Ex: " + exd.GetTotalPoints().ToString("0.00"); } float DiffPoints = 0; foreach (DiffData dd in DiffResults) { DiffPoints += dd.GetTotalPoints(); Ret += " Diff: " + dd.GetTotalPoints().ToString("0.00"); } float TotalPoints = AIPoints + ExPoints + DiffPoints; if (TotalPoints > 0) { int resultIndex = 0; if (sortedScores != null) { foreach (RoutineScoreData score in sortedScores) { if (score == this) { break; } ++resultIndex; } } Ret += " Totals: Diff: " + DiffPoints.ToString("0.00") + " AI: " + AIPoints.ToString("0.00") + " Ex: " + ExPoints.ToString("0.00") + " All: " + TotalPoints.ToString("0.00") + " Place: " + (resultIndex + 1); } return(Ret); } } return(""); }
public Game() { GameClock.currentTime = GameSettings.gameStartDate; NameDatabase.createNameDatabase(); }
void OnGUI() { bool bRepaintUpdate = Event.current.ToString() == "Repaint"; if (GUI.Button(new Rect(Screen.width - 150, Screen.height - 150, 150, 150), "Save")) { Global.AllData.Save(); } float StartSelectY = 30; float SelectHeight = 30; DivisionCombo.Draw(new Rect(20, StartSelectY, Screen.width * .18f, SelectHeight)); RoundCombo.Draw(new Rect(20 + Screen.width * .2f, StartSelectY, Screen.width * .18f, SelectHeight)); GUILayout.BeginArea(new Rect(20 + Screen.width * .4f, StartSelectY, Screen.width - Screen.width * .4f - 40, SelectHeight)); GUILayout.BeginHorizontal(); List <PoolData> Pools = Global.AllData.AllDivisions[DivisionCombo.GetSelectedItemIndex()].Rounds[RoundCombo.GetSelectedItemIndex()].Pools; for (int PoolIndex = 0; PoolIndex < Pools.Count; ++PoolIndex) { DrawPoolButton("Pool: " + Pools[PoolIndex].PoolName, PoolIndex, SelectHeight); } GUILayout.EndHorizontal(); GUILayout.EndArea(); float RightRectStartY = Screen.height * .02f + SelectHeight + StartSelectY; Rect RightRect = new Rect(20, RightRectStartY, Screen.width * .3f, Screen.height - RightRectStartY - 20); Rect LeftRect = new Rect(RightRect.x + RightRect.width + Screen.width * .1f, RightRect.y, RightRect.width, Screen.height * .5f); if (CurPoolButtonIndex != -1) { ResultsData RData = TournamentData.FindResultsData((EDivision)DivisionCombo.GetSelectedItemIndex(), (ERound)RoundCombo.GetSelectedItemIndex(), (EPool)CurPoolButtonIndex); if (RData == null) { RData = new ResultsData((EDivision)DivisionCombo.GetSelectedItemIndex(), (ERound)RoundCombo.GetSelectedItemIndex(), (EPool)CurPoolButtonIndex); Pools[CurPoolButtonIndex].JudgersId = RData.Id; Global.AllData.ResultsList.Add(RData); } else if (Pools[CurPoolButtonIndex].JudgersId == -1) { if (RData.Id == -1) { RData.Id = ResultsData.GetUniqueId(); } Pools[CurPoolButtonIndex].JudgersId = RData.Id; } if (RData != null && Global.AllNameData.AllJudges != null) { GUILayout.BeginArea(RightRect); RightScroll = GUILayout.BeginScrollView(RightScroll); GUILayout.BeginVertical(); string NewFilterStr = GUILayout.TextField(JudgeFilterStr); if (NewFilterStr != JudgeFilterStr || AvailableJudges.Count == 0) { JudgeFilterStr = NewFilterStr; AvailableJudges.Clear(); foreach (NameData pd in Global.AllNameData.AllJudges) { if (!IsPlayingInPool(pd, RData) && !RData.ContainsPlayer(pd)) { AvailableJudges.Add(pd); } } FilterAvailableJudges(JudgeFilterStr, ref AvailableJudges); } GUILayout.Space(20); GUIStyle LabelStyle = new GUIStyle("label"); GUIStyle PlayerStyle = new GUIStyle("label"); PlayerStyle.alignment = TextAnchor.MiddleLeft; foreach (NameData nd in AvailableJudges) { bool bMoving = MovingNameId == nd.Id; PlayerStyle.normal.textColor = bMoving ? Color.grey : LabelStyle.normal.textColor; GUIContent PlayerCont = new GUIContent(nd.DisplayName); Vector2 PlayerSize = PlayerStyle.CalcSize(PlayerCont); if (GUILayout.RepeatButton(PlayerCont, PlayerStyle, GUILayout.Width(RightRect.width * .9f), GUILayout.Height(PlayerSize.y))) { MovingNameId = nd.Id; } } GUILayout.EndVertical(); GUILayout.EndScrollView(); GUILayout.EndArea(); // Left Rect ------------ GUILayout.BeginArea(LeftRect); GUILayout.BeginVertical(); GUIStyle JudgeStyle = new GUIStyle("label"); JudgeStyle.alignment = TextAnchor.MiddleLeft; GUILayout.BeginVertical(); GUILayout.Label("AI Judges:", JudgeStyle); for (int PlayerIndex = 0; PlayerIndex < Mathf.Max(RData.AIJudgeIds.Count, 3); ++PlayerIndex) { int PlayerId = -1; bool bMoving = false; string PlayerStr = PlayerIndex < 3 ? (PlayerIndex + 1) + ". " : ""; if (PlayerIndex < RData.AIJudgeIds.Count) { PlayerId = RData.AIJudgeIds[PlayerIndex]; bMoving = PlayerId == MovingNameId; PlayerStr += NameDatabase.FindInDatabase(PlayerId).DisplayName; } JudgeStyle.normal.textColor = bMoving ? Color.grey : LabelStyle.normal.textColor; GUIContent JudgeCont = new GUIContent(PlayerStr); Vector2 JudgeSize = JudgeStyle.CalcSize(JudgeCont); if (GUILayout.RepeatButton(JudgeCont, JudgeStyle, GUILayout.Width(LeftRect.width * .6f), GUILayout.Height(JudgeSize.y)) && PlayerIndex < RData.AIJudgeIds.Count) { MovingNameId = PlayerId; } } GUILayout.EndVertical(); if (bRepaintUpdate) { JudgeRects[0] = GUILayoutUtility.GetLastRect(); JudgeRects[0].x = LeftRect.x; JudgeRects[0].y = LeftRect.y; } GUILayout.BeginVertical(); GUILayout.Label("Ex Judges:", JudgeStyle); for (int PlayerIndex = 0; PlayerIndex < Mathf.Max(RData.ExJudgeIds.Count, 3); ++PlayerIndex) { int PlayerId = -1; bool bMoving = false; string PlayerStr = PlayerIndex < 3 ? (PlayerIndex + 1) + ". " : ""; if (PlayerIndex < RData.ExJudgeIds.Count) { PlayerId = RData.ExJudgeIds[PlayerIndex]; bMoving = PlayerId == MovingNameId; PlayerStr += NameDatabase.FindInDatabase(PlayerId).DisplayName; } JudgeStyle.normal.textColor = bMoving ? Color.grey : LabelStyle.normal.textColor; GUIContent JudgeCont = new GUIContent(PlayerStr); Vector2 JudgeSize = JudgeStyle.CalcSize(JudgeCont); if (GUILayout.RepeatButton(JudgeCont, JudgeStyle, GUILayout.Width(LeftRect.width * .6f), GUILayout.Height(JudgeSize.y)) && PlayerIndex < RData.ExJudgeIds.Count) { MovingNameId = PlayerId; } } GUILayout.EndVertical(); if (bRepaintUpdate) { JudgeRects[1] = GUILayoutUtility.GetLastRect(); JudgeRects[1].x += LeftRect.x; JudgeRects[1].y += LeftRect.y; } GUILayout.BeginVertical(); GUILayout.Label("Diff Judges:", JudgeStyle); for (int PlayerIndex = 0; PlayerIndex < Mathf.Max(RData.DiffJudgeIds.Count, 3); ++PlayerIndex) { int PlayerId = -1; bool bMoving = false; string PlayerStr = PlayerIndex < 3 ? (PlayerIndex + 1) + ". " : ""; if (PlayerIndex < RData.DiffJudgeIds.Count) { PlayerId = RData.DiffJudgeIds[PlayerIndex]; bMoving = PlayerId == MovingNameId; PlayerStr += NameDatabase.FindInDatabase(PlayerId).DisplayName; } JudgeStyle.normal.textColor = bMoving ? Color.grey : LabelStyle.normal.textColor; GUIContent JudgeCont = new GUIContent(PlayerStr); Vector2 JudgeSize = JudgeStyle.CalcSize(JudgeCont); if (GUILayout.RepeatButton(JudgeCont, JudgeStyle, GUILayout.Width(LeftRect.width * .6f), GUILayout.Height(JudgeSize.y)) && PlayerIndex < RData.DiffJudgeIds.Count) { MovingNameId = PlayerId; } } GUILayout.EndVertical(); if (bRepaintUpdate) { JudgeRects[2] = GUILayoutUtility.GetLastRect(); JudgeRects[2].x += LeftRect.x; JudgeRects[2].y += LeftRect.y; } GUILayout.EndVertical(); GUILayout.EndArea(); if (MovingNameId != -1) { GUI.Label(new Rect(Input.mousePosition.x, Screen.height - Input.mousePosition.y, 500, 30), NameDatabase.FindInDatabase(MovingNameId).DisplayName); } } } float BottomRectX = RightRect.x + RightRect.width + 20; float BottomRectY = LeftRect.y + LeftRect.height; GUILayout.BeginArea(new Rect(BottomRectX, BottomRectY, Screen.width - BottomRectX - 170, Screen.height - BottomRectY - 20)); GUILayout.Label("All Judges Names"); AllJudgesTextScrollPos = GUILayout.BeginScrollView(AllJudgesTextScrollPos); string NewAllJudgesString = GUILayout.TextArea(AllJudgesString); if (NewAllJudgesString != AllJudgesString) { AllJudgesString = NewAllJudgesString; AvailableJudges.Clear(); Global.AllNameData.AllJudges.Clear(); StringReader reader = new StringReader(AllJudgesString); string line = null; while ((line = reader.ReadLine()) != null) { AddJudgersFromString(line); } Global.AllNameData.Save(); } GUILayout.EndScrollView(); GUILayout.EndArea(); }
void ExportScheduleToExcel() { if (CurDivIndex != -1 && CurRoundIndex != -1 && File.Exists(ExcelPath)) { StringWriter OutStr = new StringWriter(); OutStr.WriteLine((EDivision)(CurDivIndex) + " - " + (ERound)(CurRoundIndex) + "\t\tJudges"); List <PoolData> Pools = Global.AllData.AllDivisions[CurDivIndex].Rounds[CurRoundIndex].Pools; int PoolIndex = 0; foreach (PoolData pd in Pools) { OutStr.WriteLine("Pool " + pd.PoolName + "\t\tAI\tEx\tDiff"); ResultsData JData = TournamentData.FindResultsData((EDivision)CurDivIndex, (ERound)CurRoundIndex, (EPool)PoolIndex); int TeamNum = 0; foreach (TeamDataDisplay tdd in pd.Teams) { ++TeamNum; OutStr.Write(TeamNum + ": " + tdd.Data.PlayerNames + "\t\t"); if (JData != null) { int NameId = JData.GetNameId(ECategory.AI, TeamNum - 1); if (NameId != -1) { OutStr.Write(NameDatabase.FindInDatabase(NameId).DisplayName); } OutStr.Write("\t"); NameId = JData.GetNameId(ECategory.Ex, TeamNum - 1); if (NameId != -1) { OutStr.Write(NameDatabase.FindInDatabase(NameId).DisplayName); } OutStr.Write("\t"); NameId = JData.GetNameId(ECategory.Diff, TeamNum - 1); if (NameId != -1) { OutStr.Write(NameDatabase.FindInDatabase(NameId).DisplayName); } OutStr.WriteLine("\t"); } } OutStr.WriteLine(); ++PoolIndex; } int TempNum = 0; string TempFilePath = Application.persistentDataPath + "/TempExcelStr.txt"; if (File.Exists(TempFilePath)) { bool bDeletedFile = false; while (!bDeletedFile) { try { File.Delete(TempFilePath); bDeletedFile = true; } catch { TempFilePath = Application.persistentDataPath + "/TempExcelStr-" + TempNum++ + ".txt"; } } } StreamWriter TempFile = new StreamWriter(TempFilePath); TempFile.Write(OutStr.ToString()); TempFile.Close(); OutStr.Close(); TempFilePath = TempFilePath.Replace('/', '\\'); Process.Start(ExcelPath, "\"" + TempFilePath + "\""); } }