Changeset 3276 for 2012/26/TimoL


Ignore:
Timestamp:
2012-06-27 14:58:51 (8 years ago)
Author:
tijamalu
Message:

Talletus.

Location:
2012/26/TimoL
Files:
4 added
3 edited

Legend:

Unmodified
Added
Removed
  • 2012/26/TimoL/Protect The Idiot/Protect The Idiot/Protect The Idiot/Protect_The_Idiot.cs

    r3229 r3276  
    99public class Protect_The_Idiot : PhysicsGame 
    1010{ 
    11     const double nopeus = 200; 
     11 
     12   
     13              
     14              
     15     
     16     
     17     
     18     
     19     
     20    DoubleMeter Elämämittari; 
     21     
     22    const double nopeus = 250; 
    1223    const double hyppyNopeus = 1000; 
    1324    const int RUUDUN_KOKO = 40; 
    1425 
    15     PlatformCharacter pelaaja1; 
    16  
     26    PlatformCharacter Player1; 
     27     
     28    PlatformCharacter Vihu1; 
    1729    Image pelaajanKuva = LoadImage("hahmo"); 
    18     
    19     SoundEffect maaliAani = LoadSoundEffect("maali"); 
     30    Image VihunKuva = LoadImage("boss"); 
     31   
    2032 
    2133    public override void Begin() 
    2234    { 
    23         Gravity = new Vector(0, -2500); 
     35  
     36         
     37Gravity = new Vector(0, -2500); 
    2438 
    2539        LuoKentta(); 
    2640        LisaaNappaimet(); 
    2741 
    28         Camera.Follow(pelaaja1); 
     42        Camera.Follow(Player1); 
    2943        Camera.ZoomFactor = 1.2; 
    3044        Camera.StayInLevel = true; 
    31     } 
     45      Elämämittari = new DoubleMeter(100); 
     46      Elämämittari.MaxValue = 100; 
     47      ProgressBar ElämäPalkki = new ProgressBar (150, 10); 
     48      ElämäPalkki.BindTo(Elämämittari); 
     49      Add(ElämäPalkki); 
     50     
     51     ElämäPalkki.X = Screen.Right - 150; 
     52     ElämäPalkki.Y = Screen.Top - 20; 
     53     ElämäPalkki.Angle = Angle.RightAngle; 
     54     ElämäPalkki.BarColor = Color.Green; 
     55     ElämäPalkki.BorderColor = Color.White;   
     56     ElämäPalkki.Angle = Angle.FromDegrees(90); 
     57      
     58      
     59       
     60    } 
     61    void VahennaVoimia() 
     62    {     
     63       Elämämittari.Value--;   
     64    }   
     65         
     66        
     67         
     68      void VoimaLoppui(double mittarinArvo) 
     69       
     70      { 
     71      MessageDisplay.Add("you are dead"); 
     72      } 
     73 
     74 
     75 
     76      
     77       
    3278 
    3379    void LuoKentta() 
     
    3581        TileMap kentta = TileMap.FromLevelAsset("kentta1"); 
    3682        kentta.SetTileMethod('#', LisaaTaso); 
    37          
     83        kentta.SetTileMethod('V', LisaaVihu); 
    3884        kentta.SetTileMethod('N', LisaaPelaaja); 
     85         
     86        
    3987        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    4088        Level.CreateBorders(); 
     
    5098    } 
    5199 
     100     
     101     
     102     
     103     
    52104    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    53105    { 
    54         pelaaja1 = new PlatformCharacter(leveys, korkeus); 
    55         pelaaja1.Position = paikka; 
    56         pelaaja1.Mass = 4.0; 
    57         pelaaja1.Image = pelaajanKuva; 
    58         
    59         Add(pelaaja1); 
    60     } 
    61  
     106        Player1 = new PlatformCharacter(leveys, korkeus); 
     107      Player1.Position = paikka; 
     108        Player1.Mass = 4.0; 
     109        Player1.Image = pelaajanKuva; 
     110        Player1.Weapon = new AssaultRifle(50, 15); 
     111        Player1.Weapon.Ammo.Value = 500; 
     112        Player1.Weapon.ProjectileCollision = AmmusOsui; 
     113        Player1.CollisionIgnoreGroup = 1; 
     114        Add(Player1); 
     115    } 
     116 
     117 
     118    
     119     
     120     
     121    void LisaaVihu(Vector paikka, double leveys, double korkeus) 
     122    { 
     123        Vihu1 = new PlatformCharacter(leveys* 10, korkeus* 10); 
     124        Vihu1.Position = paikka; 
     125        Vihu1.Mass = 8.0; 
     126        Vihu1.Image = VihunKuva; 
     127 
     128         
     129        Add(Vihu1); 
     130 
     131    } 
     132 
     133     
     134     
     135     
     136     
     137     
     138     
     139     
     140     
     141     
     142     
     143     
    62144    void LisaaNappaimet() 
    63145    { 
     
    66148        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    67149 
    68         Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    69         Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 
    70         Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
    71  
     150        Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", Player1, -nopeus); 
     151        Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", Player1, nopeus); 
     152        Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", Player1, hyppyNopeus); 
     153 
     154        Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu"); 
    72155        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    73156 
    74         ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    75         ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
    76         ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
     157        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", Player1, -nopeus); 
     158        ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", Player1, nopeus); 
     159        ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", Player1, hyppyNopeus); 
    77160 
    78161        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
     162 
     163        Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, AloitaPeli, null); 
     164        Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, ParhaatPisteet, null); 
     165        Mouse.ListenOn(kohta3, MouseButton.Left, ButtonState.Pressed, Exit, null); 
     166 
     167        Mouse.ListenMovement(1.0, ValikossaLiikkuminen, null); 
     168    
    79169    } 
    80170 
     
    89179    } 
    90180 
    91     void TormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 
    92     { 
    93         maaliAani.Play(); 
    94        
     181    void AmmuAseella() 
     182    { 
     183        PhysicsObject ammus = Player1.Weapon.Shoot(); 
     184        if (ammus != null) 
     185        { 
     186            ammus.CollisionIgnoreGroup = 1; 
     187            ammus.Size *= 3; 
     188        } 
     189         
     190         
     191    } 
     192 
     193    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
     194    { 
     195        ammus.Destroy(); 
     196        Explosion rajahdys = new Explosion(10); 
     197        rajahdys.Position = ammus.Position; 
     198        Add(rajahdys); 
     199 
     200    } 
     201 
     202    List<Label> valikonKohdat; 
     203 
     204    void Valikko() 
     205    { 
     206        ClearAll(); // Tyhjennetään kenttä kaikista peliolioista 
     207 
     208        valikonKohdat = new List<Label>(); // Alustetaan lista, johon valikon kohdat tulevat 
     209 
    95210        
    96     } 
     211         
     212         
     213         
     214        Label kohta1 = new Label("Aloita uusi peli");  // Luodaan uusi Label-olio, joka toimii uuden pelin aloituskohtana 
     215        kohta1.Position = new Vector(0, 40);  // Asetetaan valikon ensimmäinen kohta hieman kentän keskikohdan yläpuolelle 
     216        valikonKohdat.Add(kohta1);  // Lisätään luotu valikon kohta listaan jossa kohtia säilytetään 
     217        Label kohta2 = new Label("Parhaat pisteet"); 
     218        kohta2.Position = new Vector(0, 0); 
     219        valikonKohdat.Add(kohta2); 
     220 
     221        Label kohta3 = new Label("Lopeta peli"); 
     222        kohta3.Position = new Vector(0, -40); 
     223        valikonKohdat.Add(kohta3); 
     224        // Lisätään kaikki luodut kohdat peliin foreach-silmukalla 
     225        foreach (Label valikonKohta in valikonKohdat) 
     226        { 
     227            Add(valikonKohta); 
     228        } 
     229    } 
     230 
     231    void ValikossaLiikkuminen(AnalogState hiirenTila) 
     232    { 
     233        foreach (Label kohta in valikonKohdat) 
     234        { 
     235            if (Mouse.IsCursorOn(kohta)) 
     236            { 
     237                kohta.TextColor = Color.Red; 
     238            } 
     239            else 
     240            { 
     241                kohta.TextColor = Color.Black; 
     242            } 
     243 
     244        } 
     245 
     246    } 
     247 
     248    void AloitaPeli() 
     249    { 
     250    } 
     251 
     252    void ParhaatPisteet() 
     253    { 
     254    } 
     255 
     256    void kohta1() 
     257    { 
     258    } 
     259 
     260    void kohta2() 
     261    { 
     262    } 
     263 
     264    void kohta3() 
     265    { 
     266    } 
     267 
     268 
     269 
     270 
     271 
    97272} 
  • 2012/26/TimoL/Protect The Idiot/Protect The Idiot/Protect The IdiotContent/Protect The IdiotContent.contentproj

    r3229 r3276  
    4545  </ItemGroup> 
    4646  <ItemGroup> 
    47     <Compile Include="maali.wav"> 
    48       <Name>maali</Name> 
    49       <Importer>WavImporter</Importer> 
    50       <Processor>SoundEffectProcessor</Processor> 
    51     </Compile> 
    5247    <Compile Include="kentta1.txt"> 
    5348      <Name>kentta1</Name> 
     
    6358    </Compile> 
    6459  </ItemGroup> 
     60  <ItemGroup> 
     61    <Compile Include="boss.png"> 
     62      <Name>boss</Name> 
     63      <Importer>TextureImporter</Importer> 
     64      <Processor>TextureProcessor</Processor> 
     65    </Compile> 
     66  </ItemGroup> 
     67  <ItemGroup> 
     68    <Compile Include="Piikki.png"> 
     69      <Name>Piikki</Name> 
     70      <Importer>TextureImporter</Importer> 
     71      <Processor>TextureProcessor</Processor> 
     72    </Compile> 
     73  </ItemGroup> 
    6574  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    6675  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2012/26/TimoL/Protect The Idiot/Protect The Idiot/Protect The IdiotContent/kentta1.txt

    r3229 r3276  
    22    
    33           
    4                                                                                              ###################################################################################################################################################################### 
    5                                                                                            ######################################################################################################################################################################## 
    6                                                                                         #  ######################################################################################################################################################################## 
    7                                                                                      #  #  ######################################################################################################################################################################## 
    8                                                                                      #  #  ############################################### 
    9                                                                                   #  #  #  ######################################## 
    10                                                                                #  #  #  #  ##################################### 
    11                                     #              #                         # #  #  #  #  ######################################                                                                                   
    12                                     #              #                         # #  #  #  #  #######################################                                                          
    13                           ########################################################################################################################################################################### 
     4                                                                                            
     5                                                                                            
     6  
     7                                                                                                                                      
     8                                                                                        ##########################################    
     9                                                                                     #  #                                        # 
     10                                                                                     #  #                                        #  # 
     11                                                                                  #  #  #                                        #  #  # 
     12                                                                               #  #  #  #                                        #  #  #  #  
     13                                    #              #                        #  #  #  #  #                                        #  #  #  #  #                                                                                    
     14                                    #              #           V             #  #  #  #  #                                        #  #  #  #  #                                                                                                                                       
     15                          ############################################################################################################################################################################################################################################################### 
    1416                          ########################################################################################################################################################################### 
    1517        N                 ########################################################################################################################################################################### 
Note: See TracChangeset for help on using the changeset viewer.