Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/pilas/camara.py
diff options
context:
space:
mode:
Diffstat (limited to 'pilas/camara.py')
-rw-r--r--pilas/camara.py39
1 files changed, 39 insertions, 0 deletions
diff --git a/pilas/camara.py b/pilas/camara.py
new file mode 100644
index 0000000..c013c45
--- /dev/null
+++ b/pilas/camara.py
@@ -0,0 +1,39 @@
+# -*- encoding: utf-8 -*-
+# Pilas engine - A video game framework.
+#
+# Copyright 2010 - Hugo Ruscitti
+# License: LGPLv3 (see http://www.gnu.org/licenses/lgpl.html)
+#
+# Website - http://www.pilas-engine.com.ar
+
+import pilas
+
+class Camara(object):
+ """Representa el punto de vista de la ventana.
+
+ Los atributos ``x`` e ``y`` indican cual debe ser el
+ punto central de la pantalla. Por defecto estos
+ valores con (0, 0)."""
+
+ def __init__(self, motor):
+ self.motor = motor
+
+ @pilas.utils.interpolable
+ def _set_x(self, x):
+ pilas.mundo.motor.definir_centro_de_la_camara(x, self.y)
+
+ def _get_x(self):
+ x, y = pilas.mundo.motor.obtener_centro_de_la_camara()
+ return x
+
+ @pilas.utils.interpolable
+ def _set_y(self, y):
+ pilas.mundo.motor.definir_centro_de_la_camara(self.x, y)
+
+ def _get_y(self):
+ x, y = pilas.mundo.motor.obtener_centro_de_la_camara()
+ return y
+
+ x = property(_get_x, _set_x)
+ y = property(_get_y, _set_y)
+