27

» WarCraft 3 / Условный диалог

БезликийСектант, есть специальное условие boolean "юнит находится в регионе". посмотри там.
у тебя уже есть условие нужное, см на твоем скрине условие "область содержит юнита"
и в boolean посмотри еще условия жив/мертв. только не понятно зачем проверять, ведь по событию юнит умер уже. а разве умершие могут диалоги вести?

может быть вам надо сделать так, чтобы герой входил в область. и начинался диалог?
27

» WarCraft 3 / Опыт за юнитов

Принятый ответ
FAQ там есть все эти формулы, раздел 4 смотри

все в этой константе
константа Набранный героем опыт: таблица сокращения монстров - 80, 70, 60, 50, 0
Если убитый героем воин является монстром (нейтральным крипом), в полном объёме опыт вы не получите. Это нормально - ведь герой, допустим, 42 уровня, может убить гнолла за взмах оружия.
Опыт за крипа рассчитывается, как дают за обычного юнита, но с небольшим отличием - помимо всего этого применяется таблица сокращения монстров.
Кратко: по идее игра берет базовый опыт, который указан у юнита в ро, и по формуле выдает новое значение. для примера пусть игра выдаст 25 опыта. От крипов еще меньше получаем, тк от константы сокращается опыт. Пример от убийства воина герой 1-го уровня получает не 25 опыта, а 20 опыта
От убийства крипа герой 1 уровня получит 80% от 25. 20 опыта
От убийства крипа герой 2 уровня получит 70% от 25. 17,5 опыта
От убийства крипа герой 3 уровня получит 60% от 25. 15 опыта
От убийства крипа герой 4 уровня получит 50% от 25. 12,5 опыта
От убийства крипа герой 5 уровня получит 0% от 25. 0 опыта
Последнее значение таблицы применяется к остальным уровням. Вот, почему после достижения 5 уровня герой опыта не получает. В таблице написано "0".
Чтобы позволить герою прокачку выше 5 уровня, требуется просто изменить его на какое-либо значение выше нуля. Оно определит процент получаемого опыта на других уровнях.
27

» WarCraft 3 / челы а как сделать так что бы юниты ходили по стене или башне?

как ходить по декору карта <= таким "как хождение по декору" не занимался, но примерно знаю как сделать. мб на сайте в поиск вбить "как ходить по декору". выше уже дали норм ответ
помню еще карты FortressSiege и DefenceOfUthragon, там было кучу модель башни и стены. там можно было как-то взобраться наверх. упс, ошибся. там нет никаких стен, а просто ланд подняли на 2 уровня
27

» Мир безумного / World of Warcraft: «Новый дом»

играть в онлайн не буду, но надеюсь выйдет как нибудь фильм или сериальчик по миру варкрафт (с первой части вара до тек вов). да был фильм, но он отстой, ничего не понял из него. мне хотелось бы анимированного фильмца с экшенами с магией и прочее. просто шедевр смотреть бой в трейлере (вот пример флэш или стрела, где больше выделено времени на драму разговоры, проблем психологических. ожидал больше другого формата. да и битв тоже мало, вспышка-вспышка и ты уже в тюрьме)

а вообще история вов какая странная муть, 10 раз умрет, 10 раз воскреснет, 10 уйдет, 10 вернет. 10 сменит сторону. это неадекватно. превращать хороших персонажей в плохишей судя по трейлерам (вов никогда не играл, чуть чуть пробовал)
27

» WarCraft 3 / Условие - превосходство по хп.

ArlekinOo, ты просто убиваешь триггером, опыт и награду за убийство герой не получает. да и триггер такой себе. тебе надо отслеживать каст и потом заносишь всех в группу, и проверять здоровье
Персонаж давит насмерть. Тех у кого хп меньше чем у нас.
когда это происходит? во время каста или удара. что за способность то

есть станд способность минотавра
27

» WarCraft 3 / Условие - превосходство по хп.

Принятый ответ
смотри раздел comparison real (сравнение действительных чисел), там найдете нужную функцию типа всякие характеристики юнитов и др
if тек здоровье unit < тек здоровье hero then
    нанести дамаг 99999к unit - тогда точно убьет, герою hero еще опыт и бабло
endif
27

» Блог им. Steal nerves / Списки способностей

KaneThaumaturge:
А почему не публикуется?
могу опубликовать, но не хочется афишировать
27

» WarCraft 3 / Пропали спецэффекты в игре

RobertStevenson, тоже было давно такое. у панды огненное дыхание не отображался огненный эффект. после перезапуска системы только заработало, мб ос какое-то мне обновление без моего ведома установило
ссылка
27

» WarCraft 3 / Анимация

Принятый ответ
А как переключить stand 1 на stand 2 c триггера ?
есть же в разделе триггера - анимация. проиграть анимацию
Анимация - Play Unit Animation

SсRealm, можно еще попробовать изменить скорость анимации.
Анимация - Change Unit Animation Speed
100% - стандарт, 0% - вроде вообще не должно проигрывать
тогда юнит застынет, правда это не всегда так работает (например при движении анима проигрывает, надо просто скорости лишить, мне так кажется. а вот когда останавливается то анима стынет, правда не так как нужно. видно что анимация move не до конца проигралась. если нужно убрать аниму move просто проиграйте аниму stand).

вот карта, посмотри. один раб дышит, руками двигает и прочее. второй стоит как робот. это были всего лишь мои предложения, не знаю как оно работать будет. надо еще просмотреть какие есть нативки по аниме
Загруженные файлы
27

» WarCraft 3 / Анимация

мб модели анимацию сделать на подобие stand в 1 кадр, и гроиграть триггерно чтоб стоял как робот?
27

» WarCraft 3 / Как убрать зеленое свечение порчи?

Принятый ответ
как вы порчу наводите?
вроде триггерная порча такой фигни не делает
27

» WarCraft 3 / Где находится Возможные способности строительство (альяс)/(орда)

8gabriel8:
Steal nerves, а как с юнитами, улучшениями и предметами? Если строительство не получается, то можно попробовать на основе способности Игрушечный замок делать стройки.
способности на основе игрушечного замка, башни, фермы не получится затолкать в спелбук. у них одинаковый id-приказ, и срабатывает что-то одно. допустим у меня есть башня и ферма, хочу построить башню, он мне выдает ферму. мне драколич давал код на этот случай, где можно было отлавливать нажатие и запускать др
самые наилучшие пожелания
поэтому и хотелось чтобы близзарды ввели такую фишку как отслеживание нажатия по кнопки абилки и активации кнопки (когда прожимает не игрок, а триггер. и игроку надо будет навести мышкой на цель). тогда можно отследить и задать др абилу

Андрей.У.В.,
выдели поле спелбука, не открывая его. жмешь shift + enter.
короче см. карту и скрин, но оно не будет работать. предлагаю рабочии вариант, скину ссылку, смотри раздел строительство ссылка
Загруженные файлы
27

» WarCraft 3 / Где находится Возможные способности строительство (альяс)/(орда)

8gabriel8, классно придумано. не знал что можно вместо абилок поставить юнитов (оно хоть работает?). давно ищу идеальный способ менюшек

что-то не работает это. прописал в спелбук здание hhou, добавил рабу, запустил игру, открыл спелбук, а ничего там нет
27

» WarCraft 3 / IF проверка

PT153, не понял что ты имел в виду под "могут изменится". думаю ты хотел сказать что это от близзардов зависит. один раз меняли номера констант вроде, и обратно потом вернули.
27

» WarCraft 3 / IF проверка

PT153, ну можно номер события или id-event, сделать так:
local integer ev = GetHandleId(GetTriggerEventId()) //Id-Handle события (38 - без цели, 39 - точка, 40 - цель)
if ev == 38 then
//....
elseif ev == 39 then
//....
elseif ev == 40 then
//....
endif 
номер берется из библиотеки jngp, вбиваете ваше событие и все
constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_ORDER=ConvertPlayerUnitEvent(38)
constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER=ConvertPlayerUnitEvent(39)
constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER=ConvertPlayerUnitEvent(40)

не знаю правильно ли это, но я не мог смотреть на длинные переменные, если еще какие другие проверки добавить, у вас условие длинное получится
27

» WarCraft 3 / Как сделать неработающий айтем

не знаю, где и что там в доте. но 2010 гг за дотой сильно не слежу.

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

» WarCraft 3 / Есть у кого система спавна крипов?

Стандартные карты открой и смотри (типа конфетные войны). еще есть старые карты (Tower Defense v2.0, green td).
27

» WarCraft 3 / Проблема с размером текстуры порчи

вот сделал карту, в которой рект теперь ставится посередине. Однако, есть некоторые моменты. Dummy-cast в точку отбирает клетку 256х256 (жалко, слишком огромные размеры. меньше задать никак. это в способности по умолчанию задано). Хотя бы работает точно.

вот небольшие изменения. короче круг не очень похож на круг. только с большими размерами похож на круг. с маленькими размерами едва ли круг можно сделать, тк квадратами порчу наводит. а у нас dummy-cast квадратит с большими размерами, с 256х256
циклами шагами каждую точку проверяем, как и с ректами, тут проверяем так:
расстояние между point и центром круга > R круга, значит вышел за круг.
напоминает пиксельную графику

почитал снова статью. в статье обнаружил, что только у нативок (см ниже) смещается картинка порчи
native SetBlightPoint takes player whichPlayer, real x, real y, boolean addBlight returns nothing
native SetBlightRect takes player whichPlayer, rect r, boolean addBlight returns nothing
а вот у нативки SetBlight такой проблемы нет. Поэтому можно отказаться от вызова функции Dummy-cast, тк может вызывать подвисания при больших размерах. В функции dummy-cast создает каждый раз даймика и итема, и кастует. тк может одновременно дохера создать даймиков
native SetBlight takes player whichPlayer, real x, real y, real radius, boolean addBlight returns nothing
можно задать самый минимальный радиус radius, это будет почти тоже самое что и dummy-cast.

еще переделать круги. теперь нечто похожее на круг делает
код
//проверяет 5 точек квадрата points (это центр и 4 крайние), попали ли в круг
//расстояние между указанной точкой (cx,cy) и point > R круга, значит вышел за круг. иначе находится внутри круга
//логика такова: если все точки квадрата внутри, значит квадрат покрываем порчей
function RectContainsCircle takes rect R, real cx, real cy, real radius returns boolean
local real centx = GetRectCenterX(R)
local real centy = GetRectCenterY(R)
local real maxx = GetRectMaxX(R)
local real minx = GetRectMinX(R)
local real maxy = GetRectMaxY(R)
local real miny = GetRectMinY(R)

if (DistanceBetween2Points(minx,maxy,cx,cy) < radius) and DistanceBetween2Points(maxx,maxy,cx,cy) < radius and DistanceBetween2Points(centx,centy,cx,cy) < radius and DistanceBetween2Points(minx,miny,cx,cy) < radius and DistanceBetween2Points(maxx,miny,cx,cy) < radius then
    return true
endif

return false

endfunction

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

» WarCraft 3 / поднятие молнии в высоту

Принятый ответ
native AddLightningEx takes string codeName, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns lightning
наработка
в jngp есть встроенная библиотека ссылка на коммент с картинками как пользоваться библиотекой, сайты есть ссылка или достаете из архива игры текстовик со всеми нативками и функциями. в них ctlr + F поиск вбиваете lightning