<?php

namespace loyalsoft;

/**
 * Description of Info_PrivateState
 * 私有状态标志字
 */
class Info_PrivateState extends Object_ext {
// ------------字段声明------------- 

    /**
     * @var int 武器/言灵的uid,递增
     */
    public $currentId = 0;

    /**
     *
     * @var int 物品的背包格子的上限 目前和李宁协商的结果是:抽奖可以超上限,物品合成可以超上限,任务奖励可以超上限,只有战斗时候会有限制超过上限,如果继续战斗的话,战斗的奖励品将不会获取.
     */
    public $maxItemNum = 100;

    /**
     *
     * @var int 物品背包格子的数量.
     */
    public $ItemNum = 0;

    /**
     * 上次获取体力的时间戳
     * @var int
     */
    public $TiliTime;

    /**
     * 登录天数
     * @var array[12345,12347,...]
     */
    public $LoginDays = array();

    /**
     * @var array[1,2,3,4,5,6,7] 7日签到领取数据
     */
    public $day7_drawed = array();

    /**
     * @var array 兑换码使用记录
     */
    public $usedTokens = array();

    /**
     * @var int 在线礼包累计时长
     */
    public $onlineGiftts = 0;

    /**
     * @var List<int> 当前在线礼包ID(每天清空)
     */
    public $onlineGiftIDs;

    /**
     * @var array 全服注册礼包领取记录
     */
    public $drawedRegGift = array();

    /**
     * @var boolean 首付礼包是否领取
     */
    public $firstPayGift = false;

    /**
     * @var array 每日领取的体力奖励记录
     */
    public $dailyDrawedTiliGift = array();

    /**
     * 排行榜, 战力突破奖领取记录
     * @var array 
     */
    public $RankFpowerRewardRec = array();

    /**
     * 排行榜, 通关记录突破奖励领取记录
     * @var type 
     */
    public $RankPassGateRewardRec = array();

    /**
     * @var int 上次检查被挑战记录的时间戳
     */
    public $lastCheckDefLog_ts = 0;

    /**
     * 角标通知缓存
     * @var array[int]
     */
    public $cornerSignNotifications = array();

    /**
     * 已解锁建筑
     * @var array[int]
     */
    public $unlockedBuild = array();
    
    /**
     * 已经解锁得npc
     * @var type
     */
    public $unlockNpc = array();

// <editor-fold defaultstate="collapsed" desc="    初始化    ">

    /**
     * 玩家注册时初始化, 用于给各个字段赋默认初始值 
     */
    public function initialize() {
        $this->maxItemNum = GameConfig::primordial_data()->User_Private_MaxItem_num; # Ps.默认100; 
        $this->TiliTime = now();
    }
    /**
     * 添加已经解锁得npc
     * @param type $npcId
     */
    public function addUnlockNpc($npcId) {
        if(!in_array($npcId,$this->unlockNpc)){
            $this->unlockNpc[] = $npcId;
        }
    }

// </editor-fold>
}
