Fix bug where allocated paths were never returned

This commit is contained in:
2023-11-16 09:00:27 +01:00
parent af99504370
commit c232fc9afd
5 changed files with 46 additions and 47 deletions

View File

@@ -213,7 +213,7 @@ void render(float dt, void *userData) {
static PathNode *heap = NULL;
if (!heap)
heap = bzHeapCreate(PathNode, game->map.width * game->map.height);
if (!ecs_has(ECS, game->entity, Path)) {
if (!ecs_has(ECS, game->entity, Path) && IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) {
Path path = {};
const Position *start = ecs_get(ECS, game->entity, Position);
findPath(&(PathfindingDesc) {
@@ -227,7 +227,7 @@ void render(float dt, void *userData) {
.outPath=&path,
.pool=game->pools.pathData
});
if (path.paths && IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) {
if (path.paths) {
ecs_set_ptr(ECS, game->entity, Path, &path);
}
}