Code cleanup
Added Gameover mechanics...
This commit is contained in:
@@ -172,11 +172,13 @@ class Player(GameObject_new):
|
||||
self._size = size
|
||||
self._score = 0
|
||||
self._rect:pygame.Rect
|
||||
self.__snake_body = [[100,100+size], [100,100+size*2], [100,100+size*3], [100,size*5]]
|
||||
super().__init__(name, surface, surface_size, init_pos_x, init_pos_y, visibility)
|
||||
|
||||
__movedirection = {"up":False, "down":False, "left":False, "right":False}
|
||||
__snake_body = [[100,100], [100,140], [100,180], [100,220]]
|
||||
|
||||
__test_counter = 0
|
||||
__player_rect:pygame.Rect
|
||||
|
||||
|
||||
def user_test_func(self):
|
||||
@@ -221,24 +223,54 @@ class Player(GameObject_new):
|
||||
def draw(self):
|
||||
if(self.__test_counter == 15):
|
||||
self.__snake_body.insert(0, list(self._position))
|
||||
counter = 0
|
||||
for pos in self.__snake_body:
|
||||
pygame.draw.rect(self._surface, (0,0,0), pygame.Rect(pos[0], pos[1], self._size, self._size))
|
||||
print(pos)
|
||||
if(counter == 0):
|
||||
self.__player_rect = pygame.draw.rect(self._surface, (0,0,0), pygame.Rect(pos[0], pos[1], self._size, self._size))
|
||||
else:
|
||||
pygame.draw.rect(self._surface, (0,0,0), pygame.Rect(pos[0], pos[1], self._size, self._size))
|
||||
counter += 1
|
||||
counter = 0
|
||||
#print(pos)
|
||||
if(self.__test_counter == 15):
|
||||
self.__snake_body.pop()
|
||||
|
||||
def collide_fruit(self, rect:pygame.Rect):
|
||||
if(pygame.Rect.colliderect(self.get_player_rect(), rect)):
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
def collide_self(self):
|
||||
count = len(self.__snake_body)
|
||||
for elements in range(1, count):
|
||||
if(self.get_position() == self.__snake_body[elements]):
|
||||
print("Game Over!")
|
||||
return True
|
||||
return False
|
||||
|
||||
def add_body(self):
|
||||
self.__snake_body.insert(0,list(self._position))
|
||||
self.__snake_body.append(list(self._position))
|
||||
|
||||
def get_rect_size(self):
|
||||
return self._size
|
||||
|
||||
def get_rect(self) -> pygame.Rect:
|
||||
return self._rect
|
||||
def get_position(self) -> tuple:
|
||||
return self.__snake_body[0]
|
||||
|
||||
def get_player_score(self) -> int:
|
||||
return self._score
|
||||
|
||||
def get_positions_snake_body(self) -> list:
|
||||
return self.__snake_body
|
||||
|
||||
def get_player_rect(self):
|
||||
return self.__player_rect
|
||||
|
||||
|
||||
class Fruit(GameObject_new):
|
||||
def __init__(self, name: str, surface: pygame.Surface, surface_size: tuple, init_pos_x, init_pos_y, visibility: bool = True) -> None:
|
||||
super().__init__(name, surface, surface_size, init_pos_x, init_pos_y, visibility)
|
||||
|
||||
pass
|
||||
|
||||
|
||||
"""
|
||||
class GOIMAGE(GameObject):
|
||||
|
||||
Reference in New Issue
Block a user