data/manual/controles/index.json
{
"content": "<h1 id=\"controles\">Controles</h1>\n<p>Si quieres conocer el estado de los controles en pilas,\ntienes que usar el objeto <code>pilas.control</code>.</p>\n<p>Por ejemplo, para hacer que un actor se mueva por la pantalla simplemente puedes crear al actor y escribir estas sentencias.</p>\n<pre><code>if pilas.control.izquierda:\n mono.x -= 1\nelif pilas.control.derecha:\n mono.x += 1\n</code></pre>\n<p>Esta no es la \u00fanica forma de mover a un personaje por la pantalla, pero suele ser la mas conveniente porque es muy directa, y se puede escribir en cualquier parte del c\u00f3digo.</p>\n<blockquote>\n<p>Nota: Recuerda que para poder interactuar con el teclado, debes seleccionar la ventana de resultado. Haz click en la parte de arriba del int\u00e9rprete de pilas para seleccionarla.</p>\n</blockquote>\n<h2 id=\"investigando-al-objeto-control\">Investigando al objeto control</h2>\n<p>En realidad, cuando usamos a <code>pilas.control</code>,\naccedemos a un objeto que tienen varios atributos.</p>\n<p>Estos atributos pueden valer <code>True</code> o <code>False</code>,\ndependiendo de la pulsaci\u00f3n de las teclas:</p>\n<ul>\n<li>izquierda</li>\n<li>derecha</li>\n<li>arriba</li>\n<li>abajo</li>\n<li>boton</li>\n</ul>\n<p>Esto te permite simplificar el c\u00f3digo, porque no tienes que conocer espec\u00edficamente las teclas que activan cada acci\u00f3n, y en todos los juegos ser\u00e1n las mismas teclas.</p>\n<h2 id=\"donde-consultar-los-controles\">\u00bfD\u00f3nde consultar los controles?</h2>\n<p>El mejor lugar para consultar el estado de los controles es en la actualizaci\u00f3n de un actor.</p>\n<p>Esto se logra colocando un m\u00e9todo llamado <code>actualizar</code> dentro del actor y haciendo la consulta ah\u00ed. Veamos un actor sencillo que se pueda mover de izquierda a derecha. El c\u00f3digo ser\u00eda as\u00ed:</p>\n<pre><code>import pilasengine\n\npilas = pilasengine.iniciar()\n\nclass MiActor(pilasengine.actores.Actor):\n\n def iniciar(self):\n self.imagen = pilas.imagenes.cargar(\"aceituna.png\")\n\n def actualizar(self):\n if pilas.control.izquierda:\n self.x -= 10\n\n if pilas.control.derecha:\n self.x += 10\n\nMiActor(pilas)\n\npilas.ejecutar() # Necesario al ejecutar en scripts.\n</code></pre>\n",
"url": "/controles/",
"language": "en",
"title": "Controles"
}