<?php
/**
 * 战令相关
 */
namespace Test\WarToken;

use Framework\MVC\ModelManager;
use Game\Constant\ConstTemplate\TemplateConst;
use Game\Constant\ModelTypeDefine;
use Game\Constant\TemplateDefine;
use Game\Data\WarTokenData;
use Game\Logic\PaiweiLevelLogic;
use Game\Logic\WarTokenLogic;
use Game\Model\MoneyModel;
use Game\Model\Task\WarTokenModel;
use Test\TestBase;


class TestWarToken extends TestBase
{
    use PaiweiLevelLogic;
    use WarTokenLogic;

    public function getPlayerId(): int
    {
        return 288693800506830788;
    }

    public function startTest()
    {
        /**
         * @var WarTokenModel $warTokenModel
         */
        $warTokenModel = ModelManager::getInstance()->getModel(ModelTypeDefine::WAR_TOKEN);

        // 获取战令信息
        $warTokenModel->sendMessage();

//        // 购买战令
//        $level = WarTokenData::EXPERT_FLAG_PRIMARY;
//        $code = $this->checkOpenExpertFlag();
//        // 开通对应战令
//        $this->openExpertFlag($level);
//        // 提升等级
//        $this->addZlLevel($level);

        // 购买等级
//        $level = 5;
//        $addExp = $this->getTerm(TemplateDefine::TYPE_CONST,
//            TemplateConst::Const_Task_ZL_Level_Exp,
//            TemplateConst::ConstNum);
//        $sub = $this->getTerm(TemplateDefine::TYPE_CONST,
//            TemplateConst::Const_ZL_Buy_Level_Sub,
//            TemplateConst::ConstNum);
//        $this->subItemByTID(MoneyModel::TYPE_DIAMOND, $sub * $level);
//        $warTokenModel->addWarTokenExp($addExp * $level);

        // 领取战令奖励
//        $code = $this->checkGetWarTokenReward(2, 2);
//        var_dump($code);
//        $this->getWarTokenReward(2,  2);


        // 查找可赠送战令好友
        // ok  net
        // 赠送战令
        // ok net

        // 索要战令
        // ok net

        // 拒绝索要
        // ok net

        // 领取赠送战令
        // ok net

        // 已开启 再次领取战令

        // 获取战令商城
        // ok net
        // 购买商城道具
        // ok net
    }
}

