From 0b213888447b26d222f14e92a495e2373df903e6 Mon Sep 17 00:00:00 2001 From: Dominic Masters Date: Wed, 1 Jul 2026 20:23:44 -0500 Subject: [PATCH] Fixing bugs, one at a time --- src/dusk/rpg/entity/entity.c | 14 ++++++++------ src/duskdolphin/display/displayplatform.h | 2 -- src/duskpsp/display/displayplatform.h | 2 -- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/dusk/rpg/entity/entity.c b/src/dusk/rpg/entity/entity.c index f2f25d1e..f14d9c51 100644 --- a/src/dusk/rpg/entity/entity.c +++ b/src/dusk/rpg/entity/entity.c @@ -196,6 +196,14 @@ void entityWalk(entity_t *entity, const entitydir_t direction) { // Can we walk here? if(!raise && !fall && !tileIsWalkable(tileNew)) return;// Blocked + // Raise/fall must be applied before checking for blocking entities, + // otherwise the check compares against the wrong z-level. + if(raise) { + newPos.z += 1; + } else if(fall) { + newPos.z -= 1; + } + // Entity in way? entity_t *other = ENTITIES; do { @@ -209,12 +217,6 @@ void entityWalk(entity_t *entity, const entitydir_t direction) { entity->position = newPos; entity->animation = ENTITY_ANIM_WALK; entity->animTime = ENTITY_ANIM_WALK_DURATION;// TODO: Running vs walking - - if(raise) { - entity->position.z += 1; - } else if(fall) { - entity->position.z -= 1; - } } void entityRun(entity_t *entity, const entitydir_t direction) { diff --git a/src/duskdolphin/display/displayplatform.h b/src/duskdolphin/display/displayplatform.h index dc56a9d9..ed9b61a9 100644 --- a/src/duskdolphin/display/displayplatform.h +++ b/src/duskdolphin/display/displayplatform.h @@ -6,8 +6,6 @@ */ #pragma once -#define DUSK_DISPLAY_SCALE_UI 2 -#define DUSK_DISPLAY_SCALE_3D 2 #include "displaydolphin.h" #define displayPlatformInit displayInitDolphin diff --git a/src/duskpsp/display/displayplatform.h b/src/duskpsp/display/displayplatform.h index e243536d..57dbf17e 100644 --- a/src/duskpsp/display/displayplatform.h +++ b/src/duskpsp/display/displayplatform.h @@ -6,8 +6,6 @@ */ #pragma once -#define DUSK_DISPLAY_SCALE_UI 1 -#define DUSK_DISPLAY_SCALE_3D 2 #include "display/displaysdl2.h" typedef displaysdl2_t displayplatform_t;