Независимо от того SaveReal там или SaveUnitHandle, ты записываешь значения в одну и ту же таблицу.
Ты просто SaveReal(h, id, 0, x_c) перезаписываешь этим - SaveUnitHandle(h, id, 0, u_c) и этим - SaveEffectHandle(h, id, 0, e)
Это не так, в таблицу под одними и теми же ключами можно сохранять integer, real, string, boolean, handle, и получать сохранённые значения, используя соответствующие функции. То есть если под ключами 1, 2 записать 0, а потом 1.1, то сохранятся оба значения. А вот если сохранить юнита (handle), а потом какой-то другой объект (тоже handle) с теми де ключами, то сохранится только последний, потому что он перезапишет предыдущий.
Ошибка тут.
function Trig_Ramen_Actions takes nothing returns nothing
if GetSpellAbilityId() == 'AI04' then
SaveReal(h, id, 0, x_c)
SaveReal(h, id, 1, y_c)
SaveReal(h, id, 2, 10.00)
SaveUnitHandle(h, id, 0, u_c) // НЕ перезапишет сохранённое значение x_c.
e = AddSpecialEffectTarget("Abilities\\Spells\\Items\\ScrollOfRegeneration\\Scroll_Regen_Target.mdl​", u_c, "chest")
SaveEffectHandle(h, id, 0, e) // перезапишет сохранённый handle u_c.
GroupAddUnit(Ramen_G, u_c)
TriggerRegisterUnitEvent(Ramen_Trig, u_c, EVENT_UNIT_DAMAGED)
TimerStart(t, 0.02, true, function Eating_TimeEnd)
endif
u_c = null
e = null
endfunction
Ещё вот что.
Удали эти папки в реестре, сделав их бекап перед этим:
HKEY_CURRENT_USER\Software\Grimoire
HKEY_CURRENT_USER\Software\Blizzard Entertainment\WorldEdit
В них находятся настройки JNPG и WE соответственно.
герои мертвые точно лежат как трупы и выделяются, я это помню
Герои разлагаются, но их нельзя воскресить (Combat - Death Type: Can't raise, Does decay). Воскресить можно только тех у кого стоит Combat - Death Type: Can raise, Does decay.
в триггерах в категории Игрок ставь настройки союза на общие войска
Нет, тут просится не это. Чо'Галлом управляет только один игрок, второй только способности кастует.
Тебе нужно создать юнита-пустышку, и каждые 0.03 секунды перемещать его в позицию основного героя. Один игрок управляет основным героем, второй пустышкой.
Гхм, а на каком диске система?
Если на D (под диском C я подразумевал диск, на котором стоит система), то тогда Program Files (x86) требуют прав администратора на изменение внутренностей папки. JNPG меняет файлы игры во время запуска, а так как игра находится в папке, которая требует прав администратора, то и JNPG надо запускать с этими правами, иначе ничего не произойдёт.
Потому если D системный диск, то установи NewGen и WarCraft в другую папку на диске D (например, D:\WC3\WarCraft 3 Frozen Throne и D:\WC3\NewGen), а если есть другие диски, то и вовсе лучше установить на них: если система сломается, то придётся форматировать как минимум системный диск для установки новой.
После этого снова удали HKEY_CURRENT_USER\Software\Grimoire в реестре (тут хранятся настройки плагинов JNPG), если есть.
С Custom Editor Categories есть небольшой баг (как было у меня). По умолчанию он выключен, но нестандартные категории всё равно отображаются. Чтобы их выключить, нужно их включить и перезапустить редактор (ничего не произойдёт), а после выключить и вновь перезапустить редактор. При следующем запуске редактора Custom Editor Categories пропадут.
Где находится JNPG и вар?
Дай конкретные пути.
Какая версия у вара?
Если хоть что-то из них на диске C, перетащи это на другой диск, как минимум вытащи из папок, что требуют прав админа.
После этого вновь удали эту папку в реестре: HKEY_CURRENT_USER\Software\Grimoire.
У предмета может быть сколько угодно зарядов, в моей карте зарядов бывает больше 1000. Сколько можно поставить в РО - не знаю, но я думаю, что шифтом это обойти можно.
Уверен, что именно по ID лучше? Может, удобнее бд сделать и, скажем, через -spawn Драконид спавнить драконида и т. п.?
Вообще, есть функция CreateUnitByName.
native CreateUnit takes player id, integer unitid, real x, real y, real face returns unit
native CreateUnitByName takes player whichPlayer, string unitname, real x, real y, real face returns unit
native CreateUnitAtLoc takes player id, integer unitid, location whichLocation, real face returns unit
native CreateUnitAtLocByName takes player id, string unitname, location whichLocation, real face returns unit
native CreateCorpse takes player whichPlayer, integer unitid, real x, real y, real face returns unit
даммику не впихнешь итемы и статы героя без лишних проверок
А кастомной молнией как ты узнаешь, есть ли у героя такой-то предмет? Тоже нужно будет делать проверки.
Кастомная молния хороша только тем, что ты точно знаешь, как она работает.
Ред. PT153
» Администрация XGM / Кодировка
Какой-то текст.
Хотя сейчас без багов обошлось.
Ред. PT153
» WarCraft 3 / LoadUnitHandle не возвращает значение функции
» WarCraft 3 / Более трёх героев
» WarCraft 3 / Удаление спецэффекта с null'евым путем к моделе
» WarCraft 3 / Сломались горячие клавиши в редакторе
Удали эти папки в реестре, сделав их бекап перед этим:
HKEY_CURRENT_USER\Software\Grimoire
HKEY_CURRENT_USER\Software\Blizzard Entertainment\WorldEdit
В них находятся настройки JNPG и WE соответственно.
» WarCraft 3 / Сломались горячие клавиши в редакторе
Ред. PT153
» WarCraft 3 / Как сделать способность воскрешение?
Ред. PT153
» WarCraft 3 / Как воспроизводить звук на скилле?
» WarCraft 3 / Как сделать героя за которого играет 2 человека?
Тебе нужно создать юнита-пустышку, и каждые 0.03 секунды перемещать его в позицию основного героя. Один игрок управляет основным героем, второй пустышкой.
Ред. PT153
» WarCraft 3 / Сustomize Editor Categories
Если на D (под диском C я подразумевал диск, на котором стоит система), то тогда Program Files (x86) требуют прав администратора на изменение внутренностей папки. JNPG меняет файлы игры во время запуска, а так как игра находится в папке, которая требует прав администратора, то и JNPG надо запускать с этими правами, иначе ничего не произойдёт.
Потому если D системный диск, то установи NewGen и WarCraft в другую папку на диске D (например, D:\WC3\WarCraft 3 Frozen Throne и D:\WC3\NewGen), а если есть другие диски, то и вовсе лучше установить на них: если система сломается, то придётся форматировать как минимум системный диск для установки новой.
После этого снова удали HKEY_CURRENT_USER\Software\Grimoire в реестре (тут хранятся настройки плагинов JNPG), если есть.
С Custom Editor Categories есть небольшой баг (как было у меня). По умолчанию он выключен, но нестандартные категории всё равно отображаются. Чтобы их выключить, нужно их включить и перезапустить редактор (ничего не произойдёт), а после выключить и вновь перезапустить редактор. При следующем запуске редактора Custom Editor Categories пропадут.
Ред. PT153
» WarCraft 3 / Сustomize Editor Categories
Дай конкретные пути.
Какая версия у вара?
Если хоть что-то из них на диске C, перетащи это на другой диск, как минимум вытащи из папок, что требуют прав админа.
После этого вновь удали эту папку в реестре: HKEY_CURRENT_USER\Software\Grimoire.
Ред. PT153
» WarCraft 3 / Как сделать ломающиеся вещи
Ред. PT153
» WarCraft 3 / Сustomize Editor Categories
А потом переустанови JNPG.
» WarCraft 3 / Кто знает, что это за защита?
» WarCraft 3 / Редактор объектов World Editor
» WarCraft 3 / Кто знает, что это за защита?
» WarCraft 3 / Система спавна по ID юнита (Пример ID:hfoo(Пехотинец)
» WarCraft 3 / Как достать BTNCommand.mdl?
Может быть тебе нужно это.
UI\Widgets\Console\Human\CommandButton
Вот ещё пример несуществующего файла
UI\Widgets\Console\Human\human-upgrade-armor.blp
» WarCraft 3 / Система спавна по ID юнита (Пример ID:hfoo(Пехотинец)
» Мир безумного / WarCraft 3 - 1.30 (все патчи PTR)
Ред. PT153
» WarCraft 3 / Цели заклинания "Цепь молний"
Кастомная молния хороша только тем, что ты точно знаешь, как она работает.
» WarCraft 3 / Цели заклинания "Цепь молний"
» WarCraft 3 / Изменение высоты юнита
Ред. PT153
» WarCraft 3 / Покраска ника в цвета
Странно было, подумать, что это только в JNPG. Менять цвет воды и текста можно и в обычном редакторе.
» WarCraft 3 / Покраска ника в цвета