From 2b8447766abca2602861784e7e7689a6bd700b2d Mon Sep 17 00:00:00 2001 From: Persson-dev Date: Wed, 30 Jul 2025 17:56:13 +0200 Subject: [PATCH] fix gcc build --- include/td/common/Array.h | 4 ++++ include/td/protocol/packet/PacketData.h | 2 +- src/main.cpp | 2 +- src/td/simulation/GameHistory.cpp | 6 +++--- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/include/td/common/Array.h b/include/td/common/Array.h index 50964d0..87a2b88 100644 --- a/include/td/common/Array.h +++ b/include/td/common/Array.h @@ -48,6 +48,10 @@ class Array { return m_Data[a_Index]; } + const T& operator[](std::size_t a_Index) const { + return m_Data[a_Index]; + } + ~Array() { delete [] m_Data; } diff --git a/include/td/protocol/packet/PacketData.h b/include/td/protocol/packet/PacketData.h index d395ec3..32b954a 100644 --- a/include/td/protocol/packet/PacketData.h +++ b/include/td/protocol/packet/PacketData.h @@ -74,7 +74,7 @@ struct BeginGame { struct LockSteps { std::uint16_t m_FirstFrameNumber; - std::array m_LockSteps; + Array m_LockSteps; }; struct WorldHeader { diff --git a/src/main.cpp b/src/main.cpp index 08a570a..53c18b0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -108,7 +108,7 @@ int main(int argc, char** argv) { display.OnKeyDown.Connect([&simulation](SDL_Keycode key){ if (key == SDLK_A) { auto spawn = std::make_shared(0, 0, td::Vec2fp{td::FpFloat(77), td::FpFloat(13)}, 0); - std::array steps{}; + td::Array steps{}; steps[0].push_back(spawn); td::protocol::packets::LockStepsPacket packet{0, steps}; simulation.HandlePacket(packet); diff --git a/src/td/simulation/GameHistory.cpp b/src/td/simulation/GameHistory.cpp index 0639723..ef8cce1 100644 --- a/src/td/simulation/GameHistory.cpp +++ b/src/td/simulation/GameHistory.cpp @@ -25,15 +25,15 @@ bool GameHistory::HasNextStep() const { return HasLockStep(m_Cursor); } -void GameHistory::FromPacket(td::protocol::pdata::LockSteps&& a_Steps) { +void GameHistory::FromPacket(protocol::pdata::LockSteps&& a_Steps) { for (int i = 0; i < LOCKSTEP_BUFFER_SIZE; i++) { protocol::LockStep& step = a_Steps.m_LockSteps[i]; SetLockStep(i + a_Steps.m_FirstFrameNumber, std::move(step)); } } -td::protocol::packets::LockStepsPacket GameHistory::ToPacket(HistorySizeType a_StartIndex) { - std::array steps; +protocol::packets::LockStepsPacket GameHistory::ToPacket(HistorySizeType a_StartIndex) { + Array steps; for (int i = 0; i < LOCKSTEP_BUFFER_SIZE; i++) { steps[i] = GetLockStep(a_StartIndex + i); }