gdl_123 пре 3 месеци
родитељ
комит
1b691e99a9

Разлика између датотеке није приказан због своје велике величине
+ 346 - 58
Assets/Content/Prefabs/UI/UIWaiting/UIWaiting.prefab


+ 5 - 5
Assets/Lua/Core/PlatformPack.lua

@@ -1,9 +1,9 @@
 local PlatformPack = {
-	URL_KEY = 'http://43.226.57.217:81//',
-	SERVERLIST_URL = 'http://43.226.57.217:81//serverlist',
-	NOTIFY_URL = 'http://43.226.57.217:88/res/NoticeNew/',
-	SPECIAL_INFO_URL = 'http://43.226.57.217:81//channel',
-	CUSTOMER_SERVICE_INFO_URL = 'http://43.226.57.217:81//vipService',
+	URL_KEY = 'http://43.156.13.116:81//',
+	SERVERLIST_URL = 'http://43.156.13.116:81//serverlist',
+	NOTIFY_URL = 'http://43.156.13.116:88/res/NoticeNew/',
+	SPECIAL_INFO_URL = 'http://43.156.13.116:81//channel',
+	CUSTOMER_SERVICE_INFO_URL = 'http://43.156.13.116:81//vipService',
 }
 
 return PlatformPack

+ 7 - 0
Assets/Lua/Managers/LuaUIMgr.lua

@@ -424,6 +424,13 @@ function LuaUIMgr:ShowNetWaiting()
     self:Open(Enum.UIPageName.UIWaiting)
 end
 
+function LuaUIMgr:ShowNetWaiting_New(data)
+    if self:HasOpenPage(Enum.UIPageName.UIWaiting) then
+        return
+    end
+    self:Open(Enum.UIPageName.UIWaiting,data)
+end
+
 function LuaUIMgr:CloseNetWaiting()
     self:ClosePage(Enum.UIPageName.UIWaiting)
 end

+ 18 - 0
Assets/Lua/UI/UIWaiting/UIWaitingCtr.lua

@@ -2,12 +2,25 @@ local UIWaitingCtr = class("UIWaitingCtr", require("UICtrBase"))
 
 function UIWaitingCtr:Init(view)
 	self.view = view
+	self.NoticeType = -1
+	self.NoticeText = ""
+	self.TimeData = nil
 end
 
 function UIWaitingCtr:SetData(data)
 	self.asyncIdx = 0
 	if data == nil then return end
 	self.data = data
+	self.NoticeType = -1
+	self.NoticeText = ""
+	self.TimeData = nil
+	
+	if self.data then
+		self.NoticeType = self.data[1] or -1
+		self.NoticeText = self.data[2] or ""
+		self.TimeData = self.data[3]
+	end
+
 end
 
 function UIWaitingCtr:GetAsyncIdx()
@@ -24,5 +37,10 @@ function UIWaitingCtr:OnDispose()
 	self.view = nil
 end
 
+
+function UIWaitingCtr:GetNoticeType()
+	return self.NoticeType
+end
+
 return UIWaitingCtr
 

+ 57 - 1
Assets/Lua/UI/UIWaiting/UIWaitingView.lua

@@ -23,6 +23,13 @@ function UIWaitingView:FillContent(data, uiBase)
 end
 
 function UIWaitingView:Init()
+	--LogError("Type = "..self.controller.NoticeType)
+	self.noticeRoot:SetActive(self.controller.NoticeType >= 0)
+	if self.controller.NoticeType == 1 then -- 普通
+		self.notice.text.text = self.controller.NoticeText
+	elseif self.controller.NoticeType == 2 then --计时
+		self:AutoPlayTimer()
+	end
 end
 
 function UIWaitingView:RemoveEventListener()
@@ -36,7 +43,10 @@ function UIWaitingView:AddUIEventListener()
 end
 
 function UIWaitingView:OnHide()
-
+	if self.curTimer then
+		ManagerContainer.LuaTimerMgr:RemoveTimer(self.curTimer)
+		self.curTimer = nil
+	end
 end
 
 function UIWaitingView:OnShow(data)
@@ -45,6 +55,10 @@ function UIWaitingView:OnShow(data)
 end
 
 function UIWaitingView:OnClose()
+	if self.curTimer then
+		ManagerContainer.LuaTimerMgr:RemoveTimer(self.curTimer)
+		self.curTimer = nil
+	end
 
 end
 
@@ -53,5 +67,47 @@ function UIWaitingView:OnDispose()
 
 end
 
+
+function UIWaitingView:AutoPlayTimer()
+	self.maxTime = self.controller.TimeData[1]
+	self.dtTime = self.controller.TimeData[2]
+	self.TimerCount = math.ceil(self.maxTime/self.dtTime)
+	self.EndTimerCb =  self.controller.TimeData[3]
+	self.EndTimerCbParams =  self.controller.TimeData[4]
+	self.curTime =0
+	self.curTimer = nil
+
+	--LogError("maxTime = "..self.maxTime.."	 dtTime = "..self.dtTime.."	 TimerCount = "..self.TimerCount)
+	self:StartTimer()
+end
+
+
+function  UIWaitingView:StartTimer()
+
+	self.notice.text.text = string.formatbykey(self.controller.NoticeText,tostring(self.maxTime))
+	self.curTimer = ManagerContainer.LuaTimerMgr:AddLuaTimer(self.dtTime * 1000, self.TimerCount,function ()
+		self:UpdateTimer()
+	end, nil)
+end
+
+
+function UIWaitingView:UpdateTimer()
+    self.curTime = self.curTime + 1
+    --self.timersTxt.text.text = tostring(self.maxTime - self.curTime)
+	--string.formatbykey('WalletGold',price)--tostring(price)  
+-- if self.notice then
+--     self.notice.text.text = string.formatbykey(self.controller.NoticeText,
+--         tostring(self.maxTime - (self.dtTime * self.curTime)))
+-- end
+
+	
+	self.notice.text.text = string.formatbykey(self.controller.NoticeText,tostring(self.maxTime - (self.dtTime* self.curTime)))
+    if (self.TimerCount <= self.curTime) then
+		ManagerContainer.LuaTimerMgr:RemoveTimer(self.curTimer)
+		self.curTimer = nil
+		self.EndTimerCb(self.EndTimerCbParams)
+    end
+end
+
 return UIWaitingView
 

+ 66 - 0
Assets/Lua/UI/UIWaiting/UIWaitingView_Generate.lua

@@ -1,6 +1,17 @@
+---@class UIWaiting__Generate_cancelBtn
+---@field public gameObject UnityEngine.GameObject
+---@field public button UnityEngine.UI.Button
+
+---@class UIWaiting__Generate_notice
+---@field public gameObject UnityEngine.GameObject
+---@field public text UnityEngine.UI.Text
+
 ---@class UIWaiting__Generate
 ---@field private gameObject UnityEngine.GameObject
 ---@field private transform UnityEngine.Transform
+---@field private noticeRoot UnityEngine.GameObject
+---@field private notice UIWaiting__Generate_notice
+---@field private cancelBtn UIWaiting__Generate_cancelBtn
 local UIWaitingView = class("UIWaitingView", require("UIViewBase"))
 
 function UIWaitingView:ctor()
@@ -20,12 +31,67 @@ function UIWaitingView:InitGenerate(Root, data)
 	end
 	local tmp
 
+	self:InitGenerate__1(Root,data)
+	self:InitGenerate__2(Root,data)
+	self:InitGenerate__3(Root,data)
 
 
 end
 
+---@private
+function UIWaitingView:InitGenerate__1(Root, data)
+--[[
+	WaitingRoot/NoticeRoot
+--]]
+	local tmp = Root:Find("WaitingRoot/NoticeRoot").gameObject
+	if tolua.getpeer(tmp) == nil then
+		tolua.setpeer(tmp, {})
+	end
+	self.noticeRoot = tmp
+end
+
+---@private
+function UIWaitingView:InitGenerate__2(Root, data)
+--[[
+	WaitingRoot/NoticeRoot/Notice
+--]]
+	local tmp = Root:Find("WaitingRoot/NoticeRoot/Notice").gameObject
+	if tolua.getpeer(tmp) == nil then
+		tolua.setpeer(tmp, {})
+	end
+	self.notice = tmp
+
+	tmp.text = tmp:GetComponent(Enum.TypeInfo.Text)
+end
+
+---@private
+function UIWaitingView:InitGenerate__3(Root, data)
+--[[
+	WaitingRoot/NoticeRoot/CancelBtn
+--]]
+	local tmp = Root:Find("WaitingRoot/NoticeRoot/CancelBtn").gameObject
+	if tolua.getpeer(tmp) == nil then
+		tolua.setpeer(tmp, {})
+	end
+	self.cancelBtn = tmp
+
+	tmp.button = tmp:GetComponent(Enum.TypeInfo.Button)
+end
+
 ---@private
 function UIWaitingView:GenerateDestroy()
+	if tolua.getpeer(self.noticeRoot) ~= nil then
+		tolua.setpeer(self.noticeRoot, nil)
+	end
+	self.noticeRoot = nil
+	if tolua.getpeer(self.notice) ~= nil then
+		tolua.setpeer(self.notice, nil)
+	end
+	self.notice = nil
+	if tolua.getpeer(self.cancelBtn) ~= nil then
+		tolua.setpeer(self.cancelBtn, nil)
+	end
+	self.cancelBtn = nil
 	self.transform = nil
 	self.gameObject = nil
 	self.inited = false

Неке датотеке нису приказане због велике количине промена