Changeset 351 for arho_m


Ignore:
Timestamp:
2009-08-06 13:07:31 (10 years ago)
Author:
armahlam
Message:
 
Location:
arho_m/Avaruuspeli2
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • arho_m/Avaruuspeli2/Peli.cs

    r340 r351  
    7272            kentta.BackgroundColor = Color.Black; 
    7373 
    74             //Texture2D bgtex = Content.Load<Texture2D>("bgtex"); 
    75             //kentta.Background.Image = bgtex; 
     74            Texture2D bgtex = Content.Load<Texture2D>("bgtex"); 
     75            kentta.Background.Image = bgtex; 
    7676 
    7777            lisaaPelaajat(kentta); 
     
    134134            AddTimer(tm4); 
    135135 
    136             /// ................ 
     136            /// punaiset isot seinät 
    137137            Timer tm123 = new Timer(); 
    138             tm123.Interval = 10.0; 
     138            tm123.Interval = 12.0; 
    139139            tm123.Trigger += new Timer.TriggerHandler(spawnSeina); 
    140140            tm123.Start(); 
     
    175175                return false; 
    176176 
    177             ammus.Position = ammus.Position + (Vector2D.FromLengthAndAngle(40, ase.Angle.Radian)); 
     177            ammus.Position = ammus.Position + (Vector2D.FromLengthAndAngle((pelaaja1.Width/2)+(ammus.Width/2), ase.Angle.Radian)); 
    178178            ammus.Push(ammus.Velocity); //? 
    179179            ammus.IgnoresExplosions = true; 
     
    229229        void spawnEste(Timer timer) 
    230230        { 
    231             /* 
     231            IShape shape = Shapes.CreateRectangle(RandomGen.NextDouble(20, 30), RandomGen.NextDouble(40, 120)); 
     232            BattleObject obj = new BattleObject(shape, 200, 55); 
     233 
    232234            Texture2D tex = Content.Load<Texture2D>("laatikko"); 
    233  
    234             IShape shape = Shapes.CreateFromTexture( 
    235                 tex, 
    236                 new Vector2D( 
    237                     RandomGen.NextDouble(20, 30), 
    238                     RandomGen.NextDouble(40, 120) 
    239                 ), 
    240                 10.0f 
    241             ); 
    242              */ 
    243             IShape shape = Shapes.CreateRectangle(RandomGen.NextDouble(20, 30), RandomGen.NextDouble(40, 120)); 
    244  
    245             BattleObject obj = new BattleObject(shape, 200, 55); 
    246             //obj.Texture = tex; 
     235            obj.Texture = tex; 
     236            obj.TextureFillsShape = true; 
    247237            obj.Color = Color.DarkGray; 
    248238 
     
    263253            bobj.Y = RandomGen.NextDouble(Level.Bottom + (bobj.Height / 2.0), Level.Top - (bobj.Height / 2.0)); 
    264254            bobj.MomentOfInertia = double.PositiveInfinity; 
     255 
     256            Texture2D tex = Content.Load<Texture2D>("alus"); 
     257            bobj.Texture = tex; 
     258            bobj.TextureFillsShape = true; 
    265259            bobj.Color = Color.Green; 
    266260 
     
    295289        } 
    296290 
    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); 
     291        PhysicsObject luoPunainenSeina(IShape shape) 
     292        { 
     293            PhysicsObject p = new PhysicsObject(200.0, shape); 
    305294            p.IgnoresCollisionResponse = true; 
    306295            p.IgnoresExplosions = true; 
    307296            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); 
     297            p.X = Level.Right - p.Width / 2.0; 
    310298            AddCollisionHandler(p, vasen_reuna_destroy); 
    311299            AddCollisionHandler(p, instagib); 
    312300            Level.Objects.Add(p); 
    313         } 
    314  
     301            return p; 
     302        } 
     303 
     304        void spawnPysayttamatonEsine(Timer timer) 
     305        { 
     306            IShape shape = Shapes.CreateRectangle(30, 150); 
     307            PhysicsObject p = luoPunainenSeina(shape); 
     308            p.Y = RandomGen.NextDouble(Level.Bottom+p.Height/2.0, Level.Top-p.Height/2.0); 
     309        } 
    315310 
    316311        void spawnSeina(Timer t) 
    317312        { 
    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); 
     313            PhysicsObject po; 
     314            IShape shape; 
     315 
     316            switch (RandomGen.NextInt(0, 2)) 
     317            { 
     318                // kaksi seinää, kolo keskellä 
     319                case 0: 
     320                    shape = Shapes.CreateRectangle(50.0, (Level.Height / 2) - (pelaaja1.Height * 1.5)); 
     321                    po = luoPunainenSeina(shape); 
     322                    po.Y = Level.Top - po.Height / 2; 
     323                    po = luoPunainenSeina(shape); 
     324                    po.Y = Level.Bottom + po.Height / 2; 
     325                    break; 
     326 
     327                // yksi seinä, kolo ylhäällä 
     328                case 1: 
     329                    shape = Shapes.CreateRectangle(50.0, Level.Height - (pelaaja1.Height * 2)); 
     330                    po = luoPunainenSeina(shape); 
     331                    po.Y = Level.Bottom + po.Height / 2.0; 
     332                    break; 
     333                 
     334                // yksi seinä, kolo alhaalla 
     335                case 2: 
     336                    shape = Shapes.CreateRectangle(50.0, Level.Height - (pelaaja1.Height * 2)); 
     337                    po = luoPunainenSeina(shape); 
     338                    po.Y = Level.Top - po.Height / 2.0; 
     339                    break; 
     340            } 
     341 
     342            t.Interval = 10.0; 
    329343        } 
    330344 
Note: See TracChangeset for help on using the changeset viewer.