Changeset 2538


Ignore:
Timestamp:
2011-08-03 14:58:14 (8 years ago)
Author:
onpernu
Message:

Talletus.

Location:
2011/31/OnniP
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • 2011/31/OnniP/PerusPeli3/PerusPeli3/Peli.cs

    r2512 r2538  
    1212    Image PilviKuva = LoadImage("Pillvi"); 
    1313    Image Pilvikuva2 = LoadImage ("Pillvi3"); 
     14    GameObject Sydän1; 
     15    GameObject Sydän2; 
     16    GameObject Sydän3; 
     17    PhysicsObject Mansikka; 
     18    PhysicsObject Maila; 
     19    
     20    Vector nopeusVasemmalle = new Vector(-100, 0); 
     21    Vector nopeusOikealle = new Vector (100, 0); 
     22    Vector Pysähdys = new Vector(0, 0); 
     23 
     24     
     25 
    1426    public override void Begin() 
    1527 
    1628    { 
    17          
     29        //luoMaila( Level.Left + 20.0, 0.0 ); 
     30 
     31        //luoMaila( Level.Right - 20.0, 0.0 ); 
     32 
     33        Camera.ZoomToLevel(); 
    1834        PhysicsObject katto = PhysicsObject.CreateStaticObject(1300, 100); 
    1935        katto.X = 0; 
     
    2339        katto.Color = Color.Cyan; 
    2440        PhysicsObject lattia =  PhysicsObject.CreateStaticObject(1300, 100); 
    25         lattia.Y = -500; 
     41        lattia.Y = -400; 
    2642        Add(lattia); 
    2743        lattia.IsVisible = true; 
    2844        luoMansikka (); 
     45        lattia.Color = Color.DarkGray; 
     46         
    2947        Level.BackgroundColor = Color.SkyBlue; 
    3048        luoPilvi(); 
     49        //MansikkaMaassa(); 
     50        lattia.Tag = "lattia"; 
     51        PhysicsObject oikeaSeinä = PhysicsObject.CreateStaticObject(300, 800); 
     52        oikeaSeinä.X = -600; 
     53        oikeaSeinä.IsVisible = true; 
     54        oikeaSeinä.Color = Color.Black; 
     55        Add(oikeaSeinä); 
     56        PhysicsObject vasenSeinä = PhysicsObject.CreateStaticObject(300, 800); 
     57        vasenSeinä.X = 600; 
     58        vasenSeinä.IsVisible = true; 
     59        vasenSeinä.Color = Color.Black; 
     60        Add(vasenSeinä); 
     61        Sydän1 = new GameObject(30, 30); 
     62        Sydän1.Shape = Shape.Heart; 
     63        Sydän1.Color = Color.Pink; 
     64        Sydän1.X = 300; 
     65        Sydän1.Y = -330; 
     66        Add(Sydän1); 
     67        Sydän2 = new GameObject(30, 30); 
     68        Sydän2.Shape = Shape.Heart; 
     69        Sydän2.Color = Color.Pink; 
     70        Sydän2.X = 350; 
     71        Sydän2.Y = -330; 
     72        Add(Sydän2);  
     73        Sydän3 = new GameObject(30, 30); 
     74        Sydän3.Shape = Shape.Heart; 
     75        Sydän3.Color = Color.Pink; 
     76        Sydän3.X = 400; 
     77        Sydän3.Y = -330; 
     78        Add(Sydän3); 
     79         
     80        Maila = PhysicsObject.CreateStaticObject (80, 20); 
     81        Maila.Color = Color.Black; 
     82        Add(Maila); 
     83         Asetaohjaimet (); 
     84         
     85 
     86 
     87     
     88 
    3189} 
    3290    void luoMansikka() 
    3391    { 
    34         PhysicsObject Mansikka = new PhysicsObject(80, 90); 
     92        Mansikka = new PhysicsObject(80, 90); 
    3593        Mansikka.Image = MansikanKuva; 
    36         Mansikka.Y = 500; 
     94        Mansikka.X = RandomGen.NextDouble(-500, 500); 
     95        Mansikka.Y = 300; 
    3796        Add(Mansikka); 
    38         Vector impulssi = new Vector(0, -200); 
     97        Vector impulssi = new Vector(0, -100); 
    3998        Mansikka.Hit(impulssi); 
    40      
     99        Mansikka.Tag = "Mansikka"; 
     100        AddCollisionHandler(Mansikka, MansikkaMaassa); 
     101 
     102         
     103 
     104         
    41105    } 
    42106    void luoPilvi() 
     
    57121 
    58122        } 
    59      
    60  
    61  
    62  
     123    void MansikkaMaassa(PhysicsObject tormaaja, PhysicsObject Kohde) 
     124    { 
     125         
     126        if (Kohde.Tag == "lattia") 
     127    { 
     128            Explosion rajahdys = new Explosion(100); 
     129            rajahdys.Position = tormaaja.Position; 
     130            Add(rajahdys); 
     131            tormaaja.Destroy(); 
     132            luoMansikka(); 
     133 
     134            if (!Sydän1.IsDestroyed) 
     135            { 
     136                Sydän1.Destroy(); 
     137                return; 
     138            } 
     139             
     140              
     141    
     142            if (!Sydän2.IsDestroyed) 
     143            { 
     144                Sydän2.Destroy(); 
     145                return; 
     146            } 
     147 
     148 
     149            if (!Sydän3.IsDestroyed) 
     150            { 
     151                Sydän3.Destroy(); 
     152                 
     153            } 
     154             
     155            else if (Sydän3.IsDestroyed) 
     156            { Exit(); } 
     157    }} 
     158 
     159    void Asetaohjaimet() 
     160    { 
     161        Keyboard.Listen(Key.Left, ButtonState.Down, Asetanopeus, "Liiku Vasemmalle", Maila, nopeusVasemmalle); 
     162        Keyboard.Listen(Key.Right, ButtonState.Down,Asetanopeus, "Liiku Oikealle", Maila, nopeusOikealle); 
     163        Keyboard.Listen(Key.Right,ButtonState.Released, Asetanopeus, "Pysähdys", Maila, Pysähdys); 
     164        Keyboard.Listen(Key.Left, ButtonState.Released, Asetanopeus, "Pysähdys", Maila, Pysähdys); 
     165     
     166    } 
     167 
     168 
     169    
     170 
     171    void Asetanopeus (PhysicsObject Maila, Vector nopeus) 
     172 
     173    {  
     174     
     175        Maila.Velocity = nopeus; 
     176 
     177     
     178     
     179    } 
     180      
     181    void luoMaila () 
     182 
     183    { 
     184        PhysicsObject Maila = PhysicsObject.CreateStaticObject( 20.0, 100.0 ); 
     185        Maila.Shape = Shape.Rectangle; 
     186        Maila.X = 0; 
     187        Maila.Y = -50; 
     188        Maila.Restitution = 1.0; 
     189        Add (Maila); 
     190 
     191       // return Maila; 
     192 
     193 
     194 
     195    } 
     196 
     197    
     198  
    63199 
    64200} 
    65  
    66  
     201     
     202        
     203     
     204     
     205     
     206 
     207     
     208     
     209   
     210     
     211      
     212      
     213      
     214 
     215     
     216     
     217     
     218 
     219    
     220     
     221  
     222 
     223 
     224 
     225 
     226     
     227      
     228         
     229     
     230    
     231 
     232 
     233 
     234 
     235 
     236 
     237 
     238 
Note: See TracChangeset for help on using the changeset viewer.