-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGame.py
More file actions
45 lines (33 loc) · 805 Bytes
/
Game.py
File metadata and controls
45 lines (33 loc) · 805 Bytes
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
from abc import ABC, abstractmethod
class CubeGame(ABC):
cube_size = None
frame_size = None
_name = None
_version = 'v0'
def __init__(self, cube_size, frame_size, name):
self.cube_size = cube_size
self.frame_size = frame_size
self._name = name
@abstractmethod
def get_menu_frame(self):
pass
@abstractmethod
def has_menu_animation(self):
pass
@abstractmethod
def play_animation(self):
pass
@abstractmethod
def start_game(self):
pass
@abstractmethod
def done(self):
pass
@property
def name(self):
return self._name
@name.setter
def name(self, value):
self._name = value
def __str__(self):
return self._name, ' ', self._version