Ignore:
Timestamp:
2017-03-18 14:48:46 (2 years ago)
Author:
sieerinn
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2016/koodauskerho/VilleH/Tasohyppelypeli/Tasohyppelypeli/Tasohyppelypeli/ninjakissanhikileikit.cs

    r8402 r8415  
    1818    Image piikkikuva = LoadImage("piikki"); 
    1919    SoundEffect maaliAani = LoadSoundEffect("maali"); 
    20  
     20    Image shurikenkuva = LoadImage("shuriken."); 
    2121    public override void Begin() 
    2222    { 
     
    2525        LuoKentta(); 
    2626        LisaaNappaimet(); 
     27        LuoPistelaskuri(); 
    2728 
    2829        Camera.Follow(pelaaja1); 
     
    8182        AddCollisionHandler(pelaaja1, "piikki", tormaapiikkiin); 
    8283        Add(pelaaja1); 
    83  
    84       
    85  
    86     } 
    87     
     84        //pelaaja1 on PlatformCharacter-tyyppinen 
     85        pelaaja1.Weapon = new AssaultRifle(30, 10); 
     86 
     87        //Ammusten määrä aluksi: 
     88        pelaaja1.Weapon.Ammo.Value = 1000; 
     89 
     90        //Mitä tapahtuu kun ammus osuu johonkin? 
     91        pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 
     92 
     93        pelaaja1.Weapon.IsVisible = false; 
     94 
     95    } 
     96    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
     97    { 
     98        ammus.Destroy(); 
     99    } 
    88100 
    89101    void LisaaNappaimet() 
     
    102114        ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1); 
    103115        Keyboard.Listen(Key.F5, ButtonState.Pressed, Konsoli, ""); 
    104  
    105         
    106     } 
    107  
     116        Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaaja1); 
     117 
     118    } 
     119    void AmmuAseella(PlatformCharacter pelaaja) 
     120    { 
     121        if (pisteLaskuri.Value > 0) 
     122        { 
     123            PhysicsObject ammus = pelaaja.Weapon.Shoot(); 
     124 
     125            if (ammus != null) 
     126            { 
     127                ammus.Size *= 2; 
     128                ammus.Image = shurikenkuva; 
     129                //ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 
     130                pisteLaskuri.Value--; 
     131            } 
     132        } 
     133    } 
    108134    void Konsoli() 
    109135    { 
     
    157183        pelaaja1.Destroy(); 
    158184    } 
    159  
     185    IntMeter pisteLaskuri; 
     186 
     187    void LuoPistelaskuri() 
     188    { 
     189        pisteLaskuri = new IntMeter(15); 
     190 
     191        Label pisteNaytto = new Label(); 
     192        pisteNaytto.X = Screen.Left + 100; 
     193        pisteNaytto.Y = Screen.Top - 100; 
     194        pisteNaytto.TextColor = Color.Black; 
     195        pisteNaytto.Color = Color.White; 
     196 
     197        pisteNaytto.BindTo(pisteLaskuri); 
     198        Add(pisteNaytto); 
     199 
     200    } 
    160201} 
    161  
Note: See TracChangeset for help on using the changeset viewer.