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

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

Закрытая тема
 
DeaDoK

offline
Опыт: 5,783
Активность:
vJass
Просьба банальна до невозможности.
Кто поможет, и объяснить как юзать вДжасс? (исключительно для спеллов)Очень надо, и заранее спс.
P.S. как ни вкуривал я мануалы ничего толком не понял что где и когда юзается.
Старый 28.12.2008, 19:04
J
expert
offline
Опыт: 48,447
Активность:
открой спелы, сделаные вжасом, в редакторе и посмотри...
на SpellContest#2 были такие спелы...
Старый 28.12.2008, 19:07
Лось

offline
Опыт: 7,223
Активность:
Удобно структуры аттачить на таймеры\триггеры, глобалки объявлять. Стомп спелл - норм пример.
Старый 28.12.2008, 19:09
DeaDoK

offline
Опыт: 5,783
Активность:
и? это тоже самое что и курить мануалы.
Мне, видимо, неободимо знать только как работают там глобалки, как можно юзать стракты и кеш с этимиже (или без) глобалами
Старый 28.12.2008, 19:10
Лось

offline
Опыт: 7,223
Активность:
Глобалки рабоют также, структуры это поралельные массивы, локальная переменная типа структура - индекс массивов, её можно аттачить на хэндл как интегер.
Старый 28.12.2008, 19:17
DeaDoK

offline
Опыт: 5,783
Активность:
Цитата:
Удобно структуры аттачить на таймеры\триггеры, глобалки объявлять. Стомп спелл - норм пример.

отличный пример. Много буков - мало смысла для понятия чего либо изо всей это каши.

DeaDoK добавил:
сколько длятся объявленные глобы, надо ли их ремувать, в стракты ещё не въехал. пример спелла (проджектила например) фстудию, попроще плз , а не как тот стомп
Старый 28.12.2008, 19:21
Лось

offline
Опыт: 7,223
Активность:
Вот пример с кэшэм
» Code

Код:
globals
    gamecache cache
endglobals

struct str
    unit Target
    unit Caster
    integer Hit
endstruct

function H2I takes handle h returns integer
    return h
    return 0
endfunction

function Trig_Spell_Conditions takes nothing returns boolean
    return GetSpellAbilityId() == 'A000'
endfunction

function SpellTimer takes nothing returns nothing
    local timer t = GetExpiredTimer()
    local str s = GetStoredInteger(cache,I2S(H2I(t)),"myStr")
    if s.Hit != 0 then
        call UnitDamageTargetBJ(s.Caster,s.Target,20,ATTACK_TYPE_MAGIC,DAMAGE_TYPE_MAGIC)
        set s.Hit = s.Hit - 1
    else
        call s.destroy()
        call FlushStoredMission(cache,I2S(H2I(t)))
        call DestroyTimer(t)
    endif
    set t = null
endfunction

function Trig_Spell_Actions takes nothing returns nothing
    local str s = str.create()
    local timer t = CreateTimer()
    set s.Caster = GetTriggerUnit()
    set s.Target = GetSpellTargetUnit()
    set s.Hit = 5
    call StoreInteger(cache,I2S(H2I(t)),"myStr",s)
    call TimerStart(t,.5,true,function SpellTimer)
endfunction

//===========================================================================
function InitTrig_Spell takes nothing returns nothing
    set gg_trg_Spell = CreateTrigger(  )
    set cache = InitGameCache("mymap")
    call TriggerRegisterAnyUnitEventBJ( gg_trg_Spell, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition( gg_trg_Spell, Condition( function Trig_Spell_Conditions ) )
    call TriggerAddAction( gg_trg_Spell, function Trig_Spell_Actions )
endfunction
Прикрепленные файлы
Тип файла: w3x Sample.w3x (17.6 Кбайт, 14 просмотров )
Старый 28.12.2008, 19:40
Hellfim
Новичок
offline
Опыт: 79,707
Активность:
DeaDoK, глобалки не надо ремувить... Это тоже самое что ты создаешь в редакторе триггеров переменную. Например: Раньше ты нажимал CTRL+B(окно с переменными), затем выбирал тип переменной, задавал ей имя и значение. А теперь ты пишешь
Код:
globals
    integer my_integer=100500
endglobals

Что бы сделать несколько глобалок достаточно сделать так
Код:
globals
    integer my_integer=100500
    real my_real=1.00
    //...
endglobals

Вообщем как минимум с глобалками проще обращаться...
Старый 28.12.2008, 20:02
DeaDoK

offline
Опыт: 5,783
Активность:
Они не удаляются вообще?
Старый 28.12.2008, 20:38
Hellfim
Новичок
offline
Опыт: 79,707
Активность:
DeaDoK, нет это те же переменные, что и в редакторе триггеров создаются. Только написанные.
Старый 28.12.2008, 21:43
DeaDoK

offline
Опыт: 5,783
Активность:
а в чём тогда фишка создания такого кол-ва глобалок на для каждого спелла?Они не грузят мапу?
Старый 28.12.2008, 21:45
Hellfim
Новичок
offline
Опыт: 79,707
Активность:
DeaDoK,ты создаешь сколько глобалок для спела без vJass'a? Ну максимум 2 я думаю(средней сложности). Тут тоже самое, просто удобнее объявлять.

Отредактировано Inquisitor, 28.12.2008 в 23:10.
Старый 28.12.2008, 21:47
DeaDoK

offline
Опыт: 5,783
Активность:
просто я какбе не юзаю глобы и незачем когда есть кеш. (для спеллов)
Старый 28.12.2008, 22:25
Hellfim
Новичок
offline
Опыт: 79,707
Активность:
DeaDoK, ну иногда гораздо легче обойтись глобалками =)
Старый 28.12.2008, 22:30
DeaDoK

offline
Опыт: 5,783
Активность:
ну дык я и спрашиваю, если они не очищаются, не удаляются, и к ним из другого тригга не подлезть, понт? или я о5 чего недопонял или ты недосказал?)
Старый 28.12.2008, 22:31
Hellfim
Новичок
offline
Опыт: 79,707
Активность:
DeaDoK, ты опять не допонял. Это глобальные переменные, к ним можно "подлезть" из какого угодно триггера.
Старый 28.12.2008, 23:30
DeaDoK

offline
Опыт: 5,783
Активность:
Цитата:
DeaDoK, ты опять не допонял. Это глобальные переменные, к ним можно "подлезть" из какого угодно триггера.

С всё тем же "udg_"?
Старый 28.12.2008, 23:35
zer0ne

offline
Опыт: 11,219
Активность:
нет уже без него
Старый 28.12.2008, 23:42
DeaDoK

offline
Опыт: 5,783
Активность:
блин, а нормально и поподробней? ибо мне кто-то говорил из модеров что глобы эти удаляются (или очищаются) после выполнения тригга. кто говорит правду?

Отредактировано DeaDoK, 28.12.2008 в 23:49.
Старый 28.12.2008, 23:44
Hellfim
Новичок
offline
Опыт: 79,707
Активность:
DeaDoK, Vexorian. Это локалки удаляются =). А это глобалки(=глобальные переменные).
Старый 29.12.2008, 01:18
Закрытая тема

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

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

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

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



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