OSDN Git Service

fix cmake/Macros.cmake
[moflib/moflib.git] / saisei-1.0 / src / oldcode / BattlerFacade.h
1 #pragma once
2 #include "mof/Graphics.h"
3 #include "mof/Billboard.h"
4 #include "BattlerParameter.h"
5 #include "Action.h"
6 #include "BattlerType.h"
7 #include "mof/DataTable.h"
8
9 namespace et{
10         class BattlerGroup;
11         class BattlerFacade
12         {
13         public:
14                 /*enum BattlerType{
15                         ENEMY , HERO , IDEAL
16                 };*/
17         private:
18                 BattlerType m_type;
19                 BattlerParameter m_parameter;
20                 int m_timeStamp;
21                 mof::Vector3D m_basePosition;
22         protected:
23                 mof::Billboard* m_pGraphicsObject;
24         public:
25
26                 BattlerFacade(BattlerType m_type );
27                 
28                 virtual ~BattlerFacade(void);
29                 mof::Billboard* getGraphicsObject();
30                 const BattlerParameter& getParameter(){return m_parameter;}
31                 void setParameter(const BattlerParameter& parameter){m_parameter = parameter;m_timeStamp++;}
32                 BattlerType getType(){return m_type;}
33
34                 mof::Vector3D getPosition();
35                 virtual mof::AnimationResource setMovingAnimation(mof::Vector3D& goal , int nFrame) = 0;
36                 virtual mof::AnimationResource setAidlingAnimation(mof::Vector3D& position) = 0;
37                 virtual mof::AnimationResource setCastAnimation(int category) = 0;
38                 virtual mof::AnimationResource setDamagedAnimation(int level) = 0;
39                 virtual Action* createAction(BattlerGroup* pGroup ) = 0;
40                 int getTimeStamp();
41                 void setBasePosition(mof::Vector3D& position){m_basePosition = position;}
42                 mof::Vector3D& getBasePosition(){return m_basePosition;}
43         };
44
45
46 }