161 lines
5.4 KiB
Lua
161 lines
5.4 KiB
Lua
HarmonyView={}
|
||
-- 鸿蒙守卫脚本
|
||
function HarmonyView:New(gameObject)
|
||
local b = {}
|
||
b.gameObject = gameObject
|
||
b.transform = gameObject.transform
|
||
setmetatable(b, { __index = HarmonyView })
|
||
return b
|
||
end
|
||
HarmonyView.GongMingTable = {}
|
||
HarmonyView.HongMengData = {}
|
||
function HarmonyView:InitComponent()
|
||
local num = self.gameObject.transform.childCount
|
||
-- for i = 0, num-1 do
|
||
-- self.GongMingTable[i] =self.gameObject.transform:GetChild(i).gameObject
|
||
-- end
|
||
for i = 1, 6 do
|
||
self.GongMingTable[i] = Util.GetGameObject(self.gameObject, "item (" .. i .. ")")
|
||
end
|
||
end
|
||
|
||
|
||
function HarmonyView:BindEvent()
|
||
|
||
end
|
||
|
||
function HarmonyView:AddListener()
|
||
|
||
end
|
||
|
||
function HarmonyView:RemoveListener()
|
||
|
||
end
|
||
|
||
function HarmonyView:SetGreen(HongMengData)
|
||
|
||
local min = HongMengData[#self.GongMingTable].lv
|
||
for i = 0, #self.GongMingTable do
|
||
if HongMengData[i+1].lv == min then
|
||
self.count=self.count+1;
|
||
end
|
||
end
|
||
|
||
end
|
||
function HarmonyView:InitData(data)
|
||
table.sort(data, function(a,b)
|
||
if a.lv==b.lv then
|
||
return a.warPower > b.warPower
|
||
else
|
||
return a.lv > b.lv
|
||
end
|
||
end)
|
||
-- return data
|
||
end
|
||
function HarmonyView:OnOpen()
|
||
local heroDataList = {}
|
||
if HarmonyManager.hongmengGuards and #HarmonyManager.hongmengGuards > 0 then
|
||
for i = 1, #HarmonyManager.hongmengGuards do
|
||
if HarmonyManager.hongmengGuards[i].heroId ~= "" then
|
||
-- body
|
||
|
||
table.insert(heroDataList,HeroManager.GetSingleHeroData(HarmonyManager.hongmengGuards[i].heroId))
|
||
--LogBlue("刷新IsHaveHero:"..HarmonyManager.hongmengGuards[i].heroId.." ::: "..tostring(HeroManager.IsHaveHero(HarmonyManager.hongmengGuards[i].heroId)))
|
||
if not HeroManager.IsHaveHero(HarmonyManager.hongmengGuards[i].heroId) then
|
||
for k = 1, #HarmonyManager.hongmengHeroInfos do
|
||
-- body
|
||
if HarmonyManager.hongmengGuards[i].heroId == HarmonyManager.hongmengHeroInfos[k].heroId then
|
||
-- body
|
||
LogPink(HeroManager.GetSingleHeroData(HarmonyManager.hongmengHeroInfos[k].heroId))
|
||
end
|
||
end
|
||
-- body
|
||
end
|
||
end
|
||
|
||
end
|
||
end
|
||
--LogGreen("heroDataList长度:"..#heroDataList)
|
||
-- if #heroDataList > 0 then
|
||
-- table.sort(heroDataList, function(a,b)
|
||
-- if a.lv==b.lv then
|
||
-- return a.warPower > b.warPower
|
||
-- else
|
||
-- return a.lv > b.lv
|
||
-- end
|
||
-- end)
|
||
-- end
|
||
|
||
|
||
-- self.count = 1;
|
||
-- self:SetGreen(self.HongMengData)
|
||
--LogGreen(heroDataList[6].name)
|
||
|
||
for i = 1, 6 do
|
||
local singleHeroData = {}
|
||
if heroDataList[i] then
|
||
singleHeroData = heroDataList[i]
|
||
self.HongMengData[i] = singleHeroData
|
||
if heroDataList[i].lv== heroDataList[#heroDataList].lv then
|
||
-- body
|
||
|
||
self:SetItem(self.HongMengData[i],self.GongMingTable[i],1)
|
||
else
|
||
self:SetItem(self.HongMengData[i],self.GongMingTable[i],0)
|
||
end
|
||
|
||
|
||
else
|
||
self.HongMengData[i] = singleHeroData
|
||
self:SetItem(nil,self.GongMingTable[i],0)
|
||
end
|
||
end
|
||
|
||
HarmonyManager.equipCount = 0
|
||
for i = 1, #self.HongMengData do
|
||
if self.HongMengData[i] then
|
||
-- body
|
||
if self.HongMengData[i].equipIdList then
|
||
-- body
|
||
for i = 1, #self.HongMengData[i].equipIdList do
|
||
HarmonyManager.equipCount= HarmonyManager.equipCount+1
|
||
end
|
||
end
|
||
|
||
end
|
||
|
||
end
|
||
print(Language[12229]..HarmonyManager.equipCount)
|
||
-- for i = 0, #self.GongMingTable do
|
||
-- if i == 5 then
|
||
-- self:SetItem(self.HongMengData[i+1],self.GongMingTable[i],1)
|
||
-- else
|
||
-- self:SetItem(self.HongMengData[i+1],self.GongMingTable[i],0)
|
||
-- end
|
||
-- end
|
||
|
||
HarmonyManager:SetGuardList(self.HongMengData,#heroDataList)
|
||
end
|
||
|
||
function HarmonyView:SetItem(data,go,flag)
|
||
if data then
|
||
Util.GetGameObject(go.transform,"GameObject/infoGo"):SetActive(true)
|
||
Util.GetGameObject(go.transform, "GameObject/frame"):GetComponent("Image").sprite = Util.LoadSprite(GetHeroQuantityImageByquality(data.heroConfig.Quality,data.star))
|
||
if flag == 0 then
|
||
Util.GetGameObject(go.transform, "GameObject/infoGo/lv/Text"):GetComponent("Text").text = data.lv
|
||
else
|
||
Util.GetGameObject(go.transform, "GameObject/infoGo/lv/Text"):GetComponent("Text").text = string.format("<color=#0f0>%d</color>",data.lv)
|
||
end
|
||
|
||
Util.GetGameObject(go.transform, "GameObject/icon"):GetComponent("Image").sprite = Util.LoadSprite(data.icon)
|
||
|
||
Util.GetGameObject(go.transform, "GameObject/infoGo/proIcon"):GetComponent("Image").sprite = Util.LoadSprite(GetProStrImageByProNum(data.heroConfig.PropertyName))
|
||
local starGrid = Util.GetGameObject(go.transform, "GameObject/infoGo/star")
|
||
SetHeroStars(starGrid, data.star,1,nil,nil,Vector2.New(0,1))
|
||
else
|
||
Util.GetGameObject(go.transform,"GameObject/infoGo"):SetActive(false)
|
||
|
||
end
|
||
|
||
end
|
||
return HarmonyView |