<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: Client_Game_Packet.proto

namespace Game\Protobuf;

use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;

/**
 *匹配到的玩家信息
 *
 * Generated from protobuf message <code>Game.Protobuf.PlayerInfo</code>
 */
class PlayerInfo extends \Google\Protobuf\Internal\Message
{
    /**
     * 玩家唯一id
     *
     * Generated from protobuf field <code>uint64 PlayerId = 1;</code>
     */
    protected $PlayerId = 0;
    /**
     * 车唯一id   暂时不用
     *
     * Generated from protobuf field <code>uint64 CarId = 2;</code>
     */
    protected $CarId = 0;
    /**
     * 昵称
     *
     * Generated from protobuf field <code>string NickName = 3;</code>
     */
    protected $NickName = '';
    /**
     * 头像
     *
     * Generated from protobuf field <code>int32 head = 4;</code>
     */
    protected $head = 0;
    /**
     * 车辆模板Id
     *
     * Generated from protobuf field <code>int32 CarTplId = 5;</code>
     */
    protected $CarTplId = 0;
    /**
     * 分组ID
     *
     * Generated from protobuf field <code>int32 GroupID = 6;</code>
     */
    protected $GroupID = 0;
    /**
     * 车辆外观数据
     *
     * Generated from protobuf field <code>string ExteriorRefit = 7;</code>
     */
    protected $ExteriorRefit = '';
    /**
     * Generated from protobuf field <code>int32 Gender = 8;</code>
     */
    protected $Gender = 0;
    /**
     * Generated from protobuf field <code>.Game.Protobuf.ClothData Cloth = 9;</code>
     */
    protected $Cloth = null;
    /**
     *熟练度等级
     *
     * Generated from protobuf field <code>int32 ProficiencyLv = 10;</code>
     */
    protected $ProficiencyLv = 0;
    /**
     *熟练度经验
     *
     * Generated from protobuf field <code>int32 Proficiency = 11;</code>
     */
    protected $Proficiency = 0;
    /**
     *位置,排位赛用.个人排位1-6,组队排位:1,2竞速位 3,4干扰位 5,6辅助位
     *
     * Generated from protobuf field <code>int32 Position = 12;</code>
     */
    protected $Position = 0;
    /**
     * 玩家角色类型 1 玩家 2 观战
     *
     * Generated from protobuf field <code>int32 RoleType = 13;</code>
     */
    protected $RoleType = 0;
    /**
     *大乱斗积分
     *
     * Generated from protobuf field <code>int32 ScuffleScore = 14;</code>
     */
    protected $ScuffleScore = 0;
    /**
     *连胜次数
     *
     * Generated from protobuf field <code>int32 ContinuityWin = 15;</code>
     */
    protected $ContinuityWin = 0;
    /**
     *肤色
     *
     * Generated from protobuf field <code>int32 SkinColor = 16;</code>
     */
    protected $SkinColor = 0;
    /**
     *车等级
     *
     * Generated from protobuf field <code>int32 CarLv = 17;</code>
     */
    protected $CarLv = 0;
    /**
     *玩家等级
     *
     * Generated from protobuf field <code>int32 Level = 18;</code>
     */
    protected $Level = 0;
    /**
     *段位等级
     *
     * Generated from protobuf field <code>int32 Dan = 19;</code>
     */
    protected $Dan = 0;
    /**
     *地图最佳时间
     *
     * Generated from protobuf field <code>int32 BestTime = 20;</code>
     */
    protected $BestTime = 0;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type int|string $PlayerId
     *           玩家唯一id
     *     @type int|string $CarId
     *           车唯一id   暂时不用
     *     @type string $NickName
     *           昵称
     *     @type int $head
     *           头像
     *     @type int $CarTplId
     *           车辆模板Id
     *     @type int $GroupID
     *           分组ID
     *     @type string $ExteriorRefit
     *           车辆外观数据
     *     @type int $Gender
     *     @type \Game\Protobuf\ClothData $Cloth
     *     @type int $ProficiencyLv
     *          熟练度等级
     *     @type int $Proficiency
     *          熟练度经验
     *     @type int $Position
     *          位置,排位赛用.个人排位1-6,组队排位:1,2竞速位 3,4干扰位 5,6辅助位
     *     @type int $RoleType
     *           玩家角色类型 1 玩家 2 观战
     *     @type int $ScuffleScore
     *          大乱斗积分
     *     @type int $ContinuityWin
     *          连胜次数
     *     @type int $SkinColor
     *          肤色
     *     @type int $CarLv
     *          车等级
     *     @type int $Level
     *          玩家等级
     *     @type int $Dan
     *          段位等级
     *     @type int $BestTime
     *          地图最佳时间
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\ClientGamePacket::initOnce();
        parent::__construct($data);
    }

    /**
     * 玩家唯一id
     *
     * Generated from protobuf field <code>uint64 PlayerId = 1;</code>
     * @return int|string
     */
    public function getPlayerId()
    {
        return $this->PlayerId;
    }

    /**
     * 玩家唯一id
     *
     * Generated from protobuf field <code>uint64 PlayerId = 1;</code>
     * @param int|string $var
     * @return $this
     */
    public function setPlayerId($var)
    {
        GPBUtil::checkUint64($var);
        $this->PlayerId = $var;

        return $this;
    }

    /**
     * 车唯一id   暂时不用
     *
     * Generated from protobuf field <code>uint64 CarId = 2;</code>
     * @return int|string
     */
    public function getCarId()
    {
        return $this->CarId;
    }

    /**
     * 车唯一id   暂时不用
     *
     * Generated from protobuf field <code>uint64 CarId = 2;</code>
     * @param int|string $var
     * @return $this
     */
    public function setCarId($var)
    {
        GPBUtil::checkUint64($var);
        $this->CarId = $var;

        return $this;
    }

    /**
     * 昵称
     *
     * Generated from protobuf field <code>string NickName = 3;</code>
     * @return string
     */
    public function getNickName()
    {
        return $this->NickName;
    }

    /**
     * 昵称
     *
     * Generated from protobuf field <code>string NickName = 3;</code>
     * @param string $var
     * @return $this
     */
    public function setNickName($var)
    {
        GPBUtil::checkString($var, True);
        $this->NickName = $var;

        return $this;
    }

    /**
     * 头像
     *
     * Generated from protobuf field <code>int32 head = 4;</code>
     * @return int
     */
    public function getHead()
    {
        return $this->head;
    }

    /**
     * 头像
     *
     * Generated from protobuf field <code>int32 head = 4;</code>
     * @param int $var
     * @return $this
     */
    public function setHead($var)
    {
        GPBUtil::checkInt32($var);
        $this->head = $var;

        return $this;
    }

    /**
     * 车辆模板Id
     *
     * Generated from protobuf field <code>int32 CarTplId = 5;</code>
     * @return int
     */
    public function getCarTplId()
    {
        return $this->CarTplId;
    }

    /**
     * 车辆模板Id
     *
     * Generated from protobuf field <code>int32 CarTplId = 5;</code>
     * @param int $var
     * @return $this
     */
    public function setCarTplId($var)
    {
        GPBUtil::checkInt32($var);
        $this->CarTplId = $var;

        return $this;
    }

    /**
     * 分组ID
     *
     * Generated from protobuf field <code>int32 GroupID = 6;</code>
     * @return int
     */
    public function getGroupID()
    {
        return $this->GroupID;
    }

    /**
     * 分组ID
     *
     * Generated from protobuf field <code>int32 GroupID = 6;</code>
     * @param int $var
     * @return $this
     */
    public function setGroupID($var)
    {
        GPBUtil::checkInt32($var);
        $this->GroupID = $var;

        return $this;
    }

    /**
     * 车辆外观数据
     *
     * Generated from protobuf field <code>string ExteriorRefit = 7;</code>
     * @return string
     */
    public function getExteriorRefit()
    {
        return $this->ExteriorRefit;
    }

    /**
     * 车辆外观数据
     *
     * Generated from protobuf field <code>string ExteriorRefit = 7;</code>
     * @param string $var
     * @return $this
     */
    public function setExteriorRefit($var)
    {
        GPBUtil::checkString($var, True);
        $this->ExteriorRefit = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>int32 Gender = 8;</code>
     * @return int
     */
    public function getGender()
    {
        return $this->Gender;
    }

    /**
     * Generated from protobuf field <code>int32 Gender = 8;</code>
     * @param int $var
     * @return $this
     */
    public function setGender($var)
    {
        GPBUtil::checkInt32($var);
        $this->Gender = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>.Game.Protobuf.ClothData Cloth = 9;</code>
     * @return \Game\Protobuf\ClothData|null
     */
    public function getCloth()
    {
        return $this->Cloth;
    }

    public function hasCloth()
    {
        return isset($this->Cloth);
    }

    public function clearCloth()
    {
        unset($this->Cloth);
    }

    /**
     * Generated from protobuf field <code>.Game.Protobuf.ClothData Cloth = 9;</code>
     * @param \Game\Protobuf\ClothData $var
     * @return $this
     */
    public function setCloth($var)
    {
        GPBUtil::checkMessage($var, \Game\Protobuf\ClothData::class);
        $this->Cloth = $var;

        return $this;
    }

    /**
     *熟练度等级
     *
     * Generated from protobuf field <code>int32 ProficiencyLv = 10;</code>
     * @return int
     */
    public function getProficiencyLv()
    {
        return $this->ProficiencyLv;
    }

    /**
     *熟练度等级
     *
     * Generated from protobuf field <code>int32 ProficiencyLv = 10;</code>
     * @param int $var
     * @return $this
     */
    public function setProficiencyLv($var)
    {
        GPBUtil::checkInt32($var);
        $this->ProficiencyLv = $var;

        return $this;
    }

    /**
     *熟练度经验
     *
     * Generated from protobuf field <code>int32 Proficiency = 11;</code>
     * @return int
     */
    public function getProficiency()
    {
        return $this->Proficiency;
    }

    /**
     *熟练度经验
     *
     * Generated from protobuf field <code>int32 Proficiency = 11;</code>
     * @param int $var
     * @return $this
     */
    public function setProficiency($var)
    {
        GPBUtil::checkInt32($var);
        $this->Proficiency = $var;

        return $this;
    }

    /**
     *位置,排位赛用.个人排位1-6,组队排位:1,2竞速位 3,4干扰位 5,6辅助位
     *
     * Generated from protobuf field <code>int32 Position = 12;</code>
     * @return int
     */
    public function getPosition()
    {
        return $this->Position;
    }

    /**
     *位置,排位赛用.个人排位1-6,组队排位:1,2竞速位 3,4干扰位 5,6辅助位
     *
     * Generated from protobuf field <code>int32 Position = 12;</code>
     * @param int $var
     * @return $this
     */
    public function setPosition($var)
    {
        GPBUtil::checkInt32($var);
        $this->Position = $var;

        return $this;
    }

    /**
     * 玩家角色类型 1 玩家 2 观战
     *
     * Generated from protobuf field <code>int32 RoleType = 13;</code>
     * @return int
     */
    public function getRoleType()
    {
        return $this->RoleType;
    }

    /**
     * 玩家角色类型 1 玩家 2 观战
     *
     * Generated from protobuf field <code>int32 RoleType = 13;</code>
     * @param int $var
     * @return $this
     */
    public function setRoleType($var)
    {
        GPBUtil::checkInt32($var);
        $this->RoleType = $var;

        return $this;
    }

    /**
     *大乱斗积分
     *
     * Generated from protobuf field <code>int32 ScuffleScore = 14;</code>
     * @return int
     */
    public function getScuffleScore()
    {
        return $this->ScuffleScore;
    }

    /**
     *大乱斗积分
     *
     * Generated from protobuf field <code>int32 ScuffleScore = 14;</code>
     * @param int $var
     * @return $this
     */
    public function setScuffleScore($var)
    {
        GPBUtil::checkInt32($var);
        $this->ScuffleScore = $var;

        return $this;
    }

    /**
     *连胜次数
     *
     * Generated from protobuf field <code>int32 ContinuityWin = 15;</code>
     * @return int
     */
    public function getContinuityWin()
    {
        return $this->ContinuityWin;
    }

    /**
     *连胜次数
     *
     * Generated from protobuf field <code>int32 ContinuityWin = 15;</code>
     * @param int $var
     * @return $this
     */
    public function setContinuityWin($var)
    {
        GPBUtil::checkInt32($var);
        $this->ContinuityWin = $var;

        return $this;
    }

    /**
     *肤色
     *
     * Generated from protobuf field <code>int32 SkinColor = 16;</code>
     * @return int
     */
    public function getSkinColor()
    {
        return $this->SkinColor;
    }

    /**
     *肤色
     *
     * Generated from protobuf field <code>int32 SkinColor = 16;</code>
     * @param int $var
     * @return $this
     */
    public function setSkinColor($var)
    {
        GPBUtil::checkInt32($var);
        $this->SkinColor = $var;

        return $this;
    }

    /**
     *车等级
     *
     * Generated from protobuf field <code>int32 CarLv = 17;</code>
     * @return int
     */
    public function getCarLv()
    {
        return $this->CarLv;
    }

    /**
     *车等级
     *
     * Generated from protobuf field <code>int32 CarLv = 17;</code>
     * @param int $var
     * @return $this
     */
    public function setCarLv($var)
    {
        GPBUtil::checkInt32($var);
        $this->CarLv = $var;

        return $this;
    }

    /**
     *玩家等级
     *
     * Generated from protobuf field <code>int32 Level = 18;</code>
     * @return int
     */
    public function getLevel()
    {
        return $this->Level;
    }

    /**
     *玩家等级
     *
     * Generated from protobuf field <code>int32 Level = 18;</code>
     * @param int $var
     * @return $this
     */
    public function setLevel($var)
    {
        GPBUtil::checkInt32($var);
        $this->Level = $var;

        return $this;
    }

    /**
     *段位等级
     *
     * Generated from protobuf field <code>int32 Dan = 19;</code>
     * @return int
     */
    public function getDan()
    {
        return $this->Dan;
    }

    /**
     *段位等级
     *
     * Generated from protobuf field <code>int32 Dan = 19;</code>
     * @param int $var
     * @return $this
     */
    public function setDan($var)
    {
        GPBUtil::checkInt32($var);
        $this->Dan = $var;

        return $this;
    }

    /**
     *地图最佳时间
     *
     * Generated from protobuf field <code>int32 BestTime = 20;</code>
     * @return int
     */
    public function getBestTime()
    {
        return $this->BestTime;
    }

    /**
     *地图最佳时间
     *
     * Generated from protobuf field <code>int32 BestTime = 20;</code>
     * @param int $var
     * @return $this
     */
    public function setBestTime($var)
    {
        GPBUtil::checkInt32($var);
        $this->BestTime = $var;

        return $this;
    }

}

