в данном случае цикл фор перебирает значение от 1 до 12
т.е. изначально значение переменной "а" = 1
каждую итерацию цикла значение переменной "а" увеличивается на 1
и так пока "а" не станет равно 12
переменная "а" глобальная
т.е. если работает сразу 2 цикла то они будут конфликтовать
Diaboliko, создай карту с 100 триггерными спеллами и протести оба варианта для наглядности
или ты считаешь что хэш + экзекут функц тратят больше ресурсов чем 100 триггеров с условиями? ScopteRectuS:
А зачем нужна функция cond(), если она нигде не используется?
Verschlinger, во первых советую убрать русификатор
он только вредит
во вторых
у триггера может быть несколько событий
добавляешь триггеру событие на каждого игрока
в третьих
в качестве игрока используй "Triggering Player"
"Triggering Player" это игрок который запустил событие
т.е. если -cam 3000 напишет игрок 2 то "Triggering Player" вернёт игрока 2
MadnezIX, не статический метод нельзя
экзекутом можно вызывать только функции которые ничего не принимают
а метод это функция которая принимает индекс структуры
Meddin, разжигать огонь можно изи с помощью трения палки об палку
вот только всё же лучше использовать зажигалку или спички
вариант листочек с ручкой в основном используют студенты в лабах когда надо сдать и забыть ибо лень учиться как делать по нормальному
или если в языке нету нормальных средств отлова ошибок для записи их в лог (например jass)
у большинства прогеров по умолчанию в дебаг версии включена запись лога
да и в релизной тоже
dave_wwid, декор не создаётся триггерно
только юниты и предметы
ну ещё и переменные
только чтобы забить поток нужно создать очень много юнитов(более 10000)
триггеров же нужно намного меньше
quq_CCCP, я проверял)
сейчас поищу старые результаты quq_CCCP, память меня подвела
этот код заканчивается на выводе 14999
function Trig___________________________u_Actions takes nothing returns nothing
local integer i=0
local player p=GetLocalPlayer()
loop
call DisplayTextToPlayer( p, 0, 0, I2S(i))
set i=i+1
endloop
endfunction
этот же код но с проверкой exitwhen i==-1 заканчивается на выводе 11110
function Trig___________________________u_Actions takes nothing returns nothing
local integer i=0
local player p=GetLocalPlayer()
loop
call DisplayTextToPlayer( p, 0, 0, I2S(i))
set i=i+1
exitwhen i==-1
endloop
endfunction
этот же код на дублированным выводом заканчивается на выводе 9090
function Trig___________________________u_Actions takes nothing returns nothing
local integer i=0
local player p=GetLocalPlayer()
loop
call DisplayTextToPlayer( p, 0, 0, I2S(i))
call DisplayTextToPlayer( p, 0, 0, I2S(i))
set i=i+1
endloop
endfunction
quq_CCCP, большинство нативных функций атомарно и считается как 1 операция
по крайней мере они занимают ровно столько же операций как и вывод текста на экран
» WarCraft 3 / For
т.е. изначально значение переменной "а" = 1
каждую итерацию цикла значение переменной "а" увеличивается на 1
и так пока "а" не станет равно 12
переменная "а" глобальная
т.е. если работает сразу 2 цикла то они будут конфликтовать
Ред. nvc123
» Блог им. nvc123 / оптимизация вызова триггерных заклинаний
или ты считаешь что хэш + экзекут функц тратят больше ресурсов чем 100 триггеров с условиями?
ScopteRectuS:
» WarCraft 3 / Событие печати для всех игроков
он только вредит
во вторых
у триггера может быть несколько событий
добавляешь триггеру событие на каждого игрока
в третьих
в качестве игрока используй "Triggering Player"
"Triggering Player" это игрок который запустил событие
т.е. если -cam 3000 напишет игрок 2 то "Triggering Player" вернёт игрока 2
Ред. nvc123
» WarCraft 3 / Вызов метода
экзекутом можно вызывать только функции которые ничего не принимают
а метод это функция которая принимает индекс структуры
Ред. nvc123
» WarCraft 3 / Десинхронизация
юнит/точка/эффект
Ред. nvc123
» WarCraft 3 / jass локальные переменные
https://www.xgm.guru/p/wc3/jass_local_vars
https://www.xgm.guru/p/wc3/jass_optimisations_and_leaks
» WarCraft 3 / Нарезалка LoadingScreen'а (теперь с интерфейсом!)
нафига?
Ред. nvc123
» Программирование / Крестики-нолики на C++
вот только всё же лучше использовать зажигалку или спички
вариант листочек с ручкой в основном используют студенты в лабах когда надо сдать и забыть ибо лень учиться как делать по нормальному
или если в языке нету нормальных средств отлова ошибок для записи их в лог (например jass)
у большинства прогеров по умолчанию в дебаг версии включена запись лога
да и в релизной тоже
» WarCraft 3 / Вопрос по утечкам
» Огонёк Феникса / Разработка CoF
т.к. проекты создаются именно для процесса разработки, обсуждений, набора людей
» WarCraft 3 / как прибавить ms?
» WarCraft 3 / Есть какя нить функция или еще что либо которая позволила бы узн
ну или самому делать бд/скрипт для авто заполнения бд
иначе никак
» WarCraft 3 / Вот такую вот модель нашёл. Что она может значить?
и уж тем более ссылки на мейловское облако
» WarCraft 3 / Магия душ
потом если кто то из сильно шарящих проверит мб сниму
» WarCraft 3 / Эффекты баффов
потом если кто то из сильно шарящих проверит мб сниму
» WarCraft 3 / Тёмный Портал
потом если кто то из сильно шарящих проверит мб сниму
» Огонёк Феникса / Разработка CoF
» WarCraft 3 / Ограничение по кол-ву триггеров/функций/переменных
» WarCraft 3 / Ограничение по кол-ву триггеров/функций/переменных
Ред. nvc123
» WarCraft 3 / Ограничение по кол-ву триггеров/функций/переменных
только юниты и предметы
ну ещё и переменные
только чтобы забить поток нужно создать очень много юнитов(более 10000)
триггеров же нужно намного меньше
Ред. nvc123
» WarCraft 3 / Изменение положения полоски здоровья
Ред. nvc123
» WarCraft 3 / Ограничение по кол-ву триггеров/функций/переменных
сейчас поищу старые результаты
quq_CCCP, память меня подвела
этот код заканчивается на выводе 14999
» Программирование / Крестики-нолики на C++
лучше писать в лог и кинуть его сюда
и у тебя get_move(); вызывается дважды
» WarCraft 3 / Heroes of the arena
только под кат его запихни
» WarCraft 3 / Ограничение по кол-ву триггеров/функций/переменных
по крайней мере они занимают ровно столько же операций как и вывод текста на экран