Ejemplo n.º 1
0
        private void StartPhaseEventHandler(PhaseActions playerActions)
        {
            Application.Current.Dispatcher.Invoke(() =>
            {
                this.TradeButton.Visibility      = Visibility.Visible;
                this.TradeMarketButton.IsEnabled = playerActions.CanTradeWithMarket;
                this.TradePlayerButton.IsEnabled = playerActions.CanTradeWithPlayers;

                this.BuildSettlementButton.IsEnabled = playerActions.CanBuildSettlement;
                this.BuildSettlementButton.ToolTip   = playerActions.BuildSettlementMessages;

                this.BuildRoadButton.IsEnabled = playerActions.CanBuildRoad;
                this.BuildRoadButton.ToolTip   = playerActions.BuildRoadMessages;

                this.BuildCityButton.IsEnabled = playerActions.CanBuildCity;
                this.BuildCityButton.ToolTip   = playerActions.BuildCityMessages;

                this.BuildButton.Visibility = Visibility.Visible;
                this.BuildButton.IsEnabled  = playerActions.CanBuildSettlement | playerActions.CanBuildRoad | playerActions.CanBuildCity;
                this.BuildButton.ToolTip    = playerActions.BuildSettlementMessages + playerActions.BuildRoadMessages + playerActions.BuildCityMessages;

                this.BuyButton.Visibility = Visibility.Visible;
                this.BuyButton.IsEnabled  = playerActions.CanBuyDevelopmentCard;
                this.UseButton.Visibility = Visibility.Visible;
                this.UseButton.IsEnabled  = playerActions.CanUseDevelopmentCard;

                this.PhaseActions.Visibility  = Visibility.Visible;
                this.EndTurnButton.Visibility = Visibility.Visible;
            });
        }
Ejemplo n.º 2
0
 public override void CallAbility(PhaseActions actions, string ability)
 {
     foreach (Player player in checks.Keys)
     {
         int target = checks[player];
     }
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Called every GamePhase and is called in order from the abilities with highest priority to
 /// the ones with lowest priority.
 ///
 /// As such its down to the role itself to handle the logic
 /// </summary>
 /// <param name="ability"></param>
 public abstract void CallAbility(PhaseActions actions, String ability);