Нужна помощь

Storyteller

Новичок
1 Мар 2024
7
1
Здравствуйте! Я пытаюсь добавить в свою кастомку курьеров, но не получается. Почитал я много предложений как сделать, но не одно не помогло. Даже к gpt обращался, всё бесполезно.
Дошёл до вот этого
Код:
function SchoolMode:InitGameMode()

    GameRules:SetStartingGold(2000)
    GameRules:SetUseUniversalShopMode(true)
    GameRules:SetGoldTickTime(0.1)
    GameRules:SetStrategyTime(0.0)
    GameRules:SetShowcaseTime(0.0)
    GameRules:GetGameModeEntity():SetThink("OnThink", self, 1)

    GameRules:GetGameModeEntity():SetUseCustomHeroLevels(true)
    GameRules:GetGameModeEntity():SetCustomXPRequiredToReachNextLevel(HeroExpTable)

    for i=1, 10 do
        local courier = CreateUnitByName("npc_dota_courier", Entities:FindByName(nil, "npc_dota_goodguys_fort"):GetAbsOrigin(), true, nil, nil, DOTA_TEAM_GOODGUYS)
        courier:SetInitialGoalEntity(Entities:FindByName(nil, "ent_dota_fountain_goodguys"))
        local courier2 = CreateUnitByName("npc_dota_courier", Entities:FindByName(nil, "npc_dota_badguys_fort"):GetAbsOrigin(), true, nil, nil, DOTA_TEAM_BADGUYS)
        courier2:SetInitialGoalEntity(Entities:FindByName(nil, "ent_dota_fountain_badguys"))
    end

end

Прошу помощи, а то код отнял больше недели. И всё равно выдаёт ошибку.
Script Runtime Error: scripts\vscripts\mod_scholl.lua:25: attempt to index a nil value
stack traceback:
scripts\vscripts\mod_scholl.lua:25: in function 'InitGameMode'
...ota_addons\school_1\scripts\vscripts\addon_game_mode.lua:14: in function <...ota_addons\school_1\scripts\vscripts\addon_game_mode.lua:13>


Заранее благодарен.
 
Лучше прописывай уже после выбора героев (и желательно в game_rules_state_change (минимум DOTA_GAMERULES_STATE_STRATEGY_TIME))

Lua:
for i = 0, PlayerResource:GetPlayerCount() - 1 do
    if PlayerResource:IsValidPlayerID(i) then
        local player = PlayerResource:GetPlayer(i)
        local position = player:GetAbsOrigin() --Vector(0, 0, 0) -- любую начальную позицию
        player:SpawnCourierAtPosition(position)
    end
end

Оно создаст курьеров для всех существующих героев на карте
 
Чаво , на геймрул всем уже пох?
Lua:
GameRules:GetGameModeEntity():SetFreeCourierModeEnabled( true )
 
  • Нравится
Реакции: fabio_longo
Реклама: