changeset 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
files gamelib/gameboard.py
diffstat 1 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/gamelib/gameboard.py	Wed Nov 25 18:45:20 2009 +0000
+++ b/gamelib/gameboard.py	Wed Nov 25 18:59:51 2009 +0000
@@ -2,7 +2,7 @@
 
 import pygame
 from pygame.locals import MOUSEBUTTONDOWN, MOUSEMOTION, KEYDOWN, K_UP, K_DOWN, \
-        K_LEFT, K_RIGHT
+        K_LEFT, K_RIGHT, KMOD_SHIFT
 from pgu import gui
 
 import tiles
@@ -274,6 +274,7 @@
             self.unselect_all()
         elif e.button != 1: # Left button
             return
+        mods = pygame.key.get_mods()
         if self.selected_tool == constants.TOOL_SELL_CHICKEN:
             self.sell_chicken(self.tv.screen_to_tile(e.pos))
         elif self.selected_tool == constants.TOOL_SELL_EGG:
@@ -281,6 +282,8 @@
         elif self.selected_tool == constants.TOOL_PLACE_ANIMALS:
             self.place_animal(self.tv.screen_to_tile(e.pos))
         elif self.selected_tool == constants.TOOL_SELECT_CHICKENS:
+            if not (mods & KMOD_SHIFT):
+                self.unselect_all()
             self.select_chicken(self.tv.screen_to_tile(e.pos))
         elif self.selected_tool == constants.TOOL_SELL_BUILDING:
             self.sell_building(self.tv.screen_to_tile(e.pos))