Example #1
0
 /// <summary>
 /// The main entry point for the application.
 /// </summary>
 static void Main(string[] args)
 {
     using (KiPongGame game = new KiPongGame())
     {
         game.Run();
     }
 }
Example #2
0
 public KinectInput(KiPongGame g)
 {
     game = g;
     LeftY = RightY = 0;
     KinectSensor.KinectSensors.StatusChanged += new EventHandler<StatusChangedEventArgs>(KinectSensors_StatusChanged);
     DiscoverKinectSensor();
 }
Example #3
0
        public Helpable(KiPongGame g, String nameImage, String nameText)
            : base(g)
        {
            image = g.Content.Load<Texture2D>(nameImage);

            if (image.Height / game.ScreenHeight <= image.Width / game.ScreenWidth)
                scale = (float)game.ScreenHeight / (float)image.Height;
            else
                scale = (float)game.ScreenWidth / (float)image.Width;
            text = g.Content.Load<String>(nameText);
        }
Example #4
0
        public Menu(KiPongGame g, String helpImg, String helpText)
            : base(g, helpImg, helpText)
        {
            iterator = lastIterator = 0;
            margin = game.ScreenHeight /60;

            // Dessine les rectangles du font du menu
            int width = game.ScreenWidth - 2 * margin;
            bordTitle = new Rectangle(margin, margin, width, (int)(game.ScreenHeight * ratioTitle));
            int margin2 = margin * 2;
            rectTitle = new Rectangle(margin2, margin2, width - margin2, bordTitle.Height - margin2);
            rectItems = new Rectangle(margin, bordTitle.Height + 2 * margin, width, game.ScreenHeight - bordTitle.Height - 3 * margin);
        }
Example #5
0
 /// <summary>
 /// Initialise une batte
 /// </summary>
 /// <param name="game">Le jeu propriétaire</param>
 /// <param name="side">Si true alors à gauche sinon à droite de l'écran</param>
 public Bat(KiPongGame g, Side side, Difficulty d)
     : base(g)
 {
     points = 0;
     this.side = side;
     // La raquette est un cube ou l'on ne voit qu'une partie
     int cote = game.ScreenHeight / getRatio(d);
     int apparentWidth = game.ScreenWidth / RatioWidth;
     texture = new Texture2D(game.GraphicsDevice, cote, cote);
     changeColor();
     size = new Rectangle(0, 0, cote, cote);
     if (side == Side.LEFT) position = new Vector2(apparentWidth - cote, game.ScreenHeight / 2 - cote / 2);
     else position = new Vector2(game.ScreenWidth - apparentWidth, game.ScreenHeight / 2 - cote / 2);
     yHeight = game.ScreenHeight;
 }
Example #6
0
        public Pong(KiPongGame g, String helpImg, String helpText, Difficulty d, bool isOnePlayer)
            : base(g, helpImg, helpText)
        {
            IsOnePlayer = isOnePlayer;
            difficulty = d;
            ball = new Ball(game, d);
            resetTimer = 0;
            resetTimerInUse = true;
            decompte = "";
            lastScored = Side.LEFT;

            goalSound = g.Content.Load<SoundEffect>("goal");

            // DRAW
            int Wdiv2 = game.ScreenWidth / 2;
            posPointsBat1 = new Vector2(Wdiv2 - game.FontTitle.MeasureString("0").X - 15, 10);
            posPointsBat2 = new Vector2(Wdiv2 + 15, 10);
            line = new Rectangle(Wdiv2 - 5, 0, 10, game.ScreenHeight);
        }
Example #7
0
 /// <summary>
 /// Initialise une batte
 /// </summary>
 /// <param name="game">Le jeu propriétaire</param>
 /// <param name="side">Si true alors à gauche sinon à droite de l'écran</param>
 public BatKeyboard(KiPongGame game, Side side, Difficulty d, KeyboardInput i)
     : base(game, side, d)
 {
     input = i;
     switch (d)
     {
         case Difficulty.EASY:
             BaseSpeed = 8f;
             increaseSpeed = 0.9f;
             break;
         case Difficulty.MEDIUM:
             BaseSpeed = 10f;
             increaseSpeed = 1.8f;
             break;
         default:
             BaseSpeed = 12f;
             increaseSpeed = 3.6f;
             break;
     }
     MaxSpeed = BaseSpeed + 3 * increaseSpeed;
     speed = BaseSpeed;
 }
Example #8
0
        public Ball(KiPongGame g, Difficulty d)
            : base(g)
        {
            // creer la balle
            setSpeed(d);
            direction = 0;
            int width = g.ScreenWidth / 20;
            changeBallColor();
            scale = (float)width / (float)texture.Width;
            size = new Rectangle(0, 0, width, width);
            resetPos = new Vector2(g.ScreenWidth / 2, g.ScreenHeight / 2);

            // Création de la trainée
            position = resetPos;
            maxSizeListePosition = 4;
            traineePosition = new List<Vector2>(maxSizeListePosition) { resetPos, resetPos, resetPos, resetPos};

            // Initialisation des autres composants
            rand = new Random();
            isVisible = false;
            WallHitSong = g.Content.Load<SoundEffect>("WallHit");
            BatHitSong = g.Content.Load<SoundEffect>("BatHit");
        }
Example #9
0
 public AIBat(KiPongGame game, Side side, Difficulty d, Ball b)
     : base(game, side, d, null)
 {
     ball = b;
 }
Example #10
0
 public MenuKeyboard(KiPongGame g, KeyboardInput input)
     : base(g, "aideMenuKeyboardImg", "aideMenuKeyboardTxt")
 {
     this.input = input;
 }
Example #11
0
 public PongKinect(KiPongGame g, Difficulty d, bool isOp, KinectInput i)
     : base(g, "aideJeuKinectImg", "aideJeuKinectTxt", d, isOp)
 {
     input = i;
     setBats();
 }
Example #12
0
 public PongItem(KiPongGame g)
     : base(g)
 {
 }
Example #13
0
 /// <summary>
 /// Initialise une batte
 /// </summary>
 /// <param name="game">Le jeu propriétaire</param>
 /// <param name="side">Si true alors à gauche sinon à droite de l'écran</param>
 public BatKinect(KiPongGame game, Side side, Difficulty d, KinectInput i)
     : base(game, side, d)
 {
     input = i;
 }
Example #14
0
 public MenuKinect(KiPongGame g, KinectInput input)
     : base(g, "aideMenuKinectImg", "aideMenuKinectTxt")
 {
     this.input = input;
 }
Example #15
0
 public PongKeyboard(KiPongGame g, Difficulty d, bool isOp, KeyboardInput i)
     : base(g, "aideJeuKeyboardImg", "aideJeuKeyboardTxt", d, isOp)
 {
     input = i;
     setBats();
 }
Example #16
0
 /// <summary>
 /// Construit un objet de jeu
 /// </summary>
 /// <param name="g">Le jeu à qui appertient cet objet</param>
 public GameObject(KiPongGame g)
 {
     game = g;
 }