Beispiel #1
0
        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);
        }
Beispiel #2
0
        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
        }