diff options
| author | Jonathan Bradley <jcb@pikum.xyz> | 2023-12-14 18:01:51 -0500 |
|---|---|---|
| committer | Jonathan Bradley <jcb@pikum.xyz> | 2023-12-23 11:41:03 -0500 |
| commit | 2fcf25308c142cfee47d5a55ca916ef1ad115b53 (patch) | |
| tree | 94ef04ee654275bd62c86188421d4f8039d131e9 /src/level.cpp | |
| parent | 7741f7c9ae0b8ff0b22eb60210a72182470740f6 (diff) | |
reset the bucket instead of creating a new one
Diffstat (limited to 'src/level.cpp')
| -rw-r--r-- | src/level.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
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<EntityHandle>(&lvl->wrappingEntities); PkeArray_HardReset<CameraHandle>(&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; |
