7

» WarCraft 3 / Как заменить BJ-функции?

вейт ты никак не переделаешь на таймеры банальной библиотекой
-Почему?
-А другие значит можно?
ScopteRectuS:
во всех этих картах Вы не увидите никакого GUI. Потому что все оптимизаторы его удаляют!
Всмысле? Когда пройдёт компиляция карты? Значит Вы не поняли что Я написал.
7

» WarCraft 3 / Как заменить BJ-функции?

ачем мне переделывать 15000 карт, если они не мои
А это очень важный момент! Потому что если мы не будем друг другу помогать, то скатимся к деградации и пустоте в картостроении!
И возможно, лично Вы не сыграете во что-то интересное!
7

» WarCraft 3 / Как заменить BJ-функции?

ScopteRectuS, Вы будете переписывать 15.000 карт? Или Вы кинете их в топку и начнёте опять писать 15.000 карт? В некоторых даже космос сделан, переделан интерфейс, очень всё красиво сделано, другие как РПГ, годами строились... Или Вы переделаете несколько функций-BJ, таких как "Unit in Range...", "Unit Create At...", или "Wait", загрузите их через библиотеку и выложите на XGM или HIVEWORKSHOP? Что Вам подсказывает Ваш Разум?
7

» WarCraft 3 / Как заменить BJ-функции?

Ну группу обрамил тегами и удаляет, скриншот делал, что ещё нужно? Аналитическое мышление не работает там где всё против логики.
Она работает, когда событий мало, но её не тестировали при большом количестве событий.
Hate, вот смотрел, на сайте того автора, который сделал эту библиотеку, пользователь его библиотеки написал ему красным текстом мат о том что его библиотека не работает! Он делал карту несколько лет, и после загрузки его библиотеки, и добавлении тегов, всё перепуталось. Ну что, у всех всё работает по прежнему? Кривые руки у того кто делал эту библиотеку! Пользователь не должен добавлять даже теги, "загрузил и забыл", а уж добавив теги куда надо, под твоим Hate контролем, и всё равно убедившись что не работает, вопросы о качестве библиотеки снимаются окончательно!
7

» WarCraft 3 / Как заменить BJ-функции?

вы даже не догнали как с ней обращаться!
Под вашим руководством всё делал, не Наполеон а солдат!
Hate:
это никому не нужно
Ну как не нужно? Есть у людей карты, которые были построены на стандартном редакторе (за 15 лет их набралась туча), но которые лагают. Загрузили библиотеку - всё заработало без лагов. Но не надо меня, с моим аналитическим мышлением, сравнивать с тем кто делал ту библиотеку!
7

» WarCraft 3 / Как заменить BJ-функции?

quq_CCCP, да на карту наплевать! Я её могу вам отдать за так, делайте с ней что хотите! Она была как "разведка боем"! Меня интересует более серьёзный проект, даже не игрушки уже... Скажи только куда выложить её, и правьте сами, если хотите.
Я хочу только обратить твоё внимание на то, чтобы уточнить. Я имею ввиду что мне нужно подстроиться под стандартный GUI, что не менять названия функций, что в GUI всё останется как есть и ничего не трогаем, и что Я хочу переделать чисто нутро каждой функции, чтобы при вызове GUI вызывал свою функцию, но попадал на её "замену-двойника"! И что эти "двойники" должны быть в библиотеке, и будут ли они подгружаться от туда как стандартные? Вот что Я хотел узнать у тебя!
А hack редактора используется только если что-то принципиально новое хочу добавить, и это понятно, оставим это для варианта с модом.
Hate, это замкнутый круг, непонятно? Не делают потому что не работают они как надо! Но функция, сама по себе, уже готовая, лучше чем самому городить, не важно, BJ или MJ на конце названия функции.
Hate:
да никто не использует бж функции если знает jass! ало!
Вот именно что ало! Подсунь толпе другие функции-BJ и она изменит свои предпочтения!

Что, никому не понятно что в корень надо бить, а не ловить этих тараканов когда они расползлись?
Даже вам, не проще ли переписать сердце, и вместо этих слов писать код, нежели каждому тут расписывать что вот, мол, никак нельзя сделать, и нужно переделывать, и бла-бла-бла? Те же буквы, только на другом языке и в другом месте!

quq_CCCP, обрати внимание, хак и подстройка, это разные вещи! Жду ответ.
7

» WarCraft 3 / Как заменить BJ-функции?

не использует бж функции делая код на jass
Потому что они утечны и непродуманны, но стоит их переделать, как предпочтения изменятся. Потому что проще написать одну строку вызова функции чем городить...
quq_CCCP:
Находятся эти файлы в war3path.mpq
Они-то находятся там, то можно ли их заменить в нестандартном коде, в подключаемой библиотеке? quq_CCCP:
сложные задачи вы бы хрен реализовали на гуи
Почему нет? ... Да, на GUI не хватает базовых возможностей, таких как прибавление белого и зелёного урона, таймеров, многомерных массивов, создание героя из обычных юнитов, и прочего, но что мешает потом сделать эти функции, когда всё стандартное будет подправлено? Пушистик же занимается этим!? Я бы мог потом присоединиться к нему, когда сделанная работа будет внушительной. Или мог бы пойти по другому пути, есть идеи... И вообще, знаете, одни пытаются маленькой корявой отвёрткой построить самолёт, и делают это долго и мучительно, каждый раз борясь с утечками и прочим, а другие предпочитают поменять сам инструмент, что значительно ускорит и упростит работу, а в некоторых случаях и вообще перейдёт в новое качество! Туда так же можно добавить алгоритмы которые вообще не сравнятся с работай и миллиона модмейкеров! AlexSan:
Основной источник проблем это неправильные алгоритмы и неправильная работа с памятью
Ну, в BJ-функции.
AlexSan:
Да, в ГУИ допустить ошибку в синтаксисе просто,
Видимо опечатка, в jass.
AlexSan:
алгоритмических ошибок
Возможно. На этот случай jass остаётся. Всегда есть возможность, для особо дотошных, написать запутанный клубок кода на jass. Но одно другому не мешает!
AlexSan:
У всех работает, а у тебя нет?
У всех не работает! Я много читал на разных форумах как люди жаловались. Автор этого творения даже спорил на HIVEWORKSHOP о том что 100% или не 100% рабочая библиотка, так как vJass и cJass по разному работают. Хотя Я честно не понимаю причём тут это.
AlexSan:
Твое упорство, самоуверенность и игнорирование всего...
Так пишешь ложное! Все знают что проблема в BJ-функциях!
AlexSan:
Что-то не верится.
Не важно... Пусть не верится.

quq_CCCP, твой ответ жду особенно!
7

» WarCraft 3 / Как заменить BJ-функции?

проблема не в самих БЖ
Проблема как раз в БЖ! И не важно на jass или на GUI вы пишете!
AlexSan:
И вот трансляция GUI в JASS которую делает редактор при сборке карты, как раз таки порождает этот самый плохой код с плохими алгоритмами.
Если Я ошибусь на jass - компилятор выдаст ошибку, а если ошибусь на GUI - не ошибусь, потому что там всё лишнее закрыто и замуровано. Не встречал ошибок на GUI, кроме одной, когда множество вложенностей оператора if (штук 30) в предыдущие else породили ошибку компилятора, и то, Я просто написал их без вложенности и всё поехало.
AlexSan:
Комбинация JNGP + ALL.j отчасти исправляет это
Я только что в предыдущем вопросе разбирался с этим, ставил JNGP + ALL.j, и с котом решали этот вопрос - НЕ РАБОТАЕТ!
Сколько тебе лет?
Не вижу смысла отвечать, но отвечу если будет смысл. Бывает старик не наигрался, а бывает ребёнок уже большой. И вообще, у нас тут тема программирования а не Клуб Знакомств!
quq_CCCP, Во-первых, есть люди которым трудно даже один простой триггер написать, уровень 5-ти летнего ребёнка. Но почему Warcraft 3 стал популярен и так долго держится? Потому что там есть редактор и возможность что-то творить самому, и лезут те кто не умеет программировать, но которым нужна практика на чём-нибудь попроще. Сам с этого начинал, потом выучил много языков программирования...
Во-вторых, если даже вы пишете на jass, то всё равно непонятно, как вам будут мешать переписанные функции-BJ? Скорее наоборот, не придётся каждый раз думать об утечках даже на jass.
И в-третьих, давайте по существу вопроса!? Я закрою его, но если нечего пока сказать то лучше не надо.
Мне порой даже кажется что это у вас любимая тема, обсуждать что jass лучше GUI. В каждом вопросе меня в этом убеждают! Давайте создадим отдельный вопрос и там будем обсуждать что лучше? Но сейчас Я хочу реальное дело сделать и мне нужна информация про BJ!
7

» WarCraft 3 / Как заменить BJ-функции?

ledoed, такую тему поднял, про которую Я могу написать тут целую книгу. И не думай что Я не смогу! У меня есть методы как один человек может сделать огромную работу... И мотивы есть интересные... Но давай всё таки не будем отклонятся от этого вопроса, так как возможно, это будет ещё одним аргумент в пользу принятия, или отказа от Warcraft-а!
7

» WarCraft 3 / Как заменить BJ-функции?

а ALL что по вашему?
Да, думаю как там сделать. Но как конкретно там всё работает, не подскажите? Заметил что там убирается конфликт с анти-BJ, видимо это уже для JNGP. И ещё, когда закидывал на обычный редактор, то не запускалось из-за какой-то нестандартной функции, но это решаемо - поставить стандартную.
тогда можешь забыть
Ну почему же, там так же можно подключать нестандартные библиотеки. Это же для чего-то сделано!? Вообще для начала нужно приспособиться под стандарт, так как мне нужно чтобы те же функции работали, а не придумывать новые названия, но для того только, чтобы в GUI их можно было вызывать безбоязненно через удобный интерфейс. А вот потом можно приспособить и под редактор Пушистика, и под JNGP, это уже второстепенно. AlexSan:
Расскажи, что в твоем понимании есть BJ функция?
Самое главное, что знаю, это то, что есть native-функции, которые изменять нельзя, которые являются базовыми, и BJ-функции, которые как раз таки изменять можно, но в которых большая задержка на вызовы call и много утечек. Не все утечны BJ-функции, но всё равно требуют переделки и оптимизации.
7

» WarCraft 3 / Как исправить ошибку в библиотеке All.j?

Hate, Я просто не знал. Всегда работал на GUI и не подозревал о такой проблеме. В детстве ещё программировал, делал кучу таймеров, лаги были жуткие, но Я готов был всё терпеть потому что было очень интересно. Думал это из-за таймеров, потому что замечал что когда их много то начинает лагать. Бывало лаги тормозили на 15-18 секунд экран, но карты делал интересные, потому терпел и играл хотя бы по чуть-чуть. И в этот раз сделал один основной таймер на всё, где wait-ами распределил нагрузку по всей секунде. А долго не играл, думал всё будет работать. Но вот залез в интернет и узнал, а 4 месяца жалко терять. Но Я готов переработать.

Hate, может функцию со спецэффектами закомментировать в All.j? Я же могу их сам удалить, верно? У меня по всей карте за спецэффектами стоят функции "Destroy SpecialEffect"!

Hate, В любом случае группы обнуляются не по правилам, скорее всего этот вариант с библиотекой провальный. Нужно искать другой путь.
А вот интересно, если каждую BJ-функцию раскрыть, и переделать, а затем загрузить как свою библиотеку, то они заменятся? Я бы этим занялся, насобирал бы через интернет альтернативные написания функций-BJ, или сам бы дописал, и подгрузил бы как библиотеку. Можно было бы через GUI работать даже, только внешне оставить их как были (takes и returns чтобы совпадали).
Hate, предоставь мне инструкцию что нужно сделать чтобы заменить все BJ-функции! Если никто не хочет то Я возьму это на себя, для всех сделаю. А заодно, поучусь на практике программировать. Вот он, Герой Паладин =) !
Хотя Я лучше создам отдельный маленький вопрос по этой теме, а этот закрою. А про All.j можно забыть, слишком непродуманная библиотека.
7

» WarCraft 3 / Как исправить ошибку в библиотеке All.j?

AlexSan, что значит Гугла, ха-ха, это программирование, где требуется точный ответ, или волшебные загадки? Нельзя было сразу ответить?
Ну хорошо, залез в Гугл ... ничего путного. Писал "All.j ALL_REMOVE Warcraft 3", и по другому, и про спецэффект... Нашёл только форум где автор рассказывает про своё чудесное творение, но и там ни слова об обрамлении тегами, нет точных инструкций о такой важной мелочи!
Попробовал занести в переменную, и оградил тегами только её - не помогло. Тут должно быть основное правило! Но что-то Я не понимаю его. Довольно загадок! Как сделать?

Вот сайт куда Я попал - w-games.2x2forum.ru/t455-topic

Можно в принципе вообще сюда не заходить, искать только в Гугле, а как увидел этот сайт, обходить стороной, но уж больно много сюда натаскали инфы.

"Если же Вам нужно, к примеру, занести точку в переменную для дальнейшей работы с ней, перед этим действием нужно прописать Личным сценарием (Custom script): ALL_Remove = false, а после занесения в переменную ALL_Remove = true."
Я так сделал. НЕ РАБОТАЕТ СПЕЦЭФФЕКТ! ! ! Возможно он и работает, но Я его не вижу!

  1. Опять 0 в группе. Дебаггер показал. Значит дело опять в обнулении групп, а не в спецэффектах. Пойду думать дальше, может занести в теги и "add unit..."?
7

» WarCraft 3 / Как устанавливать текстуры в редакторе карт?

Открывается модель в программе "War3ModelEditor". Там нажимаешь Windows - Texture Manager. Жмёшь на пустое правой кнопкой мыши и импортируешь свою. Затем переходишь в Material Manager, там выбираешь каждый материал, ищешь там раскрывающийся список с текстурами, и выбираешь свою вместо той которая была там. Когда закроешь Материалы, увидишь свою модель с новой текстурой. Затем всё сохраняешь.
Открываешь редактор World Editor. Нажимаешь в Модулях - Менеджер импорта. Там импортируешь свою модель, и текстуру. Какой путь был в "War3ModelEditor" - Texture Manager, такой же путь должен писаться и здесь. Но убери "war3mapImported\" и перезагружай редактор после импортирования туда каждого файла! Написал на память. Вопросы?
7

» WarCraft 3 / Как исправить ошибку в библиотеке All.j?

ledoed, хе-хе, да нет. Я не такой крутой работяга чтобы так быстро сейчас заработать и успеть ещё прибежать сюда на ужин. К тому же, вы же понимаете, что это делается ради удовольствия. Знаю что понимаете. Ради самого процесса делается, пройти путь воина-картостроителя. А так, готовых игр с крутой графикой полно, "играй-не-хочу", но не то что хочется, и всё халявное и просто даётся, ибо за большие Корпорации не так сильно переживаешь как за одного человека который может не сделать.
Hate, а ну как бы другая группа ... но в эту группу ... ну Я понял.
Попробовал. Получилось! Но есть ещё одна проблема, не работает эффект. Я его закрыл тегами, но он всё равно не работает. Что Я делаю не так? Скрин прилагается.
Загруженные файлы
7

» WarCraft 3 / Способности

Я давно отказался от таких способностей как повышение урона, защиты, здоровья, оглушения и прочего подобного. Обычно делаю нечто принципиально новое, но это требует больше времени. Лично Я делаю так, что каждая способность это некая миссия, мини-игра, которую нужно выиграть, и только тогда игрок заработал эффект! Но для вас можно попроще.
Воин:
  1. "Дух Ярости". Повышает себе скорость атаки и урон, и чем больше он убьёт с этим баффом, тем большее количество ближайших воинов вдохновятся его воинственностью и получат такой же бафф. Требует драку и ману.
  2. "Заступничество". Повышает здоровье и защиту у себя, и уменьшает у тех, кто стоит у него за спиной (требует вычисление полярных координат). С каждого берётся столько здоровья, сколько прибавляется ему. Требует чтобы армия стояла у него за спиной и ману.
  3. "Ночлег". Может развести костёр в указанной точке, все юниты возле этого костра поправят медленно своё здоровье (меньше чем 1 здоровье в секунду) и снимут все отрицательные баффы при полном излечении. Требует расположится на долгое время и ману.
  4. "Боевой клич". Все ближайшие юниты, и сам герой, получают скорость перемещения, скорость атаки, повышенный урон, в значительном объёме, и устремляются атаковать врага. Требует ближайшие отряды и значительно много маны.
Паладин:
  1. "Святой Молот". При применении, молот Паладина загорается, и наносит усиленный урон нежити, в зависимости от уровня. А также, при каждом ударе заряжается ещё больше, и увеличивает свой урон, если пауза между ударами не достаточно долгая. Требует драку и ману.
  2. "Удар Бога". Наносит удар по земле такой силы, что враги в радиусе оглушаются и отбрасываются по окружности, на долгое время, но и сам герой становится оглушаем, и, в зависимости от уровня, быстрее приходит в себя и дольше оглушает врагов. Требует самопожертвование героем на время и ману.
  3. "Вдохновление". Временно повышает параметры юнитов но герой должен долго стоять и разговаривать, и тем больше и быстрее повышает, чем выше уровень его. Требует время и место.
  4. "Святое место". Создаёт непроницаемую энергетическую оболочку, которая выталкивает всех при инициализации, и не впускает внутрь. Хорошо когда толпа нежити нападает. Требует ману и место.
Ведьмак:
  1. "Завораживающий взгляд". На короткое время может гипнотическим взглядом парализовывать любого воина или героя (эффект молнии от героя до цели), но и сам будет стоять при этом, держа любого противника в оцепенении. Под конец, он сможет двигаться раньше, чем противник начнёт двигаться и применять заклинания. Чем выше уровень, тем больше разница. Требует внимание героя и немного маны.
  2. "Око Ведьмы". Выпускает глаз ведьмы, который летает и разведывает местность, но он должен вернуться назад, иначе потеряет большую силу маны чем того стоит глаз. Требует возвращение, или большую потерю маны в случае неудачи.
  3. "Оборотень". На некоторое время может превратиться в волка, и пробежать какое-то расстояние очень быстро, но через определённое время может превратиться назад в человека. Волк не силён атакой, но ловок и быстр в скорости. Если не успеет перевоплотится назад, то продолжает оставаться в облике волка халявно, пока снова не вспомнит в случайное время заклинание, и снова будет шанс, и снова останется или превратится назад. Волк имеет способность "Выть", что в очень большом радиусе снижает атаку и защиту у вражеских войск, но незначительно. Требует рисковать остаться волком и ману.
  4. "Шабаш Ведьм". Призывает три Ведьмы (или от уровня), каждая из которых обладает одни своим заклинанием. Заклинания поддерживающие остальных - "Телепортация с остальными в любую точку", "Стать невидимыми с остальными", "Создание массовых иллюзий от образа остальных", но если какую-либо Ведьму убивают, то остальные продолжают жить и использовать свои способности, но временно. Ведьмы очень слабы физически, так что нужно следить и защищать их всё время их появления! Требует, защищать Ведьму-юнита, и очень много маны. (В сценарии Кампании у них остаётся один глаз на троих)
Фух, старался от души помочь, надеюсь не зря!
7

» WarCraft 3 / Как исправить ошибку в библиотеке All.j?

Я ору? Это Вы орёте, а Я лишь разъясняю суть проблемы. Скажите наконец что Я должен делать!
Моя логика такова, что в триггере Я в неё сразу добавляю юнита, и там же обрамляю её тегами, как только она высунула свой нос, чтобы это действие не учитывалось оптимизатором. То есть добавляю в тегах юнита, учитываться не должен, как понимаю.
Не могу же Я всё охватить тегами, верно? Там могут быть и те переменные которые нужно очищать.
Да кстати, разница такая что негде её обрамлять!
Если вы хотите чтобы Я успел под Новый Год её сделать, если вы хотите Ёлочку и с виртуальными подарками под ней, и если вы хотите увидеть кто из крипов станет дедом морозом, тогда вам нужно очень хорошо постараться и успеть помочь мне до того, как простучит ровно двенадцать! А после Нового Года Ёлочка пропадёт, и будет унылая карта. Думаете Я шучу с вами? Я реально уберу Ёлочку! Всё! Не будет Ёлочки если не успею в срок!
7

» WarCraft 3 / Как исправить ошибку в библиотеке All.j?

Hate, мне больше нечего там обрамлять. Переменная создана изначально в окне переменных.
7

» WarCraft 3 / Как исправить ошибку в библиотеке All.j?

Не стал дожидаться, поработаю вашим тестером. Ещё раз всё повключал, ровно ничего более не трогая. Запустилась вся моя карусель... Заклинание не работает! Хотя иногда работает, а иногда нет, но это точно не пойдёт для заклинаний на которых стоит вся игра! Сделал обрамление тегами, вообще не работает. Четыре заклинания подобного типа то работают то не работают когда им вздумается.
Теперь суть заклианния! Рядом с героями стоят его войны, в радиусе 500, и с условием что они не такие же герои, живые и ... бла-бла-бла ... добавляются в группу CurrentGroup2. Потом идёт цикл, который заканчивается до того, до которого уровень этого заклинания у героя. И по одному начинает добавлять этих юнитов, рядом стоящих, в группу CurrentGroup, а из группы CurrentGroup2 вычитается он же, чтобы потом, при новом обращении цикла, его снова не добавить, а добавить нового. Потом Я проверяю их количество, делаю эффект (который кстати тоже то работает то нет), и в зависимости от того, сколько рядом юнитов с героем было, такой силы эффект к нему и применяю. И когда нужно уже делать спецэффект, поставил дебаггер, чтобы посмотреть сколько набралось юнитов - показывал 0 в группе, хотя рядом стояли юниты плотно. Прошу заметить что если бы был wait то разрыв был бы справедлив! Так как в это время могло бы вклиниться очищение, а тут идёт сплошной код, без разрывов, и очищается в однопоточности, как так? Иногда впрочем работает, что ещё больше путает.
ledoed, что ты предлагаешь? Объявить эти переменные при инициализации и поставить эти теги? Такой вариант меня устроил бы, так как эти переменные работают и в других триггерах, они у меня постоянны. Но всё равно, придётся их очищать вручную, так как при присвоении значения переменной старая группа оставляет утечки. Да и не стоит забывать про другие переменные, другого типа, и спецэффекты так же работают коряво - слишком рано удаляются. Придётся всё обрамлять, но тогда теряется смысл (сам и очищай).
Ну как бы это нормально
Не согласен. Сам же автор написал:
"
  1. Скачать, собственно, саму библиотеку и закинуть ее в папку ...\jassnewgenpack5d\AdicHelper\lib\
  2. В своей карте написать в нестандартном коде: include "ALL.j"
  3. Забыть об утечках.
"
Вот последнее написанное это действительно нормально! Пользователь не должен думать как там устроено! Сам так стараюсь делать программы, это хороший стиль.

Вот скриншот триггера -
Загруженные файлы
7

» WarCraft 3 / Как исправить ошибку в библиотеке All.j?

Hate, Я проверял другой вариант сейчас, отключал все процессы, все триггеры, которые могли вызывать какие-либо события на карте. Даже события "отдал приказ 'отставить'" отключены. Триггеры со спеллами сами не активируются... Один Хендл прибавляется, и один отнимается сам по себе. Всё полностью заморозил, почти полная тишина. И тут читаю ваш комментарий... Ну вернул те теги назад как было, а перед тем как делать скрин решил проверить, и оказалось что теперь работает. Запустил без тегов, тоже работает. И получается теперь смысла нет делать скрин. Видимо когда процессов много то они накладываются друг на друга, и эта библиотека, очищает же по таймеру, и с очищением очищает не те группы которые следовало бы очищать, мне лично так кажется. Ну что теперь, обратно всё запустить и проверить с большим потоком событий?
7

» WarCraft 3 / Как исправить ошибку в библиотеке All.j?

Hate, проверял, не работает. Сделал это обрамление в цикле, там где в переменную групп добавляется один юнит, всё равно очищает после цикла, когда мне нужны те набранные юниты в ней. Но эту переменную групп не объявлял в начале триггера, так как она у меня всегда создана как глобальная для всех триггеров, однако Я её очистил перед тем как использовать, и без этого скрипта работало.
Сейчас вообще удалил из файла все очищения групп и спецэффектов, ибо с этим и сам справлюсь. Но мне всё равно не нравится то что эта библиотека сама создаёт Хендлы - не могу добиться полной тишины (Хендлов), хотя отключил всё!
7

» WarCraft 3 / Как исправить ошибку в библиотеке All.j?

ledoed, можно. Хотя Я пишу так чтобы потом вопросов не вызывало.
Вчера пол ночи провозился, пытаясь пробить путь... Ошибка - в переменную групп закладываю значение, не доходит триггер ещё до конца как это значение, которое ещё нужно, очищается. Как Я ругался на того автора скрипта который очищает переменную в середине триггера, но которая может, даже чисто теоретически, ещё понадобится! Причём нет wait-функций, он её просто очищает, когда ему вздумается. В другом триггере видимо работает, но "на-разок". Нельзя ещё и много раз перезаписывать переменную групп в одном триггере, так же случается неконтролируемое очищение. Я понимаю что борьба с утечками должна вестись жёстко, но это перегиб против правил программирования на Warcraft-е! Сделал бы очищение в конце триггера, или при перезаписи переменной групп, оставляя пространство для её использования.
7

» WarCraft 3 / Похищение жизни/маны

Когда заклинание было использовано, и, когда заклинание завершилось, можно включать и выключать булёвую переменную. Хорошо если юнит один с таким заклинанием, но вот если их много, то придётся строить сложную систему массивов. Сам не пробовал на таком заклинании, так что точно утверждать не буду. Но событие "Применил заклинание" или "Начал применение заклинания" или "Завершил применение заклинания" должно работать для всех заклинаний у которых нажимается кнопка в интерфейсе команд, для мины например, отловить событие когда она взрывается, невозможно.
7

» WarCraft 3 / Удастся ли заменить GUI-функции в файле Blizzard.j?

Hate, нет не проще. Учить 1 месяц минимум, а мне осталось 10 дней до Нового Года! Или другие, какой-нибудь пацан включит, построит, и забьёт из-за утечек, jass конечно не осилит... Нужно универсальное решение! Тут столько программистов и до сих пор вы не сделали универсальную библиотеку? И столько вопросов плодится из-за такого пустяка И годами люди ищут решение на разных сайтах, ай-ай-ай! Я сейчас опять поставил All.j библиотеку, и добавил Счётчик Хендлов, работает СУПЕР по утечкам! Но почти все заклинания либо не работают, либо работают коряво. Я убрал сложные условия, сделал по проще, и - "О Чудо!" - заработало как надо! То есть там где идёт "Pick every ... matching..." начинаются проблемы, но стоит убрать "matching" как всё работает. Пойду дальше экспериментировать...
Но этот вариант тоже со счетов не сбрасываю! Когда буду делать глобальный мод, тогда заменю все функции на свои, и тогда начну учить jass основательно, а эту карту допилю на костылях. Но хотелось бы уже сейчас понять, может она быть загружена в карту отдельно или нет? Потому что если выдаст ошибку Я не пойму из-за чего, не хватает знаний.
7

» WarCraft 3 / Как заменить Wait на Таймер?

но надо уметь делать стаки
Я думаю разберусь самостоятельно. Потому что делал динамические массивы, которые смещали значение и ключ на один назад, когда юнит выбывал из него, или делал контрольную переменную, которая проверяла, не используется ли в это время этот период кода кем-то ещё, и всё на Гуях. Но в любом случае спасибо за поддержку! Побеспокою вновь когда будет что-то действительно сложное!