Добавлен
Во многих ресурсах из хайвы заметил такой код:
    private module Init
        private static method onInit takes nothing returns nothing 
            set rx = GetRectMaxX(bj_mapInitialPlayableArea) - 1
            set ry = GetRectMaxY(bj_mapInitialPlayableArea) - 1
            set reviver = CreateUnit(Player(15), DUMMY, rx, ry, 0)
            call SetUnitPathing(reviver, false)
            call UnitAddAbility(reviver, RESURRECT)
        endmethod
    endmodule
    
    struct Revive extends array
        /* For backwards compatibility */
        static method Unit takes unit whichUnit returns boolean
            return ReviveUnit(whichUnit)
        endmethod
        
        implement Init
    endstruct
Зачем это нужно? Почему нельзя инициализировать через initializer библиотеки или области?

Module Initializers are used because they run first :p
After module initializers -> struct initializers
After that -> library initializers
After that -> scope initializers
After that -> ... nothing :p
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
20
ScopteRectuS:
quq_CCCP, неужели в этом нет никакого смысла?
ну у них есть общий шаблон подгрузки границ карты
как хотят, так и делают
29
Какие-то причины помнится на самом деле были.
32
Doc:
Какие-то причины помнится на самом деле были.
Конечно были, у нас он тоже где то описан, шаблон оформления спеллов га показ, это вроде в системе для кастом спеллов века было.
21
Насколько я понял, так библиотека подгружается еще раньше, чем через
library initiazlier Init
    function Init takes nothing returns nothing
    endfunction
endlibrary
32
Нет, все переносится в main, там посрать кто кого, в конфиг всеравно свой код не засуните.
При старте карты функция main. В скрипте вызывается первой, в нее переносятся функции инициализации библиотек, а некоторые оптимизаторы сливают туда вовсе весь код из InitTrig_.функций.
29
Module Initializers are used because they run first :p
After module initializers -> struct initializers
After that -> library initializers
After that -> scope initializers
After that -> ... nothing :p
Принятый ответ
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.