diff --git a/assets/turing_tarpit_main_screen.png b/assets/turing_tarpit_main_screen.png new file mode 100644 index 0000000..9f6988b Binary files /dev/null and b/assets/turing_tarpit_main_screen.png differ diff --git a/sfmltest.cpp b/sfmltest.cpp index 568ffd1..735e452 100644 --- a/sfmltest.cpp +++ b/sfmltest.cpp @@ -15,7 +15,7 @@ using namespace ImGui; constexpr int FPS=30; constexpr int X_DIM = 1920 / 2; constexpr int Y_DIM = 1080 / 2; -bool window_active_out = true; +bool window_active_out = false; void ImGui_setup(sf::RenderWindow &window) { bool res = SFML::Init(window); @@ -30,33 +30,24 @@ void ImGui_update(sf::RenderWindow &window, sf::Clock &deltaClock, sf::Time &tic SetNextWindowPos(ImVec2(0, size.y / 2)); SetNextWindowSize(ImVec2(size.x, size.y / 2)); - Begin("Turing's Tarpit", &window_active_out); - - // HP | Hits Taken | Round | Streak - Text("HP X"); SameLine(); - Text("Hits Taken X"); SameLine(); - Text("Round X"); SameLine(); - Text("Streak X"); - // HP BAR - float hp = 50.0f; - SliderFloat("HP", &hp, 0.0f, 100.0f); - // Build Log + Begin("Build Status", &window_active_out); + TextColored(ImVec4(1,1,0,1), "Build Log"); BeginChild("Scrolling"); for(int n = 0; n < 50; n++) { TextWrapped("%04d: Some Text", n); } EndChild(); - - // image placeholder - End(); } -void Window_update(sf::RenderWindow &window, sf::Sprite &player) { +void Window_update(sf::RenderWindow &window, sf::Sprite &background) { window.clear(); - window.draw(player); - SFML::Render(window); + window.draw(background); + if(window_active_out) { + fmt::println(">>>> RENDER"); + SFML::Render(window); + } window.display(); } @@ -65,7 +56,10 @@ void Handle_events(sf::RenderWindow &window) { // is this a main event loop while (window.pollEvent(event)) { - SFML::ProcessEvent(window, event); + if(window_active_out) { + fmt::println(">>> EVENTS"); + SFML::ProcessEvent(window, event); + } switch(event.type) { @@ -76,6 +70,9 @@ void Handle_events(sf::RenderWindow &window) { case sf::Event::KeyPressed: if(sf::Keyboard::isKeyPressed(sf::Keyboard::Escape)) { window.close(); + } else if(sf::Keyboard::isKeyPressed(sf::Keyboard::Space)) { + fmt::println(">>> SET TRUE"); + window_active_out = true; } break; default: @@ -85,17 +82,19 @@ void Handle_events(sf::RenderWindow &window) { } } -sf::Time Update_entities(sf::RenderWindow &window, sf::Sprite &player, sf::Clock &clock, sf::Clock &deltaClock, sf::Time &tick) { +sf::Time Update_entities(sf::RenderWindow &window, sf::Sprite &background, sf::Clock &clock, sf::Clock &deltaClock, sf::Time &tick) { sf::Vector2u winSize = window.getSize(); float timeStep = 1.0f / FPS; sf::Time since = clock.getElapsedTime(); sf::Time nextTick = since - tick > sf::seconds(1) ? since : tick; - player.setPosition(winSize.x/2, 0); - player.setScale({2.0f, 2.0f}); + background.setPosition(0, 0); - ImGui_update(window, deltaClock, tick); - Window_update(window, player); + if(window_active_out) { + fmt::println("<<< UPDATE"); + ImGui_update(window, deltaClock, tick); + } + Window_update(window, background); return nextTick; } @@ -118,19 +117,21 @@ int main() { sf::Clock clock; sf::Time tick = clock.getElapsedTime(); sf::Texture texture; - sf::Sprite player; + sf::Sprite background; // fake image here - if(!texture.loadFromFile("./assets/sprite.png")) { + if(!texture.loadFromFile("./assets/turing_tarpit_main_screen.png")) { fmt::println("Error loading sprite!"); } texture.setSmooth(true); - player.setTexture(texture); + background.setTexture(texture); - while (window.isOpen() && window_active_out) { + while (window.isOpen()) { + fmt::println(">>>>>>>>>>>>>>>>>> WINDOW LOOP"); Handle_events(window); // preparing for refactoring this into a class or struct for everything - tick = Update_entities(window, player, clock, deltaClock, tick); + tick = Update_entities(window, background, clock, deltaClock, tick); + fmt::println("<<<<<<<<<<<<<<<< EXIT WINDOW LOOP"); } SFML::Shutdown();