發公告lua程式碼
--addText方法由伺服器向客戶端發訊息時呼叫,之後不斷增加公告數量,一直到最後一條公告播完 function bull.addText(text) --顯示的內容和當前時間 if self._listShow == nil then self._listShow = {} end local tb = {} tb.text = text tb.time = 當前時間 self._listShow[#self._listShow + 1] = tb self:SetActive(true) --顯示 end
function bull.onUpdate() --每0.5秒執行一次 if 是否需要顯示 then return end if self._passedTime <= 0 then --當前這條公告到達需要顯示的時間 local tb = self._listShow[1] if tb == nil then self:SetShow(false) else table.remove(self._listShow,1) --先刪除當前的公告 if (當前時間 - tb.time) >= 10分鐘 then --10分鐘之前的公告將被一次性全部清乾淨 self.onUpdate() return else self._text:SetText(tb.text) --設定公告 self._passedTime = self._passedTime + 5秒鐘 end end else self._passedTime = self._passedTime - 0.5秒 --每0.5秒做一次判斷 end end