Spelletje (i)

Vanalles gedaan vandaag, en pas vanavond aan mijn spelletje begonnen. Het is Python geworden, de programmeertaal. Omdat ik er veel goed van gehoord heb, en omdat ik zin had om eens een taal te leren waar ik nog nooit in gewerkt had.

Het is een beetje objectgeoriënteerd, mijn spelletje, omdat dat nu eenmaal kan in Python. Het had ook niet-OO gekund, maar hey, zo is het nu eenmaal.

Het spelbord zit in een class, met een paar methodes eraan vast: eentje om het bord te tekenen, eentje om een zet te doen, en eentje om te kijken of er een winnaar is. En het bord zelf, de vakjes, zitten allemaal in één string van 25 karakters, haha.

Ik heb voorlopig enkel de hoofdloop van het spel staan: een nieuw bord maken, en zolang er geen winnaar is, de speler doen spelen. Uiteindelijk komen daar twee spelers in, nu heb ik alleen nog maar een functie voor menselijke speler (teken bord, vraag zet en zorg ervoor dat hij geldig is, doe zet).

En dit is wat het tot nog toe doet:

Turn 1

     a b c d e
   +===========+
 1 |           |
 2 |           |
 3 |           |
 4 |           |
 5 |           |
   +===========+
Player O, enter your move (a-e or 1-5):

Er zijn twee spelers, O en M. Het speelbord is 5×5, en spelers kunnen om beurten een zet doen aan de linkerkant of langs boven. Nu is speler O aan zet. Stel dat hij een pion op B binnenschuift, dan wordt dit de situatie:

     a b c d e
   +===========+
 1 |   O       |
 2 |           |
 3 |           |
 4 |           |
 5 |           |
   +===========+
Player M, enter your move (a-e or 1-5):

M zet een pion op 1, en daarmee verschuift de pion van O naar rechts:

Turn 2

     a b c d e
   +===========+
 1 | M   O     |
 2 |           |
 3 |           |
 4 |           |
 5 |           |
   +===========+
Player O, enter your move (a-e or 1-5):

…en zo dus verder. Het is niet compleet evident spelen, omdat het spelbord voortdurend verschuift, maar het is ook geen schaken natuurlijk. En na de negende zet kan het er bijvoorbeeld zo uitzien:

Turn 10

     a b c d e
   +===========+
 1 | M O M M   |
 2 | M O O     |
 3 | M M O O M |
 4 | O M O   M |
 5 |     O O   |
   +===========+
Player O, enter your move (a-e or 1-5):

Zo. Next up: de computer doen bewegen. Ik denk eerst eens random om te zien wat het doet, en dan eens brute kracht, drie ply of zo. En dan pas slimmer werken.

En dáárna: grafisch verzorgen.

Elders over misschien hetzelfde

09.08.2008: Spelletje (ii) | 13.04.2014: Links van 10 april 2014 tot 13 april 2014 | 27.02.2014: Links van 24 februari 2014 tot 27 februari 2014 | 08.01.2013: It’s alive! | 12.07.2012: Life, in APL | 10.05.2012: Goeie bloederige help, in 4k | 27.04.2012: QB | 17.12.2011: Links van 14 december 2011 tot 17 december 2011 | 07.08.2008: Op zoek naar programmeertaal | 08.06.2008: Dutroux en Jambers

4 Comments

Zeg uw gedacht

Navigatie

Vorige entry:

Volgende entry:

» homepagina, archief

Vriendjes

<insert standard disclaimer>

Alles wat hier staat is mijn eigen opinie. Het wordt niet nagelezen of goedgekeurd door mijn werkgever voor het on-line komt, en ik bied geen enkele garantie voor kwaliteit of correctheid.

Mijn werkgever is het niet noodzakelijk eens met wat ik schrijf, en het spreekt vanzelf dat hij dan ook op geen enkele wijze aansprakelijk kan zijn voor wat ik hier publiceer.