public void ModifyPlayerMoveState(Vector2i directionVector, Enums.players player)
 {
     if (_listOfPlayers[(int)player].IsAlive)
     {
         _listOfPlayers[(int)player].MultiplyVelocity(directionVector);
     }
 }
 public void ModifyPlayerShotState(bool isShooting, Enums.players player)
 {
     if (isShooting && _listOfPlayers[(int)player].IsAlive) //If the player fired a bullet, add it to listOfBullets
     {
         _listOfBullets.Add(_listOfPlayers[(int)player].Shoot());
     }
 }
Example #3
0
 public void ListenForPlayerInput()
 {
     for (Enums.players player = 0; player < Enums.players.End; player++)
     {
         var result = keyEventResolver.ListenForPlayersInput(player);
         gameOverseer.ModifyPlayerMoveState(result, player);
     }
 }
Example #4
0
        public Vector2i ListenForPlayersInput(Enums.players player)
        {
            switch (player)
            {
            case Enums.players.Player1:
                return(ListenForInputPlayer1Dark());

            case Enums.players.Player2:
                return(ListenForInputPlayer2Light());
            }

            return(new Vector2i(0, 0));
        }
Example #5
0
        /// <summary>
        /// Resolves the keyPressedEvents.
        /// </summary>
        /// <param name="args">Arguments of the pressed key</param>
        /// <param name="player">The ID of the player that is being checked.</param>
        /// <returns>Tuple with axis multipliers of movement for the player and a boolean indicating shot.</returns>
        public bool ResolveKeyPressedEventPlayers(KeyEventArgs args, Enums.players player)
        {
            switch (player)
            {
            case Enums.players.Player1:
                return(CheckMovementKeysPlayer1Dark(args));

            case Enums.players.Player2:
                return(CheckMovementKeysPlayer2Light(args));
            }

            return(false);
        }
Example #6
0
        public void HandleKeyPressedEvent(KeyEventArgs keyArgs)
        {
            if (keyEventResolver.ResolveKeyPressedEndProgram(keyArgs))
            {
                changeState(Core.gameState.Exit);
                return;
            }

            if (keyEventResolver.ResolveKeyPressedResetState(keyArgs))
            {
                gameOverseer.ResetState();
                timeCounter.ResetTimer();
            }
            for (Enums.players player = 0; player < Enums.players.End; player++)
            {
                var result = keyEventResolver.ResolveKeyPressedEventPlayers(keyArgs, player);
                gameOverseer.ModifyPlayerShotState(result, player);
            }
        }
Example #7
0
 public Player(string name)
 {
     numberOfPlayers++;
     if (numberOfPlayers > 2)
     {
         throw new Exception("There is no way for more than 2 players!");
     }
     if (numberOfPlayers == 1)
     {
         playerSprite.Texture = Textures.Player1Texture;
         player = Enums.players.Player1;
     }
     else
     {
         playerSprite.Texture = Textures.Player2Texture;
         player = Enums.players.Player2;
     }
     this.name = name;
 }
        public override void ReceiveHit(Bullet bullet)
        {
            if (bullet.Player != _vulnerableToPlayer)
            {
                return;
            }

            _health -= bullet.damage;

            if (Health <= 0)
            {
                this._isAlive = false;
                Reset();
            }
            else
            {
                this.gateSprite.Texture  = Textures.NorTexture2;
                this._vulnerableToPlayer = Enums.players.Player2;
            }
        }
Example #9
0
 public Bullet(Enums.players player, Vector2f startingPosition)
 {
     this.Player      = player;
     _shape.Position  = startingPosition;
     _shape.FillColor = Color.Cyan;
 }
 public new void Reset()
 {
     base.Reset();
     this.gateSprite.Texture  = Textures.NandTexture;
     this._vulnerableToPlayer = Enums.players.Player2;
 }