Changeset 261 for santeri_h


Ignore:
Timestamp:
2009-08-04 13:07:08 (12 years ago)
Author:
saolhaka
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • santeri_h/Pong/Peli.cs

    r250 r261  
    2626        PhysicsObject pallo; 
    2727        PhysicsObject pallo2; 
    28         PhysicsObject kolmio2; 
    2928        PhysicsObject maila1; 
    3029        PhysicsObject maila2; 
    31         PlasmaCannon ase; 
     30        PlasmaCannon ase1; 
     31        PlasmaCannon ase2; 
    3232 
    3333        Meter<int> pelaajan1Pisteet; 
     
    6464            pallo2.Color = Color.Green; 
    6565 
    66             IShape kolmio = Shapes.CreateTriangle(100.0, 175.0); 
    67             kolmio2 = new PhysicsObject(1.0, kolmio); 
    68             kolmio2.X = 200.0; 
    69             kolmio2.Y = -250.0; 
    70             kolmio2.Restitution = 1.0; 
    71             kentta.Objects.Add(kolmio2); 
    72             kolmio2.Color = Color.Yellow; 
    73  
    74             maila1 = LuoMaila(kentta.Left + 20.0, 0.0, kentta); 
     66            maila1 = LuoMaila(kentta.Left + 20.0, 0.0, kentta, ref ase1); 
    7567            maila1.Color = Color.Blue; 
    76             maila2 = LuoMaila(kentta.Right - 20.0, 0.0, kentta); 
     68            maila2 = LuoMaila(kentta.Right - 20.0, 0.0, kentta, ref ase2); 
    7769            maila2.Color = Color.Red; 
     70            ase1 = LuoAse(maila1, kentta, -600.0, Angle.Degrees(0)); 
     71            ase2 = LuoAse(maila2, kentta, 600.0, Angle.Degrees(180)); 
    7872 
    7973            kentta.CreateBorder(1.0, false); 
     
    8276        } 
    8377 
    84         PhysicsObject LuoMaila(double x, double y, Level kentta) 
     78        PhysicsObject LuoMaila(double x, double y, Level kentta, ref PlasmaCannon ase) 
    8579        { 
    8680            IShape suorakulmio = Shapes.CreateRectangle(20.0, 100.0); 
     
    9185            kentta.Objects.Add(maila); 
    9286 
     87            return maila; 
     88 
     89        } 
     90        PlasmaCannon LuoAse(PhysicsObject maila, Level kentta, double x, Angle kulma) 
     91        { 
     92            PlasmaCannon ase; 
    9393            ase = new PlasmaCannon(new PlasmaParticle()); 
    9494            ase.SetOwner(maila, kentta); 
    9595            ase.Visible = true; 
    9696            ase.Color = Color.SteelBlue; 
     97            ase.X = maila.X+x; 
     98            ase.Y = maila.Y; 
     99            ase.Angle = kulma; 
    97100            ase.FireRate = 1000; 
    98             ase.Power = new Meter<double>(5000, 5000, 5000); 
     101            ase.Power = new Meter<double>(9000, 9000, 9000); 
     102            ase.SetOwner(maila, kentta); 
    99103            kentta.Objects.Add(ase); 
    100  
    101             return maila; 
     104            if (Math.Abs(kulma.Degree) >100) 
     105            { 
     106                ase.Texture = Textures.Flip(ase.Texture); 
     107            } 
     108 
     109            return ase; 
    102110        } 
    103111 
     
    168176        private Boolean Ammu(ControlEvent e) 
    169177        { 
     178            PlasmaCannon ase = (PlasmaCannon)(e.Parameter0); 
    170179            // luodaan ammus 
    171180            Projectile ammus = ase.Use(); 
     
    186195            Controls.Listen(Keys.Z, ButtonPosition.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa alas", maila1, nopeusAlas); 
    187196            Controls.Listen(Keys.Z, ButtonPosition.Released, AsetaNopeus, null, maila1, Vector2D.Zero); 
    188             Controls.Listen(Keys.Space, ButtonPosition.Down, Ammu); 
     197            Controls.Listen(Keys.Space, ButtonPosition.Down, Ammu, null, ase1); 
    189198 
    190199            Controls.Listen(Keys.Up, ButtonPosition.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa ylös", maila2, nopeusYlos); 
     
    192201            Controls.Listen(Keys.Down, ButtonPosition.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa alas", maila2, nopeusAlas); 
    193202            Controls.Listen(Keys.Down, ButtonPosition.Released, AsetaNopeus, null, maila2, Vector2D.Zero); 
    194             Controls.Listen(Keys.Enter, ButtonPosition.Down, Ammu); 
     203            Controls.Listen(Keys.Enter, ButtonPosition.Down, Ammu, null, ase2); 
    195204 
    196205            AsetaGamePadOhjaimet(PlayerIndex.One, maila1); 
Note: See TracChangeset for help on using the changeset viewer.