game2006/server/gameserver/entityfactory.h
aozhiwei a44b19b0c0 1
2022-12-16 18:05:14 +08:00

36 lines
762 B
C++

#pragma once
#include <a8/singleton.h>
class Obstacle;
class RoomObstacle;
class Loot;
class Bullet;
class Android;
class Player;
class Car;
class Hero;
class Explosion;
class EntityFactory : public a8::Singleton<EntityFactory>
{
private:
EntityFactory() {};
friend class a8::Singleton<EntityFactory>;
public:
void Init();
void UnInit();
Obstacle* MakeObstacle(int entity_uniid);
RoomObstacle* MakeRoomObstacle(int entity_uniid);
Loot* MakeLoot(int entity_uniid);
Bullet* MakeBullet(int entity_uniid);
Android* MakeAndroid(int entity_uniid);
Player* MakePlayer(int entity_uniid);
Car* MakeCar(int entity_uniid);
Hero* MakeHero(int entity_uniid);
std::shared_ptr<Explosion> MakeExplosion();
private:
};