27

» WarCraft 3 / Создать местность, где юниты проходят сквозь друг друга

Вроде помнится мне, что если отключить коллюзии одному и второму юниту, то они через друг друга все равно не пройдут. Мб физический размер поменять? Меняется физ. размер в РО =(
раскрыть
отключение коллюзии юнита == тип движение "нет"
ЗАМЕТКА: по-моему в гуи было написано, что юниты без столкновений будут спотыкаться о таких самых юнитов. Два юнита через друг друга не пройдут =(( за это отвечает физический размер.
если юнит обладает типом движения "нет",и еще раз отключить коллюзию (у него вроде отключено столкновение благодаря типу движения "нет"), то здесь все наоборот, повторное добавление включает в обратную, короче включит столкновение с объектами.
есть еще классификация - Может ходить - через него можно ходить, короче через него можно переходить. Видели портал? Юниты в него легко заходят. Так это меняет эта классификация. Однако, это можно задать в РО =((
Naadir, статью читал? xgm.guru/p/wc3/powerups
27

» WarCraft 3 / Стрельба на ходу

то, что ты просишь, то без триггеров не сделаешь.
Когда юнит залезает в транспорт, то срабатывает событие "юнит погружен в транспорт", и можно сделать счетчик. А вот способность пламя феникса можно менять, делаешь 4 пламени феникса но с разными перезарядками. Еще можно сделать с помощью "ракеты", будет выглядеть так, что несколько пеонов стреляют.
раньше были идеи сделать танк с вращающей пушкой:
там было с использованием двух юнитов, один едет, а другой триггерно прикреплен за ним (короче двигают его к телу танка). Вроде идея неплохая. Чтобы приказ не сбивался используют SetUnitX и SetUnitY
Загруженные файлы
27

» WarCraft 3 / Кулдаун на способность

nvc123, твои слова мне кое-что напомнили. я видел в функциях приказов, что возвращает boolean. То есть можно использовать в качестве проверки. Один чувак на форуме как-то советовал использовать это в качестве проверки на проходимость. Короче приказ в точку. Если юнит туда не идет, значит, что туда не пройти (вернет false). Иначе стоп (вернет true). Только я не проверял этот способ. Просто вспомнил про него. А что будет если использовать также приказ в качестве проверки на использование скила? Если кд уже запущен, или у юнита нет способности, не изучена способность, выключена или спрятано, то вернет false
недостаток в том, что это не совсем проверка. Даже, если всунуть в условие, то может случайно запустить способность в кд. Есть решение: если скилл запустится, то его удаляем абилку и заново пихаем эту же. Чрезмерно грубо, еще надо знать какой скилл удаляться. неудобно. попроще приказом stop отменяем, но перебиваем приказ молота (у меня в карте молот).
вот карта пример
Загруженные файлы
27

» WarCraft 3 / Не создаются эффекты на юните

ну автор даете. это мы должны угадывать почему в одной карте работает в другой нет.
27

» WarCraft 3 / Где редактируется кнопка строить?

Артес Менетил, равкоды - это номера типов объектов. Нумеруются 4 символами (система счисления ASCII). Не знаешь что за слово. Ты должен сам найти ответ. Почему я должен объяснять какому-то новичку это? Ладно в интернете этого нет, вроде все знают это. Это как название типа объекта. С этим легко работать. Можно манипулировать с этим. например, герою нужно дать ауру, то ее создаем по равкоду. Создаем юнита, то тоже прописываем равкод, например пехотинец. В гуи этого не видно, а когда конверктируешь в текст, то увидишь 4 символа
Не путай имя объекта (id-handle, номер объекта) и название типа объекта (rawcode). Если создать двух пехотинцев у них будут разные хэндлы. Короче я так понимаю, это как адрес к объекту. Есть база данных, и тебе нужно ввести адрес.
Как узнать равкод и как найти объект по равкоду
Последовательность:
  1. Берем 'AHbu'
  2. Открываем РО (Редактор объектов), открываем вкладку способность
  3. Показываем равкод (циферки слева). Ctrl + D
  4. Потом ищем эту способность по равкоду, Ctrl + F и откроется окошко, вставляем AHbu. Внизу будет галочка с учетом регистра, жмем да. И все
Если повторно нажать Ctrl + D, то циферки слева уберутся. И искать по равкоду не получится.
27

» WarCraft 3 / Где редактируется кнопка строить?

'AHbu'/'AObu'/'AUbu'/'AEbu' - вот равкоды. Берешь их и ищешь по ним. Открываешь РО, заходишь во вкладку способности. Нажимаешь Ctrl + D (отобразить равкоды). И потом Ctrl + F (например, AHbu вставляешь в окошко и ищешь). Кстати у каждой расы называется "Строительство". Но там ничего не отображается, ни hotkey ни текста. Просто способность и иконка и приказ.
27

» WarCraft 3 / Где редактируется кнопка строить?

Артес Менетил, весит мало текст. К тому же по-другому никак. В способностях поменять можно только икону и все. Посмотри сам. Остальное придется делать в текстовике
27

» WarCraft 3 / Где редактируется кнопка строить?

Строительство 'AHbu'/'AObu'/'AUbu'/'AEbu' - иконку кнопки строительства можно поменять, у каждой расы она своя. Только не знаю, в этих способностях можно иконку строительства поменять?
851994 (buildmenu): Приказ (без указания цели), открывающий меню строительства воина, способного возводить здания. Но само нажатие на кнопку строительства нельзя отловить (отловить приказ не получится), только вызвать, открыть меню строительства.
а горячая клавиша наверное в текстовом файле. ссылка выше
раскрыть
CommandStrings.txt
[CmdBuild]
Tip=Построить (|cffffcc00B|r)
Ubertip="Вызов списка зданий, которые вы можете построить."
Hotkey=B
[CmdBuildHuman]
Tip=Построить (|cffffcc00B|r)
Ubertip="Вызов списка зданий, которые вы можете построить."
Hotkey=B
[CmdBuildOrc]
Tip=Построить (|cffffcc00B|r)
Ubertip="Вызов списка зданий, которые вы можете построить."
Hotkey=B
[CmdBuildNightElf]
Tip=Вырастить (|cffffcc00B|r)
Ubertip="Вызов списка Древ, которые вы можете вырастить."
Hotkey=B
[CmdBuildUndead]
Tip=Создать (|cffffcc00B|r)
Ubertip="Вызов списка сооружений, которые вы можете создать."
Hotkey=B
27

» WarCraft 3 / Не удаляются итемы из всех нейтральных магазинов

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

» WarCraft 3 / Проблема с лимитом воинов.

Принятый ответ
ограничить число найма можно, есть спец. функции. Поищи в действии в вкладке игрок, установить (макс. геои)
лимит на определенный тип. лень искать. это уже было поищи в интернете
удалить и добавить можно триггерно. В разделе нейтральное здание. Есть одно условие, что если в РО изначально выставлен на продажу, то триггерно не удалишь, и не поменяешь. Нужно триггерно добавлять.
еще можно скрыть героя у данного игрока, не помню есть ли такая функция. Это наподобие как у абилок, видит один игрок, в то время другой вообще не видит. Просто есть продажа, а есть найм. не путать.
короче удаляешь и подменяешь новым и все
27

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

Принятый ответ
База данных. В базе будет записан каждый меч, точнее номер меча, при подборе запоминаем в custom value или в хэш-таблицу, или в переменную или еще как-нибудь. Если номер больше нуля, значит у героя есть меч.
Самое простое - при подборе меча, проверяем есть ли в инвентаре такой меч. В РО итема можно задать уровнями. Например, первый уровень - мечи и топоры, второй уровень - защита груди, ну и так далее. Циклом пробегаешь, и поверяешь предметы на уровень.
Можно логическую переменную использовать для запоминания (одна логическая переменная - мечи и топоры, вторая логическая - луки и арбалеты итд). При подборе одного меча, проверяешь логическую, если есть, то дропаешь нафиг.
В таких системах используют обычно сферу молнию, а можно ли проверять есть ли такая способность у героя? Если уровень способности > 0, значит держит меч
ищи в поиске, такое миллион раз задавали. ношение больше одного, больше одного и так далее.
27

» WarCraft 3 / Тип атаки)

тип урона, тип атаки и тип оружия - не путай понятия
тип атаки - сколько нанесет урона в %. Есть табличка в константах. Наносит в зависимости от защиты противника, точнее от типа брони.
тип урона - нанесет ли урона. Есть различные способности, на них можно проверить. Есть физический. магический и универсальный. Если есть защита, например каменные доспехи - физическая защита. А если нанести маг. уроном, то урон проигнорирует защиту каменных доспех. Ну и так далее.
Тип оружия - как наносит урон. Может одну цель атаковать, может атаковать несколько итд
Загруженные файлы
27

» W3 Model Pack / W3 Model Pack

хотел посмотреть, зашел по ссылкам. Вроде неплохо объединил в пак по темам. А там реклама: пивной ресторан, бар шашлыкоф и тому подобное. Автор блин, лучше бы залил на сайт. На сайте хгм многие файлы долго хранятся и не исчезают.
По предложению, не хватает множества новых качественных моделей. Не говорю, что нужно прям уж качественная, чтобы была излишне красиво и так далее. По стилистике не сочетается с миром варкрафт, точнее с ландшафтом не смотрится такая модель. Часто отсутствуют норм портреты, глупые анимации, открывает рот, когда не должен, может много чего отсутствовать, большие круги выбора и так далее. большинство моделей, это 99%, делают на основе старых, и видно это. И например, мультяшные модели, вроде аниме не сочетаются с варкрафтом, яркие. Слегка сделать поменьше яркость. Вроде одну можно было, так взять. Один раз храм или собор искал, так и не нашел норм (один в средней эпохи, другой в эпоху римской империи, третий - переделка ратуши Альянса и прочее). И еще просто в варкрафте должно быть сочетание моделей, например хочешь кочевников, там палаточные дома, бойцы с кинжалами и наездники на верблюдах, стражник с копьем и с повязками, многие маги ходят в хиджабах (наподобие в готике) и так далее.
27

» WarCraft 3 / Возможность кликать и ходить под декорацией

Lotus101, это не то. карты старые. там фаталы происходят из-за старого ретург бага (короче раньше, в варе ниже 1.24 код немного по-другому писали, там не было хэш-таблицы, использовали кэш. И сохраняли в качестве ключа не с помощью целого числа, а с помощью строки).
короче там ошибки из-за функции, внутри они могут возвращать два значения (либо одно значение, либо пустующее, есть хитрость к примеру возвращает значение целое число (id-хэндл), а в функциях в аргументах написан юнит, значит возвращает юнита, или наоборот из юнита в id-хэндл. Типа конвертация из объекта в число или из числа в объект). но сегодняшний вар будет считать это за ошибку, так как нельзя вернуть целое число, если указано в функции, что надо вернуть юнита. я конечно не застал то время, начал изучать jass с 1.24.
раскрыть
например
constant function H2I takes handle h returns integer
    return h
    return 0
endfunction

constant function I2U takes integer i returns unit
    return i
    return null
endfunction

constant function I2Li takes integer i returns lightning
    return i
    return null
endfunction
могу как-то первую переделать
function H2I takes handle h returns integer
    return GetHandleId(h)
endfunction
А вот остальные не работают, так как требуют чтобы как-то хэндлом управлять. Хэндл - все объекты, id хэндла - номер ячейки. Короче мы знаем номер объекта, а вот как достать из хэндла юнита или молнию не можем. раньше это делали так, как привел выше (см. первые три функции). то теперь близзарды в качестве защиты переделали это.
Нельзя сохранить в кэше юнита, молнию и прочих объектов. Но можно сохранять в кэше номера, и строки, логические значения. Короче сохраняли id-хэндл юнита или молнию. А когда нужно было достать юнита или молнию, то конвертировали из id-хэндла юнита в хэндла с помощью ретурна.
Теперь нам дали теперь на каждый тип объекта функцию
старая:
local unit Unit1 = I2U(GetStoredInteger (udg_cache, I2S(H2I(Timer)), "Unit1"))
новая, сейчас можно использовать хэш-таблицу
native LoadUnitHandle takes hashtable table, integer parentKey, integer childKey returns unit
вот
local unit Unit1 =  LoadUnitHandle(udg_Hash, IGetHandleId(Timer), 0)
27

» WarCraft 3 / Посоветуйте save-load систему, пожалуйста.

Принятый ответ
вот, но их надо доработать)) их очень много
от примеров мало толку, если нет понимания как все устроено. тут надо дорабатывать. есть такие в которых к примеру ресурсы не предусмотрены. а то может быть так что ресуров 99999к, а код генерирует неправильно, то надо делать по-другому. Также с уровнями и прочее.
ищи на хаиве (там такого много), и на сайте
Загруженные файлы
27

» WarCraft 3 / Как сделать способность как в троллях и эльфах?

Принятый ответ
есть такая стандартная способность у орков.
второй вариант - триггерный. с помощью системы урона