public MatchPlayerBase(IInternalService internalService, IWebsiteService website, ReplayMatchPlayer player) { Database = internalService.Database; HeroesIcons = internalService.HeroesIcons; UserProfile = internalService.UserProfile; Website = website; Player = player; }
public PlayerNotesWindow(ReplayMatchPlayer player) { InitializeComponent(); PlayerNotesWindowViewModel = (PlayerNotesWindowViewModel)DataContext; Database = PlayerNotesWindowViewModel.GetDatabaseService; ReplayMatchPlayer = player; LoadPlayerNotes(); }
public void SetStats(ReplayMatchPlayerScoreResult playerScore, ReplayMatchPlayer player) { SoloKills = playerScore.SoloKills; Assists = playerScore.Assists; Deaths = playerScore.Deaths; SiegeDamage = playerScore.SiegeDamage; HeroDamage = playerScore.HeroDamage; HealingRole = IsHealingStatCharacter(player.Character) ? playerScore.Healing : null; DamageTaken = playerScore.DamageTaken; ExperienceContribution = playerScore.ExperienceContribution; }
public MatchPlayerBase(IInternalService internalService, IWebsiteService website, ReplayMatchPlayer player) { Database = internalService.Database; HeroesIcons = internalService.HeroesIcons; UserProfile = internalService.UserProfile; Website = website; Player = player; SilenceIcon = HeroesIcons.GetOtherIcon(OtherIcon.Silence); TalentBorderScoreScreenIcon = HeroesIcons.GetOtherIcon(OtherIcon.TalentAvailable); }
public void SetStats(ReplayMatchPlayerScoreResult playerScore, ReplayMatchPlayer player) { SoloKills = playerScore.SoloKills; Assists = playerScore.Assists; Deaths = playerScore.Deaths; SiegeDamage = playerScore.SiegeDamage; HeroDamage = playerScore.HeroDamage; HealingRole = playerScore.Healing; SelfHealing = playerScore.SelfHealing; DamageTaken = playerScore.DamageTaken; ExperienceContribution = playerScore.ExperienceContribution; }
public MatchPlayerBase(IInternalService internalService, IWebsiteService website, ReplayMatchPlayer player, int build) { Database = internalService.Database; HeroesIcons = internalService.HeroesIcons; UserProfile = internalService.UserProfile; Website = website; Player = player; Build = build; SilenceIcon = ImageStreams.OtherIconImage(OtherIcon.Silence); VoiceSilenceIcon = ImageStreams.OtherIconImage(OtherIcon.VoiceSilence); TalentBorderScoreScreenIcon = ImageStreams.OtherIconImage(OtherIcon.TalentAvailable); BoostIcon = ImageStreams.OtherIconImage(OtherIcon.Boost); }
public MatchPlayerStats(IInternalService internalService, IWebsiteService website, ReplayMatchPlayer player) : base(internalService, website, player) { }
private void PlayerRelatedData() { Player[] players = GetPlayers(); foreach (var player in players.Select((value, index) => new { value, index })) { if (player.value == null) { continue; } ReplayAllHotsPlayer hotsPlayer = new ReplayAllHotsPlayer { BattleTagName = HeroesHelpers.BattleTags.GetBattleTagName(player.value.Name, player.value.BattleTag), BattleNetId = player.value.BattleNetId, BattleNetRegionId = player.value.BattleNetRegionId, BattleNetSubId = player.value.BattleNetSubId, BattleNetTId = player.value.BattleNetTId, AccountLevel = player.value.AccountLevel, LastSeen = Replay.Timestamp, LastSeenBefore = null, Seen = 1, }; long playerId; // check if player is already in the database, update if found, otherwise add a new record if (ReplaysDb.HotsPlayer.IsExistingRecord(ReplaysContext, hotsPlayer)) { playerId = ReplaysDb.HotsPlayer.UpdateRecord(ReplaysContext, hotsPlayer); } else { playerId = ReplaysDb.HotsPlayer.CreateRecord(ReplaysContext, hotsPlayer); } if (player.value.Character == null && Replay.GameMode == Heroes.ReplayParser.GameMode.Custom) { player.value.Team = 4; player.value.Character = "None"; ReplayMatchPlayer replayPlayer = new ReplayMatchPlayer { ReplayId = ReplayId, PlayerId = playerId, Character = player.value.Character, CharacterLevel = player.value.CharacterLevel, Difficulty = player.value.Difficulty.ToString(), Handicap = player.value.Handicap, IsAutoSelect = player.value.IsAutoSelect, IsSilenced = player.value.IsSilenced, IsWinner = player.value.IsWinner, MountAndMountTint = player.value.MountAndMountTint, PartyValue = player.value.PartyValue, PlayerNumber = -1, SkinAndSkinTint = player.value.SkinAndSkinTint, Team = player.value.Team, AccountLevel = player.value.AccountLevel, }; ReplaysDb.MatchPlayer.CreateRecord(ReplaysContext, replayPlayer); } else { string character = HeroesIcons.HeroBuilds().GetRealHeroNameFromHeroUnitName(player.value.HeroUnits.FirstOrDefault().Name); if (string.IsNullOrEmpty(character)) { throw new TranslationException(RetrieveAllMapAndHeroNames()); } ReplayMatchPlayer replayPlayer = new ReplayMatchPlayer { ReplayId = ReplayId, PlayerId = playerId, Character = character, CharacterLevel = player.value.CharacterLevel, Difficulty = player.value.Difficulty.ToString(), Handicap = player.value.Handicap, IsAutoSelect = player.value.IsAutoSelect, IsSilenced = player.value.IsSilenced, IsWinner = player.value.IsWinner, MountAndMountTint = player.value.MountAndMountTint, PartyValue = player.value.PartyValue, PlayerNumber = player.index, SkinAndSkinTint = player.value.SkinAndSkinTint, Team = player.value.Team, AccountLevel = player.value.AccountLevel, }; ReplaysDb.MatchPlayer.CreateRecord(ReplaysContext, replayPlayer); AddScoreResults(player.value.ScoreResult, playerId); AddPlayerTalents(player.value.Talents, playerId, character); AddMatchAwards(player.value.ScoreResult.MatchAwards, playerId); } AddPlayerHeroes(player.value.PlayerCollectionDictionary, playerId); } // end foreach loop for players }
public MatchObserver(IInternalService internalService, IWebsiteService website, ReplayMatchPlayer player, int build) : base(internalService, website, player, build) { }
private void PlayerRelatedData() { Player[] players = GetPlayers(); int playerNum = 0; foreach (Player player in players) { if (player == null) { continue; } ReplayAllHotsPlayer hotsPlayer = new ReplayAllHotsPlayer { BattleTagName = HeroesHelpers.BattleTags.GetBattleTagName(player.Name, player.BattleTag), BattleNetId = player.BattleNetId, BattleNetRegionId = player.BattleNetRegionId, BattleNetSubId = player.BattleNetSubId, BattleNetTId = player.BattleNetTId, AccountLevel = player.AccountLevel, LastSeen = Replay.Timestamp, LastSeenBefore = null, Seen = 1, }; long playerId; // check if player is already in the database, update if found, otherwise add a new record if (ReplaysDb.HotsPlayer.IsExistingRecord(ReplaysContext, hotsPlayer)) { playerId = ReplaysDb.HotsPlayer.UpdateRecord(ReplaysContext, hotsPlayer); } else { playerId = ReplaysDb.HotsPlayer.CreateRecord(ReplaysContext, hotsPlayer); } if (player.Character == null && Replay.GameMode == Heroes.ReplayParser.GameMode.Custom) { player.Team = 4; player.Character = "None"; ReplayMatchPlayer replayPlayer = new ReplayMatchPlayer { ReplayId = ReplayId, PlayerId = playerId, Character = player.Character, CharacterLevel = player.CharacterLevel, Difficulty = player.Difficulty.ToString(), Handicap = player.Handicap, IsAutoSelect = player.IsAutoSelect, IsSilenced = player.IsSilenced, IsVoiceSilenced = player.IsVoiceSilence, IsWinner = player.IsWinner, MountAndMountTint = player.MountAndMountTint, PartyValue = player.PartyValue, PartySize = 0, PlayerNumber = -1, SkinAndSkinTint = player.SkinAndSkinTint, Team = player.Team, AccountLevel = player.AccountLevel, IsBlizzardStaff = player.IsBlizzardStaff, HasActiveBoost = player.HasActiveBoost, }; ReplaysDb.MatchPlayer.CreateRecord(ReplaysContext, replayPlayer); } else { string character = HeroesIcons.HeroesData(Replay.ReplayBuild).HeroNameFromUnitId(player.HeroUnits.FirstOrDefault().Name); if (string.IsNullOrEmpty(character)) { throw new TranslationException(RetrieveAllMapAndHeroNames()); } ReplayMatchPlayer replayPlayer = new ReplayMatchPlayer { ReplayId = ReplayId, PlayerId = playerId, Character = character, CharacterLevel = player.CharacterLevel, Difficulty = player.Difficulty.ToString(), Handicap = player.Handicap, IsAutoSelect = player.IsAutoSelect, IsSilenced = player.IsSilenced, IsVoiceSilenced = player.IsVoiceSilence, IsWinner = player.IsWinner, MountAndMountTint = player.MountAndMountTint, PartyValue = player.PartyValue, PartySize = 0, PlayerNumber = playerNum, SkinAndSkinTint = player.SkinAndSkinTint, Team = player.Team, AccountLevel = player.AccountLevel, IsBlizzardStaff = player.IsBlizzardStaff, HasActiveBoost = player.HasActiveBoost, }; string attributeId = HeroesIcons.HeroesData(Replay.ReplayBuild).HeroData(character, false, false, false).AttributeId; if (player.HeroMasteryTiers.ToDictionary(x => x.HeroAttributeId, x => x.TierLevel).TryGetValue(attributeId, out int tierLevel)) { if (tierLevel == 2 && replayPlayer.CharacterLevel < 25) { replayPlayer.CharacterLevel = 25; } else if (tierLevel == 3 && replayPlayer.CharacterLevel < 50) { replayPlayer.CharacterLevel = 50; } else if (tierLevel == 4 && replayPlayer.CharacterLevel < 75) { replayPlayer.CharacterLevel = 75; } else if (tierLevel == 5 && replayPlayer.CharacterLevel < 100) { replayPlayer.CharacterLevel = 100; } } ReplaysDb.MatchPlayer.CreateRecord(ReplaysContext, replayPlayer); AddScoreResults(player.ScoreResult, playerId); AddPlayerTalents(player.Talents, playerId, character); AddMatchAwards(player.ScoreResult.MatchAwards, playerId); playerNum++; } } // end foreach loop for players // set the players' party size count ReplaysDb.MatchPlayer.SetPlayerPartyCountsForMatch(ReplaysContext, ReplayId); }
public void ShowPlayerNotesWindow(ReplayMatchPlayer player) { PlayerNotesWindow window = new PlayerNotesWindow(player); window.ShowDialog(); }
public MatchPlayerAdvancedStats(IInternalService internalService, IWebsiteService website, ReplayMatchPlayer player, int build) : base(internalService, website, player, build) { }