diff --git a/.project b/.project index 540725e..b9173f1 100644 --- a/.project +++ b/.project @@ -20,11 +20,4 @@ <nature>org.eclipse.koneki.ldt.nature</nature> <nature>org.eclipse.ldt.nature</nature> </natures> - <linkedResources> - <link> - <name>_pkgmeta</name> - <type>1</type> - <location>D:/home/giovanni/git/Wow/GarrisonCommander/.pkgmeta</location> - </link> - </linkedResources> </projectDescription> diff --git a/BuildingPage.lua b/BuildingPage.lua index 3aca8f9..acd7d6b 100644 --- a/BuildingPage.lua +++ b/BuildingPage.lua @@ -16,9 +16,17 @@ local addon=addon local GBF=GarrisonBuildingFrame local GBFMap=GBF.MapFrame local CreateFrame=CreateFrame -local GARRISON_FOLLOWER_MAX_LEVEL=GARRISON_FOLLOWER_MAX_LEVEL +local GARRISON_FOLLOWER_MAX_LEVEL=40 local new,del=ns.new,ns.del local module=addon:NewSubClass("BuildingPage") --#module +local LE_FOLLOWER_TYPE_GARRISON_6_0=Enum.GarrisonFollowerType.FollowerType_6_0 +local LE_FOLLOWER_TYPE_SHIPYARD_6_2=Enum.GarrisonFollowerType.FollowerType_6_2 +local LE_FOLLOWER_TYPE_GARRISON_7_0=Enum.GarrisonFollowerType.FollowerType_7_0 +local LE_FOLLOWER_TYPE_GARRISON_8_0=Enum.GarrisonFollowerType.FollowerType_8_0 +local LE_GARRISON_TYPE_6_0=Enum.GarrisonType.Type_6_0 +local LE_GARRISON_TYPE_6_2=Enum.GarrisonType.Type_6_2 +local LE_GARRISON_TYPE_7_0=Enum.GarrisonType.Type_7_0 +local LE_GARRISON_TYPE_8_0=Enum.GarrisonType.Type_8_0 function module:OnInitialize() --module:SafeHookScript(GBFMap,"OnShow","AddFollowersToMap") module:SafeSecureHook("GarrisonBuildingList_Show","AddCheckBox") @@ -69,7 +77,7 @@ function module:AddFollowerToPlot(plot) info.level=level info.portraitIconID=portraitIconID info.displayID=portraitIconID - info.followerTypeID=_G.LE_FOLLOWER_TYPE_GARRISON_6_0 + info.followerTypeID=LE_FOLLOWER_TYPE_GARRISON_6_0 GMF:SetFollowerPortrait(frame.PortraitFrame, info, false) frame.PortraitFrame.Empty:Hide() del(info) diff --git a/Debug.lua b/Debug.lua index 01df0b2..e0fa1a3 100644 --- a/Debug.lua +++ b/Debug.lua @@ -188,7 +188,7 @@ function addon:DumpStatus(title) local followerID=followersCache[i].followerID scroll:AddRow(format("%s (%s): %d",self:GetFollowerData(followerID,'fullname'),self:GetFollowerData(followerID,'followerID'),G.GetFollowerXP(followerID))) end - scroll:AddRow("Garrison resources: " .. select(2,GetCurrencyInfo(GARRISON_CURRENCY))) + scroll:AddRow("Garrison resources: " .. C_CurrencyInfo.GetCurrencyInfo(GARRISON_CURRENCY)['quantity']) scroll:AddRow("Money: " .. GetMoneyString(GetMoney())) end function addon:DumpFollowers() diff --git a/FollowerCache.lua b/FollowerCache.lua index 8ee8723..281ecc4 100644 --- a/FollowerCache.lua +++ b/FollowerCache.lua @@ -14,12 +14,18 @@ local tinsert=tinsert local tContains=tContains local wipe=wipe local Mbase = {} -local GARRISON_FOLLOWER_MAX_LEVEL=GARRISON_FOLLOWER_MAX_LEVEL +local GARRISON_FOLLOWER_MAX_LEVEL=40 local format=format local tostring=tostring local GetItemInfo=GetItemInfo -local LE_FOLLOWER_TYPE_GARRISON_6_0=_G.LE_FOLLOWER_TYPE_GARRISON_6_0 -local LE_FOLLOWER_TYPE_SHIPYARD_6_2=_G.LE_FOLLOWER_TYPE_SHIPYARD_6_2 +local LE_FOLLOWER_TYPE_GARRISON_6_0=Enum.GarrisonFollowerType.FollowerType_6_0 +local LE_FOLLOWER_TYPE_SHIPYARD_6_2=Enum.GarrisonFollowerType.FollowerType_6_2 +local LE_FOLLOWER_TYPE_GARRISON_7_0=Enum.GarrisonFollowerType.FollowerType_7_0 +local LE_FOLLOWER_TYPE_GARRISON_8_0=Enum.GarrisonFollowerType.FollowerType_8_0 +local LE_GARRISON_TYPE_6_0=Enum.GarrisonType.Type_6_0 +local LE_GARRISON_TYPE_6_2=Enum.GarrisonType.Type_6_2 +local LE_GARRISON_TYPE_7_0=Enum.GarrisonType.Type_7_0 +local LE_GARRISON_TYPE_8_0=Enum.GarrisonType.Type_8_0 local maxrank=_G.GARRISON_FOLLOWER_MAX_UPGRADE_QUALITY[LE_FOLLOWER_TYPE_GARRISON_6_0]*1000+GARRISON_FOLLOWER_MAX_LEVEL local module=addon:NewSubClass('FollowerCache') --#module local cache={} --#cache @@ -262,12 +268,12 @@ function addon:GetCache(followerTypeID) return module.caches[followerTypeID] end function addon:GMCBusy(followerID,value) - if not followerID then + if not followerID then GMCUsedFollowersCount=0 - wipe(GMCUsedFollowers) - return + wipe(GMCUsedFollowers) + return end - if value and not GMCUsedFollowers[followerID] then + if value and not GMCUsedFollowers[followerID] then GMCUsedFollowers[followerID]=true GMCUsedFollowersCount=GMCUsedFollowersCount+1 end diff --git a/GarrisonCommander-Broker/ldb.lua b/GarrisonCommander-Broker/ldb.lua index 702658e..4c3a7d0 100644 --- a/GarrisonCommander-Broker/ldb.lua +++ b/GarrisonCommander-Broker/ldb.lua @@ -38,8 +38,6 @@ local format=format local table=table local math=math local GetQuestResetTime=GetQuestResetTime -local CalendarGetDate=CalendarGetDate -local CalendarGetAbsMonth=CalendarGetAbsMonth local GameTooltip=GameTooltip local pairs=pairs local select=select @@ -48,7 +46,6 @@ local NEXT=NEXT local NONE=C(NONE,"Red") local DONE=C(DONE,"Green") local NEED=C(NEED,"Red") -local IsQuestFlaggedCompleted=IsQuestFlaggedCompleted local CAPACITANCE_SHIPMENT_COUNT=CAPACITANCE_SHIPMENT_COUNT -- "%d of %d Work Orders Available"; local CAPACITANCE_SHIPMENT_READY=CAPACITANCE_SHIPMENT_READY -- "Work Order ready for pickup!"; local CAPACITANCE_START_WORK_ORDER=CAPACITANCE_START_WORK_ORDER -- "Start Work Order"; @@ -67,14 +64,14 @@ KEY_BUTTON1="Shift " .. KEY_BUTTON1 KEY_BUTTON2="Shift " .. KEY_BUTTON2 local EMPTY=EMPTY -- "Empty" local GARRISON_CACHE=GARRISON_CACHE -local LE_FOLLOWER_TYPE_GARRISON_6_0=_G.LE_FOLLOWER_TYPE_GARRISON_6_0 -local LE_FOLLOWER_TYPE_SHIPYARD_6_2=_G.LE_FOLLOWER_TYPE_SHIPYARD_6_2 -local LE_FOLLOWER_TYPE_GARRISON_7_0=_G.LE_FOLLOWER_TYPE_GARRISON_7_0 -local LE_FOLLOWER_TYPE_GARRISON_8_0=_G.LE_FOLLOWER_TYPE_GARRISON_8_0 -local LE_GARRISON_TYPE_6_0=_G.LE_GARRISON_TYPE_6_0 -local LE_GARRISON_TYPE_6_2=_G.LE_GARRISON_TYPE_6_2 -local LE_GARRISON_TYPE_7_0=_G.LE_GARRISON_TYPE_7_0 -local LE_GARRISON_TYPE_8_0=_G.LE_GARRISON_TYPE_8_0 +local LE_FOLLOWER_TYPE_GARRISON_6_0=Enum.GarrisonFollowerType.FollowerType_6_0 +local LE_FOLLOWER_TYPE_SHIPYARD_6_2=Enum.GarrisonFollowerType.FollowerType_6_2 +local LE_FOLLOWER_TYPE_GARRISON_7_0=Enum.GarrisonFollowerType.FollowerType_7_0 +local LE_FOLLOWER_TYPE_GARRISON_8_0=Enum.GarrisonFollowerType.FollowerType_8_0 +local LE_GARRISON_TYPE_6_0=Enum.GarrisonType.Type_6_0 +local LE_GARRISON_TYPE_6_2=Enum.GarrisonType.Type_6_2 +local LE_GARRISON_TYPE_7_0=Enum.GarrisonType.Type_7_0 +local LE_GARRISON_TYPE_8_0=Enum.GarrisonType.Type_8_0 local dbversion=1 local frequency=5 local ldbtimer=nil @@ -196,7 +193,7 @@ end function addon:CheckDateReset() local oldToday=today local reset=GetQuestResetTime() - local t= C_Calendar.GetDate() + local t= C_DateAndTime.GetCurrentCalendarTime() local day=t.monthDay local year=t.year local month=t.month @@ -422,7 +419,7 @@ function addon:DelayedInit() end end function addon:GetImprovedCacheSize() - if IsQuestFlaggedCompleted(37485) then + if C_QuestLog.IsQuestFlaggedCompleted(37485) then return 1000 -- Arakkoa item --[[ elseif IsQuestFlaggedCompleted(38445) then diff --git a/GarrisonCommander.lua b/GarrisonCommander.lua index 802fb43..f71cd77 100644 --- a/GarrisonCommander.lua +++ b/GarrisonCommander.lua @@ -27,10 +27,24 @@ local pin=false local baseHeight local minHeight local addon=addon --#addon -local LE_FOLLOWER_TYPE_GARRISON_6_0=_G.LE_FOLLOWER_TYPE_GARRISON_6_0 -local LE_FOLLOWER_TYPE_SHIPYARD_6_2=_G.LE_FOLLOWER_TYPE_SHIPYARD_6_2 -local LE_GARRISON_TYPE_6_0=_G.LE_GARRISON_TYPE_6_0 -local LE_GARRISON_TYPE_6_2=_G.LE_GARRISON_TYPE_6_2 +local LE_FOLLOWER_TYPE_GARRISON_6_0=Enum.GarrisonFollowerType.FollowerType_6_0 +local LE_FOLLOWER_TYPE_SHIPYARD_6_2=Enum.GarrisonFollowerType.FollowerType_6_2 +local LE_FOLLOWER_TYPE_GARRISON_7_0=Enum.GarrisonFollowerType.FollowerType_7_0 +local LE_FOLLOWER_TYPE_GARRISON_8_0=Enum.GarrisonFollowerType.FollowerType_8_0 +local LE_GARRISON_TYPE_6_0=Enum.GarrisonType.Type_6_0 +local LE_GARRISON_TYPE_6_2=Enum.GarrisonType.Type_6_2 +local LE_GARRISON_TYPE_7_0=Enum.GarrisonType.Type_7_0 +local LE_GARRISON_TYPE_8_0=Enum.GarrisonType.Type_8_0 +local GARRISON_MISSION_AVAILABILITY1=GARRISON_MISSION_AVAILABILITY..'\n %s' +local GARRISON_MISSION_AVAILABILITY2=GARRISON_MISSION_ENVIRONMENT:sub(1,10)..GARRISON_MISSION_AVAILABILITY..':|r %s' +local GARRISON_MISSION_ID=GARRISON_MISSION_ENVIRONMENT:sub(1,10)..'MissionID:|r |cffffffff%s|r' +local fakeinfo={followerID=false} +local fakeframe={} +local mainframes={ + [LE_FOLLOWER_TYPE_GARRISON_6_0]="GarrisonMissionFrame", + [LE_FOLLOWER_TYPE_SHIPYARD_6_2]="GarrisonShipyardFrame", + +} ns.bigscreen=true local tprint=print local backdrop = { @@ -93,10 +107,8 @@ local GARRISON_MISSION_PERCENT_CHANCE="%d%%"-- GARRISON_MISSION_PERCENT_CHANCE --local GARRISON_FOLLOWER_BUSY_COLOR=GARRISON_FOLLOWER_BUSY_COLOR --local GARRISON_FOLLOWER_INACTIVE_COLOR=GARRISON_FOLLOWER_INACTIVE_COLOR --local GARRISON_CURRENCY=GARRISON_CURRENCY --824 -local LE_FOLLOWER_TYPE_GARRISON_6_0=LE_FOLLOWER_TYPE_GARRISON_6_0 -local LE_FOLLOWER_TYPE_SHIPYARD_6_2=LE_FOLLOWER_TYPE_SHIPYARD_6_2 local GARRISON_FOLLOWER_MAX_UPGRADE_QUALITY=GARRISON_FOLLOWER_MAX_UPGRADE_QUALITY[LE_FOLLOWER_TYPE_GARRISON_6_0] ---local GARRISON_FOLLOWER_MAX_LEVEL=GARRISON_FOLLOWER_MAX_LEVEL -- 100 +local GARRISON_FOLLOWER_MAX_LEVEL=40 local GARRISON_CURRENCY=GARRISON_CURRENCY local GetMoneyString=GetMoneyString @@ -135,8 +147,6 @@ local MAXMISSIONS=8 local MINPERC=20 local BUSY_MESSAGE_FORMAT=L["Only first %1$d missions with over %2$d%% chance of success are shown"] local BUSY_MESSAGE=format(BUSY_MESSAGE_FORMAT,MAXMISSIONS,MINPERC) -local LE_FOLLOWER_TYPE_GARRISON_6_0=_G.LE_FOLLOWER_TYPE_GARRISON_6_0 -local LE_FOLLOWER_TYPE_SHIPYARD_6_2=_G.LE_FOLLOWER_TYPE_SHIPYARD_6_2 local GarrisonFollowerPortrait_Set=GarrisonFollowerPortrait_Set if not GarrisonFollowerPortrait_Set then GarrisonFollowerPortrait_Set=function(portrait, iconFileID) @@ -686,7 +696,10 @@ function addon:AddFollowersToTooltip(missionID,followerTypeID) local cost=self:GetMissionData(missionID,'cost') local currency=self:GetMissionData(missionID,'costCurrencyTypesID') if cost and currency then - local _,available,texture=GetCurrencyInfo(currency) + local _,available,texture=self:GetCurrencyInfo(currency) + if not texture then + print("Not found texture for",currency,self:GetCurrencyInfo(currency)) + end GameTooltip:AddDoubleLine(TABARDVENDORCOST,format("%d |T%s:0|t",cost,texture),nil,nil,nil,C[cost>available and 'Red' or 'Green']()) end local members=party.members @@ -731,7 +744,7 @@ function addon:AddFollowersToTooltip(missionID,followerTypeID) end if type(party.materialMultiplier)=="table" then for k,v in pairs(party.materialMultiplier) do - GameTooltip:AddDoubleLine((GetCurrencyInfo(k)),v..'x',C.Green()) + GameTooltip:AddDoubleLine((self:GetCurrencyInfo(k)),v..'x',C.Green()) end end if party.xpBonus>0 then @@ -1922,16 +1935,6 @@ function addon:GetFollowerStatus(followerID,withTime,colored) return colored and C(AVAILABLE,"Green") or AVAILABLE end end -local GARRISON_MISSION_AVAILABILITY1=GARRISON_MISSION_AVAILABILITY..'\n %s' -local GARRISON_MISSION_AVAILABILITY2=GARRISON_MISSION_ENVIRONMENT:sub(1,10)..GARRISON_MISSION_AVAILABILITY..':|r %s' -local GARRISON_MISSION_ID=GARRISON_MISSION_ENVIRONMENT:sub(1,10)..'MissionID:|r |cffffffff%s|r' -local fakeinfo={followerID=false} -local fakeframe={} -local mainframes={ - [LE_FOLLOWER_TYPE_GARRISON_6_0]="GarrisonMissionFrame", - [LE_FOLLOWER_TYPE_SHIPYARD_6_2]="GarrisonShipyardFrame", - -} function addon:FillMissionPage(missionInfo) if type(missionInfo)=="number" then missionInfo=self:GetMissionData(missionInfo) end @@ -2904,7 +2907,7 @@ function addon:AddThreatsToButton(button,mission,missionID,bigscreen) button.Env.missionID=missionID local party=button.party if not mission.typeIcon then - mission.typeIcon=select(5,G.GetMissionInfo(missionID)) + mission.typeIcon=G.GetMissionDeploymentInfo(missionID)['environmentTexture'] end if mission.typeIcon then button.Env.IsEnv=true @@ -2925,7 +2928,7 @@ function addon:AddThreatsToButton(button,mission,missionID,bigscreen) button.Env:SetScript("OnEnter",nil) button.Env:Hide() end - local enemies=mission.enemies or select(8,G.GetMissionInfo(missionID)) + local enemies=mission.enemies or G.GetMissionDeploymentInfo(missionID)['enemies'] local threats=self:GetParty(missionID,'threats') for i,enemy in ipairs(enemies) do for mechanicID, mechanic in pairs(enemy.mechanics) do diff --git a/Init.lua b/Init.lua index 20b4b70..e217a60 100644 --- a/Init.lua +++ b/Init.lua @@ -54,8 +54,13 @@ ns.GSF=_G.GarrisonShipyardFrame ns.GMFMissions=ns.GMF.MissionTab.MissionList ns.GSFMissions=ns.GSF.MissionTab.MissionList _G.GARRISON_FOLLOWER_MAX_ITEM_LEVEL = _G.GARRISON_FOLLOWER_MAX_ITEM_LEVEL or 675 +local NavalDomination={ + Alliance=39068, + Horde=39246 +} ns.quests={} -GetQuestsCompleted(ns.quests) +ns.quests[NavalDomination.Alliance]=C_QuestLog.IsQuestFlaggedCompleted(NavalDomination.Alliance) +ns.quests[NavalDomination.Horde]=C_QuestLog.IsQuestFlaggedCompleted(NavalDomination.Horde) function addon:EventQUEST_TURNED_IN(event,quest,item,gold) ns.quests[quest]=true end diff --git a/MissionCache.lua b/MissionCache.lua index 9216dc3..a2ac670 100644 --- a/MissionCache.lua +++ b/MissionCache.lua @@ -11,9 +11,15 @@ local tcontains=tContains local wipe=wipe local GARRISON_CURRENCY=GARRISON_CURRENCY local GARRISON_SHIP_OIL_CURRENCY=GARRISON_SHIP_OIL_CURRENCY -local GARRISON_FOLLOWER_MAX_LEVEL=GARRISON_FOLLOWER_MAX_LEVEL -local LE_FOLLOWER_TYPE_GARRISON_6_0=_G.LE_FOLLOWER_TYPE_GARRISON_6_0 -local LE_FOLLOWER_TYPE_SHIPYARD_6_2=_G.LE_FOLLOWER_TYPE_SHIPYARD_6_2 +local GARRISON_FOLLOWER_MAX_LEVEL=40 +local LE_FOLLOWER_TYPE_GARRISON_6_0=Enum.GarrisonFollowerType.FollowerType_6_0 +local LE_FOLLOWER_TYPE_SHIPYARD_6_2=Enum.GarrisonFollowerType.FollowerType_6_2 +local LE_FOLLOWER_TYPE_GARRISON_7_0=Enum.GarrisonFollowerType.FollowerType_7_0 +local LE_FOLLOWER_TYPE_GARRISON_8_0=Enum.GarrisonFollowerType.FollowerType_8_0 +local LE_GARRISON_TYPE_6_0=Enum.GarrisonType.Type_6_0 +local LE_GARRISON_TYPE_6_2=Enum.GarrisonType.Type_6_2 +local LE_GARRISON_TYPE_7_0=Enum.GarrisonType.Type_7_0 +local LE_GARRISON_TYPE_8_0=Enum.GarrisonType.Type_8_0 local GMF=GMF local GSF=GSF local GMFMissions=GMFMissions @@ -224,7 +230,7 @@ function module:AddExtraData(mission) if mission.missionID == dbg then print("Final gold",mission.gold) DevTools_Dump(mission.moreClasses)end --@end-debug@ if not mission.class then mission.class="other" end - local xp=select(2,G.GetMissionInfo(mission.missionID)) + local xp=G.GetMissionDeploymentInfo(mission.missionID)['xp'] if not mission.xp or mission.xp==0 then mission.xp=xp end mission.globalXp=tonumber(mission.xp) or 0 + tonumber(mission.xpBonus) or 0 end @@ -409,7 +415,7 @@ local function isValid(self) for i=1,#self.list do local id=self.list[i] if id < 10000 then - print(GetCurrencyInfo(id)) + print(self:GetCurrencyInfo(id)) else print(GetItemInfo(id)) end @@ -430,11 +436,11 @@ local function newMissionType(key,name,icon,maxable,mat,func,...) end classes[LE_FOLLOWER_TYPE_GARRISON_6_0]={ newMissionType('xp',L['Follower experience'],'XPBonus_icon',false,false,nil,0), - newMissionType('resources',GetCurrencyInfo(GARRISON_CURRENCY),'inv_garrison_resource',true,true,nil,-GARRISON_CURRENCY), - newMissionType('oil',GetCurrencyInfo(GARRISON_SHIP_OIL_CURRENCY),'garrison_oil',true,true,isOilMission,128316), + newMissionType('resources',C_CurrencyInfo.GetCurrencyInfo(GARRISON_CURRENCY)['name'],'inv_garrison_resource',true,true,nil,-GARRISON_CURRENCY), + newMissionType('oil',C_CurrencyInfo.GetCurrencyInfo(GARRISON_SHIP_OIL_CURRENCY)['name'],'garrison_oil',true,true,isOilMission,128316), newMissionType('rush',L['Rush orders'],'INV_Scroll_12',false,false,nil,122595,122594,122596,122592,122590,122593,122591,122576), - newMissionType('apexis',GetCurrencyInfo(823),'inv_apexis_draenor',false,false,nil,-823), - newMissionType('seal',GetCurrencyInfo(994),'ability_animusorbs',false,false,nil,-994), + newMissionType('apexis',C_CurrencyInfo.GetCurrencyInfo(823)['name'],'inv_apexis_draenor',false,false,nil,-823), + newMissionType('seal',C_CurrencyInfo.GetCurrencyInfo(994)['name'],'ability_animusorbs',false,false,nil,-994), newMissionType('gold',BONUS_ROLL_REWARD_MONEY,'inv_misc_coin_01',false,false,nil,0), newMissionType('followerUpgrade',L['Follower equipment set or upgrade'],'Garrison_ArmorUpgrade',false,false,nil,0), newMissionType('primalspirit',L['Reagents'],'6BF_Explosive_shard',false,false,nil,118472,120945,113261,113262,113263,113264), @@ -449,8 +455,8 @@ classes[LE_FOLLOWER_TYPE_GARRISON_6_0]={ classes[LE_FOLLOWER_TYPE_SHIPYARD_6_2]={ newMissionType('xp',L['Follower experience'],'XPBonus_icon',false,false,nil,0), newMissionType('rush',L['Rush orders'],'INV_Scroll_12',false,false,nil,122595,122594,122596,122592,122590,122593,122591,122576), - newMissionType('apexis',GetCurrencyInfo(823),'inv_apexis_draenor',false,false,nil,-823), - newMissionType('seal',GetCurrencyInfo(994),'ability_animusorbs',false,false,nil,-994), + newMissionType('apexis',C_CurrencyInfo.GetCurrencyInfo(823)['name'],'inv_apexis_draenor',false,false,nil,-823), + newMissionType('seal',C_CurrencyInfo.GetCurrencyInfo(994)['name'],'ability_animusorbs',false,false,nil,-994), newMissionType('gold',BONUS_ROLL_REWARD_MONEY,'inv_misc_coin_01',false,false,nil,0), newMissionType('followerUpgrade',L['Follower equipment set or upgrade'],'Garrison_ArmorUpgrade',false,false,nil,0), newMissionType('primalspirit',L['Reagents'],'6BF_Explosive_shard',false,false,nil,118472,120945,113261,113262,113263,113264), diff --git a/MissionCompletion.lua b/MissionCompletion.lua index 25f80fc..1f986ca 100644 --- a/MissionCompletion.lua +++ b/MissionCompletion.lua @@ -10,8 +10,14 @@ local GSFMissions=GarrisonMissionFrameMissions local GARRISON_CURRENCY=GARRISON_CURRENCY local GARRISON_SHIP_OIL_CURRENCY=_G.GARRISON_SHIP_OIL_CURRENCY local SEAL_CURRENCY=994 -local LE_FOLLOWER_TYPE_GARRISON_6_0=_G.LE_FOLLOWER_TYPE_GARRISON_6_0 -- 1 -local LE_FOLLOWER_TYPE_SHIPYARD_6_2=_G.LE_FOLLOWER_TYPE_SHIPYARD_6_2 -- 2 +local LE_FOLLOWER_TYPE_GARRISON_6_0=Enum.GarrisonFollowerType.FollowerType_6_0 +local LE_FOLLOWER_TYPE_SHIPYARD_6_2=Enum.GarrisonFollowerType.FollowerType_6_2 +local LE_FOLLOWER_TYPE_GARRISON_7_0=Enum.GarrisonFollowerType.FollowerType_7_0 +local LE_FOLLOWER_TYPE_GARRISON_8_0=Enum.GarrisonFollowerType.FollowerType_8_0 +local LE_GARRISON_TYPE_6_0=Enum.GarrisonType.Type_6_0 +local LE_GARRISON_TYPE_6_2=Enum.GarrisonType.Type_6_2 +local LE_GARRISON_TYPE_7_0=Enum.GarrisonType.Type_7_0 +local LE_GARRISON_TYPE_8_0=Enum.GarrisonType.Type_8_0 local pairs=pairs local format=format local strsplit=strsplit @@ -158,7 +164,7 @@ function module:MissionComplete(this,button,skiprescheck) end local stop for id,qt in pairs(wasted) do - local name,current,_,_,_,cap=GetCurrencyInfo(id) + local name,current,_,_,_,cap=addon:GetCurrencyInfo(id) --@debug@ print(name,current,qt,cap) --@end-debug@ @@ -267,7 +273,7 @@ function module:MissionAutoComplete(event,ID,arg1,arg2,arg3,arg4,...) step=0 currentMission.state=0 currentMission.goldMultiplier=currentMission.goldMultiplier or 1 - currentMission.xp=select(2,G.GetMissionInfo(currentMission.missionID)) + currentMission.xp=G.GetMissionDeploymentInfo(currentMission.missionID)['xp'] report:AddMissionButton(currentMission,addon:GetParty(currentMission.missionID),currentMission.successChance,"report") end if (step==0) then @@ -345,7 +351,7 @@ function module:MissionsPrintResults(success) report:AddIconText(v.icon,GetMoneyString(v.qt)) else -- Other currency reward - report:AddIconText(v.icon,GetCurrencyLink(k,v.qt)) + report:AddIconText(v.icon,C_CurrencyInfo.GetCurrencyLink(k,v.qt)) end end local items=new() diff --git a/OrderHall.lua b/OrderHall.lua index 57e8b4e..97402c2 100644 --- a/OrderHall.lua +++ b/OrderHall.lua @@ -10,11 +10,10 @@ local pairs=pairs local format=format local strsplit=strsplit local select=select -local GetCurrencyInfo=GetCurrencyInfo local generated local GARRISON_CURRENCY=GARRISON_CURRENCY local GARRISON_SHIP_OIL_CURRENCY=GARRISON_SHIP_OIL_CURRENCY -local GARRISON_FOLLOWER_MAX_LEVEL=GARRISON_FOLLOWER_MAX_LEVEL +local GARRISON_FOLLOWER_MAX_LEVEL=45 local LE_FOLLOWER_TYPE_GARRISON_6_0=LE_FOLLOWER_TYPE_GARRISON_6_0 local LE_FOLLOWER_TYPE_SHIPYARD_6_2=LE_FOLLOWER_TYPE_SHIPYARD_6_2 local LE_FOLLOWER_TYPE_GARRISON_7_0=LE_FOLLOWER_TYPE_GARRISON_7_0 @@ -31,7 +30,7 @@ local UpgradeButtons={} local pool={} function module:OnInitialize(...) if not ns.GHF then return end -- Waiting to be late initialized by init routine - OHFFollowerTab=OrderHallMissionFrame.FollowerTab -- Contains model view + OHFFollowerTab=OrderHallMissionFrame.FollowerTab -- Contains model view if GetAddOnEnableState(UnitName("player"),"OrderHallCommander") > 0 then ns.ignoreHall=true return @@ -137,8 +136,8 @@ function module:AcquireButton() b:SetSize(40,40) b.Icon:SetSize(40,40) b:EnableMouse(true) - b:RegisterForClicks("LeftButtonDown") - end + b:RegisterForClicks("LeftButtonDown") + end tinsert(UpgradeButtons,b) return b end @@ -170,17 +169,17 @@ function module:RefreshUpgrades(model,followerID,displayID,showWeapon) if follower.iLevel <850 then for _,id in pairs(addon:GetData("Upgrades")) do previous=self:RenderUpgradeButton(id,previous) - end + end end if follower.isMaxLevel and follower.quality ~=LE_ITEM_QUALITY_EPIC then for _,id in pairs(addon:GetData("Xp")) do previous=self:RenderUpgradeButton(id,previous) - end + end end if follower.quality >=LE_ITEM_QUALITY_RARE then for _,id in pairs(addon:GetData("Equipment")) do previous=self:RenderUpgradeButton(id,previous) - end + end end end function module:RenderUpgradeButton(id,previous) @@ -195,14 +194,14 @@ function module:RenderUpgradeButton(id,previous) end previous=b b.itemID=id - b:SetAttribute("item",select(2,GetItemInfo(id))) + b:SetAttribute("item",select(2,GetItemInfo(id))) GarrisonMissionFrame_SetItemRewardDetails(b) b.Quantity:SetFormattedText("%d",qt) b.Quantity:SetTextColor(C.Yellow()) b.Quantity:Show() b:Show() return b -end +end function module:Setup(this,...) --@debug@ print("Doing one time initialization for",this:GetName(),...) @@ -338,12 +337,12 @@ function addon:SetBackdrop(frame,r,g,b) g=g or 0 b=b or 0 frame:SetBackdrop({ - bgFile = "Interface/Tooltips/UI-Tooltip-Background", - edgeFile = "Interface/Tooltips/UI-Tooltip-Border", - tile = true, tileSize = 16, edgeSize = 16, + bgFile = "Interface/Tooltips/UI-Tooltip-Background", + edgeFile = "Interface/Tooltips/UI-Tooltip-Border", + tile = true, tileSize = 16, edgeSize = 16, insets = { left = 4, right = 4, top = 4, bottom = 4} } - ) + ) frame:SetBackdropColor(r,g,b,1) end do diff --git a/PartyCache.lua b/PartyCache.lua index 3812a16..8940d3a 100644 --- a/PartyCache.lua +++ b/PartyCache.lua @@ -60,7 +60,7 @@ local ID,maxFollowers,members,ignored,threats=0,1,{},{},{} function party:Open(missionID,followers) maxFollowers=followers ID=missionID - local enemies=select(8,G.GetMissionInfo(ID)) + local enemies=G.GetMissionDeploymentInfo(ID)['enemies'] if (type(enemies)=="table") then for enemy,data in pairs(enemies) do for menace,more in pairs(data.mechanics) do diff --git a/ShipYard.lua b/ShipYard.lua index 161e146..c0d3607 100644 --- a/ShipYard.lua +++ b/ShipYard.lua @@ -14,13 +14,18 @@ local kpairs=addon:GetKpairs() local format=format local strsplit=strsplit local select=select -local GetCurrencyInfo=GetCurrencyInfo local generated local GARRISON_CURRENCY=GARRISON_CURRENCY local GARRISON_SHIP_OIL_CURRENCY=GARRISON_SHIP_OIL_CURRENCY -local GARRISON_FOLLOWER_MAX_LEVEL=GARRISON_FOLLOWER_MAX_LEVEL -local LE_FOLLOWER_TYPE_GARRISON_6_0=LE_FOLLOWER_TYPE_GARRISON_6_0 -local LE_FOLLOWER_TYPE_SHIPYARD_6_2=LE_FOLLOWER_TYPE_SHIPYARD_6_2 +local GARRISON_FOLLOWER_MAX_LEVEL=40 +local LE_FOLLOWER_TYPE_GARRISON_6_0=Enum.GarrisonFollowerType.FollowerType_6_0 +local LE_FOLLOWER_TYPE_SHIPYARD_6_2=Enum.GarrisonFollowerType.FollowerType_6_2 +local LE_FOLLOWER_TYPE_GARRISON_7_0=Enum.GarrisonFollowerType.FollowerType_7_0 +local LE_FOLLOWER_TYPE_GARRISON_8_0=Enum.GarrisonFollowerType.FollowerType_8_0 +local LE_GARRISON_TYPE_6_0=Enum.GarrisonType.Type_6_0 +local LE_GARRISON_TYPE_6_2=Enum.GarrisonType.Type_6_2 +local LE_GARRISON_TYPE_7_0=Enum.GarrisonType.Type_7_0 +local LE_GARRISON_TYPE_8_0=Enum.GarrisonType.Type_8_0 local GARRISON_FOLLOWER_MAX_UPGRADE_QUALITY=GARRISON_FOLLOWER_MAX_UPGRADE_QUALITY[LE_FOLLOWER_TYPE_SHIPYARD_6_2] local module=addon:NewSubClass('ShipYard') --#Module local GameTooltip=GameTooltip @@ -171,7 +176,7 @@ function module:HookedGarrisonShipyardMap_SetupBonus(missionList,frame,mission) if not addendum then if mission.inProgress then return end i=i+1 - addendum=CreateFrame("Frame",nil,frame) + addendum=CreateFrame("Frame",nil,frame,"BackdropTemplate") addendum:SetPoint("TOP",frame,"BOTTOM",0,10) --@debug@ addendum:EnableMouse(true) @@ -209,7 +214,7 @@ function module:HookedGarrisonShipyardMap_SetupBonus(missionList,frame,mission) return end if cost and currency then - local _,available=GetCurrencyInfo(currency) + local available=C_CurrencyInfo.GetCurrencyInfo(currency)['quantity'] if cost>available then addendum:SetBackdropBorderColor(1,0,0) else @@ -309,7 +314,7 @@ print("Doing one time initialization for",this:GetName(),...) GSF.FollowerStatusInfo=GSF.BorderFrame:CreateFontString(nil, "OVERLAY", "GameFontNormal") GSF.ResourceInfo=GSF.BorderFrame:CreateFontString(nil, "OVERLAY", "GameFontNormal") - GSF.ResourceFormat="|TInterface\\Icons\\garrison_oil:0|t %s " .. GetCurrencyInfo(GARRISON_SHIP_OIL_CURRENCY) + GSF.ResourceFormat="|TInterface\\Icons\\garrison_oil:0|t %s " .. C_CurrencyInfo.GetCurrencyInfo(GARRISON_SHIP_OIL_CURRENCY)['name'] GSF.ResourceInfo:SetPoint("TOPLEFT",5,0) GSF.ResourceInfo:SetHeight(25) GSF.FollowerStatusInfo:SetPoint("TOPRIGHT",-30,0) @@ -386,7 +391,7 @@ function module:EventCHAT_MSG_CURRENCY(event) end function module:RefreshCurrency() if GSF:IsVisible() then - local qt=select(2,GetCurrencyInfo(GARRISON_SHIP_OIL_CURRENCY)) + local qt=C_CurrencyInfo.GetCurrencyInfo(GARRISON_SHIP_OIL_CURRENCY)['quantity'] GSF.ResourceInfo:SetFormattedText(GSF.ResourceFormat,qt) if qt > 1000 then GSF.ResourceInfo:SetTextColor(C.Green()) diff --git a/Widgets.lua b/Widgets.lua index 48a1130..aa04b8d 100644 --- a/Widgets.lua +++ b/Widgets.lua @@ -298,7 +298,7 @@ local function GMCLayer() end ---@function [parent=#GMCLayer] local function Constructor() - local frame=CreateFrame("Frame") + local frame=CreateFrame("Frame",nil,nil,"BackdropTemplate") local title=frame:CreateFontString(nil, "BACKGROUND", "GameFontNormalHugeBlack") title:SetJustifyH("CENTER") title:SetJustifyV("CENTER")