Changeset 628


Ignore:
Timestamp:
2010-06-09 14:58:46 (13 years ago)
Author:
jopehell
Message:

muokattiin

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2010/23/jopehell/TheTankTMR/Peli.cs

    r601 r628  
    1313        PhysicsObject tankki1; 
    1414        PhysicsObject tankki2; 
     15   
    1516        PhysicsObject vasenReuna; 
    1617        PhysicsObject oikeaReuna; 
     
    2324        { 
    2425            LuoKentta(); 
    25             LuoViholliset(); 
     26            LuoOrkki(0,0); 
    2627            LuoOhjaimet(); 
    2728             
     
    6263            tankki.Restitution = 1.0; 
    6364            Add( tankki ); 
     65            PlasmaCannon ase = new PlasmaCannon(20, 5); 
     66            tankki.Add(ase); 
     67            ase.Angle += Angle.Degrees(5); 
     68            ase.Use(); 
     69            ase.PlasmaParticleCollision = AmmuksenTormays; 
    6470            return tankki; 
    6571 
    6672        } 
    6773 
    68         void LuoViholliset() 
     74        void LuoOrkki(double x,double y) 
    6975        { 
    7076            PhysicsObject orkki = new PhysicsObject(30, 30); 
     
    7379            orkki.X = 50; 
    7480            orkki.Y = 50; 
     81             
    7582 
    7683            Add(orkki); 
    7784            Vector impulssi = new Vector(10.0, 200.0); 
    7885            orkki.Hit(impulssi); 
    79              
     86 
     87            AddCollisionHandler(orkki, VihollinenTormasi); 
    8088 
    8189        } 
     
    98106            return laskuri; 
    99107        } 
    100         void AmmuksenTormays(PhysicsObject kuula, PhysicsObject kohde) 
    101         { 
    102             if (kohde == orkki) 
    103             { 
    104                 KillCount.Value += 1; 
    105             } 
    106             else if (orkki == tankki1) 
    107             { 
     108        void AmmuksenTormays(PhysicsObject kuula, PhysicsObject orkki) 
     109        { 
     110            KillCount.Value += 1; 
     111 
     112            if (KillCount.Value == 2) 
     113            { 
     114                LuoOrkki(0,0); 
     115            } 
     116        } 
     117        void VihollinenTormasi(PhysicsObject orkki, PhysicsObject otus) 
     118        { 
     119            if (otus == tankki1 || otus== tankki2) 
     120            { 
     121                otus.Destroy(); 
     122                Explosion rajahdys = new Explosion(400.0); 
     123                rajahdys.Position = otus.Position; 
     124                Add(rajahdys); 
     125 
     126                rajahdys.Speed = 500.0; 
     127                rajahdys.Force = 10000; 
    108128                 
    109                 
    110             } 
    111         } 
     129            } 
     130 
     131            if (tankki1.IsDestroyed())  
     132            { 
     133            } 
     134        } 
     135             
     136 
     137             
     138         
    112139 
    113140        void Aloita() 
     
    130157            Keyboard.Listen(Key.A, ButtonState.Released, PysaytaTankki, null, tankki1); 
    131158 
     159 
    132160            Keyboard.Listen(Key.Up, ButtonState.Down, LiikutaTankkiaYlos, "Pelaaja 2: Liikuta tankkia ylös", tankki2); 
    133161            Keyboard.Listen(Key.Up, ButtonState.Released, PysaytaTankki, null, tankki2); 
     
    144172            ControllerOne.Listen(Button.DPadUp, ButtonState.Down, AsetaNopeus, "Liikuta tankkia ylös", tankki1, nopeusYlos); 
    145173            ControllerOne.Listen(Button.DPadUp, ButtonState.Released, AsetaNopeus, null, tankki1, Vector.Zero); 
     174 
    146175            ControllerOne.Listen(Button.DPadDown, ButtonState.Down, AsetaNopeus, "Liikuta tankkia alas", tankki1, nopeusAlas); 
    147176            ControllerOne.Listen(Button.DPadDown, ButtonState.Released, AsetaNopeus, null, tankki1, Vector.Zero); 
     177 
     178            ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, AsetaNopeus, "Liikuta tankkia ylös", tankki1, nopeusYlos); 
     179            ControllerOne.Listen(Button.DPadLeft, ButtonState.Released, AsetaNopeus, null, tankki1, Vector.Zero); 
     180 
     181            ControllerOne.Listen(Button.DPadRight, ButtonState.Down, AsetaNopeus, "Liikuta tankkia alas", tankki1, nopeusAlas); 
     182            ControllerOne.Listen(Button.DPadRight, ButtonState.Released, AsetaNopeus, null, tankki1, Vector.Zero); 
    148183 
    149184            ControllerTwo.Listen(Button.DPadUp, ButtonState.Down, AsetaNopeus, "Liikuta tankkia ylös", tankki2, nopeusYlos); 
Note: See TracChangeset for help on using the changeset viewer.