//Func<IDecisionHandler> playback Func<IDecisionHandler> machine protected Decision(Player controller, Func<IDecisionHandler> ui, Func<IDecisionHandler> scenario) { _ui = ui; //_machine = machine; _scenario = scenario; //_playback = playback; Controller = controller; }
private static bool HasValidController(Player targetController, Player sourceController, ControlledBy controlledBy) { switch (controlledBy) { case (ControlledBy.Opponent): return targetController != sourceController; case (ControlledBy.SpellOwner): return targetController == sourceController; } return true; }
public void Start(Func<bool> shouldContinue, bool skipPreGame, Player looser = null) { Turn.Step = Step.GameStart; if (skipPreGame) { Turn.Step = Step.Untap; } Turn.State = 0; _previousLooser = looser; _currentStep.Value = _steps.First(x => x.Step == Turn.Step); _currentState.Value = _currentStep.Value.Start; _currentState.Value.Execute(); Resume(shouldContinue); }
public Graveyard(Player owner) : base(owner) { }
public Library(Player owner) : base(owner) { }
public bool IsVisibleToPlayer(Player player) { if (_isRevealed == true) return true; if (_isHidden == true) return false; if (Zone == Zone.Battlefield || Zone == Zone.Graveyard || Zone == Zone.Exile || Zone == Zone.Stack) return true; if (Zone == Zone.Library) return _isPeeked && player == Controller; return player == Controller; }
public Battlefield(Player owner) : base(owner) { }
public Card Initialize(Player owner, Engine game) { Game = game; Owner = owner; //Id = game.Recorder.CreateId(this); JoinedBattlefield.Initialize(ChangeTracker); LeftBattlefield.Initialize(ChangeTracker); _controller = new CardController(owner); _controller.Initialize(game); _strenght.Initialize(game); _level.Initialize(game); //_counters.Initialize(this, game); _type.Initialize(game); _colors.Initialize(game); //_protections.Initialize(ChangeTracker); _zone.Initialize(ChangeTracker); _modifiers.Initialize(ChangeTracker); _isTapped.Initialize(ChangeTracker); _attachedTo.Initialize(ChangeTracker); _attachments.Initialize(ChangeTracker); _hasRegenerationShield.Initialize(ChangeTracker); _damage.Initialize(ChangeTracker); _hasLeathalDamage.Initialize(ChangeTracker); _hasSummoningSickness.Initialize(ChangeTracker); _hash.Initialize(ChangeTracker); _isHidden.Initialize(ChangeTracker); _isRevealed.Initialize(ChangeTracker); _isPeeked.Initialize(ChangeTracker); _usageScore.Initialize(ChangeTracker); //_castRules.Initialize(this, game); _simpleAbilities.Initialize(game); //_triggeredAbilities.Initialize(this, game); //_activatedAbilities.Initialize(this, game); //_staticAbilities.Initialize(this, game); //_combatRules.Initialize(this, game); //_continuousEffects.Initialize(this, game); _isPreview = false; return this; }
public bool CanBeTargetBySpellsOwnedBy(Player player) { return !Has().Stealth;// && (player == Controller || !Has().Hexproof); }
public AssignedDamage(Player player) { _player = player; }
public Hand(Player owner) : base(owner) { }
public ChosenPlayer(Player player) { Player = player; }