Decomped IsSecretBazaarNpc

This commit is contained in:
AnonymousRandomPerson 2025-10-22 20:32:04 -04:00
parent 99e18563e8
commit 9cf66e6195
10 changed files with 18 additions and 21 deletions

View File

@ -105,7 +105,7 @@
.public ov29_022FA2F0
.public ov29_022FA360
.public ov29_022FB920
.public ov29_022FBDF0
.public IsSecretBazaarNpc
.public ov29_022FF3F4
.public ov29_022FF958
.public ov29_022FFA94

View File

@ -27,7 +27,6 @@
.public IsDestinationFloorWithMonster
.public IsFullFloorFixedRoom
.public IsInvalidSpawnTile
.public IsSecretBazaarNpcBehavior
.public JoinedAtRangeCheck2Veneer
.public LoadWazaP2
.public SetMonsterLevelAndId

View File

@ -75,7 +75,7 @@
.public ov29_022E8104
.public ov29_022E81F8
.public IsLoneOutlawVeneer
.public ov29_022FBDF0
.public IsSecretBazaarNpc
.public ov29_022FD7A0
.public ov29_0230D874
.public ov29_0230D8E8

View File

@ -206,7 +206,7 @@ _022F07E8:
cmp r0, #0
beq _022F082C
mov r0, r7
bl ov29_022FBDF0
bl IsSecretBazaarNpc
cmp r0, #0
beq _022F082C
mov r0, r7

View File

@ -1,18 +1,8 @@
.include "asm/macros.inc"
.include "overlay_29_022FBDF0.inc"
.include "overlay_29_022FBE04.inc"
.text
arm_func_start ov29_022FBDF0
ov29_022FBDF0: ; 0x022FBDF0
ldr r0, [r0, #0xb4]
ldr ip, _022FBE00 ; =IsSecretBazaarNpcBehavior
ldrb r0, [r0, #0xbc]
bx ip
.align 2, 0
_022FBE00: .word IsSecretBazaarNpcBehavior
arm_func_end ov29_022FBDF0
arm_func_start ov29_022FBE04
ov29_022FBE04: ; 0x022FBE04
stmdb sp!, {r3, lr}

View File

@ -472,7 +472,7 @@ DoMoveEscape: ; 0x0232CA70
b _0232CAF4
_0232CAB4:
mov r0, r5
bl ov29_022FBDF0
bl IsSecretBazaarNpc
cmp r0, #0
moveq r0, #1
movne r0, #0

View File

@ -5,5 +5,6 @@
#include "util.h"
bool8 IsLoneOutlawVeneer(struct monster* monster_info);
bool8 IsSecretBazaarNpc(struct entity *entity);
#endif //PMDSKY_DUNGEON_LOGIC_7_H

View File

@ -430,7 +430,7 @@ Overlay OVY_29
Object src/joined_at_checks.o
Object asm/overlay_29_022FBB1C.o
Object src/dungeon_logic_7.o
Object asm/overlay_29_022FBDF0.o
Object asm/overlay_29_022FBE04.o
Object src/overlay_29_022FC99C.o
Object asm/overlay_29_022FC9C0.o
Object src/overlay_29_022FEEB8_eu.o

View File

@ -5,6 +5,7 @@
#include "dungeon_ai_targeting_1.h"
#include "dungeon_capabilities_1.h"
#include "dungeon_capabilities_4.h"
#include "dungeon_logic_7.h"
#include "dungeon_map_access.h"
#include "dungeon_pokemon_attributes_1.h"
#include "dungeon_util.h"
@ -49,7 +50,6 @@ extern bool8 ShouldMonsterFollowLeader(struct entity *monster);
extern bool8 ShouldMonsterHeadToStairs(struct entity *entity);
extern bool8 ShouldMonsterRunAwayAndShowEffectOutlawCheck(struct entity* monster, bool8 show_run_away_effect);
extern bool8 IsPositionWithinTwoTiles(struct position *origin, struct position *target);
extern bool8 ov29_022FBDF0(struct entity*);
extern s32 ov29_022FBE04(struct monster*);
extern bool8 CanMoveThroughWalls(struct entity *monster);
extern bool8 ShouldAvoidFirstHit(struct entity *monster, bool8 force_avoid);
@ -77,7 +77,7 @@ void AiMovement(struct entity *monster, bool8 show_run_away_effect)
}
}
if (IsTacticSet(monster, TACTIC_WAIT_THERE) || ov29_022FBDF0(monster))
if (IsTacticSet(monster, TACTIC_WAIT_THERE) || IsSecretBazaarNpc(monster))
pokemon_info->action.action_id = ACTION_NOTHING;
else if (!pokemon_info->is_team_leader && CeilFixedPoint(pokemon_info->belly) == 0)
pokemon_info->action.action_id = ACTION_NOTHING;
@ -688,7 +688,7 @@ _01FFA428:
cmp r0, #0
bne _01FFA44C
mov r0, r4
bl ov29_022FBDF0
bl IsSecretBazaarNpc
cmp r0, #0
beq _01FFA458
_01FFA44C:

View File

@ -1,10 +1,17 @@
#include "dungeon_logic_7.h"
#include "dungeon_logic_6.h"
#include "dungeon_mode.h"
#include "dungeon_util_static.h"
#include "util.h"
extern bool8 IsSecretBazaarNpcBehavior(enum monster_behavior behavior);
bool8 IsLoneOutlawVeneer(struct monster* monster_info)
{
return IsLoneOutlaw(monster_info->monster_behavior);
}
bool8 IsSecretBazaarNpc(struct entity *entity)
{
return IsSecretBazaarNpcBehavior(GetEntInfo(entity)->monster_behavior);
}