Changeset 3304 for 2012/26


Ignore:
Timestamp:
2012-06-28 10:52:20 (10 years ago)
Author:
sijoseha
Message:

Talletus.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2012/26/OlliL/SpaceImpact2/SpaceImpact2/SpaceImpact2/SpaceImpact2.cs

    r3300 r3304  
    1717    PhysicsObject laser; 
    1818 
    19     List<PhysicsObject> vihut= new List<PhysicsObject>(); 
     19    List<PhysicsObject> vihut = new List<PhysicsObject>(); 
    2020 
    2121    public override void Begin() 
     
    5151        Timer ajastin = new Timer(); 
    5252        ajastin.Interval = 1.5; 
    53         ajastin.Timeout += lisaavihuja; 
     53        ajastin.Timeout += delegate 
     54        { 
     55            LisaaSatunnainenVihu(); 
     56            LisaaSatunnainenVihu(); 
     57            LisaaSatunnainenVihu(); 
     58        }; 
    5459        ajastin.Start(); 
    5560    } 
     
    7984        Add(vihu); 
    8085        vihut.Add(vihu); 
    81         AddCollisionHandler(vihu, CollisionHandler.DestroyObject);      
     86        AddCollisionHandler(vihu, CollisionHandler.DestroyObject); 
     87        AddCollisionHandler(vihu, delegate(PhysicsObject v, PhysicsObject kohde) { vihut.Remove(v); }); 
    8288        return vihu; 
    8389    } 
     
    103109        Add(laser); 
    104110        Vector impulssi = new Vector(500.0, 0.0); 
    105         laser.Hit(impulssi);        
    106  
    107        // Explosion rajahdys = new Explosion(100); 
    108        // rajahdys.Position =laser.Position; 
     111        laser.Hit(impulssi); 
     112 
     113        // Explosion rajahdys = new Explosion(100); 
     114        // rajahdys.Position =laser.Position; 
    109115        //rajahdys.Speed = 500.0; 
    110116        //rajahdys.Force = 10000; 
    111        // rajahdys.ShockwaveColor = Color.Orange; 
    112        // Add(rajahdys); 
     117        // rajahdys.ShockwaveColor = Color.Orange; 
     118        // Add(rajahdys); 
    113119    } 
    114120    void AsetaOhjaimet() 
     
    138144        alus.Velocity = nopeus; 
    139145    } 
    140     void lisaavihuja() 
     146 
     147    void LisaaSatunnainenVihu() 
     148    { 
     149        double x = Level.Right - 57; 
     150        double y = RandomGen.NextDouble( 
     151            Level.Bottom + 28, Level.Top - 28 
     152            ); 
     153        int vihulistalaskuri = 0; 
     154        while (vihulistalaskuri < vihut.Count) 
     155        { 
     156            if (Math.Abs(vihut[vihulistalaskuri].X - x) > 112) 
     157            { 
     158                vihulistalaskuri++; 
     159                continue; 
     160            } 
     161 
     162            if (Math.Abs(y - vihut[vihulistalaskuri].Y) < 56) 
     163            { 
     164                y = RandomGen.NextDouble(Level.Bottom + 28, Level.Top - 28); 
     165                vihulistalaskuri = 0; 
     166            } 
     167            else vihulistalaskuri++; 
     168        } 
     169        Luovihu(x, y); 
     170    } 
     171 
     172    void lisaalaser() 
    141173    { 
    142174        int laskuri = 0; 
    143175        while (laskuri < 3) 
    144176        { 
    145             double y = RandomGen.NextDouble( 
    146                 Level.Bottom + 28, Level.Top - 28 
    147                 ); 
    148             Luovihu(Level.Right - 57, y); 
    149             laskuri++; 
    150         } 
    151     } 
    152     void lisaalaser() 
    153     { 
    154         int laskuri = 0; 
    155         while (laskuri < 3) 
    156              
    157         { 
    158177            //Luolaser(Level.Right + 56, RandomGen.NextDouble(Level.Bottom + 28, Level.Top - 28)); 
    159178            laskuri++; 
    160179        } 
    161180    } 
    162      
     181 
    163182    void LuoPistelaskuri() 
    164183    { 
    165          
     184 
    166185        pisteLaskuri = new IntMeter(0); 
    167186 
Note: See TracChangeset for help on using the changeset viewer.