Het maken van het spel Mijnenveger staat al jaren op mijn TODO lijst, in eerste instantie wilde ik dit in JAVA programmeren met gebruik van de Swing GUI, maar tegenwoordig ben ik meer bezig met jQuery dus is dat weer een leuke uitdaging.
Met jQuery kan je voor elk veld een Click Event toevoegen, je hebt dus kortgezegd slechts een speelveld nodig en een algoritme.
Bij mijnenveger klik je een willekeurig veld open, hopen dat je niet meteen op een mijn klikt en vervolgens wordt er naar de omliggende velden gekeken (neighbours). Het totaal aantal mijnen wordt dan afgebeeld als het getal 1 t/m 8.
Een veld hoeft niet altijd acht omliggende velden (neighbours) te hebben, bijvoorbeeld de bovenste rij heeft geen boven buren en de onderste rij heeft geen onderburen. De eerste kolom heeft geen linker buren en de laatste kolom heeft geen rechter buren. Het controleren of je te maken hebt met de eerste of laatste kolom kan met modulo:
Als je denkt te weten waar een mijn zit kan je dit met de rechtermuis knop aangeven door een vlag te plaatsen. Een probleem, de browser toont een Context menu. Zie het artikel Uitschakelen van Context menu.
- Bug: Er starten meerdere timers bij reset/refresh;
- Bug: Veld met getal wordt niet vervangen door een vlag;
- Feature: Algoritme om lege velden te openen (recursief);
- Feature: Meerdere spelniveau's (gevorderd, expert).