源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

65 lines
2.0 KiB

  1. BaseAlert = BaseAlert or BaseClass(BaseView)
  2. function BaseAlert:__init(show_content, type,
  3. ok_callback, cancel_callback,
  4. ok_text, cancel_text,
  5. left_time,is_close_hide,consumable,content_align,ok_left,toggle_text,layer_name,
  6. bg_res, alert_title, close_callback, defalut_toggle, toggle_function,ok_btn_gray,cancel_btn_gray)
  7. self.layer_name = layer_name or "Top"
  8. self.hide_maincancas = false
  9. self.show_content = show_content
  10. self.type = type
  11. self.ok_callback = ok_callback
  12. self.cancel_callback = cancel_callback
  13. self.ok_text = ok_text
  14. self.cancel_text = cancel_text
  15. self.left_time = left_time
  16. self.is_close_hide = is_close_hide
  17. self.is_set_zdepth = true
  18. self.consumable = consumable
  19. self.content_align = content_align
  20. self.ok_left = ok_left
  21. self.toggle_text = toggle_text
  22. self.bg_res = bg_res -- 背景图资源
  23. self.alert_title = alert_title -- 提示标题
  24. self.close_callback = close_callback -- 关闭回调
  25. self.defalut_toggle = defalut_toggle -- 勾选初始化状态
  26. self.toggle_function = toggle_function -- 勾选回调
  27. self.ok_btn_gray = ok_btn_gray -- 确定按钮是否变灰
  28. self.cancel_btn_gray = cancel_btn_gray -- 取消按钮是否变灰
  29. end
  30. function BaseAlert:SetBaseInfo()
  31. if self.is_close_hide then
  32. self.closeBtn:SetActive(false)
  33. end
  34. if self.left_time and self.left_time > 0 then
  35. local function onTimer()
  36. self.cancelText.text = (self.cancel_text or "取消") .. "".. self.left_time ..""
  37. if self.left_time > 1 then
  38. self.left_time = self.left_time - 1
  39. else
  40. self:Close()
  41. end
  42. end
  43. self.left_time_timer_id = GlobalTimerQuest:AddPeriodQuest(onTimer, 1, -1)
  44. onTimer()
  45. end
  46. if self.content_align and self.contenText then
  47. self.contenText.alignment = self.content_align
  48. end
  49. end
  50. function BaseAlert:Close()
  51. if self.close_callback then
  52. self.close_callback()
  53. self.close_callback = nil
  54. end
  55. if self.left_time_timer_id then
  56. GlobalTimerQuest:CancelQuest(self.left_time_timer_id)
  57. self.left_time_timer_id = nil
  58. end
  59. BaseView.Close(self)
  60. end