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

На главную


avatar.GetQuestProgress( questId )

Получить информацию о состоянии конкретного задания, находящегося в журнале заданий аватара.

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

-- объявление:
function GetQuestProgress( questId )

-- параметры
questId: QuestId -- идентификатор квеста

-- возвращаемые значения: nil или таблица с описанием задания вида:
id: QuestId - идентификатор квеста

state: number (enum QUEST_XXX) - состояние квеста
  QUEST_IN_PROGRESS
  QUEST_READY_TO_RETURN
  QUEST_COMPLETED
  QUEST_FAILED

timerDurationMs: number (int) / nil - продолжительность таймера (nil если таймер отсуствует или неактивен)
timerTimeLeftMs: number (int) / nil - оставшееся время таймера (nil если таймер отсуствует или неактивен)

objectives: table of objective - список (индекс с 0) целей квеста. Каждая цель описана объектом objective:
  name: WString
  sysDebugName: string - дебажный строковый идентификатор (путь к файлу)
  progress: number (int) - текущее значение счетчика (например, сколько уже собрано предметов на квест)
  required: number (int) - целевое значение счетчика (например, сколько надо собрать предметов на квест)
  isInternal: boolean - счётчик внутренний и вообще не должен быть показан пользователю
  type: number (enum QUEST_COUNT_...) - тип квестового задания, см. ниже
  showCounterValue: boolean - нужно показывать пользователю прогресс (цифры progress и required)

-- objective type
QUEST_COUNT_KILL
QUEST_COUNT_ITEM
QUEST_COUNT_SPECIAL
QUEST_COUNT_HONOR
QUEST_COUNT_KILL_AVATAR
QUEST_COUNT_MONEY
QUEST_COUNT_SHIP_UPGRADE_MONEY
QUEST_COUNT_UPGRADABLE_SHIP

Пример:

local progress = avatar.GetQuestProgress( questId )
if progress then
  common.LogInfo( "Quest Progress: " )
  common.LogInfo( "  quest.id: "..progress.id );
  common.LogInfo( "  quest.state: "..progress.state );
  local objectives = progress.objectives;
  for index, objective in objectives do
    common.LogInfo( "  index: "..index )
    common.LogInfo( "  objective.id: "..objective.id )
    common.LogInfo( "  objective.name: "..objective.name )
    common.LogInfo( "  objective.progress: "..objective.progress )
    common.LogInfo( "  objective.required: "..objective.required )
  end
end

Search: "CategoryLuaApi" "CategoryQuest"

CategoryQuest
EnumQuestType
EventInteractionStarted
EventItemQuestsReceived
EventQuestAbandoned
EventQuestAcceptError
EventQuestBookChanged
EventQuestBookDailyChanged
EventQuestCompleted
EventQuestDiscarded
EventQuestFailed
EventQuestFinishFailedNoSpace
EventQuestMarkUpdated
EventQuestObjectiveUpdated
EventQuestReceived
EventQuestShareInvitation
EventQuestShareInvitationCanceled
EventQuestShareInvitationFailed
EventQuestShareInvitationTimeout
EventQuestStartFailedLogFull
EventQuestStartFailedNoSpace
EventQuestTimerFinished
EventQuestTimerUpdated
EventQuestUpdated
FunctionAvatarAcceptQuest
FunctionAvatarAcceptShareQuest
FunctionAvatarDeclineShareQuest
FunctionAvatarDiscardQuest
FunctionAvatarGetAvailableItemQuests
FunctionAvatarGetAvailableQuests
FunctionAvatarGetQuestBook
FunctionAvatarGetQuestBookDaily
FunctionAvatarGetQuestHistory
FunctionAvatarGetQuestInfo
FunctionAvatarGetQuestProgress
FunctionAvatarGetQuestReward
FunctionAvatarGetQuestShareInvitations
FunctionAvatarGetReturnableQuests
FunctionAvatarRequestInteractions
FunctionAvatarRequestItemQuests
FunctionAvatarReturnQuest
FunctionAvatarShareQuest
FunctionCartographerGetQuestGeodata
FunctionObjectGetQuestMark
FunctionObjectHasOnlyRepeatableQuests
QuestId


CategoryLuaApi CategoryFunction CategoryQuest CategoryAvatar

На главную