Changeset 1375 for 2010/30


Ignore:
Timestamp:
2010-07-28 14:53:53 (9 years ago)
Author:
johulkko
Message:

Hahmo, tasot, maa ja pyssyt

Location:
2010/30/johulkko/FysiikkaPeli2
Files:
3 added
1 deleted
2 edited

Legend:

Unmodified
Added
Removed
  • 2010/30/johulkko/FysiikkaPeli2/Content/Content.contentproj

    r1360 r1375  
    4242  </ItemGroup> 
    4343  <ItemGroup> 
    44     <Compile Include="hahmo2.png"> 
    45       <Name>hahmo2</Name> 
     44    <Compile Include="tausta2.png"> 
     45      <Name>tausta2</Name> 
     46      <Importer>TextureImporter</Importer> 
     47      <Processor>TextureProcessor</Processor> 
     48    </Compile> 
     49  </ItemGroup> 
     50  <ItemGroup> 
     51    <Compile Include="hahmo2 pienenpi.png"> 
     52      <Name>hahmo2 pienenpi</Name> 
    4653      <Importer>TextureImporter</Importer> 
    4754      <Processor>TextureProcessor</Processor> 
  • 2010/30/johulkko/FysiikkaPeli2/Peli.cs

    r1360 r1375  
    66public class Peli : PhysicsGame 
    77{ 
    8     double nopeusvasemmalle = 200; 
    9     double nopeusoikealle = -200; 
     8    double nopeusvasemmalle = -200; 
     9    double nopeusoikealle = 200; 
    1010 
    1111    double maastonLeveys = 1000; 
    1212    double maastonKorkeus = 300; 
    13     Image maastonKuva = LoadImage("tausta"); 
     13    Image maastonKuva = LoadImage("tausta2"); 
    1414    Shape maastonMuoto; 
    15     Image olionKuva = LoadImage("hahmo2"); 
     15    Image olionKuva = LoadImage("hahmo2 pienenpi"); 
    1616    PlatformCharacter hahmo; 
    1717 
     
    2525    void LuoKentta() 
    2626    { 
    27         maastonMuoto = Shapes.FromImage(maastonLeveys, maastonKorkeus, maastonKuva); 
    28         PhysicsObject maasto = 
    29             PhysicsObject.CreateStaticObject( 
    30             maastonLeveys, 
    31             maastonKorkeus, 
    32             maastonMuoto); 
     27        //maastonMuoto = Shapes.FromImage(maastonLeveys, maastonKorkeus, maastonKuva); 
     28        //PhysicsObject maasto = 
     29        //    PhysicsObject.CreateStaticObject( 
     30        //    maastonLeveys, 
     31        //    maastonKorkeus, 
     32        //    maastonMuoto); 
    3333        //maasto.Image = maastonKuva; 
    34         Add(maasto); 
    35         maasto.Y = -249; 
     34        //maasto.Color = Color.Green; 
     35        //Add(maasto); 
     36        //maasto.Y = -300; 
     37        Mouse.IsCursorVisible = true; 
     38 
     39        PhysicsObject maa = PhysicsObject.CreateStaticObject(Level.Width, 110.0); 
     40        maa.Y = -350; 
     41        maa.Color = Color.Green; 
     42        Add(maa); 
     43 
     44        LuoTaso(200, 100); 
     45        LuoTaso(0, -100); 
     46        LuoTaso(-200, 100); 
     47         
     48        Gravity = new Vector(0.0, -800.0); 
    3649         
    3750        Level.CreateLeftBorder(); 
     
    4356        hahmo.Shape = Shapes.Rectangle; 
    4457        hahmo.Image = olionKuva; 
     58        hahmo.Tag = "tyyppi"; 
    4559        Add(hahmo); 
    4660         
    47         hahmo.Y = -199; 
     61        hahmo.Y = -180; 
    4862        hahmo.X = -110; 
    4963    } 
     
    6175    Keyboard.Listen(Key.Right, ButtonState.Down, HahmoLiikkuu, "hahmo liikkuu oikealle", hahmo, nopeusoikealle); 
    6276    Keyboard.Listen(Key.Right, ButtonState.Released, HahmoLiikkuu, null, hahmo, 0.0); 
    63     Keyboard.Listen(Key.Up, ButtonState.Down, Hahmohyppaa, "hahmo liikkuu oikealle", hahmo); 
     77    Keyboard.Listen(Key.Up, ButtonState.Pressed, Hahmohyppaa, "hahmo liikkuu oikealle", hahmo); 
    6478    Keyboard.Listen(Key.Up, ButtonState.Released, Hahmohyppaa, null, hahmo); 
    6579 
     80    Keyboard.Listen(Key.A, ButtonState.Down, HahmoLiikkuu, "hahmo liikkuu vasemmalle", hahmo, nopeusvasemmalle); 
     81    Keyboard.Listen(Key.A, ButtonState.Released, HahmoLiikkuu, null, hahmo, 0.0); 
     82    Keyboard.Listen(Key.D, ButtonState.Down, HahmoLiikkuu, "hahmo liikkuu oikealle", hahmo, nopeusoikealle); 
     83    Keyboard.Listen(Key.D, ButtonState.Released, HahmoLiikkuu, null, hahmo, 0.0); 
     84    Keyboard.Listen(Key.W, ButtonState.Pressed, Hahmohyppaa, "hahmo liikkuu oikealle", hahmo); 
     85    Keyboard.Listen(Key.W, ButtonState.Released, Hahmohyppaa, null, hahmo);    
     86         
     87        Mouse.Listen(MouseButton.Left, ButtonState.Pressed, Ammu, "hahmo liikkuu oikealle"); 
    6688 
    6789    } 
     
    7496    void Hahmohyppaa(PlatformCharacter hahmo) 
    7597    { 
    76         hahmo.Jump(100); 
     98        hahmo.Jump(1000); 
     99    } 
     100 
     101    void LuoTaso( double x, double y) 
     102    { 
     103        PhysicsObject taso = PhysicsObject.CreateStaticObject(100, 20); 
     104        taso.X = x; 
     105        taso.Y = y; 
     106        taso.Color = Color.Gray; 
     107        Add(taso); 
     108 
     109    } 
     110 
     111    void Ammu() 
     112    { 
     113        PhysicsObject panos = new PhysicsObject(6, 6); 
     114        panos.Color = Color.Yellow; 
     115        panos.Shape = Shapes.Circle; 
     116 
     117        Vector Pyssynteho = Mouse.PositionOnWorld; 
     118        panos.Angle = Pyssynteho.Angle; 
     119        Pyssynteho.X = Pyssynteho.X * 5; 
     120        Pyssynteho.Y = Pyssynteho.Y * 5; 
     121        if (Pyssynteho.X < hahmo.X) 
     122        { 
     123            panos.X = hahmo.X - 20; 
     124            panos.Y = hahmo.Y; 
     125        } 
     126        else  
     127        { 
     128            panos.X = hahmo.X + 20; 
     129            panos.Y = hahmo.Y; 
     130        } 
     131        panos.Hit(Pyssynteho); 
     132        panos.IgnoresGravity = false; 
     133        TimeSpan elinaika = new TimeSpan(10000000); 
     134        panos.MaximumLifetime = elinaika; 
     135        AddCollisionHandler(panos, PanosOsuu); 
     136        Add(panos); 
     137    } 
     138    void PanosOsuu(PhysicsObject panos, PhysicsObject kohde) 
     139    { 
     140        if (kohde.Tag.ToString() != "tyyppi") 
     141        { 
     142            panos.Destroy(); 
     143        } 
    77144    } 
    78145 
    79146 
     147    IntMeter pisteLaskuri; 
     148 
     149    void LuoLaskuri() 
     150    { 
     151        pisteLaskuri = new IntMeter(5); 
     152 
     153        Label pisteNaytto = new Label(); 
     154        pisteNaytto.X = Screen.Left + 100; 
     155        pisteNaytto.Y = Screen.Top - 100; 
     156        pisteNaytto.TextColor = Color.Red; 
     157 
     158        pisteNaytto.BindTo(pisteLaskuri); 
     159        Add(pisteNaytto); 
     160        Label pisteTeksti = new Label("Pisteitä: "); 
     161         
     162        pisteTeksti.X = Screen.Left + 50; 
     163        pisteTeksti.Y = Screen.Top - 100; 
     164        pisteTeksti.TextColor = Color.Red; 
     165        Add(pisteTeksti); 
     166         
     167        pisteLaskuri.Value++; 
     168        pisteLaskuri.Value += 1; 
     169        pisteLaskuri.Value = pisteLaskuri.Value + 1; 
     170 
     171        IntMeter laskuri = new IntMeter(5); 
     172        laskuri.MinValue = 10; 
     173        laskuri.LowerLimit += ElamatLoppu; 
     174 
     175    } 
     176 
     177    void ElamatLoppu(int elamat) 
     178    { 
     179 
     180    } 
     181 
    80182} 
    81  
Note: See TracChangeset for help on using the changeset viewer.