-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgame.py
More file actions
71 lines (55 loc) · 1.83 KB
/
game.py
File metadata and controls
71 lines (55 loc) · 1.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import random
def setupGameBoard(kolommen, rijen):
"maakt een tabel aan met daarin een enkele bom"
# Maak een leeg board
gameboard = []
rij = []
for x in range (0, rijen):
for y in range (0, kolommen):
rij.append('.')
gameboard.append(rij)
rij=[]
# Plaats de Bom
x = random.randrange(0, kolommen)
y = random.randrange(0, rijen)
gameboard[y][x]='B'
return gameboard
def vraagGebruikerOmEenPositie(maxX, maxY):
x = int(input("Geef een positie x: "))
while not (1 <= x <= maxX):
x = int(input("Geef een positie x: "))
y = int(input("Geef een positie y: "))
while not (1 <= y <= maxY):
y = int(input("Geef een positie y: "))
return (x-1), (y-1) # correctie van -1 omdat de gebruiker in
# tegenstelling tot de computer wel bij 1 begint met tellen.
def bepaalOfErEenBomLigt(gameboard, x, y):
erLigtEenBom = gameboard[y][x] == 'B'
gameboard[y][x]='x'
if erLigtEenBom:
gameboard[y][x]='@'
return erLigtEenBom
def toonGameBoard(gameboard, beurt):
aantalRijen = len(gameboard)
for rij in range(aantalRijen):
aantalKolommen = len(gameboard[rij])
for kol in range(aantalKolommen):
if gameboard[rij][kol]=='B':
print('.', sep="", end="")
else:
print(gameboard[rij][kol], sep="", end="")
print()
print("Dit was beurt "+str(beurt)+".")
# ---- Hoofdprogramma ----
aantalKolommen = 9
aantalRijen = 5
gameboard = setupGameBoard(aantalKolommen, aantalRijen)
gameOver = False
beurt = 0
toonGameBoard(gameboard, beurt)
while not gameOver:
beurt += 1
x, y = vraagGebruikerOmEenPositie(aantalKolommen, aantalRijen)
gameOver = bepaalOfErEenBomLigt(gameboard, x, y)
toonGameBoard(gameboard, beurt)
print("---- Game Over ----")