comparison gamelib/gameboard.py @ 479:1689b43ed8be

Use KMOD_SHIFT to allow shift-click selecting of multiple chickens.
author Simon Cross <hodgestar@gmail.com>
date Wed, 25 Nov 2009 18:59:51 +0000
parents 6974048bf04a
children 312120a99181
comparison
equal deleted inserted replaced
478:6974048bf04a 479:1689b43ed8be
1 import random 1 import random
2 2
3 import pygame 3 import pygame
4 from pygame.locals import MOUSEBUTTONDOWN, MOUSEMOTION, KEYDOWN, K_UP, K_DOWN, \ 4 from pygame.locals import MOUSEBUTTONDOWN, MOUSEMOTION, KEYDOWN, K_UP, K_DOWN, \
5 K_LEFT, K_RIGHT 5 K_LEFT, K_RIGHT, KMOD_SHIFT
6 from pgu import gui 6 from pgu import gui
7 7
8 import tiles 8 import tiles
9 import icons 9 import icons
10 import constants 10 import constants
272 self.toolbar.clear_tool() 272 self.toolbar.clear_tool()
273 elif e.button == 2: # Middle button 273 elif e.button == 2: # Middle button
274 self.unselect_all() 274 self.unselect_all()
275 elif e.button != 1: # Left button 275 elif e.button != 1: # Left button
276 return 276 return
277 mods = pygame.key.get_mods()
277 if self.selected_tool == constants.TOOL_SELL_CHICKEN: 278 if self.selected_tool == constants.TOOL_SELL_CHICKEN:
278 self.sell_chicken(self.tv.screen_to_tile(e.pos)) 279 self.sell_chicken(self.tv.screen_to_tile(e.pos))
279 elif self.selected_tool == constants.TOOL_SELL_EGG: 280 elif self.selected_tool == constants.TOOL_SELL_EGG:
280 self.sell_egg(self.tv.screen_to_tile(e.pos)) 281 self.sell_egg(self.tv.screen_to_tile(e.pos))
281 elif self.selected_tool == constants.TOOL_PLACE_ANIMALS: 282 elif self.selected_tool == constants.TOOL_PLACE_ANIMALS:
282 self.place_animal(self.tv.screen_to_tile(e.pos)) 283 self.place_animal(self.tv.screen_to_tile(e.pos))
283 elif self.selected_tool == constants.TOOL_SELECT_CHICKENS: 284 elif self.selected_tool == constants.TOOL_SELECT_CHICKENS:
285 if not (mods & KMOD_SHIFT):
286 self.unselect_all()
284 self.select_chicken(self.tv.screen_to_tile(e.pos)) 287 self.select_chicken(self.tv.screen_to_tile(e.pos))
285 elif self.selected_tool == constants.TOOL_SELL_BUILDING: 288 elif self.selected_tool == constants.TOOL_SELL_BUILDING:
286 self.sell_building(self.tv.screen_to_tile(e.pos)) 289 self.sell_building(self.tv.screen_to_tile(e.pos))
287 elif self.selected_tool == constants.TOOL_SELL_EQUIPMENT: 290 elif self.selected_tool == constants.TOOL_SELL_EQUIPMENT:
288 self.sell_equipment(self.tv.screen_to_tile(e.pos)) 291 self.sell_equipment(self.tv.screen_to_tile(e.pos))