2 Commits

Author SHA1 Message Date
24252896c7 begin MainMenuState 2025-08-11 18:53:10 +02:00
4c0078a5f2 refactor xmake.lua 2025-08-11 18:52:46 +02:00
4 changed files with 36 additions and 4 deletions

View File

@@ -0,0 +1,15 @@
#pragma once
#include <td/display/DisplayState.h>
namespace td {
class MainMenuState : public DisplayState {
public:
MainMenuState(Display& a_Display);
~MainMenuState();
virtual void Update(float a_Delta) override;
};
} // namespace td

View File

@@ -1,5 +1,5 @@
#include <chrono>
#include <td/display/state/DebugWorldState.h>
#include <td/display/state/MainMenuState.h>
float GetDelta() {
static std::chrono::time_point<std::chrono::system_clock> m_LastTime = std::chrono::system_clock::now();
@@ -13,7 +13,7 @@ int main(int argc, char** argv) {
// init GL context
td::Display display(1920, 1080, "Tower-Defense 2");
display.ChangeState<td::DebugWorldState>();
display.ChangeState<td::MainMenuState>();
while (!display.IsCloseRequested()) {
display.PollEvents();

View File

@@ -0,0 +1,18 @@
#include <td/display/state/MainMenuState.h>
#include <td/display/state/DebugWorldState.h>
#include <imgui.h>
namespace td {
MainMenuState::MainMenuState(Display& a_Display) : DisplayState(a_Display) {}
MainMenuState::~MainMenuState() {}
void MainMenuState::Update(float a_Delta) {
ImGui::Begin("MainWindow");
if(ImGui::Button("Start debug world"))
m_StateMachine.ChangeState<DebugWorldState>();
ImGui::End();
}
} // namespace td

View File

@@ -3,8 +3,7 @@ add_rules("mode.debug", "mode.release")
add_repositories("persson-repo https://git.ale-pri.com/Persson-dev/xmake-repo.git")
add_requires("imgui 1.92.0", {configs = {sdl3 = true, opengl3 = true}})
add_requires("splib 2.3.0", "zlib")
add_requires("libsdl3 3.2.16", "glew", "fpm", "enet6")
add_requires("libsdl3 3.2.16", "splib 2.3.0", "zlib", "glew", "fpm", "enet6")
set_languages("c++17")