예제 #1
0
 private void SetBattle(ExtBattle value)
 {
     _Battle      = value;
     _AttackInfo  = null;
     _DefenceInfo = null;
     this.OnPropertyChanged("Battle");
 }
예제 #2
0
        public ExtGameInfo(ExtStep step, WCFGameInfo wcfGameInfo)
        {
            Step        = step;
            WCFGameInfo = wcfGameInfo;

            if (wcfGameInfo.Battle != null)
            {
                ExtBattle = new ExtBattle(Step, wcfGameInfo.Battle);
            }

            ExtGarrison = wcfGameInfo.Garrison
                          .Select(p => new ExtGarrison(p))
                          .ToList();

            ExtVesterosDecks = wcfGameInfo.VesterosDecks
                               .Select(p => new ExtVesterosDecks(Step, p))
                               .OrderBy(p => p.WCFVesterosDecks.Sort)
                               .ToList();

            TurnPosition = MainWindow.ClientInfo.WorldData.TrackPoint.
                           Single(p => p.WCFTrackPoint.TrackType == "Раунд" && p.WCFTrackPoint.Value == WCFGameInfo.Turn).
                           GamePoint;

            BarbarianPosition = MainWindow.ClientInfo.WorldData.TrackPoint.
                                Single(p => p.WCFTrackPoint.TrackType == "Одичалые" && p.WCFTrackPoint.Value == WCFGameInfo.Barbarian).
                                GamePoint;

            RavenOverlayPosition = MainWindow.ClientInfo.WorldData.TrackPoint.
                                   Single(p => p.WCFTrackPoint.TrackType == "Королевский_двор" && p.WCFTrackPoint.Value == 1).
                                   GamePoint;

            if (Step.Game.ViewGameInfo != null && Step.Game.ViewGameInfo.WCFGameInfo.Turn != wcfGameInfo.Turn)
            {
                Step.Game.OnNewWesterosPhase();
            }
        }