Простые вопросы #2

Статус
В этой теме нельзя размещать новые ответы.
Назрел очень странный вопрос. Могут ли юниты использовать мапхак* и сами находить игрока? Или же все таки делать траекторию придётся?
Можно юнита направлять по координатам на игрока. Там функция что то наподобие MoveToPointToAttack
 
Сделал скрипт который должен делать надпись над полоской хп игрока
Lua:
function GameMode:setPlayerHealthLabel( player )
    if PlayerResource:IsValidPlayerID(player:GetPlayerID()) then
        if not PlayerResource:IsBroadcaster(player:GetPlayerID()) then
          if PlayerResource:GetSteamAccountID(player:GetPlayerID()) == STEAM ID then
            if PlayerResource:GetPlayer(player:GetPlayerID()):GetAssignedHero() ~= nil then
              PlayerResource:GetPlayer(player:GetPlayerID()):GetAssignedHero():SetCustomHealthLabel("Сама надпись", 30, 144, 255)
            end
          end
        end
    end
end


Вот так вызываю его в скрипте events
Lua:
function GameMode:OnPlayerPickHero(keys)
    local player = EntIndexToHScript(keys.player)
    local hero = player:GetAssignedHero()
    local heroClass = keys.hero
    local heroEntity = EntIndexToHScript(keys.heroindex)

    GameMode:setPlayerHealthLabel(player)

end

Но изначально он почему-то не работает, а начинает работать если призвать фулл тиму союзных ботов командой -createhero [название героя] и потом призвать еще одного, шестого...

Кто-нибудь знает почему так? :confused:

P.S. Сначала создал тему в "Скриптинг", но туда походу мало кто заходит...
Туда не мало кто заходит, просто либо не знают, либо лень отвечать.
Во-первых, функции setPlayerBlaBlaBla нет. Во-вторых, есть функция SetCustomHealthLabel(string pLabel, int r, int g, int b). В третьих, как ты эту функцию вызываешь и вообще hero == heroEntity == heroClass, зачем столько переменных разных? И функция эта, кстати, не у гейммода вызывается, а у самого героя. Тебе просто никто не хочет скорее всего отвечать, смотри апи.
 
Туда не мало кто заходит, просто либо не знают, либо лень отвечать.
Во-первых, функции setPlayerBlaBlaBla нет. Во-вторых, есть функция SetCustomHealthLabel(string pLabel, int r, int g, int b). В третьих, как ты эту функцию вызываешь и вообще hero == heroEntity == heroClass, зачем столько переменных разных? И функция эта, кстати, не у гейммода вызывается, а у самого героя. Тебе просто никто не хочет скорее всего отвечать, смотри апи.
Он свою функцию написал же
 
Туда не мало кто заходит, просто либо не знают, либо лень отвечать.
Во-первых, функции setPlayerBlaBlaBla нет. Во-вторых, есть функция SetCustomHealthLabel(string pLabel, int r, int g, int b). В третьих, как ты эту функцию вызываешь и вообще hero == heroEntity == heroClass, зачем столько переменных разных? И функция эта, кстати, не у гейммода вызывается, а у самого героя. Тебе просто никто не хочет скорее всего отвечать, смотри апи.

В последней строчке, после всех if'ов я как раз пишу SetCustomHealthLabel("Сама надпись", 30, 144, 255)

Да и вообще все работает, я просто не могу понять почему он начинает работать ТОЛЬКО после призыва шестого бота?..

Как я выяснил, вот эта проверка
Lua:
if PlayerResource:GetPlayer(player:GetPlayerID()):GetAssignedHero() ~= nil then
end
почему-то срабатывает как раз только после призыва этого шестого бота...
 
Последнее редактирование:
я когда ставлю
function CAddonGameMode:InitGameMode()
GameRules:GetGameModeEntity():SetUseCustomHeroLevels( true ) -- установка кастомной системы урвоней
GameRules:GetGameModeEntity():SetCustomHeroMaxLevel( 100 ) -- максимальный уровень
GameRules:GetGameModeEntity():SetCustomXPRequiredToReachNextLevel( XP_PER_LEVEL_TABLE ) -- указываем таблицу
end
выходит ошибка
attempt to index global 'CAddonGameMode' (a nil value)
что делать не подскажите?делаю вроде все по гайду
 
я когда ставлю
function CAddonGameMode:InitGameMode()
GameRules:GetGameModeEntity():SetUseCustomHeroLevels( true ) -- установка кастомной системы урвоней
GameRules:GetGameModeEntity():SetCustomHeroMaxLevel( 100 ) -- максимальный уровень
GameRules:GetGameModeEntity():SetCustomXPRequiredToReachNextLevel( XP_PER_LEVEL_TABLE ) -- указываем таблицу
end
выходит ошибка
attempt to index global 'CAddonGameMode' (a nil value)
что делать не подскажите?делаю вроде все по гайду
https://customgames.ru/forum/threads/Помогите-Настройка-каманд-dire-персонажи.289/#post-2145

Ну а если лень пытаться это понять, то раскрывай второй спойлер.
Но ты так далеко не уйдешь
замени CAddonGameMode на CAddonTemplateGameMode
 
я когда ставлю
function CAddonGameMode:InitGameMode()
GameRules:GetGameModeEntity():SetUseCustomHeroLevels( true ) -- установка кастомной системы урвоней
GameRules:GetGameModeEntity():SetCustomHeroMaxLevel( 100 ) -- максимальный уровень
GameRules:GetGameModeEntity():SetCustomXPRequiredToReachNextLevel( XP_PER_LEVEL_TABLE ) -- указываем таблицу
end
выходит ошибка
attempt to index global 'CAddonGameMode' (a nil value)
что делать не подскажите?делаю вроде все по гайду
Прокрути ниже по той ссылке, там уже есть ответ.
 
Как сделать чтобы скрипт запускался при покупке айтема? И как добавлять описание датадрайвен способности к Аганиму?
 
стоит ли делать свои таунты персов в кастомке?, или хватит идл рарки
 
Подскажите пожайлуста как лучше должна выглядеть форма для здания в файле npc_units_custom.
Для юнита получилось следующее
Код:
"npc_unit_zombi"
    {
        "BaseClass"                 "npc_dota_creature"
        "Model"                     "models/heroes/undying/undying_minion.vmdl"
        "Ability1"                  "dota_ability_xp_granter"
        "AttackCapabilities"        "DOTA_UNIT_CAP_MELEE_ATTACK"
        "AttackDamageMin"              "1"    // Мин атака.
        "AttackDamageMax"              "1"    // Макс атака.
        "AttackRate"                 "2"   // Скорость атаки. (это величина в секундах)
        "AttackAnimationPoint"        "0.4"  // сколько проигрывается анимация, прежде чем наносятся повреждения, у каждого своя анимация, поэтому тут по разному
        "AttackRange"                "90"   // Макс дистанция атаки.
        "BountyXP"                  "0"
        "MovementCapabilities"      "DOTA_UNIT_CAP_MOVE_GROUND"
        "MovementSpeed"                "270"    // скорость перемещения
        "MovementTurnRate"          "0.5"    // скорость поворота.
        "StatusHealth"              "100"
        "TeamName"                  "DOTA_TEAM_NEUTRALS"
        "MinimapIcon"                "minimap_candybucket"
        "MinimapIconSize"              "1000"
        "HasInventory"                "1" //есть ли инвентарь
        "AutoAttacksByDefault"         "0" //атакует ли сам?
    }
 
Подскажите пожайлуста как лучше должна выглядеть форма для здания в файле npc_units_custom.
Для юнита получилось следующее
Код:
"npc_unit_zombi"
    {
        "BaseClass"                 "npc_dota_creature"
        "Model"                     "models/heroes/undying/undying_minion.vmdl"
        "Ability1"                  "dota_ability_xp_granter"
        "AttackCapabilities"        "DOTA_UNIT_CAP_MELEE_ATTACK"
        "AttackDamageMin"              "1"    // Мин атака.
        "AttackDamageMax"              "1"    // Макс атака.
        "AttackRate"                 "2"   // Скорость атаки. (это величина в секундах)
        "AttackAnimationPoint"        "0.4"  // сколько проигрывается анимация, прежде чем наносятся повреждения, у каждого своя анимация, поэтому тут по разному
        "AttackRange"                "90"   // Макс дистанция атаки.
        "BountyXP"                  "0"
        "MovementCapabilities"      "DOTA_UNIT_CAP_MOVE_GROUND"
        "MovementSpeed"                "270"    // скорость перемещения
        "MovementTurnRate"          "0.5"    // скорость поворота.
        "StatusHealth"              "100"
        "TeamName"                  "DOTA_TEAM_NEUTRALS"
        "MinimapIcon"                "minimap_candybucket"
        "MinimapIconSize"              "1000"
        "HasInventory"                "1" //есть ли инвентарь
        "AutoAttacksByDefault"         "0" //атакует ли сам?
    }
Чем по твоему здание отличается от юнита?
 
Подскажите пожайлуста как лучше должна выглядеть форма для здания в файле npc_units_custom.
Для юнита получилось следующее
Код:
"npc_unit_zombi"
    {
        "BaseClass"                 "npc_dota_creature"
        "Model"                     "models/heroes/undying/undying_minion.vmdl"
        "Ability1"                  "dota_ability_xp_granter"
        "AttackCapabilities"        "DOTA_UNIT_CAP_MELEE_ATTACK"
        "AttackDamageMin"              "1"    // Мин атака.
        "AttackDamageMax"              "1"    // Макс атака.
        "AttackRate"                 "2"   // Скорость атаки. (это величина в секундах)
        "AttackAnimationPoint"        "0.4"  // сколько проигрывается анимация, прежде чем наносятся повреждения, у каждого своя анимация, поэтому тут по разному
        "AttackRange"                "90"   // Макс дистанция атаки.
        "BountyXP"                  "0"
        "MovementCapabilities"      "DOTA_UNIT_CAP_MOVE_GROUND"
        "MovementSpeed"                "270"    // скорость перемещения
        "MovementTurnRate"          "0.5"    // скорость поворота.
        "StatusHealth"              "100"
        "TeamName"                  "DOTA_TEAM_NEUTRALS"
        "MinimapIcon"                "minimap_candybucket"
        "MinimapIconSize"              "1000"
        "HasInventory"                "1" //есть ли инвентарь
        "AutoAttacksByDefault"         "0" //атакует ли сам?
    }
"BaseClass" "npc_dota_building"
 
Странный вопрос для странных людей, кто лучше, секси герой девка, или средний перс.
 
Из-за обновления, в котором добавили видимое повреждение башен (когда мы по камушку разносим башню - ее внешний вид будет становиться все хуже), столкнулся с таким багом (см. скрин), если заменять модели башен на свои... Кто-нибудь знает как это фиксить? :confused:
 

Вложения

  • bug.jpg
    bug.jpg
    33.6 KB · Просмотры: 14
Из-за обновления, в котором добавили видимое повреждение башен (когда мы по камушку разносим башню - ее внешний вид будет становиться все хуже), столкнулся с таким багом (см. скрин), если заменять модели башен на свои... Кто-нибудь знает как это фиксить? :confused:
"modelscale" "1"
 
Статус
В этой теме нельзя размещать новые ответы.
Реклама: