Cleaned up memory arena debugger + tag.

WIP
This commit is contained in:
2026-01-21 20:36:38 -05:00
parent a41a5e6b20
commit c10d371836
21 changed files with 169 additions and 215 deletions

View File

@@ -9,7 +9,7 @@
#include <type_traits>
// Add any new fields into the concept below
#define DECLARE_ENTITY() \
#define DECLARE_ENTITY() \
Entity* Base; \
static const Juliet::Class* Kind;
@@ -18,8 +18,6 @@
constexpr Juliet::Class entityKind##entity(#entity, sizeof(#entity) / sizeof(char)); \
const Juliet::Class* entity::Kind = &entityKind##entity;
namespace Game
{
using DerivedType = void*;
@@ -49,9 +47,9 @@ namespace Game
requires EntityConcept<EntityType>
EntityType* MakeEntity(EntityManager& manager, float x, float y)
{
auto* arena = Juliet::GetGameArena();
EntityType* result = Juliet::ArenaPushType<EntityType>(arena);
Entity* base = result->Base = Juliet::ArenaPushType<Entity>(arena);
auto* arena = Juliet::GetGameArena();
EntityType* result = Juliet::ArenaPushType<EntityType>(arena, ConstString("EntityType"));
Entity* base = result->Base = Juliet::ArenaPushType<Entity>(arena, ConstString("Entity"));
base->X = x;
base->Y = y;
base->Derived = result;