diff --git a/Code/GameLogic/GameLogic.vcxproj b/Code/GameLogic/GameLogic.vcxproj index b00cd46f..05419d2c 100644 --- a/Code/GameLogic/GameLogic.vcxproj +++ b/Code/GameLogic/GameLogic.vcxproj @@ -178,6 +178,7 @@ + @@ -188,6 +189,7 @@ + diff --git a/Code/GameLogic/GameLogic.vcxproj.filters b/Code/GameLogic/GameLogic.vcxproj.filters index 4df71a7c..86e9fa9c 100644 --- a/Code/GameLogic/GameLogic.vcxproj.filters +++ b/Code/GameLogic/GameLogic.vcxproj.filters @@ -39,6 +39,9 @@ Header Files + + Header Files + @@ -68,5 +71,8 @@ Source Files + + Source Files + \ No newline at end of file diff --git a/Code/GameLogic/GameMode.cpp b/Code/GameLogic/GameMode.cpp new file mode 100644 index 00000000..0eddb7f9 --- /dev/null +++ b/Code/GameLogic/GameMode.cpp @@ -0,0 +1,15 @@ +#include "GameMode.h" + +using namespace GameLogic; + + +GameMode::GameMode(void) +{ + +} + + +GameMode::~GameMode(void) +{ + +} diff --git a/Code/GameLogic/GameMode.h b/Code/GameLogic/GameMode.h new file mode 100644 index 00000000..0187f4b7 --- /dev/null +++ b/Code/GameLogic/GameMode.h @@ -0,0 +1,17 @@ +#ifndef GAMEMODE_H +#define GAMEMODE_H + +namespace GameLogic +{ + + class GameMode + { + public: + GameMode(void); + ~GameMode(void); + private: + //variabels that control what game rules the level runs on + }; + +} +#endif \ No newline at end of file diff --git a/Code/GameLogic/Level.h b/Code/GameLogic/Level.h index 76414cff..6cfa50ee 100644 --- a/Code/GameLogic/Level.h +++ b/Code/GameLogic/Level.h @@ -1,6 +1,10 @@ #ifndef LEVEL_H #define LEVEL_H +#include "StaticObject.h" +#include "DynamicObject.h" +#include "GameMode.h" + namespace GameLogic { @@ -12,6 +16,15 @@ namespace GameLogic ~Level(void); private: + StaticObject** staticObjects; + int nrOfStaticObjects; + + DynamicObject** dynamicObjects; + int nrOfDynamicObjects; + + GameMode* gameMode; + + }; diff --git a/Code/GameLogic/RefManager.cpp b/Code/GameLogic/RefManager.cpp new file mode 100644 index 00000000..852cb6b1 --- /dev/null +++ b/Code/GameLogic/RefManager.cpp @@ -0,0 +1,26 @@ +#include "RefManager.h" + +using namespace GameLogic; + +typedef std::pair mapData; + +RefManager::RefManager(void) +{ +} + + +RefManager::~RefManager(void) +{ +} + +Object* RefManager::GetMap(Oyster::Physics::ICustomBody *body) +{ + return mapper[body]; +} + +void RefManager::AddMapping(Oyster::Physics::ICustomBody *body, Object *obj) +{ + mapper.insert(mapData(body,obj)); +} + + diff --git a/Code/GameLogic/RefManager.h b/Code/GameLogic/RefManager.h new file mode 100644 index 00000000..1d49af78 --- /dev/null +++ b/Code/GameLogic/RefManager.h @@ -0,0 +1,28 @@ +#ifndef REFMANAGER_H +#define REFMANAGER_H + +#include +#include "Object.h" +#include "PhysicsAPI.h" + +namespace GameLogic +{ + + + + class RefManager + { + public: + RefManager(void); + ~RefManager(void); + + Object* GetMap(Oyster::Physics::ICustomBody *body); + void AddMapping(Oyster::Physics::ICustomBody *body, Object *obj); + + + private: + std::map mapper; //shall be pointer from physics that map to an object + + }; +} +#endif \ No newline at end of file