![](images/chestnut/misc/left.gif) |
3D-программирование Вопросы, касающиеся программирования 3D мира |
23.03.2015, 01:09
|
#1
|
Знающий
Регистрация: 21.03.2015
Сообщений: 262
Написано 6 полезных сообщений (для 7 пользователей)
|
Остановка звуков и проверка
Приветствую, вот в цикле у меня есть условия:
If KeyHit(200) then
MoveEntity cub,0,0,1
PlaySound step
End If
И так далее...
Но ведь когда он будет врезатьс звук опять таки убдет играть, подскажите пожалуйста, как сделать проверку движится ли вообще объект, и если нет остановить звук? Чтоб он и не начал воспроизводиться?
|
(Offline)
|
|
23.03.2015, 03:05
|
#2
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,021
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Остановка звуков и проверка
В примерах блица найди deathisland.
+ поищи на форуме
Отличный пример. Только квадратные скобки замени на круглые.
|
(Offline)
|
|
23.03.2015, 12:33
|
#3
|
Оператор ЭВМ
Регистрация: 15.01.2015
Сообщений: 46
Написано 10 полезных сообщений (для 24 пользователей)
|
Ответ: Остановка звуков и проверка
PlaySoundChannel и StopSoundChannel. Вроде такие команды есть
__________________
Путь осилит идущий.
|
(Offline)
|
|
23.03.2015, 13:34
|
#4
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,021
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Остановка звуков и проверка
Сообщение от kisaroff
PlaySoundChannel и StopSoundChannel. Вроде такие команды есть
|
Таких нету, есть: PlaySound() и StopChannel().
|
(Offline)
|
|
23.03.2015, 15:45
|
#5
|
Гигант индустрии
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений (для 3,298 пользователей)
|
Ответ: Остановка звуков и проверка
Сообщение от softcrasoft
Приветствую, вот в цикле у меня есть условия:
If KeyHit(200) then
MoveEntity cub,0,0,1
PlaySound step
End If
И так далее...
Но ведь когда он будет врезатьс звук опять таки убдет играть, подскажите пожалуйста, как сделать проверку движится ли вообще объект, и если нет остановить звук? Чтоб он и не начал воспроизводиться?
|
Надо проверять врезался ли куб во что нибудь и в зависимости от этого играть звук или нет.
If KeyHit(200) then
MoveEntity cub,0,0,1
If ( ... ) PlaySound step
End If
Заместо "..." пишешь функцию для проверки столкновения.
|
(Offline)
|
|
23.03.2015, 15:58
|
#6
|
Мастер
Регистрация: 24.06.2009
Адрес: Набережные Челны
Сообщений: 930
Написано 292 полезных сообщений (для 504 пользователей)
|
Ответ: Остановка звуков и проверка
А я бы лучше так попробовал.
Если игрок нажал кнопку ходьбы, и если текущая позиция X и Y игрока отличается от предыдущей - значит он двигался.
Но проверять на проверку Z разницы в высоте - падал ли он (а не ходил)
Там и регулировать можно, если немножко сходил - звуки мелкого шага, и т.п.
И нет зависимости что используется: встроенная коллизия, какой физический движок, и есть ли физика вообще.
|
(Offline)
|
|
24.03.2015, 01:02
|
#7
|
Знающий
Регистрация: 21.03.2015
Сообщений: 262
Написано 6 полезных сообщений (для 7 пользователей)
|
Ответ: Остановка звуков и проверка
только вот что за эта функция ...
|
(Offline)
|
|
24.03.2015, 02:44
|
#8
|
Знающий
Регистрация: 08.11.2010
Адрес: Москва
Сообщений: 285
Написано 78 полезных сообщений (для 182 пользователей)
|
Ответ: Остановка звуков и проверка
Сообщение от softcrasoft
только вот что за эта функция ...
|
EntityCollided?
Прочти о ней с справке.
|
(Offline)
|
|
24.03.2015, 03:49
|
#9
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Ответ: Остановка звуков и проверка
EntityCollided сработает только если прописаны коллизии и делается UpdateWorld в цикле (а этого, наверное, не делается).
Можно ещё проверять расстояние между двумя объектами, зная их координаты, расстояние будет равно корню квадратному из суммы квадратов их разностей.
Если расстояние получилось настолько маленькое, что можно считать, что они столкнулись, то выполнять действие.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
24.03.2015, 05:18
|
#10
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,021
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Остановка звуков и проверка
Сообщение от ABTOMAT
Можно ещё проверять расстояние между двумя объектами, зная их координаты, расстояние будет равно корню квадратному из суммы квадратов их разностей.
Если расстояние получилось настолько маленькое, что можно считать, что они столкнулись, то выполнять действие.
|
Есть готовая функция — EntityDistance ( Entity, Entity ).
Что быстрее будет, блицевская функция, или "вручную"?
|
(Offline)
|
|
24.03.2015, 08:03
|
#11
|
Гигант индустрии
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений (для 3,298 пользователей)
|
Ответ: Остановка звуков и проверка
Сообщение от LLI.T.A.L.K.E.R.
А я бы лучше так попробовал.
Если игрок нажал кнопку ходьбы, и если текущая позиция X и Y игрока отличается от предыдущей - значит он двигался.
Но проверять на проверку Z разницы в высоте - падал ли он (а не ходил)
|
"ГГ подлетает от взрыва и издает звуки ходьбы"
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 06:52.
|