¿como hago friccion en mi juego?

hola tengo una duda, estuve trabajando en un plataformero y me gustaria agregar una friccion al juego
(cuando dejo de tocar una tecla de movimiento entonces en vez de frenar asi bien seco siga caminando por unos segundos pero que su velocidad disminuyese hasta dejar de moverse) asi como la de super mario que cuando dejas de correr su velocidad disminuye poco a poco y deja de moverse, lo mismo en el aire, ¿ay alguna solucion?

1 Like

Hola @MatePro14015 !!!, para que un actor se mueva con fricción lo que te conviene hacer es cambiar la forma en la que se mueve el personaje.

Es muy probable que en tu juego estés moviendo al actor cambiando la coordenada x con el teclado:

image

Sin embargo, ese cambio de posición es inmediato, no tiene fricción. Ahora bien, si el actor tiene física podrías cambiar los atributos velocidad_x y velocidad_y. Estos atributos hacen algo parecido, mueven al actor en una dirección u otra, sin embargo, con estos atributos entra en juego el motor de física. Por ejemplo, si le das un valor a la velocidad como velocidad_x =5 el actor se va a mover hacia la derecha hasta que entre en contacto con algún otro actor.

Abrir este proyecto en el editor de pilas

Oh, por cierto, si necesitas hacer que el actor tenga menos fricción (es decir, que el suelo sea más resbaladizo) podrías usar esta linea de código dentro del método “iniciar”:

this.sprite.setFriction(0.01);

donde 0.01 es el valor de la fricción. Podrías jugar con otros valores para ver qué nivel de fricción queda mejor.

Abrazo!

¡muchas gracias me sirvio muchisimo! fue de mucha ayuda abrazos