Changeset 908 for 2010/24


Ignore:
Timestamp:
2010-06-16 13:48:37 (9 years ago)
Author:
vilvaini
Message:
 
Location:
2010/24/Vilvaini
Files:
14 added
1 edited

Legend:

Unmodified
Added
Removed
  • 2010/24/Vilvaini/Smile Jump/Peli.cs

    r902 r908  
    1212    double tasokorkeutus = 1; 
    1313    double tasoleveys = 150; 
    14  
     14    IntMeter pelaajan1pisteet; 
     15    IntMeter pelaajan2pisteet; 
     16    
    1517 
    1618    IntMeter pisteLaskuri; 
     
    2022    PlatformCharacter pelaaja2; 
    2123    PhysicsObject vihollinen; 
     24    PhysicsObject taso; 
    2225 
    2326    Timer aikaLaskuri;          // laskee aikaa 
     
    2730    PhysicsObject alaReuna; 
    2831    PhysicsObject oikeaReuna; 
    29  
     32    PhysicsObject DownReuna; 
    3033    int kenttaNro; // monesko kenttä on menossa 
    3134     
     
    3437    { 
    3538 
     39         
     40         
     41         
    3642        aikaLaskuri = new Timer();                     // luodaan uusi ajastin, nimeltä aikaLaskuri 
    3743        aikaLaskuri.Interval = 5;                      // ajastukseksi 5 sekuntia 
     
    5460 
    5561        // Luodaan pistelaskuri 
    56         pisteLaskuri = new IntMeter(0); 
     62        pelaajan1pisteet = new IntMeter(0); 
    5763 
    5864        // luodaan pistelaskunäyttö 
     
    6167        pisteNaytto.X = Screen.RightSafe - 250; 
    6268        pisteNaytto.Y = Screen.TopSafe - 50; 
    63         pisteNaytto.BindTo(pisteLaskuri); 
     69        pisteNaytto.BindTo(pelaajan1pisteet); 
    6470        Add(pisteNaytto);    // lisätään peliin 
    6571 
    6672        // Zoomataan lähemmäksi 
    67         //Camera.ZoomFactor = 2.0; 
     73        //Camera.ZoomToLevel(); 
    6874 
    6975        Camera.StayInLevel = true; 
     
    7379 
    7480         
    75         for (int i = 0; i < 70; i++) 
     81        for (int i = 0; i < 140; i++) 
    7682        { 
    7783            tasokorkeus = tasokorkeus + 180 + tasokorkeutus; 
     
    7985            lisaaTaso(RandomGen.NextDouble(0, Level.Right - 50), Level.Bottom + tasokorkeus + RandomGen.NextDouble(10.0,30.0), tasoleveys); 
    8086             
    81             tasoleveys = tasoleveys - 2; 
     87            tasoleveys = tasoleveys - 1; 
    8288             
    8389         
    8490        } 
    85  
    86  
    87          
    88     } 
     91         
     92        LisaaDownReuna(Camera.Position.Y - 200); 
     93         
     94 
     95 
     96         
     97    } 
     98 
     99    void TasoTuho(PhysicsObject taso) 
     100    { 
     101        if (pelaaja1.Y > pelaaja2.Y) 
     102        { 
     103            if (taso.Y + 1000 < pelaaja1.Y) 
     104            { 
     105                taso.Destroy(); 
     106                pelaajan1pisteet.Value += 1; 
     107            } 
     108        } 
     109    } 
     110 
    89111 
    90112    void seuraavaKentta() 
    91113    { 
    92114        ClearAll(); 
    93         pisteLaskuri.Reset(); 
     115        //pisteLaskuri.Reset(); 
    94116 
    95117        kenttaNro += 1; // lisätään kenttänumeroa yhdellä 
     
    101123        luoKentta(); 
    102124        lisaaNappaimet(); 
     125        //LisaaDownReuna(Camera.Position.Y - 200); 
     126         
    103127         
    104128    } 
     
    114138            pelaaja1.X = Level.Right - 30; 
    115139        } 
     140    } 
     141 
     142    void TasonTormays(PhysicsObject taso, PhysicsObject kohde) 
     143    { 
     144        if (kohde == DownReuna) 
     145        { 
     146            taso.Destroy(); 
     147        } 
     148          
    116149    } 
    117150    void luoKentta() 
     
    144177        taso.Y = y; 
    145178        taso.Image = LoadImage("Smile Jump(laatta)"); 
     179        AddCollisionHandler(taso, TasonTormays); 
    146180        Add(taso); 
    147181    } 
     
    167201        AddCollisionHandler(pelaaja1, KasittelePallonTormays); 
    168202        AddCollisionHandler(pelaaja2, KasittelePallonTormays); 
    169  
     203        
    170204        Add(pelaaja1);  
    171205        Add(pelaaja2); 
     
    181215        vihollinen.IgnoresPhysicsLogics = true; 
    182216        vihollinen.Velocity = new Vector(100.0, 0.0); 
    183  
     217         
    184218        Add(vihollinen); 
    185219 
     
    192226        // täydennä: mitä tapahtuu, kun aika loppui 
    193227        aikaLaskuri.Reset();  // nollataan aikalaskuri oletusarvoonsa, joka oli 0. 
     228 
     229        AddCollisionHandler(pelaaja1, TasonTormays); 
     230        AddCollisionHandler(pelaaja2, TasonTormays); 
     231 
    194232    } 
    195233 
     
    230268    } 
    231269 
    232  
     270    void LisaaDownReuna(double y) 
     271    { 
     272        DownReuna = new PhysicsObject(2000, 100); 
     273        DownReuna.X = 0; 
     274        DownReuna.Y = Level.Bottom + 50; 
     275        DownReuna.IgnoresCollisionResponse = true; 
     276        DownReuna.IgnoresGravity = true; 
     277 
     278        Add(DownReuna); 
     279 
     280 
     281    } 
     282    
     283     
     284     
     285     
     286     
     287     
    233288    protected override void Update(Time time) 
    234289    { 
     
    236291        { 
    237292            Camera.Follow(pelaaja1); 
     293             
    238294        } 
    239295        else 
    240296        { 
    241297            Camera.Follow(pelaaja2); 
    242         } 
     298            
     299        } 
     300 
     301        DownReuna.Y = Camera.Position.Y - 400; 
     302        
     303 
    243304        base.Update(time); 
     305 
    244306         
    245307    } 
Note: See TracChangeset for help on using the changeset viewer.