Changeset 280


Ignore:
Timestamp:
2009-08-05 11:30:03 (11 years ago)
Author:
juosmikk
Message:
 
Location:
juuso_m/Tasohyppely2
Files:
2 added
1 edited

Legend:

Unmodified
Added
Removed
  • juuso_m/Tasohyppely2/Peli.cs

    r269 r280  
    1414namespace Tasohyppely2 
    1515{ 
    16     // Yksinkertainen tasohyppely. 
     16    // Juuson peli. 
    1717    class Tasohyppely : PhysicsGame 
    1818    { 
     
    3232        #endregion 
    3333 
     34        Weapon moottorisaha; 
    3435 
    3536        #region Alustukset 
     
    5253            Add(pisteNaytto);    // lisätään peliin 
    5354 
     55           
     56 
    5457            // Asetetaan painovoima 
    5558            Gravity = new Vector2D(0, -1000); 
     
    8386            pisteLaskuri.Reset(); 
    8487            kenttaNro += 1; // lisätään kenttänumeroa yhdellä 
    85             MessageDisplay.Add("Kenttä " + kenttaNro); 
     88            MessageDisplay.Add("Taso " + kenttaNro); 
    8689            Level seuraava = luoKentta(); 
    8790            lisaaNappaimet(); 
     
    9295        Level luoKentta() 
    9396        { 
    94             Level kentta = new Level(this, 2000, 1000); 
     97            Level kentta = Level;//new Level(this, 5000, 1000); 
     98            Level.Width = 5000; 
     99            Level.Height = 1000; 
    95100            kentta.CreateBorder(); 
    96101            kentta.Borders.Visible = false; 
     
    102107            kentta.Objects.Add(alusta); 
    103108 
    104             lisaaPieniTaso(kentta, -200, -350); 
    105             lisaaPieniTaso(kentta, 0, -200); 
    106             lisaaPieniTaso(kentta, 400, -150); 
    107  
    108             lisaaPieniTaso(kentta, 500, 0); 
    109             lisaaPieniTaso(kentta, 400, 100); 
    110  
    111109            lisaaMaali(kentta); 
    112110            lisaaPelaajat(kentta); 
    113             lisaaTahdet(kentta); 
    114111 
    115112            int vihollistenMaara = kenttaNro; 
    116113            lisaaViholliset(kentta, vihollistenMaara); 
     114 
     115            Timer ajastin = new Timer(); 
     116            ajastin.Interval = 20; 
     117            ajastin.Trigger += new Timer.TriggerHandler(AikaVihollinen); 
     118            AddTimer(ajastin); 
     119            ajastin.Start(); 
    117120 
    118121            return kentta; 
     
    137140 
    138141            kentta.Objects.Add(pelaaja1); 
    139         } 
    140  
    141         void lisaaTahdet(Level kentta) 
    142         { 
    143             for (int i = 0; i < 20; i++) 
    144             { 
    145                 PhysicsObject tahti = new PhysicsObject(0.005, Shapes.CreateCircle(12)); 
    146                 tahti.X = RandomGen.NextDouble(-475.0, 475.0); 
    147                 tahti.Y = 400.0; 
    148                 tahti.Restitution = 1.0; 
    149                 tahti.Texture = Content.Load<Texture2D>("tahti"); 
    150                 AddCollisionHandler(tahti, keraa); 
    151                 kentta.Objects.Add(tahti); 
    152  
    153             } 
    154         } 
     142 
     143            LuoAse(); 
     144        } 
     145 
    155146 
    156147        void lisaaMaali(Level kentta) 
     
    159150            maali.Tag = "maali"; 
    160151            maali.IgnoresCollisionResponse = true; 
    161             maali.X = 0; 
    162             maali.Y = 325; 
     152            maali.X = 500; 
     153            maali.Y = -100; 
    163154            maali.Texture = Content.Load<Texture2D>("tahti"); 
    164155            kentta.Objects.Add(maali); 
     
    169160            for (int i = 0; i < kpl; i++) 
    170161            { 
    171                 PlatformCharacter vihollinen = new PlatformCharacter(100, Shapes.CreateCircle(30)); 
    172                 vihollinen.Brain = new RandomMoverBrain(); 
    173                 vihollinen.X = maali.X; 
    174                 vihollinen.Y = maali.Y; 
    175                 vihollinen.IgnoresGravity = true; 
    176                 vihollinen.Texture = Content.Load<Texture2D>("vihollinen"); 
    177                 AddCollisionHandler(vihollinen, tuuppaa); 
    178                 kentta.Objects.Add(vihollinen); 
     162                LuoVihollinen(); 
    179163            } 
    180164        } 
     
    281265        } 
    282266        #endregion 
     267 
     268        void AikaVihollinen(Timer sender) 
     269        { 
     270            LuoVihollinen(); 
     271        } 
     272 
     273        void LuoVihollinen() 
     274        { 
     275            MessageDisplay.Add("Uusi vihollinen on saapunut"); 
     276            PlatformCharacter vihollinen = new PlatformCharacter(100, Shapes.CreateCircle(30)); 
     277            vihollinen.Brain = new RandomMoverBrain(); 
     278            vihollinen.X = maali.X; 
     279            vihollinen.Y = maali.Y; 
     280            vihollinen.IgnoresGravity = false; 
     281            //vihollinen.Texture = Content.Load<Texture2D>("vihollinen"); 
     282            AddCollisionHandler(vihollinen, tuuppaa); 
     283            Level.Objects.Add(vihollinen); 
     284        } 
     285        void LuoAse() 
     286        { 
     287            moottorisaha = new Chainsaw(); 
     288            moottorisaha.Position = pelaaja1.Position; 
     289 
     290            Level.Objects.Add(moottorisaha); 
     291            //moottorisaha.EquipTo(pelaaja1); 
     292            moottorisaha.SetOwner(pelaaja1, Level); 
     293            moottorisaha.Equip(); 
     294             
     295            moottorisaha.Visible = true; 
     296            moottorisaha.Size = new Vector2D(200, 200); 
     297        } 
    283298    } 
    284299} 
Note: See TracChangeset for help on using the changeset viewer.