Как сделать пружинный объект, который толкает игрока горизонтально?C#

Место общения программистов C#
Anonymous
Как сделать пружинный объект, который толкает игрока горизонтально?

Сообщение Anonymous »

Код: Выделить всё

public class spring : MonoBehaviour
{
[SerializeField] public float jumpHeight = 10f;

private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.gameObject.CompareTag("Player"))
{
collision.gameObject.GetComponent().AddForce(Vector2.up * jumpHeight, ForceMode2D.Impulse);
}
}
}
Я сделал пружину вверх, и сделать ее было довольно легко. Я думал, что будет так же легко сделать пружину в сторону, но сейчас мне не повезло. Сценарий выше называется восходящим пружинным сценарием. Я также знаю, что мне нужно что-то сделать с направлением, так как игрок будет идти к пружине, чтобы ударить по ней, а затем получить ответный удар.
Я попытался адаптировать свой сценарий восходящей пружины. чтобы вы шли в направлении, указанном в скрипте (например, Vector2.right, чтобы идти направо), но я предполагаю, что это просто не так и не может работать таким образом. Все сообщения, которые я видел в Интернете, пытаясь решить мою проблему, похоже, были либо о чем-то еще в Unity, случайно названном пружиной, либо о том, как нажать объект, когда игрок
редактирует:
фактические результаты для Vector2.right не меняют направление, а просто отбрасывают игрока. Кроме того, я переименовал переменную jumpHeight в rightForce, но я уверен, что это не имеет никакого отношения к тому, что она не работает. Unity не показал ошибок

Подробнее здесь: https://stackoverflow.com/questions/790 ... rizontally

Вернуться в «C#»