function SDMS_g takes unit n returns nothing
call DestroyTrigger(udg_SDMS)
set udg_SDMS = CreateTrigger( )
call TriggerRegisterUnitEvent( udg_SDMS, n, EVENT_UNIT_DAMAGED )
call TriggerAddAction( udg_SDMS, function SDMS_Actions )
endfunction
function SDMS_Actions takes unit n returns nothing
call SDMS_d(n)
endfunction
function SDMS_d takes unit n returns nothing
call CreateTextTagUnitBJ( I2S(R2I(GetEventDamage())), n, 0, 10, 100, 100, 100, 0 )
call SetTextTagPermanentBJ( GetLastCreatedTextTag(), false )
call SetTextTagVelocityBJ( GetLastCreatedTextTag(), 64, 90 )
call SetTextTagLifespanBJ( GetLastCreatedTextTag(), 1.00 )
call SetTextTagFadepointBJ( GetLastCreatedTextTag(), 0.50 )
endfunction
Что тут не так? При запуске на проверку выкидывает из игры.
(это функции)

Принятый ответ

... будешь плодить ещё такие вопросы, получишь в лоб, читай статьи, я не вижу прогресса
Функции можно использовать только ниже их объявления
function parent takes...
endfunction

function child takes...
call parent(...)
endfunction
Далее,
call TriggerAddAction( udg_SDMS, function SDMS_Actions )
функция SDMS_Actions не должна ничего принимать и возвращать
С-Т-А-Т-Ь-И
все абсолютно...
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
28
10 лет назад
0
инициализации нету
1
15
10 лет назад
Отредактирован EnergyFrost
1
Если серьезно без лжи, то это одна сплошная ошибка(если брать еще в расчет утечечку) . Это просто пипец. Есть же наработки для урона...И еще. Мне кажется или ты вызываешь функцию, которая находится ниже?
function SDMS_Actions takes unit n returns nothing
call SDMS_d(n)
endfunction
function SDMS_d takes unit n returns nothing
0
28
10 лет назад
0
куча бж,утечек и не оптимально
EnergyFrost, согласен
0
9
10 лет назад
0
nvc123:
инициализации нету
Это не триггер,это функции.
(если требуется могу кинуть триггер)
EnergyFrost:
Если серьезно без лжи, то это одна сплошная ошибка(если брать еще в расчет утечечку) . Это просто пипец. Есть же наработки для урона...
Я хочу создать свою ибо наработки я не понимаю.
0
28
10 лет назад
Отредактирован nvc123
0
silence_AZ, и что?
весь код имеет инициализацию
короче скинь инит
0
9
10 лет назад
Отредактирован Sparrow
0
nvc123:
silence_AZ, и что?
весь код имеет инициализацию
короче скинь инит
Триггер в котором эти функции участвуют?
1
28
10 лет назад
1
и да
function SDMS_Actions takes unit n returns nothing
call SDMS_d(n)
endfunction
это функция запускается в отдельном потоке
она не может брать параметры
должно быть takes nothing
и это написано в статьях
0
15
10 лет назад
Отредактирован EnergyFrost
0
silence_AZ, так наработки для того и существуют, чтобы облегчить жизнь... Просто вляпал(копипаст) в карту и готово!
nvc123, ага, верно. Истину глаголишь!
2
28
10 лет назад
2
я бы сказал в чём ошибка но мне тогда варн кинут
0
9
10 лет назад
0
EnergyFrost:
silence_AZ, так наработки для того и существуют, чтобы облегчить жизнь... Просто вляпал(копипаст) в карту и готово!
nvc123, ага, верно. Истину глаголишь!
Там много лишнего для меня,мне половина всего что в этих наработках есть ненужно
1
15
10 лет назад
Отредактирован EnergyFrost
1
nvc123, хехехех :D
0
28
10 лет назад
0
silence_AZ, xgm.ru/p/wc3/jass_introduction
пока всё не прочитаешь даже не пиши сюда
silence_AZ, всё закрой вопрос
0
15
10 лет назад
0
silence_AZ, ну блин. Ты просто нам сюда функции влепил. Ты можешь хотя бы изъяснить свою идею. Где ты их хотел применять. А мы тебе подскажем, как лучше.
0
9
10 лет назад
0
EnergyFrost:
silence_AZ, ну блин. Ты просто нам сюда функции влепил. Ты можешь хотя бы изъяснить свою идею. Где ты их хотел применять. А мы тебе подскажем, как лучше.
вот триггер function Trig_sdmsss_Actions takes nothing returns nothing
local unit u = GetAttackedUnitBJ ()
call SDMS_g(u)
endfunction
===========================================================================
function InitTrig_sdmsss takes nothing returns nothing
set gg_trg_sdmsss = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_sdmsss, EVENT_PLAYER_UNIT_ATTACKED )
call TriggerAddAction( gg_trg_sdmsss, function Trig_sdmsss_Actions )
endfunction
1
21
10 лет назад
1
... будешь плодить ещё такие вопросы, получишь в лоб, читай статьи, я не вижу прогресса
Функции можно использовать только ниже их объявления
function parent takes...
endfunction

function child takes...
call parent(...)
endfunction
Далее,
call TriggerAddAction( udg_SDMS, function SDMS_Actions )
функция SDMS_Actions не должна ничего принимать и возвращать
С-Т-А-Т-Ь-И
все абсолютно...
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.