Changeset 167


Ignore:
Timestamp:
2009-07-24 11:37:24 (10 years ago)
Author:
laolsaik
Message:

Rampege melkein valmis

Location:
lauri_s/Rampege
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • lauri_s/Rampege/Content/Content.contentproj

    r138 r167  
    6262    </Compile> 
    6363  </ItemGroup> 
     64  <ItemGroup> 
     65    <Compile Include="about bluesimaist ehk3.mp3"> 
     66      <Name>about bluesimaist ehk3</Name> 
     67      <Importer>Mp3Importer</Importer> 
     68      <Processor>SongProcessor</Processor> 
     69    </Compile> 
     70  </ItemGroup> 
    6471</Project> 
  • lauri_s/Rampege/Peli.cs

    r138 r167  
    2727        const double rampeNopeus = 200; 
    2828        Vector2D RampenPaikka; 
    29           
     29        Vector2D RampeOikeelle = new Vector2D(10000, 0); 
     30        Vector2D RampeVasemmalle = new Vector2D(-10000, 0); 
     31        Meter<int> pistelaskuri; 
     32        ValueDisplay pisteNaytto; 
     33        Timer ajastin; 
     34        int sekuntejaKulunut; 
     35        int kerattaviaKentassa; 
     36        HighScoreList Top10; 
     37 
     38 
    3039 
    3140        protected override void LoadContent() 
    3241        { 
    33             Gravity = new Vector2D(0,-500); 
     42            Gravity = new Vector2D(0, -500); 
    3443            Level = Teekentta(); 
    3544            TeeRampe(Level); 
    3645            Nappaimet(); 
    37         } 
    38  
     46            Aika(); 
     47            Pistelaskuri(); 
     48            Musa(); 
     49            Top10 = HighScoreList.LoadOrCreate(this, "Top10Rampege.txt", 10); 
     50        } 
     51 
     52        void Nimensyotto(InputQueryWindow sender, string input) 
     53        { 
     54            Top10.AddScore(input, 1000 - sekuntejaKulunut * 10); 
     55 
     56 
     57            Top10.ScreenList.ItemColor = Color.Red; 
     58 
     59            Top10.Show(); 
     60        } 
    3961 
    4062 
     
    4264        { 
    4365            Level kentta = new Level(this, 1200, 320); 
    44             char[,] kentta1 ; 
    45             kentta1 = new char[8,30] 
     66            char[,] kentta1; 
     67            kentta1 = new char[8, 30] 
    4668            { 
    4769             {'t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t'}, 
     
    5072             {'t','o','o','o','o','o','b','b','b','p','o','b','o','b','b','o','o','p','o','b','b','b','p','b','o','o','o','o','o','t'}, 
    5173             {'t','o','o','o','o','o','o','o','o','o','b','b','b','b','o','o','t','o','o','o','o','o','o','o','o','o','o','o','o','t'}, 
    52              {'t','o','r','b','o','o','o','o','b','o','o','o','t','o','t','o','t','b','o','o','b','o','b','o','o','o','o','o','o','t'}, 
     74             {'t','o','r','o','o','o','o','o','b','o','o','o','t','o','t','o','t','b','o','o','b','o','b','o','o','o','o','o','o','t'}, 
    5375             {'t','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','t'}, 
    5476             {'t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t','t'} 
     
    5678 
    5779            for (int i = 0; i < 8; i++) 
    58                         { 
    59  
    60  
    61                             for (int j = 0; j < 30; j++) 
    62                             { 
    63                     char t = kentta1[i,j]; 
    64                                 switch(t) 
     80            { 
     81 
     82 
     83                for (int j = 0; j < 30; j++) 
     84                { 
     85                    char t = kentta1[i, j]; 
     86                    switch (t) 
    6587                    { 
    66                         case 't': LuoTiili(kentta, j*Koko - AlkuX,-i*Koko + AlkuY); break; 
    67                         case 'r': LuoRampenpaikka(kentta, j * Koko - AlkuX,-i * Koko + AlkuY); break; 
     88                        case 't': LuoTiili(kentta, j * Koko - AlkuX, -i * Koko + AlkuY); break; 
     89                        case 'r': LuoRampenpaikka(kentta, j * Koko - AlkuX, -i * Koko + AlkuY); break; 
    6890                        case 'b': LuoBobo(kentta, j * Koko - AlkuX, -i * Koko + AlkuY); break; 
    69                         case 'p': LuoPiikki(kentta, j * Koko - AlkuX, -i * Koko + AlkuY); break;  
    70                          
    71                      
     91                        case 'p': LuoPiikki(kentta, j * Koko - AlkuX, -i * Koko + AlkuY); break; 
     92 
     93 
    7294                    } 
    73                             } 
     95                } 
    7496            } return kentta; 
    7597        } 
    7698 
    77         void LuoTiili(Level kentta ,double x, double y) 
     99        void LuoTiili(Level kentta, double x, double y) 
    78100        { 
    79101            PhysicsObject tiili = PhysicsObject.CreateStaticObject(Koko, Koko); 
     
    88110        void LuoBobo(Level kentta, double x, double y) 
    89111        { 
     112            kerattaviaKentassa++; 
    90113            PhysicsObject bobo = PhysicsObject.CreateStaticObject(Koko, Koko); 
    91114            kentta.Objects.Add(bobo); 
     
    110133        void LuoRampenpaikka(Level kentta, double x, double y) 
    111134        { 
    112             RampenPaikka = new Vector2D(x,y); 
     135            RampenPaikka = new Vector2D(x, y); 
    113136        } 
    114137 
     
    116139        { 
    117140            ClearControls(); 
    118             Controls.Listen(Keys.A, ButtonPosition.Down, OikeeVasen, "liikkuu vasen", tyyppi, -rampeNopeus); 
    119             Controls.Listen(Keys.D, ButtonPosition.Down, OikeeVasen, "liikkuu oikee", tyyppi, rampeNopeus); 
     141            Controls.Listen(Keys.A, ButtonPosition.Down, OikeeVasen, "liikkuu vasen", tyyppi, RampeVasemmalle); 
     142            Controls.Listen(Keys.D, ButtonPosition.Down, OikeeVasen, "liikkuu oikee", tyyppi, RampeOikeelle); 
    120143            Controls.Listen(Keys.W, ButtonPosition.Pressed, Hyppy, "hyppää", tyyppi); 
    121144            Controls.Listen(Keys.Enter, ButtonPosition.Pressed, UPPaina, null); 
    122145 
    123             Controls.Listen(PlayerIndex.One, Buttons.DPadLeft, ButtonPosition.Down, OikeeVasen, null, tyyppi, -rampeNopeus); 
    124             Controls.Listen(PlayerIndex.One, Buttons.DPadRight, ButtonPosition.Down, OikeeVasen, null, tyyppi, rampeNopeus); 
     146            Controls.Listen(PlayerIndex.One, Buttons.DPadLeft, ButtonPosition.Down, OikeeVasen, null, tyyppi, RampeVasemmalle); 
     147            Controls.Listen(PlayerIndex.One, Buttons.DPadRight, ButtonPosition.Down, OikeeVasen, null, tyyppi, RampeOikeelle); 
    125148            Controls.Listen(PlayerIndex.One, Buttons.A, ButtonPosition.Pressed, Hyppy, null, tyyppi); 
    126149            Controls.Listen(PlayerIndex.One, Buttons.Start, ButtonPosition.Pressed, UPPaina, null); 
     
    129152        private bool OikeeVasen(ControlEvent e) 
    130153        { 
    131             PhysicsObject tyyppi = e.Parameter0.ToPhysicsObject(); 
    132             double nopeus = e.Parameter1.ToDouble(); 
    133             double sekuntejaKulunut = e.Time.ElapsedGameTime.TotalSeconds; 
    134             double uusiX = tyyppi.X + nopeus * sekuntejaKulunut; 
    135  
    136             tyyppi.X = uusiX; 
     154            e.Parameter0.ToPhysicsObject().Push(e.Parameter1.ToVector2D()); 
    137155 
    138156            return false; 
     
    154172            { 
    155173                tormays.Obj.Lifetime.IsExpired = true; 
     174                pistelaskuri.Value++; 
    156175            } 
    157176 
     
    179198        void UusiPeli() 
    180199        { 
     200            kerattaviaKentassa = 0; 
     201            pistelaskuri.Reset(); 
    181202            tyyppi.Lifetime.IsExpired = true; 
    182203            Level = Teekentta(); 
    183204            TeeRampe(Level); 
    184205            Nappaimet(); 
     206            sekuntejaKulunut = 0; 
     207            ajastin.Start(); 
     208            Top10.Hide(); 
    185209        } 
    186210 
     
    191215        } 
    192216 
     217        void Pistelaskuri() 
     218        { 
     219            pistelaskuri = new Meter<int>(0, 0, kerattaviaKentassa); 
     220            pistelaskuri.UpperLimit += new Meter<int>.OnLimitHandler(TavoitePistemaaraSaavutettu); 
     221            pisteNaytto = new ValueDisplay(this); 
     222            pisteNaytto.HorizontalOrigin = HorizontalAlignment.Left; 
     223            pisteNaytto.VerticalOrigin = VerticalAlignment.Top; 
     224            pisteNaytto.Text = "Pisteet: "; 
     225            pisteNaytto.X = Screen.RightSafe - 250; 
     226            pisteNaytto.Y = Screen.TopSafe; 
     227            pisteNaytto.BindTo(pistelaskuri); 
     228            Add(pisteNaytto); 
     229        } 
     230 
     231        void Aika() 
     232        { 
     233            ajastin = new Timer(); 
     234            ajastin.Interval = 1; 
     235            ajastin.Trigger += new Timer.TriggerHandler(ajastin_Trigger); 
     236            AddTimer(ajastin); 
     237            ajastin.Start(); 
     238        } 
     239 
     240        void ajastin_Trigger(Timer sender) 
     241        { 
     242            sekuntejaKulunut++; 
     243        } 
     244 
     245 
     246 
     247        private void TavoitePistemaaraSaavutettu(Meter<int> po) 
     248        { 
     249            MessageDisplay.Add("Keräsit kaikki Bobot :D!"); 
     250            MessageDisplay.Add(sekuntejaKulunut.ToString() + " Sekunnissa"); 
     251            ajastin.Stop(); 
     252            InputQueryWindow PelaajanNimi = new InputQueryWindow(this);  
     253 
     254            PelaajanNimi.X = 0;  
     255 
     256            PelaajanNimi.Y = 200;  
     257 
     258            PelaajanNimi.Title = "Kirjoita nimesi";  
     259 
     260            PelaajanNimi.InputConfirmed += new InputQueryWindow.InputHandler(Nimensyotto);  
     261 
     262            ShowWindow(PelaajanNimi);  
     263 
     264        } 
     265 
     266        void Musa() 
     267        { 
     268            Song musa = Content.Load<Song>("about bluesimaist ehk3"); 
     269            MediaPlayer.IsRepeating = true; 
     270            MediaPlayer.Play(musa); 
     271        } 
     272 
     273 
    193274 
    194275 
Note: See TracChangeset for help on using the changeset viewer.