Changeset 2612


Ignore:
Timestamp:
2011-08-05 12:37:37 (8 years ago)
Author:
onpernu
Message:

Talletus.

Location:
2011/31/OnniP
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • 2011/31/OnniP/PerusPeli3/PerusPeli3/Peli.cs

    r2560 r2612  
    2727    bool Onkopeliloppunut = false; 
    2828    ScoreList topLista = new ScoreList(10, false, 0); 
    29  
     29    int Vaikeustaso = 1; 
     30    ExplosionSystem Rajahdys; 
    3031 
    3132    public override void Begin() 
    32  
    33    { 
     33    { 
    3434        Valikko(); 
    35          
    36  
    37  
    38  
    39  
    40     } 
    41      
    42      
     35 
     36 
     37 
     38 
     39 
     40    } 
     41 
     42 
    4343    void Aloitapeli() 
    4444    { 
    4545        ClearAll(); 
     46        Rajahdys = 
     47              new ExplosionSystem(LoadImage("Rajahdus"), 50); 
     48 
     49        Add(Rajahdys); 
     50        Rajahdys.MinScale = 100; 
     51        Rajahdys.MaxScale = 200; 
    4652        PhysicsObject vasenreuna = Level.CreateLeftBorder(); 
    47         vasenreuna.X =-500; 
     53        vasenreuna.X = -500; 
    4854        vasenreuna.Y = 0; 
    4955        PhysicsObject Oikeareuna = Level.CreateRightBorder(); 
     
    5258 
    5359        Level.CreateRightBorder(); 
    54         laskuri(); 
     60 
    5561        Camera.ZoomToLevel(); 
    5662        PhysicsObject katto = PhysicsObject.CreateStaticObject(1300, 100); 
     
    6470        Add(lattia); 
    6571        lattia.IsVisible = true; 
    66         luoMansikka(); 
     72 
     73        //luoMansikka(); 
     74 
    6775        lattia.Color = Color.DarkGray; 
    6876 
     
    7280        lattia.Tag = "lattia"; 
    7381        PhysicsObject oikeaSeinä = PhysicsObject.CreateStaticObject(300, 800); 
    74         oikeaSeinä.X = -600; 
    75         oikeaSeinä.IsVisible = true; 
     82        oikeaSeinä.Right = Level.Right; 
     83        oikeaSeinä.IsVisible = false; 
    7684        oikeaSeinä.Color = Color.Black; 
    7785        Add(oikeaSeinä); 
    7886        PhysicsObject vasenSeinä = PhysicsObject.CreateStaticObject(300, 800); 
    79         vasenSeinä.X = 600; 
    80         vasenSeinä.IsVisible = true; 
     87        vasenSeinä.Left = Level.Left;  
     88        vasenSeinä.IsVisible = false; 
    8189        vasenSeinä.Color = Color.Black; 
    8290        Add(vasenSeinä); 
     
    107115        Maila.Tag = "maila"; 
    108116        LisaaLaskuri(); 
    109      
    110      
    111      
     117        if (Vaikeustaso == 1) 
     118        { 
     119            laskuri1(); 
     120 
     121        } 
     122        if (Vaikeustaso == 2) 
     123        { 
     124            laskuri2(); 
     125 
     126 
     127        } 
     128 
     129        if (Vaikeustaso == 3) 
     130        { 
     131            laskuri3(); 
     132 
     133 
     134        } 
     135 
     136 
     137 
    112138    } 
    113139 
    114140    void Valikko() 
    115     {  
    116      
    117          ClearAll(); 
     141    { 
     142 
     143        ClearAll(); 
     144        laskuri0(); 
     145 
     146 
     147 
    118148 
    119149        valikonKohdat = new List<Label>(); 
    120150 
    121         Label kohta1 = new Label("Aloita uusi peli"); 
     151        Label kohta1 = new Label("Helppo"); 
    122152        kohta1.Position = new Vector(0, 40); 
    123153        valikonKohdat.Add(kohta1); 
    124154 
    125         Label kohta2 = new Label("Lopeta"); 
     155        Label kohta2 = new Label("Keskivaikea"); 
    126156        kohta2.Position = new Vector(0, -40); 
    127157        valikonKohdat.Add(kohta2); 
    128158 
     159 
     160        Label kohta3 = new Label("Vaikea"); 
     161        kohta3.Position = new Vector(0, -120); 
     162        valikonKohdat.Add(kohta3); 
     163 
     164        Label kohta4 = new Label("Lopeta"); 
     165        kohta4.Position = new Vector(0, -200); 
     166        valikonKohdat.Add(kohta4); 
     167 
    129168        foreach (Label valikonKohta in valikonKohdat) 
    130169        { 
     
    132171        } 
    133172 
    134         Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, Aloitapeli , null); 
    135         Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, Exit, null); 
    136          
     173        Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, Aloitapelivaikeus, null, 1); 
     174        Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, Aloitapelivaikeus, null, 2); 
     175        Mouse.ListenOn(kohta3, MouseButton.Left, ButtonState.Pressed, Aloitapelivaikeus, null, 3); 
     176        Mouse.ListenOn(kohta4, MouseButton.Left, ButtonState.Pressed, Exit, null); 
     177 
    137178        Mouse.IsCursorVisible = true; 
    138179        Mouse.ListenMovement(1.0, ValikossaLiikkuminen, null); 
     
    193234        Tikselikatto.Image = Pikselikatto; 
    194235        Tikselikatto.Y = 275; 
    195         Add(Tikselikatto);  
    196         timer2(); 
    197  
    198         
    199          
    200  
    201     } 
    202  
    203  
    204      
     236        Add(Tikselikatto); 
     237 
     238 
     239 
     240 
     241 
     242    } 
     243 
     244 
     245 
    205246    void ValikossaLiikkuminen(AnalogState hiirenTila) 
    206247    { 
     
    219260    } 
    220261 
    221      
    222      
    223      
    224      
     262 
     263 
     264 
     265 
    225266    void luoMansikka() 
    226267    { 
    227268        Mansikka = new PhysicsObject(80, 90); 
    228269        Mansikka.Image = MansikanKuva; 
    229         Mansikka.X = RandomGen.NextDouble(-500, 500); 
     270        Mansikka.X = RandomGen.NextDouble(-450, 450); 
    230271        Mansikka.Y = 300; 
    231272        Add(Mansikka); 
    232         Vector impulssi = new Vector(0, -200); 
    233         Mansikka.Hit(impulssi); 
     273 
    234274        Mansikka.Tag = "Mansikka"; 
    235275        AddCollisionHandler(Mansikka, MansikkaMaassa); 
     276 
     277 
     278 
     279        if (Vaikeustaso == 1) 
     280        { 
     281            Vector impulssi1 = new Vector(0, -100); 
     282            Mansikka.Hit(impulssi1); 
     283            Mansikka.MaximumLifetime = new TimeSpan(0, 0, 8); 
     284        } 
     285 
     286 
     287        else if (Vaikeustaso == 2) 
     288        { 
     289            Vector impulssi2 = new Vector(0, -200); 
     290            Mansikka.Hit(impulssi2); 
     291            Mansikka.MaximumLifetime = new TimeSpan(0, 0, 6); 
     292 
     293        } 
     294 
     295        else if (Vaikeustaso == 3) 
     296        { 
     297            Vector impulssi3 = new Vector(0, -300); 
     298            Mansikka.Hit(impulssi3); 
     299            Mansikka.MaximumLifetime = new TimeSpan(0, 0, 3); 
     300 
     301 
     302 
     303        } 
     304 
     305 
    236306 
    237307 
     
    260330        if (Kohde.Tag == "lattia") 
    261331        { 
    262             Explosion rajahdys = new Explosion(100); 
    263             rajahdys.Position = tormaaja.Position; 
    264             Add(rajahdys); 
     332            double x = Kohde.X; 
     333            double y = Kohde.Y; 
     334            int pMaara = 1000; 
     335 
     336            Rajahdys.AddEffect(x, y, pMaara); 
    265337            tormaaja.Destroy(); 
    266             luoMansikka(); 
     338             
    267339            Sydänkato(); 
    268340 
     
    275347        if (Kohde.Tag == "maila") 
    276348        { 
    277             Explosion rajahdys2 = new Explosion(100); 
    278             rajahdys2.Position = tormaaja.Position; 
    279             Add(rajahdys2); 
     349 
     350            double x = Kohde.X; 
     351            double y = Kohde.Y; 
     352            int pMaara = 1000; 
     353 
     354            Rajahdys.AddEffect(x, y, pMaara); 
     355 
    280356            tormaaja.Destroy(); 
    281             luoMansikka(); 
     357             
    282358            Sydänkato(); 
    283  
    284             if (Kohde.Tag == "ohjus") 
    285             { 
    286                 Explosion rajahdys3 = new Explosion(100); 
    287                 rajahdys3.Position = tormaaja.Position; 
    288                 Add(rajahdys3); 
    289                 tormaaja.Destroy(); 
    290                 luoMansikka(); 
    291                 Sydänkato(); 
    292  
    293  
    294  
    295             } 
    296         } 
     359        } 
     360        if (Kohde.Tag == "ohjus") 
     361        { 
     362            double x = Kohde.X; 
     363            double y = Kohde.Y; 
     364            int pMaara = 100000000; 
     365 
     366            Rajahdys.AddEffect(x, y, pMaara); 
     367 
     368            tormaaja.Destroy(); 
     369             
     370 
     371 
     372 
     373 
     374        } 
     375 
    297376    } 
    298377 
     
    312391    void Asetanopeus(PhysicsObject Maila, Vector nopeus) 
    313392    { 
     393 
     394        if ((nopeus.X > 0) && (Maila.X > Level.Right)) 
     395        { 
     396            Maila.Velocity = Vector.Zero; 
     397            return; 
     398        } 
     399         if ((nopeus.X < 0 )&&(Maila.X < Level.Left)) 
     400        { 
     401            Maila.Velocity = Vector.Zero; 
     402            return; 
     403        } 
    314404 
    315405        Maila.Velocity = nopeus; 
     
    339429    } 
    340430 
    341     void laskuri() 
     431    void laskuri1() 
     432    { 
     433        Timer ajastin = new Timer(); 
     434        ajastin.Interval = RandomGen.NextDouble(1, 2); 
     435        ajastin.Timeout += luoMansikka; 
     436        ajastin.Start(); 
     437    } 
     438 
     439    void laskuri2() 
     440    { 
     441        Timer ajastin = new Timer(); 
     442        ajastin.Interval = RandomGen.NextDouble(0.8, 1.2); 
     443        ajastin.Timeout += luoMansikka; 
     444        ajastin.Start(); 
     445 
     446    } 
     447    void laskuri3() 
    342448    { 
    343449        Timer ajastin = new Timer(); 
     
    376482        { 
    377483            if (!Onkopeliloppunut) 
    378             Lopetapeli(); 
     484                Lopetapeli(); 
    379485 
    380486 
     
    454560        topIkkuna.Closed += TallennaPisteet; 
    455561        topIkkuna.OKButton.Clicked += new Action(Begin); 
    456          
    457        
     562 
     563 
    458564        Add(topIkkuna); 
    459565 
    460      } 
     566    } 
    461567 
    462568 
    463569    void timer2() 
    464  
    465     {   
     570    { 
    466571        Timer ajastin = new Timer(); 
    467572        ajastin.Interval = RandomGen.NextDouble(0.4, 1); 
    468573        ajastin.Timeout += Mansikka2; 
    469574        ajastin.Start(); 
    470      
    471      
    472      
    473      
     575 
     576 
     577 
     578 
    474579    } 
    475580 
     
    477582 
    478583    void Mansikka2() 
    479  
    480 { 
    481  
    482     PhysicsObject Mansikka = new PhysicsObject(100, 100); 
    483     Mansikka.Image = MansikanKuva; 
    484     Mansikka.X = RandomGen.NextDouble(-500, 500); 
    485     Mansikka.Y = 600; 
    486     Add(Mansikka); 
    487     Vector alas = new Vector(0, -200); 
    488     Mansikka.Hit(alas); 
    489  
     584    { 
     585 
     586        PhysicsObject Mansikka = new PhysicsObject(100, 100); 
     587        Mansikka.Image = MansikanKuva; 
     588        Mansikka.X = RandomGen.NextDouble(-500, 500); 
     589        Mansikka.Y = 600; 
     590        Add(Mansikka); 
     591        Vector alas = new Vector(0, -200); 
     592        Mansikka.Hit(alas); 
     593 
     594 
     595 
     596    } 
     597 
     598    void Aloitapelivaikeus(int vaikeus) 
     599    { 
     600 
     601        Vaikeustaso = vaikeus; 
     602 
     603        Aloitapeli(); 
     604 
     605 
     606 
     607 
     608    } 
     609 
     610 
     611    void laskuri0() 
     612    { 
     613        Timer ajastin = new Timer(); 
     614        ajastin.Interval = RandomGen.NextDouble(0.5, 0.9); 
     615        ajastin.Timeout += Mansikka2; 
     616        ajastin.Start(); 
     617         
     618 
     619 
     620 
     621    } 
    490622 
    491623 
     
    494626 
    495627 
    496 } 
    497  
    498  
    499  
    500  
    501  
    502  
    503  
    504  
    505  
    506  
     628 
     629 
     630 
     631 
  • 2011/31/OnniP/PerusPeli3/PerusPeli3Content/PerusPeli3Content.contentproj

    r2560 r2612  
    7979    </Compile> 
    8080  </ItemGroup> 
     81  <ItemGroup> 
     82    <Compile Include="Rajahdus.png"> 
     83      <Name>Rajahdus</Name> 
     84      <Importer>TextureImporter</Importer> 
     85      <Processor>TextureProcessor</Processor> 
     86    </Compile> 
     87  </ItemGroup> 
    8188  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    8289  <!--  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.