Changeset 2945 for 2012/24


Ignore:
Timestamp:
2012-06-12 13:13:03 (7 years ago)
Author:
matvirkk
Message:

Talletus.

Location:
2012/24/MattiV
Files:
31 added
6 edited

Legend:

Unmodified
Added
Removed
  • 2012/24/MattiV/Pong/Pong/Pong/Pong.cs

    r2926 r2945  
    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 
    1414 
     
    1616    PhysicsObject maila1; 
    1717    PhysicsObject maila2; 
    18  
     18    PhysicsObject vasenReuna; 
     19    PhysicsObject oikeaReuna; 
    1920    IntMeter pelaajan1Pisteet; 
    2021    IntMeter pelaajan2Pisteet; 
     
    2526        AsetaOhjaimet(); 
    2627        AloitaPeli(); 
    27         LisaaLaskuri();  
     28        LisaaLaskuri(); 
    2829 
    2930    } 
     
    3839        pallo.Restitution = 1.0; 
    3940        Add(pallo); 
     41        AddCollisionHandler(pallo, KasittelePallonTormays); 
    4042 
    4143        maila1 = Maila(Level.Left + 20.0, 0.0); 
    4244        maila2 = Maila(Level.Right - 20.0, 0.0); 
    4345 
    44         Level.CreateBorders(1.0, false); 
     46        vasenReuna = Level.CreateLeftBorder(); 
     47        vasenReuna.Restitution = 1.0; 
     48        vasenReuna.IsVisible = false; 
     49        oikeaReuna = Level.CreateRightBorder(); 
     50        oikeaReuna.Restitution = 1.0; 
     51        oikeaReuna.IsVisible = false; 
     52        PhysicsObject ylaReuna = Level.CreateTopBorder(); 
     53        ylaReuna.Restitution = 1.0; 
     54        ylaReuna.IsVisible = false; 
     55        PhysicsObject alaReuna = Level.CreateBottomBorder(); 
     56        alaReuna.Restitution = 1.0; 
     57        alaReuna.IsVisible = false; 
     58 
    4559        Level.BackgroundColor = Color.Black; 
    46  
     60        
    4761        Camera.ZoomToLevel(); 
    4862    } 
     
    6276        maila.Restitution = 1.0; 
    6377        Add(maila); 
    64  
    6578        return maila; 
    6679    } 
     
    8497    void AsetaNopeus(PhysicsObject maila, Vector nopeus) 
    8598    { 
    86         if ( (nopeus.Y > 0) && (maila.Top > Level.Top) ) 
     99        if ((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 
    87100        { 
    88101            maila.Velocity = Vector.Zero; 
    89102            return; 
    90103        } 
    91         if ((nopeus.Y > 0) && (maila.Top > Level.Top)) 
     104        if ( (nopeus.Y > 0) && (maila.Top > Level.Top) ) 
    92105        { 
    93106            maila.Velocity = Vector.Zero; 
     
    96109 
    97110        maila.Velocity = nopeus; 
    98         } 
     111    } 
    99112    void LisaaLaskuri() 
    100113    { 
    101         //... 
     114        pelaajan1Pisteet = LuoPisteLaskuri ( Screen.Left + 100.0, Screen.Top - 100.0); 
     115        pelaajan2Pisteet = LuoPisteLaskuri ( Screen.Right - 100.0, Screen.Top - 100.0); 
     116 
    102117    } 
    103     IntMeter LuoPisteLaskuri() 
     118    IntMeter LuoPisteLaskuri(double x, double y) 
    104119    { 
    105         IntMeter laskuri = new IntMeter( 0 ); 
     120        IntMeter laskuri = new IntMeter(0); 
    106121        laskuri.MaxValue = 15; 
    107         return laskuri; 
    108122        Label naytto = new Label(); 
    109         naytto.BindTo( laskuri ); 
     123        naytto.BindTo(laskuri); 
    110124        naytto.X = x; 
    111125        naytto.Y = y; 
     
    113127        naytto.BorderColor = Level.BackgroundColor; 
    114128        naytto.Color = Level.BackgroundColor; 
    115         Add( naytto ); 
     129        Add(naytto); 
    116130        return laskuri; 
    117131    } 
     132 
     133    void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde) 
     134    { 
     135        if (kohde == oikeaReuna) 
     136        { 
     137            pelaajan1Pisteet.Value += 1; 
     138        } 
     139        else if (kohde == vasenReuna) 
     140        { 
     141            pelaajan2Pisteet.Value += 1; 
     142        } 
     143    } 
     144} 
    118145 
    119146 
Note: See TracChangeset for help on using the changeset viewer.