XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Koshara

offline
Опыт: 195
Активность:
Как исправить триг. утечки?
Подскажите пож. - использование переменных таким образом тормозят карту(утечки)? И повозможности обьясните(исправте).
Миниатюры
Кликните на картинку для увеличения
Название:  at1.gif
Просмотров: 45
Размер:  7.2 Кбайт  Кликните на картинку для увеличения
Название:  at2.gif
Просмотров: 41
Размер:  3.0 Кбайт  Кликните на картинку для увеличения
Название:  at3.gif
Просмотров: 37
Размер:  3.2 Кбайт  
Старый 04.08.2009, 13:53
Daemonik

offline
Опыт: 5,084
Активность:
Последние два вроде как почти не повлияют.
А в первом каждые 1000 сек, так что на вряд ли. Но если в джасс перевести 1 триггер, то там будет нехорошая функция CreateNUnitsAtLoc.
Daemonik добавил:
Но с учетом периода времени, не особо сильно должно грузить.
Старый 04.08.2009, 13:55
MF
Что-то вокруг не так
offline
Опыт: 26,594
Активность:
Да, тормозят. Как минимум неудаляемыми локацими. Исправить это может переход на жасс. Либо извращение с усложнением триггеров, но все равно со вставками жасс.
Старый 04.08.2009, 13:56
Koshara

offline
Опыт: 195
Активность:
Хорошо, как это счастье "неудаляемые локации" исправить Jassом, пож. пример. Если можно не изменять родные триг. (их много подобных) как правильно прописать для нескольких триг./ перемен.?
Koshara добавил:
Все поняла, забыла еще картинку добавить... Суть вопроса- я использую перем. в которой через время меняю значение-тип(героя,воина) и через время карта тормозит, выкл триг.- нормально. Вот и возник вопрос , ане захламливаю я чегонибуть и если да то как чистить.
Миниатюры
Кликните на картинку для увеличения
Название:  pris.gif
Просмотров: 30
Размер:  8.0 Кбайт  
Старый 04.08.2009, 14:43
Daemonik

offline
Опыт: 5,084
Активность:
Могу предложить такой вариант
function Trig_a_Actions takes nothing returns nothing
    local group g = CreateGroup()
    local unit u
    set u = CreateUnit(Player(7), 'id-unita', GetRectCenterX(gg_rct_AtElf), GetRectCenterY(gg_rct_AtElf), 270) 
    call GroupAddUnit(g, u)
    // создаешь нужное кол-во юнитов
    call GroupPointOrder(g, "attack", GetRectCenterX(gg_rct_Start), GetRectCenterY(gg_rct_Start))
    call DestroyGroup(g)
    set u = null
    set g = null
endfunction

//===========================================================================
function InitTrig_a takes nothing returns nothing
    set gg_trg_a = CreateTrigger(  )
    call TriggerRegisterTimerEvent(gg_trg_a, 1000, true)
    call TriggerAddAction( gg_trg_a, function Trig_a_Actions )
endfunction
Daemonik добавил:
Уууу во втором у тебя жуть полная...
Вейты в связке с периодическим условием, просто убийство.
Старый 04.08.2009, 14:47
Koshara

offline
Опыт: 195
Активность:
Ух...У меня их (триг.) штук 10, все заменять? Я самоучка, не дружащая с жассом, использую одни и теже шаблоны триг. во всех картах. И переходить полностью на jass пока не готова. Выход..? Может както можно, с минимальным ущербом, подправить?
Старый 04.08.2009, 15:01
Fakov
Viva la Fa
offline
Опыт: 102,058
Активность:
Я самоучка, не дружащая с жассом, использую одни и теже шаблоны триг. во всех картах. И переходить полностью на jass пока не готова
Никогда не используй одни и теже шаблоны для всех карт. Старайся по максимуму их минимализировать и оптимизировать
Старый 04.08.2009, 15:08
J
expert
offline
Опыт: 48,447
Активность:
Koshara, триггер сам по себе это шаблон (событие-условие-действие), а еще и шаблоны триггеры...
Старый 04.08.2009, 15:17
Koshara

offline
Опыт: 195
Активность:
Легко говорить Fakov, а у меня до XGM, был только WarTFT 1.17+ 150карт из которых с jassом 2-3, а в тех которые можно открыть в редакторе были только такие(триг./шаблоны) как у меня. Сейчас проще, скачала рус. перевод тригеров, практикуюсь с тем, что не понимала...
Старый 04.08.2009, 15:21
J
expert
offline
Опыт: 48,447
Активность:
Сейчас проще, скачала рус. перевод триггеров, практикуюсь с тем, что не понимала...
крайне не советую привыкать к русским триггерам, это будет очень сильно мешаться, не знаю не одного нормального кто бы пользовался русскими триггерами , да и триггерами вообще =)
советую лучше почитать статьи по джассу
Старый 04.08.2009, 15:25
Koshara

offline
Опыт: 195
Активность:
Jass- это, лично для меня, средство выполнения сложных задач(кнопки, иконки, инвентари...) а Гуи для того исделан чтобы упростить жизнь. А поповоду рус. гуи это временно, пол года пользуюсь а думаю на EN. и таскаю UI папку то в War то на рабочий стол. Хи-хи.
Старый 04.08.2009, 15:35
J
expert
offline
Опыт: 48,447
Активность:
Koshara, гуи сделан для хомячков... ну или для гейм дизайнеров которые работают в близзард и не разбираются в кодинге и делают карты не сильно противоречащие движку вара
Старый 04.08.2009, 15:46
Koshara

offline
Опыт: 195
Активность:
Ребята давайте вернемся к моим "баранам" а в часности миниатюра №4(prison.), кто знает как кроме "генерировать случ. число, если траля-ля то траля-ляля" заменить этот триг.(pris.GIF)
Старый 04.08.2009, 15:52
dartwizard
v zapoe :(
offline
Опыт: 4,762
Активность:
создать массив, запихать туда типы юнитов с каждые 18 сек делать цикл.
Старый 04.08.2009, 15:56
J
expert
offline
Опыт: 48,447
Активность:
сначало скажи для чего это...
J добавил:
т.е. где используются эти переменые..
Старый 04.08.2009, 16:03
Koshara

offline
Опыт: 195
Активность:
dartwizard, покажи, пожалуйста...
J, Переменная prisoners используется для изменения типа крипа. Мне пришлось отключить событие (с таймером), чтобы через время не тормозил War.
Миниатюры
Кликните на картинку для увеличения
Название:  pris2.gif
Просмотров: 26
Размер:  12.7 Кбайт  
Старый 04.08.2009, 16:18
dartwizard
v zapoe :(
offline
Опыт: 4,762
Активность:
ну создаешь переменную типа тип Юнита, МАССИВ
Далее пишешь
UNIT[1]=Великан
UNIT[2]=драконид
и так далее
Потом в своё триге делаешь цикл From Integer A 1 to 8
Установить Prisoners=UNIT[A]
Wait 2 sec
Старый 04.08.2009, 16:22
Koshara

offline
Опыт: 195
Активность:
dartwizard, Прости, можно типо как "блондинке", два раза и громко.
Миниатюры
Кликните на картинку для увеличения
Название:  newpris.gif
Просмотров: 21
Размер:  16.1 Кбайт  Кликните на картинку для увеличения
Название:  newpris2.gif
Просмотров: 18
Размер:  16.8 Кбайт  Кликните на картинку для увеличения
Название:  newpris3.gif
Просмотров: 18
Размер:  27.2 Кбайт  
Старый 04.08.2009, 16:49
ScorpioT1000
Работаем
online
Опыт: отключен
Раз. - насрать
Массив - да
Триггер, событие - map initialization
действие - Set NewPrisoners[1] = твой юнит 1
Set NewPrisoners[2] = твой юнит 2
Set NewPrisoners[3] = твой юнит 3
...
другой триггер:
так как в 3 картинке, только левый аргумент этот Prisoners, а правый - тот NewPrisoners[целая A]

Отредактировано ScorpioT1000, 04.08.2009 в 17:04.
Старый 04.08.2009, 16:57
J
expert
offline
Опыт: 48,447
Активность:
Старый 04.08.2009, 16:59
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 17:44.