Changeset 1992 for 2011/24/EeroP


Ignore:
Timestamp:
2011-06-14 14:58:30 (8 years ago)
Author:
eejoprit
Message:
 
Location:
2011/24/EeroP
Files:
14 added
1 edited

Legend:

Unmodified
Added
Removed
  • 2011/24/EeroP/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/Peli.cs

    r1976 r1992  
    1414    PhysicsObject pallo; 
    1515 
     16 
     17 
    1618    PhysicsObject maila1; 
    1719    PhysicsObject maila2; 
    1820 
     21    IntMeter pelaaja1pisteet; 
     22    IntMeter pelaaja2pisteet; 
    1923 
     24    PhysicsObject vasenreuna; 
     25    PhysicsObject oikeareuna; 
    2026 
    2127    public override void Begin() 
    2228    { 
    2329        // TODO: Kirjoita ohjelmakoodisi tähän 
     30 
     31 
    2432        luokentta(); 
    2533        asetaohjaimet(); 
     34        lisaalaskurit(); 
    2635        aloitapeli(); 
    2736 
     
    3645 
    3746        Level.BackgroundColor = Color.Black; 
    38         Level.CreateBorders(1.0, false); 
     47        
     48        vasenreuna = Level.CreateLeftBorder(); 
     49        vasenreuna.Restitution = 1.0; 
     50        vasenreuna.IsVisible = false; 
     51 
     52        oikeareuna = Level.CreateRightBorder(); 
     53        oikeareuna.Restitution = 1.0; 
     54        oikeareuna.IsVisible = false; 
     55 
     56        PhysicsObject yläreuna = Level.CreateTopBorder(); 
     57        yläreuna.Restitution = 1.0; 
     58        yläreuna.IsVisible = false; 
     59 
     60        PhysicsObject alareuna = Level.CreateBottomBorder(); 
     61        alareuna.Restitution = 1.0; 
     62        alareuna.IsVisible = false; 
    3963 
    4064        //pallo 
     
    4771        pallo.Color = Color.Lime; 
    4872 
     73        AddCollisionHandler (pallo, pallontormays); 
     74 
    4975        maila1 = luomaila (Level.Left + 20.0, 0.0); 
    5076        maila2 = luomaila(Level.Right - 20.0, 0.0); 
    5177 
    5278 
    53         MessageDisplay.TextColor = Color.Lime; 
     79        MessageDisplay.TextColor = Color.Aqua; 
    5480 
    5581        
     82         
    5683    } 
    5784 
     
    7299        maila.X = x; 
    73100        maila.Y = y; 
    74         maila.Restitution = 1.0; 
     101        maila.Restitution = 1.5; 
    75102        Add(maila); 
    76103 
     
    93120        Keyboard.Listen(Key.Down, ButtonState.Released, asetanopeus, null, maila2, Vector.Zero); 
    94121        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "näytä ohjeet"); 
     122         
     123        Keyboard.Listen(Key.F2, ButtonState.Pressed, Begin, "lisää palloja :DD"); 
    95124    } 
    96125 
     
    98127    void asetanopeus(PhysicsObject maila, Vector nopeus) 
    99128    { 
     129        if ((nopeus.Y > 0) && (maila.Top > Level.Top)) 
     130        { 
     131            maila.Velocity = Vector.Zero; 
     132            return; 
     133        } 
     134 
     135        if ((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 
     136        { 
     137            maila.Velocity = Vector.Zero; 
     138            return; 
     139        } 
     140 
    100141        maila.Velocity = nopeus; 
    101142    } 
     143 
     144 
     145    void lisaalaskurit() 
     146    { 
     147        pelaaja1pisteet = luopistelaskuri(Screen.Left + 200.0, Screen.Top - 200.0); 
     148    pelaaja2pisteet = luopistelaskuri (Screen.Right - 200.0, Screen.Top - 200.0); 
     149    } 
     150 
     151    IntMeter luopistelaskuri(double x, double y) 
     152    {  
     153        IntMeter laskuri = new IntMeter(0); 
     154        laskuri.MaxValue = 10; 
     155        Label naytto = new Label(); 
     156        naytto.BindTo(laskuri); 
     157        naytto.X = x; 
     158        naytto.Y = y; 
     159        naytto.TextColor = Color.Aqua; 
     160        naytto.BorderColor = Level.BackgroundColor; 
     161        naytto.Color = Level.BackgroundColor; 
     162        Add(naytto); 
     163 
     164        return laskuri; 
     165    } 
     166 
     167    void pallontormays(PhysicsObject pallo, PhysicsObject kohde) 
     168     
     169    { 
     170        if (kohde == oikeareuna) 
     171        { 
     172            pelaaja1pisteet.Value += 1; 
     173        } 
     174 
     175        else if (kohde == vasenreuna) 
     176        { 
     177            pelaaja2pisteet.Value += 1; 
     178 
     179        } 
     180    } 
     181 
     182    
     183   
     184 
    102185} 
     186 
Note: See TracChangeset for help on using the changeset viewer.