Changeset 7895 for 2016


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

Legend:

Unmodified
Added
Removed
  • 2016/27/KonstantinosK/pong/pong/pong/pong.cs

    r7711 r7895  
    1616    PhysicsObject maila1; 
    1717    PhysicsObject maila2; 
     18    IntMeter pelaajan1Pisteet; 
     19    IntMeter pelaajan2Pisteet; 
     20    PhysicsObject vasenReuna; 
     21    PhysicsObject oikeaReuna; 
    1822 
    1923    public override void Begin() 
     
    2327        aloitapeli(); 
    2428        AsetaOhjaimet(); 
    25          
     29        LisaaLaskurit(); 
    2630    } 
     31    void LisaaLaskurit() 
     32    { 
     33        pelaajan1Pisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 
     34        pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100.0, Screen.Top - 100.0); 
     35 
     36    } 
     37    IntMeter LuoPisteLaskuri(double x, double y) 
     38    { 
     39        IntMeter laskuri = new IntMeter(0); 
     40        laskuri.MaxValue = 10; 
     41        Label naytto = new Label(); 
     42        naytto.BindTo(laskuri); 
     43        naytto.X = x; 
     44        naytto.Y = y; 
     45        naytto.TextColor = Color.White; 
     46        naytto.BorderColor = Level.Background.Color; 
     47        naytto.Color = Level.Background.Color; 
     48        Add(naytto); 
     49 
     50 
     51 
     52        return laskuri; 
     53    } 
     54    void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde) 
     55    { 
     56        if (kohde == oikeaReuna) 
     57        { 
     58            pelaajan1Pisteet.Value += 1; 
     59        } 
     60        else if (kohde == vasenReuna) 
     61        { 
     62            pelaajan2Pisteet.Value += 1; 
     63        } 
     64 
     65 
     66 
     67 
     68    } 
     69 
    2770    void LuoKentta() { 
    2871        pallo = new PhysicsObject(40.0, 40.0); 
     
    3376     maila1 =   LuoMaila(Level.Left + 20.0, 0.0); 
    3477     maila2 =   LuoMaila(Level.Right - 20.0, 0.0); 
    35  
     78        AddCollisionHandler(pallo, KasittelePallonTormays); 
    3679        Vector impulssi = new Vector(500.0, 0.0); 
    3780        pallo.Hit(impulssi); 
    38         Level.CreateBorders(1.0, false); 
    39         pallo.Restitution = 1.0; 
     81         vasenReuna = Level.CreateLeftBorder(); 
     82        vasenReuna.Restitution = 1.0; 
     83        vasenReuna.IsVisible = false; 
     84        oikeaReuna = Level.CreateRightBorder(); 
     85        oikeaReuna.Restitution = 1.0; 
     86        oikeaReuna.IsVisible = false; 
     87         
     88 
     89 
    4090        Level.Background.Color = Color.DarkGreen; 
    4191        Camera.ZoomToLevel(); 
     
    68118        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    69119        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     120        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
    70121    } 
    71122 
    72123    void AsetaNopeus(PhysicsObject maila, Vector nopeus) 
    73124    { 
     125 
     126        if ((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 
     127        { 
     128            maila.Velocity = Vector.Zero; 
     129            return; 
     130        } 
     131        if ((nopeus.Y > 0) && (maila.Top > Level.Top)) 
     132        { 
     133            maila.Velocity = Vector.Zero; 
     134            return; 
     135        } 
     136 
    74137        maila.Velocity = nopeus; 
    75138    } 
Note: See TracChangeset for help on using the changeset viewer.