Ignore:
Timestamp:
2016-06-20 15:55:31 (3 years ago)
Author:
tesatapa
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2016/25/ToukoP/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1.cs

    r7467 r7471  
    99public class FysiikkaPeli1 : PhysicsGame 
    1010{ 
     11    IntMeter pelaajanpisteet; 
    1112    PhysicsObject raketti; 
     13    Vector pelaajanAlkuPaikka; 
    1214    public override void Begin() 
    1315    { 
    14         luoraketti(); 
     16         
    1517        LuoKentta(); 
    16        
     18        Lisaalaskuri(); 
    1719        LuoOhjaimet(); 
     20        Camera.ZoomToLevel(); 
    1821    } 
    1922 
    20     void luoraketti() 
     23    void luoraketti(Vector paikka, double leveys, double korkeus) 
    2124    { 
    22         raketti = new PhysicsObject(80, 30); 
     25        pelaajanAlkuPaikka = paikka; 
     26        raketti = new PhysicsObject(30, 10); 
    2327        raketti.Shape = Shape.Hexagon; 
    2428        raketti.Angle = Angle.FromDegrees(90); 
    2529        Add(raketti); 
    2630        raketti.Color = Color.Black; 
    27         raketti.Y = -300.0; 
    28         raketti.X = -580.0; 
     31        raketti.Position = paikka; 
     32        Timer ajastin = new Timer(); 
     33        ajastin.Interval = 0.05; 
     34        ajastin.Timeout += asetanopeus; 
     35        ajastin.Start(); 
     36        AddCollisionHandler(raketti, "vihollinen", TormaaViholliseen); 
     37        
    2938    } 
    3039 
     
    3342        Level.Background.Color = Color.White; 
    3443        TileMap kentta = TileMap.FromLevelAsset("Kentta1"); 
    35      
     44        kentta.SetTileMethod('p', luoraketti); 
    3645        kentta.SetTileMethod('#', LisaaTaso); 
    3746        kentta.Execute(); 
    38  
     47        //kentta.SetTileMethod("m", VaihdaLevel); 
    3948   } 
    4049    void LisaaTaso(Vector paikka, double leveys, double korkeus) 
     
    4453        taso.Color = Color.Blue; 
    4554        Add(taso); 
     55        taso.Tag = "vihollinen"; 
    4656    } 
    4757    void LuoOhjaimet() 
     
    4959        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    5060        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    51         Keyboard.Listen(Key.Right, ButtonState.Down, kaanna, "",- 1.0); 
    52         Keyboard.Listen(Key.Left, ButtonState.Down, kaanna, "", 1.0);   
     61        Keyboard.Listen(Key.Right, ButtonState.Down, kaanna, "",- 1.7); 
     62        Keyboard.Listen(Key.Left, ButtonState.Down, kaanna, "", 1.7);   
    5363 
    5464 
     
    6373} 
    6474 
     75    void asetanopeus() 
     76 { 
     77        raketti.Velocity = Vector.FromLengthAndAngle(75.0, raketti.Angle); 
    6578 
     79} 
     80     
     81    void TormaaViholliseen(PhysicsObject pelaaja, PhysicsObject vihollinen) 
     82    { 
     83        //pelaaja.Destroy(); 
     84        Pisteet(); 
     85        aloitaalusta(); 
     86    } 
     87    void aloitaalusta() 
     88    { 
     89        raketti.Position = pelaajanAlkuPaikka; 
     90        raketti.Velocity = Vector.Zero; 
     91        raketti.Angle = Angle.FromDegrees(90); 
     92    } 
     93    void Lisaalaskuri() 
     94    { 
     95        pelaajanpisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 
     96    } 
     97    IntMeter LuoPisteLaskuri(double x, double y) 
     98    { 
     99        IntMeter laskuri = new IntMeter(0); 
     100        laskuri.MaxValue = 10; 
     101        Label naytto = new Label(); 
     102        naytto.BindTo(laskuri); 
     103        naytto.X = x; 
     104        naytto.Y = y; 
     105        naytto.TextColor = Color.Black; 
     106        naytto.BorderColor = Color.White; 
     107        Add(naytto); 
     108        return laskuri; 
     109    } 
     110     
     111    void Pisteet() 
     112    { 
     113        pelaajanpisteet.Value += 1; 
    66114 
    67  
     115      
     116         
     117    } 
    68118 
    69119 
Note: See TracChangeset for help on using the changeset viewer.