コード例 #1
0
        public void Initialize(Game game)
        {
            Game = game;
            Id   = game.Recorder.CreateId(this);

            _life.Initialize(ChangeTracker);
            _landsPlayedCount.Initialize(ChangeTracker);
            _hasMulligan.Initialize(ChangeTracker);
            _hasLost.Initialize(ChangeTracker);
            _isActive.Initialize(ChangeTracker);
            _hasPriority.Initialize(ChangeTracker);
            ManaCache.Initialize(ChangeTracker);
            _modifiers.Initialize(ChangeTracker);
            _continiousEffects.Initialize(null, Game);
            _landLimit.Initialize(Game, null);
            _battlefield.Initialize(Game);
            _hand.Initialize(Game);
            _graveyard.Initialize(Game);
            _library.Initialize(Game);
            _exile.Initialize(Game);
            _skipSteps.Initialize(ChangeTracker);
            _emblems.Initialize(ChangeTracker);

            LoadLibrary();
        }
コード例 #2
0
ファイル: Combat.cs プロジェクト: longde123/grove
        public void Initialize(Game game)
        {
            Game = game;

            _attackers.Initialize(game.ChangeTracker);
            _blockers.Initialize(game.ChangeTracker);
        }
コード例 #3
0
ファイル: Characteristic.cs プロジェクト: longde123/grove
        public virtual void Initialize(Game game, IHashDependancy hashDependancy)
        {
            Game = game;

            _modifiers.Initialize(game.ChangeTracker);
            _currentValue.Initialize(game.ChangeTracker, hashDependancy);
        }
コード例 #4
0
ファイル: Stack.cs プロジェクト: longde123/grove
        public void Initialize(Game game)
        {
            Game = game;

            _effects.Initialize(ChangeTracker);
            _lastResolved.Initialize(ChangeTracker);
            _triggeredEffects.Initialize(ChangeTracker);
        }
コード例 #5
0
        public void Initialize(Game game)
        {
            Game = game;

            _extraTurns.Initialize(ChangeTracker);
            Player1.Initialize(Game);
            Player2.Initialize(Game);
        }
コード例 #6
0
ファイル: CombatRules.cs プロジェクト: longde123/grove
        public void Initialize(Card owningCard, Game game)
        {
            _combatRules.Initialize(game.ChangeTracker);

            foreach (var combatRule in _combatRules)
            {
                combatRule.Initialize(owningCard, game);
            }
        }
コード例 #7
0
ファイル: ActivatedAbilities.cs プロジェクト: longde123/grove
        public void Initialize(Card card, Game game)
        {
            _abilities.Initialize(game.ChangeTracker, card);

            foreach (var activatedAbility in _abilities)
            {
                activatedAbility.Initialize(card, game);
            }
        }
コード例 #8
0
        public Attacker(Card card, Game game)
        {
            Game  = game;
            _card = card;

            _blockers.Initialize(ChangeTracker);
            _assignedDamage.Initialize(ChangeTracker);
            _isBlocked.Initialize(ChangeTracker);
        }
コード例 #9
0
        public Attacker(Card card, Card planeswalker, Game game)
        {
            Game          = game;
            _card         = card;
            _planeswalker = planeswalker;

            _blockers.Initialize(ChangeTracker);
            _isBlocked.Initialize(ChangeTracker);
        }
コード例 #10
0
        public void Initialize(INotifyChangeTracker changeTracker)
        {
            foreach (var managroup in _groups)
            {
                managroup.Initialize(changeTracker);
            }

            _manaPool.Initialize(changeTracker);
            _removeList.Initialize(changeTracker);
        }
コード例 #11
0
        public override void Initialize(Card owningCard, Game game)
        {
            base.Initialize(owningCard, game);

            _p.ManaOutput.Initialize(this, game);
            _units.Initialize(ChangeTracker);
            _manaCache = owningCard.Controller.ManaCache;

            SubscribeToEvents();
        }
コード例 #12
0
        public void Initialize(Card source, Game game)
        {
            Game = game;

            _continiousEffects.Initialize(ChangeTracker);

            foreach (var continiousEffect in _continiousEffects)
            {
                continiousEffect.Initialize(source, Game);
            }
        }
コード例 #13
0
        public Blocker(Card card, Attacker attacker, Game game)
        {
            Card = card;
            Game = game;

            _attacker = new Trackable <Attacker>(attacker);
            _attacker.Initialize(ChangeTracker);

            _assignedDamage.Initialize(ChangeTracker);
            _damageAssignmentOrder.Initialize(ChangeTracker);
        }
コード例 #14
0
ファイル: TriggeredAbilities.cs プロジェクト: longde123/grove
        public void Initialize(Card card, Game game)
        {
            Game = game;

            _abilities.Initialize(game.ChangeTracker, card);

            foreach (var triggeredAbility in _abilities)
            {
                triggeredAbility.Initialize(card, game);
            }
        }
コード例 #15
0
ファイル: TurnEvents.cs プロジェクト: longde123/grove
        public void Initialize(Game game)
        {
            Game = game;

            _attackers.Initialize(ChangeTracker);
            _blockers.Initialize(ChangeTracker);
            _changedZone.Initialize(ChangeTracker);
            _damaged.Initialize(ChangeTracker);
            _hasAnythingBeenPlayedOrActivatedDuringThisStep.Initialize(ChangeTracker);
            _hasActivePlayerPlayedAnySpell.Initialize(ChangeTracker);
        }
コード例 #16
0
        public void Initialize(IHashDependancy hashDependancy, Game game)
        {
            Game = game;

            _all.Initialize(ChangeTracker, hashDependancy);

            foreach (var staticAbility in _all)
            {
                staticAbility.Initialize(ChangeTracker);
            }

            _active.Initialize(ChangeTracker);
        }
コード例 #17
0
ファイル: Card.cs プロジェクト: callumhutchy/grove
        public Card Initialize(Player owner, Game game)
        {
            Game  = game;
            Owner = owner;
            Id    = game.Recorder.CreateId(this);

            JoinedBattlefield.Initialize(ChangeTracker);
            LeftBattlefield.Initialize(ChangeTracker);

            _base.Initialize(game, this);
            _controller = new CardController(owner);
            _controller.Initialize(game, this);

            _strenght.Initialize(game, this);
            _level.Initialize(game, this);
            _combatCost.Initialize(game, this);
            _counters.Initialize(this, game);
            _typeOfCard.Initialize(game, this);
            _colors.Initialize(game, this);
            _protections.Initialize(game, this);
            _zone.Initialize(ChangeTracker, this);
            _modifiers.Initialize(ChangeTracker);

            _isTapped.Initialize(ChangeTracker, this);
            _attachedTo.Initialize(ChangeTracker, this);
            _attachments.Initialize(ChangeTracker, this);
            _hasRegenerationShield.Initialize(ChangeTracker, this);
            _damage.Initialize(ChangeTracker, this);
            _hasLeathalDamage.Initialize(ChangeTracker, this);
            _hasSummoningSickness.Initialize(ChangeTracker, this);
            _hash.Initialize(ChangeTracker);
            _isHidden.Initialize(ChangeTracker, this);
            _isRevealed.Initialize(ChangeTracker, this);
            _isPeeked.Initialize(ChangeTracker, this);
            _usageScore.Initialize(ChangeTracker, this);

            _base.Value.Initialize(this, Game);

            _castRules.Initialize(this, game);
            _simpleAbilities.Initialize(this, game);
            _triggeredAbilities.Initialize(this, game);
            _activatedAbilities.Initialize(this, game);
            _staticAbilities.Initialize(this, game);
            _combatRules.Initialize(this, game);


            _minimumBlockerCount.Initialize(Game, null);
            _isPreview = false;

            return(this);
        }
コード例 #18
0
ファイル: ContinuousEffect.cs プロジェクト: longde123/grove
        public void Initialize(Card source, Game game, Effect sourceEffect = null)
        {
            Game = game;

            _doNotUpdate.Initialize(ChangeTracker);
            _modifiers.Initialize(ChangeTracker);
            _isActive.Initialize(ChangeTracker);

            Source       = source;
            SourceEffect = sourceEffect;

            Subscribe(this);
            SubscribeToEvents();
        }
コード例 #19
0
ファイル: Game.cs プロジェクト: longde123/grove
        private void Initialize()
        {
            Stack.Initialize(this);
            Turn.Initialize(this);
            _wasStopped.Initialize(ChangeTracker);
            Combat.Initialize(this);
            _decisionQueue.Initialize(this);
            _stateMachine.Initialize(this, _decisionQueue);
            Players.Initialize(this);

            _damageRedirections.Initialize(ChangeTracker);
            _damagePreventions.Initialize(ChangeTracker);
            _costModifiers.Initialize(ChangeTracker);
            _modifiers.Initialize(ChangeTracker);
        }
コード例 #20
0
        public void Initialize(Card owningCard, Game game)
        {
            Game       = game;
            OwningCard = owningCard;
            _lifetimes.Initialize(game.ChangeTracker);
            _isEnabled.Initialize(game.ChangeTracker);

            if (_enabledInAllZones)
            {
                Enable();
            }

            Subscribe(this);
            SubscribeToEvents();
        }
コード例 #21
0
        public void Initialize(Card owningCard, Game game)
        {
            Game       = game;
            OwningCard = owningCard;

            _lifetimes.Initialize(ChangeTracker);
            _isEnabled.Initialize(ChangeTracker);
            _isActivated.Initialize(ChangeTracker);

            if (_enabledInAllZones || owningCard.Zone == Zone.Battlefield)
            {
                Enable();
            }

            Subscribe(this);
            SubscribeToEvents();
        }
コード例 #22
0
 public void Initialize(INotifyChangeTracker changeTracker)
 {
     _preventions.Initialize(changeTracker);
 }
コード例 #23
0
ファイル: DamageRedirections.cs プロジェクト: longde123/grove
 public void Initialize(ChangeTracker changeTracker)
 {
     _redirections.Initialize(changeTracker);
 }
コード例 #24
0
        public void Initialize(Card source, Game game)
        {
            Game = game;

            _continiousEffects.Initialize(ChangeTracker);
        }
コード例 #25
0
ファイル: Player.cs プロジェクト: longde123/grove
 public void Initialize(ChangeTracker changeTracker)
 {
     _assigned.Initialize(changeTracker);
 }
コード例 #26
0
 protected override void Initialize()
 {
     _aurasQueue.Initialize(ChangeTracker);
 }
コード例 #27
0
 public void Initialize(ChangeTracker changeTracker)
 {
     _costModifiers.Initialize(changeTracker);
 }
コード例 #28
0
 public virtual void Initialize(Game game)
 {
     Game = game;
     _cards.Initialize(ChangeTracker);
 }
コード例 #29
0
 public void Initialize(Game game)
 {
     _queue.Initialize(game.ChangeTracker);
 }
コード例 #30
0
 public void Initialize(Card owningCard, Game game)
 {
     Game        = game;
     _owningCard = owningCard;
     _counters.Initialize(ChangeTracker, owningCard);
 }