Interesting Times - It got better

Well, I managed to make some considerable improvements in the last few hours.
The best thing is that it's now possible to win -- I've proven it by beating my test level.

Even better, it's not easy!

(log in to comment)

Comments

Just starting the first game:
 

Traceback (most recent call last):
  File "run_game.py", line 12, in <module>
    import main
  File "Game/Code/main.py", line 13, in <module>
    shell.run()
  File "Game/Code/humerus/hshell.py", line 44, in run
    Shell.run(self)
  File "Game/Code/albow/root.py", line 112, in run
    self.run_modal(None)
  File "Game/Code/albow/root.py", line 258, in run_modal
    clicked_widget.handle_mouse('mouse_drag', event)
  File "Game/Code/albow/widget.py", line 311, in handle_mouse
    self.call_handler(name, event)
  File "Game/Code/albow/widget.py", line 394, in call_handler
    return method(*args)
  File "Game/Code/play_screen.py", line 67, in mouse_drag
    self.route_edit_drag(e.local)
  File "Game/Code/play_screen.py", line 101, in route_edit_drag
    cell1 = self.route_edit_cell
AttributeError: 'LevelPlayView' object has no attribute 'route_edit_cell'
Later (I think I accidentally right clicked)

 Traceback (most recent call last):
  File "run_game.py", line 12, in <module>
    import main
  File "Game/Code/main.py", line 13, in <module>
    shell.run()
  File "Game/Code/humerus/hshell.py", line 44, in run
    Shell.run(self)
  File "Game/Code/albow/root.py", line 112, in run
    self.run_modal(None)
  File "Game/Code/albow/root.py", line 149, in run_modal
    timer_event.dict['local'] = last_mouse_event.local
AttributeError: event member not defined
Okay, the first one seems to happen if you click and drag. Here's a patch to fix it:

--- InterestingTimes-1.1/Game/Code/play_screen.py    2011-04-10 11:12:34.000000000 +1200
+++ Source/Game/Code/play_screen.py    2011-04-10 16:52:14.000000000 +1200
@@ -37,6 +37,8 @@
 
     level = property(lambda self: game.playing_level)
    
+    route_edit_cell = None
+   
     def draw(self, surf):
         CityView.draw(self, surf)
         selected_actor = self.level.selected_actor

I don't know what you did to make the second one happen, but here's another patch that might fix it:

--- InterestingTimes-1.1/Game/Code/albow/root.py    2011-04-06 19:15:12.000000000 +1200
+++ Source/Game/Code/albow/root.py    2011-04-10 17:06:07.000000000 +1200
@@ -207,6 +207,7 @@
                     for event in events:
                         t = timestamp()
                         event.dict['time'] = t
+                        event.dict['local'] = getattr(event, 'pos', (0, 0))
                         type = event.type
                         if type == QUIT:
                             self.quit()

I'll upload a bugfix release incorporating those shortly. Thanks for the feedback.