Сейчас 13:52:21 Пятница, 19 апреля, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [Вопрос] Не работает способность на Джассе
[Вопрос] Не работает способность на Джассе
DaroДата: Воскресенье, 08 Сентября 2013, 17:04:00 | Сообщение # 1
6 уровень
Группа: Проверенные
Сообщений: 217
Награды: 0
Репутация: 105
Блокировки:
Хотял вот взять себе ету штуку но не работает .


 

DragoNДата: Воскресенье, 08 Сентября 2013, 22:30:47 | Сообщение # 2
Инквизитор
Группа: Стримеры
Сообщений: 4348
Награды: 7
Репутация: 2776
Блокировки:
что именно не работает? телепаты в отпуске
raw cod'ы менял?

Добавлено (08 Сентября 2013, 22:30:47)
---------------------------------------------
я таки не телепат :(


El Psy Congroo
 

abidinДата: Понедельник, 09 Сентября 2013, 00:11:13 | Сообщение # 3
7 уровень
Группа: Проверенные
Сообщений: 330
Награды: 0
Репутация: 305
Блокировки:
Цитата (Daro)
Цитата (Daro)
function Trig_Static_Actions takes nothing returns boolean
return(GetSpellAbilityId()=='A004'or GetSpellAbilityId()=='A00E'or GetSpellAbilityId()=='A00G'or GetSpellAbilityId()=='A001') andGetUnitAbilityLevel(GetTriggerUnit(),'A00J')>0
endfunction

function Static_Field_Filter takes nothing returns boolean
return IsUnitType(GetFilterUnit(),UNIT_TYPE_HERO) and IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(GetTriggerUnit()))and IsUnitVisible(GetFilterUnit(),GetOwningPlayer(GetTriggerUnit()))
endfunction

function Static_Field_Damage takes nothing returns nothing
local real lQw=.96-.02*GetUnitAbilityLevel(GetTriggerUnit(),'A00J')
local real lQW=GetUnitState(GetEnumUnit(),UNIT_STATE_LIFE)
local real lf7=lQW-lQW*lQw
call UnitDamageTarget(GetTriggerUnit(),GetEnumUnit(),lf7,true,true,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_MAGIC,WEAPON_TYPE_WHOKNOWS)
call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl",GetEnumUnit(),"origin"))
endfunction

function Static_Field_Main takes nothing returns nothing
local location liD=GetUnitLoc(GetTriggerUnit())
local group lEw=CreateGroup()
local real lxx=GetLocationX(liD)
local real lyy=GetLocationY(liD)
local boolexpr lEW=Condition(function Static_Field_Filter)
call GroupEnumUnitsInRange(lEw,lxx,lyy,800,lEW)
call ForGroup(lEw,function Static_Field_Damage)
call RemoveLocation(liD)
call DestroyGroup(lEw)
call DestroyBoolExpr(lEW)
endfunction

//===========================================================================
function InitTrig_Static takes nothing returns nothing
set gg_trg_Static = CreateTrigger( )
call TriggerAddAction( gg_trg_Static, function Trig_Static_Actions )
endfunction


пробел поставь

Добавлено (09 Сентября 2013, 00:09:31)
---------------------------------------------
и там много таких ошибок

Добавлено (09 Сентября 2013, 00:11:13)
---------------------------------------------
А ещё ,ты способности переносил,заклинания или нет?


Сообщение отредактировал abidin - Понедельник, 09 Сентября 2013, 00:11:33
 

FEARKILLERДата: Понедельник, 09 Сентября 2013, 01:42:58 | Сообщение # 4
6 уровень
Группа: Проверенные
Сообщений: 175
Награды: 0
Репутация: 149
Блокировки:
Цитата (Daro)
но не работает

А собсно что тут должно работать, если функция Static_Field_Main ниоткуда не запускается? Триггер постоянно запускает только одну функцию Trig_Static_Actions с проверкой и на этом завершается его работа. Хотя, тут даже до проверки дело не доходит, у триггера нет даже события. Где ты этот кусок кода выдрал? Откуда?
Цитата (abidin)
пробел поставь

Слитно можно писать рядом с одинарными и двойными кавычками, а также скобками(ну и они тоже сами не везде нужны как и пробелы).
Цитата (Daro)
Хотел вот взять

Код
function StaticFieldDamage takes unit u,player p,group g returns nothing
     local real r=.96-.02*GetUnitAbilityLevel(u,'A00J')
     local real l
     local unit t
     call GroupEnumUnitsInRange(g,GetWidgetX(u),GetWidgetY(u),800.,null)
     loop
         set t=FirstOfGroup(g)
         exitwhen t==null
         call GroupRemoveUnit(g,t)
         set l=GetWidgetLife(t)
         if IsUnitEnemy(t,p)and IsUnitVisible(t,p)and IsUnitType(t,UNIT_TYPE_HERO)and not IsUnitType(t,UNIT_TYPE_STRUCTURE)and not(IsUnitType(t,UNIT_TYPE_DEAD)or GetUnitTypeId(t)<1)and l>.405 then
             call UnitDamageTarget(u,t,l-l*r,true,true,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_MAGIC,WEAPON_TYPE_WHOKNOWS)
             call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl",t,"origin"))
         endif
     endloop
     call DestroyGroup(g)
     set u=null
     set t=null
     set p=null
     set g=null
endfunction
function Static takes nothing returns boolean
     local integer i=GetSpellAbilityId()
     if(i=='A004'or i=='A00E'or i=='A00G'or i=='A001')and GetUnitAbilityLevel(GetTriggerUnit(),'A00J')>0 then
         call StaticFieldDamage(GetTriggerUnit(),GetTriggerPlayer(),CreateGroup())
     endif
     return false
endfunction
function InitTrig_Static takes nothing returns nothing
     local trigger t=CreateTrigger()
     local integer i=0
     loop
         call TriggerRegisterPlayerUnitEvent(t,Player(i),EVENT_PLAYER_UNIT_SPELL_EFFECT,null)
         exitwhen i>14
         set i=i+1
     endloop
     call TriggerAddCondition(t,Condition(function Static))
     set t=null
endfunction


Делаю из воды вино, хожу по воде...


Сообщение отредактировал FEARKILLER - Понедельник, 09 Сентября 2013, 03:39:16
 

Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [Вопрос] Не работает способность на Джассе
  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz