Поставил на карту инвентарь, написанный на языке Jaas, но это инвентарь работае только на героях, которые рандомно создаются, на карте у меня стоит тригер выбора персонажей через таверну, как изменить код, чтобы инвентарь давался героям из таверны?
scope StartGame initializer Init

    globals
        Camera array PlayerCamera
        unit array PlayerHero
    endglobals

    private function StartGame takes nothing returns nothing
        local trigger trig
        local integer i = 0
        local User user
        local Equipment equipment
        local Inventory inv
        local integer array urace
        
        set urace[1] = 'Hpal'
        set urace[2] = 'Obla'
        set urace[3] = 'Ulic'
        set urace[4] = 'Edem'

        loop
            exitwhen i == User.AmountPlaying
            
            set user = User.fromPlaying(i)
            set PlayerCamera[user.id] = Camera.create()
            
             // create hero
             set equipment = equipment.create.evaluate(CreateUnitAtLoc(user.handle, urace[GetHandleId(GetPlayerRace(user.handle))], GetStartLocationLoc(GetPlayerStartLocation(user.handle)), 180))
            
            call UnitAddAbility(equipment.unit, 'A001')
            call UnitAddAbility(equipment.unit, 'A002')
            
            if (User.Local == user.handle) then
                call SelectUnit(equipment.unit, true)
                call PanCameraToTimed(GetUnitX(equipment.unit), GetUnitY(equipment.unit), 0)
            endif
            
            set inv = Inventory.create(equipment.unit)
            
            set PlayerHero[user.id] = equipment.unit
            
            call SetPlayerAllianceStateBJ(Player(bj_PLAYER_NEUTRAL_EXTRA), user.handle, bj_ALLIANCE_ALLIED_VISION)
            call SetPlayerAllianceStateBJ(user.handle, Player(bj_PLAYER_NEUTRAL_EXTRA), bj_ALLIANCE_ALLIED_VISION)
            
            set i = i + 1
        endloop
    endfunction
    
    private function Init takes nothing returns nothing
        call SetSkyModel("Environment\\Sky\\Sky\\SkyLight.mdl")
        call SetFloatGameState(GAME_STATE_TIME_OF_DAY, 22.00)
        call StartGame()
    endfunction

endscope

если это так легко, то почему уже 2 человека, кто в этом разбираются не смогли сделать?
Если честно, пытался я этот инвенарь использовть, там непредвиденных багов просто тонна. Без знаний, всё выйдет эпичным крахом.
Я бы пооветовал автору ипользовать что-то наподобии этого.

Буду за эдитором, прикручу демку, но мой внутренний экстрасэнс предупреждает!
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
22
8gabriel8, зачем если автор не знает jass то нет смысла ему помочь!
если данной библиотеки есть и сохраняет нормально то достаточно прописать
// Создают юнит или герой откуда вы возмете как хотите чем и как!
local unit hero = CreateUnit(...) 
// Создаем эпикировка для юнита
set equipment = equipment.create.evaluate(hero)
set inv = Inventory.create(equipment.unit) // создаем инвентарь для юнита
call UnitAddAbility(equipment.unit, 'A001') // вручаем абилку
call UnitAddAbility(equipment.unit, 'A002') // вручаем абилку
Какие то сложности?
26
Вообще-то есть, он собирается карту для игры с друзьями сделать, а не посвятить всю свою жизнь созданию карт для варика.
26
8gabriel8:
Вообще-то есть, он собирается карту для игры с друзьями сделать, а не посвятить всю свою жизнь созданию карт для варика.
jass не такой феноменально сложный, банально для общего развития можно овладеть им на базовом уровне
26

Да, сложности. Нужно не просто так создавать при старте, а добавить событие, что юнит покупается в таверне, ему и вручать инвентарь.
22
а в абилке есть событие на открытие и закрытие чтобы крепить камеру который заранее занесли в переменную
26
Hate, чего-то мне так не кажется.
pro100master, весь триггер перед тобой. Там камера крепится к переменной с героем.
4
8gabriel8:
Hate, чего-то мне так не кажется.
pro100master, весь триггер перед тобой. Там камера крепится к переменной с героем.
Камера крепится к герою, пока используется обилки инвентаря, как то так это работает
26
Её закрепление включается в другом триггере с запуском инвентаря.
30
Хоть бы ссылку на инвентарь дали. Сбросьте свой пример, буду за редактором, приручу.
26
Ссылку pro100master бросал в комментарии, там и примеры. Но суть в том, что там тот же триггер, нужно просто переделать его под событие Юнит Покупает боевую единицу. Там библиотека типа user, мои возможности в jass не осиливают использование библиотек.
4
Сам пробую что то делать, но при каждой попытке получаю только ошибки и все, есть кто нить кто может помочь? просто я в тупике...
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.