Подразумевается что таким образом спаяно несколько полноценных карт в одну. В таком случае вес и время загрузки карты резко возрастает. Отсюда же забитый РО, как на несколько карт, огромное количество триггеров и все прочее, что усложняет поддержку.
создал пустую карту, импортировал файл юнитов туда
Должно быть все в порядке, если экспортировал и импортировал данные через редактор объектов "Файл->Импорт/Экспорт данных". Твой случай создает впечатление, что файл w3u был просто перенесен из одной карты в другую через MPQ архиватор. Поскольку редактор хранит текст в wts файле, все данные юнитов содержат только ссылки на конкретные строки, как это произошло в данном случае.
Если совсем хочется именно через архиватор, можно сохранить карту посредством Wurst, в режиме редактирования объектов. Wurst извлекает все текстовые данные из wts файла и переносит их внутрь соответствующих w3u/w3a и т.д.
В каких единицах вообще измеряется высота и ширина, судя по всему в попугаях а не пикселях
Не в пикселях. Здесь хорошо показана координатная система интерфейса. В твоем распоряжении координаты от [0, 0] до [0.8, 0.6]. Можно пытаться выходит за пределы этих значений, но отображаться фреймы тогда могут криво.
Исключением из этой системы координат являются стандартные фреймы выходящие за приделы показанного в статье квадрата - мультиборд, иконки героев, фрейм игрового мира, портрет юнита. В их случае упомянутые выше координаты будут соответствовать всему игровому окну, а не только указанному квадрату.
Один фрейм может наследовать параметры другого. В этом случае пишется слово INHERITS и следом имя наследуемого фрейма. При этом вложенные фреймы не наследуются. Чтобы наследовались вложенные фремы тоже, нужно между INHERITS и именем наследуемого фрейма вставить ключевое слово WITHCHILDREN. Drulia_san:
что такое UseActiveContext
Указывает потомку (вложенному фрейму) использовать контекст родителя (объемлющего фрейма). То бишь, id привязанный к экземпляру фрейма во время игры. Например у панели ресурсов (золото/дерево/еда) 24 контекста, на каждого игрока.
Привязывает левый-нижний угол фрейма MyFrame к левому-верхнему углу родительского фрейма, со смещением 0.001, 0.001.
SetAllPoints просто привязывает все точки крепления потомка ко всем точкам крепления родителя. Drulia_san:
с этим даже экспериментировать болезненно и проблемно
Не бесполезно и не проблемно. Каталог игры содержит файлы шаблонов
переходи в 1.32 и там не мучай с переводом =) А просто делитть wts файл для разных языков =)
что позволяет на 1 карту в разных языках который клиент запушено
В старых версиях архив карты так же может содержать несколько wts файлов с разной локализацией.
Вряд ли this как число используется в ином случае кроме доступа к экземплярам структуры (например в двусвязных списках). Вероятно создать массив экземпляров структуры, где индексы будут соответствовать числам под this.
obj > 0 может означать проверку obj ~= nil, хранит ли obj экземпляр объекта или был ли экземпляр создан вызовом конструктора.
Выходит один писал про одно, а другой про совершенно другое. И никто ничего не заподозрил. Хотя Франк мог бы что-то начать подозревать на моменте "If you try to sell me a part of a model or rights".
Тут даже не знаешь в чем конкретно причина, в плохом английском или в чрезмерной уверенности в том что он достаточно хороший.
Граждане с хайва чрезмерно повернуты на авторских правах, у нас такие тоже есть, но не так много - "я защищаю свои авторские права на контент, сделанный на хакнутом редакторе, для пиратской версии игры!".
Нельзя контролировать ось поворота, что делает ориентацию снаряда непредсказуемой. Поворот кости не происходит мгновенно, скорость поворота фиксирована.
Эти два пункта делают нецелесообразным использование данной функции для снарядов.
Такие проблемы решаются полным ковертированием триггера в текст, либо (что лучше) генерацией блока триггера, в котором создается событие инициализации и в действиях скрипт-вставками устанавливается событие несвоейственное стандартному редактору. Перед каждой такой скрип-вставкой генерировать комментарий, дублирующий в текстовой форме как выглядело действие до обработки и откуда оно пришло.
А софта работы с .wtg для конвертации JNGP триггерных элементов в кастом скрипт вставки еще никто не написал? Чтобы сделанную в JNGP карту новый редактор открывал.
Периодически приходится работать с питоном и честно говоря я его не люблю за его подход построения блоков через отступы
Каким бы не был способ разделения блоков кода, человеческий глаз в любом случае ориентируется на отступы. При всех прелестях C, на пятый час писанины фигурные скобки начинают в глазах сливаться с фоном. Отступы это обязательный стандарт оформления кода. Что могло быть лучше, чем сделать его частью синтаксиса. Drulia_san:
Я сомневаюсь что многим людям нравится писать local перед типом данных, call перед каждым вызовом и set перед каждым присвоением, и конечно же типы данных без сокращений вроде integer и boolean.
Зависит от опыта конкретного кодера. На хайве можно найти опросы и вопросы, что лучше, vJass, cJass или ZINC. Мнение за бугром обычно не в пользу сJass, На это приводят набор объективных причин, среди которых отсутствие жесткого требования следовать языку и, как следствие, возможность смешивать JASS и vJass конструкции с cJass. В итоге код превращается в жуткую мешанину из набора разных синтаксисов.
В то же время молодые, неопытные пользователи куда легче воспринимают именно ключевые слова
endif
endloop
endmethod
endstruct
endlibrary
где они могут сразу понять, о каких именно блоках кода идет речь, чем эквивалентный
» WarCraft 3 / "Лучший" Jass обработчик
Функция как объект
» WarCraft 3 / Контроль нажатых клавиш
Init_KeyboardControl можно переименовать просто в Init
» WarCraft 3 / Переход с карты на карту в сетевой игре (GUI)
» WarCraft 3 / Ищу разработчика для карты Лорды Европы за оплату!
» WarCraft 3 / Localized strings
Если совсем хочется именно через архиватор, можно сохранить карту посредством Wurst, в режиме редактирования объектов. Wurst извлекает все текстовые данные из wts файла и переносит их внутрь соответствующих w3u/w3a и т.д.
Ред. GetLocalPlayer
» WarCraft 3 / Перевод карты на два языка
Ред. GetLocalPlayer
» WarCraft 3 / Кастомные фреймы
Drulia_san:
Drulia_san:
Исключением из этой системы координат являются стандартные фреймы выходящие за приделы показанного в статье квадрата - мультиборд, иконки героев, фрейм игрового мира, портрет юнита. В их случае упомянутые выше координаты будут соответствовать всему игровому окну, а не только указанному квадрату.
Drulia_san:
SetAllPoints просто привязывает все точки крепления потомка ко всем точкам крепления родителя.
Drulia_san:
» WarCraft 3 / GetLocationZ
» Мир безумного / Государство даст денег на разработку игр
» Мир безумного / Государство даст денег на разработку игр
» WarCraft 3 / Отслеживание мышки
» WarCraft 3 / Отслеживание мышки
» WarCraft 3 / Перевод карты.
» Fly Data Processor / Статус и план дальнейшего развития утилиты
Ред. GetLocalPlayer
» WarCraft 3 / Вопрос по адаптации структур в lua
obj > 0 может означать проверку obj ~= nil, хранит ли obj экземпляр объекта или был ли экземпляр создан вызовом конструктора.
Ред. GetLocalPlayer
» WarCraft 3 / Вопрос касательно прав на карту и модели.
Тут даже не знаешь в чем конкретно причина, в плохом английском или в чрезмерной уверенности в том что он достаточно хороший.
» WarCraft 3 / Вопрос касательно прав на карту и модели.
» WarCraft 3 / Ребят как называется карта где паладины убегают от демона с член
К сожалению.
» WarCraft 3 / Помогите разобраться в триггерах карты
» WarCraft 3 / Как изменить скорость анимации у спрайта перезарядки?
» WarCraft 3 / Приведите примеры работы с SetUnitLookAt
Эти два пункта делают нецелесообразным использование данной функции для снарядов.
Ред. GetLocalPlayer
» WarCraft 3 / Формат карт Warcraft 3
» WarCraft 3 / Формат карт Warcraft 3
» WarCraft 3 / Reforged на LUA
Ред. GetLocalPlayer
» WarCraft 3 / cJass2Lua(v1.12) - Преобразователь кода cJass и JASS в Lua
Drulia_san:
В то же время молодые, неопытные пользователи куда легче воспринимают именно ключевые слова