Сейчас 01:58:32 Пятница, 19 апреля, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » Ошибка в триггере
Ошибка в триггере
TitansДата: Среда, 29 Июня 2011, 17:38:02 | Сообщение # 26
6 уровень
Группа: Проверенные
Сообщений: 167
Награды: 0
Репутация: 77
Блокировки:
Quote (lawson)
Не фига себе замутил.

Что этим вы хотите сказать?
 

BinGOДата: Четверг, 30 Июня 2011, 06:12:45 | Сообщение # 27
Группа: Модераторы
Сообщений: 2906
Награды: 8
Блокировки:
call TimerStart(t,0.2,true,function T03)

call TimerStart(t,0.02,true,function T02)

Таймеры на разное время, я так думаю поэтому. Регенящий в 10 раз медленнее дамажащего работает.
 

TitansДата: Четверг, 07 Июля 2011, 23:16:14 | Сообщение # 28
6 уровень
Группа: Проверенные
Сообщений: 167
Награды: 0
Репутация: 77
Блокировки:
Точно, не обратил внимания.)

Добавлено (07-07-2011, 23:16)
---------------------------------------------
Ещё раз прошу помощи.


В указаном направлении создаётся линия из дамми. Но линия должна создаваться от позиции кастера, а она создаётся от центра карты, в чём проблема?
 

HexingДата: Пятница, 15 Июля 2011, 19:08:08 | Сообщение # 29
10 уровень
Группа: Проверенные
Сообщений: 1645
Награды: 1
Репутация: 432
Блокировки:
Проверь две этистроки:
Code

call SaveLocationHandle(Hash,GetHandleId(t),1,GetSpellTargetLoc())
call SaveLocationHandle(Hash,GetHandleId(t),2,GetUnitLoc(GetSpellAbilityUnit()))  

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


 

TitansДата: Пятница, 15 Июля 2011, 19:50:29 | Сообщение # 30
6 уровень
Группа: Проверенные
Сообщений: 167
Награды: 0
Репутация: 77
Блокировки:
Quote (Hexing)
Проверь две этистроки:
Code
call SaveLocationHandle(Hash,GetHandleId(t),1,GetSpellTargetLoc())
call SaveLocationHandle(Hash,GetHandleId(t),2,GetUnitLoc(GetSpellAbilityUnit()))

Вроде всё верно.
Quote (Hexing)
И покажи как ты создаешь события к триггеру

Code
function InitTrig_Spell_MC takes nothing returns nothing
     local integer index = 0
     set gg_trg_Spell_MC = CreateTrigger(  )
     loop
         call TriggerRegisterPlayerUnitEvent(gg_trg_Spell_MC, Player(index), EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
         set index = index + 1
         exitwhen index == 11
     endloop
     call TriggerAddCondition( gg_trg_Spell_MC, Condition( function Trig_Spell_MC_Conditions ) )
     call TriggerAddAction( gg_trg_Spell_MC, function Trig_Spell_MC_Actions )
endfunction

И ещё вопрос:
Можно ли добавить инитов в группу и делать с ними действия не вызывая другую функцию?
Я делал так:
Code
local group g = CreateGroup()
call GroupEnumUnitsInRangeOfLoc(g, GetUnitLoc(LoadUnitHandle(Hash,GetHandleId(t),1)), 30, null)
if IsUnitEnemy(FirstOfGroup(g), GetOwningPlayer(LoadUnitHandle(Hash,GetHandleId(t),0))) == true then
     call UnitDamageTarget(LoadUnitHandle(Hash,GetHandleId(t),0), FirstOfGroup(g), 3, true, false, ATTACK_TYPE_NORMAL, DAMAGE_TYPE_NORMAL, WEAPON_TYPE_WHOKNOWS)
endif
call DestroyGroup(g)
set g = null

Но функция работает только с первым юнитом из группы.
 

HexingДата: Пятница, 15 Июля 2011, 20:32:08 | Сообщение # 31
10 уровень
Группа: Проверенные
Сообщений: 1645
Награды: 1
Репутация: 432
Блокировки:
по порядку:
Code
local group g = CreateGroup()
call GroupEnumUnitsInRangeOfLoc(g, GetUnitLoc(LoadUnitHandle(Hash,GetHandleId(t),1)), 30, null)
if IsUnitEnemy(FirstOfGroup(g), GetOwningPlayer(LoadUnitHandle(Hash,GetHandleId(t),0))) == true then
      call UnitDamageTarget(LoadUnitHandle(Hash,GetHandleId(t),0), FirstOfGroup(g), 3, true, false, ATTACK_TYPE_NORMAL, DAMAGE_TYPE_NORMAL, WEAPON_TYPE_WHOKNOWS)
endif
call DestroyGroup(g)

тут как цель у
Code
UnitDamageTarget
ты используешь
Code
FirstOfGroup(g)
, так чего удивляешься что работает только на 1-ой цели? Надо лупу-залупу использовать, чтоб без потерь.

Или проблема с ивентом(проверь через гуи, какой создается триггер при направлении и проверки через условии со схожыми данными), или я не знаю) И вообще скажи что ты собственно этим кодом пытаешься сделать, очень сложно воспринимается.


 

Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » Ошибка в триггере
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz