Ignore:
Timestamp:
2017-08-04 13:12:03 (23 months ago)
Author:
npo17_79
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2017/31/MirkaH/TimantitOvatIkuisia/TimantitOvatIkuisia/TimantitOvatIkuisia/TimantitOvatIkuisia.cs

    r9395 r9448  
    77using Jypeli.Widgets; 
    88 
    9 public class TimantitOvatIkuisia : PhysicsGame 
     9public class DiamondDiver : PhysicsGame 
    1010{ 
    11  
    12         EasyHighScore topLista = new EasyHighScore(); 
    13  
    14  
    15             // const double nopeus = 200; 
    16             // const double hyppyNopeus = 750; 
    17             Vector nopeusYlös = new Vector(0.0, 500.0); 
     11    //Pelaajan nopeus 
     12    Vector nopeusYlös = new Vector(0.0, 500.0); 
    1813    Vector nopeusAlas = new Vector(0.0, -500.0); 
    1914 
     15    //vihollisen ja roiston nopeus 
     16    double vihollisenNopeus = 50; 
     17    double roistonNopeus = 100; 
     18 
     19    //Taustan elementtien koko 
    2020    const int RUUDUN_KOKO = 50; 
    2121 
    2222    PhysicsObject pelaaja1; 
    2323    IntMeter pisteLaskuri; 
    24  
    25     Image taustaKuva = LoadImage("meri"); 
     24    EasyHighScore topLista = new EasyHighScore(); 
     25 
     26    Image taustaKuva = LoadImage("merenpohja"); 
    2627    Image sukeltajaoikea = LoadImage("sukeltaja1"); 
    2728    Image tahtiKuva = LoadImage("timantti"); 
    28     Image vihollinenKuva = LoadImage("ammunta"); 
     29    Image vihollinenKuva = LoadImage("tähtäin"); 
    2930    Image tasonkuva = LoadImage("kivet2"); 
    3031    Image sukeltajavasen = LoadImage("sukeltajavasen"); 
    31     SoundEffect maaliAani = LoadSoundEffect("maali"); 
    32  
     32    Image vihollistahti = LoadImage("vihollistahti"); 
     33    Image alkuKuva = LoadImage("alkumeri"); 
     34    SoundEffect timanttiaani = LoadSoundEffect("timanttiaani"); 
     35     
    3336    public override void Begin() 
    3437    { 
    35  
     38        Level.Width = Window.Width; 
     39        Level.Height = Window.Height; 
     40        AlkuValikko(); 
    3641        // Gravity = new Vector(0, -1000); 
    37  
    38         AlkuValikko(); 
    39  
    40        // Mouse.IsCursorVisible = true; 
    41  
    42     } 
    43  
     42        // Mouse.IsCursorVisible = true; 
     43        MediaPlayer.Play("taustaaani"); 
     44        Level.Background.Image = alkuKuva; 
     45        Level.Background.FitToLevel(); 
     46    } 
     47    void AlkuValikko() 
     48    { 
     49        MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", "Aloita peli", "Parhaat pisteet", "Tekijätiedot", "Lopeta"); 
     50        Level.Background.Color = Color.Blue; 
     51 
     52        alkuValikko.AddItemHandler(0, AloitaPeli); 
     53        alkuValikko.AddItemHandler(1, ParhaatPisteet); 
     54        alkuValikko.AddItemHandler(2, Tekijätiedot); 
     55        alkuValikko.AddItemHandler(3, Exit); 
     56 
     57        alkuValikko.DefaultCancel = 3; 
     58        alkuValikko.Color = Color.Purple; 
     59        alkuValikko.SetButtonColor(Color.Blue); 
     60        //alkuValikko.Image=alkuKuva; 
     61 
     62        Add(alkuValikko); 
     63    } 
     64    void AloitaPeli() 
     65 
     66    { 
     67        LuoKentta(); 
     68        LisaaNappaimet(); 
     69        LuoAikaLaskuri(); 
     70        LuoPistelaskuri(); 
     71 
     72 
     73        Camera.Follow(pelaaja1); 
     74        Camera.ZoomFactor = 1.2; 
     75        Camera.StayInLevel = true; 
     76        // Camera.ZoomToLevel(); 
     77    } 
    4478    void LuoKentta() 
    4579    { 
     
    4983        kentta.SetTileMethod('N', LisaaPelaaja); 
    5084        kentta.SetTileMethod('V', LisaaVihollinen); 
     85        kentta.SetTileMethod('R', LisaaRoisto); 
    5186        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    5287        Level.CreateBorders(); 
    53         Level.Background.CreateGradient(Color.White, Color.SkyBlue); 
    54         Level.Background.Image = taustaKuva; 
     88        //Level.Background.CreateGradient(Color.White, Color.SkyBlue); 
     89       Level.Background.Image = alkuKuva; 
     90        Level.Background.FitToLevel(); 
    5591         
    56  
     92        //Timantit esiintyvät randomisti 
    5793        for (int i = 0; i < 50; i++) 
    5894        { 
     
    68104        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    69105        taso.Position = paikka; 
    70         taso.Color = Color.Black; 
     106        //taso.Color = Color.Black; 
    71107        taso.Restitution = 0.4; 
    72108        taso.Image = tasonkuva; 
     
    96132    { 
    97133            PhysicsObject vihollinen = new PhysicsObject(40.0, 20.0); 
    98         vihollinen.Position = paikka; 
    99  
    100            // vihollinen.Tag = "pahis"; 
     134            vihollinen.Position = paikka; 
    101135            vihollinen.Image = vihollinenKuva; 
    102136            Add(vihollinen); 
    103137 
    104              
     138        //vihollinen ja roisto seuraavat pelaajaa  
    105139        vihollinen.Tag = "vihollinen"; 
    106140        FollowerBrain seuraajanAivot = new FollowerBrain("pelaaja"); 
    107         seuraajanAivot.Speed = 50;                 // Millä nopeudella kohdetta seurataan 
     141        seuraajanAivot.Speed = vihollisenNopeus;                 // Millä nopeudella kohdetta seurataan 
    108142        seuraajanAivot.DistanceFar = 600;           // Etäisyys jolla aletaan seurata kohdetta 
    109143        seuraajanAivot.DistanceClose = 200;         // Etäisyys jolloin ollaan lähellä kohdetta 
     
    113147        vihollinen.Brain = seuraajanAivot; 
    114148    } 
    115  
     149    void LisaaRoisto(Vector paikka, double leveys, double korkeus) 
     150    { 
     151        PhysicsObject roisto = new PhysicsObject(40.0, 10.0); 
     152        roisto.Position = paikka; 
     153 
     154        // roisto.Tag = "pahis"; 
     155       roisto.Image = vihollistahti; 
     156        Add(roisto); 
     157 
     158 
     159        roisto.Tag = "vihollinen"; 
     160        FollowerBrain seuraajanAivot = new FollowerBrain("pelaaja"); 
     161        seuraajanAivot.Speed = roistonNopeus;                 // Millä nopeudella kohdetta seurataan 
     162        seuraajanAivot.DistanceFar = 600;           // Etäisyys jolla aletaan seurata kohdetta 
     163        seuraajanAivot.DistanceClose = 200;         // Etäisyys jolloin ollaan lähellä kohdetta 
     164        seuraajanAivot.StopWhenTargetClose = false;  // Pysähdytään kun ollaan lähellä kohdetta 
     165                                                     //seuraajanAivot.FarBrain = satunnaisAivot;   // Käytetään satunnaisaivoja kun ollaan kaukana 
     166 
     167        roisto.Brain = seuraajanAivot; 
     168    } 
    116169 
    117170 
    118171    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    119172    { 
    120         pelaaja1 = new PhysicsObject(leveys * 3, korkeus * 1); 
     173        pelaaja1 = new PhysicsObject(leveys * 2, korkeus * 0.75); 
    121174        pelaaja1.Position = paikka; 
    122175        pelaaja1.Tag = "pelaaja"; 
     
    152205    { 
    153206        hahmo.Push(nopeus); 
    154         if (pelaaja1.Velocity.X < 0) pelaaja1.Image = sukeltajavasen; 
    155         else pelaaja1.Image = sukeltajaoikea;  
     207        //if (pelaaja1.Velocity.X < 0) pelaaja1.Image = sukeltajavasen; 
     208        //else pelaaja1.Image = sukeltajaoikea;  
    156209         
    157210    } 
     
    161214    void TormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 
    162215    { 
    163         maaliAani.Play(); 
    164         MessageDisplay.Add("Keräsit timantin!"); 
     216        timanttiaani.Play(); 
     217        //MessageDisplay.Add("Keräsit timantin!"); 
    165218        tahti.Destroy(); 
    166219        pisteLaskuri.Value += 1; 
     
    168221    } 
    169222 
    170     void AlkuValikko() 
    171     { 
    172         MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko","Aloita peli", "Parhaat pisteet","Tekijätiedot", "Lopeta"); 
    173         Level.Background.Color = Color.Blue; 
    174   
    175         alkuValikko.AddItemHandler(0, AloitaPeli); 
    176         alkuValikko.AddItemHandler(1, ParhaatPisteet); 
    177         alkuValikko.AddItemHandler(2, Tekijätiedot); 
    178         alkuValikko.AddItemHandler(3, Exit); 
    179  
    180         alkuValikko.DefaultCancel = 3; 
    181         alkuValikko.Color = Color.Red; 
    182         alkuValikko.SetButtonColor(Color.Blue); 
    183         //alkuValikko.Image=taustaKuva; 
    184  
    185         Add(alkuValikko); 
    186 } 
     223    
    187224 
    188225         
     
    248285        } 
    249286    } 
    250     void AloitaPeli() 
    251  
    252     { 
    253         LuoKentta(); 
    254         LisaaNappaimet(); 
    255         LuoAikaLaskuri(); 
    256         LuoPistelaskuri(); 
    257          
    258  
    259         Camera.Follow(pelaaja1); 
    260         Camera.ZoomFactor = 1.2; 
    261         Camera.StayInLevel = true; 
    262         // Camera.ZoomToLevel(); 
    263     } 
     287    
    264288    void ParhaatPisteet() 
    265289    { 
Note: See TracChangeset for help on using the changeset viewer.