123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- <?php
- namespace loyalsoft;
- /**
- * 玩家竞技场数据
- * @version
- * 2.0.0 改自原PVP数据(内容基本全换). 2020.5.7 -- gwang
- * 1.0.0 Created at 2017-7-4. by --gwang
- * @author gwang (mail@wanggangzero.cn)
- * @copyright ? 2017-7-4, SJZ LoyalSoft Corporation & gwang. All rights reserved.
- */
- class UserPVPModel extends Object_ext {
- /**
- * @var array[string] 每日/当天已挑战对手记录(有想法设定尽量不重复当天已经刷到过的对手)
- */
- public $dailyMatchRecord = array();
- /**
- * @var object 防守阵容
- */
- public $defTeam;
- /**
- * @var int 竞技币
- */
- public $pvpCoins = 0;
- /**
- * @var int 竞技场挑战票
- */
- public $fightTicket = 0;
- /**
- * @var 下次刷新时间
- */
- public $fightTicketRefreshTs = 0;
- /**
- * @var int 每天有3次免费挑战次数,每天8天重置
- */
- public $freeFightTickets = 0;
- /**
- * @var int 挑战记录最后拉取时间戳(晚于此时间戳的记录为新记录,显示小红点)
- */
- public $lastCheckDefLog_ts = 0;
- /**
- * @var type 当前竞技商店内道具列表(子结构可以记录售罄状态)
- */
- public $curShopItems;
- /**
- * @var int 商店下次刷新的时间戳(24小时自动刷新, 提前刷新扣钻)
- */
- public $shopRefreshTs = 0;
- /**
- * @var 今日未发放奖励(tsDay < today =>发放奖励并同步到today)
- */
- public $haventReward_tsDay = 0;
- /**
- * @var 赛季未发放奖励(seasonId < curSeason =>发放奖励并同步到curSeason)
- */
- public $haventReward_season = 0;
- /**
- * 刷新竞技商店道具列表
- */
- public function refreshShopItem() {
- if ($this->shopRefreshTs <= now()) { # 刷新ts<now(), 该刷新了
- // ...
- }
- }
- public function refreshDailyData() {
- // 刷新免费挑战次数
- if (tsDay($this->fightTicketRefreshTs) <= tsDay()) { # 刷新时间<=今天,该刷新了
- $this->freeFightTickets = 3; # 重置为3, 此处的3可以改为读取配置数据
- $this->fightTicketRefreshTs = now() + 86400; # 刷新时间设置为明天
- }
- // 刷新商店道具列表
- $this->refreshShowItem();
- }
- public function __construct($arg) {
- parent::__construct($arg);
- if (null == $this->defTeam) {
- $this->defTeam = JsonUtil::decode('{"heros":[]}');
- }
- }
- }
|