Ignore:
Timestamp:
2015-06-11 11:34:05 (4 years ago)
Author:
oslahtin
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2015/24/OskariL/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.cs

    r5996 r6013  
    1     using Jypeli; 
    2     using Jypeli.Controls; 
    3     using Jypeli.Widgets; 
    4     using Jypeli.Effects; 
    5     using Jypeli.Content; 
    6     using Jypeli.Assets; 
    7     using Jypeli.GameObjects; 
    8     public class Tasohyppelypeli1 : PhysicsGame 
     1using Jypeli; 
     2using Jypeli.Controls; 
     3using Jypeli.Widgets; 
     4using Jypeli.Effects; 
     5using Jypeli.Content; 
     6using Jypeli.Assets; 
     7using Jypeli.GameObjects; 
     8 
     9public class Tasohyppelypeli1 : PhysicsGame 
    910{ 
    1011    const double nopeus = 10000; 
     
    2829 
    2930    EasyHighScore topLista = new EasyHighScore(); 
    30  
     31    int kenttaNro = 1; 
    3132 
    3233    public override void Begin() 
    3334    { 
    34  
     35        SetWindowSize((int)(Screen.Width), (int)Screen.Height); 
     36        LataaKentta(); 
     37    } 
     38 
     39    void SeuraavaKentta() 
     40    { 
     41        kenttaNro++; 
     42        LataaKentta(); 
     43    } 
     44    void LataaKentta() 
     45    { 
    3546        ClearAll(); 
    36  
    37  
    38         Gravity = new Vector(0, -1900); 
    39  
    40         SetWindowSize((int)(Screen.Width), (int)Screen.Height); 
    41  
     47        if (kenttaNro > 5) 
     48        { 
     49         Exit(); 
     50        } 
    4251        LuoKentta(); 
    4352        LisaaNappaimet(); 
     53        Gravity = new Vector(0, -1900); 
     54 
    4455        LuoPistelaskuri(); 
    45  
     56        if (kenttaNro > 1) 
     57        {       
     58             
     59            Level.Background.CreateGradient(Color.ForestGreen, Color.Aquamarine); 
     60    } 
    4661        Camera.Follow(pelaaja1); 
    47         Camera.ZoomFactor = 2; 
    48         Camera.StayInLevel = true; 
    49  
    50        liikutusajastin = new Timer(); 
     62        Camera.ZoomFactor = 3.5; 
     63        Camera.StayInLevel = false; 
     64 
     65        liikutusajastin = new Timer(); 
    5166        liikutusajastin.Interval = 0.01; 
    5267        liikutusajastin.Timeout += delegate 
     
    5570            SiirraPelaajaaOikeammalle(pelaaja2); 
    5671        }; 
    57        liikutusajastin.Start(); 
     72        liikutusajastin.Start(); 
    5873 
    5974        peliKaynnissa = true; 
    60  
    61  
    62     } 
    63     void SiirraPelaajaaVasemmalle(PlatformCharacter hahmo) 
     75    } 
     76 
     77    void SiirraPelaajaaOikeammalle(PlatformCharacter hahmo) 
    6478    { 
    6579        hahmo.Push(new Vector(nopeus, 0.0)); 
    66     } 
    67     void SiirraPelaajaaOikeammalle(PlatformCharacter hahmo) 
    68     { 
    69         hahmo.Push(new Vector(nopeus, 0.0)); 
    7080 
    7181    } 
    7282    void LuoKentta() 
    7383    { 
    74         ColorTileMap ruudut = ColorTileMap.FromLevelAsset("kartta"); 
     84        ColorTileMap ruudut = ColorTileMap.FromLevelAsset("kartta" +kenttaNro); 
    7585        ruudut.SetTileMethod(Color.Black, LisaaTaso); 
    7686        //ruudut.SetTileMethod('*', LisaaTahti); 
     
    8292        ruudut.SetTileMethod(Color.DarkAzure, LisaaPelaaja2); 
    8393        ruudut.SetTileMethod(Color.Azure, LisaaSamppanja); 
     94        ruudut.SetTileMethod(Color.BloodRed, LisaaMaali); 
     95        ruudut.SetTileMethod(Color.DarkCyan, LisaaKuusikulmio); 
    8496        ruudut.Optimize(Color.Black); 
    8597        ruudut.Execute(20, 20); 
    86     
     98 
    8799        Level.CreateLeftBorder(); 
    88100        Level.CreateTopBorder(); 
     
    93105        Level.Background.CreateGradient(Color.Aqua, Color.Azure); 
    94106    } 
    95  
     107    void LisaaKuusikulmio(Vector paikka, double leveys, double korkeus) 
     108    { 
     109        PhysicsObject kuusikulmio = new PhysicsObject(leveys, korkeus); 
     110        kuusikulmio.Position = paikka; 
     111        kuusikulmio.Shape = Shape.Hexagon; 
     112        kuusikulmio.Color = Color.DarkRed; 
     113        kuusikulmio.Tag = "kuusikulmio"; 
     114 
     115 
     116    } 
     117    void LisaaMaali(Vector paikka, double leveys, double korkeus) 
     118    { 
     119        PhysicsObject maali = new PhysicsObject(leveys, korkeus); 
     120        maali.Position = paikka; 
     121        maali.Shape = Shape.Heart; 
     122        maali.Color = Color.BloodRed; 
     123        maali.Tag = "maali"; 
     124        maali.IgnoresCollisionResponse = true; 
     125        maali.IgnoresGravity = true; 
     126        maali.IgnoresExplosions = true; 
     127 
     128        Add(maali); 
     129    } 
    96130    void LisaaTaso(Vector paikka, double leveys, double korkeus) 
    97131    { 
     
    100134        taso.Color = new Color(4, 146, 208); 
    101135        taso.Tag = "seina"; 
    102         
     136 
    103137        Add(taso); 
    104138    } 
    105  
    106139    void LisaaTahti(Vector paikka, double leveys, double korkeus) 
    107140    { 
     
    112145        tahti.Tag = "tahti"; 
    113146        Add(tahti); 
    114     } 
    115     void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
    116     { 
    117          
    118          
    119          
    120         ammus.Destroy(); 
    121147    } 
    122148    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
     
    132158        AddCollisionHandler(pelaaja1, "pommi", Rajahdys); 
    133159        AddCollisionHandler(pelaaja1, "samppanja", TormaaSamppanjaan); 
    134         pelaaja1.Tag = "pelaaja1"; 
     160        AddCollisionHandler(pelaaja1, "maali", TormaaMaaliin); 
     161        pelaaja1.Tag = "pelaaja"; 
    135162        Add(pelaaja1); 
    136163 
     
    138165    void LisaaPelaaja2(Vector paikka, double leveys, double korkeus) 
    139166    { 
    140          
     167 
    141168        pelaaja2 = new PlatformCharacter(leveys, korkeus); 
    142169        pelaaja2.Position = paikka; 
    143170        pelaaja2.Mass = 3.25; 
    144171        pelaaja2.Image = pelaajan2Kuva; 
    145        AddCollisionHandler(pelaaja2, "seina", TormaaTasoon); 
     172     // AddCollisionHandler(pelaaja2, "seina", TormaaTasoon); 
    146173        AddCollisionHandler(pelaaja2, "tahti", TormaaTahteen); 
    147         AddCollisionHandler(pelaaja2, "vihu", TormaaTasoon); 
    148         AddCollisionHandler(pelaaja2, "oikea", TormaaOikeaanReunaan); 
     174    //AddCollisionHandler(pelaaja2, "vihu", TormaaTasoon); 
     175    //AddCollisionHandler(pelaaja2, "oikea", TormaaOikeaanReunaan); 
    149176        AddCollisionHandler(pelaaja2, "pommi", Rajahdys); 
    150177        AddCollisionHandler(pelaaja2, "samppanja", TormaaSamppanjaan); 
     178        AddCollisionHandler(pelaaja2, "maali", TormaaMaaliin); 
     179        pelaaja2.Tag = "pelaaja"; 
    151180 
    152181        Add(pelaaja2); 
    153  
     182             
    154183 
    155184 
     
    165194        vihollinen.IgnoresGravity = true; 
    166195        vihollinen.CanRotate = true; 
     196     // vihollinen.Oscillate(new Vector(1, 1), korkeus * 1.5, 0.4); 
    167197 
    168198        Add(vihollinen); 
     
    239269        hahmo.ForceJump(nopeus); 
    240270    } 
     271 
    241272    void TormaaParsakaaliin(PhysicsObject hahmo, PhysicsObject tahti) 
    242273    { 
     
    248279 
    249280    void TormaaTahteen(PhysicsObject hahmo, PhysicsObject parsakaali) 
    250    { 
    251        maaliAani.Play(); 
    252        pisteLaskuri.Value += 1; 
    253        MessageDisplay.Add("Jaa."); 
    254        parsakaali.Destroy(); 
     281    { 
     282        maaliAani.Play(); 
     283        pisteLaskuri.Value += 1; 
     284        MessageDisplay.Add("Jaa."); 
     285        parsakaali.Destroy(); 
    255286    } 
    256287    void LuoPistelaskuri() 
     
    268299    } 
    269300 
     301    void TormaaMaaliin(PhysicsObject tormaaja, PhysicsObject maali) 
     302    { 
     303        SeuraavaKentta(); 
     304    } 
     305 
    270306    void TormaaTasoon(PhysicsObject tormaaja, PhysicsObject kohde) 
    271    { 
    272        if (peliKaynnissa) 
    273        { 
    274             
    275    //       MessageDisplay.Add("Kuolit! :("); 
    276    //       Keyboard.Disable(Key.Up); 
    277    //       liikutusajastin.Stop(); 
    278    //       peliKaynnissa = false; 
    279    //       Begin(); 
    280        } 
    281    
    282        
    283    } 
     307    { 
     308        if (peliKaynnissa) 
     309        { 
     310 
     311                  MessageDisplay.Add("Kuolit! :("); 
     312                  Keyboard.Disable(Key.Up); 
     313                  liikutusajastin.Stop(); 
     314                  peliKaynnissa = false; 
     315                  LataaKentta(); 
     316        } 
     317 
     318 
     319    } 
    284320 
    285321    void TormaaOikeaanReunaan(PhysicsObject tormaaja, PhysicsObject kohde) 
     
    307343        samppanja.Destroy(); 
    308344    } 
    309     void Rajahdys(PhysicsObject hahmo, PhysicsObject  
     345    void Rajahdys(PhysicsObject hahmo, PhysicsObject 
    310346        pommi) 
    311347    { 
Note: See TracChangeset for help on using the changeset viewer.