Changeset 302


Ignore:
Timestamp:
2009-08-05 13:45:58 (11 years ago)
Author:
tojukarp
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • riku_l/pong/Peli.cs

    r275 r302  
    1919namespace pong 
    2020{ 
    21 } 
     21 
    2222    public class Peli : PhysicsGame 
    2323    { 
     
    2525        PhysicsObject maila1; 
    2626        PhysicsObject maila2; 
    27     } 
    28      
     27        Vector2D nopeusYlos = new Vector2D(0, 200); 
     28        Vector2D nopeusAlas = new Vector2D(0, -200); 
    2929        protected override void LoadContent() 
    3030        { 
    3131            Level = LuoKentta(); 
    3232            AsetaOhjaimet(); 
    33              Aloitapeli(); 
     33            Aloitapeli(); 
    3434        } 
    3535        Level LuoKentta() 
     
    3838            kentta.BackgroundColor = Color.Black; 
    3939            IShape ympyra = Shapes.CreateCircle(20.0); 
    40            maila1 = LuoMaila(kentta.Left + 20.0, 0.0,kentta); 
    41            maila2 = LuoMaila(kentta.Right -20.0, 0.0,kentta); 
     40            maila1 = LuoMaila(kentta.Left + 20.0, 0.0, kentta); 
     41            maila2 = LuoMaila(kentta.Right - 20.0, 0.0, kentta); 
    4242 
    4343            kentta.CreateBorder(1.0, false); 
     
    5050            pallo.Restitution = 1.0; 
    5151            kentta.Objects.Add(pallo); 
    52             return kentta         
    53             }  
    54                 
    55              void Aloitapeli() 
    56          
    57             { 
     52            return kentta; 
     53        } 
     54 
     55        void Aloitapeli() 
     56        { 
    5857            Vector2D impulssi = new Vector2D(2000.0, 0.0); 
    5958            pallo.Hit(impulssi); 
    60             } 
    61             PhysicsObject LuoMaila(double x, double y , Level kentta) 
    62          
    63      
    64                 { 
    65                IShape suorakulmio = Shapes.CreateRetangle(20.0, 100.0); 
    66                PhysicsObject maila = PhysicsObject.CreateStaticObject(suorakulmio);  
    67                maila.X = x 
    68                maila.Y = y 
    69                maila.Restitution = 1.0; 
    70                kentta.Objects.Add(maila); 
    71                return maila; 
    72                }  
    73             
    74  
    75      
    76            void AsetaOhjaimet() 
    77           
    78            { 
    79            Controls.Listen(Keys.A, ButtonPosition.Pressed, LiikutaMailaaYlos, "Pelaaja 1: Liikuta mailaa ylos", maila1); 
    80            Controls.Listen(Keys.A, ButtonPosition.Released, PysautaMaila, null, maila1); 
    81            Controls.Listen(Keys.Z, ButtonPosition.Pressed, LiikutaMailaaAlas, "Pelaaja 1: Liikuta mailaa alas", maila1); 
    82            Controls.Listen(Keys.z, ButtonPosition.Released, PysaytaMaila, null, maila1); 
    83             
    84            Controls.Listen(Keys.Up, ButtonPosition.Pressed, LiikutaMailaaYlos, "Pelaaja 2: Liikuta mailaa ylos", maila2); 
    85            Controls.Listen(Keys.Up, ButtonPosition.Released, PysaytaMaila, null, maila2); 
    86             
    87             
    88            } 
     59        } 
     60        PhysicsObject LuoMaila(double x, double y, Level kentta) 
     61        { 
     62            IShape suorakulmio = Shapes.CreateRectangle(20.0, 100.0); 
     63            PhysicsObject maila = PhysicsObject.CreateStaticObject(suorakulmio); 
     64            maila.X = x; 
     65            maila.Y = y; 
     66            maila.Restitution = 1.0; 
     67            kentta.Objects.Add(maila); 
     68            return maila; 
     69        } 
    8970 
    9071 
    91               bool LiikutaMailaaYlos(ControlEvent e) 
    92               
     72 
     73        void AsetaOhjaimet() 
     74        { 
     75            Controls.Listen(Keys.A, ButtonPosition.Down, LiikutaMailaaYlos, "Pelaaja 1: Liikuta mailaa ylos", maila1); 
     76            Controls.Listen(Keys.A, ButtonPosition.Released, PysaytaMaila, null, maila1); 
     77            Controls.Listen(Keys.Z, ButtonPosition.Down, LiikutaMailaaAlas, "Pelaaja 1: Liikuta mailaa alas", maila1); 
     78            Controls.Listen(Keys.Z, ButtonPosition.Released, PysaytaMaila, null, maila1); 
     79 
     80            Controls.Listen(Keys.Up, ButtonPosition.Down, LiikutaMailaaYlos, "Pelaaja 2: Liikuta mailaa ylos", maila2); 
     81            Controls.Listen(Keys.Up, ButtonPosition.Released, PysaytaMaila, null, maila2); 
     82            Controls.Listen(Keys.Down, ButtonPosition.Down, LiikutaMailaaAlas, "Palaaja 2: Liikuta mailaa alas", maila2); 
     83            Controls.Listen(Keys.Down, ButtonPosition.Released, LiikutaMailaaAlas, null, maila2); 
     84        } 
     85 
     86 
     87        bool LiikutaMailaaYlos(ControlEvent e) 
     88        { 
     89            PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
     90            if (maila.Y >= Level.Top) 
    9391            { 
    94               Vector2D nopeus = new Vector2D( 0, 200); 
     92                maila.Velocity = Vector2D.Zero; 
     93                return false; 
     94            } 
     95             Vector2D nopeus = new Vector2D(0, 200);    
    9596              maila.Velocity = nopeus; 
    96                return false; 
    97             } 
     97              return false; 
     98        } 
    9899 
    99             bool PysaytaMaila(ControlEvent e) 
    100             
    101             { 
    102              PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
    103              Vector2D nopeus = new Vector2D( 0, 200); 
    104               maila.Velocity = nopeus; 
    105                 return false;  
    106                  } 
     100        bool PysaytaMaila(ControlEvent e) 
     101        { 
     102            PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
     103            maila.Velocity = Vector2D.Zero; 
     104            return false; 
     105        }    
    107106 
    108                 
    109                bool LiikutaMailaaAlas(ControlEvent e) 
    110107 
    111               { 
    112                 PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
    113                 Vector2D nopeus = new Vector2D(0, -200); 
     108         
     109 
     110 
     111        bool LiikutaMailaaAlas(ControlEvent e) 
     112        { 
     113            PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 
     114            Vector2D nopeus = new Vector2D(0, -200.0); 
     115            maila.Velocity = nopeus; 
     116            return false; 
     117        } 
     118    } 
     119} 
     120    
     121 
    114122                 
Note: See TracChangeset for help on using the changeset viewer.