X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=naja%2Fwidgets%2Fgame_bits.py;h=78f1ab91f488ef7ff275e7041ded574bc933f808;hb=85f20ca165c1710c96afbc42fa07acb68b6b4c1d;hp=54fa6834623e36e6367a2054ea8db7f7d2471416;hpb=847d271607652c00e62298a37987aae452719b61;p=naja.git diff --git a/naja/widgets/game_bits.py b/naja/widgets/game_bits.py index 54fa683..78f1ab9 100644 --- a/naja/widgets/game_bits.py +++ b/naja/widgets/game_bits.py @@ -2,18 +2,39 @@ Widget that holds the games's bits. """ -from .base import Widget +import pygame + +from naja.constants import BIT_SIZE, BITS +from naja.resources import resources +from naja.widgets.base import Widget class GameBitsWidget(Widget): """ Widget which holds the game's bits. """ - def __init__(self, pos, image=None): - super(GameBitsWidget, self).__init__(pos, (96, 96)) + def __init__(self, pos, state): + super(GameBitsWidget, self).__init__(pos, BIT_SIZE) + self.state = state def prepare(self): - pass + self.surface = pygame.Surface(BIT_SIZE) + bits = ( + (BITS.MSB, 'msb', ()), + (BITS.YELLOW, 'yellow', ()), + (BITS.MAGENTA, 'magenta', ()), + (BITS.CYAN, 'cyan', ()), + (BITS.WEST, 'arrow', ()), + (BITS.EAST, 'arrow', ()), + (BITS.SOUTH, 'arrow', ()), + (BITS.NORTH, 'arrow', ()), + ) + for pos, (bit, image, transforms) in enumerate(bits): + is_set = self.state.player.bits.check_bit(bit) + img = resources.get_image( + 'bits', '%s_%s.png' % (image, 'on' if is_set else 'off'), + transforms=transforms) + self.surface.blit(img, (img.get_width() * pos, 0)) def draw(self, surface): - surface.blit(self.surface, self.rect) + surface.blit(self.surface, self.pos)