local this = class("dataEntity")

function this:ctor()
  self.entity = nil
  self.csData = nil
  self:reset()
end

function this:reset()
  self.id = nil
  self.modAvatar = nil
  self.configId = nil
  self.position = nil
  self.rotation = nil
  self.areaType = nil
  self.weaponId = nil
  self.lookOrder = 0
  self.canMove = true
  self.canSkill = true
  self.canRotate = true
  self.systemCanShow = {}
end

function this:initialize(entity)
  self.entity = entity
  self.csData = self.entity:getCsEntity().data
end

function this:setAreaType(areaType)
  self.areaType = areaType
end

function this:setLookOrder(order)
  self.lookOrder = order
end

function this:getLookOrder()
  return self.lookOrder
end

function this:setLookKind(order)
  self.lookKind = order
end

function this:getLookKind()
  return self.lookKind
end

function this:enableControl()
  self.csData:SetPlayerControl(true)
end

function this:disableControl()
  self.csData:SetPlayerControl(false)
end

function this:setSelfTimeScale(timeScale)
  self.csData:SetSelfTimeScale(timeScale)
end

function this:getIsMoveReading()
end

function this:setCanMove(canMove)
end

function this:setCanRotate(canMove)
end

function this:getCanMove()
  return self.csAlive.canMove
end

function this:getCanRotate()
  return self.csAlive.canRotate
end

function this:getBaseSpeed()
  return 7
end

function this:getConfigId()
  return self.configId or self.id
end

return this
