diff options
Diffstat (limited to 'src/game/shipmodel.h')
-rw-r--r-- | src/game/shipmodel.h | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/game/shipmodel.h b/src/game/shipmodel.h index fd42c81..686d736 100644 --- a/src/game/shipmodel.h +++ b/src/game/shipmodel.h @@ -7,7 +7,7 @@ #ifndef __INCLUDED_GAME_SHIPMODEL_H__ #define __INCLUDED_GAME_SHIPMODEL_H__ -#include <list> +#include <map> #include <string> namespace game { @@ -28,27 +28,35 @@ public: /// turn speed in rotations per second inline float turnspeed() const { return shipmodel_turnspeed; } - /// name of the model to use - inline std::string const & modelname() const { return shipmodel_modelname; } + /// label of the ship model + inline std::string const &label() const { return shipmodel_label; } /// name of the ship model inline std::string const & name() const { return shipmodel_name; } + /// name of the model of the ship + inline std::string const & modelname() const { return shipmodel_modelname; } + float shipmodel_acceleration; float shipmodel_maxspeed; float shipmodel_turnspeed; + std::string shipmodel_label; std::string shipmodel_name; std::string shipmodel_modelname; + static ShipModel *find(const std::string label); + /// the ship model registry - static std::list<ShipModel *> registry; + static std::map<std::string, ShipModel *> registry; + + typedef std::map<std::string, ShipModel *>::iterator iterator; /// clear the ship model registry static void clear(); /// list the ship model registry static void list(); -private: + /// add a new ship model static void add(ShipModel *shipmodel); }; |