Как я могу сделать gameObject быстро быстрым, а затем начать замедление через некоторое время? Этот код не работает, как и предполагалось. Вот именно то, что я хочу: Когда игра начинается, gameObject играет бездельную анимацию, а затем «Приседает», когда пользователь нажимает на свой палец (Squat - это анимация, которую я сделал) и Jump (сначала быстро, затем замедляюсь через некоторое время, например, гравитация на Луне, скажем), когда они отпускают палец. Это все! Чтобы дать вам лучший обзор, давайте возьмем, например, главного героя в Crossy Road: когда пользователь нажимает вниз, курица «приседает», а когда пользователь отпускает палец, прыгает цыпленок. Та же концепция, но прыжок будет другим.Как я могу сделать gameObject быстро прыгать сначала, а затем замедлить работу через некоторое время? Этот код не работает, как будто это должно быть
public float startSpeed;
public float slowAmount;
float actualSpeed;
bool isJumping;
void Awake()
{
gameObject.GetComponent<Animation>()["Idle"].wrapMode=WrapMode.Loop;
gameObject.GetComponent<Animation>() ["TouchDown"].wrapMode = WrapMode.Once;
}
void Start()
{
GetComponent<Animation>().Play("Idle");
}
void Update()
{
if (Input.touchCount > 0)
{
if (Input.GetTouch (0).phase == TouchPhase.Began)
{
GetComponent<Animation>().Play ("TouchDown");
}
if (Input.GetTouch (0).phase == TouchPhase.Ended)
{
actualSpeed = startSpeed;
isJumping = true;
}
if (isJumping)
{
actualSpeed -= slowAmount * Time.deltaTime;
transform.position += new Vector3 (0.5f, actualSpeed * Time.deltaTime, 0);
}
}
}
Это то, что я сделал в начале. Это тоже не сработало. Точно такая же проблема. –
Помогите объяснить проблему? –
Я загружу личную ссылку на YouTube. –