Changeset 764 for 2010/23


Ignore:
Timestamp:
2010-06-11 13:19:27 (9 years ago)
Author:
ekeimaja
Message:

PELI VALMIS!

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2010/23/ekeimaja/Labyrinth/Labyrinth/Peli.cs

    r741 r764  
    1818 
    1919        const int RuudunLeveys = 50; 
    20         const int RuudunKorkeus = 50; 
     20        const int RuudunKorkeus = 70; 
    2121 
    2222        int kentanNro = 1; 
     
    2626 
    2727        Timer kentanVaihtoAjastin; 
    28  
    2928 
    3029        protected override void Begin() 
     
    5251        void LuoPisteLaskurit() 
    5352        { 
     53            // Pelaajan 2 pistelaskuri 
     54            pistelaskuri2 = new IntMeter(0); 
     55            ValueDisplay pisteNaytto2 = new ValueDisplay(); 
     56            pisteNaytto2.Text = "Pelaaja2 pisteet: "; 
     57            pisteNaytto2.X = Screen.Left + 100; 
     58            pisteNaytto2.Y = Screen.Top - 60; 
     59            pisteNaytto2.ValueColor = Color.Green; 
     60            pisteNaytto2.TextColor = Color.Green; 
     61            pisteNaytto2.BindTo(pistelaskuri2); 
     62            Add(pisteNaytto2); 
     63 
    5464            // Pelaajan 1 pistelaskuri 
    5565            pistelaskuri1 = new IntMeter(0); 
     
    5767            pisteNaytto1.Text = "Pelaaja1 pisteet: "; 
    5868            pisteNaytto1.X = Screen.Left + 100; 
    59             pisteNaytto1.Y = Screen.Top - 100; 
     69            pisteNaytto1.Y = Screen.Top - 20; 
    6070            pisteNaytto1.ValueColor = Color.Red; 
    6171            pisteNaytto1.TextColor = Color.Red; 
    6272            pisteNaytto1.BindTo(pistelaskuri1); 
    6373            Add(pisteNaytto1); 
    64  
    65             // Pelaajan 2 pistelaskuri 
    66             pistelaskuri2 = new IntMeter(0); 
    67             ValueDisplay pisteNaytto2 = new ValueDisplay(); 
    68             pisteNaytto2.Text = "Pelaaja2 pisteet: "; 
    69             pisteNaytto2.X = Screen.Left + 100; 
    70             pisteNaytto2.Y = Screen.Top - 20; 
    71             pisteNaytto2.ValueColor = Color.Red; 
    72             pisteNaytto2.TextColor = Color.Red; 
    73             pisteNaytto2.BindTo(pistelaskuri2); 
    74             Add(pisteNaytto2); 
    7574        } 
    7675 
     
    139138        PhysicsObject LuoSeina() 
    140139        { 
    141             PhysicsObject seina = PhysicsObject.CreateStaticObject(50.0, 50.0); 
     140            PhysicsObject seina = PhysicsObject.CreateStaticObject(RuudunLeveys, RuudunKorkeus); 
    142141            seina.Shape = Shapes.Rectangle; 
    143142            seina.Restitution = 0.0; 
     
    224223            { 
    225224                Pelaaja1.Destroy(); 
    226                 TextDisplay viesti = new TextDisplay(); 
     225                TextDisplay viesti = new TextDisplay(); viesti.TextColor = Color.Red; 
    227226                Add(viesti); 
    228                 viesti.X = Screen.Left + 600; 
    229                 viesti.Y = Screen.Top - 60; 
     227                viesti.X = Screen.Left + 300; 
     228                viesti.Y = Screen.Top - 780; 
    230229                viesti.Text = "Pelaaja1 joutui Hirviön kitaan!"; 
    231230            } 
     
    233232            { 
    234233                Pelaaja2.Destroy(); 
    235                 TextDisplay viesti = new TextDisplay(); 
     234                TextDisplay viesti = new TextDisplay(); viesti.TextColor = Color.Green; 
    236235                Add(viesti); 
    237                 viesti.X = Screen.Left + 600; 
    238                 viesti.Y = Screen.Top - 60; 
     236                viesti.X = Screen.Left + 300; 
     237                viesti.Y = Screen.Top - 800; 
    239238                viesti.Text = "Pelaaja2 joutui Hirviön kitaan!"; 
     239 
     240            } 
     241            if (Pelaaja1.IsDestroyed() && Pelaaja2.IsDestroyed()) 
     242            { 
     243                Timer ajastin = new Timer(); 
     244                ajastin.Interval = 5; 
     245                ajastin.Trigger += LopetaPeli; 
     246                Add(ajastin); 
     247                ajastin.Start(); 
     248 
     249                TextDisplay viesti = new TextDisplay(); viesti.TextColor = Color.Orange; 
     250                Add(viesti); 
     251                viesti.X = Screen.Left + 650; 
     252                viesti.Y = Screen.Top - 780; 
     253                viesti.Text = "Ei pelaajia kentällä, GAME OVER!"; 
    240254 
    241255            } 
     
    264278            { 
    265279 
    266                 if (pisteitakeratty < pisteitaKentassa) 
     280                if (pisteitakeratty > pisteitaKentassa) 
    267281                { 
    268282                    TextDisplay viesti = new TextDisplay(); 
    269283                    Add(viesti); 
    270                     viesti.X = Screen.Left + 600; 
    271                     viesti.Y = Screen.Top - 60; 
     284                    viesti.X = Screen.Left + 800; 
     285                    viesti.Y = Screen.Top - 800; 
    272286                    viesti.Text = "Et ole kerännyt kaikkia pisteitä!"; 
    273287                    return; 
     
    278292                    TextDisplay viesti = new TextDisplay(); 
    279293                    Add(viesti); 
    280                     viesti.X = Screen.Left + 600; 
    281                     viesti.Y = Screen.Top - 60; 
     294                    viesti.X = Screen.Left + 300; 
     295                    viesti.Y = Screen.Top - 800; 
    282296                    viesti.Text = "Pelaaja1 voitti pelin!"; 
    283297                } 
     
    287301                    viesti.TextColor = Color.White; 
    288302                    Add(viesti); 
    289                     viesti.X = Screen.Left + 600; 
    290                     viesti.Y = Screen.Top - 60; 
     303                    viesti.X = Screen.Left + 300; 
     304                    viesti.Y = Screen.Top - 800; 
    291305                    viesti.Text = "Pelaaja2 voitti pelin!"; 
    292306                    TimeSpan aika = new TimeSpan(0, 0, 5); 
     
    305319        { 
    306320            MessageDisplay.Add("Tultiin VaihdaKenttaa()-aliohjelmaan"); 
    307              
     321 
    308322            kentanVaihtoAjastin.Stop(); 
    309323            ClearAll(); 
     
    317331            if (moneskoKentta == 1) LuoKentta1(); 
    318332            else if (moneskoKentta == 2) LuoKentta2(); 
    319             else if (moneskoKentta == 3) LuoKentta3(); 
    320             else if (moneskoKentta > 3) Exit(); 
     333            else if (moneskoKentta == 3) PeliLopetus(); 
    321334        } 
    322335        void LuoKentta1() 
     
    337350            Camera.ZoomToLevel(); 
    338351        } 
    339          
     352 
    340353        void LuoKentta2() 
    341         {  
     354        { 
    342355            var merkit = new Dictionary<char, ObjectCreator>(); 
    343356            merkit['x'] = LuoSeina; 
     
    351364 
    352365            Tiles.Insert(this, ruudut, merkit, RuudunLeveys, RuudunKorkeus); 
    353              
     366 
    354367            LuoOhjain(); 
    355368            Camera.ZoomToLevel(); 
     
    374387            Camera.ZoomToLevel(); 
    375388        } 
     389        void LopetaPeli(Timer t) 
     390        { 
     391            Exit(); 
     392        } 
     393        void PeliLopetus() 
     394         { 
     395         TextDisplay viesti = new TextDisplay(); viesti.TextColor = Color.Red; 
     396         Add(viesti); 
     397         viesti.X = Screen.Left + 500; 
     398         viesti.Y = Screen.Top - 180; 
     399         viesti.Text = "LÄPÄISIT PELIN!"; 
     400         TextDisplay viesti2 = new TextDisplay(); viesti.TextColor = Color.Red; 
     401         Add(viesti2); 
     402         viesti2.X = Screen.Left + 500; 
     403         viesti2.Y = Screen.Top - 185; 
     404         viesti2.Text = "Pelistä saattaa tulla uusia versioita kesän aikana..."; 
     405         TextDisplay viesti3 = new TextDisplay(); viesti.TextColor = Color.Red; 
     406         Add(viesti3); 
     407         viesti3.X = Screen.Left + 500; 
     408         viesti3.Y = Screen.Top - 190; 
     409         viesti3.Text = "...joten jos haluat pelata, ota yhteyttä!"; 
     410         TextDisplay viesti4 = new TextDisplay(); viesti.TextColor = Color.Red; 
     411         Add(viesti4); 
     412         viesti4.X = Screen.Left + 500; 
     413         viesti4.Y = Screen.Top - 195; 
     414         viesti4.Text = "-Eki Majankallio"; 
     415         } 
    376416    } 
    377417} 
     418     
     419     
Note: See TracChangeset for help on using the changeset viewer.