Changeset 249 for zhipeng_j/pong


Ignore:
Timestamp:
2009-08-04 11:25:41 (12 years ago)
Author:
tupepura
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • zhipeng_j/pong/Peli.cs

    r214 r249  
    2121    public class Peli : PhysicsGame 
    2222    { 
     23        PhysicsObject pallo; 
     24        PhysicsObject maila1; 
     25        PhysicsObject maila2; 
     26 
     27 
    2328        protected override void LoadContent() 
    2429        { 
    2530            Level = LuoKentta(); 
     31            AloitaPeli(); 
     32            Level kentta = new Level(this); 
     33            kentta.BackgroundColor = Color.Black; 
     34 
     35            // ... 
     36 
     37 
    2638 
    2739        } 
     
    3345 
    3446            IShape ympyra = Shapes.CreateCircle(20.0); 
    35             PhysicsObject pallo = new PhysicsObject(10.0, ympyra); 
     47            pallo = new PhysicsObject(10.0, ympyra); 
    3648            pallo.X = -200.0; 
    3749            pallo.Y = 0.0; 
     
    4557            maila.Restitution = 1.0; 
    4658            kentta.Objects.Add(maila); 
     59 
     60            PhysicsObject maila2 = PhysicsObject.CreateStaticObject(suorakulmio); 
     61            maila2.X = kentta.Right - 20.0; 
     62            maila2.Y = 0.0; 
     63            maila2.Restitution = 1.0; 
     64            kentta.Objects.Add(maila2); 
     65 
     66 
     67            kentta.CreateBorder(1.0, false); 
    4768            return kentta; 
    48           
    49             
     69        } 
     70    
     71        void AloitaPeli() 
     72        { 
     73            Vector2D impulssi = new Vector2D(2000.0, 0.0); 
     74            pallo.Hit(impulssi); 
     75        } 
    5076 
    51             
    52             
    5377 
    54              
    55             maila.X = kentta.Left + 20.0; 
    56             maila.Y = 0.0; 
    57             maila.Restitution = 1.0; 
    58             kentta.Objects.Add(maila); 
     78        void AsetaOhjaimet() 
     79        { 
     80            Controls.Listen(Keys.A, ButtonPosition.Pressed, LiikutaMailaaYlos, "Pelaaja 1: Liikuta mailaa ylös", maila1); 
     81            Controls.Listen(Keys.A, ButtonPosition.Released, PysaytaMaila, null, maila1); 
     82            Controls.Listen(Keys.Z, ButtonPosition.Pressed, LiikutaMailaaAlas, "Pelaaja 1: Liikuta mailaa alas", maila1); 
     83            Controls.Listen(Keys.Z, ButtonPosition.Released, PysaytaMaila, null, maila1); 
    5984 
    60             Level kentta.CreateBorder(1.0, false); 
    61               
    62             kentta.BackgroundColor = Color.Black; 
     85            Controls.Listen(Keys.Up, ButtonPosition.Pressed, LiikutaMailaaYlos, "Pelaaja 2: Liikuta mailaa ylös", maila2); 
     86            Controls.Listen(Keys.Up, ButtonPosition.Released, PysaytaMaila, null, maila2); 
     87            Controls.Listen(Keys.Down, ButtonPosition.Pressed, LiikutaMailaaAlas, "Pelaaja 2: Liikuta mailaa alas", maila2); 
     88            Controls.Listen(Keys.Down, ButtonPosition.Released, PysaytaMaila, null, maila2); 
     89 
     90     
     91        } 
    6392 
    6493 
    6594 
     95        bool LiikutaMailaaAlas(ControlEvent e) 
     96        { 
     97            PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
     98            Vector2D nopeus = new Vector2D(0, -200); 
     99            maila.Velocity = nopeus; 
     100            return false; 
     101        } 
     102         
     103            
    66104 
     105       
     106 
     107        bool PysaytaMaila(ControlEvent e) 
     108        { 
     109            PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
     110            maila.Velocity = Vector2D.Zero; 
     111            return false; 
    67112        } 
    68113    } 
     114 
    69115 
    70116} 
     
    76122 
    77123 
     124 
Note: See TracChangeset for help on using the changeset viewer.