diff --git a/assets/Textures/Bricks/1.png b/assets/Textures/Bricks/1.png new file mode 100644 index 0000000..adf57c9 Binary files /dev/null and b/assets/Textures/Bricks/1.png differ diff --git a/assets/Textures/Bricks/2.png b/assets/Textures/Bricks/2.png new file mode 100644 index 0000000..f2c5ec3 Binary files /dev/null and b/assets/Textures/Bricks/2.png differ diff --git a/assets/Textures/Bricks/3.png b/assets/Textures/Bricks/3.png new file mode 100644 index 0000000..3ade1a7 Binary files /dev/null and b/assets/Textures/Bricks/3.png differ diff --git a/assets/Textures/Bricks/4.png b/assets/Textures/Bricks/4.png new file mode 100644 index 0000000..5b273c2 Binary files /dev/null and b/assets/Textures/Bricks/4.png differ diff --git a/assets/Textures/Bricks/5.png b/assets/Textures/Bricks/5.png new file mode 100644 index 0000000..f85163a Binary files /dev/null and b/assets/Textures/Bricks/5.png differ diff --git a/assets/Textures/Bricks/6.png b/assets/Textures/Bricks/6.png new file mode 100644 index 0000000..7722cf2 Binary files /dev/null and b/assets/Textures/Bricks/6.png differ diff --git a/assets/Textures/Bricks/7.png b/assets/Textures/Bricks/7.png new file mode 100644 index 0000000..671952d Binary files /dev/null and b/assets/Textures/Bricks/7.png differ diff --git a/assets/Textures/Pad.png b/assets/Textures/Pad.png new file mode 100644 index 0000000..88263e8 Binary files /dev/null and b/assets/Textures/Pad.png differ diff --git a/include/Game/LevelSystem.h b/include/Game/LevelSystem.h index 4147a0e..b25f8f3 100644 --- a/include/Game/LevelSystem.h +++ b/include/Game/LevelSystem.h @@ -42,10 +42,10 @@ public: void Initialize() override; - void CreateBasicLevel(int, int, int, int); - void SaveLevel(int, int, int, int); // Shouldn't be here, but I'm experimenting. + void CreateBasicLevel(int, int, glm::vec2, int); + void SaveLevel(int, int, glm::vec2, int); // Shouldn't be here, but I'm experimenting. void LoadLevel(char[20]); - void CreateBrick(int, int, int, int); + void CreateBrick(int, int, glm::vec2, int, int); void ProcessCollision(); void OnEntityRemoved(EntityID entity); @@ -54,9 +54,9 @@ public: private: int numberOfBricks; - int tRows = 8; + int tRows = 7; int tLines = 8; - int tSpaceBetweenBricks = 2; + glm::vec2 tSpaceBetweenBricks = glm::vec2(2, 0.5); int tSpaceToEdge = 0; }; diff --git a/src/game/Game/LevelSystem.cpp b/src/game/Game/LevelSystem.cpp index 6cbee59..1c58d50 100644 --- a/src/game/Game/LevelSystem.cpp +++ b/src/game/Game/LevelSystem.cpp @@ -16,29 +16,37 @@ void dd::Systems::LevelSystem::Initialize() return; } -void dd::Systems::LevelSystem::CreateBasicLevel(int rows, int lines, int spacesBetweenBricks, int spaceToEdge) +void dd::Systems::LevelSystem::CreateBasicLevel(int rows, int lines, glm::vec2 spacesBetweenBricks, int spaceToEdge) { + int num = 0; numberOfBricks = rows * lines; for (int i = 0; i < rows; i++) { + num++; for (int j = 0; j < lines; j++) { - CreateBrick(i, j, spacesBetweenBricks, spaceToEdge); + CreateBrick(i, j, spacesBetweenBricks, spaceToEdge, num); } + if (num == 7) + num = 0; } return; } -void dd::Systems::LevelSystem::CreateBrick(int row, int line, int spacesBetweenBricks, int spaceToEdge) +void dd::Systems::LevelSystem::CreateBrick(int row, int line, glm::vec2 spacesBetweenBricks, int spaceToEdge, int num) { auto brick = m_World->CreateEntity(); std::shared_ptr transform = m_World->AddComponent(brick); std::shared_ptr sprite = m_World->AddComponent(brick); - sprite->SpriteFile = "Textures/Core/ErrorTexture.png"; - float x = spaceToEdge + line * spacesBetweenBricks; - float y = spaceToEdge + row * spacesBetweenBricks; - transform->Position = glm::vec3(x-5, y-5, -10.f); + std::string fileName = "Textures/Bricks/"; + fileName.append(std::to_string(num)); + fileName.append(".png"); + sprite->SpriteFile = fileName; + float x = spaceToEdge + line * spacesBetweenBricks.x; + float y = spaceToEdge + row * spacesBetweenBricks.y; + transform->Scale = glm::vec3(0.8, 0.2, 0.); + transform->Position = glm::vec3(x - 7, y + 1, -10.f); //sprite->Color = glm::vec4(1.f, 1.f, 1.f, 1.f); return; } diff --git a/src/game/Game/PadSystem.cpp b/src/game/Game/PadSystem.cpp index b90c873..f9c6129 100644 --- a/src/game/Game/PadSystem.cpp +++ b/src/game/Game/PadSystem.cpp @@ -23,8 +23,9 @@ void dd::Systems::PadSystem::Initialize() ent = m_World->CreateEntity(); transform = m_World->AddComponent(ent); transform->Position = glm::vec3(0.f, -5.f, -10.f); + transform->Scale = glm::vec3(1.6, 0.4, 0.); sprite = m_World->AddComponent(ent); - sprite->SpriteFile = "Textures/Core/ErrorTexture.png"; + sprite->SpriteFile = "Textures/Pad.png"; EVENT_SUBSCRIBE_MEMBER(m_EKeyDown, PadSystem::OnKeyDown); EVENT_SUBSCRIBE_MEMBER(m_EKeyUp, PadSystem::OnKeyUp);