comparison gamelib/toolbar.py @ 460:7204c16ab64d

Wood market!
author Adrianna Pińska <adrianna.pinska@gmail.com>
date Mon, 23 Nov 2009 20:53:11 +0000
parents e9393970b5f6
children 279caa00f3fa
comparison
equal deleted inserted replaced
459:e9393970b5f6 460:7204c16ab64d
139 doc.add(make_box(equip.NAME)) 139 doc.add(make_box(equip.NAME))
140 doc.add(make_box('%d groats' % equip.BUY_PRICE)) 140 doc.add(make_box('%d groats' % equip.BUY_PRICE))
141 doc.add(make_box('%d groats' % equip.SELL_PRICE)) 141 doc.add(make_box('%d groats' % equip.SELL_PRICE))
142 doc.add(make_box('N/A')) 142 doc.add(make_box('N/A'))
143 doc.br(space[1]) 143 doc.br(space[1])
144 doc.add(make_box("Plank"))
145 doc.add(make_box('%d groats' % self.gameboard.wood_buy_price))
146 doc.add(make_box('%d groats' % self.gameboard.wood_sell_price))
147 doc.add(make_box('N/A'))
148 doc.br(space[1])
144 149
145 fix_widths(doc) 150 fix_widths(doc)
146 for word in "Damaged equipment or buildings will be sold for" \ 151 for word in "Damaged equipment or buildings will be sold for" \
147 " less than the sell price.".split(): 152 " less than the sell price.".split():
148 doc.add(gui.Label(word)) 153 doc.add(gui.Label(word))
257 self.add_tool_button("Move chickens", constants.TOOL_PLACE_ANIMALS, 262 self.add_tool_button("Move chickens", constants.TOOL_PLACE_ANIMALS,
258 None, cursors.cursors['select']) 263 None, cursors.cursors['select'])
259 264
260 self.add_tool('Sell stuff', self.add_sell_toolbar) 265 self.add_tool('Sell stuff', self.add_sell_toolbar)
261 266
267 self.add_tool('Trade wood', self.add_wood_toolbar)
268
262 self.add_spacer(5) 269 self.add_spacer(5)
263 270
264 self.add_heading("Buildings") 271 self.add_heading("Buildings")
265 272
266 self.add_tool('Buy building', self.add_building_toolbar) 273 self.add_tool('Buy building', self.add_building_toolbar)
278 self.add_heading("Game") 285 self.add_heading("Game")
279 self.add_tool("Save Game", self.save_game) 286 self.add_tool("Save Game", self.save_game)
280 self.add_tool("Load Game", self.load_game) 287 self.add_tool("Load Game", self.load_game)
281 288
282 self.add_heading(" ") 289 self.add_heading(" ")
283 # Dear pgu, is there a better way to get the current height? 290 ## Dear pgu, is there a better way to get the current height?
284 _cur_width, cur_height = self.resize() 291 #_cur_width, cur_height = self.resize()
285 self.add_spacer(570-cur_height) 292 #self.add_spacer(570-cur_height)
286 self.fin_tool = self.add_tool("Finished Day", self.day_done) 293 self.fin_tool = self.add_tool("Finished Day", self.day_done)
287 294
288 def add_building_toolbar(self): 295 def add_building_toolbar(self):
289 self.gameboard.change_toolbar(BuildingToolBar(self.gameboard, 296 self.gameboard.change_toolbar(BuildingToolBar(self.gameboard,
290 width=self.style.width)) 297 width=self.style.width))
291 298
292 def add_sell_toolbar(self): 299 def add_sell_toolbar(self):
293 self.gameboard.change_toolbar(SellToolBar(self.gameboard, 300 self.gameboard.change_toolbar(SellToolBar(self.gameboard,
301 width=self.style.width))
302
303 def add_wood_toolbar(self):
304 self.gameboard.change_toolbar(WoodToolBar(self.gameboard,
294 width=self.style.width)) 305 width=self.style.width))
295 306
296 def add_equipment_toolbar(self): 307 def add_equipment_toolbar(self):
297 self.gameboard.change_toolbar(EquipmentToolBar(self.gameboard, 308 self.gameboard.change_toolbar(EquipmentToolBar(self.gameboard,
298 width=self.style.width)) 309 width=self.style.width))
362 373
363 def add_default_toolbar(self): 374 def add_default_toolbar(self):
364 self.gameboard.change_toolbar(DefaultToolBar(self.gameboard, 375 self.gameboard.change_toolbar(DefaultToolBar(self.gameboard,
365 width=self.style.width)) 376 width=self.style.width))
366 377
378 class WoodToolBar(BaseToolBar):
379 def __init__(self, gameboard, **params):
380 BaseToolBar.__init__(self, gameboard, **params)
381 self.group = gui.Group(name='building_toolbar', value=None)
382 self.make_toolbar()
383
384 def make_toolbar(self):
385 self.gameboard.set_cursor(cursors.cursors['arrow'], None)
386
387 self.add_heading("Trade...")
388 self.add_tool("Buy (%s)" % self.gameboard.wood_buy_price, self.buy_wood)
389 self.add_tool("Sell (%s)" % self.gameboard.wood_sell_price, self.sell_wood)
390
391 self.add_spacer(15)
392 self.add_tool('Done', self.add_default_toolbar)
393
394 def add_default_toolbar(self):
395 self.gameboard.change_toolbar(DefaultToolBar(self.gameboard,
396 width=self.style.width))
397
398 def buy_wood(self):
399 if self.gameboard.cash >= self.gameboard.wood_buy_price:
400 self.gameboard.add_wood(1)
401 self.gameboard.add_cash(-self.gameboard.wood_buy_price)
402
403 def sell_wood(self):
404 if self.gameboard.wood > 0:
405 self.gameboard.add_wood(-1)
406 self.gameboard.add_cash(self.gameboard.wood_sell_price)