From 2fcf25308c142cfee47d5a55ca916ef1ad115b53 Mon Sep 17 00:00:00 2001 From: Jonathan Bradley Date: Thu, 14 Dec 2023 18:01:51 -0500 Subject: reset the bucket instead of creating a new one --- src/level.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/level.cpp') diff --git a/src/level.cpp b/src/level.cpp index fcca5bd..123d5e2 100644 --- a/src/level.cpp +++ b/src/level.cpp @@ -25,7 +25,9 @@ LevelHandle PkeLevel_Create(const char *levelName) { PkeLevel *lvl = PkeLevel_Get_Inner(LevelHandle_MAX); assert(lvl != nullptr && "max level count not reached, but failed to find a valid level slot"); - lvl->bkt = Pke_BeginTransientBucket(); + if (lvl->bkt == nullptr) { + lvl->bkt = Pke_BeginTransientBucket(); + } lvl->handle = nextHandle; ++nextHandle; @@ -82,8 +84,7 @@ void PkeLevel_Remove(LevelHandle handle) { } PkeArray_HardReset(&lvl->wrappingEntities); PkeArray_HardReset(&lvl->cameras); - Pke_EndTransientBucket(lvl->bkt); - lvl->bkt = CAFE_BABE(MemBucket); + Pke_ResetBucket(lvl->bkt); lvl->handle = LevelHandle_MAX; lvl->wrappingEntities.next = 0; lvl->wrappingEntities.reserved = 0; -- cgit v1.2.3