| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- local ZEventDispatchCenter = {}
- ZEventDispatchCenter.EventType = {
- -- UPDATE EVENT
- UPDATE_RETRY = "UPDATE_RETRY",
- UPDATE_STATE_INFO = "UPDATE_STATE_INFO",
- UPDATE_PROGRESS_PERCENT = "UPDATE_PROGRESS_PERCENT",
- UPDATE_SHOW_TIPS = "UPDATE_SHOW_TIPS",
- -- NET EVENT
- NET_CONNECT_STATE = "NET_CONNECT_STATE",
- HEARTBEAT = "HEARTBEAT",
- JOIN_MEETING_REQ = "JOIN_MEETING_REQ",
- JOIN_MEETING_RESP = "JOIN_MEETING_RESP",
- MEETING_SCREEN_RESP = "MEETING_SCREEN_RESP",
- -- CONFERENCE EVENT
- CONFERENCE_START = "CONFERENCE_START",
- -- UI
- PLAYER_MOVE_TO_CHAIRS = "PLAYER_MOVE_TO_CHAIRS",
- CAMERA_ROTATE_AFTER_PLAYER = "CAMERA_ROTATE_AFTER_PLAYER",
- UPDATE_MEETING_SCREEN = "UPDATE_MEETING_SCREEN"
- }
- ZEventDispatchCenter.EventQuene = {}
- function ZEventDispatchCenter:RegisterEvent(eventType, callback)
- print("--------------------> ZEventDispatchCenter:RegisterEvent eventType", eventType, callback)
- if self.EventType[eventType] == nil or type(callback) ~= "function" then
- print("ZEventDispatchCenter:RegisterEvent param is error~ eventType:", eventType)
- return
- end
- if self.EventQuene[eventType] == nil then
- self.EventQuene[eventType] = {}
- end
- --local index = table.getn(self.EventQuene[eventType])
- --self.EventQuene[eventType][index + 1] = callback
- table.insert(self.EventQuene[eventType], callback)
- end
- function ZEventDispatchCenter:UnregisterEvent(eventType, callback)
- print("--------------------> ZEventDispatchCenter:UnregisterEvent eventType", eventType, callback)
- if self.EventQuene[eventType] == nil or type(callback) ~= "function" then
- print("ZEventDispatchCenter:UnregisterEvent param is error~ eventType:", eventType)
- return
- end
- for k, v in pairs(self.EventQuene[eventType]) do
- if callback == v then
- table.remove(self.EventQuene[eventType], k)
- return
- end
- end
- end
- function ZEventDispatchCenter:DispatchEvent(eventType, ...)
- print("--------------------> ZEventDispatchCenter:Dispatch eventType", eventType)
- if self.EventType[eventType] == nil then
- print("ZEventDispatchCenter:DispatchEvent eventType is unknow : ", eventType)
- return
- end
- if self.EventQuene[eventType] == nil then
- print("ZEventDispatchCenter:DispatchEvent callback is nil eventType:", eventType)
- return
- end
- for k, v in pairs(self.EventQuene[eventType]) do
- v(...)
- end
- end
- return ZEventDispatchCenter
|