Ignore:
Timestamp:
2017-08-03 13:25:20 (23 months ago)
Author:
npo17_79
Message:

Peli alkaa ja loppuu hyvin. Parhaat pisteet näkyvät hyvin.
Vihollisen suunnittelu kesken.

File:
1 edited

Legend:

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

    r9371 r9387  
    1010{ 
    1111 
    12     // const double nopeus = 200; 
    13     // const double hyppyNopeus = 750; 
    14     Vector nopeusYlös = new Vector(0.0, 500.0); 
     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); 
    1518    Vector nopeusAlas = new Vector(0.0, -500.0); 
    1619 
     
    2326    Image pelaajanKuva = LoadImage("sukeltaja1"); 
    2427    Image tahtiKuva = LoadImage("timantti"); 
    25     Image vihollinenKuva = LoadImage("vihollinen"); 
    26  
     28    Image vihollinenKuva = LoadImage("kala"); 
     29    Image tasonkuva = LoadImage("kivet2"); 
    2730    SoundEffect maaliAani = LoadSoundEffect("maali"); 
    2831 
     
    3235        // Gravity = new Vector(0, -1000); 
    3336 
    34         LuoKentta(); 
    35         LisaaNappaimet(); 
    36         LuoAikaLaskuri(); 
    37         LuoPistelaskuri(); 
    38  
    39         Camera.Follow(pelaaja1); 
    40         Camera.ZoomFactor = 1.2; 
    41         Camera.StayInLevel = true; 
    42         // Camera.ZoomToLevel(); 
     37        AlkuValikko(); 
     38 
     39       // Mouse.IsCursorVisible = true; 
     40 
    4341    } 
    4442 
     
    5654 
    5755 
    58         for (int i = 0; i < 50; i++)  
     56        for (int i = 0; i < 50; i++) 
    5957        { 
    6058            double xpaikka = RandomGen.NextDouble(Level.Left, Level.Right); 
     
    7169        taso.Color = Color.Black; 
    7270        taso.Restitution = 0.4; 
     71        taso.Image = tasonkuva; 
    7372        Add(taso); 
    7473    } 
     
    9291        Add(aarre); 
    9392    } 
    94     void LisaaVihollinen (Vector paikka,double leveys,double korkeus) 
    95     { 
    96          
    97         PhysicsObject vihollinen = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    98         vihollinen.IgnoresCollisionResponse = true; 
    99         vihollinen.Position = paikka; 
    100         vihollinen.Image = vihollinenKuva; 
    101         vihollinen.Tag = "vihollinen"; 
    102         Add(vihollinen); 
     93    
     94        void LisaaVihollinen() 
     95    { 
     96            PhysicsObject vihollinen = new PhysicsObject(100.0, 100.0); 
     97            vihollinen.X = 300.0; 
     98            vihollinen.Y = 350.0; 
     99            vihollinen.Tag = "pahis"; 
     100            vihollinen.Image = vihollinenKuva; 
     101            Add(vihollinen); 
     102 
     103            FollowerBrain seuraajanAivot = new FollowerBrain(pelaaja1); 
     104            seuraajanAivot.Speed = 100;                 // Millä nopeudella kohdetta seurataan 
     105            seuraajanAivot.DistanceFar = 600;           // Etäisyys jolla aletaan seurata kohdetta 
     106            seuraajanAivot.DistanceClose = 200;         // Etäisyys jolloin ollaan lähellä kohdetta 
     107            seuraajanAivot.StopWhenTargetClose = false;  // Pysähdytään kun ollaan lähellä kohdetta 
     108                                                         //seuraajanAivot.FarBrain = satunnaisAivot;   // Käytetään satunnaisaivoja kun ollaan kaukana 
     109 
     110            // Tapahtuma, joka tapahtuu kun ollaan lähellä kohdetta 
     111            //seuraajanAivot.TargetClose += mitaTapahtuuKunOllaanLahella; 
     112 
     113        //    PhysicsObject vihollinen = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     114        //vihollinen.IgnoresCollisionResponse = true; 
     115        //vihollinen.Position = paikka; 
     116        //vihollinen.Image = vihollinenKuva; 
     117        //vihollinen.Tag = "vihollinen"; 
     118        //Add(vihollinen); 
    103119    } 
    104120 
     
    149165    } 
    150166 
     167    void AlkuValikko() 
     168    { 
     169        MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko","Aloita peli", "Parhaat pisteet","Tekijätiedot", "Lopeta"); 
     170        Level.Background.Color = Color.Blue; 
    151171  
    152  
     172        alkuValikko.AddItemHandler(0, AloitaPeli); 
     173        alkuValikko.AddItemHandler(1, ParhaatPisteet); 
     174        alkuValikko.AddItemHandler(2, Tekijätiedot); 
     175        alkuValikko.AddItemHandler(3, Exit); 
     176 
     177        alkuValikko.DefaultCancel = 3; 
     178        alkuValikko.Color = Color.Red; 
     179        alkuValikko.SetButtonColor(Color.Blue); 
     180        //alkuValikko.Image=taustaKuva; 
     181 
     182        Add(alkuValikko); 
     183} 
     184 
     185         
    153186    void LuoPistelaskuri() 
    154187    { 
     
    171204    void LuoAikaLaskuri() 
    172205    { 
    173         alaspainLaskuri = new DoubleMeter(30); 
     206        alaspainLaskuri = new DoubleMeter(5); 
    174207 
    175208        aikaLaskuri = new Timer(); 
     
    197230            aikaLaskuri.Stop(); 
    198231 
     232            PelaajaKuoli(); 
     233 
     234            //pelaaja1.Destroy(); 
     235            //ClearAll(); 
     236 
     237            //Label pisteNaytto = new Label(); 
     238            //pisteNaytto.TextColor = Color.White; 
     239 
     240            //pisteNaytto.Text = "Sait pisteitä " + pisteLaskuri.Value; 
     241         
     242            //Add(pisteNaytto); 
     243 
    199244            // täydennä mitä tapahtuu, kun aika loppuu 
    200245        } 
    201246    } 
     247    void AloitaPeli() 
     248 
     249    { 
     250        LuoKentta(); 
     251        LisaaNappaimet(); 
     252        LuoAikaLaskuri(); 
     253        LuoPistelaskuri(); 
     254 
     255 
     256        Camera.Follow(pelaaja1); 
     257        Camera.ZoomFactor = 1.2; 
     258        Camera.StayInLevel = true; 
     259        // Camera.ZoomToLevel(); 
     260    } 
     261    void ParhaatPisteet() 
     262    { 
     263        topLista.Show(); 
     264        topLista.HighScoreWindow.Closed += AloitaPeli; 
     265 
     266    } 
     267    
     268 
     269        void Tekijätiedot() 
     270    { 
     271        MessageWindow ikkuna = new MessageWindow("Mirka Havinga"); 
     272        Add(ikkuna); 
     273        ikkuna.Closed += delegate  
     274        { 
     275            AlkuValikko(); 
     276        }; 
     277 
     278 
     279    } 
     280 
     281    void PelaajaKuoli() 
     282    { 
     283        pelaaja1.Destroy(); 
     284        topLista.EnterAndShow(pisteLaskuri.Value); 
     285 
     286        topLista.HighScoreWindow.Closed += AloitaPeli; 
     287    } 
     288 
     289 
     290 
     291    void AloitaPeli(Window sender) 
     292    { 
     293        ClearAll(); 
     294        AlkuValikko(); 
     295       // topLista.Show(); 
     296    } 
     297 
    202298} 
Note: See TracChangeset for help on using the changeset viewer.