30 lines
635 B
C
30 lines
635 B
C
|
#ifndef _ENTITYFACTORY_H
|
||
|
#define _ENTITYFACTORY_H
|
||
|
|
||
|
#include "EntityFactoryBase.h"
|
||
|
#include "AsteroidsEnums.h"
|
||
|
|
||
|
namespace Engine {
|
||
|
struct EntityBase;
|
||
|
struct EntityPhysicState;
|
||
|
struct EntityControllerState;
|
||
|
}
|
||
|
|
||
|
namespace asteroids {
|
||
|
|
||
|
class EntityFactory: public Engine::EntityFactoryBase {
|
||
|
public:
|
||
|
EntityFactory () {};
|
||
|
|
||
|
virtual Engine::EntityPhysicState* CreateEntityPhysicState (int type);
|
||
|
virtual Engine::EntityControllerState* CreateEntityControllerState (int type);
|
||
|
|
||
|
virtual Engine::EntityBase* CreateEntity (int type);
|
||
|
|
||
|
protected:
|
||
|
virtual int OnInit (int argc, char *argv[]);
|
||
|
};
|
||
|
}
|
||
|
|
||
|
#endif // _ENTITYFACTORY_H
|