Давно хотел спросить: зачем два поля уровня у предметов? Да, один помечен как не классифицируемый, что все равно ни о чем не говорит мне.

Принятый ответ

Просто для сортировок, у предметов как и уюнитов есть рабочие требования для покупки, еще и классификация и уровень, чтобы было удобнее сортировать предметы, или делать ограничения для покупки, продажи предметов N уровня. Просто близзарды расщедрились добавить поля метки, по которым ты изи сможешь сделать свою классификацию предметов и проверять её кодом.
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
19
3 года назад
0
Похожие вопросы:

ответ
NekoriDes, мб я тупой но зачем тебе 2 триггера с один и тем же событием?
не проще ли запихнуть всё в 1 триггер
хотелось бы увидеть и функции инициализации(создание триггера, добавление событий/условий/действий)
и код лучше кидай txt/j файлом
либо юзай это
ответ
Поскольку его не пугает наличие большого влияния промахов на геймплей - скорее всего он делает рпг. Имхо в рпг всегда клево смотрятся тексттаги полученного урона, для создания которых необходимы триггеры на отлов получения урона. А отлавливаемый урон - можно и прохилить.
Для прохила(и вообще всех манипуляций с задержкой в 0.00 сек) лично я юзаю такие костыли:
Либа здесь только для доп табуляции. Я за чистый жасс + дефайны.
library ZeroTimeEvent

    globals
        constant integer ZTEArraySize = 64//Even 32 is alot, 64 is too much! Exactly what I need!
        timer Zero//Used for 0. sec uses
        integer ZTECurrent = 0
        unit array ZTEUnits[ZTEArraySize]
        integer array ZTEIntegers[ZTEArraySize]
        real array ZTEReals[ZTEArraySize]
        trigger array ZTETriggers[ZTEArraySize]
    endglobals
    
    function ZeroTimeEvent takes nothing returns nothing
            loop
                set  ZTECurrent = ZTECurrent - 1
                call TriggerExecute( ZTETriggers[ZTECurrent] )
                exitwhen ZTECurrent < 1
            endloop
    endfunction
    
    #define ZTEAddUnit(u) = {
        set  ZTEUnits[ZTECurrent] = u
    }
    
    #define ZTEAddInteger(i) = {
        set  ZTEIntegers[ZTECurrent] = i
    }
    
    #define ZTEAddReal(r) = {
        set  ZTEReals[ZTECurrent] = r
    }
    
    #define ConfirmZTE(trig) = {
        set  ZTETriggers[ZTECurrent] = trig
        set  ZTECurrent = ZTECurrent + 1
        call TimerStart( Zero, ZeroTime, false, function ZeroTimeEvent )
    }
    
    
    
endlibrary
Пример использования
#define UnitRemoveForceAttack(u) = {
    call UnitAddAbility( u, 'Abun' )
    call UnitRemoveAbility( u, 'Abun' )
         ZTEAddUnit(u)
         ConfirmZTE(CheckIfUnitHasA002)
}
Минус такой системы в необходимости создавать триггер для каждого блока кода, т.к. массивы блоков кода запрещены

2
32
3 года назад
2
Просто для сортировок, у предметов как и уюнитов есть рабочие требования для покупки, еще и классификация и уровень, чтобы было удобнее сортировать предметы, или делать ограничения для покупки, продажи предметов N уровня. Просто близзарды расщедрились добавить поля метки, по которым ты изи сможешь сделать свою классификацию предметов и проверять её кодом.
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.