Ignore:
Timestamp:
2015-07-23 15:04:41 (4 years ago)
Author:
eekrrint
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2015/30/EemilR/Tasohyppelypeli/Tasohyppelypeli/Tasohyppelypeli/Tasohyppelypeli.cs

    r6974 r6996  
    66using Jypeli.Effects; 
    77using Jypeli.Widgets; 
     8 
     9/// <summary> 
     10/// The Jump 
     11/// </summary> 
    812 
    913public class Tasohyppelypeli : PhysicsGame 
     
    3034    Image oviVasenKuva = LoadImage("OviVasen"); 
    3135    Image paluuOikeaKuva = LoadImage("PaluuOikea"); 
     36    Image MaaliKuva = LoadImage("Maali"); 
    3237 
    3338    DoubleMeter avaintenmaara; 
     
    3540    IntMeter kuolemat; 
    3641 
    37     SoundEffect maaliAani = LoadSoundEffect("maali"); 
     42    SoundEffect maaliAani = LoadSoundEffect("maali2"); 
    3843 
    3944    PhysicsObject viimeinenCheckpoint; 
    4045 
    41     bool cheats = false; 
     46    PhysicsObject viimeinenSpawn; 
    4247 
    4348    bool painovoima = true; 
     
    9398        tekstikentta.Y = Screen.Top - 100; 
    9499        tekstikentta.TextColor = Color.Black; 
    95         tekstikentta.Text = tekstikentta + "moimoi"; 
    96100        Add(tekstikentta); 
    97101    } 
     
    117121        kentta.SetTileMethod('#', LisaaTaso); 
    118122        kentta.SetTileMethod('O', LisaaOvi); 
    119         kentta.SetTileMethod('N', LisaaPelaaja); 
     123        kentta.SetTileMethod('0', LisaaPelaaja); 
    120124        kentta.SetTileMethod('A', LisaaAvain); 
    121125        kentta.SetTileMethod('P', LisaaPiikki); 
     
    124128        kentta.SetTileMethod('V', LisaaPahis); 
    125129        kentta.SetTileMethod('<', LisaaVasenOvi); 
     130         
    126131 
    127132 
    128133        kentta.SetTileMethod('U', LisaaOikeaPaluu); 
     134        kentta.SetTileMethod('S', spawn); 
     135 
     136        kentta.SetTileMethod('M', LisaaMaali); 
    129137 
    130138        kentta.Execute(Koko, Koko); 
     
    133141 
    134142        PhysicsObject liikkuva1 = new PhysicsObject(200.0, 40.0); 
     143    } 
     144 
     145    void LisaaMaali(Vector paikka, double leveys, double korkeus) 
     146    { 
     147        PhysicsObject maali = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     148        maali.Position = paikka; 
     149        maali.IgnoresCollisionResponse = true; 
     150        maali.Tag = "maali"; 
     151        maali.Image = MaaliKuva; 
     152        Add(maali); 
     153    } 
     154 
     155    void spawn(Vector paikka, double leveys, double korkeus) 
     156    { 
     157        PhysicsObject spawnpoint = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     158        spawnpoint.Position = paikka; 
     159        spawnpoint.IgnoresCollisionResponse = true; 
     160        spawnpoint.IsVisible = false; 
     161        spawnpoint.Tag = "spawnpoint"; 
     162 
     163        viimeinenSpawn = spawnpoint; 
     164 
    135165    } 
    136166 
     
    161191        Pahis.Tag = "pahis"; 
    162192        Pahis.Shape = Shape.FromImage(pahiksenKuva); 
     193        Pahis.IgnoresExplosions = true; 
    163194 
    164195        PlatformWandererBrain tasoAivot = new PlatformWandererBrain(); 
     
    230261        AddCollisionHandler(pelaaja1, "checkpoint", checkpointAktivoitu); 
    231262        AddCollisionHandler(pelaaja1, "pahis", osuiPiikkiin); 
     263        AddCollisionHandler(pelaaja1, "maali", osuiMaaliin); 
    232264        pelaaja1.IgnoresCollisionResponse = false; 
    233265        Add(pelaaja1); 
     
    240272    } 
    241273 
     274    void osuiMaaliin(PhysicsObject hahmo, PhysicsObject avain) 
     275    { 
     276        MessageDisplay.Add("Onnittelut! Pääsit maaliin!"); 
     277    } 
     278 
    242279    void LisaaNappaimet() 
    243280    { 
     
    247284        Keyboard.Listen(Key.Enter, ButtonState.Pressed, CheatitPaalle, "Enable Cheats"); 
    248285 
    249         Keyboard.Listen(Key.A, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    250         Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 
     286        Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
     287        Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu Oikealle", pelaaja1, nopeus); 
    251288        Keyboard.Listen(Key.Space, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
    252289 
     
    319356    void osuiPiikkiin(PhysicsObject pelaaja1, PhysicsObject juttu) 
    320357    { 
     358         
     359 
     360        kuolemat.Value += 1; 
     361 
     362 
     363        Timer.SingleShot(0.1, PalaaCheckpoint); 
     364 
     365        
     366 
     367 
     368         
     369    } 
     370 
     371    void PalaaCheckpoint() 
     372    { 
    321373        pelaaja1.Position = viimeinenCheckpoint.Position; 
    322  
    323         kuolemat.Value += 1; 
    324          
     374      
    325375    } 
    326376 
     
    366416    void CheatitPaalle() 
    367417    { 
     418        IsPaused = true; 
    368419        InputWindow kysymysIkkuna = new InputWindow("Enter Code To Enable Cheats"); 
    369420        kysymysIkkuna.TextEntered += ProcessInput; 
     
    374425    { 
    375426        string vastaus = ikkuna.InputBox.Text; 
    376         if (vastaus == "1234") 
    377         { 
    378             if (cheats == true) 
    379             { 
    380                 cheats = false; 
    381                 painovoima = true; 
    382                 pelaaja1.IgnoresCollisionResponse = false; 
    383                 LisaaPainovoima(); 
    384                 Keyboard.Disable(Key.O); 
    385                 Keyboard.Disable(Key.K); 
    386                 Keyboard.Disable(Key.L); 
    387                 Keyboard.Disable(Key.J); 
    388             } 
    389             else 
    390             { 
    391                 cheats = true; 
    392                 painovoima = false; 
    393                 pelaaja1.IgnoresCollisionResponse = true; 
    394                 Keyboard.Enable(Key.O); 
    395                 Keyboard.Enable(Key.K); 
    396                 Keyboard.Enable(Key.L); 
    397                 Keyboard.Enable(Key.J); 
    398                 Keyboard.Listen(Key.I, ButtonState.Pressed, LiikuYlos, "Ylös", pelaaja1, nopeus); 
    399                 Keyboard.Listen(Key.K, ButtonState.Pressed, LiikuAlas, "Alas", pelaaja1, nopeus); 
    400                 Keyboard.Listen(Key.L, ButtonState.Pressed, LiikuOikealle, "Oikealle", pelaaja1, nopeus); 
    401                 Keyboard.Listen(Key.J, ButtonState.Pressed, LiikuVasemmalle, "Vasemmalle", pelaaja1, nopeus); 
    402                 LisaaPainovoima(); 
    403  
    404  
    405             } 
    406         } 
    407     } 
     427 
     428        IsPaused = false; 
     429 
     430        if (vastaus == "allOn") 
     431        { 
     432            painovoima = false; 
     433            LisaaPainovoima(); 
     434 
     435            pelaaja1.IgnoresCollisionResponse = true; 
     436 
     437            Keyboard.Enable(Key.I); 
     438            Keyboard.Enable(Key.K); 
     439            Keyboard.Enable(Key.L); 
     440            Keyboard.Enable(Key.J); 
     441            Keyboard.Listen(Key.I, ButtonState.Pressed, LiikuYlos, "Ylös", pelaaja1, nopeus); 
     442            Keyboard.Listen(Key.K, ButtonState.Pressed, LiikuAlas, "Alas", pelaaja1, nopeus); 
     443            Keyboard.Listen(Key.L, ButtonState.Pressed, LiikuOikealle, "Oikealle", pelaaja1, nopeus); 
     444            Keyboard.Listen(Key.J, ButtonState.Pressed, LiikuVasemmalle, "Vasemmalle", pelaaja1, nopeus); 
     445        } 
     446 
     447        if (vastaus == "allOff") 
     448        { 
     449            painovoima = true; 
     450            LisaaPainovoima(); 
     451 
     452            pelaaja1.IgnoresCollisionResponse = false; 
     453 
     454            Keyboard.Disable(Key.I); 
     455            Keyboard.Disable(Key.K); 
     456            Keyboard.Disable(Key.L); 
     457            Keyboard.Disable(Key.J); 
     458        } 
     459 
     460        if (vastaus == "respawn") 
     461        { 
     462            pelaaja1.Position = viimeinenSpawn.Position; 
     463        } 
     464 
     465        if (vastaus == "clearKeys") 
     466        { 
     467            avaintenmaara.Value = 0.0; 
     468        } 
     469 
     470        if (vastaus == "addKey2") 
     471        { 
     472            avaintenmaara.Value = 2.0; 
     473        } 
     474 
     475        if (vastaus == "addKey1") 
     476        { 
     477            avaintenmaara.Value = 1.0; 
     478        } 
     479 
     480        if (vastaus == "gravityOff") 
     481        { 
     482            painovoima = false; 
     483            LisaaPainovoima(); 
     484        } 
     485 
     486        if (vastaus == "gravityOn") 
     487        { 
     488            painovoima = true; 
     489            LisaaPainovoima(); 
     490        } 
     491 
     492        if (vastaus == "moveThruWallsOn") 
     493        { 
     494            pelaaja1.IgnoresCollisionResponse = true; 
     495        } 
     496 
     497        if (vastaus == "moveThruWallsOff") 
     498        { 
     499            pelaaja1.IgnoresCollisionResponse = false; 
     500        } 
     501 
     502        if (vastaus == "flyOn") 
     503        { 
     504            Keyboard.Enable(Key.I); 
     505            Keyboard.Enable(Key.K); 
     506            Keyboard.Enable(Key.L); 
     507            Keyboard.Enable(Key.J); 
     508            Keyboard.Listen(Key.I, ButtonState.Pressed, LiikuYlos, "Ylös", pelaaja1, nopeus); 
     509            Keyboard.Listen(Key.K, ButtonState.Pressed, LiikuAlas, "Alas", pelaaja1, nopeus); 
     510            Keyboard.Listen(Key.L, ButtonState.Pressed, LiikuOikealle, "Oikealle", pelaaja1, nopeus); 
     511            Keyboard.Listen(Key.J, ButtonState.Pressed, LiikuVasemmalle, "Vasemmalle", pelaaja1, nopeus); 
     512        } 
     513 
     514        if (vastaus == "flyOff") 
     515        { 
     516            Keyboard.Disable(Key.I); 
     517            Keyboard.Disable(Key.K); 
     518            Keyboard.Disable(Key.L); 
     519            Keyboard.Disable(Key.J); 
     520        } 
     521    }             
    408522 
    409523    void avaimetTaynna() 
Note: See TracChangeset for help on using the changeset viewer.