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,362 @@
local NeighborhoodInitiative =
{
Name = "NeighborhoodInitiative",
Type = "System",
Namespace = "C_NeighborhoodInitiative",
Environment = "All",
Functions =
{
{
Name = "AddTrackedInitiativeTask",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "initiativeTaskID", Type = "number", Nilable = false },
},
},
{
Name = "GetActiveNeighborhood",
Type = "Function",
Returns =
{
{ Name = "neighborhoodGUID", Type = "WOWGUID", Nilable = false },
},
},
{
Name = "GetAvailableHouseXP",
Type = "Function",
Returns =
{
{ Name = "availabeXP", Type = "number", Nilable = false },
},
},
{
Name = "GetInitiativeActivityLogInfo",
Type = "Function",
Returns =
{
{ Name = "info", Type = "InitiativeActivityLogInfo", Nilable = true },
},
},
{
Name = "GetInitiativeTaskChatLink",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "initiativeTaskID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "link", Type = "cstring", Nilable = false },
},
},
{
Name = "GetInitiativeTaskInfo",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "initiativeTaskID", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "info", Type = "InitiativeTaskInfo", Nilable = true },
},
},
{
Name = "GetInitiativeTaskRewardScaling",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "taskID", Type = "number", Nilable = false },
{ Name = "numItems", Type = "number", Nilable = false },
},
Returns =
{
{ Name = "scaledAmount", Type = "number", Nilable = false },
},
},
{
Name = "GetNeighborhoodInitiativeInfo",
Type = "Function",
Returns =
{
{ Name = "info", Type = "NeighborhoodInitiativeInfo", Nilable = true },
},
},
{
Name = "GetRequiredLevel",
Type = "Function",
Returns =
{
{ Name = "reqLevel", Type = "number", Nilable = false },
},
},
{
Name = "GetTrackedInitiativeTasks",
Type = "Function",
Returns =
{
{ Name = "trackedInitiativeTasks", Type = "InitiativeTasksTracked", Nilable = false },
},
},
{
Name = "IsInitiativeEnabled",
Type = "Function",
Returns =
{
{ Name = "enabled", Type = "bool", Nilable = false },
},
},
{
Name = "IsPlayerInNeighborhoodGroup",
Type = "Function",
Returns =
{
{ Name = "inValidGroup", Type = "bool", Nilable = false },
},
},
{
Name = "IsViewingActiveNeighborhood",
Type = "Function",
Returns =
{
{ Name = "isViewingActiveNeighborhood", Type = "bool", Nilable = false },
},
},
{
Name = "PlayerHasInitiativeAccess",
Type = "Function",
Returns =
{
{ Name = "success", Type = "bool", Nilable = false },
},
},
{
Name = "PlayerMeetsRequiredLevel",
Type = "Function",
Returns =
{
{ Name = "success", Type = "bool", Nilable = false },
},
},
{
Name = "RemoveTrackedInitiativeTask",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "initiativeTaskID", Type = "number", Nilable = false },
},
},
{
Name = "RequestInitiativeActivityLog",
Type = "Function",
},
{
Name = "RequestNeighborhoodInitiativeInfo",
Type = "Function",
},
{
Name = "SetActiveNeighborhood",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "neighborhoodGUID", Type = "WOWGUID", Nilable = false },
},
},
{
Name = "SetViewingNeighborhood",
Type = "Function",
SecretArguments = "AllowedWhenUntainted",
Arguments =
{
{ Name = "neighborhoodGUID", Type = "WOWGUID", Nilable = false },
},
},
},
Events =
{
{
Name = "InitiativeActivityLogUpdated",
Type = "Event",
LiteralName = "INITIATIVE_ACTIVITY_LOG_UPDATED",
SynchronousEvent = true,
},
{
Name = "InitiativeCompleted",
Type = "Event",
LiteralName = "INITIATIVE_COMPLETED",
SynchronousEvent = true,
Payload =
{
{ Name = "initiativeTitle", Type = "string", Nilable = false },
},
},
{
Name = "InitiativeTaskCompleted",
Type = "Event",
LiteralName = "INITIATIVE_TASK_COMPLETED",
SynchronousEvent = true,
Payload =
{
{ Name = "taskName", Type = "string", Nilable = false },
},
},
{
Name = "InitiativeTasksTrackedListChanged",
Type = "Event",
LiteralName = "INITIATIVE_TASKS_TRACKED_LIST_CHANGED",
SynchronousEvent = true,
Payload =
{
{ Name = "initiativeTaskID", Type = "number", Nilable = false },
{ Name = "added", Type = "bool", Nilable = false },
},
},
{
Name = "InitiativeTasksTrackedUpdated",
Type = "Event",
LiteralName = "INITIATIVE_TASKS_TRACKED_UPDATED",
UniqueEvent = true,
},
{
Name = "NeighborhoodInitiativeUpdated",
Type = "Event",
LiteralName = "NEIGHBORHOOD_INITIATIVE_UPDATED",
SynchronousEvent = true,
},
},
Tables =
{
{
Name = "InitiativeActivityLogEntry",
Type = "Structure",
Fields =
{
{ Name = "taskID", Type = "number", Nilable = false },
{ Name = "playerName", Type = "string", Nilable = false },
{ Name = "taskName", Type = "cstring", Nilable = false },
{ Name = "completionTime", Type = "time_t", Nilable = false },
{ Name = "amount", Type = "number", Nilable = false },
},
},
{
Name = "InitiativeActivityLogInfo",
Type = "Structure",
Fields =
{
{ Name = "isLoaded", Type = "bool", Nilable = false },
{ Name = "neighborhoodGUID", Type = "WOWGUID", Nilable = false },
{ Name = "nextUpdateTime", Type = "time_t", Nilable = false },
{ Name = "taskActivity", Type = "table", InnerType = "InitiativeActivityLogEntry", Nilable = false },
},
},
{
Name = "InitiativeMilestoneInfo",
Type = "Structure",
Fields =
{
{ Name = "milestoneOrderIndex", Type = "number", Nilable = false },
{ Name = "requiredContributionAmount", Type = "number", Nilable = false },
{ Name = "rewards", Type = "table", InnerType = "InitiativeMilestoneRewardInfo", Nilable = false },
},
},
{
Name = "InitiativeMilestoneRewardInfo",
Type = "Structure",
Fields =
{
{ Name = "title", Type = "string", Nilable = false },
{ Name = "description", Type = "string", Nilable = false },
{ Name = "decorID", Type = "number", Nilable = false },
{ Name = "decorQuantity", Type = "number", Nilable = false },
{ Name = "favor", Type = "number", Nilable = false },
{ Name = "money", Type = "WOWMONEY", Nilable = false },
{ Name = "rewardQuestID", Type = "number", Nilable = false },
},
},
{
Name = "InitiativeTaskInfo",
Type = "Structure",
Fields =
{
{ Name = "ID", Type = "number", Nilable = false },
{ Name = "taskName", Type = "cstring", Nilable = false },
{ Name = "description", Type = "string", Nilable = false },
{ Name = "progressContributionAmount", Type = "number", Nilable = false },
{ Name = "tracked", Type = "bool", Nilable = false },
{ Name = "supersedes", Type = "number", Nilable = false },
{ Name = "timesCompleted", Type = "number", Nilable = false },
{ Name = "completed", Type = "bool", Nilable = false },
{ Name = "inProgress", Type = "bool", Nilable = false },
{ Name = "taskType", Type = "NeighborhoodInitiativeTaskType", Nilable = false },
{ Name = "sortOrder", Type = "number", Nilable = false },
{ Name = "rewardQuestID", Type = "number", Nilable = false },
{ Name = "requirementsList", Type = "table", InnerType = "CriteriaRequirement", Nilable = false },
{ Name = "criteriaList", Type = "table", InnerType = "CriteriaRequiredValue", Nilable = false },
},
},
{
Name = "InitiativeTasksTracked",
Type = "Structure",
Fields =
{
{ Name = "trackedIDs", Type = "table", InnerType = "number", Nilable = false },
},
},
{
Name = "NeighborhoodInitiativeInfo",
Type = "Structure",
Fields =
{
{ Name = "isLoaded", Type = "bool", Nilable = false },
{ Name = "neighborhoodGUID", Type = "WOWGUID", Nilable = false },
{ Name = "initiativeID", Type = "number", Nilable = false },
{ Name = "currentCycleID", Type = "number", Nilable = false },
{ Name = "progressRequired", Type = "number", Nilable = false },
{ Name = "currentProgress", Type = "number", Nilable = false },
{ Name = "playerTotalContribution", Type = "number", Nilable = false },
{ Name = "duration", Type = "time_t", Nilable = false },
{ Name = "tasks", Type = "table", InnerType = "InitiativeTaskInfo", Nilable = false },
{ Name = "milestones", Type = "table", InnerType = "InitiativeMilestoneInfo", Nilable = false },
{ Name = "title", Type = "string", Nilable = false },
{ Name = "description", Type = "string", Nilable = false },
},
},
},
Predicates =
{
},
};
APIDocumentation:AddDocumentationTable(NeighborhoodInitiative);