Ignore:
Timestamp:
2010-07-20 11:54:30 (9 years ago)
Author:
vilvaini
Message:

TODELLA paljon uusia ominaisuuksia mm. uudet valikot, uusi pelimodi: yhteistyöpelimuoto, Parhaat pisteet lista ja paljon muuta.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2010/24/Vilvaini/SmilejumpToimiva/Peli.cs

    r1024 r1248  
    11using System; 
     2using System.Collections.Generic; 
    23using Jypeli; 
    34using Jypeli.ScreenObjects; 
    45using Jypeli.Assets; 
    5  
    6 class Tasohyppely : PhysicsGame 
     6using Jypeli.Widgets; 
     7 
     8public class Tasohyppely : PhysicsGame 
    79{ 
     10    GameObject Pelaajamaaranappi = new GameObject(600, 100); 
     11    GameObject Ohjeetnappi = new GameObject(600, 100); 
     12    GameObject Pisteetnappi = new GameObject(600, 100); 
     13    GameObject Poistunappi = new GameObject(600, 100); 
     14 
    815    const double nopeus = 300; 
    916    const double hyppyVoima = 4000; 
     17 
     18    const double Kuplaaika = 5; 
     19 
     20    const double KPPisteraja = 7; 
     21 
    1022    double tasokorkeus = 0; 
    1123    double vihollistiheytys = 1; 
    1224    double tasoleveys = 150; 
    1325    double viholliskorkeus = 800; 
    14  
    15     bool Kolmepelaajaa = false; 
    16     bool Kaksipelaajaa = false; 
    17     bool Neljapelaajaa = false; 
     26    double pelaajamaara = 0; 
     27    double korkeus; 
     28    double korkein; 
     29 
     30    bool YP = false; 
     31    bool PeliKäynnissä = false; 
    1832    bool p1SaiVoiton = false; 
    1933    bool p2SaiVoiton = false; 
    2034    bool p3SaiVoiton = false; 
    2135    bool p4SaiVoiton = false; 
     36    bool p1elamamenetys = false; 
     37    bool p2elamamenetys = false; 
     38    bool p3elamamenetys = false; 
     39    bool p4elamamenetys = false; 
     40    bool p1OnKuplassa = false; 
     41    bool p2OnKuplassa = false; 
     42    bool p3OnKuplassa = false; 
     43    bool p4OnKuplassa = false; 
    2244 
    2345    IntMeter pelaajan1pisteet; 
     
    2547    IntMeter pelaajan3pisteet; 
    2648    IntMeter pelaajan4pisteet; 
    27  
    28     PhysicsObject voittaja; 
    29     PhysicsObject p1voitti; 
    30     PhysicsObject p2voitti; 
    31     PhysicsObject p3voitti; 
    32     PhysicsObject p4voitti; 
     49    IntMeter pelaajan1elamat; 
     50    IntMeter pelaajan2elamat; 
     51    IntMeter pelaajan3elamat; 
     52    IntMeter pelaajan4elamat; 
    3353 
    3454    PlatformCharacter pelaaja1; 
     
    3757    PlatformCharacter pelaaja4; 
    3858 
     59    PhysicsObject P1kupla; 
     60    PhysicsObject P2kupla; 
     61    PhysicsObject P3kupla; 
     62    PhysicsObject P4kupla; 
     63    PhysicsObject voittaja; 
    3964    PhysicsObject Alku; 
     65    PhysicsObject PMäärä; 
     66    PhysicsObject Tappio; 
    4067    PhysicsObject Ohje2p; 
    4168    PhysicsObject Ohje3p; 
    42     PhysicsObject taso; 
    43  
    44     Timer aikaLaskuri2; 
    45     Timer aikaLaskuri; 
    46  
    4769    PhysicsObject vasenReuna; 
    4870    PhysicsObject alaReuna; 
     
    5072    PhysicsObject DownReuna; 
    5173 
     74    Timer aikaLaskuri3; 
     75    Timer aikaLaskuri2; 
     76    Timer aikaLaskuri; 
     77 
     78    Timer KuplaSyntymä1; 
     79    Timer KuplaSyntymä2; 
     80    Timer KuplaSyntymä3; 
     81    Timer KuplaSyntymä4; 
     82 
     83    TextDisplay mittari; 
     84 
     85    HighScoreList korkeustaulukko; 
     86 
     87    Vector aloituspaikka; 
     88 
    5289    protected override void Begin() 
    5390    { 
     91        //MediaPlayer.Play("Menu"); 
     92        TeeKorkeustaulukko(); 
     93        SetWindowSize(1440, 900, true);  
     94        //SetWindowSize(true); 
    5495        Level.Width = 1024; 
    55         Level.Height = 15000; 
     96        Level.Height = 30000; 
     97        Teelaskurit(); 
     98        Camera.StayInLevel = true; 
     99        Alkukentta(); 
     100    } 
     101 
     102    private void TeeKorkeustaulukko() 
     103    { 
     104        korkeustaulukko = HighScoreList.LoadOrCreate("jeejee.dat", 20); 
     105        korkeustaulukko.ScreenList.ItemColor = Color.Black; 
     106        korkeustaulukko.ScreenList.BackGroundColor = Color.TransparentWhite; 
     107        korkeustaulukko.ScreenList.X = -280; 
     108        korkeustaulukko.ScreenList.Y = 40; 
     109        korkeustaulukko.ScreenList.HighlightColor = Color.TransparentBlack; 
     110        korkeustaulukko.ScreenInput.QueryText.TextColor = Color.Blue; 
     111        korkeustaulukko.CongratulationText = "Onnittelut! Pääsit {1} pikseliä korkealle! Pääsit {0}. sijalle. Syötä nimesi:"; 
     112    } 
     113 
     114    private void Teelaskurit() 
     115    { 
    56116        pelaajan1pisteet = new IntMeter(0); 
    57117        pelaajan2pisteet = new IntMeter(0); 
    58118        pelaajan3pisteet = new IntMeter(0); 
    59119        pelaajan4pisteet = new IntMeter(0); 
    60         Camera.StayInLevel = true; 
    61         Alkukentta(); 
     120        pelaajan1elamat = new IntMeter(2); 
     121        pelaajan2elamat = new IntMeter(2); 
     122        pelaajan3elamat = new IntMeter(2); 
     123        pelaajan4elamat = new IntMeter(2); 
    62124    } 
    63125 
    64126    void Alkukentta() 
    65127    { 
     128        PeliKäynnissä = false; 
    66129        ClearAll(); 
    67         //MediaPlayer.Play("Menu"); 
    68         AlustaPistelaskurit(); 
     130        YP = false; 
     131 
     132        Mouse.IsCursorVisible = true; 
     133        AlustaLaskurit(); 
    69134        Alkunappaimet(); 
    70         lisaaPelaajat(); 
     135        lisaaPelaaja1(0, Level.Bottom + 50); 
     136        lisaaPelaaja2(100, Level.Bottom + 50); 
    71137        LisaaDownReuna(); 
     138        LisaaEitoimiruutu(); 
    72139        alaReuna = Level.CreateBottomBorder(); 
    73         Level.Background.CreateGradient(Color.Beige, Color.Wheat); 
    74140        LisaaAloitusruutu(); 
    75         Kolmepelaajaa = false; 
    76         Kaksipelaajaa = false; 
    77     } 
    78  
    79     private void AlustaPistelaskurit() 
     141        pelaajamaara = 0; 
     142        TeePäävalikkoNapit(); 
     143    } 
     144 
     145    private void TeePäävalikkoNapit() 
     146    { 
     147        Pelaajamaaranappi = new GameObject(400, 70); 
     148        Pisteetnappi = new GameObject(400, 70); 
     149        Ohjeetnappi = new GameObject(400, 70); 
     150        Poistunappi = new GameObject(400, 70); 
     151 
     152        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Pressed, Pelaajamaarakentta, ""); 
     153        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "",(4)); 
     154        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Pressed, Parhaatpisteetkentta, ""); 
     155        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (5)); 
     156        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Pressed, Ohjevalikko, ""); 
     157        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (6)); 
     158        Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Pressed, Exit, ""); 
     159        Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (7)); 
     160 
     161        Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli"); 
     162        Pisteetnappi.Image = LoadImage("NappiPisteet"); 
     163        Ohjeetnappi.Image = LoadImage("NappiOhjeet"); 
     164        Poistunappi.Image = LoadImage("NappiPoistu"); 
     165 
     166        Pelaajamaaranappi.X = 0; 
     167        Pelaajamaaranappi.Y = Level.Bottom + 330; 
     168        Pisteetnappi.X = 0; 
     169        Pisteetnappi.Y = Level.Bottom + 240; 
     170        Ohjeetnappi.X = 0; 
     171        Ohjeetnappi.Y = Level.Bottom + 150; 
     172        Poistunappi.X = 0; 
     173        Poistunappi.Y = Level.Bottom + 60; 
     174 
     175        Add(Pelaajamaaranappi); 
     176        Add(Pisteetnappi); 
     177        Add(Ohjeetnappi); 
     178        Add(Poistunappi); 
     179 
     180    } 
     181 
     182    private void Nappipunainen(int nappi) 
     183    { 
     184        //Pelaajamääränapit ja ohjenapit 
     185        if (nappi == 1) 
     186        { 
     187            Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli2"); 
     188            Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     189            Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     190            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     191        } 
     192        if (nappi == 2) 
     193        { 
     194            Pisteetnappi.Image = LoadImage("NappiKolminpeli2"); 
     195            Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     196            Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     197            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     198        } 
     199        if (nappi == 3) 
     200        { 
     201            Ohjeetnappi.Image = LoadImage("NappiNelinpeli2"); 
     202            Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     203            Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     204            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     205        } 
     206        //Päävalikkonapit 
     207        if (nappi == 4) 
     208        { 
     209            Ohjeetnappi.Image = LoadImage("NappiOhjeet"); 
     210            Pisteetnappi.Image = LoadImage("NappiPisteet"); 
     211            Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli2"); 
     212            Poistunappi.Image = LoadImage("NappiPoistu"); 
     213        } 
     214        if (nappi == 5) 
     215        { 
     216            Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli"); 
     217            Ohjeetnappi.Image = LoadImage("NappiOhjeet"); 
     218            Pisteetnappi.Image = LoadImage("NappiPisteet2"); 
     219            Poistunappi.Image = LoadImage("NappiPoistu"); 
     220        } 
     221        if (nappi == 6) 
     222        { 
     223            Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli"); 
     224            Pisteetnappi.Image = LoadImage("NappiPisteet"); 
     225            Ohjeetnappi.Image = LoadImage("NappiOhjeet2"); 
     226            Poistunappi.Image = LoadImage("NappiPoistu"); 
     227        } 
     228        if (nappi == 7) 
     229        { 
     230            Pelaajamaaranappi.Image = LoadImage("NappiAloitapeli"); 
     231            Pisteetnappi.Image = LoadImage("NappiPisteet"); 
     232            Ohjeetnappi.Image = LoadImage("NappiOhjeet"); 
     233            Poistunappi.Image = LoadImage("NappiPoistu2"); 
     234        } 
     235        //Pelimodinapit 
     236        if (nappi == 8) 
     237        { 
     238            Pelaajamaaranappi.Image = LoadImage("NappiKP"); 
     239            Pisteetnappi.Image = LoadImage("NappiYP"); 
     240            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     241        } 
     242        if (nappi == 9) 
     243        { 
     244            Pelaajamaaranappi.Image = LoadImage("NappiKP2"); 
     245            Pisteetnappi.Image = LoadImage("NappiYP2"); 
     246            Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     247        } 
     248        //if (nappi == 10) 
     249        //{ 
     250        //    Poistunappi.Image = LoadImage("NappiPäävalikkoon2"); 
     251        //} 
     252 
     253        //Ohjenapit = pelaajamääränapit 
     254 
     255        //Paluunappi 
     256        if (nappi == 14) 
     257        { 
     258            Poistunappi.Image = LoadImage("NappiPäävalikkoon2"); 
     259            Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     260            Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     261            Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     262        } 
     263        if (nappi == 15) 
     264        { 
     265            Poistunappi.Image = LoadImage("NappiPäävalikkoon2"); 
     266            Pelaajamaaranappi.Image = LoadImage("NappiKP2"); 
     267            Pisteetnappi.Image = LoadImage("NappiYP"); 
     268        } 
     269    } 
     270 
     271    private void TeePelimodiNapit() 
     272    { 
     273        Pelaajamaaranappi = new GameObject(400, 70); 
     274        Pisteetnappi = new GameObject(400, 70); 
     275        //Poistunappi = new GameObject(400, 70); 
     276 
     277        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Pressed, AloitaKP, ""); 
     278        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (8)); 
     279        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Pressed, AloitaYP, ""); 
     280        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (9)); 
     281        //Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Pressed, Alkukentta, ""); 
     282        //Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (10)); 
     283 
     284        Pelaajamaaranappi.Image = LoadImage("NappiKP2"); 
     285        Pisteetnappi.Image = LoadImage("NappiYP"); 
     286        //Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     287 
     288        Pelaajamaaranappi.X = 0; 
     289        Pelaajamaaranappi.Y = Level.Bottom + 330; 
     290        Pisteetnappi.X = 0; 
     291        Pisteetnappi.Y = Level.Bottom + 240; 
     292        //Poistunappi.X = 0; 
     293        //Poistunappi.Y = Level.Bottom + 60; 
     294 
     295        Add(Pelaajamaaranappi); 
     296        Add(Pisteetnappi); 
     297        //Add(Poistunappi); 
     298        TeePaluuNappi(0, Level.Bottom + 60, 400, 70, 2); 
     299    } 
     300 
     301    private void TeePelaajamääräNapit() 
     302    { 
     303        Pelaajamaaranappi = new GameObject(400, 70); 
     304        Pisteetnappi = new GameObject(400, 70); 
     305        Ohjeetnappi = new GameObject(400, 70); 
     306 
     307        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Pressed, Kahdenpelaajanpeli, ""); 
     308        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "",(1)); 
     309        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Pressed, Kolmenpelaajanpeli, ""); 
     310        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (2)); 
     311        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Pressed, Neljanpelaajanpeli, ""); 
     312        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (3)); 
     313 
     314        Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     315        Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     316        Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     317 
     318        Pelaajamaaranappi.X = 0; 
     319        Pelaajamaaranappi.Y = Level.Bottom + 360; 
     320        Pisteetnappi.X = 0; 
     321        Pisteetnappi.Y = Level.Bottom + 270; 
     322        Ohjeetnappi.X = 0; 
     323        Ohjeetnappi.Y = Level.Bottom + 180; 
     324 
     325        Add(Pelaajamaaranappi); 
     326        Add(Pisteetnappi); 
     327        Add(Ohjeetnappi); 
     328        TeePaluuNappi(0, Level.Bottom + 50, 400, 70,1); 
     329    } 
     330 
     331    private void TeeOhjeNapit() 
     332    { 
     333        Pelaajamaaranappi = new GameObject(400, 70); 
     334        Pisteetnappi = new GameObject(400, 70); 
     335        Ohjeetnappi = new GameObject(400, 70); 
     336 
     337        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Pressed, ohjevalikko2p, ""); 
     338        Mouse.ListenOn(Pelaajamaaranappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (1)); 
     339        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Pressed, ohjevalikko3p, ""); 
     340        Mouse.ListenOn(Pisteetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (2)); 
     341        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Pressed, ohjevalikko4p, ""); 
     342        Mouse.ListenOn(Ohjeetnappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (3)); 
     343 
     344        Pelaajamaaranappi.Image = LoadImage("NappiKaksinpeli"); 
     345        Pisteetnappi.Image = LoadImage("NappiKolminpeli"); 
     346        Ohjeetnappi.Image = LoadImage("NappiNelinpeli"); 
     347 
     348        Pelaajamaaranappi.X = 0; 
     349        Pelaajamaaranappi.Y = Level.Bottom + 330; 
     350        Pisteetnappi.X = 0; 
     351        Pisteetnappi.Y = Level.Bottom + 240; 
     352        Ohjeetnappi.X = 0; 
     353        Ohjeetnappi.Y = Level.Bottom + 150; 
     354 
     355        Add(Pelaajamaaranappi); 
     356        Add(Pisteetnappi); 
     357        Add(Ohjeetnappi); 
     358        TeePaluuNappi(0, Level.Bottom + 60, 400, 70,1); 
     359 
     360    } 
     361 
     362    private void TeePaluuNappi(double x, double y, double leveys, double korkeus, double ruutu) 
     363    { 
     364        Poistunappi = new GameObject(leveys, korkeus); 
     365 
     366        Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Pressed, Alkukentta, ""); 
     367        if (ruutu == 1) 
     368        { 
     369            Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (14)); 
     370        } 
     371        if (ruutu == 2) 
     372        { 
     373            Mouse.ListenOn(Poistunappi, MouseButton.Left, ButtonState.Up, Nappipunainen, "", (15)); 
     374        } 
     375 
     376        Poistunappi.Image = LoadImage("NappiPäävalikkoon"); 
     377 
     378        Poistunappi.X = x; 
     379        Poistunappi.Y = y; 
     380 
     381        Add(Poistunappi); 
     382 
     383    } 
     384 
     385    void AloitaYP() 
     386    { 
     387        if (pelaajamaara == 2) 
     388        { 
     389            KahdenpelaajanYP(); 
     390        } 
     391        if (pelaajamaara == 3) 
     392        { 
     393            KolmenpelaajanYP(); 
     394        } 
     395        if (pelaajamaara == 4) 
     396        { 
     397            NeljanpelaajanYP(); 
     398        } 
     399        PeliKäynnissä = true; 
     400    } 
     401 
     402    void AloitaKP() 
     403    { 
     404        if (pelaajamaara == 2) 
     405        { 
     406            KahdenpelaajanKP(); 
     407        } 
     408        if (pelaajamaara == 3) 
     409        { 
     410            KolmenpelaajanKP(); 
     411        } 
     412        if (pelaajamaara == 4) 
     413        { 
     414            NeljanpelaajanKP(); 
     415        } 
     416        PeliKäynnissä = true; 
     417    } 
     418 
     419    void Pelimodikentta() 
     420    { 
     421        ClearAll(); 
     422        LisaaEitoimiruutu(); 
     423        TeePelimodivalikko(); 
     424        TeePelimodiNapit(); 
     425    } 
     426 
     427    void Ohjevalikko() 
     428    { 
     429        ClearAll(); 
     430        LisaaEitoimiruutu(); 
     431        TeeOhjevalikko(); 
     432        TeeOhjeNapit(); 
     433    } 
     434 
     435    void Pelaajamaarakentta() 
     436    { 
     437        ClearAll(); 
     438        LisaaEitoimiruutu(); 
     439        TeePelaajaMäärä(); 
     440        TeePelaajamääräNapit(); 
     441    } 
     442 
     443    void Parhaatpisteetkentta() 
     444    { 
     445        PeliKäynnissä = false; 
     446        ClearAll(); 
     447        Tappionappaimet(); 
     448        TeeTappiovalikko(); 
     449        pelaajamaara = 0; 
     450        korkeustaulukko.Show((int)korkeus); 
     451        TeePaluuNappi(6, Level.Bottom + 31, 300, 50,1); 
     452        //MediaPlayer.Stop(); 
     453    } 
     454 
     455    void Tappionappaimet() 
     456    { 
     457        Keyboard.Listen(Key.P, ButtonState.Pressed, Alkukentta, ""); 
     458    } 
     459 
     460    private void AlustaLaskurit() 
    80461    { 
    81462        pelaajan1pisteet.Reset(); 
     
    83464        pelaajan3pisteet.Reset(); 
    84465        pelaajan4pisteet.Reset(); 
     466 
     467        pelaajan1elamat.Reset(); 
     468        pelaajan2elamat.Reset(); 
     469        pelaajan3elamat.Reset(); 
     470        pelaajan4elamat.Reset(); 
    85471    } 
    86472 
     
    90476        Keyboard.Listen(Key.D3, ButtonState.Pressed, Kolmenpelaajanpeli, ""); 
    91477        Keyboard.Listen(Key.D4, ButtonState.Pressed, Neljanpelaajanpeli, ""); 
     478        Keyboard.Listen(Key.D5, ButtonState.Pressed, korkeustaulukko.Show, ""); 
    92479        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, ""); 
    93480    } 
    94481 
     482    private void Pelimodinappaimet() 
     483    { 
     484        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, ""); 
     485        if (pelaajamaara == 2) 
     486        { 
     487            Keyboard.Listen(Key.D1, ButtonState.Pressed, KahdenpelaajanKP, ""); 
     488            Keyboard.Listen(Key.D2, ButtonState.Pressed, KahdenpelaajanYP, ""); 
     489            Keyboard.Listen(Key.H, ButtonState.Pressed, ohjevalikko2p, ""); 
     490        } 
     491        if (pelaajamaara == 3) 
     492        { 
     493            Keyboard.Listen(Key.D1, ButtonState.Pressed, KolmenpelaajanKP, ""); 
     494            Keyboard.Listen(Key.D2, ButtonState.Pressed, KolmenpelaajanYP, ""); 
     495            Keyboard.Listen(Key.H, ButtonState.Pressed, ohjevalikko3p, ""); 
     496        } 
     497        if (pelaajamaara == 4) 
     498        { 
     499            Keyboard.Listen(Key.D1, ButtonState.Pressed, NeljanpelaajanKP, ""); 
     500            Keyboard.Listen(Key.D2, ButtonState.Pressed, NeljanpelaajanYP, ""); 
     501            Keyboard.Listen(Key.H, ButtonState.Pressed, ohjevalikko4p, ""); 
     502        } 
     503    } 
     504 
    95505    void seuraavaKentta() 
    96506    { 
    97507        ClearAll(); 
    98         if (Kolmepelaajaa == true) 
    99         { 
    100             lisaaPelaaja3(); 
    101         } 
    102  
    103         if (Neljapelaajaa == true) 
    104         { 
    105             lisaaPelaaja3(); 
    106             lisaaPelaaja4(); 
    107         } 
    108         lisaaTaso(RandomGen.NextDouble(Level.Left + 50, Level.Right - 50), Level.Bottom + 150, 150); 
    109  
     508 
     509        if (pelaajamaara == 3) 
     510        { 
     511            lisaaPelaaja3(-100, Level.Bottom + 50); 
     512        } 
     513 
     514        if (pelaajamaara == 4) 
     515        { 
     516            lisaaPelaaja3(-100, Level.Bottom + 50); 
     517            lisaaPelaaja4(200, Level.Bottom + 50); 
     518        } 
    110519        TeeReunat(); 
    111         TeePistenaytot(); 
     520        if (YP == false) TeePistenaytot(); 
    112521 
    113522        Gravity = new Vector(0, -600); 
     
    115524        luoKentta(); 
    116525        lisaaNappaimet(); 
    117         Camera.Follow(pelaaja1); 
     526        if (YP == true) 
     527        { 
     528            Timer korkeusAjastin = new Timer(); 
     529            korkeusAjastin.Interval = 0.1; 
     530            korkeusAjastin.Trigger += NaytaKorkeus; 
     531            Add(korkeusAjastin); 
     532            korkeusAjastin.Start(); 
     533 
     534            TeeElamanaytot(); 
     535            lisaaYPNappaimet(); 
     536            p1OnKuplassa = false; 
     537            p2OnKuplassa = false; 
     538            p3OnKuplassa = false; 
     539            p4OnKuplassa = false; 
     540        } 
     541    } 
     542 
     543    private void lisaaYPNappaimet() 
     544    { 
     545        Keyboard.Listen(Key.Down, ButtonState.Pressed, Pelaaja1kupla, ""); 
     546        Keyboard.Listen(Key.S, ButtonState.Pressed, Pelaaja2kupla, ""); 
     547        if (pelaajamaara == 3) Keyboard.Listen(Key.K, ButtonState.Pressed, Pelaaja3kupla, ""); 
     548        if (pelaajamaara == 4) Keyboard.Listen(Key.K, ButtonState.Pressed, Pelaaja3kupla, ""); 
     549    } 
     550 
     551    void lisaaPelaaja1kupla(double x, double y) 
     552    { 
     553        P1kupla = new PhysicsObject(50, 50); 
     554        P1kupla.Image = LoadImage("P1bubble"); 
     555        P1kupla.Shape = Shapes.Circle; 
     556        P1kupla.X = x; 
     557        P1kupla.Y = y; 
     558        P1kupla.IgnoresCollisionResponse = true; 
     559        P1kupla.IgnoresPhysicsLogics = true; 
     560        P1kupla.Velocity = new Vector(0.0, 50.0); 
     561        AddCollisionHandler(P1kupla, KasitteleKuplan1Tormays); 
     562 
     563        Add(P1kupla); 
     564    } 
     565 
     566    void lisaaPelaaja2kupla(double x, double y) 
     567    { 
     568        P2kupla = new PhysicsObject(50, 50); 
     569        P2kupla.Image = LoadImage("P2bubble"); 
     570        P2kupla.Shape = Shapes.Circle; 
     571        P2kupla.X = x; 
     572        P2kupla.Y = y; 
     573        P2kupla.IgnoresCollisionResponse = true; 
     574        P2kupla.IgnoresPhysicsLogics = true; 
     575        P2kupla.Velocity = new Vector(0.0, 50.0); 
     576        AddCollisionHandler(P2kupla, KasitteleKuplan2Tormays); 
     577 
     578        Add(P2kupla); 
     579    } 
     580 
     581    void lisaaPelaaja3kupla(double x, double y) 
     582    { 
     583        P3kupla = new PhysicsObject(60, 60); 
     584        P3kupla.Image = LoadImage("P3bubble"); 
     585        P3kupla.Shape = Shapes.Circle; 
     586        P3kupla.X = x; 
     587        P3kupla.Y = y; 
     588        P3kupla.IgnoresCollisionResponse = true; 
     589        P3kupla.IgnoresPhysicsLogics = true; 
     590        P3kupla.Velocity = new Vector(0.0, 50.0); 
     591        AddCollisionHandler(P3kupla, KasitteleKuplan3Tormays); 
     592 
     593        Add(P3kupla); 
     594    } 
     595 
     596    void lisaaPelaaja4kupla(double x, double y) 
     597    { 
     598        P4kupla = new PhysicsObject(60, 60); 
     599        P4kupla.Image = LoadImage("P3bubble"); 
     600        P4kupla.Shape = Shapes.Circle; 
     601        P4kupla.X = x; 
     602        P4kupla.Y = y; 
     603        P4kupla.IgnoresCollisionResponse = true; 
     604        P4kupla.IgnoresPhysicsLogics = true; 
     605        P4kupla.Velocity = new Vector(0.0, 50.0); 
     606        AddCollisionHandler(P4kupla, KasitteleKuplan4Tormays); 
     607 
     608        Add(P4kupla); 
     609    } 
     610    void Pelaaja1kupla() 
     611    { 
     612        if (p1OnKuplassa == false) 
     613        { 
     614            lisaaPelaaja1kupla(pelaaja1.X, pelaaja1.Y); 
     615            p1OnKuplassa = true; 
     616        } 
     617        pelaaja1.Destroy(); 
     618    } 
     619 
     620    void Pelaaja2kupla() 
     621    { 
     622        if (p2OnKuplassa == false) 
     623        { 
     624            lisaaPelaaja2kupla(pelaaja2.X, pelaaja2.Y); 
     625            p2OnKuplassa = true; 
     626        } 
     627        pelaaja2.Destroy(); 
     628    } 
     629 
     630    void Pelaaja3kupla() 
     631    { 
     632        if (p3OnKuplassa == false) 
     633        { 
     634            lisaaPelaaja3kupla(pelaaja3.X, pelaaja3.Y); 
     635            p3OnKuplassa = true; 
     636        } 
     637        if (pelaaja3 != null) 
     638        { 
     639            pelaaja3.Destroy(); 
     640        } 
     641    } 
     642 
     643    void Pelaaja4kupla() 
     644    { 
     645        if (p4OnKuplassa == false) 
     646        { 
     647            lisaaPelaaja4kupla(pelaaja4.X, pelaaja4.Y); 
     648            p4OnKuplassa = true; 
     649        } 
     650        pelaaja4.Destroy(); 
    118651    } 
    119652 
     
    129662        Add(pisteNaytto); 
    130663 
    131  
    132664        ValueDisplay pisteNaytto2 = new ValueDisplay(); 
    133665        pisteNaytto2.Text = "Pelaaja 2: "; 
     
    139671        Add(pisteNaytto2); 
    140672 
    141         if (Kolmepelaajaa == true) 
     673        if (pelaajamaara == 3) 
    142674        { 
    143675            ValueDisplay pisteNaytto3 = new ValueDisplay(); 
     
    150682            Add(pisteNaytto3); 
    151683        } 
    152         if (Neljapelaajaa == true) 
     684        if (pelaajamaara == 4) 
    153685        { 
    154686            ValueDisplay pisteNaytto3 = new ValueDisplay(); 
     
    172704    } 
    173705 
     706    void TeeElamanaytot() 
     707    { 
     708        ValueDisplay elamaNaytto = new ValueDisplay(); 
     709        elamaNaytto.Text = "Pelaaja 1:n elämät: "; 
     710        elamaNaytto.X = Screen.Left + 150; 
     711        elamaNaytto.Y = Screen.Top - 100; 
     712        elamaNaytto.ValueColor = Color.Red; 
     713        elamaNaytto.TextColor = Color.Red; 
     714        elamaNaytto.BindTo(pelaajan1elamat); 
     715        Add(elamaNaytto); 
     716 
     717 
     718        ValueDisplay elamaNaytto2 = new ValueDisplay(); 
     719        elamaNaytto2.Text = "Pelaaja 2:n elämät: "; 
     720        elamaNaytto2.X = Screen.Left + 400; 
     721        elamaNaytto2.Y = Screen.Top - 100; 
     722        elamaNaytto2.ValueColor = Color.Red; 
     723        elamaNaytto2.TextColor = Color.Red; 
     724        elamaNaytto2.BindTo(pelaajan2elamat); 
     725        Add(elamaNaytto2); 
     726 
     727        if (pelaajamaara == 3) 
     728        { 
     729            ValueDisplay elamaNaytto3 = new ValueDisplay(); 
     730            elamaNaytto3.Text = "Pelaaja 3:n elämät: "; 
     731            elamaNaytto3.X = Screen.Right - 400; 
     732            elamaNaytto3.Y = Screen.Top - 100; 
     733            elamaNaytto3.ValueColor = Color.Red; 
     734            elamaNaytto3.TextColor = Color.Red; 
     735            elamaNaytto3.BindTo(pelaajan3elamat); 
     736            Add(elamaNaytto3); 
     737        } 
     738        if (pelaajamaara == 4) 
     739        { 
     740            ValueDisplay elamaNaytto3 = new ValueDisplay(); 
     741            elamaNaytto3.Text = "Pelaaja 3:n elämät: "; 
     742            elamaNaytto3.X = Screen.Right - 400; 
     743            elamaNaytto3.Y = Screen.Top - 100; 
     744            elamaNaytto3.ValueColor = Color.Red; 
     745            elamaNaytto3.TextColor = Color.Red; 
     746            elamaNaytto3.BindTo(pelaajan3elamat); 
     747            Add(elamaNaytto3); 
     748 
     749            ValueDisplay elamaNaytto4 = new ValueDisplay(); 
     750            elamaNaytto4.Text = "Pelaaja 4:n elämät: "; 
     751            elamaNaytto4.X = Screen.Right - 150; 
     752            elamaNaytto4.Y = Screen.Top - 100; 
     753            elamaNaytto4.ValueColor = Color.Red; 
     754            elamaNaytto4.TextColor = Color.Red; 
     755            elamaNaytto4.BindTo(pelaajan4elamat); 
     756            Add(elamaNaytto4); 
     757        } 
     758    } 
     759 
    174760    void TeeReunat() 
    175761    { 
     
    187773    } 
    188774 
     775    void LisaaEitoimiruutu() 
     776    { 
     777        Alku = PhysicsObject.CreateStaticObject(1024, 768); 
     778        Alku.X = 0; 
     779        Alku.Y = Level.Bottom + 400; 
     780        Alku.Image = LoadImage("SJeitoimi"); 
     781        Alku.IgnoresCollisionResponse = true; 
     782        Alku.IgnoresPhysicsLogics = true; 
     783        Add(Alku); 
     784    } 
     785 
    189786    void LisaaAloitusruutu() 
    190787    { 
     
    192789        Alku.X = 0; 
    193790        Alku.Y = Level.Bottom + 320; 
    194         Alku.Image = LoadImage("Aloituskokonaytto2"); 
     791        Alku.Image = LoadImage("SJpäävalikko"); 
    195792        Alku.IgnoresCollisionResponse = true; 
    196793        Alku.IgnoresPhysicsLogics = true; 
     
    198795    } 
    199796 
    200     void voitto(int voittavaPelaaja) 
     797    void TeePelimodivalikko() 
     798    { 
     799        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     800        Alku.X = 0; 
     801        Alku.Y = Level.Bottom + 320; 
     802        Alku.Image = LoadImage("SJpelimodi"); 
     803        Alku.IgnoresCollisionResponse = true; 
     804        Alku.IgnoresPhysicsLogics = true; 
     805        Add(Alku); 
     806    } 
     807 
     808    void TeeOhjevalikko() 
     809    { 
     810        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     811        Alku.X = 0; 
     812        Alku.Y = Level.Bottom + 320; 
     813        Alku.Image = LoadImage("SJohjeet"); 
     814        Alku.IgnoresCollisionResponse = true; 
     815        Alku.IgnoresPhysicsLogics = true; 
     816        Add(Alku); 
     817    } 
     818 
     819    void TeePelaajaMäärä() 
     820    { 
     821        PMäärä = PhysicsObject.CreateStaticObject(1024, 640); 
     822        PMäärä.X = 0; 
     823        PMäärä.Y = Level.Bottom + 320; 
     824        PMäärä.Image = LoadImage("SJpelaajamaara"); 
     825        PMäärä.IgnoresCollisionResponse = true; 
     826        PMäärä.IgnoresPhysicsLogics = true; 
     827        Add(PMäärä); 
     828    } 
     829 
     830    void TeeTappiovalikko() 
     831    { 
     832        Tappio = PhysicsObject.CreateStaticObject(1024, 640); 
     833        Camera.Position = new Vector(0, 0); 
     834        Tappio.X = Camera.Position.X; 
     835        Tappio.Y = -14680; 
     836        Tappio.Image = LoadImage("SJparhaatpisteet"); 
     837        Tappio.IgnoresCollisionResponse = true; 
     838        Tappio.IgnoresPhysicsLogics = true; 
     839        Add(Tappio); 
     840    } 
     841 
     842    void ohjevalikko2p() 
     843    { 
     844        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     845        Alku.X = 0; 
     846        Alku.Y = Level.Bottom + 320; 
     847        Alku.Image = LoadImage("SJ2pohjeet"); 
     848        Alku.IgnoresCollisionResponse = true; 
     849        Alku.IgnoresPhysicsLogics = true; 
     850        Add(Alku); 
     851        NappiAlkuvalikkoon(); 
     852    } 
     853 
     854    void ohjevalikko3p() 
     855    { 
     856        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     857        Alku.X = 0; 
     858        Alku.Y = Level.Bottom + 320; 
     859        Alku.Image = LoadImage("SJ3pohjeet"); 
     860        Alku.IgnoresCollisionResponse = true; 
     861        Alku.IgnoresPhysicsLogics = true; 
     862        Add(Alku); 
     863        NappiAlkuvalikkoon(); 
     864    } 
     865 
     866    void ohjevalikko4p() 
     867    { 
     868        Alku = PhysicsObject.CreateStaticObject(1024, 640); 
     869        Alku.X = 0; 
     870        Alku.Y = Level.Bottom + 320; 
     871        Alku.Image = LoadImage("SJ4pohjeet"); 
     872        Alku.IgnoresCollisionResponse = true; 
     873        Alku.IgnoresPhysicsLogics = true; 
     874        Add(Alku); 
     875        NappiAlkuvalikkoon(); 
     876    } 
     877 
     878    private void NappiAlkuvalikkoon() 
     879    { 
     880        Keyboard.Listen(Key.P, ButtonState.Pressed, Alkukentta, ""); 
     881    } 
     882 
     883    void voitto() 
    201884    { 
    202885        voittaja = PhysicsObject.CreateStaticObject(1024, 640); 
    203886        Camera.Position = new Vector(0, 0); 
    204887        voittaja.X = Camera.Position.X; 
    205         voittaja.Y = Camera.Position.Y; 
    206         if (voittavaPelaaja == 1) 
     888        voittaja.Y = -14680; 
     889        if (p1SaiVoiton == true) 
    207890        { 
    208891            voittaja.Image = LoadImage("Smile Jump(pelaaja1voitti)"); 
    209892        } 
    210         if (voittavaPelaaja == 2) 
     893        if (p2SaiVoiton == true) 
    211894        { 
    212895            voittaja.Image = LoadImage("Smile Jump(pelaaja2voitti)"); 
    213896        } 
    214         if (voittavaPelaaja == 3) 
     897        if (p3SaiVoiton == true) 
    215898        { 
    216899            voittaja.Image = LoadImage("Smile Jump(pelaaja3voitti)"); 
    217900        } 
    218         if (voittavaPelaaja == 4) 
     901        if (p4SaiVoiton == true) 
    219902        { 
    220903            voittaja.Image = LoadImage("Smile Jump(pelaaja4voitti)"); 
    221904        } 
     905 
    222906        voittaja.IgnoresCollisionResponse = true; 
    223         voittaja.IgnoresPhysicsLogics = true; 
    224907        Add(voittaja); 
    225908    } 
    226909 
    227     void pelaaja1voitti() 
    228     { 
    229         p1voitti = PhysicsObject.CreateStaticObject(1024, 640); 
    230         Camera.Position = new Vector(0, 0); 
    231         p1voitti.X = Camera.Position.X; 
    232         p1voitti.Y = -7180; 
    233         p1voitti.Image = LoadImage("Smile Jump(pelaaja1voitti)"); 
    234  
    235         p1voitti.IgnoresCollisionResponse = true; 
    236         p1voitti.IgnoresPhysicsLogics = true; 
    237         Add(p1voitti); 
    238     } 
    239  
    240     void pelaaja2voitti() 
    241     { 
    242         p2voitti = PhysicsObject.CreateStaticObject(1024, 640); 
    243         Camera.Position = new Vector(0,0); 
    244         p2voitti.X = Camera.Position.X; 
    245         p2voitti.Y = -7180; 
    246         p2voitti.Image = LoadImage("Smile Jump(pelaaja2voitti)"); 
    247  
    248         p2voitti.IgnoresCollisionResponse = true; 
    249         p2voitti.IgnoresPhysicsLogics = true; 
    250         Add(p2voitti); 
    251     } 
    252  
    253     void pelaaja3voitti() 
    254     { 
    255         p3voitti = PhysicsObject.CreateStaticObject(1024, 640); 
    256         Camera.Position = new Vector(0, 0); 
    257         p3voitti.X = Camera.Position.X; 
    258         p3voitti.Y = -7180; 
    259         p3voitti.Image = LoadImage("Smile Jump(pelaaja3voitti)"); 
    260  
    261         p3voitti.IgnoresCollisionResponse = true; 
    262         p3voitti.IgnoresPhysicsLogics = true; 
    263         Add(p3voitti); 
    264     } 
    265  
    266     void pelaaja4voitti() 
    267     { 
    268         p4voitti = PhysicsObject.CreateStaticObject(1024, 640); 
    269         Camera.Position = new Vector(0, 0); 
    270         p4voitti.X = Camera.Position.X; 
    271         p4voitti.Y = -7180; 
    272         p4voitti.Image = LoadImage("Smile Jump(pelaaja4voitti)"); 
    273  
    274         p4voitti.IgnoresCollisionResponse = true; 
    275         p4voitti.IgnoresPhysicsLogics = true; 
    276         Add(p4voitti); 
    277     } 
    278  
    279910    void KasittelePallonTormays(PhysicsObject pelaaja1, PhysicsObject kohde) 
    280911    { 
     
    289920    } 
    290921 
     922    void KasitteleKuplan1Tormays(PhysicsObject kupla, PhysicsObject kohde) 
     923    { 
     924        if (kohde == pelaaja2) 
     925        { 
     926            lisaaPelaaja1(kupla.X, kupla.Y); 
     927            kupla.Destroy(); 
     928            lisaaNappaimet(); 
     929            p1OnKuplassa = false; 
     930        } 
     931        if (kohde == pelaaja3) 
     932        { 
     933            lisaaPelaaja1(kupla.X, kupla.Y); 
     934            kupla.Destroy(); 
     935            lisaaNappaimet(); 
     936            p1OnKuplassa = false; 
     937        } 
     938        if (kohde == pelaaja4) 
     939        { 
     940            lisaaPelaaja1(kupla.X, kupla.Y); 
     941            kupla.Destroy(); 
     942            lisaaNappaimet(); 
     943            p1OnKuplassa = false; 
     944        } 
     945    } 
     946 
     947    void KasitteleKuplan2Tormays(PhysicsObject kupla, PhysicsObject kohde) 
     948    { 
     949        if (kohde == pelaaja1) 
     950        { 
     951            lisaaPelaaja2(kupla.X, kupla.Y); 
     952            kupla.Destroy(); 
     953            lisaaNappaimet(); 
     954            p2OnKuplassa = false; 
     955        } 
     956        if (kohde == pelaaja3) 
     957        { 
     958            lisaaPelaaja2(kupla.X, kupla.Y); 
     959            kupla.Destroy(); 
     960            lisaaNappaimet(); 
     961            p2OnKuplassa = false; 
     962        } 
     963        if (kohde == pelaaja4) 
     964        { 
     965            lisaaPelaaja2(kupla.X, kupla.Y); 
     966            kupla.Destroy(); 
     967            lisaaNappaimet(); 
     968            p2OnKuplassa = false; 
     969        } 
     970    } 
     971 
     972    void KasitteleKuplan3Tormays(PhysicsObject kupla, PhysicsObject kohde) 
     973    { 
     974        if (kohde == pelaaja2) 
     975        { 
     976            lisaaPelaaja3(kupla.X, kupla.Y); 
     977            kupla.Destroy(); 
     978            lisaaNappaimet(); 
     979            p3OnKuplassa = false; 
     980        } 
     981        if (kohde == pelaaja1) 
     982        { 
     983            lisaaPelaaja3(kupla.X, kupla.Y); 
     984            kupla.Destroy(); 
     985            lisaaNappaimet(); 
     986            p3OnKuplassa = false; 
     987        } 
     988        if (kohde == pelaaja4) 
     989        { 
     990            lisaaPelaaja3(kupla.X, kupla.Y); 
     991            kupla.Destroy(); 
     992            lisaaNappaimet(); 
     993            p3OnKuplassa = false; 
     994        } 
     995    } 
     996 
     997    void KasitteleKuplan4Tormays(PhysicsObject kupla, PhysicsObject kohde) 
     998    { 
     999        if (kohde == pelaaja2) 
     1000        { 
     1001            lisaaPelaaja4(kupla.X, kupla.Y); 
     1002            kupla.Destroy(); 
     1003            lisaaNappaimet(); 
     1004            p4OnKuplassa = false; 
     1005        } 
     1006        if (kohde == pelaaja3) 
     1007        { 
     1008            lisaaPelaaja4(kupla.X, kupla.Y); 
     1009            kupla.Destroy(); 
     1010            lisaaNappaimet(); 
     1011            p4OnKuplassa = false; 
     1012        } 
     1013        if (kohde == pelaaja1) 
     1014        { 
     1015            lisaaPelaaja4(kupla.X, kupla.Y); 
     1016            kupla.Destroy(); 
     1017            lisaaNappaimet(); 
     1018            p4OnKuplassa = false; 
     1019        } 
     1020    } 
     1021 
    2911022    void TasonTormays(PhysicsObject taso, PhysicsObject kohde) 
    2921023    { 
     
    3021033        if (kohde == DownReuna) 
    3031034        { 
     1035            if (YP == true && p1elamamenetys == false) 
     1036            { 
     1037                p1elamamenetys = true; 
     1038                pelaajan1elamat.Value--; 
     1039                KuplaSyntymä1.Start(); 
     1040            } 
    3041041            p1.Destroy(); 
    3051042            ControllerOne.Vibrate(1, 1, 0.0, 0.0, 0.5); 
     
    3081045        if (kohde.Tag.ToString() == "vihollinen") 
    3091046        { 
     1047            if (YP == true && p1elamamenetys == false) 
     1048            { 
     1049                p1elamamenetys = true; 
     1050                pelaajan1elamat.Value--; 
     1051                KuplaSyntymä1.Start(); 
     1052            } 
    3101053            kohde.Destroy(); 
    3111054            p1.Destroy(); 
     
    3211064            p2.Destroy(); 
    3221065            ControllerTwo.Vibrate(1, 1, 0.0, 0.0, 0.5); 
    323  
     1066            if (YP == true && p2elamamenetys == false) 
     1067            { 
     1068                p2elamamenetys = true; 
     1069                pelaajan2elamat.Value--; 
     1070                KuplaSyntymä2.Start(); 
     1071            } 
    3241072        } 
    3251073 
     
    3291077            p2.Destroy(); 
    3301078            ControllerTwo.Vibrate(1, 1, 0.0, 0.0, 0.5); 
    331         } 
    332  
    333     } 
    334  
     1079            if (YP == true && p2elamamenetys == false) 
     1080            { 
     1081                p2elamamenetys = true; 
     1082                pelaajan2elamat.Value--; 
     1083                KuplaSyntymä2.Start(); 
     1084            } 
     1085        } 
     1086 
     1087    } 
    3351088 
    3361089    void Pelaaja3Osui(PhysicsObject p3, PhysicsObject kohde) 
     
    3401093            p3.Destroy(); 
    3411094            ControllerThree.Vibrate(1, 1, 0.0, 0.0, 0.5); 
     1095            if (YP == true && p3elamamenetys == false) 
     1096            { 
     1097                p3elamamenetys = true; 
     1098                pelaajan3elamat.Value--; 
     1099                KuplaSyntymä3.Start(); 
     1100            } 
    3421101        } 
    3431102 
     
    3471106            p3.Destroy(); 
    3481107            ControllerThree.Vibrate(1, 1, 0.0, 0.0, 0.5); 
     1108            if (YP == true && p3elamamenetys == false) 
     1109            { 
     1110                p3elamamenetys = true; 
     1111                pelaajan3elamat.Value--; 
     1112                KuplaSyntymä3.Start(); 
     1113            } 
    3491114        } 
    3501115 
     
    3551120        if (kohde == DownReuna) 
    3561121        { 
     1122            if (YP == true && p4elamamenetys == false) 
     1123            { 
     1124                p4elamamenetys = true; 
     1125                pelaajan4elamat.Value--; 
     1126                KuplaSyntymä4.Start(); 
     1127            } 
    3571128            p4.Destroy(); 
     1129            ControllerFour.Vibrate(1, 1, 0.0, 0.0, 0.5); 
    3581130        } 
    3591131 
    3601132        if (kohde.Tag.ToString() == "vihollinen") 
    3611133        { 
     1134            if (YP == true && p4elamamenetys == false) 
     1135            { 
     1136                p4elamamenetys = true; 
     1137                pelaajan4elamat.Value--; 
     1138                KuplaSyntymä4.Start(); 
     1139            } 
    3621140            kohde.Destroy(); 
    3631141            p4.Destroy(); 
    364         } 
    365  
    366     } 
    367  
    368     void VihollisKaantyVR(PhysicsObject vihulainen, PhysicsObject kohde) 
     1142            ControllerFour.Vibrate(1, 1, 0.0, 0.0, 0.5); 
     1143        } 
     1144 
     1145    } 
     1146 
     1147    void VihollisKaanty(PhysicsObject vihulainen, PhysicsObject kohde) 
    3691148    { 
    3701149        if (kohde == vasenReuna) 
     
    3721151            vihulainen.Velocity = new Vector(220.0, 0.0); 
    3731152        } 
    374  
    375     } 
    376  
    377     void VihollisKaantyOR(PhysicsObject vihulainen, PhysicsObject kohde) 
    378     { 
    3791153        if (kohde == oikeaReuna) 
    3801154        { 
     
    3841158    } 
    3851159 
     1160    void Nappainohje() 
     1161    { 
     1162        MessageDisplay.Add("Katso ohjeet valikosta"); 
     1163    } 
     1164 
    3861165    void luoKentta() 
    3871166    { 
    388         tasokorkeus = 50; 
     1167        lisaaTaso(RandomGen.NextDouble(Level.Left + 50, Level.Right - 50), Level.Bottom + 100, 150); 
     1168 
     1169        mittari = new TextDisplay(); 
     1170        Add(mittari); 
     1171 
     1172        TeeTasot(); 
     1173        vihollistiheytys = 0; 
     1174        viholliskorkeus = 0; 
     1175        for (int v = 0; v < 55; v++) 
     1176        { 
     1177            viholliskorkeus = viholliskorkeus + 600 - vihollistiheytys; 
     1178            LisaaVihollinen(RandomGen.NextDouble(Level.Left, Level.Right), Level.Bottom + viholliskorkeus + RandomGen.NextDouble(0.0, 40.0)); 
     1179            vihollistiheytys = vihollistiheytys + 10; 
     1180        } 
     1181 
     1182        LisaaDownReuna(); 
     1183 
     1184        Level.Background.CreateGradient(Color.SkyBlue, Color.DarkBlue); 
     1185        lisaaPelaaja1(0, Level.Bottom + 50); 
     1186        lisaaPelaaja2(100, Level.Bottom + 50); 
     1187        Teeaikalaskurit(); 
     1188        TeeKuplaSyntymälaskurit(); 
     1189 
     1190        Level.Width = 1024; 
     1191        Level.Height = 30000; 
     1192 
     1193 
     1194        if (pelaajamaara == 2) 
     1195        { 
     1196            Ohjeet2pelaajaa(); 
     1197        } 
     1198        if (pelaajamaara == 3) 
     1199        { 
     1200            Ohjeet3pelaajaa(); 
     1201        } 
     1202        if (pelaajamaara == 4) 
     1203        { 
     1204            Ohjeet3pelaajaa(); 
     1205        } 
     1206        aloituspaikka = pelaaja1.Position; 
     1207    } 
     1208 
     1209    private void TeeTasot() 
     1210    { 
     1211        tasokorkeus = 100; 
    3891212        tasoleveys = 150; 
    3901213        for (int i = 0; i < 145; i++) 
     
    3951218            tasoleveys = tasoleveys - 1; 
    3961219        } 
    397         vihollistiheytys = 0; 
    398         viholliskorkeus = 0; 
    399         for (int v = 0; v < 55; v++) 
    400         { 
    401             viholliskorkeus = viholliskorkeus + 600 - vihollistiheytys; 
    402             LisaaVihollinen(RandomGen.NextDouble(Level.Left, Level.Right), Level.Bottom + viholliskorkeus + RandomGen.NextDouble(0.0, 40.0)); 
    403             vihollistiheytys = vihollistiheytys + 10; 
    404         } 
    4051220 
    4061221        tasokorkeus = 150; 
     
    4121227            tasokorkeus = tasokorkeus + 170; 
    4131228        } 
    414         LisaaDownReuna(); 
    415  
    416         Level.Background.CreateGradient(Color.SkyBlue, Color.DarkBlue); 
    417         lisaaPelaajat(); 
    418  
     1229    } 
     1230 
     1231    void Teeaikalaskurit() 
     1232    { 
    4191233        aikaLaskuri = new Timer(); 
    4201234        aikaLaskuri.Interval = 2; 
     
    4281242        Add(aikaLaskuri2); 
    4291243 
    430         Level.Width = 1024; 
    431         Level.Height = 15000; 
    432  
    433         LisaaVihollinen(0.0, Level.Bottom + 500); 
    434         Camera.StayInLevel = true; 
    435  
    436         if (Kaksipelaajaa == true) 
    437         { 
    438             Ohjeet2pelaajaa(); 
    439         } 
    440         if (Kolmepelaajaa == true) 
    441         { 
    442             Ohjeet3pelaajaa(); 
    443         } 
    444         if (Neljapelaajaa == true) 
    445         { 
    446             Ohjeet3pelaajaa(); 
    447         } 
     1244        aikaLaskuri3 = new Timer(); 
     1245        aikaLaskuri3.Interval = 1; 
     1246        aikaLaskuri3.Trigger += aikaLoppui3; 
     1247        Add(aikaLaskuri3); 
     1248    } 
     1249 
     1250    void TeeKuplaSyntymälaskurit() 
     1251    { 
     1252        KuplaSyntymä1 = new Timer(); 
     1253        KuplaSyntymä1.LimitTimes(1); 
     1254        KuplaSyntymä1.Interval = Kuplaaika; 
     1255        KuplaSyntymä1.Trigger += KuplaSyntymä1aika; 
     1256        Add(KuplaSyntymä1); 
     1257 
     1258        KuplaSyntymä2 = new Timer(); 
     1259        KuplaSyntymä2.LimitTimes(1); 
     1260        KuplaSyntymä2.Interval = Kuplaaika; 
     1261        KuplaSyntymä2.Trigger += KuplaSyntymä2aika; 
     1262        Add(KuplaSyntymä2); 
     1263 
     1264        KuplaSyntymä3 = new Timer(); 
     1265        KuplaSyntymä3.LimitTimes(1); 
     1266        KuplaSyntymä3.Interval = Kuplaaika; 
     1267        KuplaSyntymä3.Trigger += KuplaSyntymä3aika; 
     1268        Add(KuplaSyntymä3); 
     1269 
     1270        KuplaSyntymä4 = new Timer(); 
     1271        KuplaSyntymä4.LimitTimes(1); 
     1272        KuplaSyntymä4.Interval = Kuplaaika; 
     1273        KuplaSyntymä4.Trigger += KuplaSyntymä4aika; 
     1274        Add(KuplaSyntymä4); 
    4481275    } 
    4491276 
     
    4561283        Ohje2p.IgnoresCollisionResponse = true; 
    4571284        Ohje2p.IgnoresPhysicsLogics = true; 
    458         Add(Ohje2p); 
     1285        if (YP == false) 
     1286        { 
     1287            Add(Ohje2p); 
     1288        } 
    4591289    } 
    4601290 
     
    4671297        Ohje3p.IgnoresCollisionResponse = true; 
    4681298        Ohje3p.IgnoresPhysicsLogics = true; 
    469         Add(Ohje3p); 
     1299        if (YP == false) 
     1300        { 
     1301            Add(Ohje3p); 
     1302        } 
    4701303    } 
    4711304 
     
    4811314    } 
    4821315 
    483     void lisaaPelaajat() 
     1316    void lisaaPelaaja1(double x, double y) 
    4841317    { 
    4851318        pelaaja1 = new PlatformCharacter(40, 40); 
     
    4871320        pelaaja1.Shape = Shapes.Circle; 
    4881321        pelaaja1.Image = LoadImage("smile jump(keltainen pelaaja) (2)"); 
    489         pelaaja1.X = 0; 
    490         pelaaja1.Y = Level.Bottom + 50; 
    491  
     1322        pelaaja1.X = x; 
     1323        pelaaja1.Y = y; 
     1324 
     1325        AddCollisionHandler(pelaaja1, KasittelePallonTormays); 
     1326 
     1327        Add(pelaaja1); 
     1328    } 
     1329 
     1330    void lisaaPelaaja2(double x, double y) 
     1331    { 
    4921332        pelaaja2 = new PlatformCharacter(40, 40); 
    4931333        pelaaja2.Mass = 4.0; 
    4941334        pelaaja2.Shape = Shapes.Circle; 
    4951335        pelaaja2.Image = LoadImage("smile jump (vihreä pelaaja) (2)"); 
    496         pelaaja2.X = 50; 
    497         pelaaja2.Y = Level.Bottom + 50; 
    498  
    499         AddCollisionHandler(pelaaja1, KasittelePallonTormays); 
     1336        pelaaja2.X = x; 
     1337        pelaaja2.Y = y; 
     1338 
    5001339        AddCollisionHandler(pelaaja2, KasittelePallonTormays); 
    5011340 
    502         Add(pelaaja1); 
    5031341        Add(pelaaja2); 
    5041342    } 
    5051343 
    506     void lisaaPelaaja3() 
     1344    void lisaaPelaaja3(double x, double y) 
    5071345    { 
    5081346        pelaaja3 = new PlatformCharacter(40, 40); 
     
    5101348        pelaaja3.Shape = Shapes.Circle; 
    5111349        pelaaja3.Image = LoadImage("smile jump(sininen pelaaja)"); 
    512         pelaaja3.X = -50; 
    513         pelaaja3.Y = Level.Bottom + 50; 
     1350        pelaaja3.X = x; 
     1351        pelaaja3.Y = y; 
    5141352 
    5151353        AddCollisionHandler(pelaaja3, KasittelePallonTormays); 
     
    5181356    } 
    5191357 
    520     void lisaaPelaaja4() 
     1358    void lisaaPelaaja4(double x, double y) 
    5211359    { 
    5221360        pelaaja4 = new PlatformCharacter(40, 40); 
     
    5241362        pelaaja4.Shape = Shapes.Circle; 
    5251363        pelaaja4.Image = LoadImage("smile jump(pinkki pelaaja)"); 
    526         pelaaja4.X = 100; 
    527         pelaaja4.Y = Level.Bottom + 50; 
     1364        pelaaja4.X = x; 
     1365        pelaaja4.Y = y; 
    5281366 
    5291367        AddCollisionHandler(pelaaja4, KasittelePallonTormays); 
     
    5451383        Add(vihollinen); 
    5461384 
    547         AddCollisionHandler(vihollinen, VihollisKaantyOR); 
    548         AddCollisionHandler(vihollinen, VihollisKaantyVR); 
     1385        AddCollisionHandler(vihollinen, VihollisKaanty); 
    5491386    } 
    5501387 
    5511388    private void aikaLoppui(Timer sender) 
    5521389    { 
    553         if (Kaksipelaajaa == true) 
     1390        if (pelaajamaara == 2) 
    5541391        { 
    5551392            Ohje2p.Destroy(); 
     
    5571394        AddCollisionHandler(pelaaja1, Pelaaja1Osui); 
    5581395        AddCollisionHandler(pelaaja2, Pelaaja2Osui); 
    559         if (Kolmepelaajaa == true) 
    560         { 
    561             AddCollisionHandler(pelaaja1, Pelaaja1Osui); 
    562             AddCollisionHandler(pelaaja2, Pelaaja2Osui); 
     1396        if (pelaajamaara == 3) 
     1397        { 
    5631398            AddCollisionHandler(pelaaja3, Pelaaja3Osui); 
    5641399            Ohje3p.Destroy(); 
    5651400        } 
    566         if (Neljapelaajaa == true) 
    567         { 
    568             AddCollisionHandler(pelaaja1, Pelaaja1Osui); 
    569             AddCollisionHandler(pelaaja2, Pelaaja2Osui); 
     1401        if (pelaajamaara == 4) 
     1402        { 
    5701403            AddCollisionHandler(pelaaja3, Pelaaja3Osui); 
    5711404            AddCollisionHandler(pelaaja4, Pelaaja4Osui); 
     
    5751408    private void aikaLoppui2(Timer sender) 
    5761409    { 
    577             if (p1SaiVoiton == true) 
    578             { 
    579                 p1voitti.Destroy(); 
    580                 p1SaiVoiton = false; 
    581                 Alkukentta(); 
    582             } 
    583             if (p2SaiVoiton == true) 
    584             { 
    585                 p2voitti.Destroy(); 
    586                 p2SaiVoiton = false; 
    587                 Alkukentta(); 
    588             } 
    589             if (p3SaiVoiton == true) 
    590             { 
    591                 p3voitti.Destroy(); 
    592                 p3SaiVoiton = false; 
    593                 Alkukentta(); 
    594             } 
    595             if (p4SaiVoiton == true) 
    596             { 
    597                 p4voitti.Destroy(); 
    598                 p4SaiVoiton = false; 
    599                 Alkukentta(); 
    600             } 
    601              /* 
    6021410        voittaja.Destroy(); 
    6031411        p1SaiVoiton = false; 
     
    6051413        p3SaiVoiton = false; 
    6061414        p4SaiVoiton = false; 
     1415        //MediaPlayer.Play("Menu"); 
    6071416        Alkukentta(); 
    608               */ 
    609     } 
    610      
     1417 
     1418    } 
     1419 
     1420    private void aikaLoppui3(Timer sender) 
     1421    { 
     1422        seuraavaKentta(); 
     1423        //MediaPlayer.Play("Menu"); 
     1424        Parhaatpisteetkentta(); 
     1425    } 
     1426 
     1427    private void KuplaSyntymä1aika(Timer sender) 
     1428    { 
     1429        lisaaPelaaja1kupla(Level.Left + 10, korkein); 
     1430    } 
     1431 
     1432    private void KuplaSyntymä2aika(Timer sender) 
     1433    { 
     1434        lisaaPelaaja2kupla(Level.Left + 10, korkein); 
     1435    } 
     1436 
     1437    private void KuplaSyntymä3aika(Timer sender) 
     1438    { 
     1439        lisaaPelaaja3kupla(Level.Right - 10, korkein); 
     1440    } 
     1441 
     1442    private void KuplaSyntymä4aika(Timer sender) 
     1443    { 
     1444        lisaaPelaaja3kupla(Level.Right - 10, korkein); 
     1445    } 
     1446 
    6111447    void lisaaNappaimet() 
    6121448    { 
    613         Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
     1449        Keyboard.Listen(Key.F1, ButtonState.Pressed, Nappainohje, "Näytä ohjeet"); 
    6141450        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    6151451 
    616         if (Kaksipelaajaa == true) 
    617         { 
    618             Keyboard.Listen(Key.Left, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    619             Keyboard.Listen(Key.Right, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 
     1452        if (pelaajamaara == 2) 
     1453        { 
     1454            Keyboard.Listen(Key.Left, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1455            Keyboard.Listen(Key.Right, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
    6201456            Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja1, hyppyVoima); 
    6211457 
    622             Keyboard.Listen(Key.A, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja2, -nopeus); 
    623             Keyboard.Listen(Key.D, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja2, nopeus); 
     1458            Keyboard.Listen(Key.A, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1459            Keyboard.Listen(Key.D, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
    6241460            Keyboard.Listen(Key.W, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja2, hyppyVoima); 
    6251461        } 
     
    6281464    } 
    6291465 
    630     // TODO: kesken 
    631     //void KasitteleAse(PhysicsObject Ase, PhysicsObject pelaaja) 
    632     //{ 
    633     //    if (pelaaja == pelaaja1) 
    634     //    { 
    635     //        pelaajan1ase = true; 
    636     //    } 
    637     //    else if (pelaaja == pelaaja2) 
    638     //    { 
    639     //        pelaajan2ase = true; 
    640     //   } 
    641     // }     
    642  
    6431466    void lisaaGamePadNappaimet(GamePad controller) 
    6441467    { 
    6451468        controller.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    646         if (Kaksipelaajaa == true) 
    647         { 
    648             ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    649             ControllerOne.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
     1469        if (pelaajamaara == 2) 
     1470        { 
     1471            ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1472            ControllerOne.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
    6501473            ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
    6511474 
    652             ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja2, -nopeus); 
    653             ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja2, nopeus); 
     1475            ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1476            ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
    6541477            ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
    6551478        } 
    656         if (Kolmepelaajaa == true) 
    657         { 
    658             Keyboard.Listen(Key.Left, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    659             Keyboard.Listen(Key.Right, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 
     1479        if (pelaajamaara == 3) 
     1480        { 
     1481            Keyboard.Listen(Key.Left, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1482            Keyboard.Listen(Key.Right, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
    6601483            Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja1, hyppyVoima); 
    6611484 
    662             Keyboard.Listen(Key.A, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja2, -nopeus); 
    663             Keyboard.Listen(Key.D, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja2, nopeus); 
     1485            Keyboard.Listen(Key.A, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1486            Keyboard.Listen(Key.D, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
    6641487            Keyboard.Listen(Key.W, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja2, hyppyVoima); 
    6651488 
    666             ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja3, -nopeus); 
    667             ControllerOne.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja3, nopeus); 
    668             ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja3, hyppyVoima); 
    669  
    670             ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    671             ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
    672             ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
    673  
    674             ControllerThree.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja2, -nopeus); 
    675             ControllerThree.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja2, nopeus); 
    676             ControllerThree.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
    677         } 
    678  
    679         if (Neljapelaajaa == true) 
    680         { 
    681             Keyboard.Listen(Key.Left, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    682             Keyboard.Listen(Key.Right, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 
     1489            Keyboard.Listen(Key.J, ButtonState.Down, LiikuLäski, null, pelaaja3, -18.0); 
     1490            Keyboard.Listen(Key.L, ButtonState.Down, LiikuLäski, null, pelaaja3, 18.0); 
     1491            Keyboard.Listen(Key.I, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja3, hyppyVoima); 
     1492 
     1493            ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1494            ControllerOne.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
     1495            ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
     1496 
     1497            ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1498            ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
     1499            ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
     1500 
     1501            ControllerThree.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja3, -18.0); 
     1502            ControllerThree.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja3, 18.0); 
     1503            ControllerThree.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja3, hyppyVoima); 
     1504        } 
     1505 
     1506        if (pelaajamaara == 4) 
     1507        { 
     1508            Keyboard.Listen(Key.Left, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1509            Keyboard.Listen(Key.Right, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
    6831510            Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja1, hyppyVoima); 
    6841511 
    685             Keyboard.Listen(Key.A, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja2, -nopeus); 
    686             Keyboard.Listen(Key.D, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja2, nopeus); 
     1512            Keyboard.Listen(Key.A, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1513            Keyboard.Listen(Key.D, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
    6871514            Keyboard.Listen(Key.W, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja2, hyppyVoima); 
    6881515 
    689             ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja3, -nopeus); 
    690             ControllerOne.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja3, nopeus); 
    691             ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja3, hyppyVoima); 
    692  
    693             ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja4, -nopeus); 
    694             ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja4, nopeus); 
    695             ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja4, hyppyVoima); 
    696  
    697             ControllerThree.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    698             ControllerThree.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
    699             ControllerThree.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
    700  
    701             ControllerFour.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja2, -nopeus); 
    702             ControllerFour.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja2, nopeus); 
    703             ControllerFour.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
     1516            Keyboard.Listen(Key.J, ButtonState.Down, LiikuLäski, null, pelaaja3, -18.0); 
     1517            Keyboard.Listen(Key.L, ButtonState.Down, LiikuLäski, null, pelaaja3, 18.0); 
     1518            Keyboard.Listen(Key.I, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja3, hyppyVoima); 
     1519 
     1520            ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja1, -18.0); 
     1521            ControllerOne.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja1, 18.0); 
     1522            ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima); 
     1523 
     1524            ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja2, -18.0); 
     1525            ControllerTwo.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja2, 18.0); 
     1526            ControllerTwo.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja2, hyppyVoima); 
     1527 
     1528            ControllerThree.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja3, -18.0); 
     1529            ControllerThree.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja3, 18.0); 
     1530            ControllerThree.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja3, hyppyVoima); 
     1531 
     1532            ControllerFour.Listen(Button.DPadLeft, ButtonState.Down, LiikuLäski, null, pelaaja4, -18.0); 
     1533            ControllerFour.Listen(Button.DPadRight, ButtonState.Down, LiikuLäski, null, pelaaja4, 18.0); 
     1534            ControllerFour.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja4, hyppyVoima); 
    7041535        } 
    7051536    } 
     
    7281559        Add(DownReuna); 
    7291560    } 
     1561    void Kahdenpelaajanpeli() 
     1562    { 
     1563        pelaajamaara = 2; 
     1564        Pelimodikentta(); 
     1565    } 
     1566 
     1567    void KahdenpelaajanYP() 
     1568    { 
     1569        pelaajamaara = 2; 
     1570        YP = true; 
     1571        seuraavaKentta(); 
     1572        //MediaPlayer.Play("E Api"); 
     1573    } 
     1574 
     1575    void KahdenpelaajanKP() 
     1576    { 
     1577        pelaajamaara = 2; 
     1578        YP = false; 
     1579        seuraavaKentta(); 
     1580        //MediaPlayer.Play("E Api"); 
     1581    } 
    7301582 
    7311583    void Kolmenpelaajanpeli() 
    7321584    { 
    733         Kolmepelaajaa = true; 
     1585        pelaajamaara = 3; 
     1586        Pelimodikentta(); 
     1587    } 
     1588 
     1589    void KolmenpelaajanYP() 
     1590    { 
     1591        pelaajamaara = 3; 
     1592        YP = true; 
    7341593        seuraavaKentta(); 
    735         MediaPlayer.Play("E Api"); 
     1594        //MediaPlayer.Play("E Api"); 
     1595    } 
     1596 
     1597    void KolmenpelaajanKP() 
     1598    { 
     1599        pelaajamaara = 3; 
     1600        YP = false; 
     1601        seuraavaKentta(); 
     1602        //MediaPlayer.Play("E Api"); 
    7361603    } 
    7371604 
    7381605    void Neljanpelaajanpeli() 
    7391606    { 
    740         Neljapelaajaa = true; 
     1607        pelaajamaara = 4; 
     1608        Pelimodikentta(); 
     1609    } 
     1610 
     1611    void NeljanpelaajanYP() 
     1612    { 
     1613        pelaajamaara = 4; 
     1614        YP = true; 
    7411615        seuraavaKentta(); 
    742         MediaPlayer.Play("E Api"); 
    743     } 
    744  
    745     void Kahdenpelaajanpeli() 
    746     { 
    747         Kaksipelaajaa = true; 
     1616        //MediaPlayer.Play("E Api"); 
     1617    } 
     1618 
     1619    void NeljanpelaajanKP() 
     1620    { 
     1621        pelaajamaara = 4; 
     1622        YP = false; 
    7481623        seuraavaKentta(); 
    749         MediaPlayer.Play("E Api"); 
     1624        //MediaPlayer.Play("E Api"); 
     1625    } 
     1626 
     1627    void jokuvoitti() 
     1628    { 
     1629        seuraavaKentta(); 
     1630        ClearAll(); 
     1631        pelaajamaara = 0; 
     1632        voitto(); 
     1633        aikaLaskuri2.Start(); 
     1634    } 
     1635 
     1636    void NaytaKorkeus(Timer sender) 
     1637    { 
     1638        korkeus = Math.Round((aloituspaikka.Y + korkein + 29932), 0); 
     1639        mittari.Text = "Korkeus: " + korkeus; 
     1640        mittari.X = 0; 
     1641        mittari.Y = Screen.Top - 100; 
     1642    } 
     1643 
     1644    void LiikuLäski(PhysicsObject SJpelaaja, double nopeus) 
     1645    { 
     1646        SJpelaaja.Velocity += Vector.FromLengthAndAngle(nopeus, SJpelaaja.Angle); 
    7501647    } 
    7511648 
     
    7531650    { 
    7541651        PlatformCharacter highest = pelaaja1; 
    755         if (pelaaja2.Y > highest.Y) highest = pelaaja2; 
     1652        if (pelaaja2 != null && pelaaja2.Y > highest.Y) highest = pelaaja2; 
    7561653        if (pelaaja3 != null && pelaaja3.Y > highest.Y) highest = pelaaja3; 
    7571654        if (pelaaja4 != null && pelaaja4.Y > highest.Y) highest = pelaaja4; 
    7581655 
     1656        korkein = highest.Y; 
     1657 
    7591658        Camera.Follow(highest); 
    760         /* 
    761         PlatformCharacter eloOlio; 
    762         int elossa = 0; 
    763         if (!pelaaja1.IsDestroyed()) 
    764         {  
    765             elossa++; 
    766             eloOlio = pelaaja1; 
    767         } 
    768         if (!pelaaja2.IsDestroyed()) elossa++; 
    769         { 
    770             elossa++; 
    771             eloOlio = pelaaja2; 
    772         } 
    773         if (pelaaja3 != null && !pelaaja3.IsDestroyed()) elossa++; 
    774         { 
    775             elossa++; 
    776             eloOlio = pelaaja3; 
    777         } 
    778         if (pelaaja4 != null && !pelaaja4.IsDestroyed()) elossa++; 
    779         { 
    780             elossa++; 
    781             eloOlio = pelaaja4; 
    782         } 
    783  
    784         if (elossa == 1) 
    785         { 
    786             seuraavaKentta(); 
    787             ClearAll(); 
    788             Kolmepelaajaa = false; 
    789             Kaksipelaajaa = false; 
    790             Neljapelaajaa = false; 
    791             if (eloOlio == pelaaja1) { voitto(1); } 
    792             if (eloOlio == pelaaja2) { voitto(2); } 
    793             if (eloOlio == pelaaja3) { voitto(3); } 
    794             if (eloOlio == pelaaja4) { voitto(4); } 
    795         }*/ 
    796          
    797         if (Kolmepelaajaa == true) 
    798         { 
    799  
    800             if (pelaaja3.IsDestroyed()) 
    801             { 
    802                 if (pelaaja2.IsDestroyed()) 
     1659        if (YP == true) 
     1660        { 
     1661            if (P1kupla != null && P1kupla.Y > highest.Y) 
     1662            { 
     1663                P1kupla.Velocity = new Vector(0.0, -50.0); 
     1664            } 
     1665            if (P1kupla != null && P1kupla.Y < highest.Y) 
     1666            { 
     1667                P1kupla.Velocity = new Vector(0.0, 50.0); 
     1668            } 
     1669            if (P2kupla != null && P2kupla.Y > highest.Y) 
     1670            { 
     1671                P2kupla.Velocity = new Vector(0.0, -50.0); 
     1672            } 
     1673            if (P2kupla != null && P2kupla.Y < highest.Y) 
     1674            { 
     1675                P2kupla.Velocity = new Vector(0.0, 50.0); 
     1676            } 
     1677            if (P3kupla != null && P3kupla.Y > highest.Y) 
     1678            { 
     1679                P3kupla.Velocity = new Vector(0.0, -50.0); 
     1680            } 
     1681            if (P3kupla != null && P3kupla.Y < highest.Y) 
     1682            { 
     1683                P3kupla.Velocity = new Vector(0.0, 50.0); 
     1684            } 
     1685            if (P4kupla != null && P4kupla.Y > highest.Y) 
     1686            { 
     1687                P4kupla.Velocity = new Vector(0.0, -50.0); 
     1688            } 
     1689            if (P4kupla != null && P4kupla.Y < highest.Y) 
     1690            { 
     1691                P4kupla.Velocity = new Vector(0.0, 50.0); 
     1692            } 
     1693        } 
     1694 
     1695        if (pelaajamaara == 3 && YP == true && PeliKäynnissä == true) 
     1696        { 
     1697            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1698            { 
     1699                aikaLaskuri3.Start(); 
     1700            } 
     1701        } 
     1702        else if (pelaajamaara == 3 && YP == false && PeliKäynnissä == true) 
     1703        { 
     1704 
     1705            if (pelaaja3.IsDestroyed() && pelaaja2.IsDestroyed()) 
     1706            { 
     1707                pelaajan1pisteet.Value++; 
     1708                if (pelaajan1pisteet >= KPPisteraja) 
    8031709                { 
    804                     pelaajan1pisteet.Value++; 
    805                     if (pelaajan1pisteet >= 7) 
    806                     { 
    807                         seuraavaKentta(); 
    808                         ClearAll(); 
    809                         Kolmepelaajaa = false; 
    810                         Kaksipelaajaa = false; 
    811                         Neljapelaajaa = false; 
    812                         p1SaiVoiton = true; 
    813                         pelaaja1voitti(); 
    814                         aikaLaskuri2.Start(); 
    815                     } 
    816                     else 
    817                     { 
    818                         seuraavaKentta(); 
    819                     } 
     1710                    p1SaiVoiton = true; 
     1711                    jokuvoitti(); 
    8201712                } 
    821                 if (pelaaja1.IsDestroyed()) 
     1713                else seuraavaKentta(); 
     1714 
     1715            } 
     1716            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed()) 
     1717            { 
     1718                pelaajan3pisteet.Value++; 
     1719                if (pelaajan3pisteet >= KPPisteraja) 
    8221720                { 
    823                     pelaajan2pisteet.Value++; 
    824                     if (pelaajan2pisteet >= 7) 
    825                     { 
    826                         seuraavaKentta(); 
    827                         ClearAll(); 
    828                         Kolmepelaajaa = false; 
    829                         Kaksipelaajaa = false; 
    830                         Neljapelaajaa = false; 
    831                         p2SaiVoiton = true; 
    832                         pelaaja2voitti(); 
    833                         aikaLaskuri2.Start(); 
    834                     } 
    835                     else 
    836                     { 
    837                     seuraavaKentta(); 
    838                     } 
     1721                    p3SaiVoiton = true; 
     1722                    jokuvoitti(); 
    8391723                } 
    840             } 
     1724                else seuraavaKentta(); 
     1725 
     1726            } 
     1727            if (pelaaja1.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1728            { 
     1729                pelaajan2pisteet.Value++; 
     1730                if (pelaajan2pisteet >= KPPisteraja) 
     1731                { 
     1732                    p2SaiVoiton = true; 
     1733                    jokuvoitti(); 
     1734                } 
     1735                else seuraavaKentta(); 
     1736            } 
     1737        } 
     1738        if (pelaajamaara == 4 && YP == true && PeliKäynnissä == true) 
     1739        { 
     1740            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed() && pelaaja4.IsDestroyed()) 
     1741            { 
     1742                aikaLaskuri3.Start(); 
     1743            } 
     1744        } 
     1745        else if (pelaajamaara == 4 && YP == false && PeliKäynnissä == true) 
     1746        { 
     1747            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1748            { 
     1749                pelaajan4pisteet.Value++; 
     1750                if (pelaajan4pisteet >= KPPisteraja) 
     1751                { 
     1752                    p4SaiVoiton = true; 
     1753                    jokuvoitti(); 
     1754                } 
     1755                else seuraavaKentta(); 
     1756            } 
     1757            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja4.IsDestroyed()) 
     1758            { 
     1759                pelaajan3pisteet.Value++; 
     1760                if (pelaajan3pisteet >= KPPisteraja) 
     1761                { 
     1762                    p3SaiVoiton = true; 
     1763                    jokuvoitti(); 
     1764                } 
     1765                else seuraavaKentta(); 
     1766            } 
     1767            if (pelaaja1.IsDestroyed() && pelaaja4.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1768            { 
     1769                pelaajan2pisteet.Value++; 
     1770                if (pelaajan2pisteet >= KPPisteraja) 
     1771                { 
     1772                    p2SaiVoiton = true; 
     1773                    jokuvoitti(); 
     1774                } 
     1775                else seuraavaKentta(); 
     1776            } 
     1777            if (pelaaja4.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
     1778            { 
     1779                pelaajan1pisteet.Value++; 
     1780                if (pelaajan1pisteet >= KPPisteraja) 
     1781                { 
     1782                    p1SaiVoiton = true; 
     1783                    jokuvoitti(); 
     1784                } 
     1785                else seuraavaKentta(); 
     1786            } 
     1787        } 
     1788 
     1789        if (pelaajamaara == 2 && YP == true && PeliKäynnissä == true) 
     1790        { 
     1791            if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed()) 
     1792            { 
     1793                aikaLaskuri3.Start(); 
     1794            } 
     1795        } 
     1796        else if (pelaajamaara == 2 && YP == false && PeliKäynnissä == true) 
     1797        { 
     1798            if (pelaaja2.IsDestroyed()) 
     1799            { 
     1800                pelaajan1pisteet.Value++; 
     1801                if (pelaajan1pisteet >= KPPisteraja) 
     1802                { 
     1803                    p1SaiVoiton = true; 
     1804                    jokuvoitti(); 
     1805                } 
     1806                else seuraavaKentta(); 
     1807            } 
     1808 
    8411809            if (pelaaja1.IsDestroyed()) 
    8421810            { 
    843                 if (pelaaja2.IsDestroyed()) 
     1811 
     1812                pelaajan2pisteet.Value++; 
     1813                if (pelaajan2pisteet >= KPPisteraja) 
    8441814                { 
    845                     pelaajan3pisteet.Value++; 
    846                     if (pelaajan3pisteet >= 7) 
    847                     { 
    848                         seuraavaKentta(); 
    849                         ClearAll(); 
    850                         Kolmepelaajaa = false; 
    851                         Kaksipelaajaa = false; 
    852                         Neljapelaajaa = false; 
    853                         p3SaiVoiton = true; 
    854                         pelaaja3voitti(); 
    855                         aikaLaskuri2.Start(); 
    856                     } 
    857                     else 
    858                     { 
    859                         seuraavaKentta(); 
    860                     } 
     1815                    p2SaiVoiton = true; 
     1816                    jokuvoitti(); 
    8611817                } 
    862             } 
    863         } 
    864         if (Neljapelaajaa == true) 
    865         { 
    866             if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
    867             { 
    868                         pelaajan4pisteet.Value++; 
    869                         if (pelaajan4pisteet >= 7) 
    870                         { 
    871                             seuraavaKentta(); 
    872                             ClearAll(); 
    873                             Kolmepelaajaa = false; 
    874                             Kaksipelaajaa = false; 
    875                             Neljapelaajaa = false; 
    876                             p4SaiVoiton = true; 
    877                             pelaaja4voitti(); 
    878                             aikaLaskuri2.Start(); 
    879                         } 
    880                         else 
    881                         { 
    882                             seuraavaKentta(); 
    883                         } 
    884                     } 
    885             if (pelaaja1.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja4.IsDestroyed()) 
    886             { 
    887                 pelaajan3pisteet.Value++; 
    888                 if (pelaajan3pisteet >= 7) 
    889                 { 
    890                     seuraavaKentta(); 
    891                     ClearAll(); 
    892                     Kolmepelaajaa = false; 
    893                     Kaksipelaajaa = false; 
    894                     Neljapelaajaa = false; 
    895                     p3SaiVoiton = true; 
    896                     pelaaja3voitti(); 
    897                     aikaLaskuri2.Start(); 
    898                 } 
    899                 else 
    900                 { 
    901                     seuraavaKentta(); 
    902                 } 
    903             } 
    904             if (pelaaja1.IsDestroyed() && pelaaja4.IsDestroyed() && pelaaja3.IsDestroyed()) 
    905             { 
    906                 pelaajan2pisteet.Value++; 
    907                 if (pelaajan2pisteet >= 7) 
    908                 { 
    909                     seuraavaKentta(); 
    910                     ClearAll(); 
    911                     Kolmepelaajaa = false; 
    912                     Kaksipelaajaa = false; 
    913                     Neljapelaajaa = false; 
    914                     p2SaiVoiton = true; 
    915                     pelaaja2voitti(); 
    916                     aikaLaskuri2.Start(); 
    917                 } 
    918                 else 
    919                 { 
    920                     seuraavaKentta(); 
    921                 } 
    922             } 
    923             if (pelaaja4.IsDestroyed() && pelaaja2.IsDestroyed() && pelaaja3.IsDestroyed()) 
    924             { 
    925                 pelaajan1pisteet.Value++; 
    926                 if (pelaajan1pisteet >= 7) 
    927                 { 
    928                     seuraavaKentta(); 
    929                     ClearAll(); 
    930                     Kolmepelaajaa = false; 
    931                     Kaksipelaajaa = false; 
    932                     Neljapelaajaa = false; 
    933                     p1SaiVoiton = true; 
    934                     pelaaja1voitti(); 
    935                     aikaLaskuri2.Start(); 
    936                 } 
    937                 else 
    938                 { 
    939                     seuraavaKentta(); 
    940                 } 
    941             } 
    942         } 
    943  
    944         if (Kaksipelaajaa == false && Kolmepelaajaa == false && Neljapelaajaa == false) 
    945         { 
    946                     if (pelaaja1.Y > pelaaja2.Y) 
    947                     { 
    948                         Camera.Follow(pelaaja1); 
    949                     } 
    950                     else 
    951                     { 
    952                         Camera.Follow(pelaaja2); 
    953                     } 
    954         } 
    955          
    956         if (Kaksipelaajaa == true) 
    957         { 
    958                     if (pelaaja2.IsDestroyed()) 
    959                     { 
    960                         pelaajan1pisteet.Value++; 
    961                         if (pelaajan1pisteet >= 7) 
    962                         { 
    963                             seuraavaKentta(); 
    964                             ClearAll(); 
    965                             Kolmepelaajaa = false; 
    966                             Kaksipelaajaa = false; 
    967                             Neljapelaajaa = false; 
    968                             p1SaiVoiton = true; 
    969                             pelaaja1voitti(); 
    970                             aikaLaskuri2.Start(); 
    971                         } 
    972                         else 
    973                         { 
    974                             seuraavaKentta(); 
    975                         } 
    976                     } 
    977  
    978                     if (pelaaja1.IsDestroyed()) 
    979                     { 
    980  
    981                         pelaajan2pisteet.Value++; 
    982                         if (pelaajan2pisteet >= 7) 
    983                         { 
    984                             seuraavaKentta(); 
    985                             ClearAll(); 
    986                             Kolmepelaajaa = false; 
    987                             Kaksipelaajaa = false; 
    988                             Neljapelaajaa = false; 
    989                             p2SaiVoiton = true; 
    990                             pelaaja2voitti(); 
    991                             aikaLaskuri2.Start(); 
    992                         } 
    993                         else 
    994                         { 
    995                             seuraavaKentta(); 
    996                         } 
    997                     } 
    998                     /*if (pelaaja1.Y > pelaaja2.Y) 
    999                     { 
    1000                         Camera.Follow(pelaaja1); 
    1001                     } 
    1002                     else 
    1003                     { 
    1004                         Camera.Follow(pelaaja2); 
    1005                     } 
    1006                      */  
    1007         } 
    1008          
     1818                else seuraavaKentta(); 
     1819            } 
     1820        } 
     1821 
    10091822        // Tämä pitää huolen siitä, että kun kamera menee ylöspäin, niin kameran 
    10101823        // alapuolella olevat asiat tuhoutuvat. 
Note: See TracChangeset for help on using the changeset viewer.