Changeset 250


Ignore:
Timestamp:
2009-08-04 11:26:16 (10 years ago)
Author:
saolhaka
Message:

kaikkee jännää

Location:
santeri_h
Files:
76 added
1 edited

Legend:

Unmodified
Added
Removed
  • santeri_h/Pong/Peli.cs

    r227 r250  
    2929        PhysicsObject maila1; 
    3030        PhysicsObject maila2; 
     31        PlasmaCannon ase; 
    3132 
    3233        Meter<int> pelaajan1Pisteet; 
     
    6364            pallo2.Color = Color.Green; 
    6465 
    65             IShape kolmio = Shapes.CreateTriangle(100.0, 200.0); 
     66            IShape kolmio = Shapes.CreateTriangle(100.0, 175.0); 
    6667            kolmio2 = new PhysicsObject(1.0, kolmio); 
    6768            kolmio2.X = 200.0; 
     
    8990            maila.Restitution = 1.0; 
    9091            kentta.Objects.Add(maila); 
     92 
     93            ase = new PlasmaCannon(new PlasmaParticle()); 
     94            ase.SetOwner(maila, kentta); 
     95            ase.Visible = true; 
     96            ase.Color = Color.SteelBlue; 
     97            ase.FireRate = 1000; 
     98            ase.Power = new Meter<double>(5000, 5000, 5000); 
     99            kentta.Objects.Add(ase); 
     100 
    91101            return maila; 
    92102        } 
     
    107117            naytto.ValueColor = Color.White; 
    108118            Add(naytto); 
     119            laskuri.UpperLimit += new Meter<int>.OnLimitHandler(laskuri_UpperLimit); 
    109120            return laskuri; 
     121        } 
     122 
     123        void laskuri_UpperLimit(Meter<int> sender) 
     124        { 
     125            MessageDisplay.Add("Peli loppui"); 
     126            MessageDisplay.X = -50; 
     127            MessageDisplay.Y = 0; 
     128            MessageDisplay.TextColor = Color.White; 
     129            pallo.Destroy(); 
     130 
    110131        } 
    111132 
     
    145166        } 
    146167 
     168        private Boolean Ammu(ControlEvent e) 
     169        { 
     170            // luodaan ammus 
     171            Projectile ammus = ase.Use(); 
     172            if (ammus != null) 
     173            { 
     174                ammus.Position = ammus.Position + (Vector2D.FromLengthAndAngle(40, ase.Angle.Radian)); 
     175                ammus.Push(ammus.Velocity); //? 
     176                ammus.IgnoresExplosions = true; 
     177                Level.Objects.Add(ammus); 
     178            } 
     179 
     180            return false; 
     181        } 
    147182        void AsetaOhjaimet() 
    148183        { 
     
    151186            Controls.Listen(Keys.Z, ButtonPosition.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa alas", maila1, nopeusAlas); 
    152187            Controls.Listen(Keys.Z, ButtonPosition.Released, AsetaNopeus, null, maila1, Vector2D.Zero); 
     188            Controls.Listen(Keys.Space, ButtonPosition.Down, Ammu); 
    153189 
    154190            Controls.Listen(Keys.Up, ButtonPosition.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa ylös", maila2, nopeusYlos); 
     
    156192            Controls.Listen(Keys.Down, ButtonPosition.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa alas", maila2, nopeusAlas); 
    157193            Controls.Listen(Keys.Down, ButtonPosition.Released, AsetaNopeus, null, maila2, Vector2D.Zero); 
     194            Controls.Listen(Keys.Enter, ButtonPosition.Down, Ammu); 
    158195 
    159196            AsetaGamePadOhjaimet(PlayerIndex.One, maila1); 
Note: See TracChangeset for help on using the changeset viewer.