Проблемы с интерактивностю
Здрасте всем, есть проблема. Есть карта с предметами, с которыми персонаж может интерактировать, но для этого нужно чтобы персонаж по нажатию клавиши был в определённом месте с определённым углом поворота, дабы анимации персонажа и предмета совпали, и всё было красиво. Вопрос в том, как это сделать? Есть только дерзкие, неподходящие идеи, по типу "Телепортации" - по нажатию кнопки перосонаж моментально окажется там, где надо, но хотелось бы плавности и хоть какой-нибудь красоты.
|
Ответ: Проблемы с интерактивностю
Мм... Судя по некоторым играм "телепортацией" это и делается.
Например есть наковальня. Берём и анимируем в максе персонажа вместе с наковальней, как он на ней куёт. Грузим в игру, скрываем персонажа, остаётся наковальня. Игрок подходит к предмету и начинает использовать, персонаж скрывается (которым управляет игрок), включается его копия которая стоит рядом с наковальней. Проигрывается анимация. Для плавности перехода, сделать проверку на расстояние и с какой стороны находится игрок, можно тупо триггером на пересечении. Как-то так :dontknow: Лучше в голову не пришло. |
Re: Проблемы с интерактивностю
ну вот есть пара пробелем, первая - это то, что игра с видом от первого лица, и вторая - то, что проект практически и базируется на этой самой интерактивности, и поэтому я хотел сделать её менее шовной
|
Ответ: Проблемы с интерактивностю
по нажатию кнопки действия, персонаж подходит в нужную позицию, разворачивается, и только после этого начинается анимация уже самого действия, все просто...
|
Ответ: Re: Проблемы с интерактивностю
Цитата:
P. S. То что Dstalk выше успел написать :-) |
Re: Проблемы с интерактивностю
ну а вот как так сделать, что бы он подошёл куда надо и развернулся?
|
Ответ: Проблемы с интерактивностю
сравниваешь разницу координат игрока и "нужного места" объекта (можно сделать dummy в максе и далее findchild найти), и каждый кадр двигаешь перса и проверяется расстояние, отслеживать состояния игрока можно отдельной переменной (например 1-игрок движется, 2-игрок поворачивается, 3-игрок уже на месте, идет анимация действия), тоже самое с поворотом. типа того...:)
|
Re: Проблемы с интерактивностю
это получается надо сначала развернуть персонажа, затем сделать MoveEntity, затем опять развернуть, но уже в сторону предмета, и там уже проигрывать анимацию? мне именно эти моменты интересны, а с переменными можно разобраться в принципе
|
Re: Проблемы с интерактивностю
как мне заставить двигаться персонажа к именно той самой опеределёной точке? каким образом?
|
Ответ: Проблемы с интерактивностю
ну, ищешь нужную точку
Код:
point=FindChild(Entity,"Name") Код:
current_angle#=EntityYaw(Player) Код:
If Phase=1 |
Re: Проблемы с интерактивностю
походу не понял как правильно, сделал
If Phase=2 If EntityDistance(player,point)<1 Then MoveEntity player,0,0,0.1 Else Phase=3 EndIf EndIf |
Ответ: Проблемы с интерактивностю
знак перепутал, у тебя если меньше одного написано в условии...
|
Re: Проблемы с интерактивностю
хах да попутал) но тем не менее переход на 3-ю фазу не происходит
|
Часовой пояс GMT +4, время: 03:22. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot