Changeset 4900 for 2014/23


Ignore:
Timestamp:
2014-06-06 12:35:02 (6 years ago)
Author:
jotapoti
Message:
 
Location:
2014/23/TuukkaJ/ManaaniPage/ManaaniPage
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • 2014/23/TuukkaJ/ManaaniPage/ManaaniPage/ManaaniPage/ManaaniPage.cs

    r4877 r4900  
    2525    public override void Begin() 
    2626    { 
    27         // TODO Kuolemisen jälkeen alkaa uudestaan 
    2827        // TODO Kaikki viholliset pitää tappaa jotta voittaa ja sen jälkeen pääsee toiselle tasolle 
    2928        // TODO Uusia kenttiä 
     
    3534        // TODO Kun tiput laavaan niin ottaa sekunnissa 3hp 
    3635        // TODO Kun otat vahainkoa vihollisesta 1hp 
    37  
    38         Gravity = new Vector(0, -2000); 
     36        LuoAlkuvalikko(); 
     37         
     38    } 
     39    void LuoAlkuvalikko() 
     40    { 
     41        MultiSelectWindow alkuValikko = new MultiSelectWindow("ManaaniPage", "Start game", "High Score", "Exit"); 
     42        Add(alkuValikko); 
     43        alkuValikko.AddItemHandler(0, AloitaAlusta); 
     44        alkuValikko.AddItemHandler(2, Exit); 
     45    } 
     46    void AloitaAlusta() 
     47    { 
     48        ClearAll(); 
    3949        LuoKentta(); 
    4050        LisaaNappaimet(); 
     51        Gravity = new Vector(0, -2000); 
    4152        Mouse.IsCursorVisible = true; 
    42         MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko","Start game", "High Score", "Exit"); 
    43         Add(alkuValikko); 
    4453        Camera.Follow(pelaaja); 
    4554        Camera.Zoom(3); 
     
    7180        pelaaja.Image = kuvapelaaja; 
    7281        AddCollisionHandler(pelaaja, "lava", TormaaLavaan); 
     82        AddCollisionHandler(pelaaja, "hemmo", TormaaHemmoon); 
    7383        Add(pelaaja); 
    7484        pelaajan1Ase = new AssaultRifle(30, 10); 
     
    8090        pelaajan1Ase.ProjectileCollision = AmmusOsui; 
    8191 
    82         pelaaja.Add(pelaajan1Ase); 
    83  
     92        pelaaja.Weapon = pelaajan1Ase; 
     93        pelaaja.Destroyed += delegate { pelaaja.Weapon = null; }; 
    8494    } 
    8595 
     
    126136        hemmo.Tag = "hemmo"; 
    127137        Add(hemmo); 
    128     } 
     138        PlatformWandererBrain tasoAivot = new PlatformWandererBrain(); 
     139        tasoAivot.Speed = 100; 
     140        tasoAivot.TriesToJump = true; 
     141        tasoAivot.FallsOffPlatforms = true; 
     142 
     143        hemmo.Brain = tasoAivot; 
     144        hemmo.Destroyed += PeliPaattyy; 
     145    } 
     146 
     147    void PeliPaattyy() 
     148    { 
     149        ClearAll(); 
     150        Label l = new Label("Voitit pelin."); 
     151        Add(l); 
     152    } 
     153 
    129154    void LisaaNappaimet() 
    130155    { 
     
    134159        Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja, nopeus); 
    135160        Keyboard.Listen(Key.Space, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja, hyppyNopeus); 
    136         Keyboard.Listen(Key.LeftShift, ButtonState.Down, AmmuAseella, "Ammu", pelaajan1Ase); 
     161        Keyboard.Listen(Key.LeftShift, ButtonState.Down, AmmuAseella, "Ammu", pelaaja); 
    137162        Mouse.ListenMovement(0.1, Tahtaa, "Tähtää aseella"); 
    138163 
     
    162187        ammus.Destroy(); 
    163188    } 
    164     void TormaaLavaan(PhysicsObject pelaaja,PhysicsObject lava) 
    165         { 
    166             pelaaja.Destroy(); 
    167         } 
    168     void AmmuAseella(AssaultRifle ase) 
    169     { 
    170         PhysicsObject ammus = ase.Shoot(); 
     189    void TormaaLavaan(PhysicsObject pelaaja, PhysicsObject lava) 
     190    { 
     191        pelaaja.Destroy(); 
     192        PeliLoppui(); 
     193    } 
     194    void TormaaHemmoon(PhysicsObject pelaaja, PhysicsObject hemmo) 
     195    { 
     196        pelaaja.Destroy(); 
     197        PeliLoppui(); 
     198    } 
     199    void AmmuAseella(PeliHahmo pelaaja) 
     200    { 
     201        if (pelaaja.Weapon == null) return; 
     202 
     203        PhysicsObject ammus = pelaaja.Weapon.Shoot(); 
    171204 
    172205        if (ammus != null) 
     
    182215        pelaajan1Ase.Angle = suunta.Angle; 
    183216    } 
     217    
     218    void PeliLoppui() 
     219    { 
     220        LuoAlkuvalikko(); 
     221    } 
     222     
    184223} 
     224 
    185225class Vihu : PlatformCharacter 
    186226{ 
Note: See TracChangeset for help on using the changeset viewer.