17 / 4 / 3
Регистрация: 29.05.2019
Сообщений: 141
1

Остановить анимацию

20.01.2021, 17:24. Показов 7462. Ответов 5

Author24 — интернет-сервис помощи студентам
При прыжке я должен отключить анимации которые использую даже если они не завершились. Но все равно выходит криво и даже при проигрывании моей анимации прыжка все равно вылазят другие. Анимация стоп, это когда он стоит и ничего не делает ее тоже приостанавливаем, она из одного кадра.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
void Update () {
        float moveX = 0;
        
 
        if (Input.GetKey (KeyCode.Space) & proverkajump == true) 
      {
            GetComponent<Animator>().SetBool("Stop", false);
            GetComponent<Animator>().SetBool("Walk", false);
            player.GetComponent<Animator>().SetTrigger("Jump");
            rb.AddForce (Vector2.up * 1700);
        }
 
        
    }
    void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject.name.Contains("Пол"))
        {
            GetComponent<Animator>().SetBool("Stop", true);
            GetComponent<Animator>().SetBool("Walk", true);
            proverkajump = true;
        }
        else {
            proverkajump = false; }
 
    }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.01.2021, 17:24
Ответы с готовыми решениями:

Остановить текущую анимацию
Изменяю переменные (параметры) в аниматоре, чтобы перейти к другой анимации (из idle в бег),...

Остановить анимацию на последнем кадре
Есть вертикальная игра, и 2 анимации - Прыжок и карабканье. Я сделал прыжок по параболе от одной...

Остановить coroutine
Скорость падающих предметов (они респаунятся сверху, поэтому переменная static) увеличивается...

Остановить поворот
Пишу приложение для моблки и использую для ходьбы джойстик. Требуется помочь с написанием метода,...

5
293 / 189 / 111
Регистрация: 22.07.2020
Сообщений: 538
21.01.2021, 19:08 2
Lol1231231,
Сделай скриншот структуры аниматора.

Добавлено через 7 секунд
Lol1231231,
Сделай скриншот структуры аниматора.
0
17 / 4 / 3
Регистрация: 29.05.2019
Сообщений: 141
21.01.2021, 19:29  [ТС] 3
Остановить анимацию

Смысл в том чтобы при прыжке проигрывался прыжок, мгновенно и пока персонаж не упадет ничего другого не будет. А у меня помимо анимации прыжка еще другие встревают в рандомном порядке. Я уже столько пробовал, не знаю что конкретно тебе скинуть. Ведь то что я тебе скинул это переход с анимации где персонаж просто стоит на прыжок, хотя вдруг он допустим идет, а я хочу прыжок и как анимацию будет возвращаться. Жесть)
Нажмите на изображение для увеличения
Название: Снимок.JPG
Просмотров: 54
Размер:	76.6 Кб
ID:	1219864


И что ты скажешь на счет этой фигни, она вообще нужна, я ее просто пробовал в надежде что поможет
C#
1
2
GetComponent<Animator>().SetBool("Stop", true);//анимация когда персонаж стоит
            GetComponent<Animator>().SetBool("Walk", true);
0
293 / 189 / 111
Регистрация: 22.07.2020
Сообщений: 538
21.01.2021, 19:45 4
Lol1231231,
У тебя в аниматоре переменные Walk, Jump, Stop - это триггеры. А в с крипте ты к ним обращаешься как к булевым.
C#
1
GetComponent<Animator>().SetBool("Walk", true);
Измени в аниматоре переменные на Bool
0
17 / 4 / 3
Регистрация: 29.05.2019
Сообщений: 141
23.01.2021, 23:25  [ТС] 5
Поменял все на bool и совсем запутался. Все равно какае-та каша с анимациями
Цитата Сообщение от Lol1231231 Посмотреть сообщение
Смысл в том чтобы при прыжке проигрывался прыжок, мгновенно и пока персонаж не упадет ничего другого не будет.
0
17 / 4 / 3
Регистрация: 29.05.2019
Сообщений: 141
23.01.2021, 23:31  [ТС] 6
Можете сказать, как правильно соединить все что бы ни было каши?
Чистый код
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
if (Input.GetKey(KeyCode.Space) & proverkajump == true)//прыжок, если нажата клавиша и персонаж не в полете
        {
            
            player.GetComponent<Animator>().SetTrigger("Jump");//анимация прыжка
            rb.AddForce(Vector2.up * 1700);//сам прыжок
        }
    }
    void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject.name.Contains("Пол"))//проверка на полет
        {
            proverkajump = true;//стоит 
 
        }
        else {
            proverkajump = false;//летит
            
        }
 
    }
Без связей
Остановить анимацию
0
23.01.2021, 23:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.01.2021, 23:31
Помогаю со студенческими работами здесь

Остановить движение объекта
Вот код только он не останавливает объект. using System.Collections; using...

Как остановить анимацию
Делаю так анимацию: public void anitation_wait(){ ImageSourceConverter converter =...

Как остановить анимацию?
Добрый день. У меня установлена анимация при входе курсора в объект, а когда курсор выходит из...

Остановить анимацию слайдера
Подскажите , пожалуйста , как остановить анимацию слайдера по достижении левого и правого краев...

Как остановить анимацию
Как остановить анимацию в коде из другого контрола? ThicknessAnimation TA3 = new...

Как остановить анимацию?
после завершения аниамации, изображение возвращается к исходному состоянию. а как сделать чтобы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru