forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Это касается Анимации))) (http://forum.boolean.name/showthread.php?t=8774)

Colossus 27.07.2009 09:55

Это касается Анимации)))
 
Привет всем у меня снова вопрос...

вот смотрите: у меня есть 3 анимации:

1.анамация спокойного стояния.
2.анимация перехода в боевой режим.
3.анимация спокойного стояния(ожидание удара)в боевом режиме

внимание вопрос!

как мне раализовать все это нажатием 1 кнопки?!

тоесть до нажатия чел просто стоит, тыкаем кнопочку, он проигрывает переход в боевой режим, и дальше должна играть анимка стояния в боевом режиме... ну и обратно)

если можете то поподробней обьясните, и выложите примерчег):)

заранее благодарен

johnk 27.07.2009 10:10

Ответ: Это касается Анимации)))
 
Круто)))
Я как-то о поиске слышал...знаешь такого типчика?))))))))

Amatsu 27.07.2009 10:35

Ответ: Это касается Анимации)))
 
Юзай переменные состояния, в которые заноси номер текущего состояния персонажа, и таймеры (переменная-счетчик) для всех своих состояний героя.

Например у тебя персонаж стоит спокойно, никого не трогает. Переменная его состояния равна 0. Затем ты нажимаешь кнопку, переменная состояния меняется на 1, и пока проигрывается анимация или еще что состояния равно 1. Как только допустим заканчивается анимация удара, состояние переходит в 2 и переменной-таймеру присваивается допустим значение 100, после чего таймер начинает уменьшаться на 1 каждый цикл. Пока переменная-таймер > 0, персонаж находится в состоянии 2, в этом состоянии проигрывается анимация встревоженного стояния после атаки. Затем если переменная-таймер доходит до 0, состояние персонажа тоже меняется на 0 и врубается анимация простого спокойного стояния. Если же допустим во время таймера игрок нажал кнопку атаки еще раз, то состояние персонажа переходит в, допустим, 3 и проигрывается анимация второго удара, который входит в комбо-связку с первым. Ну а дальше так же как с первым ударом.

Кстати, проверяя текущее состояние можно например ограничить реакцию героя на нажатие игроком клавиш управления. Например если герой в состоянии 0, им можно управлять на WASD, если он вошел в состояние 1, то он проигрывает анимацию и не реагирует на попытки игрока заставить его куда-то бежать. Если же например в состоянии 2 и игрок нажимает любую кнопку движения - это принудительно возвращает переменную-таймер в 0 и соответственно сдвинувшись с места герой автоматически переходит в состояние 0 и комбо атаки уже не получится. Ну и в таком же духе

Colossus 27.07.2009 12:35

Ответ: Это касается Анимации)))
 
ценная информация)
спасибо)

DeadElf 27.07.2009 12:52

Ответ: Это касается Анимации)))
 
собственно, я и предполагал, что как-то так это можно сделать)


Часовой пояс GMT +4, время: 21:07.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot