Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--food.py4
-rw-r--r--game.py71
2 files changed, 57 insertions, 18 deletions
diff --git a/food.py b/food.py
index bd7fc2a..6798fd3 100644
--- a/food.py
+++ b/food.py
@@ -39,7 +39,7 @@ _('milk'), 57, 1, 'leche.png',
_('lettuce'), 19, 5, 'lechuga.png',
_('lemon'), 30, 2, 'limon.png',
_('flax seed'), 450, 4, 'linaza.png',
-_('corn'), 346, 4, 'maiz.png',
+# _('corn'), 346, 4, 'maiz.png',
_('mandarin'), 44, 2, 'mandarina.png',
_('mango'), 73, 2, 'mango.png',
_('apple'), 65, 2, 'manzana.png',
@@ -69,7 +69,7 @@ _('rice and beans'), 411, 4, 'rice-and-beans.png',
_('watermelon'), 47, 2, 'sandia.png',
#TRANS: A seed used to make horchata (common in Central America)
_('jicaro'), 30, 4, 'semillas-de-jicaro.png',
-_('tamale'), 126, 5, 'nacatamal.png',
+# _('tamale'), 126, 5, 'nacatamal.png',
_('tomato'), 16, 5, 'tomate.png',
_('wheat'), 345, 4, 'trigo.png',
_('grape'), 68, 2, 'uvas.png',
diff --git a/game.py b/game.py
index 47b2e64..2b0e2e1 100644
--- a/game.py
+++ b/game.py
@@ -58,6 +58,7 @@ class Game():
self._height = gtk.gdk.screen_height()
self._scale = self._width / 1200.
self._target = 0
+ self._tries = 0
self.level = 0
@@ -219,6 +220,7 @@ class Game():
self._frown.set_label('')
self._smile.set_label('')
+ self._tries = 0
def _name_that_food(self):
''' Choose food cards and one matching food picture '''
@@ -360,52 +362,89 @@ class Game():
if self.level == 0:
if spr.type == self._target:
self._smile.set_layer(200)
+ self._tries = 3
else:
self._frown.set_layer(200)
- self.food_cards[self._target].set_label_color('blue')
- label = self.food_cards[self._target].labels[0]
- self.food_cards[self._target].set_label(label)
+ self._tries += 1
+ if self._tries == 3:
+ self.food_cards[self._target].set_label_color('blue')
+ label = self.food_cards[self._target].labels[0]
+ self.food_cards[self._target].set_label(label)
elif self.level == 1:
i = FOOD[self._target][GROUP]
if spr.type == i:
self._smile.set_layer(200)
+ self._tries = 3
else:
self._frown.set_layer(200)
- self._group_cards[i].set_label_color('blue')
- label = self._group_cards[i].labels[0]
- self._group_cards[i].set_label(label)
+ self._tries += 1
+ if self._tries == 3:
+ self._group_cards[i].set_label_color('blue')
+ label = self._group_cards[i].labels[0]
+ self._group_cards[i].set_label(label)
elif self.level == 2:
if spr.type == self._target:
self._smile.set_layer(200)
+ self._tries = 3
else:
self._frown.set_layer(200)
- self.food_cards[self._target].set_label_color('blue')
- label = self.food_cards[self._target].labels[0]
- self.food_cards[self._target].set_label(label)
+ self._tries += 1
+ if self._tries == 3:
+ self.food_cards[self._target].set_label_color('blue')
+ label = self.food_cards[self._target].labels[0]
+ self.food_cards[self._target].set_label(label)
elif self.level == 3:
i = MYPLATE[FOOD[self._target][GROUP]][QUANT]
if spr.type == i:
self._smile.set_layer(200)
+ self._tries = 3
else:
self._frown.set_layer(200)
- self._quantity_cards[i].set_label_color('blue')
- label = self._quantity_cards[i].labels[0]
- self._quantity_cards[i].set_label(label)
+ self._tries += 1
+ if self._tries == 3:
+ self._quantity_cards[i].set_label_color('blue')
+ label = self._quantity_cards[i].labels[0]
+ self._quantity_cards[i].set_label(label)
elif self.level == 4:
if self._target == spr.type:
self._smile.set_layer(200)
+ self._tries = 3
else:
self._frown.set_layer(200)
- self._balance_cards[self._target].set_label_color('blue')
- label = self._balance_cards[self._target].labels[0]
- self._balance_cards[self._target].set_label(label)
+ self._tries += 1
+ if self._tries == 3:
+ self._balance_cards[self._target].set_label_color('blue')
+ label = self._balance_cards[self._target].labels[0]
+ self._balance_cards[self._target].set_label(label)
else:
_logger.debug('unknown play level %d' % (self.level))
# Play again
- gobject.timeout_add(2000, self.new_game)
+ if self._tries == 3:
+ gobject.timeout_add(2000, self.new_game)
+ else:
+ gobject.timeout_add(1000, self._reset_game)
return True
+ def _reset_game(self):
+ self._frown.hide()
+ if self.level in [0, 2]:
+ for i, w in enumerate(self.food_cards):
+ w.set_label_color('black')
+ w.set_label(FOOD[i][NAME])
+ elif self.level == 1:
+ for i, w in enumerate(self._group_cards):
+ w.set_label_color('black')
+ w.set_label(MYPLATE[i][0])
+ elif self.level == 3:
+ for i, w in enumerate(self._quantity_cards):
+ w.set_label_color('black')
+ w.set_label(QUANTITIES[i])
+ elif self.level == 4:
+ for i, w in enumerate(self._balance_cards):
+ w.set_label_color('black')
+ w.set_label(BALANCE[i])
+
def _expose_cb(self, win, event):
self.do_expose_event(event)