Changeset 7788 for 2016/27/VerttiH


Ignore:
Timestamp:
2016-07-05 14:54:10 (3 years ago)
Author:
karkaite
Message:
 
Location:
2016/27/VerttiH
Files:
1 added
6 edited

Legend:

Unmodified
Added
Removed
  • 2016/27/VerttiH/Pong/Pong/Pong/Pong.cs

    r7714 r7788  
    1313 
    1414    PhysicsObject pallo; 
    15  
    1615    PhysicsObject maila1; 
    1716    PhysicsObject maila2; 
     17 
     18    PhysicsObject vasenReuna; 
     19    PhysicsObject oikeaReuna; 
     20 
     21    IntMeter pelaajan1Pisteet; 
     22    IntMeter pelaajan2Pisteet; 
    1823    public override void Begin() 
    1924      
     
    2328        LuoKentta(); 
    2429        AsetaOhjaimet(); 
     30        LisaaLaskurit(); 
    2531        AloitaPeli(); 
    2632 
     
    4349    void AsetaNopeus(PhysicsObject maila, Vector nopeus) 
    4450    { 
    45         if ((nopeus.Y (maila.Top > Level.Top) 
     51        if ((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 
     52        { 
     53            maila.Velocity = Vector.Zero; 
     54            return; 
     55        } 
     56        if ((nopeus.Y > 0) && (maila.Top > Level.Top)) 
     57        { 
     58            maila.Velocity = Vector.Zero; 
     59            return; 
     60        } 
    4661 
    4762        maila.Velocity = nopeus; 
    48         return; 
    4963    } 
    5064 
     65    IntMeter LuoPisteLaskuri(double x, double y) 
     66    { 
     67        IntMeter laskuri = new IntMeter(0); 
     68        laskuri.MaxValue = 10; 
     69 
     70        Label naytto = new Label(); 
     71        naytto.BindTo(laskuri); 
     72        naytto.X = x; 
     73        naytto. Y = y; 
     74        naytto.TextColor = Color.White; 
     75        naytto.BorderColor = Level.Background.Color; 
     76        naytto.Color = Level.Background.Color; 
     77        Add(naytto); 
     78 
     79        return laskuri; 
     80    } 
     81    void LisaaLaskurit() 
     82    { 
     83        pelaajan1Pisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 
     84        pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100.0, Screen.Top - 100.0); 
     85    } 
    5186    void AsetaOhjaimet() 
    5287    { 
     
    82117        pallo.Hit(impulssi); 
    83118    } 
     119    void KasittelePallonTormays(PhysicsObject Pallo, PhysicsObject kohde) 
     120    { 
     121    if (kohde == oikeaReuna) 
     122        { 
     123            pelaajan1Pisteet.Value += 1; 
     124        } 
     125    else if (kohde == vasenReuna) 
     126        { 
     127            pelaajan2Pisteet.Value += 1; 
     128        } 
     129    } 
    84130    void LuoKentta() 
    85131    { 
     
    91137        Add(pallo); 
    92138 
    93          
     139        AddCollisionHandler(pallo, KasittelePallonTormays);  
    94140 
    95141        
     
    98144        maila2 = LuoMaila(Level.Right - 20.0, 0.0); 
    99145 
    100         Level.CreateBorders(1.0, false); 
     146         vasenReuna = Level.CreateLeftBorder(); 
     147        vasenReuna.Restitution = 1.0; 
     148        vasenReuna.IsVisible = false; 
     149 
     150         oikeaReuna = Level.CreateRightBorder(); 
     151        oikeaReuna.Restitution = 1.0; 
     152        oikeaReuna.IsVisible = false; 
     153 
     154        PhysicsObject alaReuna = Level.CreateBottomBorder(); 
     155        alaReuna.Restitution = 1.0; 
     156        alaReuna.IsVisible = false; 
     157 
     158        PhysicsObject ylaReuna = Level.CreateTopBorder(); 
     159        ylaReuna.Restitution = 1.0; 
     160        ylaReuna.IsVisible = false; 
     161 
    101162        Level.Background.Color = Color.Black; 
    102163 
Note: See TracChangeset for help on using the changeset viewer.