Daniil
Посетитель
![*](https://forum.hellroom.ru/Themes/default/images/star13.png)
Репутация: -1
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif)
API: GameMaker 8.1 Standard
Сообщений: 15
|
![](https://forum.hellroom.ru/Themes/default/images/post/question.gif) |
« : Февраль 04, 2017, 22:59:56 » |
|
Всем привет! Опять я обращаюсь за вашей помощью. На этот раз у меня возникла проблема со звуками.Использую старый звуковой движок(с новым вообще не разобрался). Мне нужно чтоб звук воспроизводился только тогда, когда нажата клавиша(для ходьбы). Код: if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_left) or keyboard_check_pressed(vk_up) { sound_play(snd_walk); }
Тут звук воспроизводиться когда клавишу нажал, когда нажимаешь второй раз звуки накладываются друг на друга.Если кто-то шарит, то подскажите пожалуйста.
|
|
|
Записан
|
|
|
|
Slug2002
Активный участник
![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png)
Репутация: 20
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif) Награды: ![2 место в HellRoom Jam X 2 место в HellRoom Jam X](https://forum.hellroom.ru/awards/9fc2c03db5d7d0f3bdea4534d5bce14d_4b389e6b58cc.gif) ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](https://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: GameMaker Studio Pro
Деятельность: GML, Network, Ultimate 3D, Java Script
Сообщений: 272
слава векторам
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #1 : Февраль 04, 2017, 23:07:54 » |
|
Попробуйте так: if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_left) or keyboard_check_pressed(vk_up) { sound_loop(snd_walk); } if keyboard_check_released(vk_right) or keyboard_check_released(vk_down) or keyboard_check_released(vk_left) or keyboard_check_released(vk_up) { sound_stop(snd_walk); }
|
|
|
Записан
|
На джеме побеждает не десяток однообразных уровней, а один, но сделанный на совесть.Fur
|
|
|
skypo
GM Pro user
Репутация: 63
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif) Награды: ![500 сообщений! 500 сообщений!](https://forum.hellroom.ru/awards/3c67b578648fcc103c9f948b8a342fca_hellroomforum_message_tin.gif) ![За постоянность! [50 дней на форуме] За постоянность! [50 дней на форуме]](https://forum.hellroom.ru/awards/d09ba76b977b84fd4f5dcfae1f2918ff_hellroomforum_time_copper.gif)
API: GameMaker Studio Pro
Сообщений: 809
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #2 : Февраль 04, 2017, 23:08:02 » |
|
используй if !audio_is_playing (snd_walk) {audio_play_sound(snd_walk, 0, false)}; вместо sound
|
|
|
Записан
|
|
|
|
Daniil
Посетитель
![*](https://forum.hellroom.ru/Themes/default/images/star13.png)
Репутация: -1
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif)
API: GameMaker 8.1 Standard
Сообщений: 15
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #3 : Февраль 04, 2017, 23:19:01 » |
|
Попробуйте так: if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_left) or keyboard_check_pressed(vk_up) { sound_loop(snd_walk); } if keyboard_check_released(vk_right) or keyboard_check_released(vk_down) or keyboard_check_released(vk_left) or keyboard_check_released(vk_up) { sound_stop(snd_walk); }
Всё работает(почти). Когда по диагонали идёшь, а потом 1 кнопку отпускаешь, звук перестаёт играть. Добавлено: Февраль 04, 2017, 23:20:07 используй if !audio_is_playing (snd_walk) {audio_play_sound(snd_walk, 0, false)}; вместо sound
Я тебя не понял ![](https://forum.hellroom.ru/Smileys/kolobki/gg.gif) , можешь поподробней?
|
|
|
Записан
|
|
|
|
Slug2002
Активный участник
![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png)
Репутация: 20
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif) Награды: ![2 место в HellRoom Jam X 2 место в HellRoom Jam X](https://forum.hellroom.ru/awards/9fc2c03db5d7d0f3bdea4534d5bce14d_4b389e6b58cc.gif) ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](https://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: GameMaker Studio Pro
Деятельность: GML, Network, Ultimate 3D, Java Script
Сообщений: 272
слава векторам
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #4 : Февраль 04, 2017, 23:23:14 » |
|
Попробуй этот if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_left) or keyboard_check_pressed(vk_up) { sound_loop(snd_walk); } if speed=0 {sound_stop(snd_walk)}
|
|
|
Записан
|
На джеме побеждает не десяток однообразных уровней, а один, но сделанный на совесть.Fur
|
|
|
Daniil
Посетитель
![*](https://forum.hellroom.ru/Themes/default/images/star13.png)
Репутация: -1
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif)
API: GameMaker 8.1 Standard
Сообщений: 15
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #5 : Февраль 04, 2017, 23:25:28 » |
|
Попробуй этот if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_left) or keyboard_check_pressed(vk_up) { sound_loop(snd_walk); } if speed=0 {sound_stop(snd_walk)}
Такой же косяк
|
|
|
Записан
|
|
|
|
Fur
Абы-какой
GM Pro user
Репутация: 463
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif) Награды: ![3000 сообщений! 3000 сообщений!](https://forum.hellroom.ru/awards/4fded4ef16cef88aaa36dca84008c02e_hellroomforum_message_silver.gif) ![За постоянность! [500 дней на форуме] За постоянность! [500 дней на форуме]](https://forum.hellroom.ru/awards/e0371460a203dd46d2dc161571bf6144_hellroomforum_time_gold.gif) ![Третье место на HellRoom Jam #9 [Flucoldache] Третье место на HellRoom Jam #9 [Flucoldache]](https://forum.hellroom.ru/awards/bb4b4f1479909ce4eb3764370bdb2375_hj9_bronze-1.gif) ![За лояльность! [+300 репутации] За лояльность! [+300 репутации]](https://forum.hellroom.ru/awards/8ff7443ce508760cfbf715910b3eb0b3_hellroomforum_good_copper.gif) ![Настоящий игродел! Настоящий игродел!](https://forum.hellroom.ru/awards/37453fbb8494157a679276d2e609b4aa_gamemaker.png) ![Боже мой, посмотрите на эту медальку! Первое место на HellRoom Jam #6 Боже мой, посмотрите на эту медальку! Первое место на HellRoom Jam #6](https://forum.hellroom.ru/awards/3be97da4a43b89cbfd6b8f82222ed3b0_hellroom_jam_6_gold.gif)
API: Game Maker 8.0 Lite
Деятельность: Бурная.
Сообщений: 3673
Лисяток тебе.
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #6 : Февраль 04, 2017, 23:32:22 » |
|
Попробуй этот if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_left) or keyboard_check_pressed(vk_up) { sound_loop(snd_walk); } if speed=0 {sound_stop(snd_walk)}
Ну я же просил. Не знаешь - не лезь.
|
|
|
Записан
|
В одной отдельно взятой фразе не должно быть больше миллиона муравьёв, пусть даже она — научного труда о муравьях. Hyperflex
|
|
|
Daniil
Посетитель
![*](https://forum.hellroom.ru/Themes/default/images/star13.png)
Репутация: -1
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif)
API: GameMaker 8.1 Standard
Сообщений: 15
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #7 : Февраль 04, 2017, 23:47:34 » |
|
Попробуй этот if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_left) or keyboard_check_pressed(vk_up) { sound_loop(snd_walk); } if speed=0 {sound_stop(snd_walk)}
Ну я же просил. Не знаешь - не лезь. Если я сюда обратился - это значит, что я не смог найти нужную информацию самостоятельно.
|
|
|
Записан
|
|
|
|
Slug2002
Активный участник
![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png)
Репутация: 20
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif) Награды: ![2 место в HellRoom Jam X 2 место в HellRoom Jam X](https://forum.hellroom.ru/awards/9fc2c03db5d7d0f3bdea4534d5bce14d_4b389e6b58cc.gif) ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](https://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: GameMaker Studio Pro
Деятельность: GML, Network, Ultimate 3D, Java Script
Сообщений: 272
слава векторам
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #8 : Февраль 04, 2017, 23:48:44 » |
|
Попробуй это: if not sound_isplaying(snd_walk) { if keyboard_check_pressed(vk_down) {sound_loop(snd_walk)} if keyboard_check_pressed(vk_left) {sound_loop(snd_walk)} if keyboard_check_pressed(vk_up) {sound_loop(snd_walk)} if keyboard_check_pressed(vk_right) {sound_loop(snd_walk)}}
if x=xprevious {if y=yprevious {sound_stop(snd_walk)}}
|
|
|
Записан
|
На джеме побеждает не десяток однообразных уровней, а один, но сделанный на совесть.Fur
|
|
|
Daniil
Посетитель
![*](https://forum.hellroom.ru/Themes/default/images/star13.png)
Репутация: -1
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif)
API: GameMaker 8.1 Standard
Сообщений: 15
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #9 : Февраль 04, 2017, 23:52:24 » |
|
Попробуй это: if not sound_isplaying(snd_walk) { if keyboard_check_pressed(vk_down) {sound_loop(snd_walk)} if keyboard_check_pressed(vk_left) {sound_loop(snd_walk)} if keyboard_check_pressed(vk_up) {sound_loop(snd_walk)} if keyboard_check_pressed(vk_right) {sound_loop(snd_walk)}}
if x=xprevious {if y=yprevious {sound_stop(snd_walk)}} Вообще ничего не происходит
|
|
|
Записан
|
|
|
|
Slug2002
Активный участник
![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png)
Репутация: 20
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif) Награды: ![2 место в HellRoom Jam X 2 место в HellRoom Jam X](https://forum.hellroom.ru/awards/9fc2c03db5d7d0f3bdea4534d5bce14d_4b389e6b58cc.gif) ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](https://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: GameMaker Studio Pro
Деятельность: GML, Network, Ultimate 3D, Java Script
Сообщений: 272
слава векторам
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #10 : Февраль 05, 2017, 00:08:02 » |
|
Ненавижу Студию, только из - за того что предыдущие скрипты только на Восьмёрке работали. Попробуй это: if not audio_is_playing(snd_walk) { if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_left) or keyboard_check_pressed(vk_up) { audio_play_sound(snd_walk,0,1) }} if x=xprevious {if y=yprevious {audio_stop_sound(snd_walk)}}
|
|
|
Записан
|
На джеме побеждает не десяток однообразных уровней, а один, но сделанный на совесть.Fur
|
|
|
skypo
GM Pro user
Репутация: 63
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif) Награды: ![500 сообщений! 500 сообщений!](https://forum.hellroom.ru/awards/3c67b578648fcc103c9f948b8a342fca_hellroomforum_message_tin.gif) ![За постоянность! [50 дней на форуме] За постоянность! [50 дней на форуме]](https://forum.hellroom.ru/awards/d09ba76b977b84fd4f5dcfae1f2918ff_hellroomforum_time_copper.gif)
API: GameMaker Studio Pro
Сообщений: 809
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #11 : Февраль 05, 2017, 00:12:23 » |
|
Я тебя не понял ![](https://forum.hellroom.ru/Smileys/kolobki/gg.gif) , можешь поподробней? просто замени строку, куда уж проще
|
|
|
Записан
|
|
|
|
Daniil
Посетитель
![*](https://forum.hellroom.ru/Themes/default/images/star13.png)
Репутация: -1
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif)
API: GameMaker 8.1 Standard
Сообщений: 15
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #12 : Февраль 05, 2017, 00:16:22 » |
|
Ненавижу Студию, только из - за того что предыдущие скрипты только на Восьмёрке работали. Попробуй это: if not audio_is_playing(snd_walk) { if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_left) or keyboard_check_pressed(vk_up) { audio_play_sound(snd_walk,0,1) }} if x=xprevious {if y=yprevious {audio_stop_sound(snd_walk)}} Эх, тоже не работает, вообще. Может это у меня с гм проблемы?
|
|
|
Записан
|
|
|
|
Slug2002
Активный участник
![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png) ![*](https://forum.hellroom.ru/Themes/default/images/shield_star.png)
Репутация: 20
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif) Награды: ![2 место в HellRoom Jam X 2 место в HellRoom Jam X](https://forum.hellroom.ru/awards/9fc2c03db5d7d0f3bdea4534d5bce14d_4b389e6b58cc.gif) ![За постоянность! [10 дней на форуме] За постоянность! [10 дней на форуме]](https://forum.hellroom.ru/awards/35b6e985f89cc9a79a2bbfdd216390ca_hellroomforum_time_tin.gif)
API: GameMaker Studio Pro
Деятельность: GML, Network, Ultimate 3D, Java Script
Сообщений: 272
слава векторам
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #13 : Февраль 05, 2017, 00:17:30 » |
|
Не могли бы Вы мне тогда показать код движения?
|
|
|
Записан
|
На джеме побеждает не десяток однообразных уровней, а один, но сделанный на совесть.Fur
|
|
|
AndrewVideoGames
Главный Модератор
Репутация: 821
Offline
Пол: ![Мужской](https://forum.hellroom.ru/Themes/default/images/Male.gif) Награды: ![За постоянность! [500 дней на форуме] За постоянность! [500 дней на форуме]](https://forum.hellroom.ru/awards/e0371460a203dd46d2dc161571bf6144_hellroomforum_time_gold.gif) ![За лояльность! [+750 репутации] За лояльность! [+750 репутации]](https://forum.hellroom.ru/awards/ba712f70231a68b216c525b7e8eca694_hellroomforum_good_silver.gif) ![5000 сообщений! 5000 сообщений!](https://forum.hellroom.ru/awards/d8d29effbba010ccfec15e6d528838cf_hellroomforum_message_gold.gif) ![За помощь новичкам! За помощь новичкам!](https://forum.hellroom.ru/awards/16e0ec08d0a2e30683e5da0012195e27_16e0ec08d0a2e30683e5da0012195e27_16e0ec08d0a2e30683e5da0012195e27_16e0ec08d0a2e30683e5da0012195e27_ad533eeb2dff.gif)
API: GameMaker Studio Pro
Деятельность: А я кто? А я руководитель!
Сообщений: 7316
|
![](https://forum.hellroom.ru/Themes/default/images/post/xx.gif) |
« Ответ #14 : Февраль 05, 2017, 00:18:29 » |
|
Вы уверены, что воспроизводить звук нужно только в момент нажатия(keyboard_check_pressed), а не пока клавиша зажата(keyboard_check)?
|
|
|
Записан
|
|
|
|
|