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

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

Ответ
 
darker

offline
Опыт: 2,291
Активность:
помогите с тригом разобратса
Помогите разобратса плс с етим чудом юдом пытаюсь уже много раз отслеживал много разный действий некак непойму че неработет
ой я там забыл написать глоб переменную кач но с ней тож неработает
Прикрепленные файлы
Тип файла: w3x help.w3x (19.4 Кбайт, 6 просмотров )

Отредактировано darker, 13.11.2008 в 21:19.
Старый 13.11.2008, 20:05
J
expert
offline
Опыт: 48,447
Активность:
че за карта без ничего? сразу бы код и выложил, я ниче не тестил потомучто а карте ничего нет, ну а если сократить код чуть более рациональнее то будет так
» code
Код:
globals
    group GG = CreateGroup()
    unit Wind_Caster
    unit Wind_Voronka
    real Wind_Damag
    filterfunc Wind_Filter
endglobals

function Trig_wind_Damag takes integer level returns real
    if     (level == 1) then  
        return 8.
    elseif (level == 2) then
        return 10.5
    elseif (level == 3) then 
        return 12.5
    elseif (level == 4) then
        return 15.
    elseif (level == 5) then 
        return 20.
    elseif (level == 6) then
        return 25.
    elseif (level == 7) then
        return 31.25
    elseif (level == 8) then
        return 37.5
    endif 
endfunction

function Trig_wind_Filter takes nothing returns boolean
    local unit enum = GetFilterUnit()
    local real ang
    if IsUnitEnemy(enum, GetOwningPlayer(Wind_Caster)) then
        set ang = Atan2(GetUnitY(Wind_Voronka)-GetUnitY(enum), GetUnitX(Wind_Voronka)-GetUnitX(enum))
        call UnitDamageTargetBJ(Wind_Caster, enum, Wind_Damag, ATTACK_TYPE_MELEE, DAMAGE_TYPE_NORMAL)
        call SetUnitPosition(enum, GetUnitX(enum)+10*Cos(ang), GetUnitY(enum)+10*Sin(ang))
    endif
    set enum = null
    return false
endfunction

function Trig_wind_Actions takes nothing returns nothing
    local unit Caster = GetSpellAbilityUnit()
    local location Target = GetSpellTargetLoc()
    local unit Voronka = CreateUnitAtLoc(GetOwningPlayer(Caster), 'e002', Target, 0) 
    local real dmg = Trig_wind_Damag(GetUnitAbilityLevel(Caster, 'A00A'))
    local integer i = 0
    call RemoveLocation(Target)
    call UnitApplyTimedLife(Voronka, 'BTLF', 4.)
    loop
        exitwhen i >= 40
        set Wind_Caster = Caster  
        set Wind_Voronka = Voronka
        set Wind_Damag = dmg
        call GroupEnumUnitsInRange(GG, GetUnitX(Voronka), GetUnitY(Voronka), 400, Wind_Filter)
        call TriggerSleepAction(0.1)
        set i = i + 1
    endloop
    set Caster = null
    set Target = null
    set Voronka = null
endfunction 

function Trig_wind_Conditions takes nothing returns boolean
    return GetSpellAbilityId() == 'A00A'
endfunction

function InitTrig_wind takes nothing returns nothing
    set gg_trg_wind = CreateTrigger()
    call TriggerRegisterAnyUnitEventBJ(gg_trg_wind, EVENT_PLAYER_UNIT_SPELL_CAST)
    call TriggerAddCondition(gg_trg_wind, Condition(function Trig_wind_Conditions))
    call TriggerAddAction(gg_trg_wind, function Trig_wind_Actions)
    set Wind_Filter = Filter(function Trig_wind_Filter)
endfunction

Отредактировано Jon, 14.11.2008 в 16:36.
Старый 14.11.2008, 07:27
darker

offline
Опыт: 2,291
Активность:
спасиб )
я уж сам разобрался если нада кому берите правда нада еше утечки устранить
Прикрепленные файлы
Тип файла: w3x help.w3x (20.8 Кбайт, 4 просмотров )
Старый 14.11.2008, 09:01
darker

offline
Опыт: 2,291
Активность:
Спасиб и за ето тож джон
2 варианта расмотрю в чем разницы
точ ты намутил чет нето так просто не грузитса ша поправлю
call UnitDamageTargetBJ(Wind_Caster, enum, Wind_Damag, ATTACK_TYPE_MELEE, DAMAGE_TYPE_NORMAL)
тут не конвентирует юнита в реал пишет ошибку хз почуму
и во 2 месте пишет cannot conver real to unit
непойму вродь все норм
че за бред
даж без изменений карта не грузитса
кста если не трудно мож поправить утеки я их правильно так и не научился уберать

Отредактировано darker, 14.11.2008 в 16:00.
Старый 14.11.2008, 15:39
J
expert
offline
Опыт: 48,447
Активность:
угу, писал без проверки в блокноте потому опичаталсо, там в переменых тип у Wind_Damag нужно поменять на real, исправил во втором посте, теперь норм должно быть...
Старый 14.11.2008, 16:28
darker

offline
Опыт: 2,291
Активность:
тфупустяка незаметил
думал ошибка в формуле )

darker добавил:
хехе все равно не грузит
меби посмотриш мой вариант и там чуть поправиш там ародб немного править все работет в 3 посте вложеный файл
Старый 14.11.2008, 17:02
Ответ

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

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

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

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



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