summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLoic Guegan <manzerbredes@mailbox.org>2022-10-31 22:09:01 +0100
committerLoic Guegan <manzerbredes@mailbox.org>2022-10-31 22:09:01 +0100
commitcee495b6007f369ef9f384e2b7c073e5f6a9743e (patch)
tree6c355b6f393880016d6bc0a5e8797369fa503cb3
parent711ad16ae4755ebd6a8c98cfc7ff948ce41134bb (diff)
Minor changes
-rwxr-xr-xsnake/snake.py30
1 files changed, 23 insertions, 7 deletions
diff --git a/snake/snake.py b/snake/snake.py
index cb83301..851c55a 100755
--- a/snake/snake.py
+++ b/snake/snake.py
@@ -4,7 +4,7 @@ import sys, pygame
class Snake:
- def __init__(self, length=10,grid_width=50,grid_height=50, grid_pts=15,fps=2):
+ def __init__(self, length=10,grid_width=50,grid_height=50, grid_pts=15,fps=10):
self.grid_width=grid_width
self.grid_height=grid_height
self.grid_pts=grid_pts
@@ -19,17 +19,23 @@ class Snake:
pygame.draw.rect(self.screen,color,rect, 0)
def move(self):
- head=self.snake[0]
- if self.direction==3:
- head=(head[0]+1,head[1])
+ # Update tail
if len(self.snake)>1:
- tmp=head
+ tmp=self.snake[0]
for i in range(1,len(self.snake)):
newtmp=self.snake[i]
self.snake[i]=tmp
tmp=newtmp
- self.snake[0]=head
-
+ # Update head
+ h=self.snake[0] # Head
+ if self.direction==3:
+ self.snake[0]=(h[0]+1,h[1])
+ elif self.direction==9:
+ self.snake[0]=(h[0]-1,h[1])
+ elif self.direction==12:
+ self.snake[0]=(h[0],h[1]-1)
+ else:
+ self.snake[0]=(h[0],h[1]+1)
def draw_snake(self):
for elt in self.snake:
@@ -37,11 +43,21 @@ class Snake:
def run(self):
clock = pygame.time.Clock()
+ self.direction=6
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
+ elif event.type == pygame.KEYDOWN:
+ if event.key == pygame.K_LEFT and self.direction != 3:
+ self.direction=9
+ if event.key == pygame.K_RIGHT and self.direction != 9:
+ self.direction=3
+ if event.key == pygame.K_UP and self.direction != 6:
+ self.direction=12
+ if event.key == pygame.K_DOWN and self.direction != 12:
+ self.direction=6
self.screen.fill((0,0,0))
self.draw_snake()