Changeset 421 for arho_m


Ignore:
Timestamp:
2009-08-07 13:01:01 (10 years ago)
Author:
armahlam
Message:
 
Location:
arho_m/Avaruuspeli2
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • arho_m/Avaruuspeli2/Peli.cs

    r401 r421  
    2222    { 
    2323        #region Muuttujat 
     24 
    2425        BattleObject pelaaja1; 
    25         const int PELAAJAN_HP = 1000; 
     26        const int PELAAJAN_HP = 800; 
    2627        PlasmaCannon ase; 
    2728 
    2829        BarGauge hitpointNaytto; 
    2930        BarGauge pisteNaytto; 
     31 
    3032        double vaikeustaso = 0; 
     33 
    3134        int total_pisteet = 0; 
    3235        Meter<int> cur_pisteet; 
     36 
     37        HighScoreList highscores; 
     38 
    3339        #endregion 
    3440 
     
    3642        protected override void LoadContent() 
    3743        { 
     44            MessageDisplay.MessageTimeInSeconds = int.MaxValue; 
     45            alustaHighscores(); 
    3846            alustaNaytot(); 
    3947            lataaUusiKentta(); 
    40             MessageDisplay.MessageTimeInSeconds = int.MaxValue; 
    4148        } 
    4249 
     
    6572            Add(pisteNaytto); 
    6673        } 
     74 
     75        void alustaHighscores() 
     76        { 
     77            highscores = HighScoreList.LoadOrCreate(this, "topten.dat", 10); 
     78            highscores.ScreenList.ItemColor = Color.White; 
     79            highscores.ScreenList.BackGroundColor = Color.DarkBlue; 
     80            highscores.ScreenList.HighlightColor = Color.LightBlue; 
     81            highscores.ScreenInput.QueryText.TextColor = Color.Black; 
     82            highscores.CongratulationText = "Tuli ja leimaus! Ansaitsit pisteillä {1} paikan {0} listalta. Syötä nimesi:"; 
     83        } 
     84 
    6785        #endregion 
    6886 
     
    7088        private void lataaUusiKentta() 
    7189        { 
     90            highscores.Hide(); 
    7291            ClearPhysics(); 
    7392            ClearTimers(); 
     
    7594 
    7695            Gravity = new Vector2D(-240, 0); 
    77             vaikeustaso += 1; 
     96            vaikeustaso += 0.5; 
    7897            Level = luoKentta(); 
    7998 
     
    82101            asetaAjastimet(); 
    83102 
    84             if (cur_pisteet != null) 
    85                 total_pisteet += cur_pisteet.Value; 
    86  
    87103            lisaaPisteMittari(); 
    88104            MessageDisplay.Add("Taso " + vaikeustaso); 
     105 
     106             
    89107        } 
    90108 
     
    117135        private void lisaaPelaajat(Level kentta) 
    118136        { 
    119             IShape pelaaja_shape = Shapes.CreateRectangle(20, 20); 
     137            Texture2D pelaaja_tex = Content.Load<Texture2D>("pallo"); 
     138            IShape pelaaja_shape = Shapes.CreateRectangle(pelaaja_tex.Width, pelaaja_tex.Height); 
    120139            pelaaja1 = new BattleObject(pelaaja_shape, 15, PELAAJAN_HP); 
    121140 
    122             Texture2D pelaaja_tex = Content.Load<Texture2D>("pallo"); 
    123141            pelaaja1.Texture = pelaaja_tex; 
    124142 
     
    126144            pelaaja1.HitpointsReachedZero += new EventHandler(rajahdys); 
    127145 
    128             pelaaja1.MomentOfInertia = double.PositiveInfinity; 
     146            pelaaja1.MomentOfInertia = 8000; 
    129147            pelaaja1.IgnoresGravity = true; 
     148            pelaaja1.KineticFriction = 1.0; 
    130149            pelaaja1.Restitution = 1.0; 
    131150 
     
    226245        private Boolean UusiPeli(ControlEvent e) 
    227246        { 
     247             
    228248            lataaUusiKentta(); 
    229249            return true; 
     
    268288        { 
    269289            PhysicsObject po = sender.ToPhysicsObject(); 
    270             Explosion ex = new Explosion(po.Width * 1.25); 
     290            Explosion ex = new Explosion(po.Width * 1.50); 
    271291            ex.Position = po.Position; 
    272292            ex.Force = 2000; 
     
    478498                return; 
    479499 
    480             pelaaja1.HitPoints.Value += PELAAJAN_HP / 10; 
    481             lisaa_pisteita(15); 
     500            pelaaja1.HitPoints.Value += PELAAJAN_HP / 5; 
     501            lisaa_pisteita(20); 
    482502            c.Obj.Destroy(); 
    483503        } 
     
    507527                return; 
    508528 
    509             pelaaja1.HitPoints.Value = 0; 
    510             //pelaaja1.HitpointsReachedZero(); 
     529            pelaaja1.TakeDamage(new Damage(pelaaja1.HitPoints.Value)); 
    511530        } 
    512531 
     
    520539        { 
    521540            cur_pisteet.Value += num; 
     541            total_pisteet += cur_pisteet.Value; 
    522542 
    523543            if (cur_pisteet.Value >= cur_pisteet.MaxValue) 
    524             { 
    525544                lataaUusiKentta(); 
    526             } 
    527  
    528             if (vaikeustaso >= 5.0) 
    529                 lopeta_peli(); 
    530545        } 
    531546 
     
    537552            ClearPhysics(); 
    538553            ClearTimers(); 
    539  
    540             MessageDisplay.Add("Peli loppui siihen. Keräsit yhteensä " + total_pisteet + " pistettä."); 
     554            Level.Objects.Stop(); 
     555 
     556            MessageDisplay.Add("Peli loppui siihen. Keräsit yhteensä " + total_pisteet + " pistettä ja pääsit tasolle " + vaikeustaso); 
     557 
     558            highscores.ScreenList.Y += 90; 
     559            highscores.ScreenList.X += 150; 
     560    
     561            highscores.Show(total_pisteet); 
     562 
    541563            vaikeustaso = 0; 
    542564            total_pisteet = 0; 
Note: See TracChangeset for help on using the changeset viewer.