First commit, step 4 completed

This commit is contained in:
bepis
2026-10-15 14:27:00 +11:00
commit 9a30efa170
5378 changed files with 1136719 additions and 0 deletions
@@ -0,0 +1,407 @@
local EncounterJournal =
{
Name = "EncounterJournal",
Type = "System",
Namespace = "C_EncounterJournal",
Environment = "All",
Functions =
{
{
Name = "GetBaseDifficultyID",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "difficultyID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "baseDifficultyID", Type = "number", Nilable = false },
},
},
{
Name = "GetDungeonEntrancesForMap",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "uiMapID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "dungeonEntrances", Type = "table", InnerType = "DungeonEntranceMapInfo", Nilable = false },
},
},
{
Name = "GetEncounterJournalLink",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "linkType", Type = "JournalLinkTypes", Nilable = false },
{ Name = "ID", Type = "number", Nilable = false },
{ Name = "displayText", Type = "string", Nilable = false },
{ Name = "difficultyID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "link", Type = "string", Nilable = false },
},
},
{
Name = "GetEncountersOnMap",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "uiMapID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "encounters", Type = "table", InnerType = "EncounterJournalMapEncounterInfo", Nilable = false },
},
},
{
Name = "GetInstanceForGameMap",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Documentation = { "GameMap as opposed to UIMap since we use a mapID not a uiMapID." },
Arguments =
{
{ Name = "mapID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "journalInstanceID", Type = "number", Nilable = true },
},
},
{
Name = "GetLootInfo",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "id", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "itemInfo", Type = "EncounterJournalItemInfo", Nilable = false },
},
},
{
Name = "GetLootInfoByIndex",
Type = "Function",
MayReturnNothing = true,
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "index", Type = "luaIndex", Nilable = false },
{ Name = "encounterIndex", Type = "luaIndex", Nilable = true },
},
Returns =
{
{ Name = "itemInfo", Type = "EncounterJournalItemInfo", Nilable = false },
},
},
{
Name = "GetSectionIconFlags",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Documentation = { "Represents the icon indices for this EJ section. An icon index can be used to arrive at texture coordinates for specific encounter types, e.g.: EncounterJournal_SetFlagIcon" },
Arguments =
{
{ Name = "sectionID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "iconFlags", Type = "table", InnerType = "number", Nilable = true },
},
},
{
Name = "GetSectionInfo",
Type = "Function",
MayReturnNothing = true,
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "sectionID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "info", Type = "EncounterJournalSectionInfo", Nilable = false },
},
},
{
Name = "GetSlotFilter",
Type = "Function",
Returns =
{
{ Name = "filter", Type = "ItemSlotFilterType", Nilable = false },
},
},
{
Name = "InitalizeSelectedTier",
Type = "Function",
},
{
Name = "InstanceHasDifficultyID",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "difficultyID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "hasDifficultyID", Type = "bool", Nilable = false },
},
},
{
Name = "InstanceHasLoot",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "instanceID", Type = "number", Nilable = true },
},
Returns =
{
{ Name = "hasLoot", Type = "bool", Nilable = false },
},
},
{
Name = "IsEncounterComplete",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "journalEncounterID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "isEncounterComplete", Type = "bool", Nilable = false },
},
},
{
Name = "OnClose",
Type = "Function",
HasRestrictions = true,
},
{
Name = "OnOpen",
Type = "Function",
HasRestrictions = true,
},
{
Name = "ResetSlotFilter",
Type = "Function",
},
{
Name = "SetPreviewMythicPlusLevel",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "level", Type = "number", Nilable = false },
},
},
{
Name = "SetPreviewPvpTier",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "tier", Type = "number", Nilable = false },
},
},
{
Name = "SetSlotFilter",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "filterSlot", Type = "ItemSlotFilterType", Nilable = false },
},
},
{
Name = "SetTab",
Type = "Function",
HasRestrictions = true,
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "tabIdx", Type = "number", Nilable = false },
},
},
{
Name = "StartArathiRPE",
Type = "Function",
},
},
Events =
{
{
Name = "EjDifficultyUpdate",
Type = "Event",
LiteralName = "EJ_DIFFICULTY_UPDATE",
SynchronousEvent = true,
Payload =
{
{ Name = "difficultyID", Type = "number", Nilable = false },
},
},
{
Name = "EjLootDataRecieved",
Type = "Event",
LiteralName = "EJ_LOOT_DATA_RECIEVED",
SynchronousEvent = true,
UniqueEvent = true,
Payload =
{
{ Name = "itemID", Type = "number", Nilable = true },
},
},
{
Name = "ShowJourneysUI",
Type = "Event",
LiteralName = "SHOW_JOURNEYS_UI",
SynchronousEvent = true,
Documentation = { "Signaled when the UI needs to display the journeys dashboard at a specific faction." },
Payload =
{
{ Name = "factionID", Type = "number", Nilable = false },
},
},
},
Tables =
{
{
Name = "ItemSlotFilterType",
Type = "Enumeration",
NumValues = 16,
MinValue = 0,
MaxValue = 15,
Fields =
{
{ Name = "Head", Type = "ItemSlotFilterType", EnumValue = 0 },
{ Name = "Neck", Type = "ItemSlotFilterType", EnumValue = 1 },
{ Name = "Shoulder", Type = "ItemSlotFilterType", EnumValue = 2 },
{ Name = "Cloak", Type = "ItemSlotFilterType", EnumValue = 3 },
{ Name = "Chest", Type = "ItemSlotFilterType", EnumValue = 4 },
{ Name = "Wrist", Type = "ItemSlotFilterType", EnumValue = 5 },
{ Name = "Hand", Type = "ItemSlotFilterType", EnumValue = 6 },
{ Name = "Waist", Type = "ItemSlotFilterType", EnumValue = 7 },
{ Name = "Legs", Type = "ItemSlotFilterType", EnumValue = 8 },
{ Name = "Feet", Type = "ItemSlotFilterType", EnumValue = 9 },
{ Name = "MainHand", Type = "ItemSlotFilterType", EnumValue = 10 },
{ Name = "OffHand", Type = "ItemSlotFilterType", EnumValue = 11 },
{ Name = "Finger", Type = "ItemSlotFilterType", EnumValue = 12 },
{ Name = "Trinket", Type = "ItemSlotFilterType", EnumValue = 13 },
{ Name = "Other", Type = "ItemSlotFilterType", EnumValue = 14 },
{ Name = "NoFilter", Type = "ItemSlotFilterType", EnumValue = 15 },
},
},
{
Name = "DungeonEntranceMapInfo",
Type = "Structure",
Fields =
{
{ Name = "areaPoiID", Type = "number", Nilable = false },
{ Name = "position", Type = "vector2", Mixin = "Vector2DMixin", Nilable = false },
{ Name = "name", Type = "cstring", Nilable = false },
{ Name = "description", Type = "cstring", Nilable = false },
{ Name = "atlasName", Type = "string", Nilable = false },
{ Name = "journalInstanceID", Type = "number", Nilable = false },
},
},
{
Name = "EncounterJournalItemInfo",
Type = "Structure",
Fields =
{
{ Name = "itemID", Type = "number", Nilable = false },
{ Name = "encounterID", Type = "number", Nilable = true },
{ Name = "name", Type = "string", Nilable = true },
{ Name = "itemQuality", Type = "string", Nilable = true },
{ Name = "filterType", Type = "ItemSlotFilterType", Nilable = true },
{ Name = "icon", Type = "fileID", Nilable = true },
{ Name = "slot", Type = "string", Nilable = true },
{ Name = "armorType", Type = "string", Nilable = true },
{ Name = "link", Type = "string", Nilable = true },
{ Name = "handError", Type = "bool", Nilable = true },
{ Name = "weaponTypeError", Type = "bool", Nilable = true },
{ Name = "displayAsPerPlayerLoot", Type = "bool", Nilable = true },
{ Name = "displayAsVeryRare", Type = "bool", Nilable = true },
{ Name = "displayAsExtremelyRare", Type = "bool", Nilable = true },
{ Name = "displaySeasonID", Type = "number", Nilable = true },
},
},
{
Name = "EncounterJournalMapEncounterInfo",
Type = "Structure",
Fields =
{
{ Name = "encounterID", Type = "number", Nilable = false },
{ Name = "mapX", Type = "number", Nilable = false },
{ Name = "mapY", Type = "number", Nilable = false },
},
},
{
Name = "EncounterJournalSectionInfo",
Type = "Structure",
Fields =
{
{ Name = "spellID", Type = "number", Nilable = false },
{ Name = "title", Type = "cstring", Nilable = false },
{ Name = "description", Type = "string", Nilable = true },
{ Name = "headerType", Type = "number", Nilable = false },
{ Name = "abilityIcon", Type = "fileID", Nilable = false },
{ Name = "creatureDisplayID", Type = "number", Nilable = false },
{ Name = "uiModelSceneID", Type = "number", Nilable = false },
{ Name = "siblingSectionID", Type = "number", Nilable = true },
{ Name = "firstChildSectionID", Type = "number", Nilable = true },
{ Name = "filteredByDifficulty", Type = "bool", Nilable = false },
{ Name = "link", Type = "string", Nilable = false },
{ Name = "startsOpen", Type = "bool", Nilable = false },
},
},
},
Predicates =
{
},
};
APIDocumentation:AddDocumentationTable(EncounterJournal);