ro-table/Asstes/Resources/Script/FrameWork/GUI/view/EndlessTowerWaitView.txt
2025-06-04 05:02:57 +08:00

67 lines
1.8 KiB
Plaintext

autoImport("ListCtrl")
autoImport("CarrierWaitListCell")
EndlessTowerWaitView = class("EndlessTowerWaitView",ContainerView)
EndlessTowerWaitView.ViewType = UIViewType.PopUpLayer
function EndlessTowerWaitView:Init()
self.waitCell = self:LoadPreferb("cell/WaitCell", self.gameObject)
self.waitCell.transform.localPosition = Vector3.zero
self:FindObjs()
self:AddBtnEvents()
self:AddViewEvts()
self:InitShow()
end
function EndlessTowerWaitView:FindObjs()
self.startBtn = self:FindGO("StartBtn")
self.cancelBtn = self:FindGO("CancelBtn")
self.waitGrid = self:FindGO("WaitList"):GetComponent(UIGrid)
self.waitList = ListCtrl.new(self.waitGrid,CarrierWaitListCell,"CarrierWaitListCell")
end
function EndlessTowerWaitView:AddBtnEvents()
self:AddClickEvent(self.startBtn,function(go)
ServiceInfiniteTowerProxy.Instance:CallEnterTower(self.towerid,Game.Myself.data.id)
self:CloseSelf()
end)
self:AddClickEvent(self.cancelBtn,function(go)
ServiceInfiniteTowerProxy.Instance:CallTeamTowerInviteCmd(true)
self:CloseSelf()
end)
end
function EndlessTowerWaitView:AddViewEvts()
self:AddListenEvt(ServiceEvent.NUserBeFollowUserCmd, self.HandleFollowStateChange)
end
function EndlessTowerWaitView:InitShow()
if self.viewdata.viewdata then
self.towerid = self.viewdata.viewdata
end
self:UpdateWait()
end
function EndlessTowerWaitView:UpdateWait()
local members = EndlessTowerProxy.Instance:GetWaitData()
self.waitList:ResetDatas(members)
end
function EndlessTowerWaitView:HandleFollowStateChange(note)
local data = note.body
if data then
local cells = self.waitList:GetCells()
for i=1,#cells do
local cell = cells[i]
if cell.data.id == data.userid and cell.data:CanIn() then
cell:Agree( data.eType ~= SceneUser2_pb.EFOLLOWTYPE_BREAK )
break
end
end
end
end