Changeset 3888


Ignore:
Timestamp:
2012-11-17 16:11:46 (11 years ago)
Author:
jypeleht
Message:
 
Location:
2012/10-20/NicoA-K/Tasohyppelypeli1
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • 2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.cs

    r3877 r3888  
    1717    PlatformCharacter pelaaja1; 
    1818    //PhysicsObject pelaaja1; 
     19 
     20    List<Label> valikonKohdat; 
    1921 
    2022    Image pelaajanKuva = LoadImage("hhaamu"); 
     
    2729    Image trollikarkki = LoadImage ("trollikarkki"); 
    2830    Image lippu = LoadImage("lippu"); 
     31    Image ammuus = LoadImage("ammus"); 
    2932 
    3033    SoundEffect maaliAani = LoadSoundEffect("maali"); 
     
    3437    public override void Begin() 
    3538    { 
     39        IsMouseVisible = true; 
     40 
     41        MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", 
     42"Aloita peli", "Ohjeet", "Lopeta"); 
     43 
     44        Add(alkuValikko); 
     45 
     46        alkuValikko.AddItemHandler(0, AloitaPeli); 
     47        alkuValikko.AddItemHandler(1, Ohjeet); 
     48        alkuValikko.AddItemHandler(2, Exit); 
     49    } 
     50 
     51    void Ohjeet() 
     52    { 
     53 
     54    } 
     55 
     56    void Valikko() 
     57    { 
     58        ClearAll(); 
     59 
     60        valikonKohdat = new List<Label>(); 
     61 
     62        Label kohta1 = new Label("Aloita peli"); 
     63        kohta1.Position = new Vector(0, 40); 
     64        valikonKohdat.Add(kohta1); 
     65 
     66        Label kohta2 = new Label("Ohjeet"); 
     67        kohta2.Position = new Vector(0, 0); 
     68        valikonKohdat.Add(kohta2); 
     69 
     70        Label kohta3 = new Label("Lopeta peli"); 
     71        kohta3.Position = new Vector(0, -40); 
     72        valikonKohdat.Add(kohta3); 
     73 
     74        foreach (Label valikonKohta in valikonKohdat) 
     75        { 
     76            Add(valikonKohta); 
     77        } 
     78 
     79        Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, AloitaPeli, null); 
     80        Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, Ohjeet, null); 
     81        Mouse.ListenOn(kohta3, MouseButton.Left, ButtonState.Pressed, Exit, null); 
     82        Mouse.ListenMovement(1.0, ValikossaLiikkuminen, null); 
     83 
     84    } 
     85 
     86    void AloitaPeli() 
     87    { 
     88        IsMouseVisible = false; 
     89 
    3690        Gravity = new Vector(0, -1000); 
    3791 
     
    57111        kentta.SetTileMethod('K', LisaaTrollikarkki); 
    58112        kentta.SetTileMethod('M', LisaaTrolleri); 
     113        kentta.SetTileMethod('L', LisaaLippu); 
    59114 
    60115        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    61116        Level.CreateBorders(); 
    62         Level.Background.CreateGradient(Color.White, Color.SkyBlue); 
     117        Level.Background.CreateGradient(Color.Gray, Color.White); 
    63118    } 
    64119 
     
    88143        pelaaja1.Mass = 4.0; 
    89144        pelaaja1.Image = pelaajanKuva; 
     145 
     146        pelaaja1.Weapon = new AssaultRifle (30, 10) ; 
     147        pelaaja1.Weapon.Ammo.Value = 1000; 
     148        pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 
     149        pelaaja1.Weapon.IsVisible = false; 
     150 
    90151        AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
    91152        AddCollisionHandler(pelaaja1, "pahis", TormaaPahikseen); 
     
    103164 
    104165        Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    105         Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 
    106         Keyboard.Listen(Key.Up, ButtonState.Down, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
     166        Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 
     167        Keyboard.Listen(Key.Up, ButtonState.Down, Hyppaa, "Pelaaja lentää", pelaaja1, hyppyNopeus); 
     168 
     169        Keyboard.Listen(Key.A, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
     170        Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 
     171        Keyboard.Listen(Key.W, ButtonState.Down, Hyppaa, "Pelaaja lentää", pelaaja1, hyppyNopeus); 
     172 
     173        Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaaja1); 
    107174 
    108175        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
     
    110177        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    111178        ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
    112         ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
     179        ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja lentää", pelaaja1, hyppyNopeus); 
     180 
    113181 
    114182        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
     
    167235    void TormaaPahikseen(PhysicsObject hahmo, PhysicsObject pahis) 
    168236    { 
    169         //maaliAani.Play(); 
    170237        MessageDisplay.Add("AU!"); 
    171238        pisteLaskuri.Value -= 1; 
     
    251318    void LisaaTrolleri(Vector paikka, double leveys, double korkeus) 
    252319    { 
    253         PhysicsObject trolleri = PhysicsObject.CreateStaticObject(200, 200); 
    254         trolleri.IgnoresCollisionResponse = true; 
     320        Trolleri trolleri = new Trolleri(200, 200); 
     321        trolleri.IgnoresCollisionResponse = false; 
     322        trolleri.IgnoresGravity = true; 
    255323        trolleri.Position = paikka; 
    256324        trolleri.Image = trollikuva; 
    257325        trolleri.Tag = "trolleri"; 
    258326        Add(trolleri); 
     327 
     328 
     329        RandomMoverBrain satunnaisAivot = new RandomMoverBrain(100); 
     330        satunnaisAivot.Active = true; 
     331        satunnaisAivot.ChangeMovementSeconds = 3; 
     332        trolleri.Brain = satunnaisAivot; 
    259333    } 
    260334 
     
    262336    void TormaaTrolleriin(PhysicsObject hahmo, PhysicsObject trolleri) 
    263337    { 
    264         //maaliAani.Play(); 
    265338        MessageDisplay.Add("GAME OVER!"); 
    266         pisteLaskuri.Value -= 10000; 
     339        pisteLaskuri.Value -= 10000;        
     340    } 
     341 
     342    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
     343    { 
     344        if (kohde.Tag.Equals("tahti")) return; 
     345        if (kohde.Tag.Equals("trolleri")) AmmusOsuiTrolleriin(ammus, (Trolleri)kohde); 
     346        ammus.Destroy(); 
     347    } 
     348     
     349    void AmmusOsuiTrolleriin(PhysicsObject ammus, Trolleri kohde) 
     350    { 
     351        kohde.elamaLaskuri.Value--; 
     352    } 
     353 
     354    void AmmuAseella(PlatformCharacter pelaaja) 
     355    { 
     356        PhysicsObject ammus = pelaaja.Weapon.Shoot(); 
     357 
     358 
     359        if (ammus != null) 
     360        { 
     361            ammus.Size *= 3; 
     362            ammus.Image = ammuus; 
     363            ammus.MaximumLifetime = TimeSpan.FromSeconds(1.0); 
     364        } 
     365 
     366    } 
     367 
     368    class Trolleri : PhysicsObject 
     369    { 
     370        public IntMeter elamaLaskuri = new IntMeter(10, 0, 100); 
     371        //public int Elamat = 5; 
     372 
     373        public Trolleri(double leveys, double korkeus) 
     374            : base(leveys, korkeus) 
     375        { 
     376            elamaLaskuri.LowerLimit += delegate { this.Destroy(); }; 
     377        } 
     378 
     379    } 
     380 
     381    void ValikossaLiikkuminen(AnalogState hiirenTila) 
     382    { 
     383        foreach (Label kohta in valikonKohdat) 
     384        { 
     385            if (Mouse.IsCursorOn(kohta)) 
     386            { 
     387                kohta.TextColor = Color.Red; 
     388            } 
     389            else 
     390            { 
     391                kohta.TextColor = Color.Black; 
     392            } 
     393 
     394        } 
     395 
     396    } 
     397 
     398    void LisaaLippu(Vector paikka, double leveys, double korkeus) 
     399    { 
     400        PhysicsObject Lippu = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     401        Lippu.IgnoresCollisionResponse = true; 
     402        Lippu.Position = paikka; 
     403        Lippu.Image = lippu; 
     404        Lippu.Tag = "lippu"; 
     405        Add(Lippu); 
    267406    } 
    268407 
  • 2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.csproj.Debug.cachefile

    r3877 r3888  
    1212Content\lippu.xnb 
    1313Content\kentta1.xnb 
     14Content\ammus.xnb 
  • 2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1Content/Tasohyppelypeli1Content.contentproj

    r3877 r3888  
    122122    </Compile> 
    123123  </ItemGroup> 
    124   <ItemGroup /> 
     124  <ItemGroup> 
     125    <Compile Include="ammus.png"> 
     126      <Name>ammus</Name> 
     127      <Importer>TextureImporter</Importer> 
     128      <Processor>TextureProcessor</Processor> 
     129    </Compile> 
     130  </ItemGroup> 
    125131  <ItemGroup> 
    126132    <Compile Include="lippu.png"> 
  • 2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1Content/kentta1.txt

    r3877 r3888  
    11####################################SSS########SSSS####SSSS####SSS########################SSSSS#########                
    2 #   #   #P        #TTTT    T  K      T  TTT     TT      TT      T      T   T   T   T   T   T T                          
    3 #   *   #P        #   TTTT       TTTTT      TT       TT  T   T     TTT   T   T   T   T   T   T                        
     2#   #   #P        #TTTT    T  K      T  TTT     TT      TT      T      T   T   T   T   T   T T      #                   
     3#   *   #P        #   TTTT       TTTTT      TT       TT  T   T     TTT   T   T   T   T   T   T      #                 
    44## ## * #P  PP    #         TTT      T           T  TTT T   T  T T   TT T T T TTTTTTTTTT TTTTTTTTTTT#                   
    55#   #   #P   P    #T          T       T   TTTTT     T      TT     TT                     T          #                        
     
    1212# #### ##   P     #      T      TTT TT   T  T     TT  T  TTT  TTT     T T                           #                    
    1313#   # * ?   P     #   # TTTTTTT      T  TTTT   T  T  T TT  T     TT  TT  T                          #                   
    14 # N #   #   P         #       TTTTTTTTTTT     T      T K      T     T                               #                    
    15 ###S######S####TT######################################T#####TT########  #########TTTTTTT##########T#                    
    16 # *************************************    #                                            T 
    17 #                                          P*   *  *  *  *  *  *  *  *  *  *  *  *  *   T      
    18 # *************************************    #P   P  P  P  P  P  P  P  P  P  P  P  P  P   T   
    19 #                                          P*   *  *  *  *  *  *  *  *  *  *  *  *  *   T  
    20 # **************************************   #                                            T 
    21 #PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT TTTTT 
     14#LN #   #   P         #       TTTTTTTTTTT     T      T K      T     T                               #                    
     15###S######S####TT######################################T#####TT########  #########TTTTTT#############                    
     16# *************************************    S                                            # 
     17#                                          P*   *  *  *  *  *  *  *  *  *  *  *  *  *   #      
     18# *************************************    #P   P  P  P  P  P  P  P  P  P  P  P  P  P   #   
     19#                                          P*   *  *  *  *  *  *  *  *  *  *  *  *  *   #  
     20# **************************************   #                                            # 
     21#PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT####### 
    2222#*********************************************************************************T   T    
    2323#*********************************************************************************TT  T      
  • 2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1Content/obj/x86/Debug/Tasohyppelypeli1Content.contentproj.FileListAbsolute.txt

    r3877 r3888  
    44C:\Users\Nico\Desktop\Tasohyppely\Tasohyppelypeli1\Tasohyppelypeli1Content\obj\x86\Debug\ResolveAssemblyReference.cache 
    55E:\Tasohyppely\Tasohyppelypeli1\Tasohyppelypeli1Content\obj\x86\Debug\ResolveAssemblyReference.cache 
     6C:\MyTemp\ohjelmointikerho\NicoA-K\Tasohyppelypeli1\Tasohyppelypeli1\Tasohyppelypeli1Content\obj\x86\Debug\ResolveAssemblyReference.cache 
Note: See TracChangeset for help on using the changeset viewer.