Changeset 2941 for 2012/24


Ignore:
Timestamp:
2012-06-12 12:27:52 (7 years ago)
Author:
atjokine
Message:

Talletus.

Location:
2012/24/AtteJ/Pong
Files:
6 edited

Legend:

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

    r2922 r2941  
    1515    PhysicsObject maila1; 
    1616    PhysicsObject maila2; 
     17    PhysicsObject VasenReuna; 
     18    PhysicsObject OikeaReuna; 
     19    IntMeter Pelaajan1Pisteet; 
     20    IntMeter Pelaajan2Pisteet;  
    1721    public override void Begin() 
    1822    { 
    1923        LuoKentta(); 
    2024        Ohjaimet(); 
     25        LisaaLaskurit(); 
    2126        AloitaPeli(); 
    2227        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
     
    3338        pallo.X = 0.0; 
    3439        pallo.Y = 0.0; 
    35         pallo.Restitution = 1.0;                                                          
    36         Level.CreateBorders(1.0, false);                                                 
     40        pallo.Restitution = 1.0; 
     41                                                          
     42        VasenReuna = Level.CreateLeftBorder(); 
     43        VasenReuna.Restitution = 1.0; 
     44        VasenReuna.IsVisible = false; 
     45 
     46        OikeaReuna = Level.CreateRightBorder(); 
     47        OikeaReuna.Restitution = 1.0; 
     48        OikeaReuna.IsVisible = false; 
     49 
     50        PhysicsObject AlaReuna = Level.CreateBottomBorder(); 
     51        AlaReuna.Restitution = 1.0; 
     52        AlaReuna.IsVisible = false; 
     53 
     54        PhysicsObject YläReuna = Level.CreateTopBorder(); 
     55        YläReuna.Restitution = 1.0; 
     56        YläReuna.IsVisible = false; 
     57                                         
    3758        Level.BackgroundColor = Color.Black; 
    3859 
     
    4061        maila1 = Mailat(Level.Left + 20.0, 0.0); 
    4162        maila2 = Mailat(Level.Right - 20.0, 0.0); 
     63 
     64        MessageDisplay.TextColor = Color.White; 
     65 
     66        AddCollisionHandler(pallo, KasittelePallonTormays); 
    4267    } 
    4368    void AloitaPeli() 
     
    6388        Keyboard.Listen ( Key.A, ButtonState.Released, MailojenNopeus, null, maila1, Vector.Zero); 
    6489        Keyboard.Listen ( Key.Z, ButtonState.Down, MailojenNopeus, "Pelaaja 1 , liikuta mailaa alas", maila1, NopeusAlas); 
    65         Keyboard.Listen ( Key.Z, ButtonState.Released, MailojenNopeus, null, Vector.Zero); 
     90        Keyboard.Listen ( Key.Z, ButtonState.Released, MailojenNopeus, null, maila1, Vector.Zero); 
    6691 
    6792        Keyboard.Listen ( Key.Up, ButtonState.Down, MailojenNopeus, "Pelaaja 2, liikuta mailaa ylös", maila2, NopeusYlos); 
    68         Keyboard.Listen(Key.Down, ButtonState.Released, MailojenNopeus, null, Vector.Zero); 
    69         Keyboard.Listen ( Key.Down, ButtonState.Pressed, MailojenNopeus, "Pelaaja 2, liikuta mailaasi alas", maila2,NopeusYlos); 
    70         Keyboard.Listen ( Key.Down, ButtonState.Released, MailojenNopeus, null, Vector.Zero); 
     93        Keyboard.Listen(Key.Up, ButtonState.Released, MailojenNopeus, null, maila2, Vector.Zero); 
     94        Keyboard.Listen ( Key.Down, ButtonState.Down, MailojenNopeus, "Pelaaja 2, liikuta mailaasi alas", maila2,NopeusAlas); 
     95        Keyboard.Listen ( Key.Down, ButtonState.Released, MailojenNopeus, null, maila2, Vector.Zero); 
    7196 
    7297        Keyboard.Listen ( Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli" ); 
     
    7499    void MailojenNopeus(PhysicsObject maila, Vector nopeus) 
    75100    { 
     101 
     102        if ((nopeus.Y > 0) && (maila.Top > Level.Top)) 
     103        { 
     104            maila.Velocity = Vector.Zero; 
     105            return; 
     106        } 
     107 
     108        if ((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 
     109        { 
     110            maila.Velocity = Vector.Zero; 
     111            return; 
     112        } 
    76113        maila.Velocity = nopeus; 
     114 
    77115    } 
     116    void LisaaLaskurit() 
     117    { 
     118        Pelaajan1Pisteet = LuoPisteLaskuri (Screen.Left + 100, Screen.Top - 100); 
     119        Pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100, Screen.Top - 100); 
     120    } 
     121    IntMeter LuoPisteLaskuri(double x, double y) 
     122    { 
     123        IntMeter Laskuri = new IntMeter(0); 
     124        Laskuri.MaxValue = 10; 
     125        Label naytto = new Label(); 
     126        naytto.BindTo(Laskuri); 
     127        naytto.X = x; 
     128        naytto.Y = y; 
     129        naytto.TextColor = Color.White; 
     130        naytto.BorderColor = Level.BackgroundColor; 
     131        naytto.Color = Level.BackgroundColor; 
     132        Add(naytto); 
     133            return Laskuri; 
     134    } 
     135    void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde) 
     136    { 
     137        if (kohde == OikeaReuna) 
     138        { 
     139            Pelaajan1Pisteet.Value += 1; 
     140        } 
     141        else if (kohde == VasenReuna) 
     142        { 
     143            Pelaajan2Pisteet.Value += 1; 
     144        } 
     145    } 
     146 
    78147} 
    79148  
Note: See TracChangeset for help on using the changeset viewer.