Changeset 4296


Ignore:
Timestamp:
2013-06-28 10:56:39 (10 years ago)
Author:
roarolky
Message:

Talletus.

Location:
2013/26/RoopeK/Hypopolis/Hypopolis
Files:
11 added
4 edited

Legend:

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

    r4256 r4296  
    99public class Hypopolis : PhysicsGame 
    1010{ 
     11 
    1112    Image pelihahmo = LoadImage("Pelihahmo2"); 
    1213 
    1314    Image taustakuva = LoadImage("Taustakuva"); 
    1415    Image taustakuvareuna = LoadImage("TaustakuvaReuna"); 
     16 
    1517    Image mustaruutu = LoadImage("Mustakuva"); 
     18 
    1619    Image rakennus1 = LoadImage("Rakennus1"); 
    1720    Image rakennus2 = LoadImage("Rakennus2"); 
    1821 
     22    List<Label> valikonKohdat; 
     23 
     24    private Animation pelaaja_hyppy; 
     25    private Animation pelaaja_paikka; 
     26 
     27    SoundEffect hyppyAani = LoadSoundEffect("Jump"); 
     28 
    1929    PlatformCharacter2 pelaaja; 
    2030 
     31    ExplosionSystem rajahdys; 
     32    int pMaxMaara = 200; 
     33 
    2134    public override void Begin() 
    2235    { 
    2336 
     37        // Utility 
     38        SetWindowSize(1024, 768, false); 
     39        Camera.Zoom(0.75); 
     40        Ohjaimet(); 
     41 
    2442        // Aloitus 
     43        Surface Mustaruutu = new Surface(10000, 10000); 
     44        Mustaruutu.Image = mustaruutu; 
     45        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); 
     57 
     58        // Animaatio 
     59        pelaaja_hyppy = LoadAnimation("Hyppy"); 
     60        pelaaja_paikka = LoadAnimation("pelaaja"); 
     61 
     62    } 
     63 
     64    void Aloitus() 
     65    { 
     66 
     67        // Musiikki 
     68        MediaPlayer.Play("HypopolisTheme"); 
     69 
     70        // Teksti 
     71        LuoSatunnainenRakennusVasemmalta2(); 
     72        Label tekstikentta = new Label(200, 200, "Aloitus1"); 
     73        tekstikentta.X = 0; 
     74        tekstikentta.Y = 100; 
     75        tekstikentta.TextColor = Color.Black; 
     76        tekstikentta.Text = "HYPOPOLIS_"; 
     77        Add(tekstikentta); 
     78        Timer.SingleShot(12.0, Phase1); 
     79 
     80    } 
     81 
     82    void Phase1() 
     83    { 
     84 
     85        Valikko(); 
     86 
     87    } 
     88 
     89    void Valikko() 
     90    { 
     91 
     92        ClearAll(); 
     93 
     94        Surface Mustaruutu = new Surface(10000, 10000); 
     95        Mustaruutu.Image = mustaruutu; 
     96        Add(Mustaruutu, -3); 
     97 
     98        Mouse.IsCursorVisible = true; 
     99 
     100        Laskuri(LuoSatunnainenRakennusAlhaalta3); 
     101        Laskuri(LuoSatunnainenRakennusAlhaalta4); 
     102        Laskuri(LuoSatunnainenRakennusAlhaalta5); 
     103        Laskuri(LuoSatunnainenRakennusVasemmalta4); 
     104 
     105        Label tekstikentta = new Label(400, 400, "Aloitus1"); 
     106        tekstikentta.X = -350; 
     107        tekstikentta.Y = 200; 
     108        tekstikentta.TextColor = Color.Orange; 
     109        tekstikentta.Text = "HYPOPOLIS_"; 
     110        Add(tekstikentta); 
     111 
     112        valikonKohdat = new List<Label>(); 
     113 
     114        Label kohta1 = new Label("START"); 
     115        kohta1.Position = new Vector(-350, 100); 
     116        kohta1.TextColor = Color.White; 
     117        valikonKohdat.Add(kohta1); 
     118 
     119        Label kohta2 = new Label("TOPSCORE"); 
     120        kohta2.Position = new Vector(-326, 50); 
     121        kohta2.TextColor = Color.White; 
     122        valikonKohdat.Add(kohta2); 
     123 
     124        Label kohta3 = new Label("EXIT"); 
     125        kohta3.Position = new Vector(-358, 0); 
     126        kohta3.TextColor = Color.White; 
     127        valikonKohdat.Add(kohta3); 
     128 
     129        foreach (Label valikonKohta in valikonKohdat) 
     130        { 
     131            Add(valikonKohta); 
     132        } 
     133 
     134 
     135        Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, START, null); 
     136        Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, TOPSCORE, null); 
     137        Mouse.ListenOn(kohta3, MouseButton.Left, ButtonState.Pressed, ConfirmExit, null); 
     138        Mouse.ListenMovement(1.0, ValikossaLiikkuminen, null); 
     139    } 
     140 
     141    void ValikossaLiikkuminen(AnalogState hiirenTila) 
     142    { 
     143        foreach (Label kohta in valikonKohdat) 
     144        { 
     145            if (Mouse.IsCursorOn(kohta)) 
     146            { 
     147                kohta.TextColor = Color.SlateGray; 
     148            } 
     149            else 
     150            { 
     151                kohta.TextColor = Color.White; 
     152            } 
     153 
     154        } 
     155    } 
     156 
     157    void START() 
     158    { 
     159 
     160        MediaPlayer.Stop(); 
     161        ClearAll(); 
     162        Pelaaja(); 
     163        Taso(); 
     164        Ohjaimet(); 
     165        Mouse.IsCursorVisible = false; 
     166 
     167        // Luonti 
    25168        Laskuri(LuoSatunnainenRakennusVasemmalta1); 
    26169        Laskuri(LuoSatunnainenRakennusVasemmalta2); 
     
    33176        Laskuri(LuoSatunnainenRakennusAlhaalta5); 
    34177 
    35         Taso(); 
    36         Pelaaja(); 
    37         Ohjaimet(); 
    38  
    39         // Musiikki 
    40         MediaPlayer.Play("HypopolisTheme"); 
    41  
     178    } 
     179 
     180    void TOPSCORE() 
     181    { 
    42182    } 
    43183 
    44184    void Laskuri(Action tapahtuma) 
    45185    { 
     186 
    46187        Timer ajastin = new Timer(); 
    47         ajastin.Interval =RandomGen.NextDouble(3, 9); 
     188        ajastin.Interval = RandomGen.SelectOne(3, 6, 9);  
    48189        ajastin.Timeout += tapahtuma; 
    49 //        ajastin.Timeout += LuoSatunnainenRakennusVasemmalta1; 
    50 //        ajastin.Timeout += LuoSatunnainenRakennusVasemmalta2; 
    51 //        ajastin.Timeout += LuoSatunnainenRakennusVasemmalta3; 
    52190        ajastin.Start(); 
    53191 
    54  
    55192    } 
    56193 
     
    64201    void Hyppy(PlatformCharacter2 pelaaja) 
    65202    { 
    66  
    67         pelaaja.Jump(2000); 
    68  
    69     } 
     203      
     204        if (pelaaja.Platform != null) 
     205        { 
     206 
     207            pelaaja.Jump(1500); 
     208            rajahdys.AddEffect(pelaaja.Position.X, pelaaja.Position.Y, pMaxMaara); 
     209            if (hyppyAani.IsPlaying == false) 
     210            { 
     211                hyppyAani.Play(); 
     212            } 
     213        } 
     214    } 
     215 
    70216 
    71217    void Pelaaja() 
     
    75221        pelaaja.Shape = Shape.Rectangle; 
    76222        pelaaja.Color = Color.Black; 
     223        pelaaja.AnimIdle = new Animation(pelaaja_paikka); 
     224        pelaaja.AnimFall = new Animation(pelaaja_paikka); 
     225        pelaaja.AnimJump = new Animation(pelaaja_hyppy); 
     226        pelaaja.AnimIdle.FPS = 5; 
    77227        pelaaja.X = 0; 
    78228        pelaaja.Y = Level.Bottom + 100.0; 
     
    80230        pelaaja.Restitution = 0.0; 
    81231        pelaaja.Image = pelihahmo; 
     232        pelaaja.MaxVelocity = 2500; 
     233        pelaaja.Acceleration = 2500; 
    82234        Gravity = new Vector(0, -1500); 
    83         Add(pelaaja); 
    84  
    85     } 
     235        Add(pelaaja, -1); 
     236 
     237    } 
     238 
    86239 
    87240    void Ohjaimet() 
     
    91244        Keyboard.Listen(Key.Left, ButtonState.Down, Kavele, "Vasen", pelaaja, Direction.Left); 
    92245        Keyboard.Listen(Key.Right, ButtonState.Down, Kavele, "Oikea", pelaaja, Direction.Right); 
    93         Keyboard.Listen(Key.Up, ButtonState.Down, Hyppy, "Ylös", pelaaja); 
     246        Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppy, "Ylös", pelaaja); 
    94247 
    95248        // Poistuminen 
     
    116269        oikeaReuna.Color = Color.White; 
    117270        oikeaReuna.Image = taustakuvareuna; 
    118         Add(oikeaReuna, 2); 
     271        Add(oikeaReuna, -2); 
    119272 
    120273        Surface yläReuna = new Surface(1400, 100); 
     
    133286        Add(alaReuna); 
    134287 
     288        Level.AmbientLight = 0.8; 
    135289        Level.Background.Image = taustakuva; 
    136290        //Level.BackgroundColor = Color.Black; 
     
    255409        olio.Y = y; 
    256410        olio.X = x; 
    257         olio.Move(new Vector(150, 0)); 
     411        olio.Move(new Vector(250, 0)); 
    258412        olio.MakeStatic(); 
    259         olio.Image = rakennus2; 
     413        olio.Tag = "vasenSeinä"; 
     414        olio.Image = rakennus1; 
     415        olio.CollisionIgnoreGroup = 1; 
     416        olio.IgnoresCollisionResponse = false; 
    260417        Add(olio); 
    261418 
     
    270427        olio2.Y = y; 
    271428        olio2.X = x; 
    272         olio2.Move(new Vector(0, 150)); 
     429        olio2.Move(new Vector(0, 250)); 
    273430        olio2.MakeStatic(); 
    274         olio2.Image = rakennus1; 
     431        olio2.Tag = "alaSeinä"; 
     432        olio2.CollisionIgnoreGroup = 1; 
     433        olio2.Image = rakennus2; 
     434        olio2.IgnoresCollisionResponse = false; 
    275435        Add(olio2); 
    276436 
    277437    } 
    278  
    279     void MustaRuutu() 
    280     { 
    281  
    282         Label tekstikentta = new Label(2500, 2500, "Aloitus"); 
    283         tekstikentta.X = 0; 
    284         tekstikentta.Y = 0; 
    285         tekstikentta.TextColor = Color.White; 
    286         tekstikentta.Text = "Club Afterlife Presents_"; 
    287         Add(tekstikentta); 
    288         Timer ajastin = new Timer(); 
    289         ajastin.Interval = 5; 
    290         ajastin.Timeout += Aloitus; 
    291         ajastin.Start(1); 
    292          
    293     } 
    294  
    295     void Aloitus() 
    296     { 
    297  
    298         MessageDisplay.Clear(); 
    299         Timer ajastin = new Timer(); 
    300         ajastin.Interval = 2; 
    301         ajastin.Timeout += Aloitus1; 
    302         ajastin.Start(1); 
    303  
    304     } 
    305  
    306     void Aloitus1() 
    307     { 
    308         // ... 
    309     } 
    310438} 
  • 2013/26/RoopeK/Hypopolis/Hypopolis/HypopolisContent/HypopolisContent.contentproj

    r4256 r4296  
    9494    </Compile> 
    9595  </ItemGroup> 
     96  <ItemGroup> 
     97    <Compile Include="pelaaja.anim"> 
     98      <Name>pelaaja</Name> 
     99      <Importer>AnimationImporter</Importer> 
     100      <Processor>AnimationContentProcessor</Processor> 
     101    </Compile> 
     102  </ItemGroup> 
     103  <ItemGroup> 
     104    <Compile Include="Jump.wav"> 
     105      <Name>Jump</Name> 
     106      <Importer>WavImporter</Importer> 
     107      <Processor>SoundEffectProcessor</Processor> 
     108    </Compile> 
     109  </ItemGroup> 
     110  <ItemGroup> 
     111    <Compile Include="Hyppy.anim"> 
     112      <Name>Hyppy</Name> 
     113      <Importer>AnimationImporter</Importer> 
     114      <Processor>AnimationContentProcessor</Processor> 
     115    </Compile> 
     116  </ItemGroup> 
     117  <ItemGroup> 
     118    <Compile Include="rajahdys.png"> 
     119      <Name>rajahdys</Name> 
     120      <Importer>TextureImporter</Importer> 
     121      <Processor>TextureProcessor</Processor> 
     122    </Compile> 
     123  </ItemGroup> 
    96124  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    97125  <!--  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.