HundredDojoAreaData.lua 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. local HundredDojoAreaData = class('HundredDojoAreaData')
  2. function HundredDojoAreaData:ctor()
  3. end
  4. function HundredDojoAreaData:Clear()
  5. self.id = nil
  6. self.startTime = nil
  7. self.endTime = nil
  8. self.protectEndTime = nil
  9. self.playBrief = nil
  10. self.robotId = nil
  11. self.fightEndTime = nil
  12. self.guildId = nil
  13. self.guildName = nil
  14. self.slogan = nil
  15. self.valid = nil
  16. end
  17. function HundredDojoAreaData:Dispose()
  18. self.id = nil
  19. self.startTime = nil
  20. self.endTime = nil
  21. self.protectEndTime = nil
  22. self.playBrief = nil
  23. self.robotId = nil
  24. self.fightEndTime = nil
  25. self.guildId = nil
  26. self.guildName = nil
  27. self.slogan = nil
  28. self.valid = nil
  29. end
  30. function HundredDojoAreaData:SetValidState(valid)
  31. self.valid = valid
  32. end
  33. function HundredDojoAreaData:SetData(msgData)
  34. self.id = msgData.pos_idx
  35. self.startTime = msgData.owner_start_time
  36. self.endTime = msgData.owner_end_time
  37. self.protectEndTime = msgData.owner_protect_end_time
  38. self.playBrief = ProtocalDataNormal.ParsePlayerBriefInfo(msgData.owner_brief)
  39. self.robotId = msgData.owner_robot_id
  40. self.fightEndTime = msgData.fight_end_time
  41. self.guildId = msgData.guild_id
  42. self.guildName = msgData.guild_name
  43. self.slogan = nil
  44. self.valid = true
  45. return true
  46. end
  47. function HundredDojoAreaData:Clone()
  48. local newAreaData = HundredDojoAreaData:new()
  49. newAreaData.id = self.id
  50. newAreaData.startTime = self.endTime
  51. newAreaData.endTime = self.endTime
  52. newAreaData.protectEndTime = self.protectEndTime
  53. newAreaData.playBrief = self.playBrief
  54. newAreaData.robotId = self.robotId
  55. newAreaData.fightEndTime = self.fightEndTime
  56. newAreaData.guildId = self.guildId
  57. newAreaData.valid = self.valid
  58. return newAreaData
  59. end
  60. function HundredDojoAreaData:IsValidData()
  61. return self.valid
  62. end
  63. function HundredDojoAreaData:IsOccupy()
  64. if not self.valid then
  65. return false
  66. end
  67. if not self.id or self.id <= 0 then
  68. return false
  69. end
  70. if self.robotId and self.robotId > 0 then
  71. return true
  72. end
  73. if not self.endTime or self.endTime <= 0 then
  74. return false
  75. end
  76. return self.endTime > ManagerContainer.LuaTimerMgr:CurLuaServerTime()
  77. end
  78. function HundredDojoAreaData:GetStartTime()
  79. return self.startTime
  80. end
  81. function HundredDojoAreaData:GetEndTime()
  82. return self.endTime
  83. end
  84. function HundredDojoAreaData:IsProtected()
  85. if not self.valid then
  86. return false
  87. end
  88. if not self.protectEndTime or self.protectEndTime <= 0 then
  89. return false
  90. end
  91. return self.protectEndTime > ManagerContainer.LuaTimerMgr:CurLuaServerTime()
  92. end
  93. function HundredDojoAreaData:GetProtectEndTime()
  94. return self.protectEndTime
  95. end
  96. function HundredDojoAreaData:GetRobotId()
  97. return self.robotId
  98. end
  99. function HundredDojoAreaData:GetPlayBrief()
  100. return self.playBrief
  101. end
  102. function HundredDojoAreaData:IsFighting()
  103. if not self.valid then
  104. return false
  105. end
  106. if not self.fightEndTime or self.fightEndTime <= 0 then
  107. return false
  108. end
  109. return self.fightEndTime > ManagerContainer.LuaTimerMgr:CurLuaServerTime()
  110. end
  111. function HundredDojoAreaData:GetFightEndTime()
  112. return self.fightEndTime
  113. end
  114. function HundredDojoAreaData:GetGuildId()
  115. return self.guildId
  116. end
  117. function HundredDojoAreaData:GetGuildName()
  118. return self.guildName
  119. end
  120. function HundredDojoAreaData:GetSlogan()
  121. return self.playBrief and self.playBrief.hundredDojoSlogan or nil
  122. end
  123. return HundredDojoAreaData