Changeset 7335 for 2016/24/MikoA


Ignore:
Timestamp:
2016-06-15 14:56:45 (3 years ago)
Author:
karkaite
Message:
 
Location:
2016/24/MikoA/LukanSeikkailu
Files:
9 added
14 edited

Legend:

Unmodified
Added
Removed
  • 2016/24/MikoA/LukanSeikkailu/LukanSeikkailu/LukanSeikkailu/LukanSeikkailu.cs

    r7300 r7335  
    1414 
    1515    PlatformCharacter pelaaja1; 
     16    bool OnkoAvainKerätty = false; 
    1617 
    1718    Image pelaajanKuva = LoadImage("kylpytakkiupng"); 
    18     Image tahtiKuva = LoadImage("tahti"); 
    19  
     19    Image VarjonKuva = LoadImage("kylpytakkiVARJO"); 
     20    Image VihollinenKuva = LoadImage("Vihollinen"); 
     21    Image AvainKuva = LoadImage("Avain"); 
     22    Image AvaimenreikäKuva = LoadImage("Avaimenreikä"); 
    2023    SoundEffect maaliAani = LoadSoundEffect("maali"); 
    2124    Image taustakuva = LoadImage("TaustaPuisto"); 
     
    2326    { 
    2427        Gravity = new Vector(0, -1000); 
    25  
     28        
    2629        LuoKentta(); 
    2730        LisaaNappaimet(); 
     
    3437    void LuoKentta() 
    3538    { 
     39        OnkoAvainKerätty = false; 
    3640        TileMap kentta = TileMap.FromLevelAsset("kentta1"); 
    3741        kentta.SetTileMethod('#', LisaaTaso); 
    38         kentta.SetTileMethod('*', LisaaTahti); 
     42        kentta.SetTileMethod('*', LisaaVihollinen); 
    3943        kentta.SetTileMethod('N', LisaaPelaaja); 
     44        kentta.SetTileMethod('&', LisaaAvain); 
     45        kentta.SetTileMethod('+', LaitaAvain); 
    4046        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    4147        Level.CreateBorders(); 
     
    5157        Add(taso); 
    5258    } 
     59    void LisaaAvain(Vector paikka, double leveys, double korkeus) 
     60    { 
     61        PhysicsObject Avain = PhysicsObject.CreateStaticObject(leveys *1.6, korkeus *1.3); 
     62        Avain.Position = paikka + new Vector (20, -25); 
     63        Avain.CollisionIgnoreGroup = 2; 
     64        Add(Avain); 
     65        Avain.Image = AvainKuva; 
     66        Avain.Tag = "Avain"; 
     67    } 
     68    void LaitaAvain(Vector paikka, double leveys, double korkeus) 
     69    { 
     70        PhysicsObject Avaimenreikä = PhysicsObject.CreateStaticObject(leveys *1.85, korkeus *1); 
     71        Avaimenreikä.Position = paikka + new Vector(0.0, 0.0); 
     72        Avaimenreikä.CollisionIgnoreGroup = 2; 
     73        Add(Avaimenreikä); 
     74        Avaimenreikä.Image = AvaimenreikäKuva; 
     75        Avaimenreikä.Tag = "Avaimenreikä"; 
     76    } 
    5377 
    54     void LisaaTahti(Vector paikka, double leveys, double korkeus) 
     78 
     79 
     80    void LisaaVihollinen(Vector paikka, double leveys, double korkeus) 
    5581    { 
    56         PhysicsObject tahti = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    57         tahti.IgnoresCollisionResponse = true; 
    58         tahti.Position = paikka; 
    59         tahti.Image = tahtiKuva; 
    60         tahti.Tag = "tahti"; 
    61         Add(tahti); 
     82        PlatformCharacter Vihollinen =  new PlatformCharacter(leveys, korkeus); 
     83        Vihollinen.Position = paikka; 
     84        Vihollinen.Image = VihollinenKuva; 
     85        Vihollinen.MirrorImage(); 
     86        Vihollinen.Tag = "Vihollinen"; 
     87        Add(Vihollinen); 
     88        PlatformWandererBrain aivot = new PlatformWandererBrain(); 
     89        Vihollinen.Brain = aivot; 
    6290    } 
    6391 
    6492    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    6593    { 
    66         pelaaja1 = new PlatformCharacter(leveys * 1, korkeus * 1.7); 
     94        pelaaja1 = new PlatformCharacter(leveys * 1, korkeus * 1.99); 
     95        pelaaja1.Shape = Shape.FromImage(VarjonKuva); 
    6796        pelaaja1.Position = paikka; 
     97        pelaaja1.CollisionIgnoreGroup = 2; 
    6898        pelaaja1.Mass = 4.0; 
    6999        pelaaja1.Image = pelaajanKuva; 
    70         AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
     100        AddCollisionHandler(pelaaja1, "Vihollinen", TormaaViholliseen); 
    71101        Add(pelaaja1); 
    72102    } 
     
    76106        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
    77107        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     108        Keyboard.Listen(Key.Space, ButtonState.Pressed, OtaAvain, "Avain katoaa"); 
     109        Keyboard.Listen(Key.Space, ButtonState.Pressed, LaitaAvain, "Avaimenreika katoaa"); 
    78110 
    79111        Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
     
    100132    } 
    101133 
    102     void TormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 
     134    void OtaAvain() 
    103135    { 
     136        List<GameObject> avaimet = GetObjectsAt(pelaaja1.Position, "Avain", 100); 
     137        if (avaimet.Count == 0) return; 
     138        avaimet[0].Destroy(); 
    104139        maaliAani.Play(); 
    105         MessageDisplay.Add("Keräsit tähden!"); 
    106         tahti.Destroy(); 
     140        MessageDisplay.Add("Sait avaimen!"); 
     141        OnkoAvainKerätty = true; 
    107142    } 
     143 
     144    void TormaaViholliseen(PhysicsObject Pelaaja, PhysicsObject Vihollinen) 
     145    { 
     146 
     147        Vector erotus = new Vector(Pelaaja.X, Pelaaja.Bottom) - Vihollinen.Position; 
     148        if (erotus.Y > 0 && erotus.Y > Math.Abs(erotus.X) * 0.5) 
     149        { 
     150            Vihollinen.Destroy(); 
     151        } 
     152        else 
     153        { 
     154            Pelaaja.Destroy(); 
     155            MessageDisplay.Add("Kuolit!......LOL"); 
     156        } 
     157 
     158 
     159    } 
     160    void LaitaAvain() 
     161    { 
     162        List<GameObject> avaimenreiät = GetObjectsAt(pelaaja1.Position, "Avaimenreikä", 100); 
     163        if (avaimenreiät.Count == 0 || !OnkoAvainKerätty) return; 
     164        avaimenreiät[0].Destroy(); 
     165        MessageDisplay.Add("Pääsit kentän!"); 
     166    } 
     167 
     168 
     169 
    108170} 
  • 2016/24/MikoA/LukanSeikkailu/LukanSeikkailu/LukanSeikkailu/LukanSeikkailu.csproj.Debug.cachefile

    r7300 r7335  
    55Content\kylpytakkiupng.xnb 
    66Content\TaustaPuisto.xnb 
     7Content\Vihollinen.xnb 
     8Content\Avain.xnb 
     9Content\AvaimenreikÀ.xnb 
     10Content\kylpytakkiVARJO.xnb 
  • 2016/24/MikoA/LukanSeikkailu/LukanSeikkailu/LukanSeikkailu/obj/x86/Debug/ContentPipeline-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}.xml

    r7300 r7335  
    3636      <Options>None</Options> 
    3737      <Output>C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\kentta1.xnb</Output> 
    38       <Time>2016-06-14T14:53:34.3308399+03:00</Time> 
     38      <Time>2016-06-15T14:41:15.164916+03:00</Time> 
    3939    </Item> 
    4040    <Item> 
     
    5555      <Output>C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\TaustaPuisto.xnb</Output> 
    5656      <Time>2016-06-14T14:43:16.3328789+03:00</Time> 
     57    </Item> 
     58    <Item> 
     59      <Source>Vihollinen.png</Source> 
     60      <Name>Vihollinen</Name> 
     61      <Importer>TextureImporter</Importer> 
     62      <Processor>TextureProcessor</Processor> 
     63      <Options>None</Options> 
     64      <Output>C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\Vihollinen.xnb</Output> 
     65      <Time>2016-06-15T10:01:21.62635+03:00</Time> 
     66    </Item> 
     67    <Item> 
     68      <Source>Avain.png</Source> 
     69      <Name>Avain</Name> 
     70      <Importer>TextureImporter</Importer> 
     71      <Processor>TextureProcessor</Processor> 
     72      <Options>None</Options> 
     73      <Output>C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\Avain.xnb</Output> 
     74      <Time>2016-06-14T11:40:55.1159377+03:00</Time> 
     75    </Item> 
     76    <Item> 
     77      <Source>Avaimenreikä.png</Source> 
     78      <Name>Avaimenreikä</Name> 
     79      <Importer>TextureImporter</Importer> 
     80      <Processor>TextureProcessor</Processor> 
     81      <Options>None</Options> 
     82      <Output>C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\Avaimenreikä.xnb</Output> 
     83      <Time>2016-06-15T13:34:49.2168066+03:00</Time> 
     84    </Item> 
     85    <Item> 
     86      <Source>kylpytakkiVARJO.png</Source> 
     87      <Name>kylpytakkiVARJO</Name> 
     88      <Importer>TextureImporter</Importer> 
     89      <Processor>TextureProcessor</Processor> 
     90      <Options>None</Options> 
     91      <Output>C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\kylpytakkiVARJO.xnb</Output> 
     92      <Time>2016-06-15T14:48:27.1867811+03:00</Time> 
    5793    </Item> 
    5894    <BuildSuccessful>true</BuildSuccessful> 
  • 2016/24/MikoA/LukanSeikkailu/LukanSeikkailu/LukanSeikkailu/obj/x86/Debug/LukanSeikkailu.csproj.FileListAbsolute.txt

    r7300 r7335  
    1313C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\kylpytakkiupng.xnb 
    1414C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\TaustaPuisto.xnb 
     15C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\Vihollinen.xnb 
     16C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\Avain.xnb 
     17C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\AvaimenreikÀ.xnb 
     18C:\MyTemp\MikoA\LukanSeikkailu\LukanSeikkailu\LukanSeikkailu\bin\x86\Debug\Content\kylpytakkiVARJO.xnb 
  • 2016/24/MikoA/LukanSeikkailu/LukanSeikkailu/LukanSeikkailu/obj/x86/Debug/cachefile-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}-targetpath.txt

    r7300 r7335  
    55Content\kylpytakkiupng.xnb 
    66Content\TaustaPuisto.xnb 
     7Content\Vihollinen.xnb 
     8Content\Avain.xnb 
     9Content\AvaimenreikÀ.xnb 
     10Content\kylpytakkiVARJO.xnb 
  • 2016/24/MikoA/LukanSeikkailu/LukanSeikkailu/LukanSeikkailuContent/LukanSeikkailuContent.contentproj

    r7300 r7335  
    8888    </Compile> 
    8989  </ItemGroup> 
     90  <ItemGroup> 
     91    <Compile Include="Avain.png"> 
     92      <Name>Avain</Name> 
     93      <Importer>TextureImporter</Importer> 
     94      <Processor>TextureProcessor</Processor> 
     95    </Compile> 
     96  </ItemGroup> 
     97  <ItemGroup> 
     98    <Compile Include="Avaimenreikä.png"> 
     99      <Name>Avaimenreikä</Name> 
     100      <Importer>TextureImporter</Importer> 
     101      <Processor>TextureProcessor</Processor> 
     102    </Compile> 
     103  </ItemGroup> 
     104  <ItemGroup> 
     105    <Compile Include="kylpytakkiVARJO.png"> 
     106      <Name>kylpytakkiVARJO</Name> 
     107      <Importer>TextureImporter</Importer> 
     108      <Processor>TextureProcessor</Processor> 
     109    </Compile> 
     110  </ItemGroup> 
    90111  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    91112  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2016/24/MikoA/LukanSeikkailu/LukanSeikkailu/LukanSeikkailuContent/kentta1.txt

    r7300 r7335  
    1  
    2    ##  ##  ##  ## 
    3  
    4  *    *       *   * 
    5  ##  ##  ##  ##  ## 
    6  
    7         N 
    8 ###################### 
     1##       #         #                      ## 
     2## +                                      ## 
     3##   # *    #     *  *  ##  *             ## 
     4################################    ###   ## 
     5##                      ######    ##     ### 
     6##            &          #####            ## 
     7##      *  *      *   *   ######     #  * ## 
     8##   ##################    ###    ##    #### 
     9##  #                    * ######         ## 
     10##      *                #######     #    ## 
     11###     ##         *    *    ### *# *     ## 
     12##            #   ##   ##      ######   #### 
     13##  *    *                *               ## 
     14## ###  ######        ##  ##          ##  ## 
     15##               ##          ###          ## 
     16##        N      ##  *    *   #   *  *  * ## 
     17############################################ 
Note: See TracChangeset for help on using the changeset viewer.