Я пытаюсь сделать сценарий движения игрока (в воде), но я не понимаю, как работает добавление сил.
Я хочу, чтобы мой игрок свободно перемещался в окружающей среде, как будто нет гравитации, и я хочу, чтобы мой игрок двигался медленнее вверх, чем вниз.
Вот мой код:
public class PlayerMovementWater : MonoBehaviour
{
public Rigidbody2D rb2;
public int movementhorizontal = 10;
public int movementverticalup = 5;
public int movementverticaldown = 13;
void FixedUpdate()
{
float xdirection = Input.GetAxisRaw("Horizontal");
float ydirection = Input.GetAxisRaw("Vertical");
if (xdirection == -1)
{
rb2.AddForce(-movementhorizontal * Time.deltaTime, 0f);
}
else if (xdirection == 1)
{
rb2.AddForce(movementhorizontal * Time.deltaTime; 0f);
}
if (ydirection == -1)
{
rb2.AddForce(0f, -movementverticaldown * Time.deltaTime);
}
else if (ydirection == -1)
{
rb2.AddForce(0f, movementverticalup * Time.deltaTime);
}
}
}`