Merge branch 'master' of ctpug.org.za:koperkapel
[koperkapel.git] / koperkapel / actors / orientatedsurf.py
index 5c8df654b8b7f827b0fab58ad01d34aefc0f8c61..720bb204cdb5a69e28a2ce482acffc1cfe1d0ab9 100644 (file)
@@ -4,9 +4,12 @@ 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):
-    def __init__(self, surf, pos=POS_TOPLEFT, anchor=ANCHOR_CENTER, angle=0, **kwargs):
+    def __init__(self, surf, pos=POS_TOPLEFT, anchor=ANCHOR_CENTER, angle=0,
+                 **kwargs):
         self._handle_unexpected_kwargs(kwargs)
 
         self._angle = angle
@@ -20,8 +23,12 @@ class OrientatedSurfActor(SurfActor):
 
     @angle.setter
     def angle(self, angle):
+        cur_anchor = self._anchor_value
+        if angle not in (self._angle, self._angle + 180, self._angle - 180):
+            self._anchor_value = (cur_anchor[1], cur_anchor[0])
         self._angle = angle
         self._surf = self._orig_surf = rotate(self._base_surf, angle)
+        print(self.anchor, self.angle)
 
     @property
     def surf(self):