Changeset 5011


Ignore:
Timestamp:
2014-06-13 11:00:37 (5 years ago)
Author:
ilkarist
Message:
 
Location:
2014/24/IlariR/FysiikkaPeli1
Files:
2 added
7 edited

Legend:

Unmodified
Added
Removed
  • 2014/24/IlariR/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1.cs

    r4979 r5011  
    77using Jypeli.Widgets; 
    88 
    9 public class FysiikkaPeli1 : PhysicsGame 
     9public class HarjakaisenSpaceBattle : PhysicsGame 
    1010{ 
    1111    Image olionKuva = LoadImage("akukuva"); 
     
    2020    int vihollistenAlkuLkm = 2; 
    2121    int vihollistenLkm = 2; 
     22    IntMeter pisteLaskuri; 
     23    EasyHighScore topLista = new EasyHighScore(); 
     24 
     25    string menuTeksti = "Aloitus Näyttö"; 
    2226 
    2327    public override void Begin() 
    2428    { 
     29        topLista.HighScoreWindow.Closed += AloitusNautto; 
    2530        MediaPlayer.Play("taustamusiikki"); 
    2631        MediaPlayer.IsRepeating = true; 
    27  
    28         SmoothTextures = false; 
    29         Image taustaKuva = LoadImage("planeettataustakuva"); 
    30         Level.Background.Image = taustaKuva; 
    31         Level.Background.Color = Color.Black; 
    32  
    33         Camera.ZoomToLevel(); 
    34         Camera.Follow(hirviniemi); 
    35         Camera.Zoom(1.5); 
    36         elamaLaskuri.LowerLimit += delegate { hirviniemi.Destroy(); }; 
    37  
    38         LuoKentta(); 
    39          
    40  
    41  
    42         Mouse.IsCursorVisible = true; 
    43          
    44  
    45  
    46         GameObject tahtain = new GameObject(20, 20); 
    47         tahtain.Image = tahtaimenkuva; 
    48         Add(tahtain); 
    49  
    50  
    51  
    52         Timer tahtaimenLiikutus = new Timer(); 
    53         tahtaimenLiikutus.Interval = 0.01; 
    54         tahtaimenLiikutus.Timeout += delegate { tahtain.Position = Mouse.PositionOnWorld; }; 
    55         tahtaimenLiikutus.Start(); 
    56  
    57  
    58  
    59         PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    60         Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(-400, 0)); 
    61         Keyboard.Listen(Key.D, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(400, 0)); 
    62         Keyboard.Listen(Key.W, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(0, 400)); 
    63         Keyboard.Listen(Key.S, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(0, -400)); 
    64         Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    65         Mouse.Listen(MouseButton.Left, ButtonState.Down, AmmuAseella, "Ammu", hirviniemi); 
    66  
    67         Keyboard.Listen(Key.LeftControl, ButtonState.Down, MuutaAmpumaNopeutta, null, false); 
    68         Keyboard.Listen(Key.LeftControl, ButtonState.Up, MuutaAmpumaNopeutta, null, true); 
    69  
    70         Mouse.ListenMovement(0.1, Tahtaa, "Tähtää aseella"); 
     32        AloitusNautto(new Window()); 
     33 
    7134    } 
    7235 
     
    7437    void MuutaAmpumaNopeutta(bool arvo) 
    7538    { 
    76         if(arvo) hirviniemiase.TimeBetweenUse = TimeSpan.FromMilliseconds(500); 
     39        if (arvo) hirviniemiase.TimeBetweenUse = TimeSpan.FromMilliseconds(500); 
    7740        else hirviniemiase.TimeBetweenUse = TimeSpan.FromMilliseconds(1); 
    7841    } 
     
    8649            kohde.Destroy(); 
    8750            vihollistenLkm--; 
    88  
     51            pisteLaskuri.Value += 100; 
    8952            if (vihollistenLkm <= 0) 
    9053            { 
     
    9659                    i++; 
    9760                } 
    98                 vihollistenLkm = (vihollistenAlkuLkm*2); 
     61                vihollistenLkm = (vihollistenAlkuLkm * 2); 
    9962            } 
    10063        } 
     
    11578    void AsetaNopeus(PhysicsObject hirviniemi, Vector nopeus) 
    11679    { 
    117         hirviniemi.Velocity = nopeus; 
     80        hirviniemi.Velocity += nopeus; 
    11881    } 
    11982 
     
    176139        PhysicsObject vihollinen = new PhysicsObject(30, 30); 
    177140        vihollinen.Image = munamieskuva; 
    178         vihollinen.Position = new Vector(RandomGen.NextDouble(Level.Left +30, Level.Right-30), RandomGen.NextDouble(Level.Bottom +30, Level.Top -30)); 
     141        vihollinen.Position = new Vector(RandomGen.NextDouble(Level.Left + 30, Level.Right - 30), RandomGen.NextDouble(Level.Bottom + 30, Level.Top - 30)); 
    179142        vihollinen.Tag = "vihollinen"; 
    180143        Add(vihollinen); 
     
    184147        PhysicsObject vihollinen2 = new PhysicsObject(30, 30); 
    185148        vihollinen2.Image = gigakuva; 
    186         vihollinen2.Position = new Vector(RandomGen.NextDouble(Level.Left +30, Level.Right-30), RandomGen.NextDouble(Level.Bottom +30, Level.Top -30)); 
     149        vihollinen2.Position = new Vector(RandomGen.NextDouble(Level.Left + 30, Level.Right - 30), RandomGen.NextDouble(Level.Bottom + 30, Level.Top - 30)); 
    187150        vihollinen2.Tag = "vihollinen"; 
    188151        Add(vihollinen2); 
     
    198161        LuoVihollinen(); 
    199162    } 
     163    void elamaPalkki() 
     164    { 
     165        ProgressBar elamaPalkki = new ProgressBar(hirviniemi.Width, hirviniemi.Height / 6.0); 
     166        elamaPalkki.Y = hirviniemi.Height / 2.0; 
     167        elamaPalkki.X = 0; 
     168        elamaPalkki.BindTo(elamaLaskuri); 
     169 
     170        hirviniemi.Add(elamaPalkki); 
     171 
     172    } 
     173    void aloitapeli() 
     174    { 
     175        ClearAll(); 
     176        IsPaused = false; 
     177        SmoothTextures = false; 
     178        Image taustaKuva = LoadImage("planeettataustakuva"); 
     179        Level.Background.Image = taustaKuva; 
     180        Level.Background.Color = Color.Black; 
     181        LuoKentta(); 
     182        Camera.ZoomToLevel(); 
     183        Camera.Follow(hirviniemi); 
     184        Camera.Zoom(2.0); 
     185        elamaLaskuri.Value = elamaLaskuri.DefaultValue; 
     186        elamaLaskuri.LowerLimit += delegate 
     187        { 
     188            PelaajaKuoli(); 
     189        }; 
     190        elamaPalkki(); 
     191 
     192 
     193        Mouse.IsCursorVisible = true; 
     194        LuoPistelaskuri(); 
     195 
     196 
     197        GameObject tahtain = new GameObject(20, 20); 
     198        tahtain.Image = tahtaimenkuva; 
     199        Add(tahtain); 
     200 
     201 
     202 
     203        Timer tahtaimenLiikutus = new Timer(); 
     204        tahtaimenLiikutus.Interval = 0.01; 
     205        tahtaimenLiikutus.Timeout += delegate { tahtain.Position = Mouse.PositionOnWorld; }; 
     206        tahtaimenLiikutus.Start(); 
     207 
     208 
     209 
     210        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
     211        Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(-40, 0)); 
     212        Keyboard.Listen(Key.D, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(40, 0)); 
     213        Keyboard.Listen(Key.W, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(0, 40)); 
     214        Keyboard.Listen(Key.S, ButtonState.Down, AsetaNopeus, null, hirviniemi, new Vector(0, -40)); 
     215        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     216        Mouse.Listen(MouseButton.Left, ButtonState.Down, AmmuAseella, "Ammu", hirviniemi); 
     217 
     218        Keyboard.Listen(Key.LeftControl, ButtonState.Down, MuutaAmpumaNopeutta, null, false); 
     219        Keyboard.Listen(Key.LeftControl, ButtonState.Up, MuutaAmpumaNopeutta, null, true); 
     220 
     221        Mouse.ListenMovement(0.1, Tahtaa, "Tähtää aseella"); 
     222    } 
     223 
     224    void AloitusNautto(Window sender) 
     225    { 
     226        MultiSelectWindow aloitusnautto = new MultiSelectWindow(menuTeksti, "Aloita peli", "Parhaat pisteet", "Lopeta"); 
     227        aloitusnautto.AddItemHandler(0, aloitapeli); 
     228        aloitusnautto.AddItemHandler(1, ParhaatPisteet); 
     229        aloitusnautto.AddItemHandler(2, Exit); 
     230        Add(aloitusnautto); 
     231    } 
     232 
     233    void LuoPistelaskuri() 
     234    { 
     235        pisteLaskuri = new IntMeter(0); 
     236 
     237        Label pisteNaytto = new Label(); 
     238        pisteNaytto.X = Screen.Left + 100; 
     239        pisteNaytto.Y = Screen.Top - 100; 
     240        pisteNaytto.TextColor = Color.Black; 
     241        pisteNaytto.Color = Color.White; 
     242 
     243        pisteNaytto.BindTo(pisteLaskuri); 
     244        Add(pisteNaytto); 
     245    } 
     246    void ParhaatPisteet() 
     247    { 
     248        topLista.Show(); 
     249    } 
     250    void PelaajaKuoli() 
     251    { 
     252        menuTeksti = "Game Over"; 
     253        hirviniemi.Destroy(); 
     254        topLista.EnterAndShow(pisteLaskuri.Value); 
     255        //topLista.HighScoreWindow.Closed += AloitusNautto; 
     256        Pause(); 
     257        //LopetusNautto(); 
     258    } 
    200259} 
  • 2014/24/IlariR/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/Ohjelma.cs

    r4924 r5011  
    66    static void Main(string[] args) 
    77    { 
    8         using (FysiikkaPeli1 game = new FysiikkaPeli1()) 
     8        using (HarjakaisenSpaceBattle game = new HarjakaisenSpaceBattle()) 
    99        { 
    1010#if !DEBUG 
Note: See TracChangeset for help on using the changeset viewer.