Changeset 4325 for 2013/26


Ignore:
Timestamp:
2013-06-28 12:42:00 (6 years ago)
Author:
roarolky
Message:

Talletus.

Location:
2013/26/RoopeK/Hypopolis/Hypopolis
Files:
2 added
2 edited

Legend:

Unmodified
Added
Removed
  • 2013/26/RoopeK/Hypopolis/Hypopolis/Hypopolis/Hypopolis.cs

    r4296 r4325  
    2121 
    2222    List<Label> valikonKohdat; 
     23    List<PhysicsObject> tasot; 
    2324 
    2425    private Animation pelaaja_hyppy; 
     
    2627 
    2728    SoundEffect hyppyAani = LoadSoundEffect("Jump"); 
     29    SoundEffect valinta = LoadSoundEffect("Select"); 
    2830 
    2931    PlatformCharacter2 pelaaja; 
     
    3436    public override void Begin() 
    3537    { 
    36  
     38        tasot = new List<PhysicsObject>(); 
    3739        // Utility 
    3840        SetWindowSize(1024, 768, false); 
     
    4446        Mustaruutu.Image = mustaruutu; 
    4547        Add(Mustaruutu); 
    46         Timer.SingleShot(2.0, Aloitus); 
    47  
    48         // Efekti 
    49         rajahdys = new ExplosionSystem(LoadImage("rajahdys"), pMaxMaara); 
    50         rajahdys.MinLifetime = 0.3; 
    51         rajahdys.MaxLifetime = 0.8; 
    52         rajahdys.MinScale = 30.0; 
    53         rajahdys.MaxScale = 70.0; 
    54         rajahdys.MinVelocity = 10.0; 
    55         rajahdys.MaxVelocity = 20.0; 
    56         Add(rajahdys); 
     48        Timer.SingleShot(0.5, Aloitus); 
    5749 
    5850        // Animaatio 
    5951        pelaaja_hyppy = LoadAnimation("Hyppy"); 
    6052        pelaaja_paikka = LoadAnimation("pelaaja"); 
    61  
     53         
    6254    } 
    6355 
    6456    void Aloitus() 
    6557    { 
    66  
    67         // Musiikki 
    68         MediaPlayer.Play("HypopolisTheme"); 
    6958 
    7059        // Teksti 
     
    7665        tekstikentta.Text = "HYPOPOLIS_"; 
    7766        Add(tekstikentta); 
    78         Timer.SingleShot(12.0, Phase1); 
    79  
    80     } 
    81  
    82     void Phase1() 
    83     { 
    84  
    85         Valikko(); 
     67        Timer.SingleShot(12.0, Valikko); 
    8668 
    8769    } 
     
    9577        Mustaruutu.Image = mustaruutu; 
    9678        Add(Mustaruutu, -3); 
     79        MediaPlayer.Play("HypopolisTheme2"); 
    9780 
    9881        Mouse.IsCursorVisible = true; 
     
    10083        Laskuri(LuoSatunnainenRakennusAlhaalta3); 
    10184        Laskuri(LuoSatunnainenRakennusAlhaalta4); 
    102         Laskuri(LuoSatunnainenRakennusAlhaalta5); 
    10385        Laskuri(LuoSatunnainenRakennusVasemmalta4); 
    10486 
     
    145127            if (Mouse.IsCursorOn(kohta)) 
    146128            { 
     129                valinta.Play(0.3, -0.3, 0.0); 
    147130                kohta.TextColor = Color.SlateGray; 
    148131            } 
     
    159142 
    160143        MediaPlayer.Stop(); 
     144        tasot.Clear(); 
    161145        ClearAll(); 
    162146        Pelaaja(); 
     
    175159        Laskuri(LuoSatunnainenRakennusAlhaalta4); 
    176160        Laskuri(LuoSatunnainenRakennusAlhaalta5); 
    177  
     161        Laskuri(LuoSatunnainenRakennusYlhaalta1); 
     162        Laskuri(LuoSatunnainenRakennusYlhaalta2); 
     163        Laskuri(LuoSatunnainenRakennusYlhaalta3); 
     164        Laskuri(LuoSatunnainenRakennusYlhaalta4); 
     165        Laskuri(LuoSatunnainenRakennusYlhaalta5); 
     166        Laskuri(LuoSatunnainenRakennusYlhaalta6); 
     167 
     168        Timer kuolemaAjastin = new Timer(); 
     169        kuolemaAjastin.Interval = 0.1; 
     170        kuolemaAjastin.Timeout += TarkastaKuolema; 
     171        kuolemaAjastin.Start(); 
     172 
     173        // Efekti 
     174        rajahdys = new ExplosionSystem(LoadImage("rajahdys"), pMaxMaara); 
     175        rajahdys.MinLifetime = 0.3; 
     176        rajahdys.MaxLifetime = 0.8; 
     177        rajahdys.MinScale = 30.0; 
     178        rajahdys.MaxScale = 70.0; 
     179        rajahdys.MinVelocity = 10.0; 
     180        rajahdys.MaxVelocity = 20.0; 
     181        Add(rajahdys); 
     182 
     183    } 
     184 
     185    void TarkastaKuolema() 
     186    { 
     187        bool olioYlhaalla =false; 
     188        bool olioAlhaalla = false; 
     189        bool olioVasemmalla = false; 
     190        bool olioOikealla = false; 
     191 
     192        foreach (var olio in GetObjectsAt(pelaaja.Position, pelaaja.Height / 2)) 
     193        { 
     194            if (olio == pelaaja) continue; 
     195            if (olio.X < pelaaja.X) olioVasemmalla = true; 
     196            if (olio.X > pelaaja.X) olioOikealla = true; 
     197            if (olio.Y < pelaaja.Y) olioAlhaalla = true; 
     198            if (olio.Y > pelaaja.Y) olioYlhaalla = true; 
     199        } 
     200 
     201        if ((olioAlhaalla && olioYlhaalla) || (olioVasemmalla && olioOikealla)) 
     202        { 
     203            MessageDisplay.Add("Kuolit"); 
     204        } 
     205 
     206        /*int sisallystenMaara = 0; 
     207 
     208        for (int i = 0; i < tasot.Count; i++) 
     209        { 
     210            //jos pelaaja on tason sisäpuolella, 
     211            //niin sisallystenmaara++; 
     212            if (pelaaja.Body.Rectangle.Intersects(tasot[i].Body.Rectangle)) 
     213            { 
     214                sisallystenMaara++; 
     215            } 
     216        } 
     217        if(sisallystenMaara > 0) 
     218            MessageDisplay.Add(sisallystenMaara.ToString());*/ 
    178219    } 
    179220 
     
    248289        // Poistuminen 
    249290        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    250         Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Lopeta peli"); 
     291        Keyboard.Listen(Key.Escape, ButtonState.Down, Valikko, "Lopeta peli"); 
    251292 
    252293    } 
     
    261302        vasenReuna.Color = Color.White; 
    262303        Add(vasenReuna); 
     304        tasot.Add(vasenReuna); 
    263305 
    264306        Surface oikeaReuna = new Surface(500, 1200); 
     
    270312        oikeaReuna.Image = taustakuvareuna; 
    271313        Add(oikeaReuna, -2); 
     314        tasot.Add(oikeaReuna); 
    272315 
    273316        Surface yläReuna = new Surface(1400, 100); 
     
    277320        yläReuna.Color = Color.White; 
    278321        Add(yläReuna); 
     322        tasot.Add(yläReuna); 
    279323 
    280324        Surface alaReuna = new Surface(1400, 100); 
     
    285329        alaReuna.Color = Color.White; 
    286330        Add(alaReuna); 
     331        tasot.Add(alaReuna); 
    287332 
    288333        Level.AmbientLight = 0.8; 
     
    300345        double r2 = RandomGen.NextDouble(100, 100); 
    301346        Color vari = RandomGen.NextColor(); 
    302         LuoMuoto(Shape.Rectangle, x, y, r, r2, vari); 
     347        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(250, 0), rakennus1); 
    303348 
    304349    } 
     
    312357        double r2 = RandomGen.NextDouble(100, 100); 
    313358        Color vari = RandomGen.NextColor(); 
    314         LuoMuoto(Shape.Rectangle, x, y, r, r2, vari); 
     359        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(250, 0), rakennus1); 
    315360 
    316361    } 
     
    324369        double r2 = RandomGen.NextDouble(100, 100); 
    325370        Color vari = RandomGen.NextColor(); 
    326         LuoMuoto(Shape.Rectangle, x, y, r, r2, vari); 
     371        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(250, 0), rakennus1); 
    327372 
    328373    } 
     
    336381        double r2 = RandomGen.NextDouble(100, 100); 
    337382        Color vari = RandomGen.NextColor(); 
    338         LuoMuoto(Shape.Rectangle, x, y, r, r2, vari); 
     383        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(250, 0), rakennus1); 
    339384 
    340385    } 
     
    348393        double r2 = RandomGen.NextDouble(500, 900); 
    349394        Color vari = RandomGen.NextColor(); 
    350         LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari); 
     395        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, 250), rakennus2); 
    351396 
    352397    } 
     
    360405        double r2 = RandomGen.NextDouble(500, 900); 
    361406        Color vari = RandomGen.NextColor(); 
    362         LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari); 
     407        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, 250), rakennus2); 
    363408 
    364409    } 
     
    372417        double r2 = RandomGen.NextDouble(500, 900); 
    373418        Color vari = RandomGen.NextColor(); 
    374         LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari); 
     419        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, 250), rakennus2); 
    375420 
    376421    } 
     
    384429        double r2 = RandomGen.NextDouble(500, 900); 
    385430        Color vari = RandomGen.NextColor(); 
    386         LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari); 
     431        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, 250), rakennus2); 
    387432 
    388433    } 
     
    396441        double r2 = RandomGen.NextDouble(500, 900); 
    397442        Color vari = RandomGen.NextColor(); 
    398         LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari); 
    399  
    400     } 
    401  
    402  
    403     void LuoMuoto(Shape muoto, double x, double y, double sade, double sade2, Color vari) 
     443        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, 250), rakennus2); 
     444 
     445    } 
     446 
     447    private void LuoSatunnainenRakennusYlhaalta1() 
     448    { 
     449 
     450        double x = RandomGen.NextDouble(-525, -525); 
     451        double y = RandomGen.NextDouble(1800, 1800); 
     452        double r = RandomGen.NextDouble(100, 100); 
     453        double r2 = RandomGen.NextDouble(500, 900); 
     454        Color vari = RandomGen.NextColor(); 
     455        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, -250), rakennus2); 
     456 
     457    } 
     458 
     459    private void LuoSatunnainenRakennusYlhaalta2() 
     460    { 
     461 
     462        double x = RandomGen.NextDouble(-250, -250); 
     463        double y = RandomGen.NextDouble(1800, 1800); 
     464        double r = RandomGen.NextDouble(100, 100); 
     465        double r2 = RandomGen.NextDouble(500, 900); 
     466        Color vari = RandomGen.NextColor(); 
     467        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, -250), rakennus2); 
     468 
     469    } 
     470 
     471    private void LuoSatunnainenRakennusYlhaalta3() 
     472    { 
     473 
     474        double x = RandomGen.NextDouble(-100, -100); 
     475        double y = RandomGen.NextDouble(1800, 1800); 
     476        double r = RandomGen.NextDouble(100, 100); 
     477        double r2 = RandomGen.NextDouble(500, 900); 
     478        Color vari = RandomGen.NextColor(); 
     479        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, -250), rakennus2); 
     480 
     481    } 
     482 
     483    private void LuoSatunnainenRakennusYlhaalta4() 
     484    { 
     485 
     486        double x = RandomGen.NextDouble(-250, -250); 
     487        double y = RandomGen.NextDouble(1800, 1800); 
     488        double r = RandomGen.NextDouble(100, 100); 
     489        double r2 = RandomGen.NextDouble(500, 900); 
     490        Color vari = RandomGen.NextColor(); 
     491        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, -250), rakennus2); 
     492 
     493    } 
     494 
     495    private void LuoSatunnainenRakennusYlhaalta5() 
     496    { 
     497 
     498        double x = RandomGen.NextDouble(-350, -350); 
     499        double y = RandomGen.NextDouble(1800, 1800); 
     500        double r = RandomGen.NextDouble(100, 100); 
     501        double r2 = RandomGen.NextDouble(500, 900); 
     502        Color vari = RandomGen.NextColor(); 
     503        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, -250), rakennus2); 
     504 
     505    } 
     506 
     507    private void LuoSatunnainenRakennusYlhaalta6() 
     508    { 
     509 
     510        double x = RandomGen.NextDouble(-400, -400); 
     511        double y = RandomGen.NextDouble(1800, 1800); 
     512        double r = RandomGen.NextDouble(100, 100); 
     513        double r2 = RandomGen.NextDouble(500, 900); 
     514        Color vari = RandomGen.NextColor(); 
     515        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari, new Vector(0, -250), rakennus2); 
     516 
     517    } 
     518 
     519 
     520    void LuoMuoto(Shape muoto, double x, double y, double sade, double sade2, Color vari, Vector nopeus, Image kuva) 
    404521    { 
    405522 
     
    409526        olio.Y = y; 
    410527        olio.X = x; 
    411         olio.Move(new Vector(250, 0)); 
     528        olio.Move(nopeus); 
    412529        olio.MakeStatic(); 
    413530        olio.Tag = "vasenSeinä"; 
    414         olio.Image = rakennus1; 
     531        olio.Image = kuva; 
    415532        olio.CollisionIgnoreGroup = 1; 
    416533        olio.IgnoresCollisionResponse = false; 
    417534        Add(olio); 
    418  
    419     } 
    420  
    421     void LuoMuoto2(Shape muoto, double x, double y, double sade, double sade2, Color vari) 
    422     { 
    423  
    424         PhysicsObject olio2 = new PhysicsObject(sade, sade2); 
    425         olio2.Shape = muoto; 
    426         olio2.Color = Color.OrangeRed; 
    427         olio2.Y = y; 
    428         olio2.X = x; 
    429         olio2.Move(new Vector(0, 250)); 
    430         olio2.MakeStatic(); 
    431         olio2.Tag = "alaSeinä"; 
    432         olio2.CollisionIgnoreGroup = 1; 
    433         olio2.Image = rakennus2; 
    434         olio2.IgnoresCollisionResponse = false; 
    435         Add(olio2); 
    436  
    437     } 
     535        tasot.Add(olio); 
     536    } 
     537 
     538    //void LuoMuoto2(Shape muoto, double x, double y, double sade, double sade2, Color vari) 
     539    //{ 
     540 
     541    //    PhysicsObject olio2 = new PhysicsObject(sade, sade2); 
     542    //    olio2.Shape = muoto; 
     543    //    olio2.Color = Color.OrangeRed; 
     544    //    olio2.Y = y; 
     545    //    olio2.X = x; 
     546    //    olio2.Move(new Vector(0, 250)); 
     547    //    olio2.MakeStatic(); 
     548    //    olio2.Tag = "alaSeinä"; 
     549    //    olio2.CollisionIgnoreGroup = 1; 
     550    //    olio2.Image = rakennus2; 
     551    //    olio2.IgnoresCollisionResponse = false; 
     552    //    Add(olio2); 
     553 
     554    //} 
     555 
     556    //void LuoMuoto3(Shape muoto, double x, double y, double sade, double sade2, Color vari) 
     557    //{ 
     558 
     559    //    PhysicsObject olio3 = new PhysicsObject(sade, sade2); 
     560    //    olio3.Shape = muoto; 
     561    //    olio3.Color = Color.OrangeRed; 
     562    //    olio3.Y = y; 
     563    //    olio3.X = x; 
     564    //    olio3.Move(new Vector(0, -250)); 
     565    //    olio3.MakeStatic(); 
     566    //    olio3.Tag = "yläSeinä"; 
     567    //    olio3.CollisionIgnoreGroup = 1; 
     568    //    olio3.Image = rakennus2; 
     569    //    olio3.IgnoresCollisionResponse = false; 
     570    //    Add(olio3); 
     571 
     572    //} 
    438573} 
  • 2013/26/RoopeK/Hypopolis/Hypopolis/HypopolisContent/HypopolisContent.contentproj

    r4296 r4325  
    4444    <Reference Include="TextFileContentExtension" /> 
    4545    <Reference Include="AnimationExtension" /> 
    46   </ItemGroup> 
    47   <ItemGroup> 
    48     <Compile Include="HypopolisTheme.mp3"> 
    49       <Name>HypopolisTheme</Name> 
    50       <Importer>Mp3Importer</Importer> 
    51       <Processor>SongProcessor</Processor> 
    52     </Compile> 
    5346  </ItemGroup> 
    5447  <ItemGroup> 
     
    122115    </Compile> 
    123116  </ItemGroup> 
     117  <ItemGroup> 
     118    <Compile Include="HypopolisTheme2.mp3"> 
     119      <Name>HypopolisTheme2</Name> 
     120      <Importer>Mp3Importer</Importer> 
     121      <Processor>SongProcessor</Processor> 
     122    </Compile> 
     123  </ItemGroup> 
     124  <ItemGroup> 
     125    <Compile Include="Select.wav"> 
     126      <Name>Select</Name> 
     127      <Importer>WavImporter</Importer> 
     128      <Processor>SoundEffectProcessor</Processor> 
     129    </Compile> 
     130  </ItemGroup> 
    124131  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    125132  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
Note: See TracChangeset for help on using the changeset viewer.