annotate pyntnclick/widgets/level.py @ 555:c0474fe18b96 pyntnclick

Copy in widgets from mamba (currently unused)
author Stefano Rivera <stefano@rivera.za.net>
date Sat, 11 Feb 2012 14:09:46 +0200
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
555
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
1 from pygame.rect import Rect
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
2 from pygame.locals import MOUSEBUTTONDOWN, MOUSEBUTTONUP, MOUSEMOTION
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
3 from pygame.key import set_repeat
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
4
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
5 from mamba.widgets.base import Widget
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
6 from mamba.constants import TILE_SIZE
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
7 from mamba.snake import Snake
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
8 from mamba.engine import FlipArrowsEvent, ReplayEvent
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
9
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
10
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
11 class EditLevelWidget(Widget):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
12 def __init__(self, level, offset=(0, 0)):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
13 self.level = level
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
14 level_rect = Rect(offset, level.get_size())
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
15 self.main_tool = None
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
16 self.tool = None
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
17 self.drawing = False
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
18 self.last_click_pos = None
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
19 self.tile_mode = True # Flag for sprite interactions
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
20 super(EditLevelWidget, self).__init__(level_rect)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
21 self.add_callback(MOUSEBUTTONDOWN, self.place_tile)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
22 self.add_callback(MOUSEBUTTONUP, self.end_draw)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
23 self.add_callback(MOUSEMOTION, self.draw_tiles)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
24 self.add_callback(FlipArrowsEvent, self.flip_arrows)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
25 self.add_callback(ReplayEvent, self.handle_replay)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
26 self.snake = None
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
27 self.snake_alive = False
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
28 self.replay_data = []
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
29 self.last_run = []
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
30 self.replay_pos = 0
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
31
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
32 def get_replay(self):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
33 return self.replay_data[:]
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
34
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
35 def replay(self, run=None):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
36 if run is None:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
37 # We exclude the last couple of steps, so we don't redo
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
38 # the final crash in this run
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
39 run = self.last_run[:-4]
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
40 if len(run) > 0:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
41 self.start_test()
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
42 ReplayEvent.post(run, 0)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
43
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
44 def handle_replay(self, ev, widget):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
45 self.apply_action(ev.run[ev.replay_pos])
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
46 if ev.replay_pos < len(ev.run) - 1:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
47 ReplayEvent.post(ev.run, ev.replay_pos + 1)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
48
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
49 def start_test(self):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
50 self.level.update_tiles_ascii()
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
51 self.last_run = self.replay_data
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
52 self.replay_data = []
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
53 self.level.restart()
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
54 tile_pos, orientation = self.level.get_entry()
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
55 self.snake = Snake(tile_pos, orientation)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
56 set_repeat(40, 100)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
57 self.snake_alive = True
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
58
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
59 def stop_test(self):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
60 self.snake = None
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
61 self.snake_alive = False
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
62 self.level.restart()
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
63 set_repeat(0, 0)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
64
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
65 def draw(self, surface):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
66 self.level.draw(surface)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
67 if self.snake:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
68 self.snake.draw(surface)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
69
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
70 def kill_snake(self):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
71 """Prevent user interaction while snake is dead"""
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
72 self.snake_alive = False
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
73
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
74 def restart(self):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
75 self.start_test()
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
76
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
77 def interact(self, segment):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
78 if not self.snake or not self.snake_alive:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
79 return
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
80 tiles = segment.filter_collisions(self.level.sprites)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
81 for tile in tiles:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
82 tile.interact(self, segment)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
83
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
84 def get_sprite(self, sprite_id):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
85 return self.level.extra_sprites[sprite_id]
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
86
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
87 def apply_action(self, orientation):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
88 self.replay_data.append(orientation)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
89 if not self.snake or not self.snake_alive:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
90 return
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
91 # We choose numbers that are close to, but not exactly, move 0.5 tiles
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
92 # to avoid a couple of rounding corner cases in the snake code
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
93 if orientation is None or orientation == self.snake.orientation:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
94 self.snake.update(9.99 / self.snake.speed, self)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
95 else:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
96 self.snake.send_new_direction(orientation)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
97 self.snake.update(9.99 / self.snake.speed, self)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
98
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
99 def set_tool(self, new_tool):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
100 self.main_tool = new_tool
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
101 self.tool = new_tool
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
102
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
103 def end_draw(self, event, widget):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
104 self.drawing = False
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
105
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
106 def draw_tiles(self, event, widget):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
107 if self.drawing and self.tool:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
108 # FIXME: Need to consider leaving and re-entering the widget
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
109 self.update_tile(self.convert_pos(event.pos))
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
110
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
111 def flip_arrows(self, ev, widget):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
112 self.level.flip_arrows()
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
113
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
114 def place_tile(self, event, widget):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
115 if self.tile_mode:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
116 if event.button == 1: # Left button
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
117 self.tool = self.main_tool
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
118 else:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
119 self.tool = '.'
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
120 self.drawing = True
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
121 if self.tool:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
122 self.update_tile(self.convert_pos(event.pos))
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
123 else:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
124 self.last_click_pos = self.convert_pos(event.pos)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
125 self.drawing = False
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
126
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
127 def convert_pos(self, pos):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
128 return (pos[0] / TILE_SIZE[0], pos[1] / TILE_SIZE[1])
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
129
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
130 def update_tile(self, tile_pos):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
131 """Update the tile at the current mouse position"""
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
132 if self.check_paused():
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
133 return # Do nothing if dialogs showing
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
134 # We convert our current position into a tile position
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
135 # and replace the tile with the current tool
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
136 old_tile = self.level.get_tile(tile_pos)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
137 if self.tool == '.' and old_tile is None:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
138 return
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
139 elif old_tile is not None and old_tile.tile_char == self.tool:
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
140 return
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
141 self.level.replace_tile(tile_pos, self.tool)
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
142
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
143 def check_paused(self):
c0474fe18b96 Copy in widgets from mamba (currently unused)
Stefano Rivera <stefano@rivera.za.net>
parents:
diff changeset
144 return hasattr(self.parent, 'paused') and self.parent.paused