Не получается создать скрипт для движение персонажа C#

Программирование на Юнити.

Не получается создать скрипт для движение персонажа C#

Сообщение MrShloywer 22 май 2017, 00:11

У меня есть 2D игра, есть капсула которую надо передвигать, в Rigibody я заморозил Rotation, ну всё как надо, теперь не могу разобраться со скриптом, вот:

using UnityEngine;

public class Movie : MonoBehaviour {
public GameObject player;

void Update() {
if(Input.GetKey(KeyCode.A)) {
player.GetComponent<Rigidbody>().AddForce(-10f,0f,0f);
} else if(Input.GetKey(KeyCode.D)) {
player.GetComponent<Rigidbody>().AddForce(10f,0f,0f);
} else if(Input.GetKeyDown(KeyCode.W)) {
player.GetComponent<Rigidbody>().AddForce(0f,250f,0f);
}
}
}


И выскакивают проблемы:
1) При движении вправо если зажать клавишу влево то он начинает менять движение(а при движении влево он не меняет направление если зажать вправо).
2) Нельзя использовать прыжок на бегу.
3) Прыжок используется постоянно при нажатии на W(а мне надо что бы только при соприкосновении с землёй).


Что куда добавить и что откуда убрать что бы всё нормально работало?
MrShloywer
UNец
 
Сообщения: 15
Зарегистрирован: 21 май 2017, 23:55

Re: Не получается создать скрипт для движение персонажа C#

Сообщение Shock 22 май 2017, 03:56

Почитайте эту статью: https://habrahabr.ru/company/microsoft/blog/236125/
так же там есть ссылка на код, который делает всё, что вам необходимо.
Аватара пользователя
Shock
UNIт
 
Сообщения: 77
Зарегистрирован: 10 окт 2016, 18:22

Re: Не получается создать скрипт для движение персонажа C#

Сообщение MrShloywer 22 май 2017, 23:11

Shock писал(а):Почитайте эту статью: https://habrahabr.ru/company/microsoft/blog/236125/
так же там есть ссылка на код, который делает всё, что вам необходимо.

Спасибо большое, нашёл больше чем нужно (3A4OT)
MrShloywer
UNец
 
Сообщения: 15
Зарегистрирован: 21 май 2017, 23:55


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6