Add GameSession::GetLocalPlayerEntity

This commit is contained in:
2025-03-31 16:36:04 -04:00
parent c7f98a1be6
commit d55a64163b
2 changed files with 13 additions and 0 deletions

View File

@@ -15,6 +15,7 @@
#include <Client/Scene.hpp>
#include <J3ML/LinearAlgebra.hpp>
#include <Core/Entity.hpp>
#include <Core/Player.hpp>
#include <Core/World.hpp>
#include "LocalWorld.hpp"
#include "Hotbar.hpp"
@@ -91,6 +92,8 @@ namespace CaveGame::Client {
void WorldEditToolControlsUpdate(float elapsed);
void ToggleWorldEdit();
TileTool* WorldEditToolWindow() const { return tile_tool;}
Core::Player* GetLocalPlayerEntity();
protected:
TileTool* tile_tool = nullptr;
LocalWorld* world = nullptr;

View File

@@ -297,4 +297,14 @@ void CaveGame::Client::GameSession::ToggleWorldEdit() {
tile_tool->Enable(!tile_tool->IsEnabled());
}
CaveGame::Core::Player *CaveGame::Client::GameSession::GetLocalPlayerEntity() {
for (auto* e : world->GetEntities()) {
auto maybe_plr = dynamic_cast<Core::Player *>(e);
if (maybe_plr != nullptr) {
return maybe_plr;
}
}
return nullptr;
}