FrigatPlay, нет ну серьезно, как еще тут можно определить?
Ладно когда есть форум и под моделью срачь из коментов что не то пальто, автор пей яд и так далее...
Ну а если нет, то гадать...
pro100master, ГУИ это именно графический интерфейс, то что он преобразуется в Jass и есть самое корявое, поэтому нужно писать карту на jass без использования гуи. Ибо бж функции которые испольюзуются для гуи - багнуты, утечны, имеют в себя кучу мусора.
Clamp, до 1.27а работали случайно наборы координат с неверными значениями (меньше нуля и\или больше 4), это баг, только в след патчах близзарды сделали проверку на некорректные корды и так же проверку на 0-11, чтобы иконки таки скрывались.
У драколича эти координаты не раз фаталили.
Самый безопасный способ задание чисел типа -100500 редактируюя слк таблицы (редактор не дает такие числа вводить).
На сегодняшний момент работают без багов координаты -2147483648, -2147483648, но их нельзя задать через редактор.
Сделать кастомный фильтр, туман, светлячков. И наложить погодный эффект с лунными лучами.
А если руки из нужного места, сделать свою кастом модель погодного эффекта где тучи бы ползли по небу и затеняли землю, оставляя просветы.
Кстати на сайте вроде были кастом модели дня\ночи.
Ну в радиусе нужны координаты, центра окружности и её радиус...
Вам я так понял координаты не даются... KaneThaumaturge, не надо, это помедленнее в разы + пикать всех, включая дохлых плохая затея - могут быть баги.
Для этого делаются фильтры на все случаи жизни, штук 10, и используются во всех триггерах.
ага, а тебе кого нужно? В функции есть строчка - GetUnitTypeId(GetFilterUnit()) == 'hsor'
Ну то что после == это есть ро код юнита, смотри в редакторе объектов нажав Ctr + D
Достаточно посмотреть как устроены эти бж функции и все будет понятно.
function OnlyAliveSourcess takes nothing returns boolean // эту функция в кастом код карты, в самом вверху.
return GetUnitTypeId( GetFilterUnit( ) ) == 'hsor' and not ( GetWidgetLife( GetFilterUnit( ) ) < 0.405 or IsUnitType( GetFilterUnit( ), UNIT_TYPE_DEAD ) )
endfunction
//...
call GroupClear( udg_Group ) // это в кастом скрипт твоего триггера
call GroupEnumUnitsInRect( udg_Group, bj_mapInitialPlayableArea, Condition( function OnlyAliveSourcess )) // это в кастом скрипт твоего триггера
Вот без утечек и локейшинов и прочих ненужных действий.
Далее уже делай что хочешь с юнитами в группе
PT153, смотря для чего триггер, если будите юзать мемхак, то начнете делать кастом баффы для юнитов (бафф на самом деле это не иконка в статусе, её может и не быть, это всего лишь опция, а внутри игровой триггер который как правило ждет смерти, происшествие времени, каст диспела, если это предусмотрено) К примеру самопальный стан, а если его не снять до смрети юнита - будет бага, поэтому нужно событие EventWidgetDeath.
Триггеры часто незаменимы, но чрезмерная любовь к ним (яркий пример IceFrog) приведет к багам и проблемам, так что нужно стараться не плодить их бездумно, а так же не удалять если в этом нет необходимости (да и вовсе удалять триггер в его не оч. идея, ибо фрогу векс запилил систему утилизации триггеров не просто так, учитывая что дота жила годами с куда вроде бы более значимыми багами, вероятно задолбили репотами)..
ApoloZ2, да что ты говоришь, один только алгоритм говорит о том что ты ничего не учил и ничего не писал.
Периодически проверять (100 раз в сек) кол-во юниттов и плодить группы на гуях, ваще кулл.
Если хочешь сделать "Еще одну карту" в которую не будешь запускать даже сам, валяй... Наше дело предупредить.
У тебя 5 юнитов, представь что это 5 яблок на столе (как в школе учили), у тебя срабатывает код когда пропадает одно из яблок, как ты определишь что не осталось ни 1, обычным счетчиком... Целочисленная переменная, изначально равна 0, при каждом срабатывании триггера добавляй +1, если число выше или равно 5 или сколько там у тебя, делай что хочешь.
Твой код с группами кстати ищет в том числе и мертвых юнитов:
function LivingPlayerUnitsOfTypeIdFilter takes nothing returns boolean
local unit filterUnit = GetFilterUnit()
return IsUnitAliveBJ(filterUnit) and GetUnitTypeId(filterUnit) == bj_livingPlayerUnitsTypeId
endfunction
И еще одно но, не используйте эти готовые бж фильтры, они кривые и могут пикать мертвых юнитов, что уже было не раз...
События триггера никак нельзя удалить, можно только удалить триггер (с кондишенами и акшенами).
А кстати вот - xgm.guru/p/wc3/venomanser
Будет несомненно полезно, как правильно удалять триггеры.
Да и вовсе полезно для общего развития.
Еще раз, нет никаких программ и не будет для защиты карты отной кнопкой,, просто тулы векса + слк, в редакторе не откроет уже никто. Но нафиг кому нужна ваша карта? Изменить заставку на Cheated by BaHя можно без редактора карт.
Если вы параноик и хотите защиту, будите писать карту с нуля, сначала на jass потом переводить в байткоды - тогда точно хрен там кто, что изменит...
Так же есть проверка изменения кода карты и щяс снова доступен ретурн баг, а так же есть даже наработка -http://xgm.guru/p/wc3/memoryhack.
Которая как раз и позволяет смотреть менял ли кто код карты, да и вовсе подгрузка сторонних DLL в процесс игры говорит сама за себя.
Но это очень долго и сложно.
DracoL1ch, есть такая фишка у одного скилла, там есть настройка -что если ты нажал кнопку скилла, то бабки спишутся у того кому он принадлежит, иначе у тебя (того у кто нажал кнопку, а не тот кому принадлежит юнит)
DracoL1ch, один хрен он купит тому кто нажал на иконку предмета.
Союзникам под твоим контролем делают как в Кастел файтах - спеллбук со спеллами на основе поставки ресурсов (аналог канала), ну и иконками предметов из магазина и описаниями, сам спеллбук - называют (купить предмет).
Когда ты жмакнешь спелл - у союзника спишутся бабки (если в настройках поставки ресурсов стоит галочка - заряд игрока владельца) и ты создаешь под него предмет триггерно, всякий раз когда союзник выбирает магазин для покупки ему вручается спеллбук с ассортиментом этого магазина, мудрено, долно, но сравнительно просто в реализации и удобно.
» WarCraft 3 / Стабилизация
Ладно когда есть форум и под моделью срачь из коментов что не то пальто, автор пей яд и так далее...
Ну а если нет, то гадать...
» WarCraft 3 / Утечки
» WarCraft 3 / Стабилизация
Не ну думаю ты пока она не фатальнет не узнаешь что она битая...
» WarCraft 3 / Кординаты иконки
У драколича эти координаты не раз фаталили.
Самый безопасный способ задание чисел типа -100500 редактируюя слк таблицы (редактор не дает такие числа вводить).
На сегодняшний момент работают без багов координаты -2147483648, -2147483648, но их нельзя задать через редактор.
» WarCraft 3 / Кординаты иконки
Прочие способы недоступны из редактора обьектов.
» WarCraft 3 / Утечки
Я вот честно хз, статей вроде много но никто не читает и некому не даются..
» WarCraft 3 / Утечки
Вот ссылка
» WarCraft 3 / Качественная ночь
» WarCraft 3 / Качественная ночь
А если руки из нужного места, сделать свою кастом модель погодного эффекта где тучи бы ползли по небу и затеняли землю, оставляя просветы.
Кстати на сайте вроде были кастом модели дня\ночи.
» WarCraft 3 / Выбор конкретной анимации
Ред. quq_CCCP
» WarCraft 3 / Утечки группы.
» WarCraft 3 / Утечки группы.
Вам я так понял координаты не даются...
KaneThaumaturge, не надо, это помедленнее в разы + пикать всех, включая дохлых плохая затея - могут быть баги.
Для этого делаются фильтры на все случаи жизни, штук 10, и используются во всех триггерах.
» WarCraft 3 / Утечки группы.
Ну то что после == это есть ро код юнита, смотри в редакторе объектов нажав Ctr + D
» WarCraft 3 / Выбор конкретной анимации
Ред. quq_CCCP
» WarCraft 3 / Утечки группы.
Далее уже делай что хочешь с юнитами в группе
» WarCraft 3 / Удаление события, созданного с помощью "Add New Event"
Триггеры часто незаменимы, но чрезмерная любовь к ним (яркий пример IceFrog) приведет к багам и проблемам, так что нужно стараться не плодить их бездумно, а так же не удалять если в этом нет необходимости (да и вовсе удалять триггер в его не оч. идея, ибо фрогу векс запилил систему утилизации триггеров не просто так, учитывая что дота жила годами с куда вроде бы более значимыми багами, вероятно задолбили репотами)..
» WarCraft 3 / Проблема с Every 0.01 seconds of game time
Периодически проверять (100 раз в сек) кол-во юниттов и плодить группы на гуях, ваще кулл.
Если хочешь сделать "Еще одну карту" в которую не будешь запускать даже сам, валяй... Наше дело предупредить.
У тебя 5 юнитов, представь что это 5 яблок на столе (как в школе учили), у тебя срабатывает код когда пропадает одно из яблок, как ты определишь что не осталось ни 1, обычным счетчиком... Целочисленная переменная, изначально равна 0, при каждом срабатывании триггера добавляй +1, если число выше или равно 5 или сколько там у тебя, делай что хочешь.
Твой код с группами кстати ищет в том числе и мертвых юнитов:
» WarCraft 3 / Проблема с Every 0.01 seconds of game time
» WarCraft 3 / Удаление события, созданного с помощью "Add New Event"
А кстати вот - xgm.guru/p/wc3/venomanser
Будет несомненно полезно, как правильно удалять триггеры.
Да и вовсе полезно для общего развития.
» WarCraft 3 / каким условием проверить цель приказа smart\attack?
» WarCraft 3 / Защита карты
Если вы параноик и хотите защиту, будите писать карту с нуля, сначала на jass потом переводить в байткоды - тогда точно хрен там кто, что изменит...
Так же есть проверка изменения кода карты и щяс снова доступен ретурн баг, а так же есть даже наработка -http://xgm.guru/p/wc3/memoryhack.
Которая как раз и позволяет смотреть менял ли кто код карты, да и вовсе подгрузка сторонних DLL в процесс игры говорит сама за себя.
Но это очень долго и сложно.
» WarCraft 3 / Покупка предметов союзнику под контролем
» WarCraft 3 / Покупка предметов союзнику под контролем
Союзникам под твоим контролем делают как в Кастел файтах - спеллбук со спеллами на основе поставки ресурсов (аналог канала), ну и иконками предметов из магазина и описаниями, сам спеллбук - называют (купить предмет).
Когда ты жмакнешь спелл - у союзника спишутся бабки (если в настройках поставки ресурсов стоит галочка - заряд игрока владельца) и ты создаешь под него предмет триггерно, всякий раз когда союзник выбирает магазин для покупки ему вручается спеллбук с ассортиментом этого магазина, мудрено, долно, но сравнительно просто в реализации и удобно.
» WarCraft 3 / Можно ли сделать улучшение не ограниченным.
» WarCraft 3 / Режим театра или как запилить ролик?