Changeset 5129


Ignore:
Timestamp:
2014-06-26 14:58:57 (9 years ago)
Author:
ukviveka
Message:
 
Location:
2014/26/UkkoK/TasoHyppelyUkkoK
Files:
4 added
13 edited

Legend:

Unmodified
Added
Removed
  • 2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK.cs

    r5103 r5129  
    77using Jypeli.Widgets; 
    88 
     9 
     10class Vihu : PlatformCharacter 
     11{ 
     12    private IntMeter elamaLaskuri = new IntMeter(3, 0, 3); 
     13    public IntMeter ElamaLaskuri { get { return elamaLaskuri; } } 
     14 
     15    public Vihu(double leveys, double korkeus) 
     16        : base(leveys, korkeus) 
     17    { 
     18        elamaLaskuri.LowerLimit += delegate { this.Destroy(); }; 
     19    } 
     20} 
     21 
     22 
    923public class TasoHyppelyUkkoK : PhysicsGame 
    1024{ 
     
    1630    IntMeter kranuLaskuri; 
    1731 
     32 
    1833    //Image pelaajanKuva = LoadImage("sankari"); 
    19    // Image tahtiKuva = LoadImage("tahti"); 
     34    // Image tahtiKuva = LoadImage("tahti"); 
    2035    // Image aseenKuva = LoadImage("AK-47"); 
    2136    //Image moronKuva = LoadImage("Mörkö"); 
     
    3146    Image Devil = LoadImage("Devil"); 
    3247    Image Kolikko = LoadImage("Kolikko"); 
    33    // Image Dragon = LoadImage("Lohikäärme"); 
     48    // Image Dragon = LoadImage("Lohikäärme"); 
    3449    Image AmmoCrate = LoadImage("AmmoCrate"); 
    35     
    36  
     50    Image Portti = LoadImage("Portti"); 
     51 
     52    IntMeter pisteLaskuri; 
    3753    DoubleMeter elamaLaskuri; 
    3854 
    3955 
    40  
     56    //IntMeter ammusLaskuri; 
    4157 
    4258 
     
    4460 
    4561    PlasmaCannon pelaajan1Ase; 
     62 
     63    int Kenttanumero = 1; 
     64 
    4665 
    4766    public override void Begin() 
     
    5978        LuoElamaLaskuri(); 
    6079        LuoKranuLaskuri(); 
     80        LuoAmmusLaskuri(); 
     81        LuoKolikkoLaskuri(); 
    6182 
    6283        Camera.Follow(pelaaja1); 
     
    6788    void LuoKentta() 
    6889    { 
    69         TileMap kentta = TileMap.FromLevelAsset("kentta1"); 
     90        TileMap kentta = TileMap.FromLevelAsset("kentta" + Kenttanumero); 
    7091        kentta.SetTileMethod('#', LisaaTaso); 
    7192        kentta.SetTileMethod('*', LisaaTahti); 
    7293        kentta.SetTileMethod('P', LisaaPelaaja); 
    7394        kentta.SetTileMethod('V', LisaaVihollinen); 
     95        kentta.SetTileMethod('M', LisaaMaali); 
    7496        //kentta.SetTileMethod('S', LisaaSeina); 
    7597        kentta.SetTileMethod('L', LisaaLaatikko); 
    76         //LISÄÄ AMMUSLAATIKOT!!! 
     98 
    7799        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    78100        Level.CreateBorders(); 
     
    109131        AddCollisionHandler(pelaaja1, "vihollinen", TormaaViholliseen); 
    110132        AddCollisionHandler(pelaaja1, "laatikko", TormaaLaatikkoon); 
     133        AddCollisionHandler(pelaaja1, "Maali", TormaaMaaliin); 
    111134 
    112135        Add(pelaaja1); 
     
    118141        pelaajan1Ase.Ammo.Value = 10; 
    119142        pelaajan1Ase.Ammo.LowerLimit += AmmuksetLoppuu; 
    120          
     143 
    121144 
    122145 
     
    160183    void TormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 
    161184    { 
    162         maaliAani.Play(); 
    163         MessageDisplay.Add("Sait kolikon!"); 
     185        pisteLaskuri.Value++; 
     186        MessageDisplay.Add("Keräsit kolikon!"); 
    164187        tahti.Destroy(); 
    165188    } 
     189 
    166190    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
    167191    { 
     
    170194        if (kohde.Tag == "vihollinen") 
    171195        { 
    172             kohde.Destroy(); 
    173             MessageDisplay.Add("Ammuit vihollisen!"); 
     196            //kohde.Destroy(); 
     197            (kohde as Vihu).ElamaLaskuri.Value--; 
     198            MessageDisplay.Add("Ammuit vihollista!"); 
    174199        } 
    175200 
    176          
     201 
    177202    } 
    178203 
     
    180205    void AmmuAseella(PlasmaCannon ase) 
    181206    { 
    182         PhysicsObject ammus = ase.Shoot(); 
    183  
    184  
    185         if (ammus != null) 
    186         { 
    187             ammus.Size *= 7; 
    188             ammus.Image = Salama; 
    189             ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 
    190         } 
    191  
     207        //if (ammusLaskuri.Value > 0) 
     208        //{ 
     209            PhysicsObject ammus = ase.Shoot(); 
     210 
     211             
     212            if (ammus != null) 
     213            { 
     214                //ammusLaskuri.Value--; 
     215                ammus.Size *= 7; 
     216                ammus.Image = Salama; 
     217                ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 
     218 
     219            } 
     220        //} 
    192221    } 
    193222 
    194223    void LisaaVihollinen(Vector paikka, double leveys, double korkeus) 
    195224    { 
    196         PlatformCharacter Vihollinen = new PlatformCharacter(leveys, korkeus); 
     225        Vihu Vihollinen = new Vihu(leveys, korkeus); 
    197226        Vihollinen.Position = paikka; 
    198227        Vihollinen.Mass = 4.0; 
    199228        Vihollinen.Image = Devil; 
    200229        Vihollinen.Tag = "vihollinen"; 
    201          
     230        Vihollinen.CollisionIgnoreGroup = 1; 
     231 
    202232        Add(Vihollinen); 
    203233 
     
    206236 
    207237        Vihollinen.Brain = tasoAivot; 
    208  
    209  
    210     } 
     238    } 
     239 
    211240    void HeitaKranaatti(PlatformCharacter pelaaja) 
    212241    { 
     
    219248            kranu.Explosion.Image = rajahtavaPilvi; 
    220249            kranuLaskuri.Value--; 
     250            kranu.CollisionIgnoreGroup = 1; 
    221251 
    222252            pelaaja.Throw(kranu, Angle.FromDegrees(30), 10000); 
     
    227257    { 
    228258        rajahdyksenKohde.Destroy(); 
    229         MessageDisplay.Add("Tuhosit vihollisen kranaatilla!"); 
    230     } 
     259        MessageDisplay.Add("Pilvipullosi tuhosi vihollisen!"); 
     260    } 
     261 
    231262    void VihuTormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 
    232263    { 
    233264        MessageDisplay.Add("Vihollinen tuhosi tähden!"); 
    234265        tahti.Destroy(); 
    235          
    236     } 
     266 
     267    } 
     268 
    237269    void LisaaSeina(Vector paikka, double leveys, double korkeus) 
    238270    { 
     
    247279    { 
    248280        elamaLaskuri = new DoubleMeter(10); 
    249         elamaLaskuri.MaxValue = 5; 
     281        elamaLaskuri.MaxValue = 10; 
    250282        elamaLaskuri.LowerLimit += ElamaLoppui; 
    251283 
    252284        ProgressBar elamaPalkki = new ProgressBar(150, 20); 
    253         elamaPalkki.X =  0; 
     285        elamaPalkki.X = 0; 
    254286        elamaPalkki.Y = Screen.Top - 20; 
    255287        elamaPalkki.BindTo(elamaLaskuri); 
     
    270302        elamaLaskuri.Value--; 
    271303        MessageDisplay.Add("Vihollinen vahingoitti sinua!"); 
    272        
    273     } 
    274      
     304 
     305    } 
     306 
    275307 
    276308    void LuoKranuLaskuri() 
    277309    { 
    278         kranuLaskuri = new IntMeter(5);                
    279   
    280         Label pisteNaytto = new Label();  
     310        kranuLaskuri = new IntMeter(3); 
     311 
     312        Label pisteNaytto = new Label(); 
    281313        pisteNaytto.X = 0; 
    282         pisteNaytto.Y = Screen.Top -50; 
     314        pisteNaytto.Y = Screen.Top - 50; 
    283315        pisteNaytto.TextColor = Color.LightBlue; 
    284316        pisteNaytto.Color = Color.DarkBlue; 
     317        pisteNaytto.Title = "Pilvipulloja"; 
    285318 
    286319        pisteNaytto.BindTo(kranuLaskuri); 
     
    300333    void TormaaLaatikkoon(PhysicsObject hahmo, PhysicsObject laatikko) 
    301334    { 
     335 
     336        MessageDisplay.Add("Keräsit tarvikelaatikon!"); 
     337        laatikko.Destroy(); 
     338        kranuLaskuri.Value += 1; 
     339        pelaajan1Ase.Ammo.Value += 5; 
     340    } 
     341 
     342 
     343    void LuoAmmusLaskuri() 
     344    { 
     345        //ammusLaskuri = new IntMeter(pelaajan1Ase.Ammo.Value); 
     346 
     347        Label pisteNaytto = new Label(); 
     348        pisteNaytto.X = 0; 
     349        pisteNaytto.Y = Screen.Top - 100; 
     350        pisteNaytto.TextColor = Color.LightBlue; 
     351        pisteNaytto.Color = Color.DarkBlue; 
     352        pisteNaytto.Title = "Ammuksia"; 
     353 
     354        pisteNaytto.BindTo(pelaajan1Ase.Ammo); 
     355        Add(pisteNaytto); 
     356    } 
     357 
     358    void LisaaMaali(Vector paikka, double leveys, double korkeus) 
     359    { 
     360        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     361        taso.Position = paikka; 
     362        taso.Color = Color.DarkBlue; 
     363        taso.Image = Portti; 
     364        taso.Tag = "Maali"; 
     365        Add(taso); 
     366    } 
     367 
     368    void TormaaMaaliin(PhysicsObject pelaaja1, PhysicsObject Maali) 
     369    { 
     370        if(pisteLaskuri == 44) 
     371        { 
     372            Kenttanumero++; 
     373            AloitaPeli(); 
     374        } 
     375        
     376    } 
     377    void LuoKolikkoLaskuri() 
     378    { 
     379        pisteLaskuri = new IntMeter(0); 
     380    } 
    302381         
    303         MessageDisplay.Add("Sait tarvikelaatikon!"); 
    304         laatikko.Destroy(); 
    305         kranuLaskuri.Value += 2; 
    306         pelaajan1Ase.Ammo.Value += 15; 
    307     } 
    308  
    309      
    310  
    311  
    312382} 
  • 2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK.csproj.Debug.cachefile

    r5103 r5129  
    1515Content\LohikÀÀrme.xnb 
    1616Content\AmmoCrate.xnb 
     17Content\kentta2.xnb 
     18Content\Portti.xnb 
  • 2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/obj/x86/Debug/ContentPipeline-{F8BB567F-6D2E-4FE1-8873-A655DD95F472}.xml

    r5103 r5129  
    3636      <Options>None</Options> 
    3737      <Output>C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\kentta1.xnb</Output> 
    38       <Time>2014-06-25T14:14:47.2035543+03:00</Time> 
     38      <Time>2014-06-26T14:48:00.7854115+03:00</Time> 
    3939    </Item> 
    4040    <Item> 
     
    145145      <Output>C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\AmmoCrate.xnb</Output> 
    146146      <Time>2014-06-25T13:57:08.9669764+03:00</Time> 
     147    </Item> 
     148    <Item> 
     149      <Source>kentta2.txt</Source> 
     150      <Name>kentta2</Name> 
     151      <Importer>TextFileImporter</Importer> 
     152      <Processor>TextFileContentProcessor</Processor> 
     153      <Options>None</Options> 
     154      <Output>C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\kentta2.xnb</Output> 
     155      <Time>2014-06-26T14:48:46.1024683+03:00</Time> 
     156    </Item> 
     157    <Item> 
     158      <Source>Portti.png</Source> 
     159      <Name>Portti</Name> 
     160      <Importer>TextureImporter</Importer> 
     161      <Processor>TextureProcessor</Processor> 
     162      <Options>None</Options> 
     163      <Output>C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\Portti.xnb</Output> 
     164      <Time>2014-06-26T12:40:05.67121+03:00</Time> 
    147165    </Item> 
    148166    <BuildSuccessful>true</BuildSuccessful> 
  • 2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/obj/x86/Debug/TasoHyppelyUkkoK.csproj.FileListAbsolute.txt

    r5103 r5129  
    2323C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\LohikÀÀrme.xnb 
    2424C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\AmmoCrate.xnb 
     25C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\kentta2.xnb 
     26C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\Portti.xnb 
  • 2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/obj/x86/Debug/cachefile-{F8BB567F-6D2E-4FE1-8873-A655DD95F472}-targetpath.txt

    r5103 r5129  
    1515Content\LohikÀÀrme.xnb 
    1616Content\AmmoCrate.xnb 
     17Content\kentta2.xnb 
     18Content\Portti.xnb 
  • 2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoKContent/TasoHyppelyUkkoKContent.contentproj

    r5103 r5129  
    151151    </Compile> 
    152152  </ItemGroup> 
     153  <ItemGroup> 
     154    <Compile Include="kentta2.txt"> 
     155      <Name>kentta2</Name> 
     156      <Importer>TextFileImporter</Importer> 
     157      <Processor>TextFileContentProcessor</Processor> 
     158    </Compile> 
     159  </ItemGroup> 
     160  <ItemGroup> 
     161    <Compile Include="Portti.png"> 
     162      <Name>Portti</Name> 
     163      <Importer>TextureImporter</Importer> 
     164      <Processor>TextureProcessor</Processor> 
     165    </Compile> 
     166  </ItemGroup> 
    153167  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    154168  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoKContent/kentta1.txt

    r5103 r5129  
    66############################################################################################################################################################################################################################################################################################################################################### 
    77#                                                                                                                                                                                                                                                                                                                                             # 
    8 #                                                               *  *  *  *  *  *  *  *  L                                                                                                                                                                                                                                                     # 
    9 #                                                            ##############################                                                                                                                                                                                                                                                   # 
    10 #                                                           #                                                                                                                                                                                                                                                                                 # 
    11 #                                                          #                                                                                                                                                                                                                                                                                  # 
    12 #                                      *L*                #                                                         * *V* * *V* L                                                                                                                                                                                                             # 
    13 #                                     #####              #                                                         ###############                                                                                                                                                                                                            # 
    14 #                             *V*                       #                                                  *V*                                                                                                                                                                                                                                # 
    15 #                            #####                     #                                                  #####     * *V* * *V* *                                                                                                                                                                                                             # 
    16 #                     *V*                             #                                           V*V              ###############                                                                                                                                                                                                            # 
    17 #                    #####                           #                                           #####                                                                                                                                                                                                                                        # 
    18 #             *V*                                   #                                    ***                                                                                                                                                                                                                                                  # 
    19 #            #####                                 #                                    #####                                                                                                                                                                                                                                                 # 
    20 #  P      V               V       L       V                V            V                        V      L     V                V           V     V          V        V      L         V     V                                                                                                                                                 # 
     8#                                                                                                                                                                                                                                                                                                                                             # 
     9#                                                                                                                                                                                                                                                                                                                                             # 
     10#                                                                                                                                                                                                                                                                                                                                             # 
     11#                                                                                                                                                                                                                                                                                                                                             # 
     12#                                                               *  *  *  *  *  *  *  *  L                                                                                                                       * * V *   * V * V L               L * * V  V  *  V  L       *     L     *     L     *                                         # 
     13#                                                            ##############################                                                                                                                   ######################             ######################     #     #     #     #     #                                         # 
     14#                                                           #                                                                                                          *V*                                                          #     V     #                                                                            *V*              # 
     15#                                                          #        LV  *   *V  *   *V  *                                                                          V   ###                                   #                          #####                                                                           V * #####             # 
     16#                                      *L*                #         ##  ##  ##  ##  ##  ##                          * *V* * *V* L                                 ###                                         *                        #     #                                                                     V L #####                  # 
     17#                                     #####              #                                                         ###############                            L                                               #         V *       V *           * V                * V         *     L     L     *            * * #####                       # 
     18#                             *V*                       #                                                  *V*                                              ##### V *                                                  #####     #####         #####              #####        #     #     #     #           #####                            # 
     19#                            #####                     #                                                  #####     * *V* * *V* *                                ####   *                                    #               * *          #                                                              L V                                  # 
     20#                     *V*                             #                                           V*V              ###############                                      ##    V                               *             #####        L V       * V       * V                                        ##### * V                             # 
     21#                    #####                           #                                           #####                                                                       ###     **                       #                         #####     #####     #####                                            ##### * V                        # 
     22#             *V*                                   #                                    ***                                                                                        ####     *V*                                                                                  *     *     *                   ##### ***                   # 
     23#            #####                                 #                                    #####                                                                                               #####            #                    ###                                             #     #     #                        #####                  # 
     24#  P      V               V       L       V                V            V         L              V      L     V                V      L    V     V          V        V      L         V     V            V          V        V         V      V            V             V                  V        V     V       V                     M    # 
    2125############################################################################################################################################################################################################################################################################################################################################### 
Note: See TracChangeset for help on using the changeset viewer.