quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
Cosonic5, попробуй так:
((код Jass
function Trig_Rage_Gui_Conditions takes nothing returns boolean
return GetSpellAbilityId() == 'A0A7' endfunction function Trig_Rage_Gui_Func004002003 takes nothing returns boolean
return IsUnitEnemy(GetFilterUnit(), bj_groupEnumOwningPlayer) and GetUnitState(GetFilterUnit(), UNIT_STATE_LIFE) > 0.0 endfunction function Trig_Rage_Gui_Func006002 takes nothing returns nothing
call IssueTargetOrder( GetEnumUnit(), "attack", GetSpellAbilityUnit() ) endfunction function Trig_Rage_Gui_Actions takes nothing returns nothing
local unit attack = GetSpellAbilityUnit() local group g = CreateGroup () local boolexpr f set bj_groupEnumOwningPlayer = GetOwningPlayer(attack) set f = Condition (function Trig_Rage_Gui_Func004002003) call GroupEnumUnitsInRange(g, 400.00, GetUnitX(attack), GetUnitY(attack), f) call DestroyBoolExpr (f) call ForGroup( g, function Trig_Rage_Gui_Func006002 ) call GroupClear (g) call DestroyGroup(g) set f = null set attack = null set g = null endfunction ===========================================================================
function InitTrig_Rage_Jass takes nothing returns nothing set gg_trg_Rage_Jass = CreateTrigger( ) call TriggerRegisterAnyUnitEventBJ( gg_trg_Rage_Jass, EVENT_PLAYER_UNIT_SPELL_EFFECT ) call TriggerAddCondition( gg_trg_Rage_Jass, Condition( function Trig_Rage_Gui_Conditions ) ) call TriggerAddAction( gg_trg_Rage_Jass, function Trig_Rage_Gui_Actions ) endfunction ))
GetSpellAbilityUnit() как правило не работает в Handler'aх те конструкцией типо; function 000 takes nothing returns boolean тут GetSpellabolityUnit() не работает... endfunction Condition(function 000) quq_CCCP добавил: ADOLF, ну какой cJass? Тут заядлый гуишник не знает что такое boolExpr. он даже наверняка не имеет JGNP... |
13.04.2012, 15:17 | #21
+1/−1
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Klop
Папа римский
offline
Опыт:
13,006Активность: |
quq_CCCP:
там работает GetTriggerUnit() и GetSpellAbilityUnit() это одно и тоже
если в его случае т.е boolexpr создан непосредственно в функции TriggerActions а через FirstOfGroup и вообще ненужно делать boolexpr и переносить перменные |
13.04.2012, 15:19 | #22
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Cosonic5
Моймозггоритогнем
offline
Опыт:
13,584Активность: |
quq_CCCP, ты прав не имею=))
спс щас попробую скажу че да как. |
13.04.2012, 15:20 | #23
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
Как раз cJass позволяет сконцентрироваться на решение задачи и алгоритме, а не таких нелепых операциях, как вынесение условия в отдельную функцию или обнуление локальных переменной.
И да, группу перед удалением очищать не нужно. |
13.04.2012, 15:20 | #24
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
Klop, ну клоп, я предпочитаю использовать bj_GetOwningPlayer, bj_lastRestoredUnit и так далее, чтобы не вызывать по 10 раз одну и туже функцию... |
13.04.2012, 15:23 | #25
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Cosonic5
Моймозггоритогнем
offline
Опыт:
13,584Активность: |
quq_CCCP, нет проверил не работает( |
13.04.2012, 15:24 | #26
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Klop
Папа римский
offline
Опыт:
13,006Активность: |
quq_CCCP, хм..а вот ты не думаешь что в эту глобалку в другое время впишеться другой юнит использующий заклинание вместе и пойдёт косяк |
13.04.2012, 15:25 | #27
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
Klop, я раньше тоже так думал, что глобакли не юзать, то будет баг, нефига, практика показала что нечего подобного.... |
13.04.2012, 15:26 | #28
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
Нивкоем случае так поступать нельзя. Эти переменные не предназначены для этого. Они могут использовать другими частями кода. Хоть ПДСС и вроде как однопоточен, на самом деле бывают ситуации, когда один поток может останавливаться и запускаться другой. Что приведет вообще в очень труднонаходимым ошибкам. |
13.04.2012, 15:26 | #29
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
ADOLF, да да да, как к примеру они могут использоваться ели у меня в во всем коде нету Replase unit, CreateNunitsAnLoc... ну и ка кони могут быть использованы? а?
quq_CCCP добавил: ADOLF, а так же bj_lastCreatedHashTable ? я что инициализирую 1000 хеш таблицы с пмощью CreateHashTableBJ, а?, это смешено, так что тем у кого вся карта на jass нечего боятся их использовать... |
13.04.2012, 15:31 | #30
+0/−1
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
Вы просто немного не разбираетесь в вопросе. Используя их в одной способности - их уже нельзя будет использовать в любых других. Но их область видимости не ограничена - прямой путь к ошибкам.
Это все равно, что переодить дорогу на красный свет - первые разы ничего плохого, но однажды... |
13.04.2012, 15:32 | #31
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Cosonic5
Моймозггоритогнем
offline
Опыт:
13,584Активность: |
|
13.04.2012, 15:34 | #32
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
Cosonic5, опиши, что тебе вообще нужно от спелла?
DaeDR добавил: Чтобы при использовании все враги пошли на героя? |
13.04.2012, 15:37 | #33
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
ADOLF:
Это уже завесит от кососрукости автора, я не говрю что их нужно бездумно использовать, и какие поапло подходящие по типу, надо подобрать нужные и использовать так, чтобы небыло возможным их испльзование в 2 местах одновременно, еще не разу не было бага, у меня в моей карты, могу скинуть опен версию в лс, при условии неразглашения) |
13.04.2012, 15:37 | #34
+0/−1
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
108,439Активность: |
Конечно забыли. Я давно забыл, еще когда написал очень полезную статью:
Куда Вас и посылаю. |
13.04.2012, 15:37 | #35
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Cosonic5
Моймозггоритогнем
offline
Опыт:
13,584Активность: |
DaeDR, смотри применяем способность враги в радиусе 400 на 400 начинают Атаковать героя)) после 3 сек группа удаляется. |
13.04.2012, 15:38 | #36
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Klop
Папа римский
offline
Опыт:
13,006Активность: |
Cosonic5, сделай группу так
|
13.04.2012, 15:39 | #37
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
Cosonic5, А почему через 3 сек. группа удаляется? Сразу нельзя? |
13.04.2012, 15:39 | #38
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Cosonic5
Моймозггоритогнем
offline
Опыт:
13,584Активность: |
DaeDR, ну можно впринципе. |
13.04.2012, 15:40 | #39
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
Cosonic5, Вся ошибка была в том, что радиус ставится после координат)
» Код
|
13.04.2012, 15:47 | #40
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|