public virtual int Move() { int score = 0; // score verhogen als het volgende vakje een kadevakje is en er een boot beschikbaar is. // hier dus checek of volgende van het type kadevakje is met if (this.volgende.GetType() == typeof(KadeVakje)) // als dat zo is boten controleren, als er een boot is controleren of deze vol zit. // als deze vol zit boot wegdoen. if (this.volgende.GetType() == typeof(KadeVakje)) { this.kar.empty(); score++; } if (this.volgende != null) { if (this.volgende.kar != null) { return(-1); } if (this.volgende.GetType() == typeof(WisselVakje)) { WisselVakje temp = (WisselVakje)this.volgende; if (this == temp.getVorigVakje()) { this.volgende.kar = this.kar; this.kar = null; } } else { this.volgende.kar = this.kar; this.kar = null; } } return(score); }
public Bord() { vakjes = new List <Vakje>(); startVakjes = new List <StartVakje>(); wisselVakjes = new List <WisselVakje>(); //maak route 1 Eindvakje vak13 = new Eindvakje(); RailsVakje vak12 = new RailsVakje(vak13); KadeVakje vak11 = new KadeVakje(vak12); RailsVakje vak10 = new RailsVakje(vak11); WisselVakje vak9 = new WisselVakje(); // zet het wisselvakje ! RailsVakje vak8 = new RailsVakje(vak9); WisselVakje vak7 = new WisselVakje(); // zet het wisselvakje ! RailsVakje vak6 = new RailsVakje(vak7); WisselVakje vak5 = new WisselVakje(); // zet het wisselvakje ! RailsVakje vak4 = new RailsVakje(vak5); StartVakje vak1 = new StartVakje(vak4, "A"); //route 1 gemaakt //maak route 2 Eindvakje vak22 = new Eindvakje(); RailsVakje vak21 = new RailsVakje(vak22); KadeVakje vak20 = new KadeVakje(vak21); RailsVakje vak19 = new RailsVakje(vak20); WisselVakje vak18 = new WisselVakje(); // zet het wisselvakje ! RailsVakje vak17 = new RailsVakje(vak18); WisselVakje vak16 = new WisselVakje(); // zet het wisselvakje ! RailsVakje vak15 = new RailsVakje(vak16); RailsVakje vak14 = new RailsVakje(vak5); StartVakje vak2 = new StartVakje(vak14, "B"); // einde route 2 // maak route 3 RailsVakje vak23 = new RailsVakje(vak16); StartVakje vak3 = new StartVakje(vak23, "C"); //einde route 3 RailsVakje vak24 = new RailsVakje(vak9); vak9.setVakjes(vak10, null, vak8, vak24); vak18.setVakjes(vak24, vak19, vak17, null); vak16.setVakjes(vak17, null, vak15, vak23); vak7.setVakjes(vak8, vak15, vak6, null); vak5.setVakjes(vak6, null, vak4, vak14); startVakjes.Add(vak1); startVakjes.Add(vak2); startVakjes.Add(vak3); wisselVakjes.Add(vak5); wisselVakjes.Add(vak7); wisselVakjes.Add(vak16); wisselVakjes.Add(vak9); wisselVakjes.Add(vak18); // alle vakken in een lijst zetten vakjes.Add(vak1); //0 vakjes.Add(vak2); //1 vakjes.Add(vak3); //2 vakjes.Add(vak4); //3 vakjes.Add(vak14); //4 vakjes.Add(vak23); //5 vakjes.Add(vak5); //6 vakjes.Add(vak16); //7 vakjes.Add(vak6); //8 vakjes.Add(vak17); //9 vakjes.Add(vak7); //10 vakjes.Add(vak18); //11 vakjes.Add(vak8); //12 vakjes.Add(vak15); //13 vakjes.Add(vak24); //14 vakjes.Add(vak19); //15 vakjes.Add(vak9); //16 vakjes.Add(vak20); //17 vakjes.Add(vak10); //18 vakjes.Add(vak21); //19 vakjes.Add(vak11); //20 vakjes.Add(vak12); //21 vakjes.Add(vak13); //22 vakjes.Add(vak22); //22 myGenerator = new Random(); // zorgen dat deze in de volgoorde komen (achterstevoren) van welke // ze controleren in de while loop bij stap() // de velden moeten van achter naar vooren gemoved worden. // anders vliegen ze naar het laatste veld }