Changeset 1547 for 2010/31


Ignore:
Timestamp:
2010-08-03 10:43:37 (9 years ago)
Author:
paaaanro
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2010/31/niostuom/Pong/Peli.cs

    r1517 r1547  
    66public class Peli : PhysicsGame 
    77{ 
    8     Vector nopeusYlos = new Vector(0, 200); 
    9     Vector nopeusAlas = new Vector(0, -200); 
     8    Vector nopeusYlos = new Vector(0, 700); 
     9    Vector nopeusAlas = new Vector(0, -700); 
    1010 
    1111    PhysicsObject pallo; 
     
    1414    PhysicsObject maila2; 
    1515 
     16    PhysicsObject vasenReuna; 
     17    PhysicsObject oikeaReuna; 
     18 
     19    IntMeter pelaajan1Pisteet; 
     20    IntMeter pelaajan2Pisteet; 
     21 
     22 
    1623    protected override void Begin() 
    1724    { 
     
    1926        AsetaOhjaimet(); 
    2027        AloitaPeli(); 
    21  
     28        LisaaLaskurit(); 
    2229    } 
    2330 
     
    3340        maila2 = LuoMaila (Level.Right - 20.0, 0.0); 
    3441 
    35          
    36         Level.CreateBorders(1.0, false); 
    37         pallo.Restitution = 1.01; 
     42 
     43        vasenReuna = Level.CreateLeftBorder(); 
     44        vasenReuna.Restitution = 1.0; 
     45        vasenReuna.IsVisible = false; 
     46 
     47        oikeaReuna = Level.CreateRightBorder(); 
     48        oikeaReuna.Restitution = 1.0; 
     49        oikeaReuna.IsVisible = false; 
     50 
     51        PhysicsObject alaReuna = Level.CreateBottomBorder(); 
     52        alaReuna.Restitution = 1.0; 
     53        alaReuna.IsVisible = false; 
     54 
     55        PhysicsObject yläReuna = Level.CreateTopBorder(); 
     56        yläReuna.Restitution = 1.0; 
     57        yläReuna.IsVisible = false; 
     58 
     59 
     60        pallo.Restitution = 1.10; 
    3861        Level.BackgroundColor = Color.Black; 
    3962        Camera.ZoomToLevel(); 
    4063 
    41          
     64        AddCollisionHandler(pallo, KasittelePallonTormays); 
     65 
    4266    } 
    4367    void AloitaPeli() 
     
    77101    void AsetaNopeus(PhysicsObject maila, Vector nopeus) 
    78102    { 
     103        if ((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 
     104        { 
     105            maila.Velocity = Vector.Zero; 
     106            return; 
     107        } 
     108 
     109        if ((nopeus.Y > 0) && (maila.Top > Level.Top)) 
     110     
     111        { 
     112            maila.Velocity = Vector.Zero; 
     113            return; 
     114        } 
     115 
    79116        maila.Velocity = nopeus; 
    80117    } 
    81118 
     119    void LisaaLaskurit() 
     120    { 
     121        pelaajan1Pisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 
     122        pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100.0, Screen.Top - 100.0); 
     123 
     124    } 
     125 
     126    IntMeter LuoPisteLaskuri( double x, double y) 
     127    { 
     128        IntMeter laskuri = new IntMeter(0); 
     129        laskuri.MaxValue = 10; 
     130        Label naytto = new Label(); 
     131        naytto.BindTo(laskuri); 
     132        naytto.X = x; 
     133        naytto.Y = y; 
     134        naytto.TextColor = Color.White; 
     135        Add(naytto); 
     136 
     137        return laskuri; 
     138    } 
     139 
     140    void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde) 
     141    { 
     142        if (kohde == oikeaReuna) 
     143        { 
     144            pelaajan1Pisteet.Value += 1; 
     145        } 
     146        else if (kohde == vasenReuna) 
     147        { 
     148            pelaajan2Pisteet.Value += 1; 
     149        } 
     150    } 
     151 
    82152} 
Note: See TracChangeset for help on using the changeset viewer.