Changeset 8398 for 2016


Ignore:
Timestamp:
2017-01-28 14:57:19 (22 months ago)
Author:
tesatapa
Message:
 
Location:
2016/27/PaavoH/UltimateAdventure
Files:
8 added
13 edited

Legend:

Unmodified
Added
Removed
  • 2016/27/PaavoH/UltimateAdventure/UltimateAdventure/UltimateAdventure/UltimateAdventure.cs

    r8388 r8398  
    99public class UltimateAdventure : PhysicsGame 
    1010{ 
    11     const double nopeus = 200; 
     11    double nopeus = 200; 
    1212    const double hyppyNopeus = 750; 
    1313    const int RUUDUN_KOKO = 40; 
    14  
     14    IntMeter Pommit = new IntMeter(50); 
     15    Double Painovoima = -1000; 
    1516    bool saapiiskata = true; 
    1617    bool saapommittaa = true; 
     18    PushButton TextureButton; 
    1719    DoubleMeter aani = new DoubleMeter(0, 0, 1); 
    1820 
     
    2830    Image Bomb = LoadImage("bomb"); 
    2931    Image Arrow = LoadImage("Arrow"); 
     32    Image PhysicBlockImage = LoadImage("PhysicBlockTexture"); 
     33    Image TurretImage = LoadImage("TurretTextureV1"); 
     34    Image Snake = LoadImage("snake"); 
     35    Image Player = LoadImage("PlayerV2"); 
     36 
    3037 
    3138    SoundEffect maaliAani = LoadSoundEffect("maali"); 
     
    4855 
    4956        alkuValikko.AddItemHandler(0, AloitaPeli); 
    50         alkuValikko.AddItemHandler(1, Options); 
     57        alkuValikko.AddItemHandler(1, MenuOptions); 
    5158        alkuValikko.AddItemHandler(2, Exit); 
    5259 
    5360        Add(alkuValikko); 
    5461    } 
    55  
     62    void LuoPeliValikko() 
     63    { 
     64        MultiSelectWindow Pelivalikko = new MultiSelectWindow(" ", "Jatka peliä", "Options", "Lopeta"); 
     65 
     66        //Pelivalikko.AddItemHandler(0, AloitaPeli); 
     67        Pelivalikko.AddItemHandler(1, PeliOptions); 
     68        Pelivalikko.AddItemHandler(2, Exit); 
     69 
     70        Add(Pelivalikko); 
     71    } 
    5672    void AloitaPeli() 
    5773    { 
    5874        ClearAll(); 
    59         SmoothTextures = false; 
    60         Gravity = new Vector(0, -1000); 
     75        Gravity = new Vector(0, Painovoima); 
    6176 
    6277        LuoKentta(); 
     
    6681        Camera.ZoomFactor = 2.8; 
    6782        Camera.StayInLevel = true; 
     83        Label PommienMaara = new Label(Pommit); 
     84        PommienMaara.X = Screen.Right - 150; 
     85        PommienMaara.Y = Screen.Top - 150; 
     86        Add(PommienMaara); 
     87    } 
     88 
     89    void MenuOptions() 
     90    { 
     91        Options(); 
     92        TeeBackNappain(); 
    6893    } 
    6994    void Options() 
     
    7297        Slider liukusaadin = LuoSlider(); 
    7398        Add(liukusaadin); 
    74         TeeBackNappain(); 
    75     } 
    76  
     99        TeeTextureButton(); 
     100    } 
     101    void PeliOptions() 
     102    { 
     103        Options(); 
     104        TeeSuljePeliOptions(); 
     105    } 
     106    void TeeTextureButton() 
     107    { 
     108        TextureButton = new PushButton("" + SmoothTextures); 
     109        TextureButton.Y = -100; 
     110        TextureButton.Clicked += PaivitaTextureButton; 
     111        TextureButton.Tag = "Options"; 
     112 
     113        Add(TextureButton); 
     114    } 
     115    void PaivitaTextureButton() 
     116    { 
     117        SmoothTextures = !SmoothTextures; 
     118        TextureButton.Text = "" + SmoothTextures; 
     119    } 
    77120    Slider LuoSlider() 
    78121    { 
     
    82125        Slider liukusaadin = new Slider(200, 20); 
    83126        liukusaadin.BindTo(aani); 
    84  
     127        liukusaadin.Tag = "Options"; 
    85128        liukusaadin.X = 0; 
    86129        liukusaadin.Y = 0; 
     
    97140    { 
    98141        PushButton BackNappain = new PushButton("Back"); 
    99         BackNappain.Y = -120; 
     142        BackNappain.Y = -300; 
    100143        BackNappain.Clicked += LuoAlkuValikko; 
    101144 
    102145        Add(BackNappain); 
    103146    } 
    104  
    105  
     147    void TeeSuljePeliOptions() 
     148    { 
     149        PushButton SuljePeliOptions = new PushButton("Back"); 
     150        SuljePeliOptions.Y = -300; 
     151        SuljePeliOptions.Tag = "Options"; 
     152        SuljePeliOptions.Clicked += JatkaPelia; 
     153 
     154        Add(SuljePeliOptions); 
     155    } 
     156 
     157    void JatkaPelia() 
     158    { 
     159        List<GameObject> Oliot = GetObjectsWithTag("Options"); 
     160        foreach (GameObject item in Oliot) 
     161        { 
     162            item.Destroy(); 
     163        } 
     164        IsMouseVisible = false; 
     165    } 
    106166    void MuutaAanenvoimakuutta(double vanhaArvo, double uusiArvo) 
    107167    { 
     
    113173    { 
    114174        TileMap kentta = TileMap.FromLevelAsset("kentta1"); 
    115         kentta.SetTileMethod('#', LisaaTaso); 
     175        kentta.SetTileMethod('#', LisaaSolid); 
    116176        kentta.SetTileMethod('&', LisaaBp); 
    117177        kentta.SetTileMethod('*', LisaaHealt); 
     
    119179        kentta.SetTileMethod('0', LisaaSilmamob); 
    120180        kentta.SetTileMethod('5', LisaaSnakemob); 
    121         kentta.SetTileMethod('>', LisaaAT); 
     181        kentta.SetTileMethod('>', LisaaTurret); 
     182        kentta.SetTileMethod('☂', PhysicBlock); 
     183        kentta.SetTileMethod('7', LisaaSpeedBoots); 
     184        kentta.SetTileMethod('O', LisaaPommipakkaus); 
    122185        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    123186        Level.CreateBorders(); 
     
    125188    } 
    126189 
    127     void LisaaTaso(Vector paikka, double leveys, double korkeus) 
     190    void LisaaSolid(Vector paikka, double leveys, double korkeus) 
    128191    { 
    129192        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     
    133196    } 
    134197 
    135     void LisaaAT(Vector paikka, double leveys, double korkeus) 
    136     { 
    137         PhysicsObject AT = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    138         AT.Position = paikka; 
    139         AT.Color = Color.YellowGreen; 
    140         Add(AT); 
     198    void LisaaBp(Vector paikka, double leveys, double korkeus) 
     199    { 
     200        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     201        taso.Position = paikka; 
     202        taso.Image = Bpimage; 
     203        Add(taso); 
     204    } 
     205 
     206    void LisaaTurret(Vector paikka, double leveys, double korkeus) 
     207    { 
     208        PhysicsObject Turret = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     209        Turret.Position = paikka; 
     210        Turret.Image = TurretImage; 
     211        Add(Turret); 
    141212 
    142213 
     
    145216        ajastin.Timeout += delegate 
    146217        { 
    147             if (pelaaja1.X > AT.X && Math.Abs(pelaaja1.Y - AT.Y) < 20) 
     218            if (pelaaja1.X > Turret.X && Math.Abs(pelaaja1.Y - Turret.Y) < 20) 
    148219            { 
    149220                PhysicsObject nuoli = new PhysicsObject(30, 5); 
    150                 nuoli.Position = AT.Position; 
    151                 nuoli.Velocity = new Vector(3000, 0); 
     221                nuoli.Position = Turret.Position; 
     222                nuoli.Velocity = new Vector(1700, 0); 
    152223                Add(nuoli); 
    153224                nuoli.Image = Arrow; 
     
    160231    } 
    161232 
     233    void PhysicBlock(Vector paikka, double leveys, double korkeus) 
     234    { 
     235        PhysicsObject PhysicBlock = new PhysicsObject(leveys, korkeus); 
     236        PhysicBlock.Position = paikka; 
     237        PhysicBlock.Image = PhysicBlockImage; 
     238        PhysicBlock.Mass = 200.0; 
     239        Add(PhysicBlock); 
     240    } 
     241 
    162242 
    163243 
     
    172252        Add(healt); 
    173253    } 
    174  
     254    void LisaaPommipakkaus(Vector paikka, double leveys, double korkeus) 
     255    { 
     256        PhysicsObject Pommipakkaus = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     257        Pommipakkaus.IgnoresCollisionResponse = true; 
     258        Pommipakkaus.Position = paikka; 
     259        //Pommipakkaus.Image = tahtiKuva; 
     260        Pommipakkaus.Tag = "Pommipakkaus"; 
     261        Add(Pommipakkaus); 
     262    } 
     263    void LisaaSpeedBoots(Vector paikka, double leveys, double korkeus) 
     264    { 
     265        PhysicsObject SpeedBoots = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     266        SpeedBoots.IgnoresCollisionResponse = true; 
     267        SpeedBoots.Position = paikka; 
     268        SpeedBoots.Tag = "SpeedBoots"; 
     269        Add(SpeedBoots); 
     270    } 
    175271    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    176272    { 
     
    178274        pelaaja1.Position = paikka; 
    179275        pelaaja1.Mass = 4.0; 
    180         pelaaja1.Image = pelaajanKuva; 
     276        pelaaja1.Image = Player; 
    181277        pelaaja1.Tag = "pelaaja"; 
     278        pelaaja1.Mass = 100.0; 
    182279        AddCollisionHandler(pelaaja1, "healt", TormaaHealtiin); 
    183280        AddCollisionHandler(pelaaja1, "silmamob", TormaaSilmaMobiin); 
    184281        AddCollisionHandler(pelaaja1, "snake", TormaaSnakeen); 
    185282        AddCollisionHandler(pelaaja1, "nuoli", TormaaNuoleen); 
     283        AddCollisionHandler(pelaaja1, "SpeedBoots", TormaaSpeedBootsiin); 
     284        AddCollisionHandler(pelaaja1, "Pommipakkaus", TormaaPommipakkaukseen); 
    186285        Add(pelaaja1); 
    187286    } 
    188     void LisaaBp(Vector paikka, double leveys, double korkeus) 
    189     { 
    190         PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    191         taso.Position = paikka; 
    192         taso.Image = Bpimage; 
    193         Add(taso); 
    194     } 
    195  
    196     void LisaaMob(Vector paikka, double leveys, double korkeus, double massa, string tag, Brain aivo) 
    197     { 
    198         PlatformCharacter silmamob = new PlatformCharacter(leveys, korkeus); 
    199         silmamob.Position = paikka; 
    200         silmamob.Mass = massa; 
    201         silmamob.Image = silmamobimage; 
    202         Add(silmamob); 
    203         silmamob.Tag = tag; 
    204         silmamob.Brain = aivo; 
     287 
     288 
     289    void LisaaMob(Vector paikka, double leveys, double korkeus, double massa, string tag, Brain aivo, Image kuva) 
     290    { 
     291        PlatformCharacter Mob = new PlatformCharacter(leveys, korkeus); 
     292        Mob.Position = paikka; 
     293        Mob.Mass = massa; 
     294        Mob.Image = kuva; 
     295        Add(Mob); 
     296        Mob.Tag = tag; 
     297        Mob.Brain = aivo; 
    205298    } 
    206299 
     
    210303        aivot.Speed = 100; 
    211304 
    212         LisaaMob(paikka, leveys, korkeus, 2.0, "silmamob", aivot); 
     305        LisaaMob(paikka, leveys, korkeus, 2.0, "silmamob", aivot, silmamobimage); 
    213306    } 
    214307 
     
    218311        aivot.Speed = 100; 
    219312 
    220         LisaaMob(paikka, leveys, korkeus, 3.0, "snake", aivot); 
     313        LisaaMob(paikka, leveys, korkeus, 3.0, "snake", aivot, Snake); 
    221314    } 
    222315 
     
    224317    { 
    225318        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
    226         Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    227  
    228         Keyboard.Listen(Key.A, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    229         Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 
     319        Keyboard.Listen(Key.Escape, ButtonState.Pressed, LuoPeliValikko, "Lopeta peli"); 
     320 
     321        Keyboard.Listen(Key.A, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -1.0); 
     322        Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, 1.0); 
    230323        Keyboard.Listen(Key.W, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
    231324 
     
    242335 
    243336    void LiikutaPelaajaa(AnalogState tatinTila) 
    244     {  
     337    { 
    245338        Vector tatinAsento = tatinTila.StateVector; 
    246         pelaaja1.Walk(tatinAsento.X * 200); 
     339        pelaaja1.Walk(tatinAsento.X * nopeus); 
    247340    } 
    248341    void Lyo(PlatformCharacter hahmo) 
     
    285378    } 
    286379    void HeitaPommi(PlatformCharacter hahmo) 
    287     {  
    288         if (saapommittaa == false) 
     380    { 
     381        if (saapommittaa == false || Pommit.Value <= 0) 
    289382            return; 
     383        Pommit.Value--; 
    290384 
    291385        saapommittaa = false; 
    292386 
    293387        Grenade Pommi = new Grenade(10.0); 
     388        //  Pommi.Destroyed += delegate { Pommit.AddValue(-1); }; 
    294389        hahmo.Throw(Pommi, Angle.FromDegrees(30), 10000); 
    295390        Pommi.Image = Bomb; 
     
    298393    } 
    299394 
    300     void Liikuta(PlatformCharacter hahmo, double nopeus) 
    301     { 
    302         hahmo.Walk(nopeus); 
     395    void Liikuta(PlatformCharacter hahmo, double suunta) 
     396    { 
     397        hahmo.Walk(nopeus * suunta); 
    303398    } 
    304399 
     
    314409        elamaLaskuri.Value += 5; 
    315410    } 
     411 
    316412    void LuoElamaLaskuri() 
    317413    { 
     
    365461        elamaLaskuri.Value -= 1; 
    366462    } 
     463 
    367464    void TormaaNuoleen(PhysicsObject hahmo, PhysicsObject nuoli) 
    368465    { 
     
    371468    } 
    372469 
     470    void TormaaSpeedBootsiin(PhysicsObject hahmo, PhysicsObject SpeedBoots) 
     471    { 
     472        nopeus *= 2; 
     473        SpeedBoots.Destroy(); 
     474        Timer.SingleShot(5.0, delegate { nopeus /= 2; }); 
     475 
     476    } 
     477 
     478    void TormaaPommipakkaukseen(PhysicsObject hahmo, PhysicsObject Pommipakkaus) 
     479    { 
     480        Pommit.Value += 5; 
     481        Pommipakkaus.Destroy(); 
     482    } 
     483 
     484 
     485 
     486 
     487 
     488 
     489 
     490 
     491 
     492 
     493 
     494 
     495 
     496 
     497 
     498 
     499 
     500 
     501 
     502 
     503 
     504 
     505 
     506 
     507 
     508 
     509 
     510 
     511 
     512 
     513 
     514 
     515 
     516 
     517 
     518 
     519 
     520 
     521 
     522 
     523 
     524 
     525 
     526 
     527 
     528 
     529 
     530 
     531 
     532 
     533 
    373534} 
  • 2016/27/PaavoH/UltimateAdventure/UltimateAdventure/UltimateAdventure/UltimateAdventure.csproj.Debug.cachefile

    r8388 r8398  
    3535Content\bomb.xnb 
    3636Content\Arrow.xnb 
     37Content\PhysicBlockTexture.xnb 
     38Content\PlayerV2.xnb 
     39Content\snake.xnb 
     40Content\TurretTextureV1.xnb 
  • 2016/27/PaavoH/UltimateAdventure/UltimateAdventure/UltimateAdventure/obj/x86/Debug/ContentPipeline-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}.xml

    r8388 r8398  
    7272      <Options>None</Options> 
    7373      <Output>C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\kentta1.xnb</Output> 
    74       <Time>2016-12-17T14:54:03.3280321+02:00</Time> 
     74      <Time>2017-01-28T14:48:42.5135982+02:00</Time> 
    7575    </Item> 
    7676    <Item> 
     
    351351      <Time>2016-12-17T14:25:17.4926821+02:00</Time> 
    352352    </Item> 
     353    <Item> 
     354      <Source>PhysicBlockTexture.png</Source> 
     355      <Name>PhysicBlockTexture</Name> 
     356      <Importer>TextureImporter</Importer> 
     357      <Processor>TextureProcessor</Processor> 
     358      <Options>None</Options> 
     359      <Output>C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\PhysicBlockTexture.xnb</Output> 
     360      <Time>2017-01-27T23:13:12+02:00</Time> 
     361    </Item> 
     362    <Item> 
     363      <Source>PlayerV2.png</Source> 
     364      <Name>PlayerV2</Name> 
     365      <Importer>TextureImporter</Importer> 
     366      <Processor>TextureProcessor</Processor> 
     367      <Options>None</Options> 
     368      <Output>C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\PlayerV2.xnb</Output> 
     369      <Time>2017-01-28T10:40:35.0015642+02:00</Time> 
     370    </Item> 
     371    <Item> 
     372      <Source>snake.png</Source> 
     373      <Name>snake</Name> 
     374      <Importer>TextureImporter</Importer> 
     375      <Processor>TextureProcessor</Processor> 
     376      <Options>None</Options> 
     377      <Output>C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\snake.xnb</Output> 
     378      <Time>2016-09-24T14:57:48+03:00</Time> 
     379    </Item> 
     380    <Item> 
     381      <Source>TurretTextureV1.png</Source> 
     382      <Name>TurretTextureV1</Name> 
     383      <Importer>TextureImporter</Importer> 
     384      <Processor>TextureProcessor</Processor> 
     385      <Options>None</Options> 
     386      <Output>C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\TurretTextureV1.xnb</Output> 
     387      <Time>2017-01-27T23:03:08+02:00</Time> 
     388    </Item> 
    353389    <BuildSuccessful>true</BuildSuccessful> 
    354390    <Settings> 
  • 2016/27/PaavoH/UltimateAdventure/UltimateAdventure/UltimateAdventure/obj/x86/Debug/UltimateAdventure.csproj.FileListAbsolute.txt

    r8388 r8398  
    4343C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\bomb.xnb 
    4444C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\Arrow.xnb 
     45C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\PhysicBlockTexture.xnb 
     46C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\PlayerV2.xnb 
     47C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\snake.xnb 
     48C:\MyTemp\PaavoH\UltimateAdventure\UltimateAdventure\UltimateAdventure\bin\x86\Debug\Content\TurretTextureV1.xnb 
  • 2016/27/PaavoH/UltimateAdventure/UltimateAdventure/UltimateAdventure/obj/x86/Debug/cachefile-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}-targetpath.txt

    r8388 r8398  
    3535Content\bomb.xnb 
    3636Content\Arrow.xnb 
     37Content\PhysicBlockTexture.xnb 
     38Content\PlayerV2.xnb 
     39Content\snake.xnb 
     40Content\TurretTextureV1.xnb 
  • 2016/27/PaavoH/UltimateAdventure/UltimateAdventure/UltimateAdventureContent/UltimateAdventureContent.contentproj

    r8388 r8398  
    243243    </Compile> 
    244244  </ItemGroup> 
     245  <ItemGroup> 
     246    <Compile Include="PhysicBlockTexture.png"> 
     247      <Name>PhysicBlockTexture</Name> 
     248      <Importer>TextureImporter</Importer> 
     249      <Processor>TextureProcessor</Processor> 
     250    </Compile> 
     251    <Compile Include="PlayerV2.png"> 
     252      <Name>PlayerV2</Name> 
     253      <Importer>TextureImporter</Importer> 
     254      <Processor>TextureProcessor</Processor> 
     255    </Compile> 
     256    <Compile Include="snake.png"> 
     257      <Name>snake</Name> 
     258      <Importer>TextureImporter</Importer> 
     259      <Processor>TextureProcessor</Processor> 
     260    </Compile> 
     261    <Compile Include="TurretTextureV1.png"> 
     262      <Name>TurretTextureV1</Name> 
     263      <Importer>TextureImporter</Importer> 
     264      <Processor>TextureProcessor</Processor> 
     265    </Compile> 
     266  </ItemGroup> 
    245267  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    246268  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2016/27/PaavoH/UltimateAdventure/UltimateAdventure/UltimateAdventureContent/kentta1.txt

    r8388 r8398  
    1717#                                                                                 # 
    1818#                                                                                 # 
    19 #                                                                                # 
    20 #                                   &&&                   >   #   >               # 
    21 #                                   &&&                &&&&&&&&&&&&&>             # 
    22    &    o           && 0         &&&   5       #    ******************         # 
     19#                                    ☂                O          O               # 
     20#                                   &&&                7  >   #   >               # 
     21#                      7            &&&                &&&&&&&&&&&&&>             # 
     227  &    o           && 0         &&&   5       #    ******************         # 
    2323##################################################################################### 
Note: See TracChangeset for help on using the changeset viewer.