From c5ba166f4d56d2a35d52e0bf5a868ffde70e493d Mon Sep 17 00:00:00 2001 From: rabbitworld Date: Sat, 15 Feb 2020 01:47:17 +0530 Subject: [PATCH] additional change1 to snake game --- MTA/snake game.py | 166 +++++++++++++++++++++++++++++++++++++++------- 1 file changed, 142 insertions(+), 24 deletions(-) diff --git a/MTA/snake game.py b/MTA/snake game.py index 45f7f90..71194af 100644 --- a/MTA/snake game.py +++ b/MTA/snake game.py @@ -64,7 +64,7 @@ def gameloop(): snake_list = [] #game loop - while exitgame != True: + while exitgame == False: # or while exitgame != True: or while not exitgame: if gameover == True: boxwindow.fill(grey) text_screen("GAME OVER!","press ENTER to play again...",blue,yellow,250,160,230,200) @@ -74,39 +74,157 @@ def gameloop(): if event.type == pg.KEYDOWN: if event.key == pg.K_RETURN: gameloop() - else: + else: for event in pg.event.get(): + right = False + left = False + up = False + down = False if event.type == pg.QUIT: exitgame = True if event.type == pg.KEYDOWN: + if right == True: + if event.key == pg.K_UP: + velocity_x = 0 + velocity_y = -speed + #event.key != pg.K_DOWN + up = True + down = False + if event.key == pg.K_DOWN: + velocity_x = 0 + velocity_y = speed + #event.key != pg.K_UP + down = True + up = False + if event.key == pg.K_RIGHT: + velocity_x = speed + velocity_y = 0 + #event.key != pg.K_LEFT + #print('right right right right right right right right right right right right right ') + right = True + left = False + else: + if event.key == pg.K_LEFT: + velocity_x = -speed + velocity_y = 0 + #event.key != pg.K_RIGHT + #print('left left left left left left left left left left left left left left left left ') + left = True + right = False + + if left == True: + if event.key == pg.K_UP: + velocity_x = 0 + velocity_y = -speed + #event.key != pg.K_DOWN + up = True + down = False + if event.key == pg.K_DOWN: + velocity_x = 0 + velocity_y = speed + #event.key != pg.K_UP + down = True + up = False + if event.key == pg.K_LEFT: + velocity_x = -speed + velocity_y = 0 + #event.key != pg.K_RIGHT + #print('left left left left left left left left left left left left left left left left ') + left = True + right = False + else: + if event.key == pg.K_RIGHT: + velocity_x = speed + velocity_y = 0 + #event.key != pg.K_LEFT + #print('right right right right right right right right right right right right right ') + right = True + left = False + + if up == True: + if event.key == pg.K_RIGHT: + velocity_x = speed + velocity_y = 0 + #event.key != pg.K_LEFT + #print('right right right right right right right right right right right right right ') + right = True + left = False + if event.key == pg.K_LEFT: + velocity_x = -speed + velocity_y = 0 + #event.key != pg.K_RIGHT + #print('left left left left left left left left left left left left left left left left ') + left = True + right = False + if event.key == pg.K_UP: + velocity_x = 0 + velocity_y = -speed + #event.key != pg.K_DOWN + up = True + down = False + else: + if event.key == pg.K_DOWN: + velocity_x = 0 + velocity_y = speed + #event.key != pg.K_UP + down = True + up = False + + if down == True: + if event.key == pg.K_RIGHT: + velocity_x = speed + velocity_y = 0 + #event.key != pg.K_LEFT + #print('right right right right right right right right right right right right right ') + right = True + left = False + if event.key == pg.K_LEFT: + velocity_x = -speed + velocity_y = 0 + #event.key != pg.K_RIGHT + #print('left left left left left left left left left left left left left left left left ') + left = True + right = False + if event.key == pg.K_DOWN: + velocity_x = 0 + velocity_y = speed + #event.key != pg.K_UP + down = True + up = False + else: + if event.key == pg.K_UP: + velocity_x = 0 + velocity_y = -speed + #event.key != pg.K_DOWN + up = True + down = False + + ''' if event.type == pg.KEYUP: if event.key == pg.K_RIGHT: - velocity_x = speed - velocity_y = 0 - #event.key != pg.K_LEFT - if event.key == pg.K_LEFT: - velocity_x = -speed - velocity_y = 0 - #event.key != pg.K_RIGHT - if event.key == pg.K_UP: - velocity_x = 0 - velocity_y = -speed - #event.key != pg.K_DOWN - if event.key == pg.K_DOWN: - velocity_x = 0 - velocity_y = speed - #event.key != pg.K_UP - - for event in pg.event.get(): + event.key != pg.K_LEFT ''' + + ''' while event.key == pg.K_RIGHT: + event.key != pg.K_LEFT + while event.key == pg.K_LEFT: + event.key != pg.K_RIGHT + while event.key == pg.K_UP: + event.key != pg.K_DOWN + while event.key == pg.K_DOWN: + event.key != pg.K_UP ''' + + ''' for event in pg.event.get(): #if event.type == pg.KEYDOWN: - if velocity_x == speed: + if pg.key.get_pressed()[pg.K_RIGHT] == True: pg.K_LEFT = False elif velocity_x == -speed: pg.K_RIGHT = False elif velocity_y == -speed: pg.K_DOWN = False else: - pg.K_UP = False - + pg.K_UP = False ''' + + #pg.key.get_mods() + #snake movement snake_x += velocity_x snake_y += velocity_y @@ -140,7 +258,7 @@ def gameloop(): if abs(x[1] - snake_head[1])<5 and abs(x[2] - snake_head[2])<5: exitgame = True ''' - if (snake_head in snake_list[:-1]) or (snake_x or snake_y)<0 or (snake_x>box_width) or (snake_y>box_height): #list[-1]or[:-1] -> starting from last item + if (snake_head in snake_list[:-1]) or (snake_x<0) or (snake_y<0) or (snake_x>box_width) or (snake_y>box_height): #list[-1]or[:-1] -> starting from last item gameover = True snake(boxwindow,black,snake_list,snake_size) @@ -162,4 +280,4 @@ class game_screen class snake class food class play_screen -''' \ No newline at end of file +'''