From c7426bf24bff4d4495874a20b9cea81f393a75e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20Nie=C3=9Fner?= Date: Fri, 11 May 2018 10:11:06 +0200 Subject: [PATCH] Restructered Folders and Added Screens to the Game --- external/entityx-1.1.2/entityx-config.cmake | 2 +- src/DarkRP2D.cpp | 6 +++++ src/DarkRP2D.h | 2 +- src/entities/Charakter.h | 0 src/entities/components/Position.h | 10 +++++++ src/{ => input}/Command.h | 0 src/{ => input}/InputHandler.cpp | 2 +- src/{ => input}/InputHandler.h | 0 src/screens/GameScreen.cpp | 29 +++++++++++++++++++++ src/screens/GameScreen.h | 17 ++++++++++++ src/screens/Screen.h | 21 +++++++++++++++ 11 files changed, 86 insertions(+), 3 deletions(-) create mode 100644 src/entities/Charakter.h create mode 100644 src/entities/components/Position.h rename src/{ => input}/Command.h (100%) rename src/{ => input}/InputHandler.cpp (95%) rename src/{ => input}/InputHandler.h (100%) create mode 100644 src/screens/GameScreen.cpp create mode 100644 src/screens/GameScreen.h create mode 100644 src/screens/Screen.h diff --git a/external/entityx-1.1.2/entityx-config.cmake b/external/entityx-1.1.2/entityx-config.cmake index 4736959..9f4d523 100644 --- a/external/entityx-1.1.2/entityx-config.cmake +++ b/external/entityx-1.1.2/entityx-config.cmake @@ -1,4 +1,4 @@ -set(ENTITYX_INCLUDE_DIRS "${CMAKE_CURRENT_LIST_DIR}/entityx") +set(ENTITYX_INCLUDE_DIRS "${CMAKE_CURRENT_LIST_DIR}") # Support both 32 and 64 bit builds if (${CMAKE_SIZEOF_VOID_P} MATCHES 8) diff --git a/src/DarkRP2D.cpp b/src/DarkRP2D.cpp index 4c98be0..f28645c 100644 --- a/src/DarkRP2D.cpp +++ b/src/DarkRP2D.cpp @@ -7,6 +7,7 @@ #include #include +#include DarkRP2D::~DarkRP2D() { std::cout << "Game got destroyed!" << std::endl; @@ -46,6 +47,11 @@ void DarkRP2D::create () { font = new BitmapFont("arial.ttf"); camera = new OrtographicCamera(); + + entityx::EntityX ex; + entityx::Entity charakter = ex.entities.create(); + charakter.assign(); + #ifndef NDEBUG //Setup IMGUI debugging ImGui::CreateContext(); diff --git a/src/DarkRP2D.h b/src/DarkRP2D.h index d4553da..ee38fc2 100644 --- a/src/DarkRP2D.h +++ b/src/DarkRP2D.h @@ -9,7 +9,7 @@ class DarkRP2D; #include "Assets.h" #include "Renderer.h" #include "Mesh.h" -#include "InputHandler.h" +#include "input/InputHandler.h" #include "BitmapFont.h" #include "Camera.h" diff --git a/src/entities/Charakter.h b/src/entities/Charakter.h new file mode 100644 index 0000000..e69de29 diff --git a/src/entities/components/Position.h b/src/entities/components/Position.h new file mode 100644 index 0000000..0823a62 --- /dev/null +++ b/src/entities/components/Position.h @@ -0,0 +1,10 @@ +#ifndef POSITION_H +#define POSITION_H + +struct Position { + Position(float x = 0.0f, float y = 0.0f) : x(x), y(y) {} + + float x, y; +}; + +#endif \ No newline at end of file diff --git a/src/Command.h b/src/input/Command.h similarity index 100% rename from src/Command.h rename to src/input/Command.h diff --git a/src/InputHandler.cpp b/src/input/InputHandler.cpp similarity index 95% rename from src/InputHandler.cpp rename to src/input/InputHandler.cpp index 0f9bc68..f31409f 100644 --- a/src/InputHandler.cpp +++ b/src/input/InputHandler.cpp @@ -1,5 +1,5 @@ #include "InputHandler.h" -#include "Desktoplauncher.h" +#include "../DesktopLauncher.h" #include diff --git a/src/InputHandler.h b/src/input/InputHandler.h similarity index 100% rename from src/InputHandler.h rename to src/input/InputHandler.h diff --git a/src/screens/GameScreen.cpp b/src/screens/GameScreen.cpp new file mode 100644 index 0000000..4ab6f9d --- /dev/null +++ b/src/screens/GameScreen.cpp @@ -0,0 +1,29 @@ +#include "GameScreen.h" + +GameScreen::GameScreen() { + +} + +void GameScreen::hide() { + +} + +void GameScreen::pause() { + +} + +void GameScreen::render() { + +} + +void GameScreen::resize() { + +} + +void GameScreen::resume() { + +} + +void GameScreen::show() { + +} diff --git a/src/screens/GameScreen.h b/src/screens/GameScreen.h new file mode 100644 index 0000000..0b78021 --- /dev/null +++ b/src/screens/GameScreen.h @@ -0,0 +1,17 @@ +#ifndef GAMESCREEN_H +#define GAMESCREEN_H + +#include "Screen.h" + +class GameScreen : public Screen { + GameScreen() {} + + virtual void hide() override; + virtual void pause() override; + virtual void render() override; + virtual void resize() override; + virtual void resume() override; + virtual void show() override; +}; + +#endif \ No newline at end of file diff --git a/src/screens/Screen.h b/src/screens/Screen.h new file mode 100644 index 0000000..846d70e --- /dev/null +++ b/src/screens/Screen.h @@ -0,0 +1,21 @@ +#ifndef SCREEN_H +#define SCREEN_H + +class Screen { + protected: + Screen() {} + + public: + virtual ~Screen() {} + + /* Called when this screen is no longer the current screen for a Game. */ + virtual void hide() = 0; + virtual void pause() = 0; + virtual void render() = 0; + virtual void resize() = 0; + virtual void resume() = 0; + virtual void show() = 0; + +}; + +#endif \ No newline at end of file