Changeset 763 for 2010/23


Ignore:
Timestamp:
2010-06-11 13:19:19 (9 years ago)
Author:
paaaanro
Message:

Viimeistelin peliä.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2010/23/elalylon/Ball Wars/Peli.cs

    r739 r763  
    1313        int enemyHitpoints = 10; 
    1414        int enemyHitpoints2 = 10; 
    15         int pelaajaHitpoints = 10; 
     15        int pelaajaHitpoints = 50; 
    1616        bool glockenabled = false; 
    1717        Vector enemyshootvector; 
     
    2020        Vector vasemmalle = new Vector(-100, 0); 
    2121        Vector oikealle = new Vector(100, 0); 
     22        Vector heitakranaatti; 
    2223 
    2324        GameObject tahtain; 
     
    3334        AssaultRifle Glock2; 
    3435 
     36        double Distance(Vector o1, Vector o2) 
     37        { 
     38            Vector delta = o2 - o1; 
     39            return Math.Sqrt(delta.X * delta.X + delta.Y + delta.Y); 
     40        } 
    3541 
    3642        protected override void Begin() 
     
    6773            // mm. ampuminen säännöllisin väliajoin 
    6874            Timer aly = new Timer(); 
    69             aly.Interval = 0.01; // 0.1 sekuntia 
     75            aly.Interval = 0.1; // 0.1 sekuntia 
    7076            aly.Trigger += enemyshoot; 
    7177            aly.Trigger += enemymove; 
    7278            aly.Trigger += enemyshoot2; 
    7379            aly.Trigger += enemymove2; 
     80            aly.Trigger += enemycheck; 
    7481            Add(aly); 
    7582            aly.Start(); 
     
    164171            } 
    165172        } 
    166  
     173        void enemycheck(Timer t) 
     174        { 
     175            if (enemyHitpoints < 1) 
     176            { 
     177                vihollinen.Destroy(); 
     178                //LuoVihollinen(); 
     179            } 
     180            if (enemyHitpoints2 < 1) 
     181            { 
     182                vihollinen2.Destroy(); 
     183                //LuoVihollinen2(); 
     184            } 
     185        } 
    167186 
    168187        void luoKentta() 
     
    212231            Add(pelaaja1); 
    213232 
    214             Image[] JA = LoadImages( 
     233            /*Image[] JA = LoadImages( 
    215234                "Hero_2", 
    216235                "Hero_3", 
     
    221240            ); 
    222241            Animation JumpAnim = new Animation(JA); 
    223             JumpAnim.FPS = 10; 
    224             pelaaja1.Animation = JumpAnim; 
    225  
     242            JumpAnim.FPS = 5; 
     243            pelaaja1.Animation = JumpAnim;*/ 
    226244 
    227245            m16 = new AssaultRifle(100, 30); 
     
    364382            Mouse.Listen(MouseButton.Left, ButtonState.Down, shoot, "ammu"); 
    365383            Mouse.ListenMovement(0.0, tahtax_, null); // 0.0 tarkottaa että hiirtä ei tarvi liikuttaa, että aliohjelmaa tahtax_ kutsutaan 
     384            Mouse.Listen(MouseButton.Right, ButtonState.Pressed, HeitaKranaatti, "Heitä kranaatti"); 
     385        } 
     386 
     387        Grenade grenade; 
     388 
     389        void HeitaKranaatti() 
     390        { 
     391            if (pelaaja1.IsDestroyed()) 
     392            { 
     393                return; 
     394            } 
     395            grenade = new Grenade(7.0); 
     396            grenade.FuseTime = TimeSpan.FromSeconds(2); 
     397 
     398            Timer timer = new Timer(); 
     399            timer.Interval = 2; 
     400            timer.Trigger += Rajahtaa; 
     401            timer.Start(); 
     402            Add(timer); 
     403 
     404 
     405            heitakranaatti = Mouse.PositionOnWorld - pelaaja1.Position; 
     406            grenade.Position = pelaaja1.Position; 
     407            Add(grenade); 
     408            grenade.Hit(50 * heitakranaatti); 
     409            grenade.ExplosionForce = 10000; 
     410            grenade.ExplosionSpeed = 700; 
     411        } 
     412 
     413        void Rajahtaa(Timer t) 
     414        { 
     415            Vector rajahdysPaikka = grenade.Position; 
     416            if (Distance(rajahdysPaikka, vihollinen.Position) < 1000) 
     417            { 
     418                enemyHitpoints -= 7; 
     419            } 
     420            if (Distance(rajahdysPaikka, vihollinen2.Position) < 1000) 
     421            { 
     422                enemyHitpoints2 -= 7; 
     423            } 
    366424        } 
    367425        void tahtax_(AnalogState tila) 
     
    401459        { 
    402460            hahmo.Jump(voima); 
    403             pelaaja1.Animation.Start(1); 
     461            pelaaja1.Animation.Start(); 
    404462        } 
    405463    } 
Note: See TracChangeset for help on using the changeset viewer.