Ignore:
Timestamp:
2013-07-02 15:04:24 (10 years ago)
Author:
vilmikvi
Message:

Talletus.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2013/27/ViljamiV/kill_everypody_GAME/kill_everypody_GAME/kill_everypody_GAME/kill_everypody_GAME.cs

    r4344 r4374  
    1515    PlatformCharacter pelaaja1; 
    1616 
    17     Image pelaajanKuva = LoadImage("norsu"); 
    18     Image tahtiKuva = LoadImage("tahti"); 
     17    Image[] seisomisanimaatio = LoadImages("Trollface"); 
     18    Image[] kävelykuvat = LoadImages("Trollface","Trollface2"); 
     19    Image[] hyokkausanimaatio = LoadImages("Trollfaceampuu"); 
    1920 
    20     SoundEffect maaliAani = LoadSoundEffect("maali"); 
     21    Image esKuva = LoadImage("es"); 
     22    Image ammusKuva = LoadImage("Panos"); 
     23    Timer lataaEnergiaaAjastin = new Timer(); 
     24    DoubleMeter energia; 
     25    DoubleMeter elamat; 
     26 
     27    SoundEffect laaserAani = LoadSoundEffect("maali"); 
    2128 
    2229    public override void Begin() 
    2330    { 
    2431        Gravity = new Vector(0, -1000); 
     32         
    2533 
    2634        LuoKentta(); 
    2735        LisaaNappaimet(); 
     36 
     37        LisaaEnergiaPalkki(); 
     38        LisaaElamaPalkki(); 
     39 
     40        lataaEnergiaaAjastin.Interval = 0.9; 
     41        lataaEnergiaaAjastin.Timeout += delegate { energia.Value += 1; }; 
     42        lataaEnergiaaAjastin.Start(); 
    2843 
    2944        Camera.Follow(pelaaja1); 
     
    3247    } 
    3348 
     49    void LisaaEnergiaPalkki() 
     50    { 
     51        energia = new DoubleMeter(100, 0, 100); 
     52 
     53        ProgressBar energiaPalkki = new ProgressBar(200, 35); 
     54        energiaPalkki.Position = new Vector(Screen.Right - 150, Screen.Top - 50); 
     55        energiaPalkki.Color = Color.Blue; 
     56        energiaPalkki.BarColor = Color.Violet; 
     57        energiaPalkki.BindTo(energia); 
     58        Add(energiaPalkki); 
     59     
     60    } 
     61    void LisaaElamaPalkki() 
     62    { 
     63        elamat = new DoubleMeter(10, 0, 10); 
     64 
     65        ProgressBar ElamaPalkki = new ProgressBar(200, 35); 
     66        ElamaPalkki.Position = new Vector(Screen.Right - 150, Screen.Top - 10); 
     67        ElamaPalkki.Color = Color.Blue; 
     68        ElamaPalkki.BarColor = Color.Red; 
     69        ElamaPalkki.BindTo(elamat); 
     70        Add(ElamaPalkki); 
     71    } 
    3472    void LuoKentta() 
    3573    { 
     74         
    3675        TileMap kentta = TileMap.FromLevelAsset("kentta1"); 
    3776        kentta.SetTileMethod('#', LisaaTaso); 
     
    4079        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    4180        Level.CreateBorders(); 
    42         Level.Background.CreateGradient(Color.White, Color.SkyBlue); 
     81        Level.Background.Image = LoadImage("Tausta2"); 
     82        Level.Background.FitToLevel(); 
    4383    } 
    4484 
     
    5696        tahti.IgnoresCollisionResponse = true; 
    5797        tahti.Position = paikka; 
    58         tahti.Image = tahtiKuva; 
    59         tahti.Tag = "tahti"; 
     98        tahti.Image = esKuva; 
     99        tahti.Tag = "es"; 
    60100        Add(tahti); 
    61101    } 
     
    66106        pelaaja1.Position = paikka; 
    67107        pelaaja1.Mass = 4.0; 
    68         pelaaja1.Image = pelaajanKuva; 
    69         AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
     108        pelaaja1.AnimWalk = new Animation(kävelykuvat); 
     109        pelaaja1.AnimIdle = new Animation(seisomisanimaatio); 
     110        AddCollisionHandler(pelaaja1, "es", TormaaTahteen); 
     111         
     112 
     113        //pelaaja1 on PlatformCharacter-tyyppinen 
     114        pelaaja1.Weapon = new AssaultRifle(30, 10); 
     115 
     116        //Ammusten määrä aluksi: 
     117        pelaaja1.Weapon.Ammo.Value = 5000; 
     118        pelaaja1.Weapon.FireRate = 5000; 
     119        pelaaja1.Weapon.IsVisible = false; 
     120        //Mitä tapahtuu kun ammus osuu johonkin? 
     121        pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 
     122 
    70123        Add(pelaaja1); 
    71124    } 
    72125 
     126 
     127    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
     128    { 
     129        ammus.Destroy(); 
     130    } 
     131 
     132 
     133    void AmmuAseella(PlatformCharacter pelaaja) 
     134    { 
     135        if (energia.Value < 1) return; 
     136        PhysicsObject ammus = pelaaja.Weapon.Shoot(); 
     137        pelaaja1.PlayAnimation(new Animation(hyokkausanimaatio)); 
     138        energia.Value--; 
     139 
     140        if (ammus != null) 
     141        { 
     142            ammus.Width *= 2; 
     143            ammus.Image = ammusKuva; 
     144            //ammus.MaximumLifetime = TimeSpan.FromSeconds(5.0) 
     145        } 
     146         
     147    } 
     148 
     149 
     150 
    73151    void LisaaNappaimet() 
    74152    { 
     153        Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaaja1); 
    75154        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
    76155        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     
    101180    void TormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 
    102181    { 
    103         maaliAani.Play(); 
    104         MessageDisplay.Add("Keräsit tähden!"); 
     182        MessageDisplay.Add("Keräsit es energia juoman!"); 
    105183        tahti.Destroy(); 
    106184    } 
     185 
     186 
     187 
     188 
     189 
     190 
     191 
    107192} 
Note: See TracChangeset for help on using the changeset viewer.