diff --git a/.pkgmeta b/.pkgmeta
index 8b62e89..33d4021 100755
--- a/.pkgmeta
+++ b/.pkgmeta
@@ -19,4 +19,5 @@ manual-changelog:
ignore:
- .buildpath
- .project
-- Debug.lua
\ No newline at end of file
+- Debug.lua
+- info.txt
\ No newline at end of file
diff --git a/MissionControl.lua b/MissionControl.lua
index 223c783..87eb26b 100644
--- a/MissionControl.lua
+++ b/MissionControl.lua
@@ -312,7 +312,6 @@ local function drawItemButtons()
end)
frame:SetScript("OnReceiveDrag",function(this)
print("Receive",this:GetID(),this.key)
- DevTools_Dump(tOrder)
local from=this:GetID()
local to
local x,y=this:GetCenter()
diff --git a/doc.txt b/doc.txt
index 0739699..e69de29 100644
--- a/doc.txt
+++ b/doc.txt
@@ -1,444 +0,0 @@
-GarrisonMissionFrame_CheckCompleteMissions(OnShow) Controlla se sono presenti missione complete. Se è già mostrato GMF.MissionComplete ritorna
- Viene chiamato
- 1) su onshow del pannello missioni con OnShow=true
- 2) sull'evento GARRISON_MISSION_FINISHED con OnSHow=false
- - Inizializza GMF.MissionComplete.completeMissions
- - Se ci sono missioni complete e GMF è mostrato
- - le conta (#GMF.MissionComplete.completeMissions
- - mostra GMF.MissionTab.MissionList.CompleteDialog
- - MissionCompletePreload_LoadMission(id) id=missionID prima missione completata
- - Usa una globale per la missione corrente, in modo da uscire se è sempre farlo sulla stessa
- - Rimuove eventuali modelli già prensenti via MissionCompletePreload_Cancel
- - Carica tutti i modelli necessari
- - abilita il viewbutton GarrisonMissionFrameMissions.CompleteDialog.BorderFrame.ViewButton
- - Onclick :
- - GarrisonMissionFrame_ShowCompleteMissions
- - continua a farsi rilanciare finché non ha finito di caricare i modelli, poi:
- - Nasconde GMF.MissionTab.MissionList.CompleteDialog
- - mostra GMF.MissionComplete GMF.MissionCompleteBackground
- - GarrisonMissionComplete_Initialize(GMF.MissionComplete.completeMissions,GMF.MissionComplete.currentIndex)
-
-
-
-Altre utilities
-
-GarrisonMissionFrame_SelectTab(id): switcha fra missioni e followers
- id è numerico, 1 mostra le missioni, altro mostra i followers
-
-GarrisonMissionList_SetTab(tab): switcha fra active e available
- tab è l'oggetto tab "available" o "in progress" (GarrisonMissionFrameMissionsTab[12])
-
-Pannelli utili:
-
-GMF.MissionTab.MissionList.CompleteDialog.BorderFrame.LoadingFrame Loading col tondino
-
-GMFMissions.CompleteDialog è il fondino nero dietro il pannello con la tipa con la benda
-GMFMissions.CompleteDialog.BorderFrame è il pannello con la tipa con la benda
-GMFMissions.CompleteDialog.BorderFrame.Stage è lo sfondo colorato
-GMFMissions.CompleteDialog.BorderFrame.Model è la tipa con la benda
-
-
-
-Dump: value=C_Garrison.GetMissionRewardInfo(91)
-[1]={
- [163]={
- itemID=112848,
- quantity=1
- }
-}
-
---[[
-
-GMFMissions.CompleteDialog.BorderFrame.CompleteAll
-Garrison page structure
-Tab selection:
-Managed by
-GarrisonMissionFrameTab(1|2) onclick:
-->GarrisonMissionFrameTab_OnClick(self)
---->GarrisonMissionFrame_SelectTab(self:GetID()) - 1 for Missions, 2 for followers
-
-Main Container is GarrisonMissionFrame
-Followers tab selected:
-->GarrisonMissionFrameFollowers -> anchored GarrisonMissionFrame TOPLEFT 33,-64
--->GarrisonMissionFrameFollowersListScrollFrame
---->GarrisonMissionFrameFollowersListScrooFrameScrollChild
----->GarrisonMissionFrameFollowersListScrooFrameButton(1..9)
-->GarrisonMissionFrame.FollowerTab -> abcuored GarrisonMissionFrame TOPRIGHT -35 -64
-Missions tab selected
-->GarrisonMissionFrameMissions -> anchored (parent)e TOPLEFT 35,-65
-
-
-
-
-GarrisonMissionFrameMissionsListScrollFrameButtonx.info:
-Dump: value=GarrisonMissionFrameMissionsListScrollFrameButton1.info
-[1]={
- description="In a remote corner of Talador, a small faction of draenei has embraced the worship of Sargeras. Stop their cult before it spreads.",
- cost=10,
- duration="4 hr",
- durationSeconds=14400,
- level=100,
- type="Combat",
- locPrefix="GarrMissionLocation-Talador",
- rewards={
- [290]={
- title="Money Reward",
- quantity=600000,
- icon="Interface\\Icons\\inv_misc_coin_01",
- currencyID=0
- }
- },
- numRewards=1,
- numFollowers=2,
- state=-2,
- iLevel=0,
- name="Cult of Sargeras",
- followers={
- },
- location="Talador",
- isRare=false,
- typeAtlas="GarrMission_MissionIcon-Combat",
- missionID=126
-}
-Dump: value=G.GetFollowerInfo("0x000000000002F5E1")
-[1]={
- displayHeight=0.5,
- iLevel=600,
- scale=0.60000002384186,
- classAtlas="GarrMission_ClassIcon-Druid",
- garrFollowerID="0x0000000000000022",
- displayScale=1,
- status="On Mission",
- level=100,
- quality=4,
- portraitIconID=1066112,
- isFavorite=false,
- xp=0,
- className="Guardian Druid",
- classSpec=8,
- name="Qiana Moonshadow",
- followerID="0x000000000002F5E1",
- height=1.3999999761581,
- displayID=55047,
- levelXP=0,
- isCollected=true
-}
-value=GarrisonMissionFrame.MissionTab.MissionList.availableMissions[13]
-[1]={
- description="Scouts report a many-headed beast named Festerbloom waylaying travelers crossing the Murkbog. Clear the path for everyone's sake.",
- cost=20,
- duration="10 hr",
- durationSeconds=36000,
- level=96,
- type="Combat",
- locPrefix="GarrMissionLocation-SpiresofArak",
- rewards={
- [778]={
- title="Bonus Follower XP",
- followerXP=1400,
- tooltip="+1,400 XP",
- icon="Interface\\Icons\\XPBonus_Icon",
- name="+1,400 XP"
- }
- },
- numRewards=1,
- numFollowers=3,
- state=-2,
- iLevel=0,
- name="Murkbog Terror",
- followers={
- },
- location="Spires of Arak",
- isRare=false,
- typeAtlas="GarrMission_MissionIcon-Combat",
- missionID=374
-}
-Dump: value=GarrisonMissionFrame.MissionTab.MissionList.inProgressMissions
-[1]={
- description="The voidlords and voidcallers plaguing Shadowmoon Valley are being summoned by someone. Find and kill whoever is responsible.",
- cost=15,
- duration="6 hr",
- durationSeconds=21600,
- level=100,
- timeLeft="1 hr 12 min",
- type="Combat",
- inProgress=true,
- locPrefix="GarrMissionLocation-ShadowmoonValley",
- rewards={
- [251]={
- title="Bonus Follower XP",
- followerXP=8000,
- tooltip="+8,000 XP",
- icon="Interface\\Icons\\XPBonus_Icon",
- name="+8,000 XP"
- }
- },
- numRewards=1,
- numFollowers=3,
- state=-1,
- iLevel=0,
- name="Twisting the Nether",
- followers={
- [1]="0x000000000002F5E1",
- [2]="0x0000000000079D62",
- [3]="0x00000000001307EF"
- },
- location="Shadowmoon Valley",
- isRare=false,
- typeAtlas="GarrMission_MissionIcon-Combat",
- missionID=114
-}
-Dump: value=G.GetMissionInfo(119)
-local location, xp, environment, environmentDesc, environmentTexture, locPrefix, isExhausting, enemies = C_Garrison.GetMissionInfo(missionID);
-[1]="Nagrand",
-[2]=1500,
-[3]="Orc",
-[4]="Lok'tar ogar!",
-[5]="Interface\\ICONS\\Achievement_Boss_General_Nazgrim.blp",
-[6]="GarrMissionLocation-Nagrand",
-[7]=false,
-[8]={
- [1]={
- portraitFileDataID=1067358,
- displayID=56189,
- name="Warsong Earthcaller",
- mechanics={
- [4]={
- description="A dangerous harmful effect that should be dispelled.",
- name="Magic Debuff",
- icon="Interface\\ICONS\\Spell_Shadow_ShadowWordPain.blp"
- },
- [8]={
- description="A dangerous spell that should be interrupted.",
- name="Powerful Spell",
- icon="Interface\\ICONS\\Spell_Shadow_ShadowBolt.blp"
- }
- }
- }
-}
-local totalTimeString, totalTimeSeconds, isMissionTimeImproved, successChance, partyBuffs, isEnvMechanicCountered, xpBonus, materialMultiplier = C_Garrison.GetPartyMissionInfo(MISSION_PAGE_FRAME.missionInfo.missionID);
-Dump: value=C_Garrison.GetPartyMissionInfo(118)
-[1]="8 hr",
-[2]=28800,
-[3]=false,
-[4]=0,
-[5]={
-},
-[6]=false,
-[7]=0,
-[8]=1
-Dump: value=table returned by GetFollowerInfo for a collected follower
-[1]={
- displayHeight=0.5,
- iLevel=600,
- isCollected=true,
- classAtlas="GarrMission_ClassIcon-Druid",
- garrFollowerID="0x0000000000000022",
- displayScale=1,
- level=100,
- quality=4,
- portraitIconID=1066112,
- isFavorite=false,
- xp=0,
- className="Guardian Druid",
- classSpec=8,
- name="Qiana Moonshadow",
- followerID="0x000000000002F5E1",
- height=1.3999999761581,
- displayID=55047,
- scale=0.60000002384186,
- levelXP=0
-}
- local location, xp, environment, environmentDesc, environmentTexture, locPrefix, isExhausting, enemies = G.GetMissionInfo(missionID)
---]]
--- In case we need to change rown number in GMF
- if (not self:IsFollowerList()) then
- HybridScrollFrame_CreateButtons(frame.MissionTab.MissionList.listScroll, "GarrisonMissionListButtonTemplate", 13, -8, nil, nil, nil, -4);
- GarrisonMissionList_Update();
- else
- HybridScrollFrame_CreateButtons(frame.FollowerList.listScroll, "GarrisonMissionFollowerButtonTemplate", 7, -7, nil, nil, nil, -6);
- end
-
-
-Fonts:
-* GameFontNormal
-* GameFontNormalSmall
-* GameFontNormalLarge
-* GameFontHighlight
-* GameFontHighlightSmall
-* GameFontHighlightSmallOutline
-* GameFontHighlightLarge
-* GameFontDisable
-* GameFontDisableSmall
-* GameFontDisableLarge
-* GameFontGreen
-* GameFontGreenSmall
-* GameFontGreenLarge
-* GameFontRed
-* GameFontRedSmall
-* GameFontRedLarge
-* GameFontWhite
-* GameFontDarkGraySmall
-* NumberFontNormalYellow
-* NumberFontNormalSmallGray
-* QuestFontNormalSmall
-* DialogButtonHighlightText
-* ErrorFont
-* TextStatusBarText
-* CombatLogFont
-
-Xp bonus:
-570
-593
-
-------- Methods
-AddFollowerToMission",
-AssignFollowerToBuilding",
-CanGenerateRecruits",
-CanOpenMissionChest",
-CanSetRecruitmentPreference",
-CanUpgradeGarrison",
-CancelConstruction",
-CastSpellOnFollower",
-CastSpellOnMission",
-CloseArchitect",
-CloseGarrisonTradeskillNPC",
-CloseMissionNPC",
-CloseRecruitmentNPC",
-CloseTradeskillCrafter",
-GenerateRecruits",
-GetAllEncounterThreats() Returns the full list of possibile threats
-GetAvailableMissions",
-GetAvailableRecruits",
-GetBasicMissionInfo",
-GetBuildingInfo",
-GetBuildingLockInfo",
-GetBuildingSizes",
-GetBuildingSpecInfo",
-GetBuildingTimeRemaining",
-GetBuildingTooltip",
-GetBuildingUpgradeInfo",
-GetBuildings",
-GetBuildingsForPlot",
-GetBuildingsForSize",
-GetCompleteMissions",
-GetFollowerAbilities(followerID),
-GetFollowerAbilityAtIndex",
-GetFollowerAbilityAtIndexByID",
-GetFollowerAbilityCounterMechanicInfo",
-GetFollowerAbilityDescription",
-GetFollowerAbilityIcon",
-GetFollowerAbilityIsTrait",
-GetFollowerAbilityLink",
-GetFollowerAbilityName",
-GetFollowerActivationCost",
-GetFollowerBiasForMission",
-GetFollowerClassSpec",
-GetFollowerClassSpecAtlas",
-GetFollowerClassSpecByID",
-GetFollowerClassSpecName",
-GetFollowerDisplayID",
-GetFollowerDisplayIDByID",
-GetFollowerInfo",
-GetFollowerInfoForBuilding",
-GetFollowerItemLevelAverage",
-GetFollowerItems",
-GetFollowerLevel",
-GetFollowerLevelXP",
-GetFollowerLink",
-GetFollowerLinkByID",
-GetFollowerMissionCompleteInfo"
-GetFollowerMissionTimeLeft",
-GetFollowerMissionTimeLeftSeconds",
-GetFollowerModelItems",
-GetFollowerName",
-GetFollowerNameByID",
-GetFollowerPortraitIconIDByID"
-GetFollowerQuality",
-GetFollowerQualityTable",
-GetFollowerSoftCap",
-GetFollowerSourceTextByID",
-GetFollowerStatus"
-GetFollowerTraitAtIndex",
-GetFollowerTraitAtIndexByID",
-GetFollowerXP",
-GetFollowerXPTable",
-GetFollowersTraitsForMission"
-GetGarrisonInfo",
-GetGarrisonUpgradeCost",
-GetInProgressMissions",
-GetLandingPageItems",
-GetLandingPageShipmentCount",
-GetLandingPageShipmentInfo",
-GetMissionCompleteEncounters",
-GetMissionDisplayIDs",
-GetMissionInfo",
-GetMissionLink",
-GetMissionMaxFollowers",
-GetMissionName",
-GetMissionRewardInfo",
-GetMissionSuccessChance",
-GetMissionTimes",
-GetMissionUncounteredMechanics",
-GetNumActiveFollowers",
-GetNumFollowerActivationsRemaining",
-GetNumFollowerDailyActivations",
-GetNumFollowers",
-GetNumFollowersForMechanic(MechanicId)",
-GetNumFollowersOnMission",
-GetNumPendingShipments",
-GetNumShipmentReagents",
-GetOwnedBuildingInfo",
-GetOwnedBuildingInfoAbbrev",
-GetPartyBuffs",
-GetPartyMentorLevels",
-GetPartyMissionInfo",
-GetPendingShipmentInfo",
-GetPlots",
-GetPlotsForBuilding",
-GetPossibleFollowersForBuilding"
-GetRecruitAbilities",
-GetRecruiterAbilityCategories",
-GetRecruiterAbilityList",
-GetRecruitmentPreferences",
-GetRewardChance",
-GetShipmentContainerInfo",
-GetShipmentItemInfo",
-GetShipmentReagentCurrencyInfo",
-GetShipmentReagentInfo",
-GetShipmentReagentItemLink",
-GetSpecChangeCost",
-GetTabForPlot",
-IsAboveFollowerSoftCap",
-IsFollowerCollected",
-IsFollowerUnique",
-IsInvasionAvailable",
-IsMechanicFullyCountered",
-IsOnGarrisonMap",
-IsOnShipmentQuestForNPC",
-IsUsingPartyGarrison",
-IsVisitGarrisonAvailable",
-MarkMissionComplete",
-MissionBonusRoll",
-PlaceBuilding",
-RecruitFollower",
-RemoveFollower",
-RemoveFollowerFromBuilding",
-RemoveFollowerFromMission",
-RequestGarrisonUpgradeable",
-RequestLandingPageShipmentInfo",
-RequestShipmentCreation",
-RequestShipmentInfo",
-SearchForFollower",
-SetBuildingActive",
-SetBuildingSpecialization",
-SetFollowerFavorite",
-SetFollowerInactive",
-SetRecruitmentPreferences",
-SetUsingPartyGarrison",
-StartMission",
-SwapBuildings",
-TargetSpellHasFollowerItemLevelUpgrade",
-UpgradeBuilding",
-UpgradeGarrison",
-
diff --git a/info.txt b/info.txt
new file mode 100644
index 0000000..0739699
--- /dev/null
+++ b/info.txt
@@ -0,0 +1,444 @@
+GarrisonMissionFrame_CheckCompleteMissions(OnShow) Controlla se sono presenti missione complete. Se è già mostrato GMF.MissionComplete ritorna
+ Viene chiamato
+ 1) su onshow del pannello missioni con OnShow=true
+ 2) sull'evento GARRISON_MISSION_FINISHED con OnSHow=false
+ - Inizializza GMF.MissionComplete.completeMissions
+ - Se ci sono missioni complete e GMF è mostrato
+ - le conta (#GMF.MissionComplete.completeMissions
+ - mostra GMF.MissionTab.MissionList.CompleteDialog
+ - MissionCompletePreload_LoadMission(id) id=missionID prima missione completata
+ - Usa una globale per la missione corrente, in modo da uscire se è sempre farlo sulla stessa
+ - Rimuove eventuali modelli già prensenti via MissionCompletePreload_Cancel
+ - Carica tutti i modelli necessari
+ - abilita il viewbutton GarrisonMissionFrameMissions.CompleteDialog.BorderFrame.ViewButton
+ - Onclick :
+ - GarrisonMissionFrame_ShowCompleteMissions
+ - continua a farsi rilanciare finché non ha finito di caricare i modelli, poi:
+ - Nasconde GMF.MissionTab.MissionList.CompleteDialog
+ - mostra GMF.MissionComplete GMF.MissionCompleteBackground
+ - GarrisonMissionComplete_Initialize(GMF.MissionComplete.completeMissions,GMF.MissionComplete.currentIndex)
+
+
+
+Altre utilities
+
+GarrisonMissionFrame_SelectTab(id): switcha fra missioni e followers
+ id è numerico, 1 mostra le missioni, altro mostra i followers
+
+GarrisonMissionList_SetTab(tab): switcha fra active e available
+ tab è l'oggetto tab "available" o "in progress" (GarrisonMissionFrameMissionsTab[12])
+
+Pannelli utili:
+
+GMF.MissionTab.MissionList.CompleteDialog.BorderFrame.LoadingFrame Loading col tondino
+
+GMFMissions.CompleteDialog è il fondino nero dietro il pannello con la tipa con la benda
+GMFMissions.CompleteDialog.BorderFrame è il pannello con la tipa con la benda
+GMFMissions.CompleteDialog.BorderFrame.Stage è lo sfondo colorato
+GMFMissions.CompleteDialog.BorderFrame.Model è la tipa con la benda
+
+
+
+Dump: value=C_Garrison.GetMissionRewardInfo(91)
+[1]={
+ [163]={
+ itemID=112848,
+ quantity=1
+ }
+}
+
+--[[
+
+GMFMissions.CompleteDialog.BorderFrame.CompleteAll
+Garrison page structure
+Tab selection:
+Managed by
+GarrisonMissionFrameTab(1|2) onclick:
+->GarrisonMissionFrameTab_OnClick(self)
+--->GarrisonMissionFrame_SelectTab(self:GetID()) - 1 for Missions, 2 for followers
+
+Main Container is GarrisonMissionFrame
+Followers tab selected:
+->GarrisonMissionFrameFollowers -> anchored GarrisonMissionFrame TOPLEFT 33,-64
+-->GarrisonMissionFrameFollowersListScrollFrame
+--->GarrisonMissionFrameFollowersListScrooFrameScrollChild
+---->GarrisonMissionFrameFollowersListScrooFrameButton(1..9)
+->GarrisonMissionFrame.FollowerTab -> abcuored GarrisonMissionFrame TOPRIGHT -35 -64
+Missions tab selected
+->GarrisonMissionFrameMissions -> anchored (parent)e TOPLEFT 35,-65
+
+
+
+
+GarrisonMissionFrameMissionsListScrollFrameButtonx.info:
+Dump: value=GarrisonMissionFrameMissionsListScrollFrameButton1.info
+[1]={
+ description="In a remote corner of Talador, a small faction of draenei has embraced the worship of Sargeras. Stop their cult before it spreads.",
+ cost=10,
+ duration="4 hr",
+ durationSeconds=14400,
+ level=100,
+ type="Combat",
+ locPrefix="GarrMissionLocation-Talador",
+ rewards={
+ [290]={
+ title="Money Reward",
+ quantity=600000,
+ icon="Interface\\Icons\\inv_misc_coin_01",
+ currencyID=0
+ }
+ },
+ numRewards=1,
+ numFollowers=2,
+ state=-2,
+ iLevel=0,
+ name="Cult of Sargeras",
+ followers={
+ },
+ location="Talador",
+ isRare=false,
+ typeAtlas="GarrMission_MissionIcon-Combat",
+ missionID=126
+}
+Dump: value=G.GetFollowerInfo("0x000000000002F5E1")
+[1]={
+ displayHeight=0.5,
+ iLevel=600,
+ scale=0.60000002384186,
+ classAtlas="GarrMission_ClassIcon-Druid",
+ garrFollowerID="0x0000000000000022",
+ displayScale=1,
+ status="On Mission",
+ level=100,
+ quality=4,
+ portraitIconID=1066112,
+ isFavorite=false,
+ xp=0,
+ className="Guardian Druid",
+ classSpec=8,
+ name="Qiana Moonshadow",
+ followerID="0x000000000002F5E1",
+ height=1.3999999761581,
+ displayID=55047,
+ levelXP=0,
+ isCollected=true
+}
+value=GarrisonMissionFrame.MissionTab.MissionList.availableMissions[13]
+[1]={
+ description="Scouts report a many-headed beast named Festerbloom waylaying travelers crossing the Murkbog. Clear the path for everyone's sake.",
+ cost=20,
+ duration="10 hr",
+ durationSeconds=36000,
+ level=96,
+ type="Combat",
+ locPrefix="GarrMissionLocation-SpiresofArak",
+ rewards={
+ [778]={
+ title="Bonus Follower XP",
+ followerXP=1400,
+ tooltip="+1,400 XP",
+ icon="Interface\\Icons\\XPBonus_Icon",
+ name="+1,400 XP"
+ }
+ },
+ numRewards=1,
+ numFollowers=3,
+ state=-2,
+ iLevel=0,
+ name="Murkbog Terror",
+ followers={
+ },
+ location="Spires of Arak",
+ isRare=false,
+ typeAtlas="GarrMission_MissionIcon-Combat",
+ missionID=374
+}
+Dump: value=GarrisonMissionFrame.MissionTab.MissionList.inProgressMissions
+[1]={
+ description="The voidlords and voidcallers plaguing Shadowmoon Valley are being summoned by someone. Find and kill whoever is responsible.",
+ cost=15,
+ duration="6 hr",
+ durationSeconds=21600,
+ level=100,
+ timeLeft="1 hr 12 min",
+ type="Combat",
+ inProgress=true,
+ locPrefix="GarrMissionLocation-ShadowmoonValley",
+ rewards={
+ [251]={
+ title="Bonus Follower XP",
+ followerXP=8000,
+ tooltip="+8,000 XP",
+ icon="Interface\\Icons\\XPBonus_Icon",
+ name="+8,000 XP"
+ }
+ },
+ numRewards=1,
+ numFollowers=3,
+ state=-1,
+ iLevel=0,
+ name="Twisting the Nether",
+ followers={
+ [1]="0x000000000002F5E1",
+ [2]="0x0000000000079D62",
+ [3]="0x00000000001307EF"
+ },
+ location="Shadowmoon Valley",
+ isRare=false,
+ typeAtlas="GarrMission_MissionIcon-Combat",
+ missionID=114
+}
+Dump: value=G.GetMissionInfo(119)
+local location, xp, environment, environmentDesc, environmentTexture, locPrefix, isExhausting, enemies = C_Garrison.GetMissionInfo(missionID);
+[1]="Nagrand",
+[2]=1500,
+[3]="Orc",
+[4]="Lok'tar ogar!",
+[5]="Interface\\ICONS\\Achievement_Boss_General_Nazgrim.blp",
+[6]="GarrMissionLocation-Nagrand",
+[7]=false,
+[8]={
+ [1]={
+ portraitFileDataID=1067358,
+ displayID=56189,
+ name="Warsong Earthcaller",
+ mechanics={
+ [4]={
+ description="A dangerous harmful effect that should be dispelled.",
+ name="Magic Debuff",
+ icon="Interface\\ICONS\\Spell_Shadow_ShadowWordPain.blp"
+ },
+ [8]={
+ description="A dangerous spell that should be interrupted.",
+ name="Powerful Spell",
+ icon="Interface\\ICONS\\Spell_Shadow_ShadowBolt.blp"
+ }
+ }
+ }
+}
+local totalTimeString, totalTimeSeconds, isMissionTimeImproved, successChance, partyBuffs, isEnvMechanicCountered, xpBonus, materialMultiplier = C_Garrison.GetPartyMissionInfo(MISSION_PAGE_FRAME.missionInfo.missionID);
+Dump: value=C_Garrison.GetPartyMissionInfo(118)
+[1]="8 hr",
+[2]=28800,
+[3]=false,
+[4]=0,
+[5]={
+},
+[6]=false,
+[7]=0,
+[8]=1
+Dump: value=table returned by GetFollowerInfo for a collected follower
+[1]={
+ displayHeight=0.5,
+ iLevel=600,
+ isCollected=true,
+ classAtlas="GarrMission_ClassIcon-Druid",
+ garrFollowerID="0x0000000000000022",
+ displayScale=1,
+ level=100,
+ quality=4,
+ portraitIconID=1066112,
+ isFavorite=false,
+ xp=0,
+ className="Guardian Druid",
+ classSpec=8,
+ name="Qiana Moonshadow",
+ followerID="0x000000000002F5E1",
+ height=1.3999999761581,
+ displayID=55047,
+ scale=0.60000002384186,
+ levelXP=0
+}
+ local location, xp, environment, environmentDesc, environmentTexture, locPrefix, isExhausting, enemies = G.GetMissionInfo(missionID)
+--]]
+-- In case we need to change rown number in GMF
+ if (not self:IsFollowerList()) then
+ HybridScrollFrame_CreateButtons(frame.MissionTab.MissionList.listScroll, "GarrisonMissionListButtonTemplate", 13, -8, nil, nil, nil, -4);
+ GarrisonMissionList_Update();
+ else
+ HybridScrollFrame_CreateButtons(frame.FollowerList.listScroll, "GarrisonMissionFollowerButtonTemplate", 7, -7, nil, nil, nil, -6);
+ end
+
+
+Fonts:
+* GameFontNormal
+* GameFontNormalSmall
+* GameFontNormalLarge
+* GameFontHighlight
+* GameFontHighlightSmall
+* GameFontHighlightSmallOutline
+* GameFontHighlightLarge
+* GameFontDisable
+* GameFontDisableSmall
+* GameFontDisableLarge
+* GameFontGreen
+* GameFontGreenSmall
+* GameFontGreenLarge
+* GameFontRed
+* GameFontRedSmall
+* GameFontRedLarge
+* GameFontWhite
+* GameFontDarkGraySmall
+* NumberFontNormalYellow
+* NumberFontNormalSmallGray
+* QuestFontNormalSmall
+* DialogButtonHighlightText
+* ErrorFont
+* TextStatusBarText
+* CombatLogFont
+
+Xp bonus:
+570
+593
+
+------- Methods
+AddFollowerToMission",
+AssignFollowerToBuilding",
+CanGenerateRecruits",
+CanOpenMissionChest",
+CanSetRecruitmentPreference",
+CanUpgradeGarrison",
+CancelConstruction",
+CastSpellOnFollower",
+CastSpellOnMission",
+CloseArchitect",
+CloseGarrisonTradeskillNPC",
+CloseMissionNPC",
+CloseRecruitmentNPC",
+CloseTradeskillCrafter",
+GenerateRecruits",
+GetAllEncounterThreats() Returns the full list of possibile threats
+GetAvailableMissions",
+GetAvailableRecruits",
+GetBasicMissionInfo",
+GetBuildingInfo",
+GetBuildingLockInfo",
+GetBuildingSizes",
+GetBuildingSpecInfo",
+GetBuildingTimeRemaining",
+GetBuildingTooltip",
+GetBuildingUpgradeInfo",
+GetBuildings",
+GetBuildingsForPlot",
+GetBuildingsForSize",
+GetCompleteMissions",
+GetFollowerAbilities(followerID),
+GetFollowerAbilityAtIndex",
+GetFollowerAbilityAtIndexByID",
+GetFollowerAbilityCounterMechanicInfo",
+GetFollowerAbilityDescription",
+GetFollowerAbilityIcon",
+GetFollowerAbilityIsTrait",
+GetFollowerAbilityLink",
+GetFollowerAbilityName",
+GetFollowerActivationCost",
+GetFollowerBiasForMission",
+GetFollowerClassSpec",
+GetFollowerClassSpecAtlas",
+GetFollowerClassSpecByID",
+GetFollowerClassSpecName",
+GetFollowerDisplayID",
+GetFollowerDisplayIDByID",
+GetFollowerInfo",
+GetFollowerInfoForBuilding",
+GetFollowerItemLevelAverage",
+GetFollowerItems",
+GetFollowerLevel",
+GetFollowerLevelXP",
+GetFollowerLink",
+GetFollowerLinkByID",
+GetFollowerMissionCompleteInfo"
+GetFollowerMissionTimeLeft",
+GetFollowerMissionTimeLeftSeconds",
+GetFollowerModelItems",
+GetFollowerName",
+GetFollowerNameByID",
+GetFollowerPortraitIconIDByID"
+GetFollowerQuality",
+GetFollowerQualityTable",
+GetFollowerSoftCap",
+GetFollowerSourceTextByID",
+GetFollowerStatus"
+GetFollowerTraitAtIndex",
+GetFollowerTraitAtIndexByID",
+GetFollowerXP",
+GetFollowerXPTable",
+GetFollowersTraitsForMission"
+GetGarrisonInfo",
+GetGarrisonUpgradeCost",
+GetInProgressMissions",
+GetLandingPageItems",
+GetLandingPageShipmentCount",
+GetLandingPageShipmentInfo",
+GetMissionCompleteEncounters",
+GetMissionDisplayIDs",
+GetMissionInfo",
+GetMissionLink",
+GetMissionMaxFollowers",
+GetMissionName",
+GetMissionRewardInfo",
+GetMissionSuccessChance",
+GetMissionTimes",
+GetMissionUncounteredMechanics",
+GetNumActiveFollowers",
+GetNumFollowerActivationsRemaining",
+GetNumFollowerDailyActivations",
+GetNumFollowers",
+GetNumFollowersForMechanic(MechanicId)",
+GetNumFollowersOnMission",
+GetNumPendingShipments",
+GetNumShipmentReagents",
+GetOwnedBuildingInfo",
+GetOwnedBuildingInfoAbbrev",
+GetPartyBuffs",
+GetPartyMentorLevels",
+GetPartyMissionInfo",
+GetPendingShipmentInfo",
+GetPlots",
+GetPlotsForBuilding",
+GetPossibleFollowersForBuilding"
+GetRecruitAbilities",
+GetRecruiterAbilityCategories",
+GetRecruiterAbilityList",
+GetRecruitmentPreferences",
+GetRewardChance",
+GetShipmentContainerInfo",
+GetShipmentItemInfo",
+GetShipmentReagentCurrencyInfo",
+GetShipmentReagentInfo",
+GetShipmentReagentItemLink",
+GetSpecChangeCost",
+GetTabForPlot",
+IsAboveFollowerSoftCap",
+IsFollowerCollected",
+IsFollowerUnique",
+IsInvasionAvailable",
+IsMechanicFullyCountered",
+IsOnGarrisonMap",
+IsOnShipmentQuestForNPC",
+IsUsingPartyGarrison",
+IsVisitGarrisonAvailable",
+MarkMissionComplete",
+MissionBonusRoll",
+PlaceBuilding",
+RecruitFollower",
+RemoveFollower",
+RemoveFollowerFromBuilding",
+RemoveFollowerFromMission",
+RequestGarrisonUpgradeable",
+RequestLandingPageShipmentInfo",
+RequestShipmentCreation",
+RequestShipmentInfo",
+SearchForFollower",
+SetBuildingActive",
+SetBuildingSpecialization",
+SetFollowerFavorite",
+SetFollowerInactive",
+SetRecruitmentPreferences",
+SetUsingPartyGarrison",
+StartMission",
+SwapBuildings",
+TargetSpellHasFollowerItemLevelUpgrade",
+UpgradeBuilding",
+UpgradeGarrison",
+