Changeset 1358 for 2010


Ignore:
Timestamp:
2010-07-28 11:30:21 (9 years ago)
Author:
vematata
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2010/30/vematata/SeikailuRoolipeli/Peli.cs

    r1347 r1358  
    66public class Peli : PhysicsGame 
    77{ 
    8     Vector nopeusYlos = new Vector(0, 200); 
    9     Vector nopeusAlas = new Vector(0, -200); 
    10     Vector nopeusVasen = new Vector(-200, 0); 
    11     Vector nopeusOikea = new Vector(200, 0); 
     8    Vector nopeusYlos = new Vector(0, 300); 
     9    Vector nopeusAlas = new Vector(0, -300); 
     10    Vector nopeusVasen = new Vector(-300, 0); 
     11    Vector nopeusOikea = new Vector(300, 0); 
     12    Vector paikkaRuudulla = Mouse.PositionOnScreen; 
    1213 
    1314    PhysicsObject hahmo; 
     
    2526        Kivi(60, 100, 300); 
    2627        Puu(20, 100, -400); 
    27         Seina(500, 10, 30, 30); 
    28         Seina(500, 10, 30, -30); 
     28        Seina(50, 10, 30, 30); 
     29        Seina(50, 10, 30, -30); 
     30        Puu(50, -100, -200); 
     31 
    2932 
    3033    } 
     
    3740        hahmo.X = x; 
    3841        hahmo.Y = y; 
     42        hahmo.LinearDamping = 0.5; 
    3943        Add(hahmo); 
     44 
    4045        Camera.Follow(hahmo); 
    4146    } 
     
    5863        lehdet.Y = runko.Y = y; 
    5964        lehdet.IgnoresCollisionResponse = true; 
     65        lehdet.Tag = "lehdet"; 
     66        runko.Tag = "runko"; 
    6067        runko.Color = Color.Brown; 
    6168        lehdet.Color = Color.ForestGreen; 
     69         
     70        Timer Ajastin = new Timer(); 
     71        Ajastin.Interval = 0.1; 
     72        Ajastin.Trigger += Lapinakyvyys; 
     73        Ajastin.Tag = lehdet; 
     74        Add(Ajastin); 
     75        Ajastin.Start(); 
     76 
     77 
    6278 
    6379        Add(runko); 
    6480        Add(lehdet); 
     81 
    6582        return(runko); 
    66         return(lehdet); 
     83    } 
     84 
     85    void Lapinakyvyys(Timer Ajastin)  
     86    { 
     87        PhysicsObject kohde = Ajastin.Tag as PhysicsObject; 
     88 
     89        if(kohde != null) 
     90        { 
     91            Vector etaisyys = new Vector(kohde.X - hahmo.X, kohde.Y - hahmo.Y); 
     92            if (etaisyys.Magnitude < (kohde.Width/2+10)) 
     93            { 
     94                kohde.IsVisible = false; 
     95            } 
     96            else  
     97            { 
     98                kohde.IsVisible = true; 
     99            } 
     100        } 
     101     
    67102    } 
    68103 
     
    79114    void AsetaOhjaimet() 
    80115    { 
    81         Keyboard.Listen(Key.Up, ButtonState.Down, AsetaNopeus, "Liiku ylös", hahmo, nopeusYlos); 
    82         Keyboard.Listen(Key.Up, ButtonState.Released, AsetaNopeus, null, hahmo, Vector.Zero); 
    83         Keyboard.Listen(Key.Down, ButtonState.Down, AsetaNopeus, "Liiku alas", hahmo, nopeusAlas); 
    84         Keyboard.Listen(Key.Down, ButtonState.Released, AsetaNopeus, null, hahmo, Vector.Zero); 
    85         Keyboard.Listen(Key.Left, ButtonState.Down, AsetaNopeus, "liiku vasemmalle", hahmo, nopeusVasen); 
    86         Keyboard.Listen(Key.Left, ButtonState.Released, AsetaNopeus, null, hahmo, Vector.Zero); 
    87         Keyboard.Listen(Key.Right, ButtonState.Down, AsetaNopeus, "Liiku oikealle", hahmo, nopeusOikea); 
    88         Keyboard.Listen(Key.Right, ButtonState.Released, AsetaNopeus, null, hahmo, Vector.Zero); 
     116        Keyboard.Listen(Key.W, ButtonState.Down, AsetaNopeus, "Liiku ylös", hahmo, nopeusYlos); 
     117        Keyboard.Listen(Key.W, ButtonState.Released, AsetaNopeus, null, hahmo, Vector.Zero); 
     118        Keyboard.Listen(Key.S, ButtonState.Down, AsetaNopeus, "Liiku alas", hahmo, nopeusAlas); 
     119        Keyboard.Listen(Key.S, ButtonState.Released, AsetaNopeus, null, hahmo, Vector.Zero); 
     120        Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, "liiku vasemmalle", hahmo, nopeusVasen); 
     121        Keyboard.Listen(Key.A, ButtonState.Released, AsetaNopeus, null, hahmo, Vector.Zero); 
     122        Keyboard.Listen(Key.D, ButtonState.Down, AsetaNopeus, "Liiku oikealle", hahmo, nopeusOikea); 
     123        Keyboard.Listen(Key.D, ButtonState.Released, AsetaNopeus, null, hahmo, Vector.Zero); 
    89124 
     125                                    
    90126        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
    91127 
Note: See TracChangeset for help on using the changeset viewer.