# Пользовательские дополнения

На главную

## avatar.GetSkillInfo( id )

Возвращает информацию о скиле по идентификатору ресурса. Дает информацию по любому скилу, даже если он не изучен игроком. В этом случае score = nil.

ВНИМАНИЕ! В данный момент существует две системы прокачки:

- старая - уровень плавно изменяется от 1 до максимально возможной величины

- новая - ступенчатыми уровнями. Уровни накапливают некотороый опыт, выраженный в процентах и при накоплении до 100% уровень повышается на 1.

    -- система:
    UIState/GameState
    функция имеет основную реализация в логике и расширенную реализацию в UI

    -- библиотека
    avatar

    -- объявление:
    function GetSkillInfo( id )

    -- параметры
    id: SkillId - Id умения (скила)

    -- возвращаемые значения
    nil, если такого умения нет
    table, если действие в слоте есть

    -- поля возвращаемой таблицы
    id: SkillId - Id ресурса умения
    type: number (enum CRAFTING_SKILL_...) - тип скилла (какие компоненты входят в рецепт, какого типа игра и т.п.)
    name: WString - название
    description: WString - описание
    sysName: string - внутреннее название скила
    sysDebugName: string or nil - внутреннее дебажно имя скила (в данный момент путь к файлу) или nil для финальной версии
    --{ часть таблицы, реализованная только для UI
    image: TextureId - идентификатор текстуры для иконки умения
    --}
    useLevels: boolean - true, если скилл прокачивается ступенчатыми уровнями, иначе плавно от 1 до максимального уровня
    score: number( int ) or nil - уровень скила. nil, если скил не изучен игроком
    exp: number( int ) or nil - накопленный опы текущего уровня скила в процентах. nil, если скил не изучен игроком или скилл прокачивается плавно

    -- пример использования
    local skills = avatar.GetSkills()
    for i = 0, GetTableSize( skills ) - 1 do
      local skillInfo = avatar.GetSkillInfo( skills[ i ] )
      if skillInfo then
        common.LogInfo( debugCommon.FromWString( skillInfo.name ) )
      end
    end

Enum CRAFTING_SKILL_...

    CRAFTING_SKILL_UNKNOWN - неизвестный тип.
    CRAFTING_SKILL_ALCHEMY - по типу алхимии. Компоненты крафта - алхимические компоненты предмета.
    CRAFTING_SKILL_ARMOR_CRAFT - по типу создания брони. Компоненты - обычные предметы.
    CRAFTING_SKILL_DICE_CRAFT - новый ARMOR_CRAFT с карточной игрой. Компоненты - обычные предметы.

#### Связанные страницы: "CategoryLuaApi" "CategorySkill"

CategoryCraft
ComponentPropertyId
EnumToolProperty
EventForagingFailed
EventSkillAdded
EventSkillImprovementChanged
EventSkillRemoved
EventSkillsChanged
EventSkillScoreChanged
FunctionAvatarGetActiveCraftingSkill
FunctionAvatarGetComponentInfo
FunctionAvatarGetCurrentMaxSkillScore
FunctionAvatarGetItemActivationInfo
FunctionAvatarGetItemCraftInfo
FunctionAvatarGetItemCraftToolImproverInfo
FunctionAvatarGetItemCraftToolInfo
FunctionAvatarGetMaxSkillScore
FunctionAvatarGetRecipeInfo
FunctionAvatarGetSkillInfo
FunctionAvatarGetSkills
FunctionAvatarImproveCraftTool
RecipeId
SkillId

CategoryLuaApi CategoryFunction CategoryAvatar CategorySkill

На главную