Показать сообщение отдельно
Старый 08.12.2009, 20:26   #1
Toon3D
AnyKey`щик
 
Аватар для Toon3D
 
Регистрация: 08.12.2009
Сообщений: 8
Написано 0 полезных сообщений
(для 0 пользователей)
Анимация: Нажал - началась, отжал - закончилась

Здравствуйте! У меня вот возник вопрос:
Уже дня два, пытаюсь найти как при нажатии кнопки использовать анимацию. Нашел, получилось. Но теперь проблема другая: В моем случае анимация бег, при нажатии кнопки №200 (стрелочка вверх), hero (персонаж) передвигается вперед, с использованием анимации runplayer.b3d. Игра загрузилась. Персонаж стоит как на распятии (так и должно быть, стандартная поза модели), и при нажатии стрелочки, он передвигается вперед и проигрывается анимация (mode:1, повторение), но когда я отпускаю клавишу, анимация продолжает проигрываться, но передвигаться, как и должно быть, он не продолжает.
Я пытаюсь сделать что бы при нажатии стрелочки, анимация проигрывалась, а при отжатии, проигрывалась анимация idle.b3d. То есть, что бы когда стрелочку отпускаешь, он просто стоял на месте, а не бежал. Думаю вопрос выразил правильно и ясно, вот то что я наляпал, для наглядки
Graphics3D 1024,768,32,1
SetBuffer BackBuffer()

hero=LoadAnimMesh("models/player.b3d")
idle=LoadAnimSeq(hero,"anim/idle.b3d")
run=LoadAnimSeq(hero,"anim/runplayer.b3d")
PositionEntity hero,3,0,3

Ground=CreateTerrain(128)

Camera=CreateCamera(hero)
RotateEntity camera,25,0,0

light=CreateLight()
TurnEntity light,90,0,0

Repeat
If Not KeyDown(1) MoveEntity hero,0,-0.1,0
If KeyHit(200) Then Animate hero,1,0.5,run,10
If Not KeyDown(200) Then Animate hero,1,0.5,idle,10
If KeyDown(200) MoveEntity hero,0,0,0.1
If KeyDown(208) MoveEntity hero,0,0,-.1
If KeyDown(203) TurnEntity hero,0,2,0
If KeyDown(205) TurnEntity hero,0,-2,0
UpdateWorld
RenderWorld
Flip
Until KeyHit (1)
End
Вот с таким кодом что выше, когда отпускаешь стрелочку, анимация останавливается на том кадре, на каком я её отпустил, а мне нужно именно что бы останавливался на анимации idle.b3d .
Объяснил кажется подробно, заранее спасибо за ответ!

Последний раз редактировалось Toon3D, 09.12.2009 в 15:34.
(Offline)
 
Ответить с цитированием