Changeset 5351 for 2014/27/ArttuR


Ignore:
Timestamp:
2014-07-03 13:18:57 (5 years ago)
Author:
arosrinn
Message:
 
Location:
2014/27/ArttuR/Peli_1/Peli_1
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • 2014/27/ArttuR/Peli_1/Peli_1/Peli_1/Peli_1/PeliHahmo.cs

    r5333 r5351  
    1616        Elamat = elamia; 
    1717    } 
     18 
    1819} 
  • 2014/27/ArttuR/Peli_1/Peli_1/Peli_1/Peli_1/PeliVihu.cs

    r5279 r5351  
    99class PeliVihu : PhysicsObject 
    1010{ 
    11     private IntMeter i = new IntMeter(3, 0, 3); 
    12     public IntMeter j { get { return i; } } 
     11    private IntMeter i = new IntMeter(8, 0, 8); 
     12    public IntMeter j { get { return i; } set { i = value;} } 
    1313 
    1414    public PeliVihu(double leveys, double korkeus) 
     
    1717        i.LowerLimit += delegate { this.Destroy(); }; 
    1818    } 
     19 
     20    public void MuutaElamia(int maara) 
     21    { 
     22        i.MaxValue = maara; 
     23        i.Value = maara; 
     24    } 
    1925} 
  • 2014/27/ArttuR/Peli_1/Peli_1/Peli_1/Peli_1/Peli_1.cs

    r5333 r5351  
    1111    PeliHahmo pelaaja; 
    1212    PeliVihu hirvio; 
     13    List<PeliVihu> vihut = new List<PeliVihu>(); 
    1314    PhysicsObject ammus; 
    1415    PhysicsObject avain; 
     
    3132 
    3233    ProgressBar elamaPalkki; 
     34    IntMeter ammusMittari; 
    3335    DoubleMeter elamaLaskuri; 
    3436 
     
    4749 
    4850        LuoPelaaja(-1550, 150); 
    49         LuoPaketti(1300, 150); 
     51        LuoPaketti(0, 1000); 
    5052        LuoHirvio(500, 0); 
    5153        LuoHirvio(-1000, 150); 
     
    5557        LuoHirvio(0, -800); 
    5658        LuoAvain(1500, -1200); 
     59        LuoAmmusMittari(); 
    5760        LuoElamaLaskuri(); 
    5861        //LuoValo(); 
    5962        LisaaOhjaimet(); 
    6063        Camera.Follow(pelaaja); 
    61         Camera.Zoom(0.3); 
     64        Camera.Zoom(1.8); 
    6265        LuoElamaLaskuri(); 
    6366        ColorTileMap ruudut = ColorTileMap.FromLevelAsset("Taso_1"); 
    6467 
    65          
     68        Mouse.IsCursorVisible = false; 
    6669 
    6770        Level.Background.Color = Color.Black; 
     
    7679 
    7780        //IsMouseVisible = true; 
     81    } 
     82 
     83    void LuoAmmusMittari() 
     84    { 
     85        ammusMittari = new IntMeter(pelaajanAse.Ammo.Value); 
     86 
     87        Label ammusNaytto = new Label(); 
     88        ammusNaytto.X = Screen.Right - 100; 
     89        ammusNaytto.Y = Screen.Top - 100; 
     90        ammusNaytto.Title = "Ammuksia"; 
     91        ammusNaytto.TextColor = Color.White; 
     92        ammusNaytto.Color = Color.Black; 
     93 
     94        ammusNaytto.BindTo(ammusMittari); 
     95        Add(ammusNaytto); 
    7896    } 
    7997 
     
    117135        { 
    118136            MessageDisplay.Add("Hirviota ammuttiin!"); 
    119             ((PeliVihu)hirvio).j.Value--; 
     137            ((PeliVihu)hirvio).j.Value -= 1; 
    120138            ammus.Destroy(); 
    121139        } 
     
    129147        rajahdys.Position = pelaaja.Position; 
    130148        rajahdys.Speed = 500.0; 
    131         rajahdys.Force = 40; 
     149        rajahdys.Force = 15; 
    132150        rajahdys.IsVisible = false; 
    133151        Add(rajahdys); 
     
    146164        if (paketti.Tag.Equals("paketti")) 
    147165        { 
    148             pelaajanAse.Ammo.Value += 10; 
     166            pelaajanAse.Ammo.Value += 200; 
     167            ammusMittari.Value += 15; 
    149168            paketti.Destroy(); 
    150169        } 
     
    170189        Keyboard.Listen(Key.W, ButtonState.Down, LiikutaPelaajaa, null, new Vector(0, 4000)); 
    171190        Keyboard.Listen(Key.S, ButtonState.Down, LiikutaPelaajaa, null, new Vector(0, -4000)); 
    172         Mouse.Listen(MouseButton.Left, ButtonState.Down, AmmuAseella, "Ammu", pelaajanAse); 
     191        Mouse.Listen(MouseButton.Left, ButtonState.Pressed , AmmuAseella, "Ammu", pelaajanAse); 
    173192    } 
    174193 
     
    204223 
    205224        pelaajanAse = new AssaultRifle(30, 10); 
    206         pelaajanAse.Ammo.Value = 1000; 
     225        pelaajanAse.Ammo.Value = 15; 
    207226        pelaajanAse.FireRate = 3; 
    208227        pelaajanAse.Image = aseenKuva; 
     
    214233        LuoTahtain(); 
    215234 
    216         Mouse.ListenMovement(1.0, HiiriLiikkui, ""); 
     235        //Mouse.ListenMovement(1.0, HiiriLiikkui, ""); 
     236        Timer hiiriAjastin = new Timer(); 
     237        hiiriAjastin.Interval = 0.02; 
     238        hiiriAjastin.Timeout += HiiriLiikkui; 
     239        hiiriAjastin.Start(); 
    217240 
    218241        AddCollisionHandler(pelaaja, "hirvio", PelaajaTormasi); 
     
    224247        paketti.X = x; 
    225248        paketti.Y = y; 
     249 
     250        paketti.Tag = "paketti"; 
    226251         
    227252        Add(paketti, 2); 
     
    231256 
    232257 
    233     void HiiriLiikkui(AnalogState hiirenLiike) 
     258    void HiiriLiikkui() 
    234259    { 
    235260        suunta = (Mouse.PositionOnWorld - pelaaja.AbsolutePosition).Normalize(); 
     
    290315        Add(hirvio, 2); 
    291316 
     317        vihut.Add(hirvio); 
     318 
    292319        LabyrinthWandererBrain labyrinttiAivot = new LabyrinthWandererBrain(40); 
    293320        labyrinttiAivot.Speed = 100.0; 
     
    307334    { 
    308335        ammus = ase.Shoot(); 
    309  
     336         
    310337        if (ammus != null) 
    311338        { 
     339            ammusMittari.Value--; 
    312340            ammus.Tag = "ammus"; 
    313341            AddCollisionHandler(ammus, "seina", AmmusOsui); 
     
    317345    void LuoAlkuvalikko() 
    318346    { 
     347        ClearAll(); 
     348 
    319349        MultiSelectWindow alkuValikko = new MultiSelectWindow("Peli_1", "Aloita peli", "Asetukset", "Lopeta"); 
    320350        Add(alkuValikko); 
     
    323353        Level.Background.FitToLevel(); 
    324354 
    325         alkuValikko.AddItemHandler(0, AloitaPeli); 
    326         alkuValikko.AddItemHandler(2, Exit); 
     355        alkuValikko.AddItemHandler(0, ValitseOminaisuus); 
     356        alkuValikko.AddItemHandler(1, Exit); 
    327357        alkuValikko.Color = Color.Black; 
    328358    } 
    329359 
     360    void ValitseOminaisuus() 
     361    { 
     362        MultiSelectWindow ominaisuusValinta = new MultiSelectWindow("Valitse ominaisuus", "+ tulinopeus", "+ damage", "+ health"); 
     363        Add(ominaisuusValinta); 
     364 
     365        Level.Background.Image = taustaKuva; 
     366        Level.Background.FitToLevel(); 
     367 
     368        ominaisuusValinta.AddItemHandler(0, LisaaTulinopeus); 
     369        ominaisuusValinta.AddItemHandler(1, LisaaDamage); 
     370        ominaisuusValinta.AddItemHandler(2, LisaaHealth); 
     371    } 
     372 
     373    void LisaaHealth() 
     374    { 
     375        AloitaPeli(); 
     376        pelaaja.Elamat = 6; 
     377        elamaLaskuri.MaxValue = 6; 
     378        elamaLaskuri.Value = 6; 
     379    } 
     380 
     381    void LisaaDamage() 
     382    { 
     383        AloitaPeli(); 
     384 
     385        foreach (PeliVihu vihu in vihut) 
     386        { 
     387            vihu.MuutaElamia(4); 
     388        } 
     389    } 
     390 
     391    void LisaaTulinopeus() 
     392    { 
     393        AloitaPeli(); 
     394        pelaajanAse.FireRate = 6; 
     395    } 
     396 
    330397    void LuoKuolemaValikko() 
    331398    { 
    332         MultiSelectWindow kuolemaValikko = new MultiSelectWindow ("Kuolit...", "Yritä Uudelleen", "Lopeta"); 
     399        MultiSelectWindow kuolemaValikko = new MultiSelectWindow ("Kuolit...", "Palaa alkuvalikkoon", "Lopeta"); 
    333400        Add(kuolemaValikko); 
    334401 
    335         kuolemaValikko.AddItemHandler(0, YritaUudelleen); 
     402        kuolemaValikko.AddItemHandler(0, LuoAlkuvalikko); 
    336403        kuolemaValikko.AddItemHandler(1, Exit); 
    337404    } 
Note: See TracChangeset for help on using the changeset viewer.