Если вы хотели бы использовать в своей карте нестандартное, оригинальное заклинание, но у вас не хватает знаний для его реализации, то эта тема специально для вас. В данной теме вы можете оставить заявку на создание необходимого вам заклинания.
Все заказы должны быть составлены по этому шаблону:
1. Название способности: Указывать не обязательно 2. Относится к: Герою/Воину/Предмету 3. Метод исполнения: GUI/JASS 4. Мультиприменяемость: Да/Нет 5. Общий вид: Да/Нет (Если вам важен только принцип работы способности, и не важны конкретные цифры, уровни и т.п., то указывайте Нет. Иначе необходимо соблюсти пункт 6.2) 6.1 Описание способности в общем виде: Здесь требуется указать эффект способности без конкретных значений. 6.2 Описание способности - уровни: Уровень 1 - Уровень 2 - Уровень 3 - и так далее до максимального уровня способности. (Указывать уже конкретные числовые значения.)
Заказы, составленные не по шаблону, удаляются. Запрещается дублирование заявок. Обсуждение технических нюансов исполнения спелла или багов просьба вести через систему Личных сообщений.
Сообщение отредактировал Nestea^ - Воскресенье, 20 Февраля 2011, 16:55:59
function GOy takes nothing returns nothing local timer t = GetExpiredTimer() local integer h = GetHandleId(t) local unit ud = LoadUnitHandle( udg_Hash, h, 0) local unit U = LoadUnitHandle( udg_Hash, h, 2) local real a = Atan2(GetUnitY(U)- GetUnitY(ud), GetUnitX(U) - GetUnitX(ud)) local unit ut local unit d local integer i = LoadInteger( udg_Hash, h, 1) local real x = GetUnitX(ud) + 25*Cos(a) local real y = GetUnitY(ud) + 25*Sin(a) local group gr = CreateGroup() local player p=GetOwningPlayer(ud) call SetUnitX( ud, x) call SetUnitY( ud, y) call GroupAddUnit( gr, U) if DistanceBetweenPoints(GetUnitLoc(ud), GetUnitLoc(U)) <= 30 and IsUnitInGroup( U, gr) then set d = CreateUnit( GetOwningPlayer(ud), 'n001', GetUnitX(U), GetUnitY(U), 0.) call UnitApplyTimedLifeBJ( 0.30, 'BTLF', GetLastCreatedUnit() ) call IssueTargetOrder( d, "entanglingroots", U) call UnitDamageTarget(ud,U,150,true,false,ATTACK_TYPE_CHAOS,DAMAGE_TYPE_NORMAL,WEAPON_TYPE_WHOKNOWS) set i = LoadInteger( udg_Hash, h, 1) -1 call GroupEnumUnitsInRange( gr, x, y, 600., null ) call GroupRemoveUnit(gr,U) set ut = GroupPickRandomUnit(gr) if ut != null and IsUnitEnemy(ut,p) and GetWidgetLife(ut)>.0 and IsUnitInGroup( ut, gr) then call SaveUnitHandle( udg_Hash, h, 2, ut) endif if CountUnitsInGroup(gr) == 0 then set i = 0 endif endif if i == 0 then call RemoveUnit(ud) call FlushChildHashtable( udg_Hash, h) call PauseTimer(t) call DestroyTimer(t) call DestroyGroup(gr) else call SaveInteger( udg_Hash, h, 1, i) endif call GroupClear(gr) call DestroyGroup(gr) set t = null set ud = null set gr = null endfunction function Trig_ForestNova_Actions takes nothing returns nothing local timer t = CreateTimer() local integer h = GetHandleId(t) local unit u = GetSpellAbilityUnit() local real x = GetUnitX(u) local real y = GetUnitY(u) local unit U = GetSpellTargetUnit() local real xt = GetUnitX(U) local real yt = GetUnitY(U) local unit ud = CreateUnit( GetOwningPlayer(u), 'n002', x, y, 0.) local integer i = 5 call SaveUnitHandle( udg_Hash, h, 0, ud) call SaveInteger( udg_Hash, h, 1, i) call SaveUnitHandle( udg_Hash, h, 2, U) call TimerStart( t, .05, true, function GOy) set ud = null set t = null endfunction
//=========================================================================== function InitTrig_ForestNova takes nothing returns nothing set gg_trg_ForestNova = CreateTrigger( ) call TriggerRegisterAnyUnitEventBJ( gg_trg_ForestNova, EVENT_PLAYER_UNIT_SPELL_EFFECT ) call TriggerAddCondition( gg_trg_ForestNova, Condition( function Trig_ForestNova_Conditions ) ) call TriggerAddAction( gg_trg_ForestNova, function Trig_ForestNova_Actions ) endfunction
он работает.... не так... там во 1ых там стоит 5 раз пргынуть а спрыгает 4 мах а то и 3 раза.... иногда просто всё в одного лнита.... помогите устранить баг
endif set t = null set ud = null set gr = null endfunction
Кто делал этот код? обнуляються локальные всегда в конце даже если они потом записываються в хеш.
Quote (Quasar)
if CountUnitsInGroup(gr) == 0 then
Мда логично каждого юнита сначала заносить в группу а потом использовать утечную БЖ. А не правильней было бы циклом? Пример set unit = FirstOfGroup(group) if unit == null Что за нуб делал код?
Quote (Quasar)
GetLastCreatedUnit()
Пфф раз но то уж пошло то лучше будет использовать bj_lastCreatedUnit
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Пятница, 07 Октября 2011, 19:43:15
Название: массовая кража здоровья. Уровни: 5. Метод: GUI (Желательно MUI). Описание: Герой использует магию, и вокруг него на 15 случайных (ближайщих) мобов используется магия Похищение жизни, но за секунду ворует 2*сила героя, показывает этот урон и лечит герою количество нанесённого.
Warden841, Делаешь так: событие - юнит изучает способность... (способность на дамаг... скока там урона ты хочешь...) условие способность равна той способность которую ты изучил ^ действие.... дать юниту каторый изучил способность, ещё 2 ауры... замедление и - дамаг... потом действие.... сделать лв спелам раыным твоему спелу... в событии
Пожалуйста, помогите: Выбираешь перса на которого действует спелл, потом взади него создается клон и ударяет его, так, что тот отлетает до нашего настоящего персонажа, и стоит в оглушении 4 секунды.
Мне нужен пасивный скил(аура) Действие(если у Героя рядом(радиусом 500) с Героем владеющим аурой здоровье равно или меньше 5% то ,здоровье у юнита востановаится до отметки: Уровни: 1. до 15% 2. до 20% 3. до 25% Востанавливает с промежуском в 30 сек. 1 героя. Действеут только на героя ,не действует на обладателя ауры.
Добавлено (11 Октябрь 2011, 18:37:25) --------------------------------------------- Исполнение GUI
Народ я тут новенький и мало шарю в триггерах а если и не много шапю то только в GUI вот прочитал с десяток страниц в єтой теме и всё таки решил оставить пару заявок!) 1.с дамми юнитом что бы не сколько дамми вылетали из героя направлялись в разные стороны и проходя сквозь врагов наносили определённыый урон пример ульт Nevermor'a из доты. 2.тоже пример невер второй скил за убитого крипа что бы давали дамаг и если можно разжуйте что бы можно было меня дамаг на статы или броню. 3.еще хочу спелл типа хука как у пуджа из доты только чтобы он не остонавливался на первом враге и тащил его к герою а летел во всю свою длину и заберал всех на своём пути ну и соотвецтвенно возврощал их к кастеру. 4.стандарт спелл волна силы только одна модификация нужна что бы волна отталкевала всех от себя. 5.нужен такой триггер допусти Mjorning из доты какойто шанс что по врагам вылетит цепная молния тоже желательно разжевать где в триггере этот самый шанс и где то что подразумеваеться цепной молнией что бы я мог поменять например на шанс изцелить себя.
Плиз помогите срочно надо: Название: Теневой обман Способ исполнения: ГУИ Цель: враг Для героя: нет MUI: нет Описание: Взади выбранного противника появляется клон, который бъет и отталкивает противника на заклинателя. Противник стоит 4 секунды в оглушении
Название:Девственный лес Исполнение:Предпочтителен GUI Описание:При применении спелла на область, в ней начинают расти деревья. Деревья появляются с периодичностью в 1 секунду. Время действия - 5/7/10 секунд за уровень, область действия - 300/350/400 за уровень. Затраты маны - 50/60/75.
Деревья вырастают в случайных точках в границах области действия. Если есть возможность сделать так, что бы деревья не появлялись в месте расположения уже существующих деревьев и зданий - буду признателен.
Тому кто справится с задачей - моя благодарность и +3 к ЧСВ... точнее репутации.
Название: Не важно Исполнение: GUI Описание: Вобщем с чего начинается, кастер кастует скил который постепенно требует ману, например в сек 1 ману, при запущенном скиле ведется счетчик (переменная (целочисленная)) на каждый урон прибавляется к счетчику количество общего урона, допустим он сделал три удара 34 + 28 + 35 = 97 и дальше он бьет счетчик прибавляется и прибавляется максимум может быть 400, и потом этот скил используешь на жертву, урон будет равный накопленному при запущенном скиле (в данном случае 97) как использовал скил счетчик сбивается до 0. ну на 2 уровне скила ограничение 800 а на третьем 1200. Желательно демку или скринами.
1.Метод Исполнения:Любой 2.Название:Подлость 3.Описание:Если герой изучил эту способность делать следующее: Когда герой атакует (любого юнита даже дальнего)за спиной атакованого юнита появляеться полупрозрачный клон,атакующего героя который,естественно атакует цель. Пассивное заклинание С каждым уровнем процент шанса возрастает на 6%.
ДУмаю Комунибудь Понадбиться Огненный Шар Наносящий Случайный Урон Когда долетит до цели Так Же Он может исцелять Если Триггер Правильно настроить данной системы негде не видел по этому выкладваю может кому понадбиться http://turbobit.net/8302x6gcyg1c.html