Changeset 3285 for 2012/26/FanniO


Ignore:
Timestamp:
2012-06-27 15:02:02 (7 years ago)
Author:
faamojal
Message:

Talletus.

Location:
2012/26/FanniO/Sailtilyousink/Sailtilyousink
Files:
2 added
6 edited

Legend:

Unmodified
Added
Removed
  • 2012/26/FanniO/Sailtilyousink/Sailtilyousink/Sailtilyousink/Sailtilyousink.cs

    r3230 r3285  
    1212    Image kivenKuva = LoadImage("kivi"); 
    1313    Image kuusenKuva = LoadImage("kuusi"); 
    14  
     14    Image renkaankuva = LoadImage("rengas"); 
     15    Image verkonKuva = LoadImage("verkko"); 
     16    Image arkunKuva = LoadImage("arkku"); 
     17 
     18    Vector nopeusoikea = new Vector(400, 0); 
     19    Vector nopeusvasen = new Vector(-400, 0); 
     20    Vector nopeusylos = new Vector(0, 400); 
     21    Vector nopeusalas = new Vector(0, -400); 
     22    Vector nopeussuora=new Vector(0,0); 
    1523     
    1624 
     25    PhysicsObject vene; 
     26    DoubleMeter elamamittari; 
     27    PhysicsObject rengas; 
     28    PhysicsObject kivi; 
     29    PhysicsObject verkko; 
     30    PhysicsObject arkku; 
     31    IntMeter pisteet; 
     32    IntMeter merimailit; 
     33 
     34     
     35     
     36 
    1737 
    1838    public override void Begin() 
    1939    { 
    20         purjeVene(); 
    21         LuoReunat(); 
     40 
     41        IsMouseVisible = true; 
     42        MultiSelectWindow alkuvalikko = new MultiSelectWindow("Sail 'Til You Sink", "Aloita peli", "Parhaat pisteet", "Lopeta"); 
     43        Add(alkuvalikko); 
     44        alkuvalikko.ItemSelected += Painettiinvalikkonappia; 
     45        alkuvalikko.Color = Color.LightBlue; 
     46 
     47       
     48 
     49        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
     50        
     51    } 
     52    void Painettiinvalikkonappia(int valinta) 
     53    { 
     54        switch (valinta) 
     55        { 
     56            case 0:  
     57        purjeVene(0,0); 
    2258        lisaakivia(); 
    2359        ajastin(); 
    24          
    25         
    26  
    27         PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    28         Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    29     } 
    30     void purjeVene() 
    31     { 
    32         PhysicsObject vene = new PhysicsObject(veneenKuva); 
     60        lisaarengas(); 
     61        LuoKentta(); 
     62        lisaaPlaskin(); 
     63        lisaaMlaskin(); 
     64        asetaohjaimet(); 
     65        lisaaEmittari(); 
     66        veneosuu(vene,kivi); 
     67        pistelisaa(vene, rengas); 
     68        mailittaynna(); 
     69        suoristavene(); 
     70                break; 
     71            case 1: 
     72                break; 
     73            case 2: 
     74                Exit(); 
     75                break; 
     76            default: 
     77                break; 
     78        } 
     79    } 
     80    PhysicsObject purjeVene(double x,double y) 
     81    { 
     82        vene =new PhysicsObject(veneenKuva); 
     83        vene.Width = 40; 
     84        vene.Height = 90; 
     85        vene.Velocity = new Vector(0,0); 
    3386        Add(vene); 
    34  
    35         
     87        AddCollisionHandler(vene, "hyvis", pistelisaa); 
     88        AddCollisionHandler(vene, "este", veneosuu); 
     89        AddCollisionHandler(vene, "Aarkku", pistelisaa); 
     90        return (vene); 
    3691 
    3792    } 
     
    48103        Level.BackgroundColor = Color.Aqua; 
    49104 
    50  
    51105    } 
    52106    void lisaakivia() 
    53107    { 
    54         PhysicsObject kivi = new PhysicsObject(kivenKuva); 
    55         kivi.Y =300; 
     108        kivi = PhysicsObject.CreateStaticObject(kivenKuva); 
     109        kivi.Y =500; 
    56110        kivi.X=RandomGen.NextDouble(Level.Left, Level.Right); 
     111        kivi.Velocity = new Vector(0, -100); 
     112        kivi.Tag = "este"; 
    57113        Add(kivi); 
    58114    } 
     
    60116    { 
    61117        Timer ajastin = new Timer(); 
    62         ajastin.Interval = 3; 
     118        ajastin.Interval = 2; 
    63119        ajastin.Timeout += lisaakivia; 
    64         ajastin.Start(10); 
    65     } 
    66     void ohjaavenetta() 
    67     { 
    68          
    69     } 
    70      
     120        ajastin.Start(); 
     121        Timer ajastin2 = new Timer(); 
     122        ajastin2.Interval = 6; 
     123        ajastin2.Timeout += lisaarengas; 
     124        ajastin2.Start(); 
     125        Timer ajastin3 = new Timer(); 
     126        ajastin3.Interval = 4; 
     127        ajastin3.Timeout += lisaamaili; 
     128        ajastin3.Start(); 
     129        Timer ajastin4 = new Timer(); 
     130        ajastin4.Interval = 5; 
     131        ajastin4.Timeout += lisaaverkko; 
     132        ajastin4.Start(); 
     133        Timer ajastin5 = new Timer(); 
     134        ajastin5.Interval = 10; 
     135        ajastin5.Timeout += lisaaarkku; 
     136        ajastin5.Start(); 
     137         
     138         
     139    } 
     140    void lisaarengas() 
     141    { 
     142        rengas = PhysicsObject.CreateStaticObject(renkaankuva); 
     143        rengas.Y = 500; 
     144        rengas.X = RandomGen.NextDouble(Level.Left, Level.Right); 
     145        rengas.Velocity = new Vector(0, -100); 
     146        rengas.Tag = "hyvis"; 
     147        Add(rengas); 
     148 
     149    } 
     150    void lisaaverkko() 
     151    { 
     152        verkko = PhysicsObject.CreateStaticObject(verkonKuva); 
     153        verkko.Y = 500; 
     154        verkko.X = RandomGen.NextDouble(Level.Left, Level.Right); 
     155        verkko.Velocity = new Vector(0, -100); 
     156        verkko.Tag = "este"; 
     157        Add(verkko); 
     158    } 
     159    void lisaaarkku() 
     160    { 
     161        arkku = PhysicsObject.CreateStaticObject(arkunKuva); 
     162        arkku.Y = 500; 
     163        arkku.X = RandomGen.NextDouble(Level.Left, Level.Right); 
     164        arkku.Velocity = new Vector(0, -100); 
     165        arkku.Tag = "Aarkku"; 
     166        Add(arkku); 
     167    } 
     168    void pistelisaa(PhysicsObject vene, PhysicsObject rengas) 
     169    { 
     170        pisteet.Value+=10; 
     171        rengas.Destroy(); 
     172          
     173    } 
     174    void pistelisaaA(PhysicsObject vene, PhysicsObject arkku) 
     175    { 
     176        pisteet.Value += 30; 
     177        arkku.Destroy(); 
     178    } 
     179    void lisaaPlaskin() 
     180    { 
     181         
     182        pisteet = new IntMeter(0); 
     183        Label pistenaytto = new Label(); 
     184        pistenaytto.X = 400; 
     185        pistenaytto.Y = -200; 
     186        pistenaytto.TextColor = Color.Blue; 
     187        pistenaytto.Color = Color.Aqua; 
     188        pistenaytto.Title = "Pisteet"; 
     189 
     190        pistenaytto.BindTo(pisteet); 
     191        Add(pistenaytto); 
     192         
     193 
     194         
     195 
     196 
     197    } 
     198    void lisaaMlaskin() 
     199    { 
     200        merimailit = new IntMeter(0); 
     201        merimailit.MaxValue = 100; 
     202        merimailit.UpperLimit += mailittaynna; 
     203        Label mailinaytto = new Label(); 
     204        mailinaytto.X = 400; 
     205        mailinaytto.Y = -250; 
     206        mailinaytto.TextColor = Color.DarkBlue; 
     207        mailinaytto.Color = Color.Aqua; 
     208        mailinaytto.Title = "NM"; 
     209 
     210 
     211        mailinaytto.BindTo(merimailit); 
     212        Add(mailinaytto); 
     213         
     214         
     215        
     216        
     217 
     218    } 
     219    void lisaaEmittari() 
     220    { 
     221         
     222        elamamittari = new DoubleMeter(10); 
     223        elamamittari.MaxValue = 10; 
     224        ProgressBar elamapalkki = new ProgressBar(150, 15); 
     225        elamapalkki.BindTo(elamamittari); 
     226        elamapalkki.BarColor=Color.Green; 
     227        elamapalkki.BorderColor = Color.Red; 
     228        elamapalkki.Color = Color.Red; 
     229        elamapalkki.X =Screen.Right -150; 
     230        elamapalkki.Y =Screen.Bottom+15; 
     231        Add(elamapalkki); 
     232        elamamittari.LowerLimit += elamaloppui; 
     233        
     234 
     235 
     236    } 
     237    void asetaohjaimet() 
     238    { 
     239        Keyboard.Listen(Key.Right, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä oikealle", vene, nopeusoikea); 
     240        Keyboard.Listen(Key.Right, ButtonState.Released, asetanopeus, null, vene, Vector.Zero); 
     241        Keyboard.Listen(Key.Left, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä oikealle", vene, nopeusvasen); 
     242        Keyboard.Listen(Key.Left, ButtonState.Released, asetanopeus, null, vene, Vector.Zero); 
     243        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     244        Keyboard.Listen(Key.Up, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä ylös", vene, nopeusylos); 
     245        Keyboard.Listen(Key.Up, ButtonState.Released, asetanopeus, null, vene, Vector.Zero); 
     246        Keyboard.Listen(Key.Down, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä alas", vene, nopeusalas); 
     247        Keyboard.Listen(Key.Down, ButtonState.Released, asetanopeus, null, vene, Vector.Zero); 
     248        Keyboard.Listen(Key.A, ButtonState.Pressed, suovene, "pelaaja, suorista vene", vene); 
     249        
     250    } 
     251    void suovene(PhysicsObject vene) 
     252    { 
     253        vene.Angle = Angle.Zero; 
     254        vene.AngularVelocity = 0; 
     255    } 
     256    void asetanopeus(PhysicsObject vene,Vector nopeus) 
     257    { 
     258        vene.Velocity = nopeus; 
     259 
     260 
     261    } 
     262    void elamaloppui() 
     263    { 
     264        MessageDisplay.Add("Veneesi upposi!"); 
     265        if(elamamittari.Value==0)  
     266        { 
     267            ClearAll(); 
     268            naytavalikko (); 
     269        } 
     270         
     271 
     272    } 
     273    void veneosuu(PhysicsObject vene, PhysicsObject kivi) 
     274    { 
     275        elamamittari.Value-=1; 
     276 
     277    } 
     278    void lisaamaili() 
     279    { 
     280        merimailit.Value += 1; 
     281    } 
     282    void mailittaynna() 
     283    { 
     284        MessageDisplay.Add("Onnittelut! Purjehdit regatan loppuun!"); 
     285         
     286 
     287    } 
     288    void naytavalikko() 
     289    { 
     290        MultiSelectWindow loppuvalikko = new MultiSelectWindow("Sail 'Til You Sink", "Aloita peli", "Parhaat pisteet", "Lopeta peli","Loppupisteet"); 
     291        Add(loppuvalikko); 
     292        loppuvalikko.ItemSelected += painettiinnuppia; 
     293        loppuvalikko.Color = Color.LightBlue; 
     294 
     295 
     296    } 
     297    void painettiinnuppia(int valinta) 
     298    { 
     299        switch (valinta) 
     300        { 
     301            case 0: 
     302                purjeVene(0, 0); 
     303                lisaakivia(); 
     304                ajastin(); 
     305                lisaarengas(); 
     306                LuoKentta(); 
     307                lisaaPlaskin(); 
     308                lisaaMlaskin(); 
     309                asetaohjaimet(); 
     310                lisaaEmittari(); 
     311                veneosuu(vene, kivi); 
     312                pistelisaa(vene, rengas); 
     313                mailittaynna(); 
     314                suoristavene(); 
     315                break; 
     316            case 1: 
     317                break; 
     318            case 2: 
     319                Exit(); 
     320                break; 
     321            case 3: 
     322                Label mailit = new Label(); 
     323                mailit.X = 0; 
     324                mailit.Y = 300; 
     325                mailit.Text = "Merimalit yhteensä"; 
     326                Add(mailit); 
     327                break; 
     328            default: 
     329                break; 
     330        } 
     331 
     332    } 
     333    void suoristavene() 
     334    { 
     335    } 
    71336} 
  • 2012/26/FanniO/Sailtilyousink/Sailtilyousink/SailtilyousinkContent/SailtilyousinkContent.contentproj

    r3230 r3285  
    7272    </Compile> 
    7373  </ItemGroup> 
     74  <ItemGroup> 
     75    <Compile Include="rengas.png"> 
     76      <Name>rengas</Name> 
     77      <Importer>TextureImporter</Importer> 
     78      <Processor>TextureProcessor</Processor> 
     79    </Compile> 
     80  </ItemGroup> 
     81  <ItemGroup> 
     82    <Compile Include="verkko.png"> 
     83      <Name>verkko</Name> 
     84      <Importer>TextureImporter</Importer> 
     85      <Processor>TextureProcessor</Processor> 
     86    </Compile> 
     87  </ItemGroup> 
     88  <ItemGroup> 
     89    <Compile Include="arkku.png"> 
     90      <Name>arkku</Name> 
     91      <Importer>TextureImporter</Importer> 
     92      <Processor>TextureProcessor</Processor> 
     93    </Compile> 
     94  </ItemGroup> 
    7495  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    7596  <!--  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.