silence_AZ, ты все перепутал, лучше сначала сам прочитай внимательно ту статью. Если сделать как ты сказал, то компилятор даже сохранить не даст.
Sergant1000, расставил бы ты хоть комментарии, где что выполняется, и вообще, если из гуи конвертируешь, мог бы оптимизировать немного, и утечки убрать. По поводу вопроса - может быть цикл прерывается из за большого кол-ва выполняемых функций? Условие закрытия цикла (Zone[i]==null) выглядит сомнительно. Много у тебя таких ректов?
Обращаться можно только к функции, которая записана выше данной (т.е. создана раньше). Т.е. если функция 1_2 будет ниже чем 1С_1 - то обращаться к 1_2 из 1С_1 нельзя.
Ой туплю =)), прошу прощения
Только вопрос : Как ты собрался вызвать функцию 1С_1 из 1_2 если в функции 1_2 нет действия вызова функции 1С_1?
чтобы получить атакованного юнита по-моему надо использовать
GetTriggerUnit()
а для получения юнита который атаковал
GetEventDamageSource()
эти функции возвращают юнитов, т. е. переменным можно присваивать сразу эти функции.
Так же следует задать событие триггеру
это
EVENT_UNIT_ATTACKED
или
EVENT_UNIT_DAMAGED
это.
Ну и функции получения юнита - соответственно событию.
Я ни капельки не понял Сейчас напишу как я начал делать
ФУНКЦИЯ
function SDMS_Actions 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 Trig_sdmsss_Actions takes nothing returns nothing
set udg_unit = GetAttackedUnitBJ ()
call DestroyTrigger(udg_SDMS)
set udg_SDMS = CreateTrigger( )
call TriggerRegisterUnitEvent( udg_SDMS, udg_unit, EVENT_UNIT_DAMAGED )
call TriggerAddAction( udg_SDMS, function SDMS_d )
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
silence_AZ, что вам надо получить, кастера спелла или что, какого юнита вы пытались получить через триггер?
Я пытаюсь отловить полученные повреждения после нанесения удара(своим методом,потому что наработки я не понимаю.Я только сегодня узнал что такое джасс,и вот практикуюсь.)
Проще говоря систему показа нанесенного урона в виде плавающего текста(свою).
Если есть желание то вы объясните мне как это сделать.
Я не понял что вам нужно...
Опишите что вы хотите сделать и я скажу как это сделать.
Допустим у меня есть функция которая берет неизвестный юнит(takes unit u), то как ее вызвать так,что бы неизвестный юнит задавался локальным из триггера?
не знаю правильно ли понял, но наверное нужно
это
function someFun1 takes unit u returns nothing
//действия, к примеру:
SetUnitX(u, 0.)
SetUnitY(u, 0.)
endfunction
function triggerActionFunc takes nothing returns nothing
local unit u = someunit
call someFunc(u)
endfunction
//тут события и прочая бурда
берем юнита в функции триггера и с помощью функции двигаем его в центр карты
Именно это я пытался сделать но функция либо не вызывается либо игра выдает ошибку
Думаю, можно обойтись без тайлов.
Нужно сделать ето в JNGP.
Когда юзаеш способность, то сохраняєш координати точки, на какую юзнул способность (AbilityTarget),
тогда проверяєш тип проходимости для нее: если проходимо для летающих и не проходимо для пеших и проходимо для земноводных, то ето вода, тогда с некоторим шансом создаеш рибу.
Как бы объяснить то?
Событие
Юнит применяет способность
Условие
Применяемая способность равно "Ловить рыбу"
(вот тут задается условие где эта способность применяется,в данном случае это вода)
А вот как задать такое условие я не знаю
Короче суть в том что рыба будет появляться под ногами если способность применена на воде
Я хочу обратиться к автору этой темы.
Обращение:
Если уж ты начал писать тему,то дописывай ее до конца.(довольно каждая мелочь типа "Ну со стенами вы сами разберетесь" может оказаться кому-то важной тем более для новичков.Ведь нужно заботиться о каждом читателе.
Предложение:
А как же болота?А как же пустыня?А как же горы (на которых будут жить обитатели)? Или же тайга(хоть и тайга это практически тоже самое что и лес но все же текстуры разные и оформление тоже).Ну и на худой конец озера.
Это следовало бы дополнить,и статья красивей и людям полезно.
На счет скринов это в принципе тоже не мало важно (хотя-бы мелкий кусок примера того же леса) ведь большинство людей не хотят даже читать если нет скринов
Критика:
Статья бесподобна,моя оценка 8 из 10 (из за отсутствия текста указанного в теме например"Стены. Тут ничего сложного нет, разберётся любой." или "Лес. Без вступления." легче было о стенах вобще не упоминать если текста посвященного им нету.Ну и конечно из за отсутствия скринов.
Личная критика:
Автор действительно хорош,но даже мелочи иногда бывают важными .Респект !
» WarCraft 3 / функция
call 1С_1(юнит которого берет функция)
» WarCraft 3 / функция
Ой туплю =)), прошу прощения
Только вопрос : Как ты собрался вызвать функцию 1С_1 из 1_2 если в функции 1_2 нет действия вызова функции 1С_1?
» WarCraft 3 / Локальный юнит
Ред. Sparrow
» WarCraft 3 / функция
Поменяй их местами
Или внимательно прочитай вот это
Ред. Sparrow
» WarCraft 3 / Локальный юнит
ФУНКЦИЯ
function SDMS_Actions 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 Trig_sdmsss_Actions takes nothing returns nothing
set udg_unit = GetAttackedUnitBJ ()
call DestroyTrigger(udg_SDMS)
set udg_SDMS = CreateTrigger( )
call TriggerRegisterUnitEvent( udg_SDMS, udg_unit, EVENT_UNIT_DAMAGED )
call TriggerAddAction( udg_SDMS, function SDMS_d )
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
Ред. Sparrow
» WarCraft 3 / Локальный юнит
Проще говоря систему показа нанесенного урона в виде плавающего текста(свою).
Если есть желание то вы объясните мне как это сделать.
» WarCraft 3 / Локальный юнит
» WarCraft 3 / Система рыбалки,помогите!
PhysCraft: А можешь по подробней о JNGP?
AligarH: Тьфу ты извиняюсь,туплю
» WarCraft 3 / Система рыбалки,помогите!
» WarCraft 3 / Система рыбалки,помогите!
Событие
Юнит применяет способность
Условие
Применяемая способность равно "Ловить рыбу"
(вот тут задается условие где эта способность применяется,в данном случае это вода)
А вот как задать такое условие я не знаю
Короче суть в том что рыба будет появляться под ногами если способность применена на воде
» WarCraft 3 / Система рыбалки,помогите!
Я прошу подсказать правильный евент
» WarCraft 3 / Мультибордные танчики v0.6
Падаю со стула=))
» WarCraft 3 / Система реалистичного обзора
» WarCraft 3 / Как делать красивый рельеф
Обращение:
Если уж ты начал писать тему,то дописывай ее до конца.(довольно каждая мелочь типа "Ну со стенами вы сами разберетесь" может оказаться кому-то важной тем более для новичков.Ведь нужно заботиться о каждом читателе.
Предложение:
А как же болота?А как же пустыня?А как же горы (на которых будут жить обитатели)? Или же тайга(хоть и тайга это практически тоже самое что и лес но все же текстуры разные и оформление тоже).Ну и на худой конец озера.
Это следовало бы дополнить,и статья красивей и людям полезно.
На счет скринов это в принципе тоже не мало важно (хотя-бы мелкий кусок примера того же леса) ведь большинство людей не хотят даже читать если нет скринов
Критика:
Статья бесподобна,моя оценка 8 из 10 (из за отсутствия текста указанного в теме например"Стены. Тут ничего сложного нет, разберётся любой." или "Лес. Без вступления." легче было о стенах вобще не упоминать если текста посвященного им нету.Ну и конечно из за отсутствия скринов.
Личная критика:
Автор действительно хорош,но даже мелочи иногда бывают важными .Респект !