private Player createPlayer(int i_PlayerId, SpaceShipConfiguration i_SpaceShipConfiguration, IPlayerState i_PlayerState)
        {
            Player player = new Player(Screen, i_SpaceShipConfiguration, i_PlayerId, i_PlayerState);
            player.PlayerLost += onPlayerLost;

            return player;
        }
 public Player(GameScreen i_GameScreen, SpaceShipConfiguration i_SpaceShipConfiguration, int i_PlayerId, IPlayerState i_PlayerState)
 {
     r_SpaceShip = new SpaceShip(i_GameScreen, i_SpaceShipConfiguration, i_PlayerId);
     ScoresBoard = new ScoresBoard(i_GameScreen, i_PlayerId, i_SpaceShipConfiguration.TextColor);
     r_SoulsBoard = new SoulsBoard(i_GameScreen, i_PlayerState, i_SpaceShipConfiguration.AssetName, i_PlayerId);
     r_SpaceShip.SpaceShipHit += spaceShipOnHit;
     r_SpaceShip.Died += spaceShipOnDie;
     r_SpaceShip.BulletCollided += bulletCollision;
 }
 public SpaceShip(GameScreen i_GameScreen, SpaceShipConfiguration i_SpaceShipConfiguration, int i_Id)
     : base(i_SpaceShipConfiguration.AssetName, i_GameScreen)
 {
     r_SpaceShipConfiguration = i_SpaceShipConfiguration;
     r_InitialOffsetMultiplayer = i_Id;
 }
        private Player initializePlayer1(int i_PlayerId, IPlayerState i_PlayerState)
        {
            SpaceShipConfiguration spaceShipConfiguration = new SpaceShipConfiguration
            {
                SpaceShipMouseConfiguration = new SpaceShipMouseConfiguration
                {
                    ShootButton = eInputButtons.Left
                },
                SpaceShipKeyboardConfiguration = new SpaceShipKeyboardConfiguration
                {
                    ShootButton = new List<Keys> { Keys.LeftControl, Keys.RightControl },
                    RightMoveButton = Keys.Right,
                    LeftMoveButton = Keys.Left
                },
                TextColor = Color.Blue,
                AssetName = @"Sprites\Ship01_32x32"
            };

            return createPlayer(i_PlayerId, spaceShipConfiguration, i_PlayerState);
        }
        private Player initializePlayer2(int i_PlayerId, IPlayerState i_PlayerState)
        {
            SpaceShipConfiguration spaceShipConfiguration = new SpaceShipConfiguration
            {
                SpaceShipKeyboardConfiguration = new SpaceShipKeyboardConfiguration
                {
                    ShootButton = new List<Keys> { Keys.W },
                    RightMoveButton = Keys.D,
                    LeftMoveButton = Keys.A
                },
                TextColor = Color.Green,
                AssetName = @"Sprites\Ship02_32x32"
            };

            return createPlayer(i_PlayerId, spaceShipConfiguration, i_PlayerState);
        }