Use new countdown glyphs.
[naja.git] / naja / widgets / tile.py
index 344a924ae27b0dcb99546b6e38d02a77b82aaa92..8ccb99db2671c5efdde8f0ba1de4dd7926cfdbb7 100644 (file)
@@ -6,7 +6,6 @@ from naja.constants import (
 from naja.resources import resources
 from naja.resources.mutators import EIGHT_BIT, blender
 from naja.widgets.base import Widget
-from naja.widgets.text import TextBoxWidget
 
 
 BIT_MAP = {
@@ -75,14 +74,24 @@ class TileWidget(Widget):
         for action in card.actions:
             y_offset = self._prepare_action(action, y_offset)
 
-        if card.replacement_time is not None:
-            timestr = str(card.replacement_time)
-            if len(timestr) > 1:
-                timestr = '+'
-            countdown_text = TextBoxWidget(
-                (TILE_SIZE[0] - 24, 4), timestr, padding=2,
-                colour=PALETTE.PINK, bg_colour=PALETTE.DARK_RED)
-            countdown_text.render(self.surface)
+        self._prepare_countdown(card)
+
+    def _prepare_countdown(self, card):
+        if card.replacement_time is None:
+            return
+        elif card.replacement_time <= 1:
+            glyph = 'glyphs/countdown_1.png'
+        elif card.replacement_time == 2:
+            glyph = 'glyphs/countdown_2.png'
+        elif card.replacement_time == 3:
+            glyph = 'glyphs/countdown_3.png'
+        elif card.replacement_time < 8:
+            glyph = 'glyphs/countdown_4.png'
+        else:
+            glyph = 'glyphs/countdown_5.png'
+        img = resources.get_image(
+            glyph, transforms=(EIGHT_BIT, blender(PALETTE.DARK_VIOLET)))
+        self.surface.blit(img, (TILE_SIZE[0] - 20, 0))
 
     def _prepare_lock(self, action, y_offset):
         if not action.required_bits: