Редактор никак не влияет на совместимость, влияет только версия игры.
Помню в далеком 2012 году была проблема совместимости (много времени конечно прошло 6 лет не заходил), но помню, как карта не запустилась и пришлось изворачиваться, чтобы ее запустить. Поэтому это осталось в памяти.
а нажатие OK ничего не сломает. Главное не делать наоборот.
Это говорит о том, что если делаешь карту на версии 1.24, то можно потом будет запустить на: 1.24, 1.26, 1.27 и тд - а обратно не получится.
На какой версии карту делаешь?
На версии 1.24е (Еще с 2012 осталась), примерно в том же году вышла 1.26а. Классные времена были, Гарена была переполнена картами из варика.
Кстати вариант со сравнением юнита в регионе мне помог
Картинка с рабочим кодом
Буду думать на счет решения моей проблемы с глобальными переменными.
Всем спасибо!
quq_CCCP:
только на jass, 2 массива, в одном ректы в другом регионы, номера ячеек для пар регион-рект одинаковы, ну а далее перебором по GetTriggeringRegion()
Я тоже сразу об этом подумал, что нужно так сделать, но проблема в том, что я не могу объявить глобальные переменные с регионами, потому что они должны быть перед кодом объявлены, поэтому затея с созданием коллекции регионов у меня провалилась.
PT153:
У него странный редактор, возможно, что у него либо нет JassHelper, либо он отключён.
Стандартный близардовский (работаю с ним, чтобы быть уверенным, что не будет проблем с совместимостью карт и тд). Не хочу работать месяц над картой, а потом узнать, что навороченный редактор не дал мне запустить ее в варике. В общем такие опасения. Когда один раз врубал WE U, то мне сообщило, что карта типа устарела и предложил обновить ее для этого редактора, вот тогда я отказался и вернулся на стандартный редактор.
Никак. Регионы и области не сравниваются параметрически
Ему нужно выяснить, какая ячейка массива содержит сработанный регион (если ему это действительно нужно). А это как раз и делается параметрически, ведь нужно сравнить ссылки.
Все верно, это мне и нужно, пока регионы у меня не пересекаются, а значит можно проверять находится ли юнит в обоих регионах, как написал:
GetLocalPlayer:
То есть, в твоем примере, проверить, находится ли юнит одновременно и в tempReg и в tempReg2.
А вообще в идеале, нужно делать на будущее с учетом, что они могут пересечься, поэтому тогда лучше всего вариант: quq_CCCP - но я написал выше в чем у меня проблема с этим вариантам.
Допустим если механику которая привязана к количеству еды перенесешь на поле Point value (тоже в РО настраивается), то можно будет тригерно менять эту фразу "Нет расходов" на другие (повышение и понижением пищи)
Либо у тебя стандартный редактор, либо у тебя удалён TESH, либо отключён.
У меня стандартный редактор
Да, можно, но нужно понимать, что событие будет работать только для того значения, что было в переменной в момент регистрации события.
А что раньше происходит действия в триггерах, который срабатывают (во время события инициализация) или регистрация события? Подозреваю, что второе.
Если регистрация событий раньше, чем срабатывает код из триггеров, где события инициализация, то как можно прописать в массив регионов - существующие регионы (можно даже как константы), главное, чтобы потом можно было их использовать из ячеек в событиях.
Время вместо пищи предложил, не подходит? Что конкретно хочешь вместо пищи?
Не суть что отображать, важно, чтобы реальные расходы пищи не отображались.
Пусть будет время, главное, чтобы это время никак не влияло на реальную пищу.
P.S. На расходе пищи завязана логика игры, а пользователю это не нужно видеть.
Чтобы там отображалась не пища, а что-нибудь другое, такое возможно?
У пищи отдельная логика (зачем она нужна в игре), поэтому нужно, чтобы она не отображалась там.
Сделай, чтобы вначале были вражеский таверны и свои (тогда пикает каждый свое). А если мод -ap, меняй владельца на всех тавернах на нейтральных, чтобы закупаться мог любой.
Конечно я понимаю в чем суть, bj не все такие ужасные
Буду пробовать с вариантом со спелбуком, первое опасение, которое пришло в голову, это что игрок может выйти из спел бука на главную, куда ему не следует переходить.
Типов юнитов воинов -магазинов то много, а вот дамми магазинов всего лишь 1.
А как вы будете видеть портрет персонажа (даммика, который должен быть как оригинальный) + его атаку и все другие характеристики? В данном случае это принципиально важный момент, потому что игрок как бы выбирает из множества юнитов то, что ему может понравится, поэтому он должен видеть каждого юнита и его возможности.
Синхронизация круга выбора лучше чтобы была, чтобы это было незаметно для пользователя, а значит нужно событие с малыми периодом, к чему я стараюсь прибегать в последнюю очередь, ведь это доп нагрузка, + типов юнитов тоже очень прилично (более 100 видов точно), а значит на каждого свой даммик нужен, чтобы унаследовать все его данные.
Хорошо бы для такого скила иметь базовый интерфейс, чтобы он подходил под любого получаемого юнита.
Такая тривиальная задача с убиранием цифры порождает столько проблем
Может возможно через версию 1.29 отловить того, кто использовал способность?
С помощью отслеживания мыши на экране GetTriggerPlayerMouseX / Y. среди тех, кто выбрал этого юнита?
создавать дамми магазин (дамми двигать вместе с выбранным разумеется), переключать выбор на только что созданный дамми магазин
Круг выбора под начальным юнитом не пропадет? Если мы делаем, чтобы даммик шел вместе с ним, чтобы круг оставался под начальным юнитом, то как синхронизировать их положения тогда?
Неужто событие с малым периодом на move instantly?
не думаю что можно убрать, можно сделать заряд 1 с интервалом пополнения 0
На данный момент так и стоит, но магазин не магазин, а полноценная боевая единица, поэтому для юнита делать способность с цифрой не ахти, так что ищу пути без цифры (для отлова того, кто нажал способность).
Нет, она округляет (математический метод), проверял несколько раз.
Например, R2SW(1. / 1024., 0, 9) вернёт 0.000976563.
Да, действительно. Что-то ответ 8gabriel8 сбил меня с толку.
Перепутал R2SW с принципом работы I2R(R2I(A)), где нужно (умножать на 10^N, чтобы получить N количество знаков после запятой) и как раз добавлять 0.5 или 1.0
Если не путаю, то она не округляет, а отбрасывает цифры после указанного места. Для реального округления, например, дроби до целого, надо ещё 0.5 прибавить.
Все верно, отбрасывает. Находит в строке символ '.', и отбрасывает символы после заданного пользователем количества символов.
По сути то, что я описал, работает как функция ceil, а ваш вариант работает как round. Также можно еще добавлять не 0.5, а 1.0, тогда будет работать как floor.
Не последний который закончился, а тот что запустил поток триггера или таймера. GetExpiredTimer (), в кастом скрипте используй.
Я вас понял, спасибо.
Сейчас пока делал другие триггеры, работал с "Real comparison" и случайно обнаружил, что сравнение таймеров находится именно там.
Так что нашел ответ на вопрос. Response на Expiring Timer находится в Real comparison.
Ред. pAxsIs
» WarCraft 3 / Region comparison?
1.24, 1.26, 1.27 и тд - а обратно не получится.
Всем спасибо!
» WarCraft 3 / Region comparison?
Не хочу работать месяц над картой, а потом узнать, что навороченный редактор не дал мне запустить ее в варике. В общем такие опасения. Когда один раз врубал WE U, то мне сообщило, что карта типа устарела и предложил обновить ее для этого редактора, вот тогда я отказался и вернулся на стандартный редактор.
Ред. pAxsIs
» WarCraft 3 / Region comparison?
Ред. pAxsIs
» WarCraft 3 / [Мемхак] Можно ли заменить "Нет расходов"?
» WarCraft 3 / [Мемхак] Можно ли заменить "Нет расходов"?
Ред. pAxsIs
» WarCraft 3 / Возможно ли использовать переменные в событиях в JASS?
Ред. pAxsIs
» WarCraft 3 / Возможно ли использовать переменные в событиях в JASS?
Юнит входит в регион.
Ред. pAxsIs
» WarCraft 3 / Как заменить данные в правом верхнем углу? (золото\дерево\пища)
Пусть будет время, главное, чтобы это время никак не влияло на реальную пищу.
Ред. pAxsIs
» WarCraft 3 / Как заменить данные в правом верхнем углу? (золото\дерево\пища)
У пищи отдельная логика (зачем она нужна в игре), поэтому нужно, чтобы она не отображалась там.
Ред. pAxsIs
» WarCraft 3 / Десинхронизация при выборе персонажа
Ред. pAxsIs
» WarCraft 3 / Можно ли изменить тип рельефа на карте? И если можно то как?
» WarCraft 3 / Убрать заряды из магазина
Ред. pAxsIs
» WarCraft 3 / Убрать заряды из магазина
Ред. pAxsIs
» WarCraft 3 / Убрать заряды из магазина
Ред. pAxsIs
» WarCraft 3 / Убрать заряды из магазина
» WarCraft 3 / Убрать заряды из магазина
С помощью отслеживания мыши на экране GetTriggerPlayerMouseX / Y. среди тех, кто выбрал этого юнита?
Ред. pAxsIs
» WarCraft 3 / Убрать заряды из магазина
Ред. pAxsIs
» WarCraft 3 / Убрать заряды из магазина
Ред. pAxsIs
» WarCraft 3 / Округление чисел до определённого знака после запятой
Перепутал R2SW с принципом работы I2R(R2I(A)), где нужно (умножать на 10^N, чтобы получить N количество знаков после запятой) и как раз добавлять 0.5 или 1.0
Ред. pAxsIs
» WarCraft 3 / Округление чисел до определённого знака после запятой
» WarCraft 3 / Узнать игрока, который отдал приказ.
Будем дальше фантазировать, как можно это обойти и сделать иначе.
Спасибо всем за ответы!
Ред. pAxsIs
» WarCraft 3 / Timer expired условия
Так что нашел ответ на вопрос. Response на Expiring Timer находится в Real comparison.
» WarCraft 3 / Округление чисел до определённого знака после запятой
Ред. pAxsIs
» WarCraft 3 / Округление чисел до определённого знака после запятой
Пусть твое число это "A", тогда:
set A = R2SW(A, 0, 1)
Ред. pAxsIs
» WarCraft 3 / Timer expired условия
Я так понимаю эта функция возвращает последний таймер, который закончился?