30

» WarCraft 3 / [lua] BonusMod

хотя чую NazarPunk уже пошёл делать
Так делал уже, нужно только подпилить напильником под свои нужды))
30

» WarCraft 3 / [lua] Garbage

добавить GetLocal
Зачем, если это код ля дебага?
и не нужен локал IS_VISIBLE достаточно узнать фрейм видим или нет от игрока тоже пашет!
Эта переменная не за это отвечает
local IS_VISIBLE = true -- is visible on map start
30

» WarCraft 3 / Актуальность cJass

Не понял. Я знаю, что в при таком охранении при импорте слешы неправильные.
А DISBTN ищутся по правильным, поэтому у импортных иконок будут зелёные квадраты.
30

» WarCraft 3 / Актуальность cJass

В новых редакторах есть возможность вести свой проект как папку, а это меняет всё.
Только в режиме папки, DISBTN не отображаются, так что пока не пофиксят, придётся по старинке.
30

» WarCraft 3 / Актуальность cJass

Принятый ответ
Но как переписать код на луа как можно быстрее?
Можно достать из карты war3map.j и сконвертировать в lua. После доработки напильником вполне работоспособно))
30

» WarCraft 3 / Вылетает редактор когда дотрагиваюсь до ландшафта.

Версия редактора последняя близовская.
У меня вылетало, если попытаться правой кнопкой двигать ландшафт, но потом я скачал варкрафт 1.26 и установил JNGP. Редактор перестал создавать новую карту при старте и этот баг исчез насовсем. Хотя может просто совпадение.
30

» WarCraft 3 / Ошибка

Открылось в JNGP, но при сохранении выдаёт
Хотя все триггеры я удалил. Скорее всего, как и говорилось выше, файл битый.
Загруженные файлы
30

» WarCraft 3 / Ошибка

О версии варкрафт мы должны сами догадаться? А файл карты настолько секретен, что прилагать его конечно не нужно.
30

» WarCraft 3 / [lua] Garbage

-garbage show
-garbage hide
Обновил версию.

Заметил, что если выводить округлённое значение
math.ceil(collectgarbage('count'))
то память перестаёт расти.
30

» WarCraft 3 / [lua] Двигаем снаряды

Я бы, правда, для чистоты эксперимента вызывал сборку вне контекста в котором плодятся потенциально мусорные объекты
Запилил наработку для сборщика, нормально код работает при вызове сборщика из другого контекста.

Дополнил главу про нанесение урона.
30

» WarCraft 3 / [lua] Garbage

Еще бы возможность скрыть и показать фрейм командой и константу для изменения стартового состояния фрейма - чтобы не надо было код убирать когда фрейм не нужен.
Придумаешь красивые имена к -garbage <argument>, запилю))
30

» WarCraft 3 / Проблема с компиляцией jass кода в 2-х конкретных системах

сначала пытался твою адаптированную версию этого инвентаря найти, но не смог.
Наверно потому, что до инвентаря руки у меня ещё не дошли, хотя с фрэймами уже разобрался.
30

» WarCraft 3 / Проблема с компиляцией jass кода в 2-х конкретных системах

окна инвентаря или уезжают куда-то вниз, или же не появляются вовсе
Найдите там библиотеку Camera и в настройках задайте точку, в которой у вас на карте рельеф по умолчанию..
30

» WarCraft 3 / [lua] Двигаем снаряды

Хотя странно - у тебя же раньше сжирало анонимные таймеры.
Сжирало до инициализации, скорее всего в ней и дело.
30

» WarCraft 3 / [lua] Двигаем снаряды

если будет ещё статья, то точно перейду.
Ради такого грех статью не запилить)
Что-то мне подсказывает, что код из этой статьи не выдерживает принудительную сборку мусора.
Немного подправил заклинание и всё прекрасно работает.
Загруженные файлы
30

» WarCraft 3 / Lua: функции в таблице

ScopteRectuS, можно же просто опорную таблицу сделать.
if IDS[GetSpellAbilityId()] ~= nil then IDS[GetSpellAbilityId()]() end
30

» WarCraft 3 / спавн предметов

Заказ заклинаний находится здесь. Что у вас конкретно не получается?
30

» WarCraft 3 / JNGP Lua Edition

Пока это просто JNGP с возможностью писать на Lua без подсветки
Он сразу собирает war3map.lua что-ли? Не пойму как в нём уживается jass и lua.
30

» WarCraft 3 / Lua: функции в таблице

А как еще получить название функции?
На код внимательно посмотреть))
Загруженные файлы
30

» WarCraft 3 / JNGP Lua Edition

А он подсвечивает lua и позволяет делать вложенные папки в редакторе триггеров?
Загруженные файлы
30

» WarCraft 3 / Lua: функции в таблице

Принятый ответ
ScopteRectuS:
Предполагаю, что делается через какой-то цикл перебором всех элементов таблицы, если элемент является функцией, то запустить.
Правильно предполагаете, но мануалы же никому неинтересны, проже же вопрос задать.
test   = { }
test.a = 123
test.b = true
function test.func0()
	print(0)
end
function test.func1()
	print(1)
end
function test.qab()
	print(2)
end

for k, v in pairs(test) do
	if type(v) == 'function' then
		print(k, ':')
		v()
	end
end
30

» WarCraft 3 / Cмертельный союз на противника

Проще сделать триггерно, тем более, есть куча статей.
Можно взять похожее и немного подправить.