11

» WarCraft 3 / Уничтожение Handle sound'a

Зачем удалять единожды созданный при инициализации звук? При проигрывании никакой памяти не выделяется. Спецэффекты прекрасно удаляются функцией DestroyEffect.
это оффоп но спецэффекты не прекрасно удаляются. Они удаляются через пару секунд. Можешь попробовать, после выполнения команды DestroyEffect можно проиграть анимацию эффекта несколько раз, а потом он удалится, хотя сама команда прерывает любую анимацию На счет звуков, я их создаю динамически, динамически хочу и удалять.
11

» WarCraft 3 / Таймеры

Принятый ответ
anton1623, то насколько переменная нагружает память можно проверить сохраняя переменные пока не вылетит игра (около 8гб оперативы) и подчитать сколько ты их сохранил. Если волнует сколько таймеров ты можешь за раз запустить. То попробуй также запускать их одновременно c выполнением простой команды 2+2 пока не начнется сильная просадка fps вот ты и узнаешь это. Я думаю 30к таймеров запустить удастся.
11

» WarCraft 3 / Генератор ландшафта-шума

Koladik, чем-то на Noise похож
Спасибо! Посмотрю детально эту реализацию. Я решил не называть свой алгоритм шумом Перлина, как тут, ибо всё-таки генерация отличается от классики. Но, скорее всего, тут больше сходств чем отличий по части генерации текстур с этим алгоритмом. Жаль тут разработчик не дал детального описания нюансов.
11

» WarCraft 3 / Превращение в другого юнита

Принятый ответ
anton1623, на самом деле, насколько мне известно, это просто единственный способ не через способности менять модель юнита. Но можно развить то что выше предложили, при использовании способности создавать транспорт и триггерно запихивать героя туда, а при выходе из него удалять этот транспорт.
11

» WarCraft 3 / Генератор ландшафта-шума

Неплохо бы посмотреть на скрины результата генерации.
Добавил картинки, хорошее замечание.
11

» WarCraft 3 / Превращение в другого юнита

anton1623, слышал один костыльный способ есть менять скин юнита, но сам никогда не пробывал, поэтому не знаю работает ли, создавать базово юнита без модели, и под ноги аттачить разные скины и менять аттачмет в зависимости от модели.
11

» WarCraft 3 / Превращение в другого юнита

Делай через метаморфозу охотника на демонов, если не ошибаюсь, по истечении срока возвращается к исходной автоматом.
Изменено: нет, там тоже есть исходная.
11

» WarCraft 3 / Багнулся worldeditor

Принятый ответ
Короче, я нажал переключение цветового режима отображенния войск и у меян все союзники -синие, враги - красные... А нерабочий триггер из-за очепятки, не реагировал и я подумал, что это багнулся номер игрока. facepalm
Бывает иногда и такое, тупить это нормально :)
11

» WarCraft 3 / Багнулся worldeditor

ttoni, Если ты его убрал , то появится он не может, покажи свои свойства сценария. Убраны ли у тебя стандартные триггеры?
11

» WarCraft 3 / Багнулся worldeditor

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

» WarCraft 3 / Вапиризм от способностей или как словить урон по юнитам?

Я думал эта нативная возможность одна из новых преимуществ 1.31 в гуи ее пока нету
call TriggerRegisterPlayerUnitEventSimple( Trg, Player(0), EVENT_PLAYER_UNIT_DAMAGED )
11

» WarCraft 3 / Как сделать анимированный фрейм за пределами 0.8x0.6?

Nelloy:
Koladik, за пределами холста 0.8х0.6 могут быть только SIMPLEFRAME, SIMPLEBUTTON, SIMPLESTATUSBAR и SIMPLECHECKBOX(нерабочий).
Мне кажется, на картинке хороший пример того, что это не совсем так, или это каким-то образом анимированный простой фрейм
GetLocalPlayer:
Для анимации используется спрайт, хороший пример тут
В моем предыдущем комменте тот же самый пример.
GetLocalPlayer:
адекватно не выйдет
Да хоть бы просто понять как это вообще возможно, эта штука же в каком-то файле прописана.
11

» WarCraft 3 / Как сделать анимированный фрейм за пределами 0.8x0.6?

pro100master:
Nelloy, боже какой плохой совет! Это плитки в fdf пишеш размер и он сам будет поочередно менять чем твои таймеры

И к тому же это не картинка а модель который там и проигривает внутри текстуры
И так понятно, что в fdf прописывать надо, найти хотя бы стандартный, который я б наследовать мог.
По поиску даже не ясно, что искать SPRITE, MODEL или HILIGHT. Причем это что-то особое потому, что если взять например эту наработку-SPRITE, ее нельзя за границы пихнуть.
11

» WarCraft 3 / [Lua] Поворачиваем башню танка за курсором

Осталось дождаться, когда дадут возможность проигрывать анимацию отдельных частей модельки независимо и можно будет делать выстрел или атаку в движении. Ото пока это тоже костылеписание с разделением модели на две части (хотя я и такой наработки не встречал)
11

» WarCraft 3 / "Лучший" Jass обработчик

Для jass такие решения уже есть, cjass добавляет лишь сахар, который легко изымается при необходимости
То что нужно, спасибо! Только немного переписать на vjass и дать сюда ссылку в случае чего.
NazarPunk:
нормальный ЯП, в котором можно комфортно работать
Лично мне пока недостаточно комфортно, но да, на луа, конечно, перспективнее писать.
11

» WarCraft 3 / "Лучший" Jass обработчик

больше 256 таблиц.
Это, конечно, весомая причина, спору нет. Но я не уверен, что это серьезная преграда т.к. многие таблицы можно было бы объединить но да, тут начинаются костыли
11

» WarCraft 3 / "Лучший" Jass обработчик

а зачем?
Обоснованного на реальных цифрах, а не вере выбора реализации не достаточно?
11

» WarCraft 3 / "Лучший" Jass обработчик

и так можно сказать что таблицы гораздо быстрее хештаблиц
Сказать то и теоретически обосновать можно, но реальных подсчетов никто не провести не может. Но смысл моего сообщения не в дурацком холиваре, а в том, что решать, что быстрее очень сложно и можно только эмпирически.
11

» WarCraft 3 / "Лучший" Jass обработчик

быстрее if-then-else на жассе ничего не придумаешь
Был бы доступ к видоувскому таймеру можно было бы проверить несколько различных подобных реализаций, а так получается, что даже проверить точно, насколько доступ к lua таблицам быстрее чем к хэш-таблицам на жазе невозможно.
11

» WarCraft 3 / "Лучший" Jass обработчик

объяснили
Я не уверен, что конкретика тут существенна, но в моем случае по ряду входных параметров собирает путь к различным .blp файлам, одним из параметров является тип blp по int, их может быть множество, остальные вспомогательные. Соответственно меняя тип, который я ищу, существенно меняется метод сборки string, использующий вспомогательные параметры.

N1ghtSiren:
Зачем нам увеличивать кол-во ифов если мы можем разнести это всё по разным функциям
И if/then/elseif/else/endif работает по принципу - наткнулся на первый false, дропнул ветку и пошёл проверять другие elseif.
Я понимаю, но если у вас каждый if по очереди проверяет номера 1,2,3,4, а у вас на входе 100 то ему придется провести 100 проверок. Если на входе 2 то, конечно, будет очень быстро.
11

» WarCraft 3 / "Лучший" Jass обработчик

блоке if будет в разы дешевле
Если блоков мало то да, но если вырастить их до 100 то не факт, а тут фиксированное время применения.

невозможно делать руками?
Например, нужен цикл различных обработчиков с вызовом по индексу
11

» WarCraft 3 / "Лучший" Jass обработчик

Hate:
а в чем общий смысол этого?
Получить обработчик с выбором метода обработки по индексу, чтобы не городить дерево if-elseif-elseif-end, а напрямую вызывать нужную функцию.

первом ответе
Пример, который я прикрепил, решен именно с помощью решения описанного в посте. Вот мне и интересно, насколько это адекватное решение.
Я боюсь, что создав массив trigger я начну использовать слишком много памяти или еще что хуже, а решение в целом будет медленнее чем дерево if-elseif-elseif-end
11

» WarCraft 3 / [lua] Создание файлов из под вар3 ?

Hate:
в варкрафт луа нет require
и что связано с io тоже выпилено насколько я знаю
Печально, по всей видимости wc3 научная мысль дальше этой библиотеки основанной на предзагрузке не продвинулась :(