Changeset 303


Ignore:
Timestamp:
2009-08-05 14:56:42 (10 years ago)
Author:
nuvamikk
Message:
 
Location:
nuutti_m
Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • nuutti_m/Tasohyppely2/Peli.cs

    r279 r303  
    2929        PhysicsObject maali; 
    3030 
     31        Meter<int> LuoPisteLaskuri(double x, double y) 
     32        { 
     33            Meter<int> laskuri = new Meter<int>(0, 0, 10); 
     34            ValueDisplay naytto = new ValueDisplay(this); 
     35            naytto.BindTo(laskuri); 
     36            naytto.X = x; 
     37            naytto.Y = y; 
     38            naytto.ValueColor = Color.Black; 
     39            Add(naytto); 
     40            return laskuri; 
     41        } 
     42 
     43        Meter<int> pelaajan1Pisteet; 
     44        Meter<int> pelaajan2Pisteet; 
     45 
     46 
    3147        int kenttaNro; // monesko kenttä on menossa 
    3248 
    3349        #endregion 
    3450 
    35  
     51       
    3652        #region Alustukset 
    3753        protected override void LoadContent() 
     
    4258            DrawPerimeter = false; // ei haluta piirtää kentän reunoja 
    4359 
    44             // Luodaan pistelaskuri 
    45             pisteLaskuri = new Meter<int>(0, 0, 1000000); 
    46  
    47             // luodaan pistelaskunäyttö 
    48             pisteNaytto = new ValueDisplay(this); 
    49             pisteNaytto.Text = "Pisteitä: "; 
    50             pisteNaytto.X = Screen.RightSafe - 250; 
    51             pisteNaytto.Y = Screen.TopSafe - 50; 
    52             pisteNaytto.BindTo(pisteLaskuri); 
    53             Add(pisteNaytto);    // lisätään peliin 
    54  
     60 
     61            LisaaLaskurit(); 
     62     
     63             
    5564            // Asetetaan painovoima 
    5665            Gravity = new Vector2D(0, -1000); 
    5766 
    5867            // Zoomataan lähemmäksi 
    59             Camera.ZoomFactor = 2.0; 
     68            Camera.ZoomFactor = 0.500; 
    6069 
    6170            aloitaUusiPeli(); 
    6271 
     72 
     73        } 
     74 
     75        void LisaaLaskurit() 
     76        { 
     77            pelaajan1Pisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 
     78            pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100.0, Screen.Top - 100.0); 
    6379        } 
    6480 
     
    7389 
    7490            // Laitetaan peliohje näyttöön 
    75             MessageDisplay.Add("Etsi iso tähti!"); 
     91            MessageDisplay.Add("Kerää enemmän tähtiä kuin toinen!"); 
    7692            MessageDisplay.Add("Mutta varo haamuja..."); 
    7793        } 
     
    8298        Level seuraavaKentta() 
    8399        { 
    84             pisteLaskuri.Reset(); 
     100             
    85101            kenttaNro += 1; // lisätään kenttänumeroa yhdellä 
    86102            MessageDisplay.Add("Kenttä " + kenttaNro); 
     
    93109        Level luoKentta() 
    94110        { 
    95             Level kentta = new Level(this, 2000, 1000); 
     111             
     112 
     113            Level kentta = new Level(this, 2000, 1600); 
    96114            kentta.CreateBorder(); 
    97115            kentta.Borders.Visible = false; 
    98             kentta.Background.CreateGradient(Color.White, Color.SkyBlue); 
    99  
    100             Platform alusta = new Platform(kentta.Width, 300, Color.LightGreen); 
     116            kentta.Background.CreateGradient(Color.White, Color.DarkGreen); 
     117 
     118            Platform alusta = new Platform(kentta.Width, 300, Color.DarkGreen); 
    101119            alusta.X = 0; 
    102120            alusta.Y = kentta.Bottom - alusta.Height / 2; 
    103121            kentta.Objects.Add(alusta); 
    104122 
    105             lisaaPieniTaso(kentta, -200, -350); 
     123            lisaaPieniTaso(kentta, -200, -250); 
    106124            lisaaPieniTaso(kentta, 200, -350); 
     125            lisaaPieniTaso(kentta, 400, 150); 
    107126            lisaaPieniTaso(kentta, 400, -150); 
    108             lisaaPieniTaso(kentta, 400, -150); 
    109  
    110127            lisaaPieniTaso(kentta, 500, 0); 
    111128            lisaaPieniTaso(kentta, -500, 0); 
     
    114131            lisaaPieniTaso(kentta, -100, 400); 
    115132            lisaaPieniTaso(kentta, 0, -250); 
    116              
     133            lisaaPieniTaso(kentta, -300, 250); 
     134            lisaaPieniTaso(kentta, 0, -500); 
     135            lisaaPieniTaso(kentta, 250, 500); 
     136            lisaaPieniTaso(kentta, 50, 100); 
     137            lisaaPieniTaso(kentta, 100, -650); 
     138 
    117139            lisaaMaali(kentta); 
    118140            lisaaPelaajat(kentta); 
     
    127149        void lisaaPieniTaso(Level kentta, double x, double y) 
    128150        { 
    129             Platform taso = new Platform(100, 30, Color.Green); 
     151            Platform taso = new Platform(100, 30, Color.DarkGreen); 
    130152            taso.X = x; 
    131153            taso.Y = y; 
     
    142164            pelaaja2 = new PlatformCharacter(4, Shapes.CreateCircle(20)); 
    143165            pelaaja2.Texture = Content.Load<Texture2D>("norsu"); 
    144             pelaaja2.X = 10; 
     166            pelaaja2.X = 100; 
    145167            pelaaja2.Y = kentta.Bottom + 120; 
    146168 
    147             AddCollisionHandler(pelaaja1, osuiMaaliin); 
    148             AddCollisionHandler(pelaaja2, osuiMaaliin); 
    149  
     169       
    150170            kentta.Objects.Add(pelaaja1); 
    151171            kentta.Objects.Add(pelaaja2); 
     
    154174        void lisaaTahdet(Level kentta) 
    155175        { 
    156             for (int i = 0; i < 20; i++) 
     176            for (int i = 0; i < 100; i++) 
    157177            { 
    158178                PhysicsObject tahti = new PhysicsObject(0.005, Shapes.CreateCircle(12)); 
    159179                tahti.X = RandomGen.NextDouble(-475.0, 475.0); 
    160180                tahti.Y = 400.0; 
    161                 tahti.Restitution = 1.0; 
     181                tahti.Restitution = 0.0; 
    162182                tahti.Texture = Content.Load<Texture2D>("tahti"); 
    163183                AddCollisionHandler(tahti, keraa); 
     
    278298 
    279299                this.PlaySound("kerays", -0.5, 0.5); 
    280                 pisteLaskuri.Value += 1; 
    281             } 
    282         } 
     300                 
     301            } 
     302 
     303            if (collision.Other.Equals(pelaaja2)) 
     304            { 
     305                PhysicsObject tahti = collision.Obj; 
     306                tahti.Destroy(); 
     307 
     308                this.PlaySound("kerays", -0.5, 0.5); 
     309                
     310            } 
     311        } 
     312 
    283313 
    284314        // Haamu tuuppaa pelaajaa 
     
    295325                    Controls.GameControllers[PlayerIndex.One].Vibrate(0.5, 0.5, 0.0, 0.0, 0.1); 
    296326                } 
     327                if (collision.Other == pelaaja2) 
     328                { 
     329                    // pieni värinä törmäyksestä 
     330                    Controls.GameControllers[PlayerIndex.One].Vibrate(0.5, 0.5, 0.0, 0.0, 0.1); 
     331                } 
     332 
    297333                this.PlaySound("tuuppaus"); 
    298334                collision.Other.Hit(new Vector2D(luku1, luku2)); 
Note: See TracChangeset for help on using the changeset viewer.