Changeset 921
- Timestamp:
- 2010-06-16 16:04:04 (13 years ago)
- Location:
- 2010/24/anlakane/Muistipeli
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
2010/24/anlakane/Muistipeli/Kortti.cs
r888 r921 12 12 bool onkoKaantynyt; 13 13 protected Vector alkuperainenKoko; 14 p rotected enum PuoliEsilla { Etu, Taka }14 public enum PuoliEsilla { Kuva, Taka } 15 15 protected enum Liikkeentila { Pysahtynyt, Pienentyy, Suurentuu } 16 protected Jypeli.Color etuVari;17 protected Jypeli.Color takaVari;18 16 Liikkeentila liikkeenTila; 19 17 PuoliEsilla puoliEsilla; 20 bool kaantyminenAlkanut = false;18 private bool kaantyminenAlkanut = false; 21 19 22 public Kortti(double width, double height, bool etupuoliEsilla, Jypeli.Color etuVari, Jypeli.Color takaVari) 20 public Jypeli.Color kuvapuoliVari; 21 public Jypeli.Color takaVari; 22 public bool onkoPoistettuPelista; 23 24 public Kortti(double width, double height, bool kuvapuoliEsilla, Jypeli.Color kuvapuoliVari, Jypeli.Color takaVari) 23 25 : base(width, height, Shapes.Rectangle) 24 26 { 25 this. etuVari = etuVari;27 this.kuvapuoliVari = kuvapuoliVari; 26 28 this.takaVari = takaVari; 29 this.onkoPoistettuPelista = false; 27 30 28 if ( etupuoliEsilla)31 if (kuvapuoliEsilla) 29 32 { 30 this.puoliEsilla = PuoliEsilla. Etu;31 this.Color = etuVari;33 this.puoliEsilla = PuoliEsilla.Kuva; 34 this.Color = kuvapuoliVari; 32 35 } 33 36 else … … 36 39 this.Color = takaVari; 37 40 } 38 //thisonkoKaantynyt = false; 39 //liikkeenTila = Liikkeentila.Kuvapuoli; 41 40 42 IsUpdated = true; 41 43 this.alkuperainenKoko = new Vector(width, height); … … 48 50 } 49 51 52 public PuoliEsilla KumpiPuoliEsilla() 53 { 54 return this.puoliEsilla; 55 } 56 50 57 void AsetaPuoli(PuoliEsilla puoli) 51 58 { 59 puoliEsilla = puoli; 52 60 switch (puoli) 53 61 { 54 case PuoliEsilla. Etu:55 this.Color = etuVari;62 case PuoliEsilla.Kuva: 63 this.Color = kuvapuoliVari; 56 64 break; 57 65 case PuoliEsilla.Taka: … … 75 83 if (this.Width <= 3) 76 84 { 77 liikkeenTila = Liikkeentila.Suurentuu; 78 if (puoliEsilla == PuoliEsilla. Etu)85 86 if (puoliEsilla == PuoliEsilla.Kuva) 79 87 { 80 88 AsetaPuoli(PuoliEsilla.Taka); … … 82 90 else 83 91 { 84 AsetaPuoli(PuoliEsilla. Etu);92 AsetaPuoli(PuoliEsilla.Kuva); 85 93 } 94 liikkeenTila = Liikkeentila.Suurentuu; 86 95 } 87 96 } -
2010/24/anlakane/Muistipeli/Muistipeli.csproj
r882 r921 57 57 </PropertyGroup> 58 58 <ItemGroup> 59 <Reference Include="Jypeli2, Version= 1.0.0.0, Culture=neutral, processorArchitecture=x86">59 <Reference Include="Jypeli2, Version=2.1.6.0, Culture=neutral, processorArchitecture=x86"> 60 60 <SpecificVersion>False</SpecificVersion> 61 61 <HintPath>..\..\lib\Jypeli2.dll</HintPath> … … 83 83 <ItemGroup> 84 84 <Compile Include="Kortti.cs" /> 85 <Compile Include="Peli2.cs" /> 85 86 <Compile Include="Properties\AssemblyInfo.cs" /> 86 87 <Compile Include="Ohjelma.cs" /> -
2010/24/anlakane/Muistipeli/Ohjelma.cs
r882 r921 9 9 static void Main(string[] args) 10 10 { 11 using (Peli game = new Peli())11 using (Peli2 game = new Peli2()) 12 12 { 13 13 game.Run(); -
2010/24/anlakane/Muistipeli/Peli.cs
r888 r921 12 12 double kortinLeveys = 80; 13 13 double kortinKorkeus = 100; 14 int montakoKorttia; 14 15 int korostettuKortti; 15 16 int montakoKorttiaRiviin; … … 28 29 29 30 protected override void Begin() 30 //void Begin2()31 {31 { 32 montakoKorttia = 50; 32 33 TeeKortit(); 33 34 AsetaNappaimet(); … … 49 50 } 50 51 51 if (kortinNro > kortit.Count - 1) 52 { 53 kortinNro = 0; 52 if (kortinNro > kortit.Count - 1) // Hypätään viimeisestä kortista oikealle 53 { 54 kortinNro--; // "Palataan viimeiseen korttiin" 55 //kortinNro = 0; 56 int jj = kortit.Count % (montakoKorttiaRiviin + 1); // Montako korttia viimeisellä rivillä on 57 kortinNro = kortit.Count - jj; // Siirrytään viimeisen rivin ensimmäiseen korttiin 54 58 } 55 59 … … 60 64 { 61 65 kortinNro = KortinNumeronTarkistus(kortinNro); 62 kortit[kortinNro].Color = Color.Gray; 63 korostettuKortti = kortinNro; 66 Kortti.PuoliEsilla puoliesilla = kortit[kortinNro].KumpiPuoliEsilla(); 67 if (puoliesilla == Kortti.PuoliEsilla.Taka) 68 { 69 double punainen = kortit[kortinNro].Color.RedComponent; 70 double sininen = kortit[kortinNro].Color.BlueComponent; 71 double vihrea= kortit[kortinNro].Color.GreenComponent; 72 73 74 kortit[kortinNro].Color = new Color( 75 punainen + 0.5, 76 sininen+ 0.5, 77 vihrea + 0.5); 78 korostettuKortti = kortinNro; 79 } 80 else 81 { 82 kortit[kortinNro].Color = Color.Gray; 83 korostettuKortti = kortinNro; 84 } 64 85 } 65 86 … … 67 88 { 68 89 kortinNro = KortinNumeronTarkistus(kortinNro); 69 kortit[kortinNro].Color = Color.White; 90 91 Kortti.PuoliEsilla puoliesilla = kortit[kortinNro].KumpiPuoliEsilla(); 92 if (puoliesilla == Kortti.PuoliEsilla.Kuva) 93 { 94 kortit[kortinNro].Color = kortit[kortinNro].kuvapuoliVari; 95 } 96 if (puoliesilla == Kortti.PuoliEsilla.Taka) 97 { 98 kortit[kortinNro].Color = kortit[kortinNro].takaVari; 99 } 100 70 101 } 71 102 … … 77 108 Keyboard.Listen(Key.Down, ButtonState.Pressed, KortinValinta, null, Suunta.Alas); 78 109 Keyboard.Listen(Key.Space, ButtonState.Pressed, KaannaKortti, null); 110 Keyboard.Listen(Key.Escape, ButtonState.Pressed, Lopeta, null); 111 } 112 113 void Lopeta() 114 { 115 Exit(); 79 116 } 80 117 81 118 void KaannaKortti() 82 119 { 83 //b ool onkoKaannetty = kortti1.Kaanna();84 120 kortit[korostettuKortti].Kaanna(); 85 //MessageDisplay.Add(onkoKaannetty.ToString());86 121 } 87 122 … … 146 181 void TeeKortit() 147 182 { 148 for (int i = 0; i < 15; i++)183 for (int i = 0; i < montakoKorttia; i++) 149 184 { 150 185 TeeKortti(); … … 157 192 //int montakoKorttiaRiviin = 8; 158 193 montakoKorttiaRiviin = (int)Math.Sqrt(kortit.Count); 194 montakoKorttiaRiviin = (int)Math.Floor((3.0 / 2.0) * montakoKorttiaRiviin); 159 195 int montakoRivia = (kortit.Count / montakoKorttiaRiviin); 160 196 … … 167 203 //kortti.X = (-(montakoKorttia * (kortinLeveys + 20)) / 2) + (i * (kortinLeveys + 20)); 168 204 kortti.X = (-(montakoKorttiaRiviin * (kortinLeveys + 20)) / 2) + (rivilla * (kortinLeveys + 20)); 169 kortti.Y = ( montakoRivia* (kortinKorkeus + 20)) / 2 - rivi * (kortinKorkeus + 20);205 kortti.Y = ((montakoRivia+1) * (kortinKorkeus + 20)) / 2 - rivi * (kortinKorkeus + 20); 170 206 i++; 171 207 rivilla++;
Note: See TracChangeset
for help on using the changeset viewer.