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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [Вопрос] Fatal Error в заклинании
[Вопрос] Fatal Error в заклинании
SreziДата: Понедельник, 04 Июня 2012, 17:44:48 | Сообщение # 1
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
Создал абилку, в мультиплеере при применении этой абилки игра выдает Fatal Error.
Смысл абилки: цепной хил.
Кто найдет ошибку, пожалуйста отпишитесь

Code
function Trig_ChainHeal_Conditions takes nothing returns boolean
return GetSpellAbilityId() == 'A05X'
endfunction

function healka takes unit target,real hp returns nothing
call SetUnitState(target, UNIT_STATE_LIFE, GetUnitState(target, UNIT_STATE_LIFE) + hp)
call Trig_Dead_Actions(target,"|cff00ff00+" + I2S(R2I(hp)),10,96,GetRandomReal(60.00, 120.00))
endfunction

function DCL takes nothing returns nothing
local integer id=GetHandleId(GetExpiredTimer())
local real alpha = LoadReal(udg_Hash,id,2)
if alpha<=0 then
     call DestroyLightning(LoadLightningHandle(udg_Hash,id,1))
     call DestroyTimer(GetExpiredTimer())
     call FlushChildHashtable(udg_Hash,id)
else
     call SetLightningColor(LoadLightningHandle(udg_Hash,id,1),0.25,0.25,1.,alpha)
     call SaveReal(udg_Hash,id,2,alpha-0.1)
endif
endfunction

function LNT takes nothing returns nothing
local timer t=GetExpiredTimer()
local timer tl
local integer id=GetHandleId(t)
local unit u = LoadUnitHandle(udg_Hash,id,1)
local unit ut=LoadUnitHandle(udg_Hash,id,2)
local lightning l=LoadLightningHandle(udg_Hash,id,3)
local lightning l2
local group g=CreateGroup()
local unit e
local unit euf=null
local integer countTarget=LoadInteger(udg_Hash,id,4)
local real x=GetWidgetX(ut)
local real y=GetWidgetY(ut)
local real x1
local real y1
local real i=10
local real z = GetLocationZ(GetUnitLoc(ut))+i
local real z1 = GetLocationZ(GetUnitLoc(euf))+i
local real heal = LoadReal(udg_Hash,id,5)

     call GroupEnumUnitsInRange(g,x,y,400,null)
         loop         
             set e=FirstOfGroup(g)
             exitwhen e==null or euf!=null
              if IsUnitEnemy(e,GetOwningPlayer(u)) == false and GetUnitState(e, UNIT_STATE_LIFE) > 0.00 and IsUnitType(e, UNIT_TYPE_HERO) == true and IsUnitInGroup(e,udg_CH)==false then
                 set euf=e  
              endif
             call GroupRemoveUnit(g,e)     
         endloop
          
set x=GetLocationX(GetUnitLoc(ut))+i
set y=GetLocationY(GetUnitLoc(ut))+i
set x1=GetLocationX(GetUnitLoc(euf))+i
set y1=GetLocationY(GetUnitLoc(euf))+i

     if countTarget>0 and euf!=null then
         set tl=CreateTimer()
         call SaveLightningHandle(udg_Hash,GetHandleId(tl),1,l)
         call SaveReal(udg_Hash,GetHandleId(tl),2,1)
         call TimerStart(tl,.05,true,function DCL)
         call healka(euf,heal)
         call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl",euf,"origin"))
         set l2=AddLightningEx("HWPB",true,x,y,z,x1,y1,z1)
         call SetLightningColor(l2,0.25,0.25,1.,1)
         call SaveLightningHandle(udg_Hash,id,3,l2)
         call SaveInteger(udg_Hash,id,4,countTarget-1)
         call SaveUnitHandle(udg_Hash,id,2,euf)
     else
         set tl=CreateTimer()
         call SaveLightningHandle(udg_Hash,GetHandleId(tl),1,l)
         call SaveReal(udg_Hash,GetHandleId(tl),2,1)
         call TimerStart(tl,0.10,true,function DCL)
         call GroupClear(udg_CH)
         call DestroyTimer(t)
     endif
set t=null
set tl=null
set u=null
set ut=null
set l=null
set l2=null
set g=null
set e=null
set euf=null
endfunction

function Trig_ChainHeal_Actions takes nothing returns nothing
local timer t=CreateTimer()
local integer id=GetHandleId(t)
local unit u=GetSpellAbilityUnit()
local unit ut=GetSpellTargetUnit()
local lightning l
local real i = 10
local real x=GetLocationX(GetUnitLoc(u))+i
local real y=GetLocationY(GetUnitLoc(u))+i
local real z=GetLocationZ(GetUnitLoc(u))+i
local real x1=GetLocationX(GetUnitLoc(ut))+i
local real y1=GetLocationY(GetUnitLoc(ut))+i
local real z1=GetLocationZ(GetUnitLoc(ut))+i
local real heal = (15 + (0.10 * GetHeroInt(u,true) * GetUnitAbilityLevel(u,'A05X') ) )  
call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl",ut,"origin"))
     call GroupAddUnit(udg_CH,ut)
     set l=AddLightningEx("HWPB",true,x,y,z,x1,y1,z1)
     call SetLightningColor(l,0.25,0.25,1.,1)
     call healka(ut,heal)
     call SaveUnitHandle(udg_Hash,id,1,u)
     call SaveUnitHandle(udg_Hash,id,2,ut)
     call SaveLightningHandle(udg_Hash,id,3,l)
     call SaveInteger(udg_Hash,id,4,3)
     call SaveReal(udg_Hash,id,5,heal)
     call TimerStart(t,0.15,true,function LNT)
set t=null
set u=null
set ut=null
set l=null
endfunction

//===========================================================================
function InitTrig_ChainHeal takes nothing returns nothing
local trigger t = CreateTrigger(  )
call TriggerRegisterPlayerUnitEvent(t, Player(0),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerRegisterPlayerUnitEvent(t, Player(1),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerRegisterPlayerUnitEvent(t, Player(2),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerRegisterPlayerUnitEvent(t, Player(3),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerRegisterPlayerUnitEvent(t, Player(4),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerRegisterPlayerUnitEvent(t, Player(5),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerRegisterPlayerUnitEvent(t, Player(6),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerRegisterPlayerUnitEvent(t, Player(7),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerRegisterPlayerUnitEvent(t, Player(8),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerRegisterPlayerUnitEvent(t, Player(9),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerAddCondition(t, Condition( function Trig_ChainHeal_Conditions ) )
call TriggerAddAction(t, function Trig_ChainHeal_Actions )
endfunction



Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

SirNikolasДата: Понедельник, 04 Июня 2012, 18:26:27 | Сообщение # 2
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Quote (Srezi)
call Trig_Dead_Actions(target,"|cff00ff00+" + I2S(R2I(hp)),10,96,GetRandomReal(60.00, 120.00))
Можно код?


 

SreziДата: Понедельник, 04 Июня 2012, 18:32:11 | Сообщение # 3
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
я это функция "плавающего текста". Она в полном порядке. Проверено.

Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

SirNikolasДата: Понедельник, 04 Июня 2012, 18:39:20 | Сообщение # 4
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
В синглплеере все нормально?

 

SreziДата: Понедельник, 04 Июня 2012, 18:41:29 | Сообщение # 5
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
ага. а в мультиплеере фатал вылетает

Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

ctpaxmДата: Понедельник, 04 Июня 2012, 21:52:43 | Сообщение # 6
7 уровень
Группа: Проверенные
Сообщений: 418
Награды: 0
Репутация: 60
Блокировки:
Quote (Srezi)
call Trig_Dead_Actions(target,"|cff00ff00+" + I2S(R2I(hp)),10,96,GetRandomReal(60.00, 120.00))

а не будет лучше сразу R2S?


Dead Girls can't say NOT!
Делаю свой ORPG проект, нужны триггерщики(JASS-еры) и идейщики...
Все подробности в ЛС


Сообщение отредактировал ctpaxm - Понедельник, 04 Июня 2012, 21:52:54
 

SreziДата: Понедельник, 04 Июня 2012, 21:54:35 | Сообщение # 7
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
Quote (ctpaxm)
а не будет лучше сразу R2S?


так задумано, долго обьяснять почему именно так))
Не парься


Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

Ty3uKДата: Понедельник, 04 Июня 2012, 21:56:12 | Сообщение # 8
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
тут куча недочетов, но вывод Р2С даст число с десятичными знаками. в итоге их можно вырезать через сабстринг или предварительно конвертнуть в инт, как тут и сделанно

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

SreziДата: Понедельник, 04 Июня 2012, 22:24:00 | Сообщение # 9
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
Quote (Ty3uK)
тут куча недочетов, но вывод Р2С даст число с десятичными знаками. в итоге их можно вырезать через сабстринг или предварительно конвертнуть в инт, как тут и сделанн


Вместо того, чтобы говорить то, что я итак сам знаю, лучше скажи из-за чего Fatal Error вылетает ??)))


Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

SirNikolasДата: Вторник, 05 Июня 2012, 10:49:44 | Сообщение # 10
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Quote (Ty3uK)
в итоге их можно вырезать через сабстринг или предварительно конвертнуть в инт, как тут и сделано
А еще можно R2SW(hp, 0, 0)
Srezi, почитай.


 

SreziДата: Вторник, 05 Июня 2012, 13:58:12 | Сообщение # 11
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
Quote (SirNikolas)
А еще можно R2SW(hp, 0, 0) Srezi, почитай.


Думал "локал" не будет вызывать фатал еррор...
Лана тему оф, никто не знает.


Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

DragoNДата: Среда, 06 Июня 2012, 12:26:00 | Сообщение # 12
Инквизитор
Группа: Стримеры
Сообщений: 4348
Награды: 7
Репутация: 2776
Блокировки:
в какой момнт фатал, срази при клике на абилку или через некоторое время?

El Psy Congroo
 

SreziДата: Среда, 06 Июня 2012, 13:08:53 | Сообщение # 13
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
Через 0.5 сек после клика абилки

Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

DragoNДата: Среда, 06 Июня 2012, 17:34:50 | Сообщение # 14
Инквизитор
Группа: Стримеры
Сообщений: 4348
Награды: 7
Репутация: 2776
Блокировки:
Quote (Srezi)
Через 0.5 сек после клика абилки

засекал? trollface
добавь отладочные сообщения, легче будет выцепить проблемный участок или пиши всё в лог


El Psy Congroo
 

SreziДата: Среда, 06 Июня 2012, 19:34:07 | Сообщение # 15
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
Quote (DragoN)
засекал? добавь отладочные сообщения, легче будет выцепить проблемный участок или пиши всё в лог


че тут засекать. герой тыкает абилку, на каст способности дается 0.55 сек, так как на основе канала, а там прописывается время.

кастанул, вылетел.

в чем проблема хз.


Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

Ty3uKДата: Среда, 06 Июня 2012, 20:16:15 | Сообщение # 16
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
после каждого действия выводи циферку. на какой вылетит - там и ошибка
это простейший дебаг


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

SirNikolasДата: Четверг, 07 Июня 2012, 06:34:04 | Сообщение # 17
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Quote (Ty3uK)
после каждого действия выводи циферку. на какой вылетит - там и ошибка
Не получится. Вывод в консоль (прошу прощения, на экран) производится после остановки потока. Т. е. для того, чтобы отлаживать таким методом, нужно после каждого сообщения вставлять TriggerSleepAction(.0). Сам понимаешь, чревато еще большими багами.
Но попробовать можно.


 

Ty3uKДата: Четверг, 07 Июня 2012, 07:14:09 | Сообщение # 18
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
можно и без этого, я же как-то выводил (:

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

kapa6acvlkДата: Четверг, 07 Июня 2012, 23:18:32 | Сообщение # 19
Группа: Проверенные
Сообщений: 612
Награды: 0
Репутация: 361
Блокировки:
Используя приведенный код, выкинув из него функцию Trig_Dead_Actions, немного пофиксив, получилось следующее:
Code
function Trig_ChainHeal_Conditions takes nothing returns boolean
     return GetSpellAbilityId() == 'AHtb'
endfunction

function healka takes unit target,real hp returns nothing
     call SetUnitState(target, UNIT_STATE_LIFE, GetUnitState(target, UNIT_STATE_LIFE) + hp)
endfunction

function DCL takes nothing returns nothing
     local timer t = GetExpiredTimer()
     local integer id=GetHandleId(t)
     local real alpha = LoadReal(udg_Hash,id,2)
     if alpha<=0. then
         call DestroyLightning(LoadLightningHandle(udg_Hash,id,1))
         call DestroyTimer(t)
         call FlushChildHashtable(udg_Hash,id)
     else
         call SetLightningColor(LoadLightningHandle(udg_Hash,id,1),0.25,0.25,1.,alpha)
         call SaveReal(udg_Hash,id,2,alpha-0.1)
     endif
     set t = null
endfunction

function LNT takes nothing returns nothing
     local timer t=GetExpiredTimer()
     local timer tl = null
     local integer id=GetHandleId(t)
     local unit u = LoadUnitHandle(udg_Hash,id,1)
     local unit ut=LoadUnitHandle(udg_Hash,id,2)
     local lightning l=LoadLightningHandle(udg_Hash,id,3)
     local lightning l2 = null
     local group g=CreateGroup()
     local unit e = null
     local unit euf=null
     local integer countTarget=LoadInteger(udg_Hash,id,4)
     local real x=GetWidgetX(ut)
     local real y=GetWidgetY(ut)
     local real x1
     local real y1
     local real i=10
     local real heal = LoadReal(udg_Hash,id,5)
     call GroupEnumUnitsInRange(g,x,y,400,null)
     loop
         set e=FirstOfGroup(g)
         exitwhen e==null
         if IsUnitAlly(e,GetOwningPlayer(u)) and GetUnitState(e, UNIT_STATE_LIFE) > 1.00 and IsUnitType(e, UNIT_TYPE_HERO) and e != ut then
             set euf=e
             exitwhen true
         endif
         call GroupRemoveUnit(g,e)
     endloop
     set x=GetUnitX(ut)+i
     set y=GetUnitY(ut)+i
     set x1=GetUnitX(euf)+i
     set y1=GetUnitY(euf)+i
     if countTarget>0 and euf!=null then
         set tl=CreateTimer()
         call SaveLightningHandle(udg_Hash,GetHandleId(tl),1,l)
         call SaveReal(udg_Hash,GetHandleId(tl),2,1)
         call TimerStart(tl,.05,true,function DCL)
         call healka(euf,heal)
         call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl",euf,"origin"))
         set l2=AddLightningEx("HWPB",true,x,y,0.0,x1,y1,0.0)
         call SetLightningColor(l2,0.25,0.25,1.,1)
         call SaveLightningHandle(udg_Hash,id,3,l2)
         call SaveInteger(udg_Hash,id,4,countTarget-1)
         call SaveUnitHandle(udg_Hash,id,2,euf)
     else
         set tl=CreateTimer()
         call SaveLightningHandle(udg_Hash,GetHandleId(tl),1,l)
         call SaveReal(udg_Hash,GetHandleId(tl),2,1)
         call TimerStart(tl,0.10,true,function DCL)
         call DestroyTimer(t)
     endif
     call DestroyGroup(g)
     set t=null
     set tl=null
     set u=null
     set ut=null
     set l=null
     set l2=null
     set g=null
     set e=null
     set euf=null
endfunction

function Trig_ChainHeal_Actions takes nothing returns nothing
     local timer t=CreateTimer()
     local integer id=GetHandleId(t)
     local unit u=GetSpellAbilityUnit()
     local unit ut=GetSpellTargetUnit()
     local lightning l = null
     local real i = 10
     local real x=GetUnitX(u)+i
     local real y=GetUnitY(u)+i
     local real x1=GetUnitX(ut)+i
     local real y1=GetUnitY(ut)+i
     local real heal = 15 + (0.10 * GetHeroInt(u,true))
     call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl",ut,"origin"))
     set l=AddLightningEx("HWPB",true,x,y,0.0,x1,y1,0.0)
     call SetLightningColor(l,0.25,0.25,1.,1)
     call healka(ut,heal)
     call SaveUnitHandle(udg_Hash,id,1,u)
     call SaveUnitHandle(udg_Hash,id,2,ut)
     call SaveLightningHandle(udg_Hash,id,3,l)
     call SaveInteger(udg_Hash,id,4,3)
     call SaveReal(udg_Hash,id,5,heal)
     call TimerStart(t,0.15,true,function LNT)
     set t=null
     set u=null
     set ut=null
     set l=null
endfunction

//===========================================================================
function InitTrig_ChainHeal takes nothing returns nothing
     local trigger t = CreateTrigger(  )
     call TriggerRegisterPlayerUnitEvent(t, Player(0),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerRegisterPlayerUnitEvent(t, Player(1),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerRegisterPlayerUnitEvent(t, Player(2),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerRegisterPlayerUnitEvent(t, Player(3),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerRegisterPlayerUnitEvent(t, Player(4),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerRegisterPlayerUnitEvent(t, Player(5),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerRegisterPlayerUnitEvent(t, Player(6),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerRegisterPlayerUnitEvent(t, Player(7),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerRegisterPlayerUnitEvent(t, Player(8),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerRegisterPlayerUnitEvent(t, Player(9),  EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
     call TriggerAddCondition(t, Condition( function Trig_ChainHeal_Conditions ) )
     call TriggerAddAction(t, function Trig_ChainHeal_Actions )
endfunction


Только что проверил в мультиплеере, вылетов нет, проблем нет, хилит норм. Только не забудь множитель уровня абилы вернуть, я его убрал. Да и кстати, зачем группа CH??? Я ее тоже выпилил.



Как говориться, не обязательно есть всю кучу говна, чтобы понять, что она однородна.
© Александр Зорич
 

Ty3uKДата: Пятница, 08 Июня 2012, 09:08:12 | Сообщение # 20
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
GetUnitState(target, UNIT_STATE_LIFE) замени на GetWidgetLife()
SetUnitState() замени на SetWidgetLife()
лучше юзать одну глобальную группу, чем несколько раз создавать локальную


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

kapa6acvlkДата: Пятница, 08 Июня 2012, 11:28:39 | Сообщение # 21
Группа: Проверенные
Сообщений: 612
Награды: 0
Репутация: 361
Блокировки:
Ty3uK, что вернет GetWidgetLife() ?? Текущее значение здоровья?


Как говориться, не обязательно есть всю кучу говна, чтобы понять, что она однородна.
© Александр Зорич
 

Ty3uKДата: Пятница, 08 Июня 2012, 11:46:45 | Сообщение # 22
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
kapa6acvlk, ну из названия выходит, что да

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

SreziДата: Пятница, 08 Июня 2012, 12:18:27 | Сообщение # 23
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
Quote (kapa6acvlk)
Используя приведенный код, выкинув из него функцию Trig_Dead_Actions, немного пофиксив, получилось следующее:

Это плавающий тект, показывающий (Кол-во) исцеленного здоровья)

Только что проверил в мультиплеере, вылетов нет, проблем нет, хилит норм. Только не забудь множитель уровня абилы вернуть, я его убрал. Да и кстати, зачем группа CH??? Я ее тоже выпилил.


Чтобы волна не шла по одним и тем же юнитам.


Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

Ty3uKДата: Пятница, 08 Июня 2012, 12:38:21 | Сообщение # 24
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Srezi, сохранил на хэндл юнита в ячейку с хэндлом юнита бульку и проверяй ее
если правда - значит прошла


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

SreziДата: Пятница, 08 Июня 2012, 14:05:12 | Сообщение # 25
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
Quote (Ty3uK)
Srezi, сохранил на хэндл юнита в ячейку с хэндлом юнита бульку и проверяй ее если правда - значит прошла


тему уже давно пора закрывать, я починил...


Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [Вопрос] Fatal Error в заклинании
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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