Física
------

Los actores dentro de un juego pueden
interactuar de muchas maneras.

Una de esas maneras es mediante una simulación, 
que hace a los actores comportarse como si
estuvieran en un entorno real. Con gravedad, colisiones
e inercia.

Veamos un ejemplo:

En el siguiente código tenemos la creación de un
personaje de color verde y tres cajas:

.. code-block:: python

    import pilas

    pilas.iniciar()

    cajas = pilas.actores.Caja() * 3

    pepe = pilas.actores.Aceituna()
    pepe.x = -100
    pepe.y = 0


Una vez que ejecutas el juego, vas a notar
que las cajas se mueven, rebotan entre sí y
se quedan detenidas. Pero el actor verde
no hace nada...


Vamos a cambiar un poco eso, vamos a pedirle
al actor verde que se pueda mover con el
cursor del mouse, y que pueda rebotar:

.. code-block:: python

    pepe.aprender(pilas.habilidades.RebotarComoPelota)
    pepe.aprender(pilas.habilidades.Arrastrable)


¿Y que hay de la gravedad?
--------------------------

No todos los juegos necesitan que los objetos "caigan"
en el escenario. A vez es necesario simular un ambiente
espacial, veamos cómo hacerlo, ejecuta esta
sentencia:

.. code-block:: python

    pilas.fisica.definir_gravedad(0, 0)


y listo, los objeto van a comenzar a flotar lentamente.

Entones, ¿que cambiamos?, la función ``definir_gravedad``
recibe dos números, el primer indica la aceleración
horizontal del escenario y el segundo indica la aceleración
vertical.

Así, ``(0, 0)`` significa que no habrá aceleración en ninguna
dirección.

Hace el intento, proba con diferentes valores: ``(40, 0)``, ``(-30, 10)``
etc...
