public static void DrawInGameRecapCard(FileTraceManagment.SessionStats Current_session, LogFileManagment.SessionVariables session, Dictionary <string, Dictionary <string, Translate.Translation> > translation, bool draw) { OverlayWriter writer = new OverlayWriter(Current_session.TwitchSettings.OverlayFormat); if (draw) { AssignCurrentMatch(Current_session, session, writer, translation); } writer.WriteToFile(Current_session.FileData.StreamOverlayOutputLocation + @"\in_game_report"); }
public static void DrawStatCard(FileTraceManagment.SessionStats currentSession, LogFileManagment.SessionVariables session, Dictionary <string, Dictionary <string, Translate.Translation> > translation, bool draw) { OverlayWriter writer = new OverlayWriter(currentSession.TwitchSettings.OverlayFormat); if (draw) { if (currentSession.TwitchSettings.ShowStats) { AssignStats(currentSession, writer, translation, currentSession.MatchHistory.FirstOrDefault().MatchData.MatchTypeDesc); } if (currentSession.TwitchSettings.ShowRevenue) { AssignRevenue(currentSession, session, writer, translation); } if (currentSession.TwitchSettings.ShowNemesis || currentSession.TwitchSettings.ShowVictims) { AssignNemesisVictim(currentSession, writer, translation); } } writer.WriteToFile(currentSession.FileData.StreamOverlayOutputLocation + @"\gamemode_recap_card"); }
public static void DrawTeamPreviewCard(FileTraceManagment.SessionStats currentSession, LogFileManagment.SessionVariables session, Dictionary <string, Dictionary <string, Translate.Translation> > translation, bool draw) { OverlayWriter writerBlue = new OverlayWriter(currentSession.TwitchSettings.OverlayFormat); OverlayWriter writerRed = new OverlayWriter(currentSession.TwitchSettings.OverlayFormat); if (draw && currentSession.CurrentMatch.PlayerRecords.Any(x => x.Value.PartyID != 0)) { Random random_number = new Random(); FileTraceManagment.MatchData current_match = currentSession.CurrentMatch; if (!current_match.PlayerRecords.ContainsKey(currentSession.LocalUserUID)) { return; } Dictionary <int, List <string> > blue_teams = new Dictionary <int, List <string> > { }; Dictionary <int, List <string> > red_teams = new Dictionary <int, List <string> > { }; blue_teams.Add(current_match.PlayerRecords[currentSession.LocalUserUID].PartyID, new List <string> { current_match.PlayerRecords[currentSession.LocalUserUID].Nickname }); foreach (KeyValuePair <int, FileTraceManagment.Player> player in current_match.PlayerRecords.ToList()) { if (player.Value.PartyID == 0 || player.Value.Nickname == current_match.PlayerRecords[currentSession.LocalUserUID].Nickname) { continue; } if (player.Value.Team != current_match.PlayerRecords[currentSession.LocalUserUID].Team) { if (!red_teams.ContainsKey(player.Value.PartyID)) { red_teams.Add(player.Value.PartyID, new List <string> { player.Value.Nickname }); } else { red_teams[player.Value.PartyID].Add(player.Value.Nickname); } } else { if (!blue_teams.ContainsKey(player.Value.PartyID)) { blue_teams.Add(player.Value.PartyID, new List <string> { player.Value.Nickname }); } else { blue_teams[player.Value.PartyID].Add(player.Value.Nickname); } } } //TODO separate methods for css purposes foreach (KeyValuePair <int, List <string> > team in blue_teams) { writerBlue.AddLine(string.Format("{0}", string.Join(",", team.Value)), "player blue_player"); } foreach (KeyValuePair <int, List <string> > team in red_teams) { writerRed.AddLine(string.Format("{0}", string.Join(",", team.Value)), "player red_player"); } } writerBlue.WriteToFile(currentSession.FileData.StreamOverlayOutputLocation + @"\blue_team_squads"); writerRed.WriteToFile(currentSession.FileData.StreamOverlayOutputLocation + @"\red_team_squads"); }