Changeset 4317 for 2013/26


Ignore:
Timestamp:
2013-06-28 12:34:37 (10 years ago)
Author:
olalleht
Message:

Talletus.

Location:
2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1
Files:
5 added
4 edited

Legend:

Unmodified
Added
Removed
  • 2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.cs

    r4243 r4317  
    99public class Tasohyppelypeli1 : PhysicsGame 
    1010{ 
    11     const double nopeus = 200; 
    12     const double hyppyNopeus = 750; 
     11    const double perusJuoksuNopeus = 200; 
     12    const double perushyppyNopeus = 750; 
    1313    const int RUUDUN_KOKO = 40; 
    1414 
    1515    PlatformCharacter pelaaja1; 
     16    double juoksuNopeus = perusJuoksuNopeus; 
     17    double hyppynopeus = perushyppyNopeus; 
    1618 
    1719    Image pelaajanKuva = LoadImage("UKKELI 2.0"); 
     
    2022    Image porkkanakuva = LoadImage("Porkkana"); 
    2123    Image Makkari = LoadImage("Makkari"); 
     24    Image kokis = LoadImage("kokis"); 
     25    Image lenkkeilijä = LoadImage("lenkkeilijä"); 
    2226 
    2327    SoundEffect maaliAani = LoadSoundEffect("maali"); 
    2428 
    2529    IntMeter hampurilaislaskuri = new IntMeter(0, 0, 50); 
     30    IntMeter pistelaskuri = new IntMeter(0, 0, 99999); 
    2631 
    2732    int kenttaNro = 1; 
     
    4146        kentta.SetTileMethod('O', LisaaPorkkana); 
    4247        kentta.SetTileMethod('M', LisaaMaali); 
     48        kentta.SetTileMethod('K', LisaaKokis); 
     49        kentta.SetTileMethod('L', LisaaLenkkeilija); 
    4350        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    4451        Level.Background.CreateGradient(Color.White, Color.SkyBlue); 
     
    4754    void LisaaTaso(Vector paikka, double leveys, double korkeus) 
    4855    { 
     56  
    4957        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    5058        taso.Position = paikka; 
    5159        taso.Color = Color.Green; 
    5260        Add(taso); 
    53          
     61 
    5462    } 
    5563 
     
    7785    void LisaaTahti(Vector paikka, double leveys, double korkeus) 
    7886    { 
    79         PhysicsObject hampurilainen = PhysicsObject.CreateStaticObject(leveys, korkeus/2); 
     87        PhysicsObject hampurilainen = PhysicsObject.CreateStaticObject(leveys, korkeus / 2); 
    8088        hampurilainen.IgnoresCollisionResponse = true; 
    8189        hampurilainen.Position = paikka; 
     
    96104        Add(porkkana); 
    97105    } 
     106 
     107    void LisaaKokis(Vector paikka, double leveys, double korkeus) 
     108    { 
     109        PhysicsObject Kokis = PhysicsObject.CreateStaticObject(leveys / 2, korkeus); 
     110        Kokis.Position = paikka; 
     111        Kokis.Image = kokis; 
     112        Kokis.Tag = "kokis"; 
     113        Add(Kokis); 
     114    } 
     115 
     116    void LisaaLenkkeilija(Vector paikka, double leveys, double korkeus) 
     117    { 
     118        PlatformCharacter Lenkkeilijä = new PlatformCharacter(leveys, korkeus); 
     119        Lenkkeilijä.Position = paikka; 
     120        //Lenkk 
     121        Add(Lenkkeilijä); 
     122        PlatformWandererBrain aivot = new PlatformWandererBrain(); 
     123        aivot.TriesToJump = true; 
     124        aivot.Speed = 300; 
     125        Lenkkeilijä.Brain = aivot; 
     126        Lenkkeilijä.Tag = "Lenkkeilijä"; 
     127        Lenkkeilijä.Image = lenkkeilijä; 
     128    } 
     129 
    98130 
    99131 
     
    108140        AddCollisionHandler(pelaaja1, "Hampurilainen", TormaaTahteen); 
    109141        AddCollisionHandler(pelaaja1, "piikki", TormaaPiikkiin); 
     142        AddCollisionHandler(pelaaja1, "Lenkkeilijä", TormaaPiikkiin); 
    110143        AddCollisionHandler(pelaaja1, "Porkkana", tormaaPorkkanaan); 
    111144        AddCollisionHandler(pelaaja1, "Makkari", tormaaMaaliin); 
     145        AddCollisionHandler(pelaaja1, "kokis", tormaaKokikseen); 
    112146        Add(pelaaja1); 
    113147    } 
     
    118152        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    119153 
    120         Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    121         Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 
    122         Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
     154        Keyboard.Listen(Key.Left, ButtonState.Down, LiikutaVasemmalle, "Liikkuu vasemmalle", pelaaja1); 
     155        Keyboard.Listen(Key.Right, ButtonState.Down, LiikutaOikealle, "Liikkuu vasemmalle", pelaaja1); 
     156        Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1); 
    123157 
    124158        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    125159 
    126         ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    127         ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
    128         ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
     160        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, LiikutaVasemmalle, "Pelaaja liikkuu vasemmalle", pelaaja1); 
     161        ControllerOne.Listen(Button.DPadRight, ButtonState.Down, LiikutaOikealle, "Pelaaja liikkuu oikealle", pelaaja1); 
     162        ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1); 
     163 
     164        Keyboard.Listen(Key.F12, ButtonState.Pressed, delegate { kenttaNro++; SeuraavaKentta(); }, null); 
    129165 
    130166        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    131167    } 
    132168 
    133     void Liikuta(PlatformCharacter hahmo, double nopeus) 
    134     { 
    135         hahmo.Walk(nopeus); 
    136     } 
    137  
    138     void Hyppaa(PlatformCharacter hahmo, double nopeus) 
    139     { 
    140         hahmo.Jump(nopeus); 
     169    void LiikutaVasemmalle(PlatformCharacter hahmo) 
     170    { 
     171        hahmo.Walk(-juoksuNopeus); 
     172    } 
     173 
     174 
     175    void LiikutaOikealle(PlatformCharacter hahmo) 
     176    { 
     177        hahmo.Walk(juoksuNopeus); 
     178    } 
     179 
     180    void Hyppaa(PlatformCharacter hahmo) 
     181    { 
     182        hahmo.Jump(hyppynopeus); 
    141183    } 
    142184 
     
    144186    { 
    145187        Timer.SingleShot(2.0, SeuraavaKentta); 
    146         Explosion rajahdys = new Explosion(100 * hahmo.Size.X/40.0); 
     188        Explosion rajahdys = new Explosion(100 * hahmo.Size.X / 40.0); 
    147189        rajahdys.Position = hahmo.Position; 
    148190        Add(rajahdys); 
     
    155197        } 
    156198        hahmo.Destroy(); 
     199        pistelaskuri.Value = 0; 
     200 
    157201        MessageDisplay.Add("Kuolit..."); 
    158202    } 
     
    165209        pelaaja1.Size *= 1.1; 
    166210        hampurilaislaskuri.Value++; 
    167  
    168     } 
    169  
    170    void SeuraavaKentta() 
     211        pistelaskuri.Value += 100; 
     212 
     213    } 
     214 
     215    void SeuraavaKentta() 
    171216    { 
    172217        ClearAll(); 
     218        juoksuNopeus = perusJuoksuNopeus; 
     219        hyppynopeus = perushyppyNopeus; 
    173220 
    174221        hampurilaislaskuri.Value = 0; 
     
    176223        if (kenttaNro == 1) LuoKentta("kentta1"); 
    177224        else if (kenttaNro == 2) LuoKentta("kentta2"); 
    178         else if (kenttaNro == 3) LuoKentta("kentta2");         
    179         else if (kenttaNro > 3) Exit(); 
     225        else if (kenttaNro == 3) LuoKentta("kentta3"); 
     226        else if (kenttaNro == 4) LuoKentta("kentta4"); 
     227        else if (kenttaNro == 5) LuoKentta("kentta5"); 
     228        else if (kenttaNro == 6) LuoKentta("kentta6"); 
     229        else if (kenttaNro > 6) Exit(); 
    180230 
    181231 
     
    183233        Gravity = new Vector(0, -1000); 
    184234 
     235        Label pisteNaytto = new Label(); 
     236        pisteNaytto.X = Screen.Left + 100; 
     237        pisteNaytto.Y = Screen.Top - 100; 
     238        pisteNaytto.TextColor = Color.Black; 
     239        pisteNaytto.Color = Color.White; 
     240 
     241        pisteNaytto.BindTo(pistelaskuri); 
     242        Add(pisteNaytto); 
     243 
    185244        Camera.Follow(pelaaja1); 
    186         Camera.ZoomFactor = 1.7; 
     245        //Camera.ZoomFactor = 1.7; 
    187246        Camera.StayInLevel = true; 
    188247    } 
    189248 
    190    void tormaaPorkkanaan(PhysicsObject hahmo,PhysicsObject porkkana) 
    191    { 
    192        porkkana.Destroy(); 
    193        pelaaja1.Size *= 0.5; 
    194        MessageDisplay.Add("Söit Porkkanan"); 
    195        hampurilaislaskuri.Value--; 
    196  
    197    } 
    198  
    199    void tormaaMaaliin(PhysicsObject hahmo, PhysicsObject maali) 
    200    { 
    201        kenttaNro++; 
    202        SeuraavaKentta(); 
    203  
    204    } 
     249    void tormaaPorkkanaan(PhysicsObject hahmo, PhysicsObject porkkana) 
     250    { 
     251        porkkana.Destroy(); 
     252        pelaaja1.Size *= 0.5; 
     253        MessageDisplay.Add("Söit Porkkanan"); 
     254        hampurilaislaskuri.Value--; 
     255 
     256    } 
     257 
     258    void tormaaKokikseen(PhysicsObject hahmo, PhysicsObject kokis) 
     259    { 
     260        kokis.Destroy(); 
     261        MessageDisplay.Add("SOKERIHUMALA!!!!"); 
     262        juoksuNopeus *= 1.5; 
     263        hyppynopeus *= 1.5; 
     264        Timer ajastin = new Timer(); 
     265        ajastin.Interval = 10; 
     266        ajastin.Timeout += delegate { juoksuNopeus = perusJuoksuNopeus; hyppynopeus = perushyppyNopeus; }; 
     267        ajastin.Start(1); 
     268        pistelaskuri.Value += 200; 
     269 
     270    } 
     271 
     272    void tormaaMaaliin(PhysicsObject hahmo, PhysicsObject maali) 
     273    { 
     274        kenttaNro++; 
     275        SeuraavaKentta(); 
     276 
     277    } 
    205278 
    206279 
  • 2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1/Tasohyppelypeli1Content/Tasohyppelypeli1Content.contentproj

    r4243 r4317  
    116116    </Compile> 
    117117  </ItemGroup> 
     118  <ItemGroup> 
     119    <Compile Include="kokis.png"> 
     120      <Name>kokis</Name> 
     121      <Importer>TextureImporter</Importer> 
     122      <Processor>TextureProcessor</Processor> 
     123    </Compile> 
     124  </ItemGroup> 
     125  <ItemGroup> 
     126    <Compile Include="kentta3.txt"> 
     127      <Name>kentta3</Name> 
     128      <Importer>TextFileImporter</Importer> 
     129      <Processor>TextFileContentProcessor</Processor> 
     130    </Compile> 
     131  </ItemGroup> 
     132  <ItemGroup> 
     133    <Compile Include="kentta4.txt"> 
     134      <Name>kentta4</Name> 
     135      <Importer>TextFileImporter</Importer> 
     136      <Processor>TextFileContentProcessor</Processor> 
     137    </Compile> 
     138  </ItemGroup> 
     139  <ItemGroup> 
     140    <Compile Include="kentta5.txt"> 
     141      <Name>kentta5</Name> 
     142      <Importer>TextFileImporter</Importer> 
     143      <Processor>TextFileContentProcessor</Processor> 
     144    </Compile> 
     145  </ItemGroup> 
     146  <ItemGroup> 
     147    <Compile Include="lenkkeilijä.png"> 
     148      <Name>lenkkeilijä</Name> 
     149      <Importer>TextureImporter</Importer> 
     150      <Processor>TextureProcessor</Processor> 
     151    </Compile> 
     152  </ItemGroup> 
    118153  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    119154  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1/Tasohyppelypeli1Content/kentta1.txt

    r4243 r4317  
    11 
    2                                                                       *** 
     2                                                                      * 
    33 
    4                                                               *       ##       
    5            ##                                                #### 
     4            O                                                  *       ##       
     5        K  ##                                                #### 
    66           ##                                       ###                       ####  * 
    77           ##                          *                                                * 
    88***        ##                                 ###                                           M 
    9 ******     ##   *                                                                                   
    10 ***   N ***##                   *   ####                                               ################ 
     9****** *   ##   *                            ##                                                      
     10***   N ** ##        L           *          ###                                          ################ 
    1111###############################################PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP 
  • 2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1/Tasohyppelypeli1Content/kentta2.txt

    r4243 r4317  
    1212                                                                   #     #   
    1313                                                    #####  ###       
    14                             ***             #####                              ## 
    15              *  ######### #######                                                                     
    16          *  #####               ##   ####                  PPPPPPPPPPPPPPPPPPPPPPPPPPP###PPPPPPP                *   #####         *         
    17        #######                  #####################################################################################   ##############      M    
    18     N  #OO                                                                                                                              ############ 
     14                  L         ***             #####                              ## 
     15             *  ######### #######                                                     KK                            ######## 
     16         *  #####               ##   ####                  PPPPPPPPPPPPPPPPPPPPPPPPPPP###PPPPPPPPP                *#########         *         
     17       #######                  ####################################################################################     ##############      M    
     18    N  #OO                                                          K  K K                                                              ############ 
    1919######################################################################################################################  ###################### 
    2020                                                                                                                     #          #    
Note: See TracChangeset for help on using the changeset viewer.