Changeset 4979 for 2014/24


Ignore:
Timestamp:
2014-06-12 14:54:19 (5 years ago)
Author:
ilkarist
Message:
 
Location:
2014/24/IlariR
Files:
2 added
1 deleted
13 edited

Legend:

Unmodified
Added
Removed
  • 2014/24/IlariR/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1.cs

    r4958 r4979  
    1313    AssaultRifle hirviniemiase; 
    1414    Image munamieskuva = LoadImage("munamieskuva"); 
    15     Image gigakuva= LoadImage("gigapudding"); 
     15    Image gigakuva = LoadImage("gigapudding"); 
    1616    Image ammuksenkuva = LoadImage("nakki"); 
    1717    Image tahtaimenkuva = LoadImage("tahtain"); 
     18    IntMeter elamaLaskuri = new IntMeter(10, 0, 10); 
     19    int vihollistenKasvuLkm = 1; 
     20    int vihollistenAlkuLkm = 2; 
     21    int vihollistenLkm = 2; 
     22 
    1823    public override void Begin() 
    1924    { 
    2025        MediaPlayer.Play("taustamusiikki"); 
     26        MediaPlayer.IsRepeating = true; 
     27 
    2128        SmoothTextures = false; 
    2229        Image taustaKuva = LoadImage("planeettataustakuva"); 
    2330        Level.Background.Image = taustaKuva; 
     31        Level.Background.Color = Color.Black; 
     32 
    2433        Camera.ZoomToLevel(); 
     34        Camera.Follow(hirviniemi); 
     35        Camera.Zoom(1.5); 
     36        elamaLaskuri.LowerLimit += delegate { hirviniemi.Destroy(); }; 
     37 
    2538        LuoKentta(); 
    26         Level.Background.Color = Color.Black; 
     39         
     40 
     41 
    2742        Mouse.IsCursorVisible = true; 
    28         Camera.Follow(hirviniemi); 
    29         Camera.Zoom(2.9); 
     43         
     44 
     45 
    3046        GameObject tahtain = new GameObject(20, 20); 
    3147        tahtain.Image = tahtaimenkuva; 
    3248        Add(tahtain); 
     49 
     50 
    3351 
    3452        Timer tahtaimenLiikutus = new Timer(); 
     
    3755        tahtaimenLiikutus.Start(); 
    3856 
     57 
     58 
    3959        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    40         Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(-500, 0)); 
    41         Keyboard.Listen(Key.D, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(500, 0)); 
    42         Keyboard.Listen(Key.W, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(0, 500)); 
    43         Keyboard.Listen(Key.S, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(0, -500)); 
     60        Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(-400, 0)); 
     61        Keyboard.Listen(Key.D, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(400, 0)); 
     62        Keyboard.Listen(Key.W, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(0, 400)); 
     63        Keyboard.Listen(Key.S, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(0, -400)); 
    4464        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    4565        Mouse.Listen(MouseButton.Left, ButtonState.Down, AmmuAseella, "Ammu", hirviniemi); 
     66 
     67        Keyboard.Listen(Key.LeftControl, ButtonState.Down, MuutaAmpumaNopeutta, null, false); 
     68        Keyboard.Listen(Key.LeftControl, ButtonState.Up, MuutaAmpumaNopeutta, null, true); 
     69 
    4670        Mouse.ListenMovement(0.1, Tahtaa, "Tähtää aseella"); 
    4771    } 
    4872 
     73 
     74    void MuutaAmpumaNopeutta(bool arvo) 
     75    { 
     76        if(arvo) hirviniemiase.TimeBetweenUse = TimeSpan.FromMilliseconds(500); 
     77        else hirviniemiase.TimeBetweenUse = TimeSpan.FromMilliseconds(1); 
     78    } 
     79 
     80 
    4981    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
    50 { 
    51     ammus.Destroy(); 
    52 } 
     82    { 
     83        ammus.Destroy(); 
     84        if (kohde.Tag != "seinä" && !kohde.IsDestroying) 
     85        { 
     86            kohde.Destroy(); 
     87            vihollistenLkm--; 
     88 
     89            if (vihollistenLkm <= 0) 
     90            { 
     91                int i = 0; 
     92                vihollistenAlkuLkm += vihollistenKasvuLkm; 
     93                while (i < vihollistenAlkuLkm) 
     94                { 
     95                    LuoVihollinen(); 
     96                    i++; 
     97                } 
     98                vihollistenLkm = (vihollistenAlkuLkm*2); 
     99            } 
     100        } 
     101    } 
    53102    void Tahtaa(AnalogState hiirenLiike) 
    54103    { 
     
    59108    void AmmuAseella(PhysicsObject hirviniemi) 
    60109    { 
    61        PhysicsObject ammus = hirviniemiase.Shoot(); 
    62        if (ammus != null)  
    63        ammus.Image = ammuksenkuva; 
     110        PhysicsObject ammus = hirviniemiase.Shoot(); 
     111        if (ammus != null) 
     112            ammus.Image = ammuksenkuva; 
    64113    } 
    65114 
     
    88137        //   Parametreina leveys ja korkeus 
    89138        ruudut.Execute(20, 20); 
    90         LuoVihollinen(); LuoVihollinen(); LuoVihollinen(); LuoVihollinen(); LuoVihollinen(); LuoVihollinen(); 
    91     } 
     139        LuoVihollinen(); 
     140 
     141    } 
     142 
    92143 
    93144    void LuoPelaaja(Vector paikka, double leveys, double korkeus) 
     
    101152        hirviniemi.LinearDamping = 0.90; 
    102153        hirviniemiase = new AssaultRifle(30, 10); 
    103         hirviniemiase.Ammo.Value = 1000; 
     154        hirviniemiase.Ammo.Value = 100000; 
     155        hirviniemiase.TimeBetweenUse = TimeSpan.FromMilliseconds(500); 
    104156        //hirviniemiase.ProjectileCollision = AmmusOsui; 
    105157        hirviniemiase.IsVisible = false; 
    106158        hirviniemiase.ProjectileCollision = AmmusOsui; 
     159        AddCollisionHandler(hirviniemi, "vihollinen", PelaajaanOsuu); 
    107160        hirviniemi.Add(hirviniemiase); 
    108161        Add(hirviniemi); 
     
    116169        taso.CollisionIgnoreGroup = 1; 
    117170        taso.Color = Color.Transparent; 
     171        taso.Tag = "seinä"; 
    118172        Add(taso); 
    119173    } 
     
    121175    { 
    122176        PhysicsObject vihollinen = new PhysicsObject(30, 30); 
    123         vihollinen.Position = new Vector( RandomGen.NextDouble(Level.Left, Level.Right), RandomGen.NextDouble(Level.Bottom, Level.Top)); 
     177        vihollinen.Image = munamieskuva; 
     178        vihollinen.Position = new Vector(RandomGen.NextDouble(Level.Left +30, Level.Right-30), RandomGen.NextDouble(Level.Bottom +30, Level.Top -30)); 
     179        vihollinen.Tag = "vihollinen"; 
    124180        Add(vihollinen); 
    125  
    126     } 
    127  
    128  
     181        FollowerBrain seuraajanAivot = new FollowerBrain(hirviniemi); 
     182        vihollinen.Brain = seuraajanAivot; 
     183 
     184        PhysicsObject vihollinen2 = new PhysicsObject(30, 30); 
     185        vihollinen2.Image = gigakuva; 
     186        vihollinen2.Position = new Vector(RandomGen.NextDouble(Level.Left +30, Level.Right-30), RandomGen.NextDouble(Level.Bottom +30, Level.Top -30)); 
     187        vihollinen2.Tag = "vihollinen"; 
     188        Add(vihollinen2); 
     189        FollowerBrain seuraajanAivot2 = new FollowerBrain(hirviniemi); 
     190        vihollinen2.Brain = seuraajanAivot2; 
     191 
     192    } 
     193 
     194    void PelaajaanOsuu(PhysicsObject pelaaja, PhysicsObject kohde) 
     195    { 
     196        elamaLaskuri.Value--; 
     197        kohde.Destroy(); 
     198        LuoVihollinen(); 
     199    } 
    129200} 
  • 2014/24/IlariR/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1.csproj.Debug.cachefile

    r4958 r4979  
    44Content\kentta.xnb 
    55Content\tahtain.xnb 
    6 Content\gigapudding.xnb 
    76Content\taustamusiikki.xnb 
    87Content\ampumisaani.xnb 
    98Content\nakki.xnb 
     9Content\gigapudding.xnb 
    1010Content\taustamusiikki.wma 
  • 2014/24/IlariR/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/obj/x86/Debug/ContentPipeline-{C618A7D1-36D3-466A-BAC2-441289EA436D}.xml

    r4958 r4979  
    1818      <Options>None</Options> 
    1919      <Output>C:\MyTemp\IlariR\FysiikkaPeli1\FysiikkaPeli1\FysiikkaPeli1\bin\x86\Debug\Content\munamieskuva.xnb</Output> 
    20       <Time>2014-06-09T13:56:41.1767542+03:00</Time> 
     20      <Time>2014-06-12T09:38:31.1862987+03:00</Time> 
    2121    </Item> 
    2222    <Item> 
     
    4848    </Item> 
    4949    <Item> 
    50       <Source>gigapudding.jpg</Source> 
    51       <Name>gigapudding</Name> 
    52       <Importer>TextureImporter</Importer> 
    53       <Processor>TextureProcessor</Processor> 
    54       <Options>None</Options> 
    55       <Output>C:\MyTemp\IlariR\FysiikkaPeli1\FysiikkaPeli1\FysiikkaPeli1\bin\x86\Debug\Content\gigapudding.xnb</Output> 
    56       <Time>2014-06-11T10:13:37.7969746+03:00</Time> 
    57     </Item> 
    58     <Item> 
    5950      <Source>taustamusiikki.mp3</Source> 
    6051      <Name>taustamusiikki</Name> 
     
    8273      <Options>None</Options> 
    8374      <Output>C:\MyTemp\IlariR\FysiikkaPeli1\FysiikkaPeli1\FysiikkaPeli1\bin\x86\Debug\Content\nakki.xnb</Output> 
    84       <Time>2014-06-11T13:39:04.5399999+03:00</Time> 
     75      <Time>2014-06-11T14:56:34.9355732+03:00</Time> 
     76    </Item> 
     77    <Item> 
     78      <Source>gigapudding.png</Source> 
     79      <Name>gigapudding</Name> 
     80      <Importer>TextureImporter</Importer> 
     81      <Processor>TextureProcessor</Processor> 
     82      <Options>None</Options> 
     83      <Output>C:\MyTemp\IlariR\FysiikkaPeli1\FysiikkaPeli1\FysiikkaPeli1\bin\x86\Debug\Content\gigapudding.xnb</Output> 
     84      <Time>2014-06-12T09:47:17.1322987+03:00</Time> 
    8585    </Item> 
    8686    <BuildSuccessful>true</BuildSuccessful> 
  • 2014/24/IlariR/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/obj/x86/Debug/cachefile-{C618A7D1-36D3-466A-BAC2-441289EA436D}-targetpath.txt

    r4958 r4979  
    44Content\kentta.xnb 
    55Content\tahtain.xnb 
    6 Content\gigapudding.xnb 
    76Content\taustamusiikki.xnb 
    87Content\taustamusiikki.wma 
    98Content\ampumisaani.xnb 
    109Content\nakki.xnb 
     10Content\gigapudding.xnb 
  • 2014/24/IlariR/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1Content/FysiikkaPeli1Content.contentproj

    r4958 r4979  
    8888  </ItemGroup> 
    8989  <ItemGroup> 
    90     <Compile Include="gigapudding.jpg"> 
    91       <Name>gigapudding</Name> 
    92       <Importer>TextureImporter</Importer> 
    93       <Processor>TextureProcessor</Processor> 
    94     </Compile> 
    95   </ItemGroup> 
    96   <ItemGroup> 
    9790    <Compile Include="ampumisaani.wav"> 
    9891      <Name>ampumisaani</Name> 
     
    108101    </Compile> 
    109102  </ItemGroup> 
     103  <ItemGroup> 
     104    <Compile Include="gigapudding.png"> 
     105      <Name>gigapudding</Name> 
     106      <Importer>TextureImporter</Importer> 
     107      <Processor>TextureProcessor</Processor> 
     108    </Compile> 
     109  </ItemGroup> 
    110110  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    111111  <!--  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.