Если вы хотели бы использовать в своей карте нестандартное, оригинальное заклинание, но у вас не хватает знаний для его реализации, то эта тема специально для вас. В данной теме вы можете оставить заявку на создание необходимого вам заклинания.
Все заказы должны быть составлены по этому шаблону:
1. Название способности: Указывать не обязательно 2. Относится к: Герою/Воину/Предмету 3. Метод исполнения: GUI/JASS 4. Мультиприменяемость: Да/Нет 5. Общий вид: Да/Нет (Если вам важен только принцип работы способности, и не важны конкретные цифры, уровни и т.п., то указывайте Нет. Иначе необходимо соблюсти пункт 6.2) 6.1 Описание способности в общем виде: Здесь требуется указать эффект способности без конкретных значений. 6.2 Описание способности - уровни: Уровень 1 - Уровень 2 - Уровень 3 - и так далее до максимального уровня способности. (Указывать уже конкретные числовые значения.)
Заказы, составленные не по шаблону, удаляются. Запрещается дублирование заявок. Обсуждение технических нюансов исполнения спелла или багов просьба вести через систему Личных сообщений.
Сообщение отредактировал Nestea^ - Воскресенье, 20 Февраля 2011, 16:55:59
TeX13, а теперь ответь мне на вопрос. Ты тупой или притворяешься? Я разве не ясно выразился? Я не собираюсь делать множество бесполезных спэллов, которые у меня на триггерах, чтобы потом всю карту лагало! Мне нужен только 1 спэлл, который на триггере, отвечающий за CD, хоть даже в JASS! Если ты такой умный, сделай, что же ты. Ты наверное не понимаешь, что подобные темы созданы для тех, у кого мало времени!
function Skill_timer takes nothing returns nothing local timer t = GetExpiredTimer() local integer h = GetHandleId(t) local integer skill_id = LoadInteger(ht,h,0) // твои действия по откату скила FlushChildHashtable(ht,h) PauseTimer(t) DestroyTimer(t) t = null endfunction
function GetSkillTime takes integer skill_id returns real if skill_id == 'A0ED' { return 1.0 } // сюда забить откаты спелов. elseif skill_id == 'A04Z' { return 2.0 } return 0 endfunction
function Trig_SkillSys_Actions takes nothing returns nothing local timer t = CreateTimer() local integer skill_id = GetSpellAbilityId() local real time = GetSkillTime(skill_id) local integer h= GetHandleId(t) SaveInteger(ht,h,0, skill_id) TimerStart(t,time,false,function Skill_timer) t = null endfunction
О нас думают плохо лишь те, кто хуже нас, а те кто лучше нас... Им просто не до нас. My Project: Nindogatari MAL
Добавлено (24-02-2011, 22:17) --------------------------------------------- Орочимару А сколько действует спел и в какой области от героя выбирать юнитов для тп в другую облость?.
Что бы эту наработку использовать, нужно знать жасс. Тот код отвечает лишь за отлов отката спелов, не зависимо от того сколько спелов. и полностью муишна, а далее ее нужно дописывать в зависимости от ваших личных пожеланий.
О нас думают плохо лишь те, кто хуже нас, а те кто лучше нас... Им просто не до нас. My Project: Nindogatari MAL
oleg_best_oleg Так как юниты притягиваютса значет это происходит за время а не моментально.Поэтому и спрашиваю время действия. А про область я спросил так так можно было их всех тп сразу без притягивания а раз притягиваютса значит область притяжения и область захвата для тлепортацыи разная
Короче, создаем триггер SkillCD, конвертим в текст, удаляем все и вставляем:
Code
function Skill_timer takes nothing returns nothing // загружаем id скила local integer skill_id = LoadInteger(ht,GetHandleId(GetExpiredTimer()),0) //================================= // твои действия по откату скила // //================================= // чистим хэш FlushChildHashtable(ht,GetHandleId(GetExpiredTimer())) // удаляем мусор PauseTimer(GetExpiredTimer()) DestroyTimer(GetExpiredTimer()) t = null endfunction
function GetSkillTime takes integer skill_id returns real if skill_id == 'A0ED' { return 1.0 } // сюда забить откаты спелов. elseif skill_id == 'A04Z' { return 2.0 } return 0 endfunction
function SkillSystakes nothing returns nothing // создаем таймер local timer t = CreateTimer() // сохраняем id абилки SaveInteger(ht,GetHandleId(t),0, GetSpellAbilityId()) // запускаем таймер, который заработает в зависимоти с установленным откатом TimerStart(t,GetSkillTime(GetSpellAbilityId()) ,false,function Skill_timer) // делет локалку t = null endfunction
//=========================================================================== function InitTrig_SkillCD takes nothing returns nothing local trigger trig = CreateTrigger() local integer i = 0 loop call TriggerRegisterPlayerUnitEvent(trig, Player(i), EVENT_PLAYER_UNIT_SPELL_EFFECT, null) i++ exitwhen index == 11 endloop call TriggerAddAction( gg_trg_SkillCD, function SkillSys) trig = null endfunction
Все нужное раскоментил. Учим жасс, дописываем по желанию нужное=)
О нас думают плохо лишь те, кто хуже нас, а те кто лучше нас... Им просто не до нас. My Project: Nindogatari MAL
Название : Фростморн Описание: Герой использует Спасобность и Враги кторые его окружает в радиусе 1600 ( Притягиваются 3 сек.) к нему и партуются в Определённую область( если непонятно кокую область то обясняю область та которая ниже панэли войск и там панэль областей есть вот в созданую область должны партоватся враги ! Уровень 1
ппц... вы че правда все такие тупые?! Lipokiller, я тебе про один скилл и объяснял!!! нет, это как так можно тупить?!э создание этого требует очень малого времени. объясню для баранов. создаешь спелл доспехи веры(пустые) токо баф оставь(это и является спелл снимающий кд). потом создаешь 2 у которых с повышением уровня первого, уменьшается перезарядка у них. для баранов: создаешь например Молот бурь(нам нужно 3ур.) так ты созадешь 3 таких способности по 3ур. точ вточ одикавых, только у других кд поменьше. просто тупо копираешь не долго!!! терь триггер: Способность: Боева единица начинает применять способность Условие: боевая единица имее особенный баф = доспехи веры (баф понижающего кд спелла) Действие: мултипле функция - условие: уровень способности для тригера юнита равно 1, то делит Молот бурь 1 фром юнит адд молот бурь 2 и. т. п.
Название : Фростморн Описание: Герой использует Спасобность и Враги кторые его окружает в радиусе 1600 ( Притягиваются 3 сек.) к нему и партуются в Определённую область( если непонятно кокую область то обясняю область та которая ниже панэли войск и там панэль областей есть вот в созданую область должны партоватся враги ! Уровень 1
Ты уже всех достал держи свой спел - Телепортация Облость 500, если что сам поставишь сколько тебе нужно в переменной Order!
Способность: Боева единица начинает применять способность Условие: боевая единица имее особенный баф = доспехи веры (баф понижающего кд спелла) Действие: мултипле функция - условие: уровень способности для тригера юнита равно 1, то делит Молот бурь 1 фром юнит адд молот бурь 2
ты либо адекватно опиши спелл ,либо скинь наработку
Когда враг заходит в первый барьер его станит на 2сек. барьер рушитса и востанавливаетса 8сек. во второй запутывает в корни барьер рушитса и востанавливаетса 15сек. в третий отталкивает на 700 опятьже рушитса востанавливаетса 25сек.
Как расставленны барьеры?Как понять рушится и восстанавливается?Какой моделью ты представляешь барьер?Если он у тебя есть скинь мне!
Сообщение отредактировал Forum_Russia - Пятница, 25 Февраля 2011, 12:10:25
Спелы на заказ (GUI) Название:Жизнь после смерти Способ исполнения: GUI через триггеры Описание: Если герой умерает или же у него остается 5% хп, то он падает +добавляется определенный % хп и лежит в паузе какое то время и за это время у него происходит реген\хп, но при этом он потеряет определенное количество маны при падении, после этого он встает с отрегенившим хп. Уровень: Время(хп\сек): Реген: Затраты: Восстоновить здоровье: 1 уровень: 5 хп\сек - 120 сек лежит 300 маны 150 хп 2 уровень: 10 хп\сек - 90 сек лежит 400 маны 300 хп 3 уровень: 15 хп\сек - 60 сек лежит 500 маны 450 хп 4 уровень: 20 хп\сек - 45 сек лежит 600 маны 600 хп 5 уровень: 25хп\сек - 15 сек лежит 700маны 750 хп П.С если можно в последнем столбике "добавить хп" сделать через %хп Название: Густой туман Способ исполнения: GUI через триггеры Описание: При нажатии на способность, вокруг героя с определенным АОЕ радиусом создается эффект тумана по всему радиусу, противники оказавшие в этом тумане(области) теряют видимость, понижается MS(скорость перемещения) и они неспособны применять заклинания, а у кастера в этой области повышается скорость перемещение 1 уровень: АОЕ 800 -75ms +75ms 2 уровень: АОЕ 1200 -125ms +125ms 3 уровень: АОЕ 1700 -175ms +175ms 4 уровень: АОЕ 2400 -225ms +225ms 5 уровень: АОЕ 2800 -275ms +275ms
Название: Удар эшбрингера ! Описание: Цель в спасобности 1 ;;; герой прыгает на указаного играком противника и ударяет и в той облости где был удар появляется небольшая варонка! уровни 3 1 уровень Урон 500 затраты маны 60 2 уровень Урон 1000 затраты маны 500 3 уровень Урон 2000 затраты маны 700
Название Сила льда Описание Герой использует спасобность и все враги отталкиваются от его на растояние 1600 и немогут к нему падойти 10 сек герой этим временем может юзать другие заклинания ! ( и ещё враги при отталкивании теряют 1хр в секунду пака неоттолкнутся до растояния 1600 ) уровней 1 затраты маны 500
Как расставленны барьеры?Как понять рушится и восстанавливается?Какой моделью ты представляешь барьер?Если он у тебя есть скинь мне!
от героя до 300АОЕ это третий барьер от 300 до 400 это второй от 400 до 500 это первый.Рушитса тоесть например зашол юнит в первый барьер его застанило барьер изчез через 8 сек появилса снова это востановление.Как они выглядят мне всеравно(к примеру можно зделать в виде какой небуть ауры или купол как ульт у Воида из доты)
Сообщение отредактировал CreDo - Пятница, 25 Февраля 2011, 21:20:30
lawson, нужен JNGP с установленным дистрибутивом. Далее, ставишь галочку в cjass - Enable AdicHelper и Enable AdicOptimiser. Далее сохраняешь карту, ока не появится быстро ползущая полоска с надписью CjassOptimiser или как-то так. далее смело запускаешь мапу)
Faion, кстати, как понять нижнюю часть?
Code
function InitTrig_SkillCD takes nothing returns nothing local trigger trig = CreateTrigger() local integer i = 0 loop call TriggerRegisterPlayerUnitEvent(trig, Player(i), EVENT_PLAYER_UNIT_SPELL_EFFECT, null) i++ exitwhen index == 11 endloop call TriggerAddAction( gg_trg_SkillCD, function SkillSys) trig = null endfunction
зачем тогда i? и где обьявление переменной index? Может ее заменить на i надо? или это до меня чегото не доходит?)
Сообщение отредактировал Vova5009 - Суббота, 26 Февраля 2011, 17:31:47