Changeset 4184 for 2013/26


Ignore:
Timestamp:
2013-06-24 14:35:47 (10 years ago)
Author:
juiitamm
Message:

Talletus.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2013/26/MikkoTa/Pong/Pong/Pong/Pong.cs

    r4180 r4184  
    99public class Pong : PhysicsGame 
    1010{ 
    11     Vector nopeusYlos = new Vector(0, 200); 
    12     Vector nopeusAlas = new Vector(0, -200); 
     11    Vector nopeusYlos = new Vector(0, 500); 
     12    Vector nopeusAlas = new Vector(0, -500); 
    1313    PhysicsObject maila1; 
    1414    PhysicsObject maila2; 
    1515    PhysicsObject pallo; 
    16      
     16 
    1717    public override void Begin() 
    1818    { 
    19          
     19 
    2020        LuoKentta(); 
     21        AsetaOhjaimet(); 
     22        AloitaPeli(); 
     23        LuoPisteLaskur(); 
    2124 
    22         Vector impulssi = new Vector(500.0, 10.0); 
    23         pallo.Hit(impulssi); 
    24  
    25          
    2625    } 
    2726    void LuoKentta() 
    2827    { 
     28        PhysicsObject vasenReuna = Level.CreateLeftBorder(); 
     29        vasenReuna.Restitution = 1.0; 
     30        vasenReuna.IsVisible = false; 
     31        PhysicsObject oikeaReuna = Level.CreateRightBorder(); 
     32        oikeaReuna.Restitution = 1.0; 
     33        oikeaReuna.IsVisible = false; 
     34        PhysicsObject alaReuna = Level.CreateBottomBorder(); 
     35        alaReuna.Restitution = 1.0; 
     36        alaReuna.IsVisible = false; 
     37        PhysicsObject ylaReuna = Level.CreateTopBorder(); 
     38        ylaReuna.Restitution = 1.0; 
     39        ylaReuna.IsVisible = false; 
     40         
     41         
    2942         
    3043        pallo = new PhysicsObject(20.0, 20.0); 
     
    3750        maila2 = LuoMaila(Level.Right - 20.0, 0.0); 
    3851 
    39  
    40        
    41  
    42  
    43  
    44  
    4552        Camera.ZoomToLevel(); 
    4653 
    4754        Level.BackgroundColor = Color.Black; 
    48         Level.CreateBorders(1.0, false); 
    4955    } 
    50     void LuoMaila(double x, double y) 
     56    void AloitaPeli() 
     57    { 
     58        Vector impulssi = new Vector(500.0, 0.0); 
     59        pallo.Hit(impulssi); 
     60    } 
     61    void AsetaOhjaimet() 
     62    { 
     63        Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa ylös", maila1, nopeusYlos); 
     64        Keyboard.Listen(Key.A, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero); 
     65        Keyboard.Listen(Key.Z, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa alas", maila1, nopeusAlas); 
     66        Keyboard.Listen(Key.Z, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero); 
     67 
     68        Keyboard.Listen(Key.Up, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa ylös", maila2, nopeusYlos); 
     69        Keyboard.Listen(Key.Up, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero); 
     70        Keyboard.Listen(Key.Down, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa alas", maila2, nopeusAlas); 
     71        Keyboard.Listen(Key.Down, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero); 
     72 
     73        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Ohjeet"); 
     74        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Lopeta"); 
     75 
     76    } 
     77    void AsetaNopeus(PhysicsObject maila, Vector nopeus) 
     78    { 
     79        if ((nopeus.Y > 0) && (maila.Top > Level.Top)) 
     80        { 
     81            maila.Velocity = Vector.Zero; 
     82            return; 
     83        }  
     84        if ((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 
     85        { 
     86            maila.Velocity = Vector.Zero; 
     87            return; 
     88        } 
     89        maila.Velocity = nopeus; 
     90    } 
     91    IntMeter LuoPisteLaskuri() 
     92    { 
     93        IntMeter laskuri = new IntMeter(0); 
     94        laskuri.MaxValue = 10; 
     95        return laskuri; 
     96    }     
     97    PhysicsObject LuoMaila(double x, double y) 
    5198    { 
    5299 
     
    57104        maila.Restitution = 1.0; 
    58105        Add(maila); 
    59  
    60     } 
    61     void AsetaOhjaimet() 
    62     { 
    63         // Keyboard.Listen(Key.A, ButtonState.Down, LiikutaMailaYlos, "Pelaaja 1: Liikuta mailaa ylös"); 
    64         // Keyboard.Listen(Key.A, ButtonState.Released, PysaytaMaila, null); 
    65         // Keyboard.Listen(Key.Z, ButtonState.Down, LiikutaMailaAlas, "Pelaaja 1: Liikuta mailaa alas"); 
    66         // Keyboard.Listen(Key.Z, ButtonState.Released, PysaytaMaila, null); 
    67  
    68         Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Exit"); 
    69     } 
    70     void AsetaNopeus 
    71     { 
    72  
     106        return maila; 
    73107    } 
    74108} 
Note: See TracChangeset for help on using the changeset viewer.