Вы находитесь на сайте модмейкеров.
Четверг, 02.02.2023, 18:43
Участники · Правила форума · ПОИСК!
  • Страница 5 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Модератор форума: UZzip, Ratssor  
Форум » Редактор WorldEditor » Школа Картостроения » Урок №2 ((Бафы))
Урок №2
GlaberДата: Вторник, 17.01.2012, 14:05 | Сообщение # 41



Сообщений: 1055

PK_demon, Да))
jass легче и при том в jngp еще легче)
Скачай если захочешь.Есть на ифно мб на этом сайте)


--
PK_demonДата: Вторник, 17.01.2012, 14:06 | Сообщение # 42



Сообщений: 1016

тока почему if i==0 then два раза == стоит?

--
GlaberДата: Вторник, 17.01.2012, 14:11 | Сообщение # 43



Сообщений: 1055

PK_demon, в Jass приравнение и прочее стоит так
== - ровно
>= -больше
<= -меньше
как то так вроде обычно только их использую мб что то еще есть.
Но это только в некоторых случаях в переменных просто 1 раз =
в условиях во всех два раза ==

Добавлено (17.01.2012, 14:11)
---------------------------------------------
Например условие способности

Code
return GetSpellAbilityId()=='A000'




Сообщение отредактировал F@lk - Вторник, 17.01.2012, 14:15
--
PK_demonДата: Вторник, 17.01.2012, 14:13 | Сообщение # 44



Сообщений: 1016

F@lk, ясно... потом попробую че нить сотворить))

--
GlaberДата: Вторник, 17.01.2012, 14:14 | Сообщение # 45



Сообщений: 1055

Code
function Trig_NewYearEnergyWall_Conditions takes nothing returns boolean
     return GetSpellAbilityId() == 'A00B'  
endfunction

function Trig_NewYearEnergyWall_Actions takes nothing returns nothing
//
     local unit f=GetTriggerUnit()
     local integer i=0
     local real fas=GetUnitFacing(f)
     local unit array da
     local integer di=0
     local real x = GetSpellTargetX()  
     local real y = GetSpellTargetY()
     local unit d=CreateUnit(GetOwningPlayer(f),'o004',x,y,GetUnitFacing(f))
     local real x2 = GetWidgetX(d) + 220. * Cos(fas * .017)  
     local real y2 = GetWidgetY(d) + 220. * Sin(fas * .017)
     local destructable array des
     local integer dei=0
     local integer in=GetHeroInt(f,true)/2
     local real x1 = GetWidgetX(d) + (400+in) * Cos(fas * .017)  
     local real y1 = GetWidgetY(d) + (400+in) * Sin(fas * .017)
//
     if GetHeroInt(f,true) <=250 then
     set in=GetHeroInt(f,true)/2
     endif
     if GetHeroInt(f,false) >=251 then
     set in=150
     endif
     set x1=GetWidgetX(d) + (400+in) * Cos(fas * .017)  
     set y1=GetWidgetY(d) + (400+in) * Sin(fas * .017)
//
     loop
     exitwhen i>10*GetUnitAbilityLevel(f,'A00B')+(3*GetUnitAbilityLevel(f,'A00D'))
     set da[di]=CreateUnit(GetOwningPlayer(f),udg_type[GetRandomInt(4,6)],x1,y1,0)
call UnitApplyTimedLife(da[di],'BTLF',2*GetUnitAbilityLevel(f,'A00B')+2)
call SetUnitAbilityLevel(da[di],'A00A',GetUnitAbilityLevel(f,'A00B'))
     set des[dei]=CreateDestructable('YTpc',x1,y1,fas,1,1)
     set dei=dei+1
     set di=di+1
     set i=i+1
     set fas=fas-20
     set x1 = GetWidgetX(d) + (400+in) * Cos(fas * .017)  
     set y1 = GetWidgetY(d) + (400+in) * Sin(fas * .017)
call TriggerSleepAction(0.01)
     endloop
//
     loop
     exitwhen i==0
call IssuePointOrder(da[di],"shockwave",x2,y2)
     set di=di-1
     set i=i-1
     set fas=fas+20
     set x2 = GetWidgetX(d) + 220. * Cos(fas * .017)  
     set y2 = GetWidgetY(d) + 220. * Sin(fas * .017)
     endloop
//
     set dei=0
call TriggerSleepAction(0.8)
//
     loop
     exitwhen i>10*GetUnitAbilityLevel(f,'A00B')+(3*GetUnitAbilityLevel(f,'A00D'))
call RemoveDestructable(des[dei])
     set des[dei]=null
     set dei=dei+1
     set da[di]=null
     set di=di+1
     set i=i+1
     endloop
//
call RemoveUnit(d)
     set d=null
     set f=null
endfunction

//===========================================================================
function InitTrig_NewYearEnergyWall takes nothing returns nothing
     set gg_trg_NewYearEnergyWall = CreateTrigger(  )
     call TriggerRegisterAnyUnitEventBJ( gg_trg_NewYearEnergyWall, EVENT_PLAYER_UNIT_SPELL_EFFECT )
     call TriggerAddCondition( gg_trg_NewYearEnergyWall, Condition( function Trig_NewYearEnergyWall_Conditions ) )
     call TriggerAddAction( gg_trg_NewYearEnergyWall, function Trig_NewYearEnergyWall_Actions )
endfunction

Пример способности.
Создает даммиков вокруг точки по кругу блокирует вход выход и пускает волны силы в центр.
Кол-во волн идаммиков зависит от уровня
Так же радиус зависит от интелекта
И еще способность усиляется если есть у героя пассивка.

Добавлено (17.01.2012, 14:14)
---------------------------------------------
Если что интересно спроси.


--
PK_demonДата: Вторник, 17.01.2012, 14:15 | Сообщение # 46



Сообщений: 1016

F@lk, а ты тока джаз наеш? гуи нет)) biggrin biggrin

--
GlaberДата: Вторник, 17.01.2012, 14:17 | Сообщение # 47



Сообщений: 1055

Quote (PK_demon)
F@lk, а ты тока джаз наеш? гуи нет))

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


--
PK_demonДата: Вторник, 17.01.2012, 14:18 | Сообщение # 48



Сообщений: 1016

F@lk, аа ну вот а я мало че понял из того бреда)) лана потом может разберусь)))

--
GlaberДата: Вторник, 17.01.2012, 14:19 | Сообщение # 49



Сообщений: 1055

Quote (PK_demon)
F@lk, аа ну вот а я мало че понял из того бреда)) лана потом может разберусь)))

Из спелла то?)


--
PK_demonДата: Вторник, 17.01.2012, 14:20 | Сообщение # 50



Сообщений: 1016

F@lk, ага ладно мене счас валить надо потом ты мне если что объяснишь я надеюсь))

--
Форум » Редактор WorldEditor » Школа Картостроения » Урок №2 ((Бафы))
  • Страница 5 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Поиск:

W3 - Всё для картостроения. 2023-2010 |