14

» WarCraft 3 / почему не работает Изменение структуры событие

хорошо но это не есить обезателино если нету кучю взоимосвязаного кода у меня само событие не пашет
function F_SPELL_ACT takes nothing returns nothing
if ( IsUnitInGroup(GetTriggerUnit(), udg_OtratALL[94]) == false ) {
SpellLink.execute(GetSpellAbilityId(), 0)
set udg_TrigerUnit = GetTriggerUnit()
set udg_IndexPlayer = GetUnitUserData(udg_TrigerUnit)
call DisplayTextToForce( GetPlayersAll(), I2S(udg_IndexPlayer) ) Вот Эта часить кода не выполяеца
}
endfunction
===========================================================================
function SPELL_ACT takes nothing returns nothing
local trigger t = CreateTrigger()
call TriggerRegisterUnitEvent(t,GetTriggerUnit(),EVENT_UNIT_SPELL_FINISH)
call TriggerAddAction(t, function F_SPELL_ACT )
set t = null
endfunction
14

» WarCraft 3 / почему не работает Изменение структуры событие

да я знаю изначалино у меня 10 там стояло
все работала а я добавил вот это и стала не работати GetPlayerId(GetOwningPlayer(GetTriggerUnit())) почему кто знает
14

» WarCraft 3 / почему не работает Изменение структуры событие

call TriggerRegisterAnyUnitEventBJ по сикрету вот это
function InitTrig_SPELL_END takes nothing returns nothing
local trigger t = CreateTrigger()
local integer i = 0
loop
call TriggerRegisterPlayerUnitEvent(t, Player(i), EVENT_PLAYER_UNIT_SPELL_FINISH, null)
set i = i + 1
exitwhen i == 10
endloop
call TriggerAddAction(t, function SPELL_END )
set t = null
endfunction
развернутый врянт вот этого call TriggerRegisterAnyUnitEventBJ
и ана переберает по цыклу и выдает юнита и плеира а мне плеер не нужен тока юнит
14

» WarCraft 3 / почему не работает Изменение структуры событие

хочеш сказать нужно нижы
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_SPELL_FINISH)
или
call TriggerRegisterUnitEvent(t,GetTriggerUnit() ,EVENT_UNIT_SPELL_FINISH) так
я думал тригер создаст
не нифига всеравно не кастуюца
14

» WarCraft 3 / почему не работает Изменение структуры событие

спс
а вот тут что не так
function SPELL_ACT takes nothing returns nothing
if ( IsUnitInGroup(GetTriggerUnit(), udg_OtratALL[94]) == false ) {
SpellLink.execute(GetSpellAbilityId(), 0)
set udg_TrigerUnit = GetTriggerUnit()
set udg_IndexPlayer = GetUnitUserData(udg_TrigerUnit)
call DisplayTextToForce( GetPlayersAll(), I2S(udg_IndexPlayer) )
}
endfunction
===========================================================================
function InitTrig_SPELL_ACT takes nothing returns nothing
local trigger t = CreateTrigger()
local unit u = GetTriggerUnit()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_SPELL_FINISH)
call TriggerAddAction(t, function SPELL_ACT )
set t = null
set u = null
endfunction
14

» WarCraft 3 / почему не работает Изменение структуры событие

function SPELL_ACT takes nothing returns nothing
if ( IsUnitInGroup(GetTriggerUnit(), udg_OtratALL[94]) == false ) {
SpellLink.execute(GetSpellAbilityId(), 0)
set udg_TrigerUnit = GetTriggerUnit()
set udg_IndexPlayer = GetUnitUserData(udg_TrigerUnit)
call DisplayTextToForce( GetPlayersAll(), I2S(udg_IndexPlayer) )
}
endfunction
===========================================================================
function InitTrig_SPELL_ACT takes nothing returns nothing
local trigger t = CreateTrigger()
local integer i = 0
loop
call TriggerRegisterPlayerUnitEvent(t, Player(i), EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
set i = i + 1
exitwhen GetPlayerId(GetOwningPlayer(GetTriggerUnit())) == i
endloop
call TriggerAddAction(t, function SPELL_ACT )
set t = null
endfunction
вот что ана делать эта все
14

» WarCraft 3 / почему не работает Изменение структуры событие

а вот так почему фаталить
function InitTrig_SPELL_END takes nothing returns nothing
local trigger t = CreateTrigger()
local integer i =GetPlayerId(GetOwningPlayer(GetTriggerUnit()))
call TriggerRegisterPlayerUnitEvent(t,Player(i), EVENT_PLAYER_UNIT_SPELL_FINISH, null)
call TriggerAddAction(t, function SPELL_END )
set t = null
endfunction
14

» WarCraft 3 / почему не работает Изменение структуры событие

нет ано может быть и для других но я хочю без цыкла определять владелица
ну или прекрашять как тока активатар событие нашолся
14

» WarCraft 3 / почему не работает Изменение структуры событие

хорошо а если
TriggerRegisterPlayerUnitEvent(t, Player(0), EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
и только потом i=i+1
так
14

» WarCraft 3 / почему не работает Изменение структуры событие

как если loop
call TriggerRegisterPlayerUnitEvent(t, Player(i), EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
set i = i + 1
exitwhen i == GetPlayerId(GetOwningPlayer(GetTriggerUnit()))
сначало тригер потом + 1
14

» WarCraft 3 / почему не работает Изменение структуры событие

ну как он может быть бесконечным если 1 пребовляеца сначало проверка событие потом +1 и ваше почему нелизя вместо цыкла от 0 до 10 зделать нахождение юнита сразу
я ставил начало и с -1 нефига
14

» WarCraft 3 / как найти айди юнита

жали а есить возможносить добавить в юнита дополнителиный элемент типа целочисленая и задать например ей номер 1 и при обрашение к этому юниту получить доступ к этой переменой как к здоровю или мане
14

» WarCraft 3 / как найти айди юнита

я создавал массив который сортеровал по игрококу а сечас решыл расшырить арсортимент иза воскрешение и призывов всяких
перепачинений и копирование
скажыти есть возможностить указать какой будет хендол у создоного обекта
или както приписать к нему не знаю целочисленое к которому можно будет узнать при обрашение к юниту
Загруженные файлы
14

» WarCraft 3 / как найти айди юнита

мне надо чтобы один и тотжы игрок мог исполизовать одного и товожы юнита в каличестве до 7 юнитов примерно
и способности одного не перебевали способности другова
способности с таймерами
14

» WarCraft 3 / как найти айди юнита

а может предложыть еше
или можете готовые врянты предложыть чтобы в приделах 100 создаваца максимум могло
или есить команда на изменение хендола юнита
14

» WarCraft 3 / как найти айди юнита

а пример можеш написать далише я додумаю
одна из проблем я не как не могу правелиные параметры вписать в фунцую по причини малого количества знаний
всё я додумался set udg_IndexPlayer = GetHandleId(udg_TrigerUnit)-1040000
14

» WarCraft 3 / как найти айди юнита

RAW CODE что это
RAW CODE это код который отвечает за тип юнита
но мне нужно узнать не тип а юнит ID
тип юнита можно и в редактори обектов узнать а ID юнита для каждого юнита своё
14

» WarCraft 3 / Мне нужно Сохранить точку Кругом

Мне нужно записать в переменную точку куда нажал мышкой игрок Юнит в радиусе 1200 от дами юнита в радиосе круга квадрат не подходит