00001 #pragma once
00002
00003 #ifndef __TEAMBUILDINGS_H__
00004 #define __TEAMBUILDINGS_H__
00005
00006 #include <vector>
00007 using std::vector;
00008
00009 #include "OgreSceneNode.h"
00010 #include "OgreString.h"
00011 #include "OgreVector3.h"
00012
00013 using Ogre::SceneNode;
00014 using Ogre::String;
00015 using Ogre::Vector3;
00016
00017 namespace ASR
00018 {
00019 class Building;
00020
00021
00022
00023
00024 class TeamBuildings
00025 {
00026
00027
00028 private:
00029 SceneNode* mTeamNode;
00030
00031 typedef vector<Building*> BuildingList;
00032 BuildingList mBuildings;
00033
00034 static int mNumTeams;
00035 String mTeamName;
00036
00037
00038
00039 public:
00040 TeamBuildings ( unsigned int initialBuildings = 0 );
00041 ~TeamBuildings ();
00042
00043
00044
00045
00046 public:
00047 Building* createBuilding ( String meshName, Vector3 position );
00048 Building* getBuilding ( size_t index );
00049 size_t getNumBuildings ();
00050 };
00051 }
00052
00053 #endif // __TEAMBUILDINGS_H__