- Timestamp:
- 2015-06-11 17:41:14 (8 years ago)
- Location:
- 2015/24/ohjaajat/Dungeon
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
2015/24/ohjaajat/Dungeon/Dungeon/Dungeon/Dungeon.cs
r6031 r6034 23 23 /// Päivitys joka voi olla huoneessa. 24 24 /// </summary> 25 abstract class Upgrade : GameObject25 public abstract class Upgrade : GameObject 26 26 { 27 27 public int Price { get; set; } … … 76 76 } 77 77 78 class Room : GameObject78 public class Room : GameObject 79 79 { 80 80 // Sijainti pelin ruudukossa. … … 121 121 public int Askel { get; set; } 122 122 123 private Room kohde; 124 public Room Kohde 125 { 126 get { return kohde; } 127 set { kohde = value; } 128 } 129 public Point Location 130 { 131 get; 132 set; 133 } 134 123 135 } 124 136 … … 132 144 Image reikaSeinaKuva = LoadImage("wallhole"); 133 145 Image kiviKuva = LoadImage("rock"); 134 static Image kulttuuriKuva1 = LoadImage("es");135 static Image kulttuuriKuva2 = LoadImage("nyan");136 static Image kulttuuriKuva3 = LoadImage("spurdo");137 Image[] kultuuriKuvat = new Image[] { kulttuuriKuva1, kulttuuriKuva2, kulttuuriKuva3 };146 //static Image kulttuuriKuva1 = LoadImage("es"); 147 //static Image kulttuuriKuva2 = LoadImage("nyan"); 148 //static Image kulttuuriKuva3 = LoadImage("spurdo"); 149 Image[] kultuuriKuvat = LoadImages("nyan", "es", "spurdo"); 138 150 Image[] vihuKuvat = LoadImages((from i in Enumerable.Range(1, 10) select String.Format("v{0:0000}", i)).ToArray()); 139 151 Image partikkeli = LoadImage("partikkeli"); … … 157 169 IntMeter kulttuuri = new IntMeter(300, 0, 2000); 158 170 159 int vaakaHuoneet= 12;160 int pystyHuoneet= 8;171 const int VAAKA_HUONEET = 12; 172 const int PYSTY_HUONEET = 8; 161 173 162 174 // Paljonko peliruudukko on siirtynyt origosta. … … 172 184 173 185 // Luodaan huoneet ruutuihin. 174 huoneet = new Room[ vaakaHuoneet, pystyHuoneet];186 huoneet = new Room[VAAKA_HUONEET, PYSTY_HUONEET]; 175 187 foreach (var paikka in RuutujenPaikat()) 176 188 { … … 218 230 for (int i = 0; i < kultuuriKuvat.Length; i++) 219 231 { 220 /*221 Point lokaatio = new Point(0, 0);222 223 Room kuva = new Room(lokaatio);224 kuva.Position = new Vector((Level.Right + Level.Width * 0.05), (Level.Top - Level.Height * 0.25 - (i * RUUDUN_KOKO)));225 kuva.Image = kultuuriKuvat[i];226 kuva.Price = hinnat[i];227 Add(kuva);228 229 Mouse.ListenOn(kuva, MouseButton.Left, ButtonState.Pressed, delegate(Room a) { ostettu = a; }, "Asetetaan ostettu huone paikoilleen", kuva);230 */231 232 232 233 // Ostettavat päivitykset on nyt PushButtoneita huoneiden sijaan. … … 250 251 teksti.Text = hinnat[i].ToString(); 251 252 Add(teksti); 253 254 /*for(int i = 0; i<ansaKuvat.Length; i++) 255 { 256 257 }*/ 252 258 } 253 259 } … … 271 277 barbaari.Animation.FPS = 10; 272 278 barbaari.Animation.Start(); 279 barbaari.Location = spawn.Location; 273 280 Add(barbaari); 274 281 barbaarit.Add(barbaari); … … 279 286 void EtsiBarbaarinReitti(Barbaari barbaari) 280 287 { 281 Room kohde = kohteet[RandomGen.NextInt(kohteet.Count)]; 282 283 List<Point> polku = FindPath(kohde.Location, spawn.Location); 284 //polku.Reverse(); 285 286 barbaari.Reitti = polku; 287 288 /* 289 Timer siirtoAjastin = new Timer(); 290 siirtoAjastin.Interval = 2; 291 siirtoAjastin.Timeout += delegate 292 { 293 barbaari.MoveTo(huoneet[polku[barbaari.Askel].X, polku[barbaari.Askel++].Y].Position, 100); 294 }; 295 siirtoAjastin.Start(polku.Count); 296 */ 288 barbaari.Kohde = kohteet[RandomGen.NextInt(kohteet.Count)]; 289 barbaari.Reitti = FindPath(barbaari.Kohde.Location, (barbaari.Location.Equals(spawn.Location)) ? spawn.Location : barbaari.Location); 290 291 297 292 } 298 293 … … 304 299 if (barbaari.Reitti.Count == 0) 305 300 { 306 // Barbaari saapui tiensä päähän. 307 // Voisi etsiä uutta huonetta poiston sijaan? 301 kohteet.Remove(barbaari.Kohde); 302 303 if (kohteet.Count > 0) 304 { 305 EtsiBarbaarinReitti(barbaari); //Etsitään uusi reitti poiston sijaan 306 continue; 307 } 308 308 309 poistettavat.Add(barbaari); 309 barbaari.Destroy(); 310 barbaari.Destroy(); 310 311 continue; 311 312 } … … 324 325 // Barbaari saapui juuri uusiPaikka kohdassa olevaan huoneeseen. 325 326 // Tässä pitäisi katsoa mitä huoneessa tapahtuu. 327 barbaari.Location = uusiPaikka; 328 329 Room huone = huoneet[uusiPaikka.X, uusiPaikka.Y]; 330 331 if (huone != null && huone.Upgrade != null && huone.Upgrade is CultureUpgrade) //Barbaari tuhoaa kultuurihuoneen. 332 { 333 var upg = huone.Upgrade as CultureUpgrade; 334 upg.Destroy(); 335 } 326 336 } 327 337 … … 338 348 void SeuraavaAalto() 339 349 { 350 351 barbaariAjastin.Start(barbaariMaara); 340 352 barbaariMaara += 2; 341 barbaariAjastin.Start(barbaariMaara);342 353 } 343 354
Note: See TracChangeset
for help on using the changeset viewer.