Files
Tower-Defense2/src/td/Types.cpp
2025-08-01 13:21:31 +02:00

30 lines
760 B
C++

#include <td/Types.h>
#include <sp/common/DataBuffer.h>
#include <sp/common/ByteSwapping.h>
#include <sp/common/DataBufferOperators.h>
namespace td {
sp::DataBuffer& operator<<(sp::DataBuffer& a_Buffer, const EntityCoords& a_Coords) {
return a_Buffer << a_Coords.x << a_Coords.y;
}
sp::DataBuffer& operator<<(sp::DataBuffer& a_Buffer, const FpFloat& a_Float) {
auto raw = a_Float.raw_value();
return a_Buffer << raw;
}
sp::DataBuffer& operator>>(sp::DataBuffer& a_Buffer, EntityCoords& a_Coords) {
return a_Buffer >> a_Coords.x >> a_Coords.y;
}
sp::DataBuffer& operator>>(sp::DataBuffer& a_Buffer, FpFloat& a_Float) {
auto raw = a_Float.raw_value();
a_Buffer >> raw;
a_Float = FpFloat::from_raw_value(raw);
return a_Buffer;
}
} // namespace td