public override void AddedTo(DeckLocation location, Player player)
        {
            base.AddedTo(location, player);

            switch (location)
            {
            case DeckLocation.Hand:
                if (_AttackHandler != null)
                {
                    player.Attacked -= _AttackHandler;
                }

                _AttackHandler   = new Player.AttackedEventHandler(player_Attacked);
                player.Attacked += _AttackHandler;
                break;

            case DeckLocation.SetAside:
                if (_TurnStartedEventHandler != null)
                {
                    player.TurnStarted -= _TurnStartedEventHandler;
                }
                _TurnStartedEventPlayer              = player;
                _TurnStartedEventHandler             = new Player.TurnStartedEventHandler(player_TurnStarted);
                _TurnStartedEventPlayer.TurnStarted += _TurnStartedEventHandler;
                break;
            }
        }
示例#2
0
 public override void RemovedFrom(DeckLocation location, Player player)
 {
     base.RemovedFrom(location, player);
     if (_AttackHandler != null)
     {
         player.Attacked -= _AttackHandler;
     }
     _AttackHandler = null;
 }
示例#3
0
        public override void AddedTo(DeckLocation location, Player player)
        {
            base.AddedTo(location, player);

            if (location == DeckLocation.Hand)
            {
                if (_AttackHandler != null)
                {
                    player.Attacked -= _AttackHandler;
                }

                _AttackHandler   = new Player.AttackedEventHandler(player_Attacked);
                player.Attacked += _AttackHandler;
            }
        }
示例#4
0
		public override void RemovedFrom(DeckLocation location, Player player)
		{
			base.RemovedFrom(location, player);
			if (_AttackHandler != null)
				player.Attacked -= _AttackHandler;
			_AttackHandler = null;
		}
示例#5
0
		public override void AddedTo(DeckLocation location, Player player)
		{
			base.AddedTo(location, player);

			if (location == DeckLocation.Hand)
			{
				if (_AttackHandler != null)
					player.Attacked -= _AttackHandler;

				_AttackHandler = new Player.AttackedEventHandler(player_Attacked);
				player.Attacked += _AttackHandler;
			}
		}
		public override void AddedTo(DeckLocation location, Player player)
		{
			base.AddedTo(location, player);

			switch (location)
			{
				case DeckLocation.Hand:
					if (_AttackHandler != null)
						player.Attacked -= _AttackHandler;

					_AttackHandler = new Player.AttackedEventHandler(player_Attacked);
					player.Attacked += _AttackHandler;
					break;

				case DeckLocation.SetAside:
					if (_TurnStartedEventHandler != null)
						player.TurnStarted -= _TurnStartedEventHandler;
					_TurnStartedEventPlayer = player;
					_TurnStartedEventHandler = new Player.TurnStartedEventHandler(player_TurnStarted);
					_TurnStartedEventPlayer.TurnStarted += _TurnStartedEventHandler;
					break;
			}
		}
示例#7
0
		public override void AddedTo(DeckLocation location, Player player)
		{
			base.AddedTo(location, player);
			if (location == DeckLocation.InPlay || location == DeckLocation.SetAside)
			{
				if (_AttackHandler != null)
					player.Attacked -= _AttackHandler;

				_AttackHandler = new Player.AttackedEventHandler(player_Attacked_InPlay);
				player.Attacked += _AttackHandler;
			}

			switch (location)
			{
				case DeckLocation.InPlay:
					this._CanCleanUp = false;
					break;

				case DeckLocation.SetAside:
					if (_TurnStartedEventHandler != null)
						player.TurnStarted -= _TurnStartedEventHandler;
					_TurnStartedPlayer = player;
					_TurnStartedEventHandler = new Player.TurnStartedEventHandler(player_TurnStarted);
					_TurnStartedPlayer.TurnStarted += _TurnStartedEventHandler;
					this._CanCleanUp = true;
					break;

				default:
					this._CanCleanUp = true;
					break;
			}
		}