| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- local UIDojoMatchView = require("UIDojo/UIDojoMatchView_Generate")
- function UIDojoMatchView:OnAwake(data)
- self.controller = require("UIDojo/UIDojoMatchCtr"):new()
- self.controller:Init(self)
- self.controller:SetData(data)
- end
- function UIDojoMatchView:AddEventListener()
- ManagerContainer.LuaEventMgr:RegisterUIEvent(self.uiData.name, UIEventNames.EID_Loading_Progress, self, self.OnLoadingProgress)
- ManagerContainer.LuaEventMgr:RegisterUIEvent(self.uiData.name, UIEventNames.EID_Loading_Complete, self, self.OnLoadingComplete)
- end
- function UIDojoMatchView:FillContent(data, uiBase)
- self.uiBase = uiBase
- local gameObject = self.uiBase:GetRoot()
- if gameObject ~= nil then
- self.gameObject = gameObject
- self.transform = gameObject.transform
- end
- self:InitGenerate(self.transform, data)
- self.emptyNode:SetActive(true)
- self:Init()
- end
- function UIDojoMatchView:Init()
- self.MatchingNode:SetActive(false)
- self.VSNode:SetActive(true)
- self:SetOurMembers()
- self:SetEnemyMembers()
- self.progress.image.fillAmount = 0
- self.progressTxt.text.text = "0%"
- ManagerContainer.LuaTimerMgr:AddTimer(1000, 1,self,self.NtfLoaded,nil)
- end
- function UIDojoMatchView:NtfLoaded()
- ManagerContainer.LuaEventMgr:Dispatch(UIEventNames.EID_Loaded_Page_OK)
- end
- function UIDojoMatchView:SetOurMembers()
- local data = self.controller:GetData()
- if data then
- local ourMembers = data['ourActors']
- if ourMembers ~= nil then
- CommonUtil.LoopGridViewEleCreateNew(self,
- self.rightMemberScrollView.loopVerticalScrollRect,
- self.rightContent.gridLayoutGroup,ourMembers,0,self,self.OnUpdateOurMemberData)
- end
- end
- end
- function UIDojoMatchView:SetEnemyMembers()
- local data = self.controller:GetData()
- if data then
- local enemyMembers = data['enemyActors']
- if enemyMembers ~= nil then
- CommonUtil.LoopGridViewEleCreateNew(self,
- self.leftMemberScrollView.loopVerticalScrollRect,
- self.leftContent.gridLayoutGroup,enemyMembers,0,self,self.OnUpdateEnemyMemberData)
- self.emptyNode:SetActive(false)
- end
- end
- end
- function UIDojoMatchView:RemoveEventListener()
- ManagerContainer.LuaEventMgr:Unregister(self.uiData.name)
- end
- function UIDojoMatchView:AddUIEventListener()
- end
- function UIDojoMatchView:OnHide()
- end
- function UIDojoMatchView:OnShow(data)
- self.controller:SetData(data)
- self:Init()
- end
- function UIDojoMatchView:OnClose()
- end
- function UIDojoMatchView:OnDispose()
- self.rightMemberScrollView.loopVerticalScrollRect:ClearCells()
- self.leftMemberScrollView.loopVerticalScrollRect:ClearCells()
- end
- function UIDojoMatchView:OnUpdateOurMemberData(actorLua,idx,actorData)
- self:SetActorItemData(actorLua,actorData)
- end
- function UIDojoMatchView:OnUpdateEnemyMemberData(actorLua,idx,actorData)
- self:SetActorItemData(actorLua,actorData)
- end
- function UIDojoMatchView:SetActorItemData(actorLua,actorData)
- if actorLua == nil or actorData == nil then
- return
- end
- CommonUtil.SetPlayerHeadAndFrame(self, actorLua.headItem, actorData,false,actorData.HeadFrameId)
- actorLua.name.text.text = actorData.Name
- end
- function UIDojoMatchView:OnLoadingProgress(progress)
- if progress > 1 then
- progress = 1
- end
- self.progress.image.fillAmount = progress
- self.progressTxt.text.text = math.floor(progress*100).."%"
- end
- function UIDojoMatchView:OnLoadingComplete()
- self.progress.image.fillAmount = 1
- self.progressTxt.text.text = "100%"
- ManagerContainer.LuaTimerMgr:AddTimer(300, 1,self,self.OnDelayClose,nil)
- end
- function UIDojoMatchView:OnDelayClose()
- ManagerContainer.LuaUIMgr:ClosePage(Enum.UIPageName.UIDojoMatch)
- end
- return UIDojoMatchView
|