XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Xoniks

offline
Опыт: 1,858
Активность:
Не правильно работает триггер
» code
((код Jass
scope Skill3 initializer Init

private function Conditions takes nothing returns boolean
local unit u = GetTriggerUnit( )

if GetSpellAbilityId( ) == 'AHbz' then
local unit c = CreateUnitAtLoc(GetOwningPlayer(u), 'h001', GetSpellTargetLoc( ), 0.)
call UnitApplyTimedLife(c, 'BTLF', 0.5)
call IssueTargetOrder(c, "frostnova", c)
endif
set u = null
set c = null
return false
endfunction

private function Init 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(12),EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call TriggerAddCondition(t, Condition(function Conditions))
set t = null
endfunction
endscope
))
почему то наносит урон определенному юниту 1 раз о_О как это получилось
Старый 18.03.2012, 12:48
DaeDR

offline
Опыт: 8,074
Активность:
Xoniks, возник вопрос: почему дамми пускает нову на себя?
DaeDR добавил:
А по делу: вроде все нормально
DaeDR добавил:
почему то наносит урон определенному юниту 1 раз о_О как это получилось
Может пока действует бафф, то повторный урон невозможен? я даже не знаю
Старый 18.03.2012, 13:11
Nerevar
I'll be back!
offline
Опыт: 18,352
Активность:
У дамми есть москит?
И что значит 1 раз? там ведь нова 1 раз кастуется
и у тебя была утечка точки
» Code
function Conditions takes nothing returns boolean
local unit c	 
if GetSpellAbilityId() == 'AHbz' then
	set c=CreateUnit(GetOwningPlayer(GetTriggerUnit()), 'h001', GetSpellTargetX(),GetSpellTargetY(),0.)
  	call UnitApplyTimedLife(c, 'BTLF', 0.5)
  	call IssueTargetOrder(c, "frostnova", c)
endif
set c = null
return false
endfunction
Старый 18.03.2012, 13:12
Xoniks

offline
Опыт: 1,858
Активность:
Нет у дамми нет москита, он здание и нуязвимый, т.к. москит сам на себя не кастутет, 1 раз значит кастанул нову 1 раз отняло если по этому же юниту кастануть 2 раз то не наносит урон но если по другому юниту ударить после то тоже 1 раз нанесет при повторных кастах не наносит
Xoniks добавил:
DaeDR, нову кастит на себя чтобы урон по области был равномерным
Старый 18.03.2012, 13:25
BizzaroFukuro
MWS Hardcore
offline
Опыт: 2,178
Активность:
Мапу в студию.
Старый 18.03.2012, 13:26
Xoniks

offline
Опыт: 1,858
Активность:
Автор не я, я лишь переделал на Jass
Xoniks добавил:
Nerevar, там как бы не точка а центр области каста же и она не подсвечена красным откуда утечки
Прикрепленные файлы
Тип файла: w3x [Jass]CrystalNova.w3x (45.9 Кбайт, 2 просмотров )
Старый 18.03.2012, 13:42
BizzaroFukuro
MWS Hardcore
offline
Опыт: 2,178
Активность:
В скилле "Crystal Nova" поставь "Время подготовки заклинания: 1.00".
У меня после этого всё нормально стало.
А ваще связано это с тем, что скилл сделан на основе Бурана, а для него сделано так, что один буран не накладывается на другой (то же самое с огненным дождём).
Старый 18.03.2012, 13:48
DaeDR

offline
Опыт: 8,074
Активность:
она не подсвечена красным, откуда утечки
Хм, не знал, что утечки подсвечиваются красным)
Любое обращение к точке, без последующего ее удаления - утечка!
Старый 18.03.2012, 13:48
Xoniks

offline
Опыт: 1,858
Активность:
DaeDR, красным BJ функции подсвечиваются, а они вызывают утечки, хм а если я буду делать "локальную точку" и потом её обнулять?
Старый 18.03.2012, 13:55
BizzaroFukuro
MWS Hardcore
offline
Опыт: 2,178
Активность:
Xoniks:
хм а если я буду делать "локальную точку" и потом её обнулять?
Тебе уже сказали как лучше.
Старый 18.03.2012, 13:57
DaeDR

offline
Опыт: 8,074
Активность:
Xoniks, Выделяются только BJ-функции (которые не всегда создают утечки, но использовать их нерационально)
если я буду делать "локальную точку" и потом её обнулять?
То все будет норм. только не просто обнулить, а удалить [call RemoveLocation(loc)] и обнулить.
DaeDR добавил:
И как сказал BizzaroFukuro и Nerevar, лучше вообще через x, y создавать и не париться
Старый 18.03.2012, 14:00
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 21:38.