Changeset 237 for taneli_a/Pong-1


Ignore:
Timestamp:
2009-08-04 11:22:04 (12 years ago)
Author:
tatojoah
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • taneli_a/Pong-1/Peli.cs

    r223 r237  
    2222    { 
    2323        PhysicsObject pallo; 
     24        PhysicsObject maila1; 
     25        PhysicsObject maila2; 
     26 
    2427        protected override void LoadContent() 
    2528        { 
    2629 
    2730            Level = LuoKentta(); 
     31            AsetaOhjaimet(); 
    2832            AloitaPeli(); 
    2933 
     
    4246            kentta.Objects.Add(pallo); 
    4347 
    44             IShape suorakulmio = Shapes.CreateRectangle(20.0, 100.0); 
    45             PhysicsObject maila = PhysicsObject.CreateStaticObject(suorakulmio); 
    46             maila.X = kentta.Left + 20.0; 
    47             maila.Y = 0.0; 
    48             maila.Restitution = 1.0; 
    49             kentta.Objects.Add(maila); 
     48            maila1 = LuoMaila(kentta.Left + 20.0, 0.0, kentta); 
     49            maila2 = LuoMaila(kentta.Right - 20.0, 0.0, kentta); 
    5050 
    5151            kentta.CreateBorder(1.0, false); 
     
    5959            pallo.Hit(impulssi); 
    6060        } 
    61             PhysicsObject LuoMaila(double x, double y) 
    62             { 
    63                 IShape suorakulmio = Shapes.CreateRectangle( 20.0, 100.0); 
    64                 PhysicsObject maila = PhysicsObject.CreateStaticObject(suorakulmio); 
     61        PhysicsObject LuoMaila(double x, double y, Level kentta) 
     62        { 
     63            IShape suorakulmio = Shapes.CreateRectangle(20.0, 100.0); 
     64            PhysicsObject maila = PhysicsObject.CreateStaticObject(suorakulmio); 
     65            maila.X = x; 
     66            maila.Y = y; 
     67            maila.Restitution = 1.0; 
     68            kentta.Objects.Add(maila); 
     69            return maila; 
     70        } 
    6571 
    66                 
    67            
    68         }     
     72        void AsetaOhjaimet() 
     73        { 
     74            Controls.Listen(Keys.A, ButtonPosition.Pressed, LiikutaMailaaYlos, "Pelaaja 1: Liikuta mailaa ylös", maila1); 
     75            Controls.Listen(Keys.A, ButtonPosition.Released, PysaytaMaila, null, maila1); 
     76            Controls.Listen(Keys.Z, ButtonPosition.Pressed, LiikutaMailaaAlas, "Pelaaja 1: Liikuta mailaa alas", maila1); 
     77            Controls.Listen(Keys.Z, ButtonPosition.Released, PysaytaMaila, null, maila1); 
     78 
     79            Controls.Listen(Keys.Up, ButtonPosition.Pressed, LiikutaMailaaYlos, "Pelaaja 2: Liikuta mailaa ylös", maila2); 
     80            Controls.Listen(Keys.Up, ButtonPosition.Released, PysaytaMaila, null, maila2); 
     81            Controls.Listen(Keys.Down, ButtonPosition.Pressed, LiikutaMailaaAlas, "Pelaaja 2: Liikuta mailaa alas", maila2); 
     82            Controls.Listen(Keys.Down, ButtonPosition.Released, PysaytaMaila, null, maila2); 
     83 
     84        } 
     85        bool LiikutaMailaaYlos(ControlEvent e) 
     86        { 
     87            PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
     88            Vector2D nopeus = new Vector2D(0, 200); 
     89            maila.Velocity = nopeus; 
     90            return false; 
     91 
     92        } 
     93 
     94        bool PysaytaMaila(ControlEvent e) 
     95        { 
     96            PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
     97            maila.Velocity = Vector2D.Zero; 
     98            return false; 
     99        } 
     100 
     101        bool LiikutaMailaaAlas(ControlEvent e) 
     102        { 
     103            PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
     104            Vector2D nopeus = new Vector2D(0, -200); 
     105            maila.Velocity = nopeus; 
     106            return false; 
     107        } 
    69108    } 
    70109} 
Note: See TracChangeset for help on using the changeset viewer.