源战役客户端
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

44 строки
1.0 KiB

1 месяц назад
  1. require("game.common.BarrageView")
  2. require("game.common.BarrageItem")
  3. BarrageManager = BarrageManager or BaseClass(BaseController)
  4. function BarrageManager:__init()
  5. BarrageManager.Instance = self
  6. self.max_count_limit = 20
  7. self.width = ScreenWidth
  8. self.height = ScreenHeight - 300
  9. end
  10. function BarrageManager:getInstance()
  11. if not BarrageManager.Instance then
  12. BarrageManager.Instance = BarrageManager.New()
  13. end
  14. return BarrageManager.Instance
  15. end
  16. --[[
  17. data = {
  18. str = "弹幕内容",
  19. fontSize = ,
  20. duration = ,
  21. }
  22. ]]
  23. function BarrageManager:AppendItem(data)
  24. if not self.barrageView then
  25. self.barrageView = BarrageView.New()
  26. end
  27. if not self.barrageView:HasOpen() then
  28. self.barrageView:Open()
  29. end
  30. self.barrageView:AppendNewItem(data)
  31. end
  32. function BarrageManager:GetRandomFirePosY()
  33. local curTime = os.time()
  34. if self.last_random_time ~= curTime then
  35. self.last_random_time = curTime
  36. --math.randomseed(curTime)
  37. math.random(-self.height/2, self.height/2)
  38. end
  39. return math.random(-self.height/2, self.height/2)
  40. end