EnvoyItem={} -- 鸿蒙守卫脚本 function EnvoyItem:New(gameObject) local b = {} b.gameObject = gameObject b.transform = gameObject.transform setmetatable(b, { __index = EnvoyItem }) return b end EnvoyItem.GongMingTable = {} EnvoyItem.HongMengData = {} EnvoyItem.data = nil function EnvoyItem:InitComponent(parent,data) self.data = data self.gameObject.transform:SetParent(parent.transform,false) self.lock = Util.GetGameObject(self.gameObject,"Box/Empty/lock") self.Empty = Util.GetGameObject(self.gameObject,"Box/Empty") self.timer_text = Util.GetGameObject(self.gameObject,"Box/Empty/frame/Text"):GetComponent("Text") self.AddImage = Util.GetGameObject(self.gameObject,"Box/Empty/frame/AddImage") self.RedPoint = Util.GetGameObject(self.gameObject,"Box/Empty/redPoint") -- Util.GetGameObject(self.gameObject, "GameObject/proIcon"):GetComponent("Image").sprite = Util.LoadSprite("r_hero_huo 1_zh") end function EnvoyItem:BindEvent() end function EnvoyItem:AddListener() end function EnvoyItem:RemoveListener() end function EnvoyItem:SetItemData(data) -- body self.data = data end function EnvoyItem:OnOpen() self.lock:SetActive(false) self:SetItem(self.gameObject,self.data) Util.AddOnceClick(self.gameObject,function () -- body HarmonyManager.GongMingBox = self.data.gridId if self.data.heroId~="" then -- body UIManager.OpenPanel(UIName.HongMengEnvoyUnloadPanel,self.data) else if self.data.time - GetTimeStamp() > 0 then local content = "" local money = math.ceil((self.data.time - GetTimeStamp()) / 432) content =string.format(Language[12189],money) MsgPanel.ShowTwo(content,function () MsgPanel.Hide() end,function () if BagManager.GetTotalItemNum(UpViewRechargeType.DemonCrystal) < money then PopupTipPanel.ShowTip(Language[10846]) MsgPanel.Hide() return end --向服务器 发消息 NetManager.UnlockGrid(self.data.gridId,2,function (msg) -- body for i = 1, #HarmonyManager.hongmengGuards do -- body if HarmonyManager.hongmengGuards[i].gridId ==self.data.gridId then HarmonyManager.hongmengGuards[i].time = 0 end end self.timer_text.text = "" self.data.time = 0 self.AddImage:SetActive(true) end,Language[10731],Language[11934]) end) -- body else UIManager.OpenPanel(UIName.HongMengChooseHeroPanel,true) end end end) end function EnvoyItem:UpdateFun() -- body self:SetItem(self.gameObject,self.data) end function EnvoyItem:SetItem(go,data) self.data = data -- LogGreen("HeroId",data.heroId) CheckRedPointStatus(RedPointType.HongMeng_Evory) if data.heroId ~= "" then -- body local heroSingleData = HeroManager.GetSingleHeroData(data.heroId) self.Empty:SetActive(false) self.RedPoint:SetActive(false) Util.GetGameObject(go.transform, "GameObject/frame"):GetComponent("Image").sprite = Util.LoadSprite(GetHeroQuantityImageByquality(heroSingleData.heroConfig.Quality,heroSingleData.star)) local data = HarmonyManager.GetSingleAdditions(HarmonyAddType.AddLv) if heroSingleData.lv == data then -- body Util.GetGameObject(go.transform, "GameObject/lv/Text"):GetComponent("Text").text = string.format("%d",heroSingleData.lv) else Util.GetGameObject(go.transform, "GameObject/lv/Text"):GetComponent("Text").text = string.format("%d",heroSingleData.lv) end Util.GetGameObject(go.transform, "GameObject/icon"):GetComponent("Image").sprite = Util.LoadSprite(heroSingleData.icon) Util.GetGameObject(go.transform, "GameObject/proIcon"):GetComponent("Image").sprite = Util.LoadSprite(GetProStrImageByProNum(heroSingleData.heroConfig.PropertyName)) local starGrid = Util.GetGameObject(go.transform, "GameObject/star") SetHeroStars(starGrid, heroSingleData.star,1,nil,nil,Vector2.New(0,1)) else self.Empty:SetActive(true) if self.data.time-GetTimeStamp() > 0 then -- body print(Language[12190]..self.data.time-GetTimeStamp()) self.AddImage:SetActive(false) self.RedPoint:SetActive(false) else print(Language[12191]) self.AddImage:SetActive(true) self.RedPoint:SetActive(true) end end end return EnvoyItem