There are no silly questions when we learn something. ad 1 You could apply a set_linear_damp to counter the force and eventually to stop the body from moving.
ad 2 For example with if statement. In pseudo code:
if the speed of the object is > 100,
then set the speed of the object = 100
caps it at the speed value = 100
ad 3 You may use get_global_transform().get_rotation() to know the global rotation and then apply the force accordingly
It’s always good to check the docs and see what’s available there, for example for RigidBody2D:
About the ad 1, if I understood correctly how it works in Godot, friction is a value between 0 and 1, but it seems to do nothing even with maximum friction.
Mudley | 2017-05-22 23:28
I checked just now. I think you should use set_linear_damp . The setting definitely slows down the object and make it stop…
Friction seams not to have any effect if object is not touching other objects I guess. Sorry for a misleading answer. I will edit that.
Freeman | 2017-05-23 00:40
It makes it go slower, but still no signs of stopping.