diff options
| -rw-r--r-- | src/main.cpp | 5 | ||||
| -rw-r--r-- | src/renderer.cpp | 31 | ||||
| -rw-r--r-- | src/renderer.hpp (renamed from src/resources.h) | 7 | ||||
| -rw-r--r-- | src/resources.cpp | 28 | ||||
| -rw-r--r-- | src/resources.hpp | 8 |
5 files changed, 47 insertions, 32 deletions
diff --git a/src/main.cpp b/src/main.cpp index 827368d..0cda8fb 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,5 +1,6 @@ #include "raylib.h" -#include "resources.h" +#include "resources.hpp" +#include "renderer.hpp" //------------------------------------------------------------------------------------ // Program main entry point //------------------------------------------------------------------------------------ @@ -15,7 +16,7 @@ int main(void) SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- - auto ship = Resources::Sprite("ship", (Rectangle){1365,1696,198,188}); + auto ship = Renderer::Sprite("ship", (Rectangle){1365,1696,198,188}); // Main game loop while (!WindowShouldClose()) // Detect window close button or ESC key diff --git a/src/renderer.cpp b/src/renderer.cpp new file mode 100644 index 0000000..b3de6c9 --- /dev/null +++ b/src/renderer.cpp @@ -0,0 +1,31 @@ +#include "renderer.hpp" +#include "resources.hpp" + +namespace Renderer { + Sprite::Sprite(std::string texture_name, + Rectangle source_rectangle, + Vector2 origin + ):texture_name(texture_name), + source_rectangle(source_rectangle), + origin(origin){ + + } + + void Sprite::drawPro(Rectangle dest_rectangle, float rotation, Color color) { + DrawTexturePro(Resources::useTexture(texture_name), + source_rectangle, + dest_rectangle, + origin, + rotation, + color); + } + + void Sprite::draw(float x, float y, float scale, float rotation, Color color) { + DrawTexturePro(Resources::useTexture(texture_name), + source_rectangle, + (Rectangle){x,y,source_rectangle.width * scale,source_rectangle.height * scale}, + origin, + rotation, + color); + } +} diff --git a/src/resources.h b/src/renderer.hpp index edc1fec..ead5981 100644 --- a/src/resources.h +++ b/src/renderer.hpp @@ -1,9 +1,10 @@ -#include <unordered_map> +#pragma once #include <string> #include "raylib.h" -namespace Resources { - Texture useTexture(std::string id); + + +namespace Renderer { class Sprite { public: std::string texture_name; diff --git a/src/resources.cpp b/src/resources.cpp index 8a820b5..9d1834a 100644 --- a/src/resources.cpp +++ b/src/resources.cpp @@ -2,7 +2,7 @@ #include <string> #include <stdexcept> #include "raylib.h" -#include "resources.h" +#include "resources.hpp" namespace Resources { static std::unordered_map<std::string, std::string> textureFiles = { @@ -25,30 +25,4 @@ namespace Resources { return texture; } - Sprite::Sprite(std::string texture_name, - Rectangle source_rectangle, - Vector2 origin - ):texture_name(texture_name), - source_rectangle(source_rectangle), - origin(origin){ - - } - - void Sprite::drawPro(Rectangle dest_rectangle, float rotation, Color color) { - DrawTexturePro(useTexture(texture_name), - source_rectangle, - dest_rectangle, - origin, - rotation, - color); - } - - void Sprite::draw(float x, float y, float scale, float rotation, Color color) { - DrawTexturePro(useTexture(texture_name), - source_rectangle, - (Rectangle){x,y,source_rectangle.width * scale,source_rectangle.height * scale}, - origin, - rotation, - color); - } } diff --git a/src/resources.hpp b/src/resources.hpp new file mode 100644 index 0000000..d45a7d5 --- /dev/null +++ b/src/resources.hpp @@ -0,0 +1,8 @@ +#pragma once +#include <unordered_map> +#include <string> +#include "raylib.h" + +namespace Resources { + Texture useTexture(std::string id); +} |
