Mijn vraag
ik ben met een school project bezig en moest een spel maken met python dit is de code die we er voor hebben
de vraag is nu we willen dat die automatisch opnieuw opstart als het spel klaar is
Relevante software en hardware die ik gebruik
raspberry pi 3 model B+
alvast bedankt voor het mee denken
ik ben met een school project bezig en moest een spel maken met python dit is de code die we er voor hebben
Python:
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
| from tkinter import * from logic import * from random import * from os import * from time import * from sys import * from pygame import * from psutil import * from logging import * ##Made by projecgroep 3 SIZE = 750 GRID_LEN = 4 GRID_PADDING = 10 BACKGROUND_COLOR_GAME = "#92877d" BACKGROUND_COLOR_CELL_EMPTY = "#9e948a" BACKGROUND_COLOR_DICT = { 2:"#eee4da", 4:"#ede0c8", 8:"#f2b179", 16:"#f59563", \ 32:"#f67c5f", 64:"#f65e3b", 128:"#edcf72", 256:"#edcc61", \ 512:"#edc850", 1024:"#edc53f", 2048:"#edc22e" } CELL_COLOR_DICT = { 2:"#776e65", 4:"#776e65", 8:"#f9f6f2", 16:"#f9f6f2", \ 32:"#f9f6f2", 64:"#f9f6f2", 128:"#f9f6f2", 256:"#f9f6f2", \ 512:"#f9f6f2", 1024:"#f9f6f2", 2048:"#f9f6f2" } FONT = ("Verdana", 40, "bold") KEY_UP = "'w'" KEY_DOWN = "'s'" KEY_RIGHT ="'d'" KEY_LEFT = "'a'" class GameGrid(Frame): def __init__(self): Frame.__init__(self) self.grid() self.master.title('2048') self.master.bind("<Key>", self.key_down) #self.gamelogic = gamelogic self.commands = {KEY_UP: up, KEY_DOWN: down, KEY_LEFT: left, KEY_RIGHT: right} self.grid_cells = [] self.init_grid() self.init_matrix() self.update_grid_cells() self.mainloop() def init_grid(self): background = Frame(self, bg=BACKGROUND_COLOR_GAME, width=SIZE, height=SIZE) background.grid() for i in range(GRID_LEN): grid_row = [] for j in range(GRID_LEN): cell = Frame(background, bg=BACKGROUND_COLOR_CELL_EMPTY, width=SIZE/GRID_LEN, height=SIZE/GRID_LEN) cell.grid(row=i, column=j, padx=GRID_PADDING, pady=GRID_PADDING) # font = Font(size=FONT_SIZE, family=FONT_FAMILY, weight=FONT_WEIGHT) t = Label(master=cell, text="", bg=BACKGROUND_COLOR_CELL_EMPTY, justify=CENTER, font=FONT, width=4, height=2) t.grid() grid_row.append(t) self.grid_cells.append(grid_row) def gen(self): return randint(0, GRID_LEN - 1) def init_matrix(self): self.matrix = new_game(4) self.matrix=add_two(self.matrix) self.matrix=add_two(self.matrix) def update_grid_cells(self): for i in range(GRID_LEN): for j in range(GRID_LEN): new_number = self.matrix[i][j] if new_number == 0: self.grid_cells[i][j].configure(text="", bg=BACKGROUND_COLOR_CELL_EMPTY) else: self.grid_cells[i][j].configure(text=str(new_number), bg=BACKGROUND_COLOR_DICT[new_number], fg=CELL_COLOR_DICT[new_number]) self.update_idletasks() def key_down(self, event): key = repr(event.char) if key in self.commands: self.matrix,done = self.commands[repr(event.char)](self.matrix) if done: self.matrix = add_two(self.matrix) self.update_grid_cells() done=False if game_state(self.matrix)=='win': self.grid_cells[1][1].configure(text="You",bg=BACKGROUND_COLOR_CELL_EMPTY) self.grid_cells[1][2].configure(text="Win!",bg=BACKGROUND_COLOR_CELL_EMPTY) if game_state(self.matrix)=='lose': self.grid_cells[1][1].configure(text="You",bg=BACKGROUND_COLOR_CELL_EMPTY) self.grid_cells[1][2].configure(text="Lose!",bg=BACKGROUND_COLOR_CELL_EMPTY) gamegrid = GameGrid() |
de vraag is nu we willen dat die automatisch opnieuw opstart als het spel klaar is
Relevante software en hardware die ik gebruik
raspberry pi 3 model B+
alvast bedankt voor het mee denken
[ Voor 0% gewijzigd door Creepy op 16-01-2019 15:16 . Reden: Codetags toegevoegd. ]