Changeset 308 for arho_m


Ignore:
Timestamp:
2009-08-05 14:57:59 (10 years ago)
Author:
armahlam
Message:
 
Location:
arho_m/Avaruuspeli2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • arho_m/Avaruuspeli2/Peli.cs

    r294 r308  
    6161            lisaaNappaimet(); 
    6262            Camera.Follow(pelaaja1); 
     63 
     64            asetaAjastimet(); 
    6365        } 
    6466 
     
    182184            double nopeus = e.Parameter1.ToDouble(); 
    183185 
    184             Vector2D v = new Vector2D(nopeus,0); 
     186            Vector2D v = new Vector2D(nopeus, 0); 
    185187            pelaaja.Hit(v); 
    186188 
     
    204206            if (po == pelaaja1) 
    205207                ase.Destroy(); 
     208 
     209            if ( pelaaja1.IsDestroyed() ) 
     210                lopeta_peli(0); 
    206211        } 
    207212 
     
    229234            ); 
    230235 
    231             BattleObject obj = new BattleObject(shape,200,100); 
     236            BattleObject obj = new BattleObject(shape, 200, 15); 
    232237            obj.Texture = tex; 
    233238 
    234239            obj.X = Level.Right - (obj.Width / 2); 
    235             obj.Y = RandomGen.NextDouble(Level.Bottom+(obj.Height/2.0), Level.Top-(obj.Height/2.0)); 
     240            obj.Y = RandomGen.NextDouble(Level.Bottom + (obj.Height / 2.0), Level.Top - (obj.Height / 2.0)); 
    236241            obj.MomentOfInertia = double.PositiveInfinity; 
    237242 
     243            obj.HitpointsReachedZero += rajahdys; 
    238244            AddCollisionHandler(obj, vasen_reuna_destroy); 
    239245            Level.Objects.Add(obj); 
     
    242248        void spawnVihu(Timer timer) 
    243249        { 
     250            IShape shape = Shapes.CreateRectangle(30, 30); 
     251            BattleObject bobj = new BattleObject(shape, 100, 40); 
     252            bobj.X = Level.Right - (bobj.Width / 2); 
     253            bobj.Y = RandomGen.NextDouble(Level.Bottom + (bobj.Height / 2.0), Level.Top - (bobj.Height / 2.0)); 
     254            bobj.MomentOfInertia = double.PositiveInfinity; 
     255 
     256            bobj.HitpointsReachedZero += rajahdys; 
     257            AddCollisionHandler(bobj, vasen_reuna_destroy); 
     258            Level.Objects.Add(bobj); 
     259 
     260            Timer tm = new Timer(); 
     261            tm.Interval = 0.2; 
     262            tm.Trigger += new Timer.TriggerHandler(vihu_ajastin); 
     263            tm.Start(); 
     264            tm.Tag = bobj; 
     265            AddTimer(tm); 
     266        } 
     267 
     268        void vihu_ajastin(Timer t) 
     269        { 
     270            BattleObject b = (BattleObject)t.Tag; 
     271            if (b.IsDestroyed()) 
     272            { 
     273                RemoveTimer(t); 
     274                return; 
     275            } 
     276 
     277            double vel_y = pelaaja1.Y - b.Y * 10; 
     278            b.Hit( 
     279                new Vector2D( 
     280                    RandomGen.NextDouble(0, 8000), 
     281                    vel_y) 
     282            ); 
    244283        } 
    245284 
     
    250289        } 
    251290 
     291        void lopeta_peli(int voitto) 
     292        { 
     293            MessageDisplay.Clear(); 
     294            MessageDisplay.TextColor = new Color(0, 255, 0); 
     295            MessageDisplay.AutoSize = false; 
     296 
     297            if (voitto != 0) 
     298            { 
     299                MessageDisplay.Add("Onneksi olkoon, pääsit pelin läpi."); 
     300            } 
     301            else 
     302            { 
     303                MessageDisplay.Add("Hävisit pelin. Yritä uudestaan painamalla enter"); 
     304            } 
     305        } 
     306 
    252307        #endregion 
    253308    } 
Note: See TracChangeset for help on using the changeset viewer.