Destroy Sound
|
|
FatalBlade | Дата: Суббота, 11 Июня 2011, 14:08:42 | Сообщение # 1 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Для Special Effect есть Destroy Special Effect, для Sound - Destroy Sound. Но оно работает по равзному. Если написать Destroy Special Effect сразу после Special Effect, то эффект будет проигран. Если же взять Sound и написать сразу Destroy Sound, то звук удаляется сразу и не будет проигран. И тогда нужно задать между ними паузу, заносить звук в переменную итд... Есть какая нибудь функция на джассе которая удаляет звук, но позволяет перед этим его проиграть?
|
|
|
|
SirNikolas | Дата: Суббота, 11 Июня 2011, 14:34:58 | Сообщение # 2 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| KillSoundWhenDone.
|
|
|
|
FatalBlade | Дата: Суббота, 11 Июня 2011, 14:43:04 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| А не надо указывать какой саунд? Как например DestroyGroup(GetLastCreatedGroup())
|
|
|
|
SirNikolas | Дата: Суббота, 11 Июня 2011, 14:48:31 | Сообщение # 4 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Конечно, надо. Я тебе название функции сказал, а ты смотри в JNGP/JassCraft/common.j/еще где-нибудь, какие у нее аргументы.
|
|
|
|
FatalBlade | Дата: Суббота, 11 Июня 2011, 15:00:46 | Сообщение # 5 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (SirNikolas) а ты смотри в JNGP/JassCraft/common.j/ И чем мне common.j открывать?
|
|
|
|
SirNikolas | Дата: Суббота, 11 Июня 2011, 15:05:05 | Сообщение # 6 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Самый простой вариант - "Блокнотом".
|
|
|
|
FatalBlade | Дата: Суббота, 11 Июня 2011, 15:25:38 | Сообщение # 7 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| native KillSoundWhenDone takes sound soundHandle returns nothing
Вот что там написано. И всё.
Я так понял это выглядит вот так: KillSoundWhenDone(udg_Sound) или KillSoundWhenDone (GetLastPlayedSound())Добавлено (11-06-2011, 15:25) --------------------------------------------- Не работает. Шаблон плз. Синтакс какой?
Сообщение отредактировал FatalBlade - Суббота, 11 Июня 2011, 15:13:48 |
|
|
|
SirNikolas | Дата: Суббота, 11 Июня 2011, 15:34:17 | Сообщение # 8 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Может быть, call KillSoundWhenDone(udg_Sound)?
|
|
|
|
FatalBlade | Дата: Суббота, 11 Июня 2011, 15:40:54 | Сообщение # 9 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Да действительно Спс
call RemoveUnit(udg_UnitHandle) call DestroyTimer(udg_TimerHandle)
Вот эти тоже так пишутся? Или для юнитов надо DestroyWidget(udg_UnitHandle) ?
|
|
|
|
DeadJass | Дата: Суббота, 11 Июня 2011, 15:41:34 | Сообщение # 10 |
7 уровень
Группа: Проверенные
Сообщений: 447
Награды: 0
Репутация: 30
Блокировки:
| Quote (FatalBlade) takes sound soundHandle ф-ия принимает значение sound где sound вроде бы нужно писать gg_snd_firstblood
^ кликабельно Archers Of The Island v1.8 - на стадии завершения
|
|
|
|
FatalBlade | Дата: Воскресенье, 12 Июня 2011, 11:17:12 | Сообщение # 11 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (DeadJass) gg_snd_firstblood чё?? это прикол?)
Добавлено (12-06-2011, 11:17) --------------------------------------------- Всё равно функция KillSoundWhenDone работает как Destroy Sound. Она даже не даёт звуку начаться. Я попробовал поставил интервал между проигрыванием звука и удалением утечки. В результате первый раз сработало как надо, а дальше опять как и до этого, звук не поигрывается.
Сообщение отредактировал FatalBlade - Воскресенье, 12 Июня 2011, 11:18:05 |
|
|
|
SirNikolas | Дата: Понедельник, 13 Июня 2011, 09:42:31 | Сообщение # 12 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Quote (FatalBlade) Всё равно функция KillSoundWhenDone работает как Destroy Sound. Сначала надо запускать звук, а потом удалять.Quote (FatalBlade) В результате первый раз сработало как надо, а дальше опять, как и до этого, звук не поигрывается. Ты что, пытаешься удалить глобальный звук? Это только для локальных, либо для тех, которые больше не понадобятся.
|
|
|
|
FatalBlade | Дата: Понедельник, 13 Июня 2011, 14:46:08 | Сообщение # 13 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (SirNikolas) Сначала надо запускать звук, а потом удалять. Ну само собой
Quote (SirNikolas) Ты что, пытаешься удалить глобальный звук? Это только для локальных, либо для тех, которые больше не понадобятся. Я создаю переменную Sound, даю ей значение, например SuccubusYesAttack2. Потом юзаю функцию Play Sound, и вставляю туда переменную Sound. Он проигрывает этот звук. А если после этой функции я напишу KillSoundWhenDone, то звук НЕ проигрывается. Если же я поставлю интервал (Wait) то первый раз звук проигрывается, а потом когда этот триггер вызывается опять, звук уже не проигрывается. Неужто KillSoundWhenDone уничтожает не утечку, а сам звук?
|
|
|
|
Deadly-man | Дата: Понедельник, 13 Июня 2011, 14:48:18 | Сообщение # 14 |
7 уровень
Группа: Заблокированные
Сообщений: 279
Награды: 0
Репутация: 26
Блокировки:
| FatalBlade, удалять можно только тот глобальный звук который БОЛЬШЕ НИКОГДА В ИГРЕ ПРОИГРЫВАТЬСЯ НЕ БУДЕТ. Ну или локальный звук тоже можно удалять. Понял? Добавлено (13-06-2011, 14:48) ---------------------------------------------
Quote (FatalBlade) не утечку, а сам звук? удаление звука == удаление утечки
Я ПОРВАЛ ФОРУМ!
|
|
|
|
SirNikolas | Дата: Понедельник, 13 Июня 2011, 15:04:00 | Сообщение # 15 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| FatalBlade, просто проигрывание звука из переменной не вызывает утечку, так что ничего удалять не надо. Данная команда нужна, если ты создаешь локальный звук внутри функции. Добавлено (13-06-2011, 15:04) ---------------------------------------------
Quote (FatalBlade) А если после этой функции я напишу KillSoundWhenDone, то звук НЕ проигрывается. У меня все нормально.
|
|
|
|
FatalBlade | Дата: Понедельник, 13 Июня 2011, 15:08:55 | Сообщение # 16 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (Deadly-man) БОЛЬШЕ НИКОГДА В ИГРЕ ПРОИГРЫВАТЬСЯ НЕ БУДЕТ Надо было раньше говорить
Quote (SirNikolas) FatalBlade, просто проигрывание звука из переменной не вызывает утечку, так что ничего удалять не надо Не вызывает?... У меня изза звуков которые проигрываются триггером, бывает что другие функции не срабатывают. Было дело что у меня Дамми то не наносил урон, то не станил, то вообще не создавался. Я конечно решил эту проблему по другому, я поставил функцию Play Sound после всех манипуляций с Дамми, но всё равно хотелось бы что бы звук не мешал вообще.
|
|
|
|