Changeset 9349


Ignore:
Timestamp:
2017-08-02 14:48:17 (22 months ago)
Author:
npo17_73
Message:
 
Location:
2017/31/PatrikK/Tasohyppelypeli/Tasohyppelypeli
Files:
18 added
12 edited

Legend:

Unmodified
Added
Removed
  • 2017/31/PatrikK/Tasohyppelypeli/Tasohyppelypeli/Tasohyppelypeli/BEST_GAME_EVER.cs

    r9340 r9349  
    99public class Tasohyppelypeli : PhysicsGame 
    1010{ 
    11     double nopeus = 700; 
     11    double nopeus = 500; 
    1212    double hyppyNopeus = 900; 
    1313    int RUUDUN_KOKO = 40; 
     
    3939        MediaPlayer.Play("background_music"); 
    4040        MediaPlayer.IsRepeating = true; 
     41        //IsFullScreen = true; 
    4142    } 
    4243    void AloitaPeli() 
     
    6869        kentta.SetTileMethod('I', VihuSpawn); 
    6970        kentta.SetTileMethod('P', TelePort); 
     71        kentta.SetTileMethod('S', Kauppa); 
    7072        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    7173        Level.CreateBorders(); 
     
    101103        Add(tahti); 
    102104    } 
     105    void Kauppa(Vector paikka, double leveys, double korkeus) 
     106    { 
     107        PhysicsObject store = PhysicsObject.CreateStaticObject(leveys * 2, korkeus * 2); 
     108        store.Position = paikka+new Vector(0.0,korkeus / 2.0); 
     109        store.Image = LoadImage("store"); 
     110        Add(store); 
     111        store.Tag = "store"; 
     112        //taso.MakeOneWay(); 
     113 
     114    } 
    103115 
    104116    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
     
    110122        AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
    111123        AddCollisionHandler(pelaaja1, "tele", TormaaTeleport); 
     124        AddCollisionHandler(pelaaja1, "store", delegate (PhysicsObject a,PhysicsObject b){ KauppaValikko(); }); 
    112125        Add(pelaaja1); 
    113126        //pelaaja1 on PlatformCharacter-tyyppinen 
    114         pelaaja1.Weapon = new LaserGun(30, 10); 
    115         pelaaja1.Weapon.FireRate = 100; 
     127 
     128        pelaaja1.Weapon = new Cannon(30, 10); 
     129        pelaaja1.Weapon.ProjectileCollision = PelaajanAmmusOsui; 
     130        pelaaja1.Weapon.Image = LoadImage("cannon"); 
     131        if (pelaaja1.Weapon is Cannon) 
     132            pelaaja1.Weapon.FireRate = 0.2; 
     133        else if (pelaaja1.Weapon is PlasmaCannon) 
     134            pelaaja1.Weapon.FireRate = 5.0; 
     135        else if (pelaaja1.Weapon is LaserGun) 
     136            pelaaja1.Weapon.FireRate = 100.0; 
     137 
    116138        pelaaja1.Destroyed += GameOver; 
    117139        //Ammusten määrä aluksi: 
     
    119141 
    120142        //Mitä tapahtuu kun ammus osuu johonkin? 
    121         pelaaja1.Weapon.ProjectileCollision = PelaajanAmmusOsui; 
    122143        pelaaja1.Tag = "pelaaja1"; 
    123144 
    124145        Timer ammuajastinhajalle = new Timer(); 
    125         ammuajastinhajalle.Interval = 3; 
     146        ammuajastinhajalle.Interval = 1; 
    126147        ammuajastinhajalle.Timeout += delegate { pelaaja1.ElamaLaskuri.Value += 1; }; 
    127148        ammuajastinhajalle.Start(); 
     
    212233        if (kohde.Tag == "VIHOLLINEN") 
    213234        { 
    214             (kohde as Hahmo).ElamaLaskuri.Value -= 0.5; 
     235            if (pelaaja1.Weapon is Cannon) 
     236                (kohde as Hahmo).ElamaLaskuri.Value -= 20.0; 
     237            else if (pelaaja1.Weapon is AssaultRifle) 
     238                (kohde as Hahmo).ElamaLaskuri.Value -= 3.0; 
     239            else if (pelaaja1.Weapon is PlasmaCannon) 
     240                (kohde as Hahmo).ElamaLaskuri.Value -= 5.0; 
     241            else if (pelaaja1.Weapon is LaserGun) 
     242                (kohde as Hahmo).ElamaLaskuri.Value -= 0.5; 
    215243        } 
    216244    } 
     
    221249        if (ammus != null) 
    222250        { 
    223             ammus.Size *= 3.5; 
     251             
    224252            //ammus.Image = LoadImage("ammus"); 
     253            if (pelaaja1.Weapon is Cannon) 
     254            { 
     255                ammus.Image = LoadImage("cannonball"); 
     256                ammus.Size *= 1.5; 
     257            } 
     258            else if (pelaaja1.Weapon is PlasmaCannon) 
     259            { 
     260                ammus.Image = LoadImage("plasma"); 
     261                ammus.Size *= 5.0; 
     262            } 
     263                 
     264            else if (pelaaja1.Weapon is LaserGun) 
     265            { 
     266                ammus.Image = LoadImage("laser"); 
     267                ammus.Size *= 3.5; 
     268                ammus.Velocity *= 0.1; 
     269            } 
     270            else if (pelaaja1.Weapon is AssaultRifle) 
     271            { 
     272                ammus.Image = LoadImage("bullet"); 
     273                ammus.Size *= 1.5; 
     274            } 
     275                 
     276             
    225277            ammus.MaximumLifetime = TimeSpan.FromSeconds(5.0); 
    226             ammus.IgnoresCollisionResponse = true; 
     278            ammus.IgnoresCollisionResponse = false; 
    227279            pelaaja.Weapon.AttackSound.Stop(); 
    228280        } 
     
    246298        vihu.Weapon = new AssaultRifle(30, 10); 
    247299        vihu.Weapon.FireRate = 2; 
    248         vihu.ElamaLaskuri.LowerLimit += delegate { 
    249             aivolaskuri.AddValue(1); }; 
     300        vihu.Destroyed += delegate {aivolaskuri.AddValue(RandomGen.SelectOne(0,1)); }; 
    250301        //Ammusten määrä aluksi: 
    251302        vihu.Weapon.Ammo.Value = 99999999; 
     
    288339            Timer.SingleShot(kranaattiaika, HyvaksyKranaatti); 
    289340        } 
    290  
     341         
     342 
     343    } 
     344    void KauppaValikko() 
     345    { 
     346        MultiSelectWindow Valikko = new MultiSelectWindow("Kauppa", 
     347"Osta konekivääri", "Osta plasma-ase", "Osta laser"); 
     348        Add(Valikko); 
     349        Valikko.AddItemHandler(0, OstaRifle); 
     350        Valikko.AddItemHandler(1, OstaPlasma); 
     351        Valikko.AddItemHandler(2, OstaLaser); 
     352    } 
     353    void OstaRifle() 
     354    { 
     355        if(aivolaskuri.Value > 10) 
     356        { 
     357            aivolaskuri.Value -= 10; 
     358            pelaaja1.Weapon = new AssaultRifle(30, 10); 
     359            pelaaja1.Weapon.ProjectileCollision = PelaajanAmmusOsui; 
     360            pelaaja1.Weapon.FireRate = 5; 
     361            pelaaja1.Weapon.Image = LoadImage("assaultrifle"); 
     362        } 
     363 
     364    } 
     365    void OstaPlasma() 
     366    { 
     367        if(aivolaskuri.Value > 25) 
     368        { 
     369            aivolaskuri.Value -= 25; 
     370            pelaaja1.Weapon = new PlasmaCannon(30, 10); 
     371            pelaaja1.Weapon.ProjectileCollision = PelaajanAmmusOsui; 
     372            pelaaja1.Weapon.FireRate = 5; 
     373            pelaaja1.Weapon.Image = LoadImage("plasmacannon"); 
     374        } 
     375         
     376    } 
     377    void OstaLaser() 
     378    { 
     379        if(aivolaskuri.Value > 50) 
     380        { 
     381            aivolaskuri.Value -= 50; 
     382            pelaaja1.Weapon = new LaserGun(30, 10); 
     383            pelaaja1.Weapon.ProjectileCollision = PelaajanAmmusOsui; 
     384            pelaaja1.Weapon.FireRate = 25; 
     385            pelaaja1.Weapon.Image = LoadImage("lasercannon"); 
     386        } 
     387         
    291388    } 
    292389    void VihuAmmuAseella(PlatformCharacter pelaaja) 
     
    310407    { 
    311408        //rajahdyksenKohde.Destroy(); 
    312         pisteLaskuri.AddValue(1); 
    313409        (rajahdyksenKohde as Hahmo).ElamaLaskuri.AddValue(-10); 
    314410    } 
     
    410506            { 
    411507                nopeus = numero; 
     508            } 
     509            if(komento=="aivo") 
     510            { 
     511                aivolaskuri.Value = (int)numero; 
    412512            } 
    413513            if(komento=="MessageDisplayX") 
     
    728828    } 
    729829} 
    730  
  • 2017/31/PatrikK/Tasohyppelypeli/Tasohyppelypeli/Tasohyppelypeli/Tasohyppelypeli.csproj.Debug.cachefile

    r9340 r9349  
    1616Content\music2.xnb 
    1717Content\logo.xnb 
     18Content\store.xnb 
     19Content\plasmacannon.xnb 
     20Content\lasercannon.xnb 
     21Content\assaultrifle.xnb 
     22Content\cannon.xnb 
     23Content\laser.xnb 
     24Content\plasma.xnb 
     25Content\bullet.xnb 
     26Content\cannonball.xnb 
    1827Content\background_music.wma 
    1928Content\music1.wma 
  • 2017/31/PatrikK/Tasohyppelypeli/Tasohyppelypeli/Tasohyppelypeli/obj/x86/Debug/ContentPipeline-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}.xml

    r9340 r9349  
    3636      <Options>None</Options> 
    3737      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\kentta1.xnb</Output> 
    38       <Time>2017-08-01T14:30:29.8066559+03:00</Time> 
     38      <Time>2017-08-02T13:18:58.776291+03:00</Time> 
    3939    </Item> 
    4040    <Item> 
     
    157157      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\logo.xnb</Output> 
    158158      <Time>2017-08-02T11:00:57.090148+03:00</Time> 
     159    </Item> 
     160    <Item> 
     161      <Source>store.png</Source> 
     162      <Name>store</Name> 
     163      <Importer>TextureImporter</Importer> 
     164      <Processor>TextureProcessor</Processor> 
     165      <Options>None</Options> 
     166      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\store.xnb</Output> 
     167      <Time>2017-08-02T13:11:06.116611+03:00</Time> 
     168    </Item> 
     169    <Item> 
     170      <Source>plasmacannon.png</Source> 
     171      <Name>plasmacannon</Name> 
     172      <Importer>TextureImporter</Importer> 
     173      <Processor>TextureProcessor</Processor> 
     174      <Options>None</Options> 
     175      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\plasmacannon.xnb</Output> 
     176      <Time>2017-08-02T13:47:50.925671+03:00</Time> 
     177    </Item> 
     178    <Item> 
     179      <Source>lasercannon.png</Source> 
     180      <Name>lasercannon</Name> 
     181      <Importer>TextureImporter</Importer> 
     182      <Processor>TextureProcessor</Processor> 
     183      <Options>None</Options> 
     184      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\lasercannon.xnb</Output> 
     185      <Time>2017-08-02T13:47:58.4663329+03:00</Time> 
     186    </Item> 
     187    <Item> 
     188      <Source>assaultrifle.png</Source> 
     189      <Name>assaultrifle</Name> 
     190      <Importer>TextureImporter</Importer> 
     191      <Processor>TextureProcessor</Processor> 
     192      <Options>None</Options> 
     193      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\assaultrifle.xnb</Output> 
     194      <Time>2017-08-02T13:48:05.3373754+03:00</Time> 
     195    </Item> 
     196    <Item> 
     197      <Source>cannon.png</Source> 
     198      <Name>cannon</Name> 
     199      <Importer>TextureImporter</Importer> 
     200      <Processor>TextureProcessor</Processor> 
     201      <Options>None</Options> 
     202      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\cannon.xnb</Output> 
     203      <Time>2017-08-02T13:48:11.5104414+03:00</Time> 
     204    </Item> 
     205    <Item> 
     206      <Source>laser.png</Source> 
     207      <Name>laser</Name> 
     208      <Importer>TextureImporter</Importer> 
     209      <Processor>TextureProcessor</Processor> 
     210      <Options>None</Options> 
     211      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\laser.xnb</Output> 
     212      <Time>2017-08-02T14:30:46.9370096+03:00</Time> 
     213    </Item> 
     214    <Item> 
     215      <Source>plasma.png</Source> 
     216      <Name>plasma</Name> 
     217      <Importer>TextureImporter</Importer> 
     218      <Processor>TextureProcessor</Processor> 
     219      <Options>None</Options> 
     220      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\plasma.xnb</Output> 
     221      <Time>2017-08-02T14:06:15.905759+03:00</Time> 
     222    </Item> 
     223    <Item> 
     224      <Source>bullet.png</Source> 
     225      <Name>bullet</Name> 
     226      <Importer>TextureImporter</Importer> 
     227      <Processor>TextureProcessor</Processor> 
     228      <Options>None</Options> 
     229      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\bullet.xnb</Output> 
     230      <Time>2017-08-02T14:12:26.399772+03:00</Time> 
     231    </Item> 
     232    <Item> 
     233      <Source>cannonball.png</Source> 
     234      <Name>cannonball</Name> 
     235      <Importer>TextureImporter</Importer> 
     236      <Processor>TextureProcessor</Processor> 
     237      <Options>None</Options> 
     238      <Output>C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\cannonball.xnb</Output> 
     239      <Time>2017-08-02T14:06:46.8343287+03:00</Time> 
    159240    </Item> 
    160241    <BuildSuccessful>true</BuildSuccessful> 
  • 2017/31/PatrikK/Tasohyppelypeli/Tasohyppelypeli/Tasohyppelypeli/obj/x86/Debug/Tasohyppelypeli.csproj.FileListAbsolute.txt

    r9340 r9349  
    2727C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\music2.wma 
    2828C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\logo.xnb 
     29C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\store.xnb 
     30C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\plasmacannon.xnb 
     31C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\lasercannon.xnb 
     32C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\assaultrifle.xnb 
     33C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\cannon.xnb 
     34C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\laser.xnb 
     35C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\plasma.xnb 
     36C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\bullet.xnb 
     37C:\MyTemp\PatrikK\Tasohyppelypeli\Tasohyppelypeli\Tasohyppelypeli\bin\x86\Debug\Content\cannonball.xnb 
  • 2017/31/PatrikK/Tasohyppelypeli/Tasohyppelypeli/Tasohyppelypeli/obj/x86/Debug/cachefile-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}-targetpath.txt

    r9340 r9349  
    1919Content\music2.wma 
    2020Content\logo.xnb 
     21Content\store.xnb 
     22Content\plasmacannon.xnb 
     23Content\lasercannon.xnb 
     24Content\assaultrifle.xnb 
     25Content\cannon.xnb 
     26Content\laser.xnb 
     27Content\plasma.xnb 
     28Content\bullet.xnb 
     29Content\cannonball.xnb 
  • 2017/31/PatrikK/Tasohyppelypeli/Tasohyppelypeli/TasohyppelypeliContent/TasohyppelypeliContent.contentproj

    r9340 r9349  
    158158    </Compile> 
    159159  </ItemGroup> 
     160  <ItemGroup> 
     161    <Compile Include="store.png"> 
     162      <Name>store</Name> 
     163      <Importer>TextureImporter</Importer> 
     164      <Processor>TextureProcessor</Processor> 
     165    </Compile> 
     166  </ItemGroup> 
     167  <ItemGroup> 
     168    <Compile Include="plasmacannon.png"> 
     169      <Name>plasmacannon</Name> 
     170      <Importer>TextureImporter</Importer> 
     171      <Processor>TextureProcessor</Processor> 
     172    </Compile> 
     173  </ItemGroup> 
     174  <ItemGroup> 
     175    <Compile Include="lasercannon.png"> 
     176      <Name>lasercannon</Name> 
     177      <Importer>TextureImporter</Importer> 
     178      <Processor>TextureProcessor</Processor> 
     179    </Compile> 
     180  </ItemGroup> 
     181  <ItemGroup> 
     182    <Compile Include="assaultrifle.png"> 
     183      <Name>assaultrifle</Name> 
     184      <Importer>TextureImporter</Importer> 
     185      <Processor>TextureProcessor</Processor> 
     186    </Compile> 
     187  </ItemGroup> 
     188  <ItemGroup> 
     189    <Compile Include="cannon.png"> 
     190      <Name>cannon</Name> 
     191      <Importer>TextureImporter</Importer> 
     192      <Processor>TextureProcessor</Processor> 
     193    </Compile> 
     194  </ItemGroup> 
     195  <ItemGroup> 
     196    <Compile Include="laser.png"> 
     197      <Name>laser</Name> 
     198      <Importer>TextureImporter</Importer> 
     199      <Processor>TextureProcessor</Processor> 
     200    </Compile> 
     201  </ItemGroup> 
     202  <ItemGroup> 
     203    <Compile Include="plasma.png"> 
     204      <Name>plasma</Name> 
     205      <Importer>TextureImporter</Importer> 
     206      <Processor>TextureProcessor</Processor> 
     207    </Compile> 
     208  </ItemGroup> 
     209  <ItemGroup> 
     210    <Compile Include="bullet.png"> 
     211      <Name>bullet</Name> 
     212      <Importer>TextureImporter</Importer> 
     213      <Processor>TextureProcessor</Processor> 
     214    </Compile> 
     215  </ItemGroup> 
     216  <ItemGroup> 
     217    <Compile Include="cannonball.png"> 
     218      <Name>cannonball</Name> 
     219      <Importer>TextureImporter</Importer> 
     220      <Processor>TextureProcessor</Processor> 
     221    </Compile> 
     222  </ItemGroup> 
    160223  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    161224  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2017/31/PatrikK/Tasohyppelypeli/Tasohyppelypeli/TasohyppelypeliContent/kentta1.txt

    r9300 r9349  
    33         ##         ##         ##         ##         ##      
    44 
    5 ************************************************************ 
    6        ##  ##       ##  ##       ##  ##       ##  ##      ## 
     5*************************S********************************** 
     6       ##  ##       ##  ###       ##  ##       ##  ##      ## 
    77 
    88*********I****************** N******************************** 
Note: See TracChangeset for help on using the changeset viewer.