Решено Как дать стоимость нейтральному предмету и пофиксить спавн курьеров?

  • Официальное уведомление администрации CustomGames.RU
    В связи с масштабным техническим сбоем в инфраструктуре прежнего хостинг-провайдера (Beget), работа форума CustomGames.RU была оперативно перенесена на новую серверную площадку и развёрнута из резервной копии базы данных.

    • Безопасность данных: учётные записи и данные пользователей находятся в полной безопасности. Все пароли и защищаемые параметры хранятся исключительно в криптографически зашифрованном (хэшированном) виде — никаких критических инцидентов для аккаунтов пользователей не произошло.
    • Временные технические ограничения: на этапе синхронизации файлового хранилища часть статических материалов (пользовательские аватары и архивные вложения) временно недоступна. По мере получения доступа к файловым архивам все материалы будут восстановлены в полном объёме.

TiLLyB00

Пользователь
16 Дек 2019
16
0
Здравствуйте, дамы и господа! Такая вот проблема - лесной айтем (баллисту) сделал доступным для покупки через "ItemPurchasable", стоимость дал через "ItemCost", баллиста в магазине появилась, купить её можно и за то количество денег, которое я указывал. Но цена не появилась
1579107273117.png
Как на место "Нейтральный предмет 5 разряда" поставить стоимость предмета?
И второй вопрос: курьер в начале игры не появляется, хотя в хаммере места для спавна курьеров стоят. Как сделать так, чтобы курьеры спавнились в самом начале?
 
Здравствуйте, дамы и господа! Такая вот проблема - лесной айтем (баллисту) сделал доступным для покупки через "ItemPurchasable", стоимость дал через "ItemCost", баллиста в магазине появилась, купить её можно и за то количество денег, которое я указывал. Но цена не появилась
Как на место "Нейтральный предмет 5 разряда" поставить стоимость предмета?
И второй вопрос: курьер в начале игры не появляется, хотя в хаммере места для спавна курьеров стоят. Как сделать так, чтобы курьеры спавнились в самом начале?
Попробуй сделать предмет на основе балисты "BaseClass" "item_ballista"

По поводу курьеров можно сделать так, при появлении игроков сделай :
Код:
                    local point = npc:GetAbsOrigin()
                    local team = npc:GetTeam()
                    local unit = CreateUnitByName( "npc_dota_courier", point, true, npc, npc, team )
                    unit:SetControllableByPlayer(npc:GetPlayerID(), true)
 
  • Нравится
Реакции: TiLLyB00
Попробуй сделать предмет на основе балисты "BaseClass" "item_ballista"

По поводу курьеров можно сделать так, при появлении игроков сделай :
Код:
                    local point = npc:GetAbsOrigin()
                    local team = npc:GetTeam()
                    local unit = CreateUnitByName( "npc_dota_courier", point, true, npc, npc, team )
                    unit:SetControllableByPlayer(npc:GetPlayerID(), true)
Спасибо, но я, честно говоря, не допёр куда этот код сувать :(
Можно, пожалуйста, название файла куда засунуть это надо?
 
Спасибо, но я, честно говоря, не допёр куда этот код сувать :(
Можно, пожалуйста, название файла куда засунуть это надо?
Код:
function GameMode:OnNPCSpawned(keys)
    print("[BAREBONES] NPC Spawned")
--    DeepPrintTable(keys)
    local npc = EntIndexToHScript(keys.entindex)
    local name = npc:GetUnitName()
    
    if npc:IsRealHero() and npc.bFirstSpawned == nil then
        npc.bFirstSpawned = true   
        GameMode:OnHeroInGame(npc)           
        local point = npc:GetAbsOrigin()
        local team = npc:GetTeam()
        local unit = CreateUnitByName( "npc_dota_courier", point, true, npc, npc, team )
        unit:SetControllableByPlayer(npc:GetPlayerID(), true)
    end

файл, barebones.lua , если он у тебя есть
 
Код:
function GameMode:OnNPCSpawned(keys)
    print("[BAREBONES] NPC Spawned")
--    DeepPrintTable(keys)
    local npc = EntIndexToHScript(keys.entindex)
    local name = npc:GetUnitName()
   
    if npc:IsRealHero() and npc.bFirstSpawned == nil then
        npc.bFirstSpawned = true  
        GameMode:OnHeroInGame(npc)          
        local point = npc:GetAbsOrigin()
        local team = npc:GetTeam()
        local unit = CreateUnitByName( "npc_dota_courier", point, true, npc, npc, team )
        unit:SetControllableByPlayer(npc:GetPlayerID(), true)
    end

файл, barebones.lua , если он у тебя есть
Лол, чекайте апи, порой геммороя можно избежать.
Код:
CDOTABaseGameMode:SetFreeCourierModeEnabled(bool bEnabled)
Вообще это невообразимый мув со стороны валв, что они добавляют в апи функионал из патча меньше чем через месяц. Обычно нужно минимум пол года ждать.
 
  • Нравится
Реакции: Sannin и vulkantsk
Лол, чекайте апи, порой геммороя можно избежать.
Код:
CDOTABaseGameMode:SetFreeCourierModeEnabled(bool bEnabled)
Вообще это невообразимый мув со стороны валв, что они добавляют в апи функионал из патча меньше чем через месяц. Обычно нужно минимум пол года ждать.
А это куда вставлять? :D
 
Реклама: