Changeset 1422


Ignore:
Timestamp:
2010-07-29 14:58:30 (9 years ago)
Author:
janiemit
Message:
 
Location:
2010/30/janiemit/FysiikkaPeli3
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • 2010/30/janiemit/FysiikkaPeli3/Content/Content.contentproj

    r1391 r1422  
    1 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5"> 
     1<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5"> 
    22  <PropertyGroup> 
    33    <ProjectGuid>bbf0e456-f1a8-4ee6-a9de-9bddcd14d51f</ProjectGuid> 
     
    3434    <Reference Include="Microsoft.Xna.Framework.Content.Pipeline.XImporter, Version=3.1.0.0, Culture=neutral, PublicKeyToken=6d5c3888ef60e27d" /> 
    3535  </ItemGroup> 
     36  <ItemGroup> 
     37    <Compile Include="avaruus.jpg"> 
     38      <Name>avaruus</Name> 
     39      <Importer>TextureImporter</Importer> 
     40      <Processor>TextureProcessor</Processor> 
     41    </Compile> 
     42  </ItemGroup> 
    3643</Project> 
  • 2010/30/janiemit/FysiikkaPeli3/Peli.cs

    r1391 r1422  
    33using Jypeli.Widgets; 
    44using Jypeli.Assets; 
     5using Jypeli.Effects; 
     6 
    57 
    68public class Peli : PhysicsGame 
    79{ 
     10    int elamiaAlussa = 50; 
    811    Vector nopeusoikealle = new Vector(2000, 0); 
    912    Vector nopeusvasemmalle = new Vector(-2000, 0); 
    1013    const double pallonNopeus = 500; 
     14    Image taustaKuva = LoadImage("avaruus"); 
     15 
     16 
    1117 
    1218    Vector pysahdy = new Vector(0, 0); 
     
    1622    // PhysicsObject maila2; 
    1723    IntMeter pelaajan1Pisteet; 
    18     IntMeter pelaajanhp;  
     24    IntMeter pelaajanhp; 
     25    int rajahdyslaskuri; 
     26     
    1927 
    2028 
    2129    protected override void Begin() 
    2230    { 
    23  
     31        ClearAll(); 
    2432        LuoKentta(); 
    2533        AsetaOhjaimet(); 
    2634        AloitaPeli(); 
    2735        LisaaLaskurit(); 
    28  
    29         
    30          
    31  
    32     } 
     36        Level.Background.Image = taustaKuva; 
     37        rajahdyslaskuri = 0; 
     38    } 
     39 
    3340 
    3441    void TiileenTormattiin(PhysicsObject tiili, PhysicsObject tormaaja) 
     
    4047        { 
    4148            Timer.SingleShot(0.1, tiili.Destroy); 
    42  
    43            
    44              
    45                 pelaajan1Pisteet.Value += 10; 
     49            Explosion rajahdys = new Explosion(300); 
     50            rajahdys.Position = tiili.Position; 
     51            rajahdys.Speed = 90.0; 
     52            rajahdys.Force = 0; 
     53            rajahdys.ShockwaveColor = Color.TransparentBlack; 
     54                //new Color(100,0,0 , 50); 
     55            Add(rajahdys); 
     56            pelaajan1Pisteet.Value += 100; 
    4657             
    4758 
     
    5768        tiili.X = X; 
    5869        tiili.Y = Y; 
    59         Add(tiili); 
     70        Add(tiili,0); 
    6071        return tiili; 
    6172 
     
    6980        pallo.Y = -340.0; 
    7081        pallo.KineticFriction = 0.0; 
    71         pallo.Restitution = 2.0; 
    72  
    73         Add(pallo); 
     82        pallo.Restitution = 1.0; 
     83 
     84        Add(pallo,1); 
    7485 
    7586        //Level.CreateBorders(90.0, true); 
     
    7889        Camera.ZoomToLevel(); 
    7990 
    80         maila1 = LuoMaila(0.0, -390.0); 
     91        maila1 = LuoMaila(0.0, -370.0); 
    8192        //Add(maila1); 
    8293        //maila2 = LuoMaila(0.0,-365.0); 
     
    91102    void AsetaOhjaimet() 
    92103    { 
    93         Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa vasemmalle", maila1, nopeusvasemmalle); 
    94         Keyboard.Listen(Key.A, ButtonState.Released, AsetaNopeus, null, maila1, pysahdy); 
    95         Keyboard.Listen(Key.D, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa oikealle", maila1, nopeusoikealle); 
    96         Keyboard.Listen(Key.D, ButtonState.Released, AsetaNopeus, null, maila1, pysahdy); 
     104        Keyboard.Listen(Key.Left, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa vasemmalle", maila1, nopeusvasemmalle); 
     105        Keyboard.Listen(Key.Left, ButtonState.Released, AsetaNopeus, null, maila1, pysahdy); 
     106        Keyboard.Listen(Key.Right, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa oikealle", maila1, nopeusoikealle); 
     107        Keyboard.Listen(Key.Right, ButtonState.Released, AsetaNopeus, null, maila1, pysahdy); 
    97108        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu"); 
    98         Keyboard.Listen(Key.F1, ButtonState.Pressed,uudistatiili ,"uusi tiili kasa" ); 
     109        Keyboard.Listen(Key.F12, ButtonState.Pressed,uudistatiili ,"uusi tiili kasa" ); 
    99110    } 
    100111    void AsetaNopeus(PhysicsObject maila, Vector nopeus) 
     
    114125    PhysicsObject LuoMaila(double x, double y) 
    115126    { 
    116         PhysicsObject maila = PhysicsObject.CreateStaticObject(200.0, 10.0,Shapes.Rectangle,CollisionShapeQuality.Best); 
     127        PhysicsObject maila = PhysicsObject.CreateStaticObject(200.0, 20.0,Shapes.Rectangle,CollisionShapeQuality.Best); 
    117128        maila.X = x; 
    118129        maila.Y = y; 
     
    120131        maila.Color = Color.ForestGreen; 
    121132        maila.IgnoresCollisionResponse = false; 
     133         
    122134        Add(maila); 
    123135 
     
    128140    protected override void Update(Time time) 
    129141    { 
     142        if (rajahdyslaskuri == 100) 
     143        { 
     144            pummi(); 
     145            rajahdyslaskuri = 0; 
     146        } 
     147        rajahdyslaskuri++; 
    130148 
    131149        if (pallo != null && Math.Abs(pallo.Velocity.Y) < pallonNopeus) 
     
    164182        pelaajan1Pisteet = LuoPisteLaskuri(350, 350,"pisteet"); 
    165183        pelaajanhp = LuoPisteLaskuri(-350, 350,"HP"); 
    166         pelaajanhp.Value = 10; 
     184        pelaajanhp.Value = elamiaAlussa; 
     185        pelaajanhp.MinValue = -1; 
     186        pelaajanhp.LowerLimit += PeliLoppui; 
    167187 
    168188    } 
     
    179199        Label textit = new Label(texti); 
    180200        Add(textit); 
    181         textit.X = naytto.X - 360; 
    182         //textit.Color = Color.Red; 
     201        textit.X = naytto.X -70; 
     202        textit.Y = naytto.Y = 300; 
     203        textit.Color = Color.Red; 
    183204        return laskuri; 
    184205    } 
     
    218239            LuoTiili(-100 + p * 101, 247); 
    219240        } 
    220     } 
    221  
    222  
    223  
    224  
    225  
    226  
     241        for (int i = 0; i < 2; i++) 
     242        { 
     243            LuoTiili(-50 + i * 101, 268); 
     244        } 
     245        for (int o = 0; o < 1; o++) 
     246        { 
     247            LuoTiili(-0 + o * 101, 289); 
     248        } 
     249    } 
     250    void PeliLoppui(int elamia) 
     251    { 
     252        Label gameower = new Label(); 
     253        gameower.Text = "GAMEOWER"; 
     254        gameower.Color = Color.Red; 
     255        Add(gameower); 
     256        Timer.SingleShot(1,Begin); 
     257    } 
     258    void pummi() 
     259    { 
     260        Explosion rajahdys = new Explosion(10); 
     261        rajahdys.Position = RandomGen.NextVector(Level.Left, Level.Right, Level.Top, Level.Bottom); 
     262        rajahdys.Speed = 5.0; 
     263        rajahdys.Force = 0; 
     264        rajahdys.ShockwaveColor = Color.TransparentBlack; 
     265         //new Color(0, 100, 0, 100); 
     266        Add(rajahdys); 
     267 
     268    } 
    227269 
    228270 
Note: See TracChangeset for help on using the changeset viewer.