// Token: 0x060010BA RID: 4282 RVA: 0x000166C8 File Offset: 0x000148C8 public static PlayerMatchStats Deserialize(Stream bytes) { int num = Int32Proxy.Deserialize(bytes); PlayerMatchStats playerMatchStats = new PlayerMatchStats(); playerMatchStats.Cmid = Int32Proxy.Deserialize(bytes); playerMatchStats.Death = Int32Proxy.Deserialize(bytes); playerMatchStats.HasFinishedMatch = BooleanProxy.Deserialize(bytes); playerMatchStats.HasWonMatch = BooleanProxy.Deserialize(bytes); playerMatchStats.Headshots = Int32Proxy.Deserialize(bytes); playerMatchStats.Hits = Int64Proxy.Deserialize(bytes); playerMatchStats.Kills = Int32Proxy.Deserialize(bytes); playerMatchStats.Nutshots = Int32Proxy.Deserialize(bytes); if ((num & 1) != 0) { playerMatchStats.PersonalRecord = PlayerPersonalRecordStatisticsViewProxy.Deserialize(bytes); } playerMatchStats.Shots = Int64Proxy.Deserialize(bytes); playerMatchStats.Smackdowns = Int32Proxy.Deserialize(bytes); playerMatchStats.TimeSpentInGame = Int32Proxy.Deserialize(bytes); if ((num & 2) != 0) { playerMatchStats.WeaponStatistics = PlayerWeaponStatisticsViewProxy.Deserialize(bytes); } return(playerMatchStats); }
public static PlayerMatchStats[] CreateMatchStatsFromConfig(MatchConfig config) { var players = new PlayerMatchStats[config.PlayerCount]; for (uint i = 0; i < players.Length; i++) { players[i].Config = config.PlayerConfigs[i]; } return(players); }
MatchResult CreateResult(MatchState state) { var players = new PlayerMatchStats[state.PlayerCount]; for (uint i = 0; i < players.Length; i++) { players[i].Config = MatchConfig.PlayerConfigs[i]; } return(new MatchResult { PlayerStats = players }); }
// Token: 0x060010B9 RID: 4281 RVA: 0x000165BC File Offset: 0x000147BC public static void Serialize(Stream stream, PlayerMatchStats instance) { int num = 0; using (MemoryStream memoryStream = new MemoryStream()) { Int32Proxy.Serialize(memoryStream, instance.Cmid); Int32Proxy.Serialize(memoryStream, instance.Death); BooleanProxy.Serialize(memoryStream, instance.HasFinishedMatch); BooleanProxy.Serialize(memoryStream, instance.HasWonMatch); Int32Proxy.Serialize(memoryStream, instance.Headshots); Int64Proxy.Serialize(memoryStream, instance.Hits); Int32Proxy.Serialize(memoryStream, instance.Kills); Int32Proxy.Serialize(memoryStream, instance.Nutshots); if (instance.PersonalRecord != null) { PlayerPersonalRecordStatisticsViewProxy.Serialize(memoryStream, instance.PersonalRecord); } else { num |= 1; } Int64Proxy.Serialize(memoryStream, instance.Shots); Int32Proxy.Serialize(memoryStream, instance.Smackdowns); Int32Proxy.Serialize(memoryStream, instance.TimeSpentInGame); if (instance.WeaponStatistics != null) { PlayerWeaponStatisticsViewProxy.Serialize(memoryStream, instance.WeaponStatistics); } else { num |= 2; } Int32Proxy.Serialize(stream, ~num); memoryStream.WriteTo(stream); } }
public void Initialise(GameMode gamemode, PlayerMatchStats playerMatchStats) { panelBackgroundImage.color = GameManager.instance.playerColours[playerMatchStats.playerNumber - 1]; playerNumberText.text = "Player " + playerMatchStats.playerNumber.ToString(); switch (gamemode) { case GameMode.FreeForAll: playerPointsText.text = "Total Round Wins: " + playerMatchStats.roundWins; roundWinsText.text = ""; break; case GameMode.Elimination: break; case GameMode.Extraction: playerPointsText.text = "Total Points: " + playerMatchStats.points; roundWinsText.text = "Total Round Wins: " + playerMatchStats.roundWins + playerMatchStats.extractions; break; case GameMode.Climb: break; default: break; } playerKillsText.text = "Total Player Kills: " + playerMatchStats.playerKills; aiKillsText.text = "Total AI Kills: " + playerMatchStats.aiKills; if (playerMatchStats.bulletsFired == 0) { accuracyText.text = "Accuracy: N/A"; } else { float accuracy = (((float)playerMatchStats.bulletsHit / (float)playerMatchStats.bulletsFired) * 100); accuracyText.text = "Accuracy: " + accuracy.ToString("F1") + "%"; } achievements = GameManager.instance.achievementChecker.GetAchievements(playerMatchStats.playerNumber); IListExtensions.Shuffle <Achievements>(achievements); indexes = new int[achievementParents.Length]; for (int i = 0; i < indexes.Length; i++) { indexes[i] = i; } foreach (var item in achievementParents) { item.SetActive(false); } if (achievements == null) { return; } if (achievements.Count >= achievementParents.Length) { for (int i = 0; i < achievementParents.Length; i++) { achievementParents[i].SetActive(true); achievementTexts[i].text = achievements[i].achievementName; achievementSprites[i].sprite = achievements[i].sprite; SetBorder(i, i); } StartCoroutine("NextSlide"); } else { for (int i = 0; i < achievements.Count; i++) { achievementParents[i].SetActive(true); achievementTexts[i].text = achievements[i].achievementName; achievementSprites[i].sprite = achievements[i].sprite; SetBorder(i, i); } } }
public static void DbFill(ServerContext context) { if (context.Servers.Any()) { return; } for (int i = 0; i < 6; i++) { GameMode gameMode = new GameMode { Name = RandomText(5).ToUpper() }; context.GameMods.Add(gameMode); } for (int i = 0; i < 30; i++) { Map map = new Map { Name = RandomText(12), Matches = new List <Match>() }; context.Maps.Add(map); } context.SaveChanges(); //--------------- //for(int i = 0; i < 200 + random.Next(301); i++) //{ // PlayerStats ps = new PlayerStats(); // ps.Name = RandomText(10); // context.PlayersStats.Add(ps); //} //--------------- for (int i = 0; i < 5; i++) { Models.Server server = new Models.Server { Endpoint = RandomText(12), Matches = new List <Match>() }; Info info = new Info { Name = RandomText(6) }; float chance; foreach (var player in context.PlayersStats) { chance = 0; if (player.UniqueServers == 5) { continue; } chance = random.Next(100) + 1; chance /= player.UniqueServers; if (chance <= 50) { continue; } //else if ((chance > 50) || (i == 5 && player.UniqueServers == 0)) { ServerPlayerStats sps = new ServerPlayerStats { Server = server, PlayerStats = player }; player.ServersPlayed.Add(sps); context.ServerPlayerStats.Add(sps); } } info.Server = server; server.Info = info; context.Servers.Add(server); context.Info.Add(info); context.SaveChanges(); var igms = new List <InfoGameMode>(); for (int j = 0; j < random.Next(6) + 1; j++) { InfoGameMode igm = new InfoGameMode { Info = context.Info.ToArray()[i], GameMode = context.GameMods.ToArray()[j] }; igms.Add(igm); context.InfoGameMods.Add(igm); context.Info.ToArray()[i].InfoGameMods.Add(igm); context.GameMods.ToArray()[j].InfoGameMods.Add(igm); } context.SaveChanges(); for (int j = 0; j < random.Next(10) + 1; j++) { var serverMatch = context.Servers.Last(); var igmsMatch = context .InfoGameMods .Where(igm => igm.Info.Server.Endpoint == serverMatch.Endpoint) .ToArray(); var gmMatch = igmsMatch[random.Next(igmsMatch.Length)].GameMode; int timeLimit = random.Next(100); var maps = context.Maps.ToArray(); var map = maps[random.Next(maps.Length)]; Match match = new Match(); match.ScoreBoard = new List <PlayerMatchStats>(); match.MapDb = map; match.GameModeDb = gmMatch; DateTime startDate = DateTime.Now - new TimeSpan(3650, 0, 0, 0); TimeSpan timeSpan = new TimeSpan(random.Next(3650), 0, 0, 0); match.TimeStamp = startDate + timeSpan; match.FragLimit = random.Next(100); match.TimeLimit = timeLimit; match.TimeElapsed = timeLimit - random.Next(timeLimit); gmMatch.Matches.Add(match); map.Matches.Add(match); serverMatch.Matches.Add(match); match.Server = serverMatch; for (int k = 0; k < random.Next(30); k++) { PlayerMatchStats pms = new PlayerMatchStats(); pms.Name = RandomText(10); pms.Kills = random.Next(100); pms.Frags = pms.Kills - random.Next(pms.Kills); pms.Deaths = random.Next(100); pms.Match = match; match.ScoreBoard.Add(pms); context.PlayersMatchStats.Add(pms); } context.Matches.Add(match); context.SaveChanges(); //---------------- //var serverPlayers = context.PlayersStats // .Where(ps => ps.ServersPlayed // .Any(s => s.ServerId == i) // ); //var matchPlayerStats = context.Matches.Last(); //List<PlayerMatchStats> pmss = new List<PlayerMatchStats>(); //int kills = 0; //int deaths = 0; //for (int k = 0; k < random.Next(50) + 1; k++) //{ // var player = serverPlayers.ToArray() // [random // .Next(serverPlayers.Count()) // ]; // if(pmss.Any(pms => pms.Name == player.Name)) // { // k--; // continue; // } // PlayerMatchStats playerMatchStats = new PlayerMatchStats(); // playerMatchStats.Name = player.Name; // kills = random.Next(100); // deaths = random.Next(100); // playerMatchStats.Kills = kills; // player.Kills += kills; // playerMatchStats.Deaths = deaths; // player.Deaths += deaths; // playerMatchStats.Frags = kills - random.Next(kills); // //matchPlayerStats.ScoreBoard.Add(playerMatchStats); // //playerMatchStats.Match = matchPlayerStats; // //context.SaveChanges(); //} //--------------- } context.SaveChanges(); } }