X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=naja%2Fwidgets%2Finfo_area.py;h=906e9d57d39d850e254f4e32bfb1e0c1f918d211;hb=6cb822e79f40bf9708d0034d0816e8310e423431;hp=ee9fccfdb5abd6d422f3855c549718ea4af9e6fe;hpb=2fc4534c9f67a08bc5fb0ceefc4bacf41a76d930;p=naja.git diff --git a/naja/widgets/info_area.py b/naja/widgets/info_area.py index ee9fccf..906e9d5 100644 --- a/naja/widgets/info_area.py +++ b/naja/widgets/info_area.py @@ -1,22 +1,49 @@ """ Widget for the game board information area. """ +import pygame -from naja.constants import INFO_SIZE +from naja.constants import INFO_SIZE, EIGHT_BIT_SCALE +from naja.resources import resources +from naja.resources.mutators import EIGHT_BIT from naja.widgets.base import Widget +from naja.widgets.tile import BIT_MAP +from naja.widgets.text import TextBoxWidget class InfoAreaWidget(Widget): """ Widget for the game board information area. """ - def __init__(self, pos, image=None): + def __init__(self, pos, state): super(InfoAreaWidget, self).__init__(pos, INFO_SIZE) + self.card = None + self.state = state def prepare(self): - pass + self.surface = pygame.surface.Surface(INFO_SIZE) + self.surface.fill((0, 0, 0)) + # Quick hack for testing + self.card = self.state.board_locations[self.state.player.position] + # Extract actions and such from the card + y_offset = 0 + for action in self.card.actions: + if action.required_bits: + img_name = BIT_MAP[action.required_bits].replace('.png', '_small.png') + img = resources.get_image(img_name, + transforms=(EIGHT_BIT,)) + self.surface.blit(img, (0, y_offset)) + y_offset += 8 + text = TextBoxWidget((12, y_offset), action.TEXT, + box_width= (INFO_SIZE[0] - 12) // EIGHT_BIT_SCALE, + fontsize = 28, padding = 4) + text.render(self.surface) + y_offset += text.surface.get_rect().height + 16 + + + def set_card(self, card): + self.card = card def draw(self, surface): - pass - #surface.blit(self.surface, self.pos) + surface.blit(self.surface, self.pos)