Changeset 4939 for 2014/24


Ignore:
Timestamp:
2014-06-10 15:01:48 (5 years ago)
Author:
juonoljo
Message:

hahmon lisäsin

Location:
2014/24/JuhoJ
Files:
58 added
8 edited

Legend:

Unmodified
Added
Removed
  • 2014/24/JuhoJ/Pong/Pong/Pong/Pong.cs

    r4921 r4939  
    99public class Pong : PhysicsGame 
    1010{ 
     11    const double PALLON_MIN_NOPEUS = 400; 
     12 
     13    protected override void Update(Time time) 
     14    { 
     15        if (pallo != null && Math.Abs(pallo.Velocity.X) < PALLON_MIN_NOPEUS) 
     16        { 
     17            pallo.Velocity = new Vector(pallo.Velocity.X * 1.1, pallo.Velocity.Y); 
     18        } 
     19        base.Update(time); 
     20    } 
     21 
     22 
     23 
     24 
    1125    Vector nopeusYlos = new Vector(0, 200); 
    1226    Vector nopeusAlas = new Vector(0, -200); 
     
    1731    PhysicsObject maila2; 
    1832 
     33    PhysicsObject vasenreuna; 
     34    PhysicsObject oikeareuna; 
     35 
     36    IntMeter pelaajan1Pisteet; 
     37    IntMeter pelaajan2Pisteet; 
     38 
    1939 
    2040    public override void Begin() 
     
    2242        LuoKentta(); 
    2343        AsetaOhjaimet(); 
     44        LisaaLaskurit(); 
    2445        AloitaPeli(); 
    2546        
     
    3758      maila2 = LuoMaila(Level.Right - 20.0, 0.0); 
    3859 
    39         Level.CreateBorders(1.0, false); 
     60      vasenreuna = Level.CreateLeftBorder(); 
     61      vasenreuna.Restitution = 1.0; 
     62      vasenreuna.IsVisible = false; 
     63       oikeareuna = Level.CreateRightBorder(); 
     64      oikeareuna.Restitution = 1.0; 
     65      oikeareuna.IsVisible = false; 
     66      PhysicsObject alareuna = Level.CreateBottomBorder(); 
     67      alareuna.Restitution = 1.0; 
     68      alareuna.IsVisible = false; 
     69      PhysicsObject yläreuna = Level.CreateTopBorder(); 
     70      yläreuna.Restitution = 1.0; 
     71      yläreuna.IsVisible = false; 
    4072        pallo.X = 0.0; 
    4173        pallo.Y = 0.0; 
     
    4375        Level.Background.Color = Color.Black; 
    4476        Camera.ZoomToLevel(); 
     77 
     78        AddCollisionHandler(pallo, KasittelePallonTormays); 
    4579    } 
    4680 
     
    95129 
    96130 
     131    void LisaaLaskurit() 
     132    { 
     133        pelaajan1Pisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 
     134        pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100.0, Screen.Top - 100.0); 
     135    } 
     136 
     137    IntMeter LuoPisteLaskuri(double x, double y) 
     138    { 
     139        IntMeter laskuri = new IntMeter(0); 
     140        laskuri.MaxValue = 10; 
     141         
     142        Label naytto = new Label(); 
     143        naytto.BindTo(laskuri); 
     144        naytto.X = x; 
     145        naytto.Y = y; 
     146        naytto.TextColor = Color.White; 
     147        naytto.BorderColor = Level.Background.Color; 
     148        naytto.Color = Level.Background.Color; 
     149        Add(naytto); 
     150        return laskuri; 
     151    } 
     152 
     153    void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde) 
     154    { 
     155        if (kohde == oikeareuna) 
     156        { 
     157            pelaajan1Pisteet.Value += 1; 
     158        } 
     159        else if (kohde == vasenreuna) 
     160        { 
     161            pelaajan2Pisteet.Value += 1; 
     162        } 
     163    } 
     164 
     165 
    97166} 
    98167 
Note: See TracChangeset for help on using the changeset viewer.