18

» WarCraft 3 / Сохранение функции со списком аргументов

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

» WarCraft 3 / Сохранение функции со списком аргументов

Что касается обсуждения самого lua тут. Хочу заметить, что на момент задания мной вопроса и получения на него ответа не было такой программы, следовательно не была обновлена эта статья. Также не было и этой и этой статьи и этого заказа. Появление такого обилия ресурсов, а также планомерное увеличение спроса свидетельствует, что предоставленных материалов в ответах было объективно недостаточно.
18

» WarCraft 3 / Сохранение функции со списком аргументов

Обращаюсь к аудитории. Посмотрите на этот комментарий, а теперь - на версию патча.
Логики я здесь, извините, не вижу.

Для тех, кто не понял, на 1.26 нет луа.
18

» WarCraft 3 / число 8190 в переменных

Не знаю за Ельнур, но есть же такая структура данных, как двусвязный список? Если выносить работу с ней в отдельный класс, то везде, где он будет использоваться, будут обращения к одним и тем же параллельным массивам. Такой подход довольно быстро израсходует доступные ячейки. А работа со списками не является редкостью.
18

» WarCraft 3 / число 8190 в переменных

то есть 8192 - это приемлемый размер массива, и более для карт в wc3 не нужно было...? до 1.29
18

» WarCraft 3 / Мои мысли об устаревших механиках Warcraft 3 и....

Bergi_Bear:
Кароче, нет у меня единомышленников
  • Когда вводится механика критический удар, то принимается за истину, что все имеют некоторые уязвимые или критические зоны, попав по которым, объект получит повышенный урон. Возможность попадать по таким местам можно вынести.
  • Далее принимается за истину, что эта характеристика равна по всем видам юнитов. В действительности кроме внутренних характеристик виляют также взаимное расположение моделей. Тогда внутренние характеристики мы можем описать с помощью уровней способности, а влияние внешних факторов описать статистически. Это работает, если игрок не может достаточно точно определить процесс нанесения урона.
  • Подход отлично подходит для стратегий, когда игрок задает только общие команды группам юнитов, однако сомнительно показывает себя в жанре рпг, тенденция которого заточена на полный контроль одним персонажем.
Любую сложную модель можно же описать статистически.
С уклонением аналогично. А клинки с зарядами, это уже какое-то магическое орудие, а не аналог критических зон.
Это если исходить из того, что критический удар, это удар по критическому месту, а не прием, волшебным образом усиленный собственными потугами. Иначе, почему потуги не вынести в активную способность?

Пишите, что думаете по этому поводу
18

» Мир безумного / Вопросы

Кет:
Самое видное, что напрашивается: мне нужно всегда понимать, правильно ли я веду себя в общении с другими людьми. В науке я не вижу ответа на этот вопрос.
Ораторское искусство существовало издавна. Что насчет психологии сейчас
N7 Molot:
Исправлять систему нет смысла, так как это безрассудно и приведет к коллапсу, не дай Бог. Выход я вижу только создавать свою систему со своими эстетическими нормами, которые не пойдут в обрез к другим. Чем я и занимаюсь.
Почему создание такой системы не безрассудно и не приведет к коллапсу в том смысле, в котором ты имел в виду?
18

» Администрация XGM / Ошибка в статистике рейтинга

При переходе по этим 3ем ссылкам выкидывает на 1ую страницу ресурса, вместо того чтобы отправить к нужному комментарию. Так должно быть?
18

» WarCraft 3 / Бета версия Warcraft III Reforged 1.32

так что нужно, чтобы в игру было интересно играть или смотреть?
18

» WarCraft 3 / Пустой handle для хештаблицы

globals //UID
  integer UIDSttPoint
  integer array UIDStt
endglobals

function initialization takes nothing returns nothing
  set UIDSttPoint = 1
  set UIDStt[0] = 1
endfunction

function GetUID takes nothing returns integer // получить Id
  local integer N = UIDSttPoint
  if (UIDSttPoint == UIDStt[0]) then
    set UIDSttPoint = UIDSttPoint + 1
    set UIDStt[0] = UIDSttPoint
  else
    set UIDSttPoint = UIDStt[UIDSttPoint]
  endif
  return N
endfunction

function FreeUID takes integer N returns nothing // освободить Id
  set UIDStt[N] = UIDSttPoint
  set UIDSttPoint = N
endfunction
Будет выдавать Id начиная с 1. Если Id не освобождать, то может перестать работать, когда количество занятых Id станет больше, чем максимальная длинна массива в данной версии.
18

» WarCraft 3 / Пустой handle для хештаблицы

Нужен набор ссылок handle, или набор уникальных ID (integer-ов)?
Какой язык, jass/.../lua?
18

» WarCraft 3 / Вопрос касательно прав на карту и модели.

Насколько я понимаю, объектом авторского права не может быть часть модели, только она целиком. Таким образом, если скопированная часть является незначительной (не основной), то авторское право не распространяется.

То есть, на вырезанный кусок из фото накладывается авторское право только начиная с определенного момента. Привожу пример, когда была позаимствована даже значительная
часть
Но это работает в каждом государстве индивидуально
Загруженные файлы
18

» WarCraft 3 / Проверить загруженность древесиной

WalWin:
А как-то можно отследить сдачу древесины что именно в конкретную лесопилку отнес?
Отслеживать взаимное расположение работников и лесопилок в момент изменения количества древесины. А также приказы. Но проще полностью свою систему добычи запилить, как мне кажется
18

» WarCraft 3 / Помогите разобраться в триггерах карты

Принятый ответ
Начну с того, что уровни бывают как отрицательные, так и положительные. Что касается дракона, то:
  • С ним есть только единственная концовка, когда AnimalLevel становится -2.
  • При этом HumanLevel должен быть -4.
  • HumanLevel принимает значение -4 только в случае, когда
    • StoneLevel 1
    • ArcaneLevel -2
    • HumanLevel 1
    • AnimalLevel 4
  • ArcaneLevel -2 получается, когда
    • AnimalLevel 4
    • OptionInteger == OptionFire, такое происходит, если на этом ходу прожали огонь.
  • AnimalLevel 4 получается, когда
    • FireLevel 1
    • AnimalLevel 3
И того, нужная концовка выглядит так, 45123
18

» WarCraft 3 / Установка локальной переменой для силы

local integer str = GetHeroStr(unit whichHero, boolean includeBonuses)
SetHeroStr(unit whichHero, integer newStr, boolean permanent)
// GetSpellAbilityUnit() - Применяющий юнит
Если вы знакомы только с гуи, то, чтобы найти нужную функцию, можно конвертировать триггер в текст. Но всё же, как заметил NazarPunk, в JNPG есть удобный поиск. Также есть jass api
18

» WarCraft 3 / Не видит карту

Verschlinger:
Что значит не видит пк? Ты не знаешь в какой папке находится твоя карта или что?
Знаю.
Если знаешь, то выложи карту сюда, чтобы мы могли посмотреть, что с ней не так
18

» WarCraft 3 / Нужно ли обнулять handle в хеш-таблице?

Darklight: Проверил Предмет, Группу, Таймер - всё в Хеш таблице отрабатывает одинаково - после удаления объекта в его ячейку в Хеш таблице заносится значение null, а если хранить объект в переменной - то хендл с ней сохраняется (вместе с исходным идентификатором хендла, хотя сам объект более не существует).
Да, это оно, спасибо Hodor
И всем, кто старался помочь
18

» WarCraft 3 / Не видит карту

Verschlinger:
quq_CCCP:
Версия игры какая? Что за карта?, мб карту в студию?
Так её как бы и не видит мой пк
Что значит не видит пк? Ты не знаешь в какой папке находится твоя карта или что?
18

» WarCraft 3 / Нужно ли обнулять handle в хеш-таблице?

Hodor, я в курсе, что во многом вы разбираетесь. Но спрашивал я совсем другое, понимаете
18

» WarCraft 3 / Нужно ли обнулять handle в хеш-таблице?

И каким образом обычное присваивание null может влиять на так называемый "счетчик ссылок"?
function(...)
local u = CreateUnit(...)
endfunction
Конечно я могу ошибаться, но в этом случае счетчик ссылок объекта u никогда не достигнет нуля.
18

» WarCraft 3 / Нужно ли обнулять handle в хеш-таблице?

Представь что handle это тот же integer
просто содержит ссылку на какой то игровой объект
handle это и так __int32, каким образом эта информация говорит о работе счетчика ссылок?
Hate, спасибо за полезную информацию, не могли бы вы ответить на тему самого вопроса?
18

» WarCraft 3 / Нужно ли обнулять handle в хеш-таблице?

SaveUnitHandle(Hashtable, id, CreateUnit(...))
FlushChildHashtable(Hashtable, id)
Под переменной val уже имелось ввиду наличие созданного объекта. (см. название вопроса)
Hate:
вы же очищаете все дочерние ячейки, это же в названии написано самой функции

Вопрос про обнуление элемента, так как в других структурах, будь то глобальный массив или локальная переменная, объект не удалится, если не вписать туда null.