43 lines
926 B
C++
43 lines
926 B
C++
#pragma once
|
|
#include "EngineFrame/Base/Actor.h"
|
|
#include "Asset/Common/ObjectVars.h"
|
|
#include "Global/Global_Enum.h"
|
|
class GameMap;
|
|
class BaseObject : public Actor
|
|
{
|
|
public:
|
|
public:
|
|
ObjectType m_objecttype; // 对象类型
|
|
VecFPos3 Position; // 位置
|
|
int Direction = 0; // 方向
|
|
GameMap *_AffMap = nullptr; // 所在地图
|
|
|
|
public:
|
|
BaseObject(/* args */);
|
|
~BaseObject();
|
|
|
|
void Update(float deltaTime) override;
|
|
|
|
// 数据储存器
|
|
ObjectVars _ObjectVars;
|
|
|
|
public:
|
|
virtual void SetPosition(VecFPos3 pos);
|
|
virtual void SetXpos(int x);
|
|
virtual void SetYpos(int y);
|
|
virtual void SetZpos(int z);
|
|
|
|
VecFPos3 GetPosition();
|
|
int GetXpos();
|
|
int GetYpos();
|
|
int GetZpos();
|
|
|
|
virtual void MoveBy(VecFPos3 pos);
|
|
virtual void MoveBy(int x, int y, int z);
|
|
|
|
virtual void SetDirection(int dir);
|
|
int GetDirection();
|
|
|
|
ObjectVars &GetObjectVars();
|
|
};
|