snake
changeset 186:73aed6bf1caf
engine.legal_moves() now return list of legal moves
added UI.snake_move_check() - "passed"
changed name for UI.dead_snake_check() -> UI.snake_dead_check()
author | Alex Martynov |
---|---|
date | Tue, 28 Dec 2010 16:47:32 +0300 |
parents | 0cf4e42c75a1 |
children | 954cc2774637 |
files | engine.py main.py |
diffstat | 2 files changed, 12 insertions(+), 6 deletions(-) [+] |
line diff
1.1 --- a/engine.py Tue Dec 28 16:36:23 2010 +0300 1.2 +++ b/engine.py Tue Dec 28 16:47:32 2010 +0300 1.3 @@ -245,7 +245,9 @@ 1.4 return field_geometry, offset, c 1.5 1.6 def legal_moves(self, snake): 1.7 - """Check for snake legal move directions according to the game rules.""" 1.8 + """Check for snake legal move directions according to the game rules. 1.9 + Return: 1.10 + list of legal moves""" 1.11 snake.legal_dir = [] 1.12 head = snake.cells[0] 1.13 for direction in directions: 1.14 @@ -253,5 +255,5 @@ 1.15 if (dir_cell.type == 'empty' or (dir_cell.type == 'tail' and dir_cell.snake != snake)): 1.16 snake.legal_dir.append(direction) 1.17 rnd.shuffle(snake.legal_dir) 1.18 - return 1.19 + return snake.legal_dir 1.20
2.1 --- a/main.py Tue Dec 28 16:36:23 2010 +0300 2.2 +++ b/main.py Tue Dec 28 16:47:32 2010 +0300 2.3 @@ -98,7 +98,7 @@ 2.4 if self.step_id > self.game_length: 2.5 self.end() 2.6 return 2.7 - if self.dead_snake_check() == False: 2.8 + if self.snake_dead_check() == False: 2.9 return 2.10 self.step_id = self.step_id+1 2.11 self.engine.step() 2.12 @@ -107,7 +107,7 @@ 2.13 2.14 def step (self): 2.15 """Do the next game step""" 2.16 - if self.dead_snake_check() == False: 2.17 + if self.snake_dead_check() == False: 2.18 return 2.19 if self.step_id == 0: 2.20 self.engine.psnakes = self.engine.snakes[:] 2.21 @@ -127,7 +127,7 @@ 2.22 self.canvas.after_cancel(self.after_id) 2.23 self.after_id = None 2.24 2.25 - def dead_snake_check(self): 2.26 + def snake_dead_check(self): 2.27 """Check the number of snakes alive. 2.28 End the game if alive snake number is less than two.""" 2.29 dead_snakes = 0 2.30 @@ -155,7 +155,11 @@ 2.31 elif len(snake.cells) == length: 2.32 winer.append(snake) 2.33 return winer, length 2.34 - 2.35 + 2.36 + def snake_move_check(self): 2.37 + """Get possible movements of the snakes. 2.38 + If all anakes cant move - return False.""" 2.39 + pass 2.40 2.41 def restart(self, survived): 2.42 """"Restarts snakes positions after the end of the game