Mercurial > sypikslang
diff gamelib/gamegui.py @ 124:685301e35f88
Add a minion cost to missions
author | Neil Muller <drnlmuller@gmail.com> |
---|---|
date | Thu, 10 May 2012 12:16:15 +0200 |
parents | acf3af761bbc |
children | c224057befff |
line wrap: on
line diff
--- a/gamelib/gamegui.py Thu May 10 02:37:02 2012 +0200 +++ b/gamelib/gamegui.py Thu May 10 12:16:15 2012 +0200 @@ -130,6 +130,8 @@ def __init__(self, mission, pos, parent): self.mission = mission self.parent = parent + self.game = self.parent.game + self.minions = 0 super(MissionWidget, self).__init__(pos, '%s' % mission.NAME, font_small) selected = ImageDrawable((0, 0, self.WIDTH, self.HEIGHT), @@ -149,12 +151,15 @@ if self.mode == 'SELECTED': # unselect mission self.reset() - else: + elif self.mission.can_attempt(self.game): # select mission and equipment self.mode = 'SELECTED' self.set_state('SELECTED') + self.minions = self.mission.MINIONS_REQUIRED + self.game.minions -= self.minions + self.parent.update_labels() equip = EquipWindow(self.parent.screen, self.mission, - self.parent.game, self) + self.game, self) AddWindow.post(equip) def selected(self): @@ -166,7 +171,9 @@ def reset(self): for equip in self.equipment: # Release funds - self.parent.game.money += equip.COST + self.game.money += equip.COST + self.game.minions += self.minions + self.minions = 0 self.parent.update() self.equipment = [] self.mode = 'NORMAL' @@ -348,7 +355,9 @@ self.points = ValueLabel((10, 75), 'Available Human Resources') self.add_child(self.points) - self.money = ValueLabel((310, 75), 'Money') + self.minions = ValueLabel((310, 75), 'Minions available: ') + self.add_child(self.minions) + self.money = ValueLabel((510, 75), 'Money') self.add_child(self.money) self.milestone = ValueLabel((10, 95), 'Currently taken over') @@ -359,6 +368,7 @@ def update_labels(self): self.points.set_value(self.game.get_available_points()) self.money.set_value(self.game.money) + self.minions.set_value(self.game.minions) self.milestone.set_value(self.game.milestone) self.reputation.set_value(_lookup_reputation(self.game.reputation))