snake
changeset 29:af9337dd3cf1
corrected UI.load(), corrected UI.step(), UI.end(), root made self.root
author | Alex Martynov <martiran@kodomo.fbb.msu.ru> |
---|---|
date | Sun, 19 Dec 2010 15:43:53 +0300 |
parents | 06f6a43de54a |
children | c7a1ed15ae42 |
files | main.py |
diffstat | 1 files changed, 28 insertions(+), 11 deletions(-) [+] |
line diff
1.1 --- a/main.py Sun Dec 19 09:19:10 2010 +0300 1.2 +++ b/main.py Sun Dec 19 15:43:53 2010 +0300 1.3 @@ -6,11 +6,11 @@ 1.4 1.5 class UI(object): 1.6 def __init__ (self): 1.7 - root = tk.Tk() 1.8 - root.title("Python Battle") 1.9 - self.canvas = tk.Canvas(root, background = "black") 1.10 + self.root = tk.Tk() 1.11 + self.root.title("Python Battle") 1.12 + self.canvas = tk.Canvas(self.root, background = "black") 1.13 self.canvas.pack(side ="top", fill="both", expand="yes") 1.14 - buttons = tk.Frame(root) 1.15 + buttons = tk.Frame(self.root) 1.16 buttons.pack(side ="bottom", fill="both", expand="yes") 1.17 self.buttons_pack(buttons) 1.18 self.step_id = 0 1.19 @@ -30,10 +30,18 @@ 1.20 step_b = tk.Button(frame, text="Step", command=lambda: self.step()) 1.21 step_b.pack(side="bottom", fill="both", expand = "yes") 1.22 return 1.23 + 1.24 def load (self, snake_number): 1.25 - file_name = tkfd.askopenfilename(title="Open file") 1.26 - snake = self.engine.create_snake(snake_number) 1.27 - snake.load(file_name) 1.28 + if self.step_id >= 200: 1.29 + self.step_id = 0 1.30 + pass 1.31 + elif self.step_id == 0: 1.32 + file_name = tkfd.askopenfilename(title="Open file") 1.33 + snake = self.engine.create_snake(snake_number) 1.34 + snake.load(file_name) 1.35 + pass 1.36 + else: 1.37 + pass 1.38 return 1.39 1.40 def run (self): 1.41 @@ -46,11 +54,20 @@ 1.42 pass 1.43 return 1.44 def step (self): 1.45 - self.canvas.after_cancel(self.after_id) 1.46 - self.id = self.id+1 1.47 - self.engine.step() 1.48 - pass 1.49 + if self.id <= 200: 1.50 + self.canvas.after_cancel(self.after_id) 1.51 + self.id = self.id+1 1.52 + self.engine.step() 1.53 + pass 1.54 + else: 1.55 + self.end() 1.56 + pass 1.57 + return 1.58 1.59 def end (self): 1.60 + root = tk.Tk() 1.61 + end_label = tk.Label(root, text="End") 1.62 + end_label.pack() 1.63 + root.mainloop() 1.64 pass 1.65