示例#1
0
        //Elements graphiques nécessaires au mode pause initialisés
        public Pause(Pong game)
        {
            this.game = game;

            startSprites.Add(new SpriteText(new Vector2(200,160), Color.White, Conf.PAUSE_NAME));
            startSprites.Add(new SpriteText(new Vector2(150, Conf.WINDOW_HEIGHT - 60), Color.White, Conf.PAUSE_INSTRUCTIONS));
        }
示例#2
0
 /// <summary>
 /// The main entry point for the application.
 /// </summary>
 static void Main(string[] args)
 {
     using (Pong game = new Pong())
     {
         game.Run();
     }
 }
示例#3
0
 public Ball(Pong pong)
     : base(new Vector2(pong.Dimensions.X / 2 - Ball.Radius/2, pong.Dimensions.Y / 2  - Ball.Radius/2 ), Ball.Radius, Ball.Radius)
 {
     this.IsInWall = false;
     this.Acceleration = .2f;
     this.Pong = pong;
     this.ResetBall();
     this.setHitBox();
 }
示例#4
0
 //Elements graphiques nécessaires au mode WIN initialisés
 public Win(Pong game, Conf.TeamSide teamSide)
 {
     this.game = game;
     this.teamWin = teamSide;
     String name = "Right";
     if (teamSide == Conf.TeamSide.LEFT) { name = "Left"; }
     name = name + " team wins !";
     winSprites.Add(new SpriteText(new Vector2(Conf.WINDOW_WIDTH/2 - 160, 160), Color.White, name));
     winSprites.Add(new SpriteText(new Vector2(200, Conf.WINDOW_HEIGHT - 100), Color.White, "Press R to replay or M to menu"));
 }
示例#5
0
        //Définition des éléments nécessaire à la création graphique du menu
        public Menu(Pong game)
        {
            this.game = game;
            buttons = new List<Button>();
            leftChoices = new List<Button>();
            rightChoices = new List<Button>();
            menuSprites = new List<Sprite>();

            // Position des boutons en fonction de la taille de la fenêtre
            int leftButtonsPositionX = (Conf.WINDOW_WIDTH/2 - Conf.BUTTON_WIDTH)/2;
            int rightButtonsPositionX = (Conf.WINDOW_WIDTH / 2) + leftButtonsPositionX;

            Vector2 leftButtonsPosition = new Vector2(leftButtonsPositionX, 200);

            // Création des boutons et ajout dans les listes adaptées
            buttons.Add(new Button(leftButtonsPosition, "1 player", 1, Conf.InteligenceType.HUMAN));
            leftChoices.Add(buttons.Last());
            buttons.Add(new Button(new Vector2(leftButtonsPositionX, 300), "2 players", 2, Conf.InteligenceType.HUMAN));
            leftChoices.Add(buttons.Last());
            buttons.Add(new Button(new Vector2(leftButtonsPositionX, 400), "AI", 1, Conf.InteligenceType.IA));
            leftChoices.Add(buttons.Last());
            buttons.Add(new Button(new Vector2(rightButtonsPositionX, 200), "1 player", 1, Conf.InteligenceType.HUMAN));
            rightChoices.Add(buttons.Last());
            buttons.Add(new Button(new Vector2(rightButtonsPositionX, 300), "2 players", 2, Conf.InteligenceType.HUMAN));
            rightChoices.Add(buttons.Last());
            buttons.Add(new Button(new Vector2(rightButtonsPositionX, 400), "AI", 1, Conf.InteligenceType.IA));
            rightChoices.Add(buttons.Last());

            buttons.Add(new Button(new Vector2(375, 500), "GO !"));

            // Ajout des boutons dans la liste des sprites à dessier
            foreach (Button button in buttons)
            {
                menuSprites.Add(button);
                menuSprites.Add(button.labelSprite);
            }

            title = new SpriteTexture2D(new Vector2(350, 20), 300, 75);
            SpriteText leftTeamLabel = new SpriteText(new Vector2(145, 110), Color.White, "Left Side");
            SpriteText rightTeamLabel = new SpriteText(new Vector2(640, 110), Color.White, "Right Side");
            menuSprites.Add(title);
            menuSprites.Add(leftTeamLabel);
            menuSprites.Add(rightTeamLabel);
        }
示例#6
0
 //Initialisation d'une équipe
 public Team(Conf.TeamSide side,int nbPlayer, Conf.InteligenceType type, Pong pong)
 {
     this.Players = new List<Player>();
     if (side == Conf.TeamSide.LEFT)
     {
         this.Score = new Score(new Vector2(Conf.TEAM_LEFT_SCORE_POSITION_X, Conf.TEAM_SCORE_POSITION_Y));
     }
     else
     {
         this.Score = new Score(new Vector2(Conf.TEAM_RIGHT_SCORE_POSITION_X, Conf.TEAM_SCORE_POSITION_Y));
     }
     this.Pong = pong;
     this.Side = side;
     this.Players.Add(new Player(this, Conf.PlayerPosition.BACK, type));
     if (nbPlayer == 2)
     {
         this.Players.Add(new Player(this, Conf.PlayerPosition.FRONT, type));
     }
 }