源战役客户端
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.

75 rivejä
1.8 KiB

4 viikkoa sitten
  1. --[[
  2. 使
  3. MainRightTop界面在几种情况下需要隐藏1.2.3.4. ...
  4. MainRightTop里定于一个变量 self.visibleState = StateFlag.New()
  5. self.visibleState:addState(StateFlag.H1)--添加1隐藏状态
  6. self.visibleState:delState(StateFlag.H1)--移除1隐藏状态
  7. self.isInstate()==false--显示界面(false表示没添加有任何隐藏状态)
  8. self.visibleState:addState(StateFlag.H2)--添加2隐藏状态
  9. self.visibleState:delState(StateFlag.H2)--移除2隐藏状态
  10. self.isInstate()==false--显示界面(false表示没添加有任何隐藏状态)
  11. ...
  12. ]]
  13. StateFlag=StateFlag or BaseClass()
  14. -- StateFlag状态常量
  15. StateFlag.H0=0x0
  16. StateFlag.H1=0x1
  17. StateFlag.H2=0x2
  18. StateFlag.H3=0x4
  19. StateFlag.H4=0x8
  20. StateFlag.H5=0x10
  21. StateFlag.H6=0x20
  22. StateFlag.H7=0x40
  23. StateFlag.H8=0x80
  24. StateFlag.H9=0x100
  25. StateFlag.H10=0x200
  26. StateFlag.H11=0x400
  27. StateFlag.H12=0x800
  28. StateFlag.H13=0x1000
  29. StateFlag.H14=0x2000
  30. StateFlag.H15=0x4000
  31. StateFlag.H16=0x8000
  32. --[[@
  33. :
  34. ]]
  35. function StateFlag:__init()
  36. -- 状态值
  37. self.value=StateFlag.H0
  38. end
  39. -- 设置初始值
  40. function StateFlag:initValue(val)
  41. self.value = val or StateFlag.H0
  42. end
  43. -- 添加状态量
  44. -- 参数state:StateFlag状态常量
  45. function StateFlag:addState(state)
  46. self.value = bit.bor(self.value, state)
  47. end
  48. -- 删除状态量
  49. -- 参数state:StateFlag状态常量
  50. function StateFlag:delState(state)
  51. self.value = bit.band(self.value,bit.bnot(state))
  52. end
  53. -- 是否有状态值
  54. function StateFlag:isInstate()
  55. return self.value>0
  56. end
  57. -- 获取状态值
  58. function StateFlag:isWhat()
  59. return self.value
  60. end