Changeset 340 for arho_m


Ignore:
Timestamp:
2009-08-06 11:26:29 (10 years ago)
Author:
armahlam
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • arho_m/Avaruuspeli2/Peli.cs

    r323 r340  
    6969            Level kentta = new Level(this, 800, 600); 
    7070            kentta.CreateBorder(); 
     71             
    7172            kentta.BackgroundColor = Color.Black; 
    7273 
     
    8182        private void lisaaPelaajat(Level kentta) 
    8283        { 
    83             Texture2D alus = Content.Load<Texture2D>("alus"); 
    84             IShape pelaaja_shape = Shapes.CreateFromTexture(alus, new Vector2D(alus.Width, alus.Height), 8.0); 
     84            //Texture2D alus = Content.Load<Texture2D>("alus"); 
     85            //IShape pelaaja_shape = Shapes.CreateFromTexture(alus, new Vector2D(alus.Width, alus.Height), 8.0); 
     86            IShape pelaaja_shape = Shapes.CreateRectangle(20, 20); 
    8587 
    8688            pelaaja1 = new BattleObject(pelaaja_shape, 15, 5); 
     
    120122            // viholliset 
    121123            Timer tm2 = new Timer(); 
    122             tm2.Interval = 0.8; 
     124            tm2.Interval = 1.5; 
    123125            tm2.Trigger += new Timer.TriggerHandler(spawnVihu); 
    124126            tm2.Start(); 
    125127            AddTimer(tm2); 
    126128 
    127             // seiniä myöten liikkuvat tykit 
    128             Timer tm3 = new Timer(); 
    129             tm3.Interval = 1.0; 
    130             tm3.Trigger += new Timer.TriggerHandler(spawnBorderTykki); 
    131             tm3.Start(); 
    132             AddTimer(tm3); 
     129            // punaiset seinät 
     130            Timer tm4 = new Timer(); 
     131            tm4.Interval = 8.0; 
     132            tm4.Trigger += new Timer.TriggerHandler(spawnPysayttamatonEsine); 
     133            tm4.Start(); 
     134            AddTimer(tm4); 
     135 
     136            /// ................ 
     137            Timer tm123 = new Timer(); 
     138            tm123.Interval = 10.0; 
     139            tm123.Trigger += new Timer.TriggerHandler(spawnSeina); 
     140            tm123.Start(); 
     141            AddTimer(tm123); 
    133142        } 
    134143 
     
    150159            Controls.Listen(Keys.Up, ButtonPosition.Down, LiikutaPelaajaa, null, pelaaja1, 0, nopeus); 
    151160            Controls.Listen(Keys.Down, ButtonPosition.Down, LiikutaPelaajaa, null, pelaaja1, 0, -nopeus); 
    152             Controls.Listen(Keys.Space, ButtonPosition.Down, Ammu); 
     161            Controls.Listen(Keys.Space, ButtonPosition.Up, Ammu); 
    153162        } 
    154163 
     
    220229        void spawnEste(Timer timer) 
    221230        { 
     231            /* 
    222232            Texture2D tex = Content.Load<Texture2D>("laatikko"); 
    223233 
     
    230240                10.0f 
    231241            ); 
    232  
    233             BattleObject obj = new BattleObject(shape, 200, 15); 
     242             */ 
     243            IShape shape = Shapes.CreateRectangle(RandomGen.NextDouble(20, 30), RandomGen.NextDouble(40, 120)); 
     244 
     245            BattleObject obj = new BattleObject(shape, 200, 55); 
    234246            //obj.Texture = tex; 
     247            obj.Color = Color.DarkGray; 
    235248 
    236249            obj.X = Level.Right - (obj.Width / 2); 
     
    246259        { 
    247260            IShape shape = Shapes.CreateRectangle(30, 30); 
    248             BattleObject bobj = new BattleObject(shape, 100, 40); 
     261            BattleObject bobj = new BattleObject(shape, 100, 10); 
    249262            bobj.X = Level.Right - (bobj.Width / 2); 
    250263            bobj.Y = RandomGen.NextDouble(Level.Bottom + (bobj.Height / 2.0), Level.Top - (bobj.Height / 2.0)); 
    251264            bobj.MomentOfInertia = double.PositiveInfinity; 
     265            bobj.Color = Color.Green; 
    252266 
    253267            bobj.HitpointsReachedZero += rajahdys; 
     
    272286            } 
    273287 
    274             double vel_y = pelaaja1.Y - b.Y * 10; 
     288            double vel_y = pelaaja1.Y - b.Y * 500; 
    275289 
    276290            b.Hit( 
     
    281295        } 
    282296 
    283          
    284         void spawnBorderTykki(Timer timer) 
    285         { 
    286             IShape shape = Shapes.CreateRectangle(50,30); 
    287             BattleObject b = new BattleObject(shape, 100, 500); 
    288  
    289             b.X = Level.Right - b.Width/2; 
    290  
    291             int y = RandomGen.NextInt(0,1); 
    292  
    293             if (y != 0) 
    294             { 
    295                 b.Y = Level.Top - b.Height / 2.0 - 5; 
    296             } 
    297             else 
    298             { 
    299                 b.Y = Level.Bottom + b.Height / 2.0 + 5; 
    300             } 
    301  
    302             b.MomentOfInertia = double.PositiveInfinity; 
    303             b.HitpointsReachedZero += new EventHandler(rajahdys); 
    304  
    305             AddCollisionHandler(b, vasen_reuna_destroy); 
    306             Level.Objects.Add(b); 
    307  
    308             PlasmaCannon plasc = new PlasmaCannon(new PlasmaParticle()); 
    309             plasc.Position = b.Position; 
    310             plasc.FireRate = 1000; 
    311             plasc.Mass = 0; 
    312             plasc.Power = new Meter<double>(5000, 5000, 5000); 
    313             plasc.Visible = true; 
    314  
    315             Level.Objects.Add(plasc); 
    316             plasc.SetOwner(b, Level); 
    317             plasc.Equip(); 
    318  
    319             Timer t = new Timer(); 
    320             t.Interval = 0.2; 
    321             t.Trigger += new Timer.TriggerHandler(borderTykkiAjastin); 
    322             t.Tag = plasc; 
    323             t.Start(); 
    324             AddTimer(t); 
    325  
    326             return; 
    327         } 
    328  
    329         void borderTykkiAjastin(Timer timer) 
    330         { 
    331             PlasmaCannon g = (PlasmaCannon)timer.Tag; 
    332              
    333             if ( g.Owner.IsDestroyed() ) 
    334             { 
    335                 RemoveTimer(timer); 
    336                 return; 
    337             } 
    338              
    339             g.Shoot(); 
     297        PhysicsObject luoPunainenSeina() 
     298        { 
     299        } 
     300 
     301        void spawnPysayttamatonEsine(Timer timer) 
     302        { 
     303            IShape shape = Shapes.CreateRectangle(30, 150); 
     304            PhysicsObject p = new PhysicsObject(50, shape); 
     305            p.IgnoresCollisionResponse = true; 
     306            p.IgnoresExplosions = true; 
     307            p.Color = Color.Red; 
     308            p.X = Level.Right - p.Width / 2 - 1.0; 
     309            p.Y = RandomGen.NextDouble(Level.Bottom+p.Height/2.0, Level.Top-p.Height/2.0); 
     310            AddCollisionHandler(p, vasen_reuna_destroy); 
     311            AddCollisionHandler(p, instagib); 
     312            Level.Objects.Add(p); 
     313        } 
     314 
     315 
     316        void spawnSeina(Timer t) 
     317        { 
     318            IShape shape = Shapes.CreateRectangle(50.0, Level.Height - (pelaaja1.Height * 4)); 
     319            PhysicsObject po = new PhysicsObject(200.0, shape); 
     320 
     321            po.IgnoresCollisionResponse = true; 
     322            po.Color = Color.Red; 
     323 
     324            po.X = Level.Right - po.Width/2.0 + 0.1; 
     325 
     326            AddCollisionHandler(po, vasen_reuna_destroy); 
     327            AddCollisionHandler(po, instagib); 
     328            Level.Objects.Add(po); 
     329        } 
     330 
     331 
     332        void instagib(Collision c) 
     333        { 
     334            if ( c.Other == pelaaja1 ) 
     335                c.Other.Destroy(); 
    340336        } 
    341337 
Note: See TracChangeset for help on using the changeset viewer.