Changeset 5109 for 2014/26


Ignore:
Timestamp:
2014-06-25 15:02:00 (5 years ago)
Author:
pypelli
Message:
 
Location:
2014/26/Pyry-PetteriP/Motopeli
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • 2014/26/Pyry-PetteriP/Motopeli/Motopeli/Motopeli/Motopeli.cs

    r5094 r5109  
    1111    Image autoKuva = LoadImage("auto2"); 
    1212    Automobile moottoripyora; 
     13    RoadMap tie; 
    1314 
    1415    Vector[] reittiPisteet = new Vector[] 
    15 {   new Vector( 600.0, -400.0 ), 
    16     new Vector( -300.0, 400.0 ), 
    17     new Vector( -.400, -214.0 ), 
    18    // new Vector(- ), 
    19    // new Vector(  ), 
    20    
    21  
    22 }; 
     16    {      
     17      new Vector( 0, 300 ), 
     18      new Vector(400,300 ),//suoran päätös oikealla ulhaalla 
     19      new Vector(500, 250), 
     20      new Vector (600,100),   
     21      new Vector (600, 0), 
     22      new Vector (600, -100), 
     23      new Vector (600, -200), 
     24      new Vector (550, -210), 
     25      new Vector (500, -220), 
     26      new Vector (300, -300), 
     27      new Vector (100, -300), 
     28      new Vector (0, -300), 
     29      new Vector (-200, -100), 
     30      new Vector (-400, 0), 
     31      new Vector (-500, 50), 
     32      new Vector (-510, 80),  
     33      new Vector (-520, 110), 
     34      new Vector (-530, 140), 
     35      new Vector (-530, 180),  
     36      new Vector (-530, 220), 
     37      new Vector (-500, 250), 
     38      new Vector (-450, 270), 
     39      new Vector (-400, 290), 
     40      new Vector (-350, 300), 
     41      new Vector (10, 300), 
     42      }; 
     43 
     44 
     45 
     46 
     47 
     48 
     49 
     50 
     51 
     52 
     53 
     54 
     55 
     56 
     57 
    2358 
    2459 
    2560    public override void Begin() 
    2661    { 
     62        AloitaAlusta(); 
    2763        SmoothTextures = false; 
    28         Luokentta(); 
    29         Camera.ZoomToLevel(); 
    30         Moottoripyora(); 
    31         AsetaOhjaimet(); 
    32  
     64 
     65 
     66 
     67        //LuoKaide(); 
    3368 
    3469    } 
     
    3772    void Luokentta() 
    3873    { 
    39         RoadMap tie = new RoadMap(reittiPisteet); 
    40         tie.DefaultWidth = 150.0; 
     74        tie = new RoadMap(reittiPisteet); 
     75        tie.DefaultWidth = 200.0; 
    4176        tie.Insert(); 
    42         Level.BackgroundColor = Color.Green; 
    43  
    44         foreach (Vector paikka in reittiPisteet) 
    45         { 
    46             LuoMerkki(paikka); 
    47  
    48         } 
     77 
     78        Level.Background.Color = Color.Green; 
     79 
     80        Level.Size = Screen.Size; 
     81 
     82        Level.CreateBorders(0.5, false); 
     83 
    4984    } 
    5085 
     
    5287    void Moottoripyora() 
    5388    { 
    54         moottoripyora = new Automobile(40.0, 25.0); 
     89        moottoripyora = new Automobile(35.0, 20.0); 
    5590        Add(moottoripyora); 
     91        moottoripyora.Position = new Vector(0, 300); 
    5692        moottoripyora.Image = autoKuva; 
    5793        moottoripyora.AngularDamping = 0.95; 
    5894        //moottoripyora.MomentOfInertia = 400; 
    59  
     95        moottoripyora.TopSpeed = 10; 
     96        moottoripyora.Acceleration = 200; 
     97        moottoripyora.BrakeDeceleration = 500; 
    6098    } 
    6199 
     
    63101    void AsetaOhjaimet() 
    64102    { 
    65         Keyboard.Listen(Key.Right, ButtonState.Down, KaannaPelaajaa, null, -1000.0); 
    66         Keyboard.Listen(Key.Left, ButtonState.Down, KaannaPelaajaa, null, 1000.0); 
    67         Keyboard.Listen(Key.Up, ButtonState.Down, KaasutaPelaajaa, null); 
    68         Keyboard.Listen(Key.Down, ButtonState.Down, TaaksepainPelaajaa, null); 
     103        Keyboard.Listen(Key.D, ButtonState.Down, KaannaPelaajaa, null, -2000.0); 
     104        Keyboard.Listen(Key.A, ButtonState.Down, KaannaPelaajaa, null, 2000.0); 
     105        Keyboard.Listen(Key.W, ButtonState.Down, KaasutaPelaajaa, null); 
     106        Keyboard.Listen(Key.S, ButtonState.Down, TaaksepainPelaajaa, null); 
    69107        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    70108        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     109        Keyboard.Listen(Key.R, ButtonState.Pressed, AloitaAlusta, "Aloittaa Pelin Alusta"); 
     110 
    71111    } 
    72112 
     
    99139    } 
    100140 
     141    //void LuoKaide() 
     142    //{ 
     143    //    RoadMap kaide = new RoadMap(kaidePisteet); 
     144    //    kaide.DefaultWidth = 30.0; 
     145    //    kaide.CreateSegmentFunction = LuoKaiteenPatka; 
     146    //    kaide.Insert(); 
     147    //} 
     148 
     149    //PhysicsObject LuoKaiteenPatka(double width, double height, Shape shape) 
     150    //{ 
     151    //    PhysicsObject patka = PhysicsObject.CreateStaticObject(width, height, shape); 
     152    //    patka.Color = Color.Brown; 
     153    //    Add(patka); 
     154    //    return patka; 
     155    //} 
    101156    void AloitaAlusta() 
    102157    { 
    103158        ClearAll(); 
    104     } 
    105  
    106    
     159        Luokentta(); 
     160        lisaaMaaliViiva(); 
     161        AsetaOhjaimet(); 
     162        // LuoKaide(); 
     163        Moottoripyora(); 
     164        Camera.ZoomToLevel(); 
     165        LisaaAjastimet(); 
     166        LuoAikaLaskuri(); 
     167    } 
     168 
     169    void lisaaMaaliViiva() 
     170    { 
     171        PhysicsObject maali = PhysicsObject.CreateStaticObject(20, 200); 
     172        maali.Color = Color.White; 
     173        maali.Position = new Vector(0, 300); 
     174        maali.IgnoresCollisionResponse = true; 
     175        Add(maali); 
     176    } 
     177 
     178 
     179    void LisaaAjastimet() 
     180    { 
     181        Timer ajastin = new Timer(); 
     182        ajastin.Interval = 0.1; 
     183        ajastin.Timeout += Asetaautonnopedet; 
     184        ajastin.Start(); 
     185    } 
     186 
     187 
     188    void Asetaautonnopedet() 
     189    { 
     190        if (tie.IsInside(moottoripyora.Position)) 
     191        { 
     192            moottoripyora.MaxVelocity = 1000; 
     193        } 
     194        else 
     195        { 
     196            moottoripyora.MaxVelocity = 100; 
     197        } 
     198 
     199    } 
     200 
     201 
     202    void LuoAikaLaskuri() 
     203    { 
     204        Timer aikaLaskuri = new Timer(); 
     205        aikaLaskuri.Start(); 
     206 
     207        Label aikaNaytto = new Label(); 
     208        aikaNaytto.TextColor = Color.White; 
     209        aikaNaytto.DecimalPlaces = 1; 
     210        aikaNaytto.BindTo(aikaLaskuri.SecondCounter); 
     211        aikaNaytto.Position = new Vector(Screen.Right - 40, Screen.Top - 40); 
     212        Add(aikaNaytto); 
     213    } 
    107214} 
    108     
    109  
    110  
     215 
     216 
     217 
Note: See TracChangeset for help on using the changeset viewer.