Support of IsKeyPressed that only trigger for the frame it is pressed on.

This commit is contained in:
2026-08-09 11:23:56 -04:00
parent 681267f445
commit d52c77a017
16 changed files with 151 additions and 34 deletions
+18 -1
View File
@@ -5,13 +5,16 @@
#include <game.h>
#include <Core/Common/EnumUtils.h>
#include <Core/HAL/Filesystem/Filesystem.h>
#include <Core/HAL/Keyboard/Keyboard.h>
#include <Core/JulietInit.h>
#include <Core/Logging/LogManager.h>
#include <Core/Memory/MemoryArena.h>
#include <Entity/Entity.h>
#include <Entity/EntityManager.h>
#include <Graphics/Camera.h>
#include <imgui.h>
GameState* gGameState = nullptr;
GameState* GetGameState()
@@ -92,5 +95,19 @@ extern "C" JULIET_API void __cdecl GameUpdate(Juliet::GameData* params, [[maybe_
printf("Rock has %d health points\n", rock->Health);
}
// printf("Updating game...\n");
if (IsKeyPressed(ScanCode::F1))
{
gGameState->Mode = static_cast<GameMode>((ToUnderlying(gGameState->Mode) + 1) % 2);
}
if (gGameState->Mode == GameMode::Play)
{
// update game
}
if (gGameState->Mode == GameMode::Debug)
{
ImGui::Begin("Debug");
ImGui::End();
}
}