Add a sensible license
[koperkapel.git] / koperkapel / actors / orientatedsurf.py
index ae79c43007d78a4ca28c19de52a352a53fd86655..ce6f01b16a9f42955b43c95e92ffc2b826665570 100644 (file)
@@ -4,7 +4,6 @@ from pygame.transform import rotate
 from pgzero.actor import POS_TOPLEFT, ANCHOR_CENTER
 
 from .surf import SurfActor
-from ..constants import TILE_SIZE
 
 
 class OrientatedSurfActor(SurfActor):
@@ -39,3 +38,20 @@ class OrientatedSurfActor(SurfActor):
         self._base_surf = surf
         self._orig_surf = self._surf = rotate(surf, self._angle)
         self._update_pos()
+
+
+class SelectableSurfActor(OrientatedSurfActor):
+    def __init__(self, seat, selected_seat):
+        self._selected = False
+        self._seat = seat
+        self._selected_seat = selected_seat
+        super().__init__(surf=self._seat, angle=0)
+
+    @property
+    def selected(self):
+        return self._selected
+
+    @selected.setter
+    def selected(self, value):
+        self._selected = value
+        self.surf = self._selected_seat if value else self._seat