UserPVPModel.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. namespace loyalsoft;
  3. /**
  4. * 玩家竞技场数据
  5. * @version
  6. * 2.0.0 改自原PVP数据(内容基本全换). 2020.5.7 -- gwang
  7. * 1.0.0 Created at 2017-7-4. by --gwang
  8. * @author gwang (mail@wanggangzero.cn)
  9. * @copyright ? 2017-7-4, SJZ LoyalSoft Corporation & gwang. All rights reserved.
  10. */
  11. class UserPVPModel extends Object_ext {
  12. /**
  13. * @var array[string] 每日/当天已挑战对手记录(有想法设定尽量不重复当天已经刷到过的对手)
  14. */
  15. public $dailyMatchRecord = array();
  16. /**
  17. * @var object 防守阵容
  18. */
  19. public $defTeam = array("0", "0", "0");
  20. /**
  21. * @var int 竞技币
  22. */
  23. public $pvpCoins = 0;
  24. /**
  25. * @var int 竞技场挑战票
  26. */
  27. public $fightTicket = 0;
  28. /**
  29. * @var 下次刷新时间
  30. */
  31. public $fightTicketRefreshTs = 0;
  32. /**
  33. * @var int 每天有3次免费挑战次数,每天8天重置
  34. */
  35. public $freeFightTickets = 0;
  36. /**
  37. * @var int 挑战记录最后拉取时间戳(晚于此时间戳的记录为新记录,显示小红点)
  38. */
  39. public $lastCheckDefLog_ts = 0;
  40. /**
  41. * @var type 当前竞技商店内道具列表(子结构可以记录售罄状态)
  42. */
  43. public $curShopItems;
  44. /**
  45. * @var int 商店下次刷新的时间戳(24小时自动刷新, 提前刷新扣钻)
  46. */
  47. public $shopRefreshTs = 0;
  48. /**
  49. * @var 今日未发放奖励(tsDay < today =>发放奖励并同步到today)
  50. */
  51. public $haventReward_tsDay = 0;
  52. /**
  53. * @var 赛季未发放奖励(seasonId < curSeason =>发放奖励并同步到curSeason)
  54. */
  55. public $haventReward_season = 0;
  56. public function refreshDailyData() {
  57. // 刷新免费挑战次数
  58. if (tsDay($this->fightTicketRefreshTs) <= tsDay()) { # 刷新时间<=今天,该刷新了
  59. $this->freeFightTickets = 3; # 重置为3, 此处的3可以改为读取配置数据
  60. $this->fightTicketRefreshTs = now() + 86400; # 刷新时间设置为明天
  61. }
  62. }
  63. public function __construct($arg = null) {
  64. parent::__construct($arg);
  65. if (null == $this->curShopItems) {
  66. $this->curShopItems = GameConfig::pvp_shop();
  67. }
  68. }
  69. }