mirror of
https://github.com/pret/pmd-red.git
synced 2026-04-25 15:46:18 -05:00
few more decomped funcs
This commit is contained in:
parent
617e992dac
commit
8e0ba3615a
|
|
@ -1121,193 +1121,4 @@ _08048DB2:
|
|||
bx r1
|
||||
thumb_func_end sub_8048D50
|
||||
|
||||
thumb_func_start sub_8048DB8
|
||||
sub_8048DB8:
|
||||
push {r4,lr}
|
||||
sub sp, 0x1C
|
||||
adds r3, r0, 0
|
||||
adds r4, r1, 0
|
||||
lsls r2, 24
|
||||
cmp r2, 0
|
||||
beq _08048DF4
|
||||
ldr r0, _08048DEC
|
||||
movs r1, 0
|
||||
ldrsh r2, [r0, r1]
|
||||
add r0, sp, 0x18
|
||||
str r0, [sp]
|
||||
movs r1, 0
|
||||
str r1, [sp, 0x4]
|
||||
ldr r0, _08048DF0
|
||||
str r0, [sp, 0x8]
|
||||
str r1, [sp, 0xC]
|
||||
str r1, [sp, 0x10]
|
||||
str r1, [sp, 0x14]
|
||||
adds r0, r3, 0
|
||||
adds r1, r4, 0
|
||||
movs r3, 0x1
|
||||
bl sub_806F370
|
||||
b _08048DFA
|
||||
.align 2, 0
|
||||
_08048DEC: .4byte gUnknown_80F4FAC
|
||||
_08048DF0: .4byte 0x00000217
|
||||
_08048DF4:
|
||||
adds r0, r3, 0
|
||||
bl sub_8051E7C
|
||||
_08048DFA:
|
||||
add sp, 0x1C
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8048DB8
|
||||
|
||||
thumb_func_start sub_8048E04
|
||||
sub_8048E04:
|
||||
push {r4-r6,lr}
|
||||
sub sp, 0x8
|
||||
adds r5, r0, 0
|
||||
adds r6, r1, 0
|
||||
movs r0, 0x1
|
||||
str r0, [sp]
|
||||
adds r0, r5, 0
|
||||
movs r2, 0x1E
|
||||
movs r3, 0
|
||||
bl sub_8078B5C
|
||||
movs r0, 0x5
|
||||
bl DungeonRandomCapped
|
||||
cmp r0, 0x4
|
||||
bhi _08048E9E
|
||||
lsls r0, 2
|
||||
ldr r1, _08048E30
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_08048E30: .4byte _08048E34
|
||||
.align 2, 0
|
||||
_08048E34:
|
||||
.4byte _08048E48
|
||||
.4byte _08048E54
|
||||
.4byte _08048E5E
|
||||
.4byte _08048E6C
|
||||
.4byte _08048E78
|
||||
_08048E48:
|
||||
adds r0, r5, 0
|
||||
adds r1, r6, 0
|
||||
movs r2, 0x1
|
||||
bl sub_80763F8
|
||||
b _08048E9E
|
||||
_08048E54:
|
||||
adds r0, r5, 0
|
||||
adds r1, r6, 0
|
||||
bl sub_80769CC
|
||||
b _08048E9E
|
||||
_08048E5E:
|
||||
adds r0, r5, 0
|
||||
adds r1, r6, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x1
|
||||
bl sub_8076210
|
||||
b _08048E9E
|
||||
_08048E6C:
|
||||
adds r0, r5, 0
|
||||
adds r1, r6, 0
|
||||
movs r2, 0x1
|
||||
bl sub_8077780
|
||||
b _08048E9E
|
||||
_08048E78:
|
||||
ldr r0, _08048EA8
|
||||
ldr r2, [r0]
|
||||
movs r4, 0x1
|
||||
str r4, [sp]
|
||||
str r4, [sp, 0x4]
|
||||
adds r0, r5, 0
|
||||
adds r1, r6, 0
|
||||
movs r3, 0x3
|
||||
bl sub_8076E20
|
||||
ldr r0, _08048EAC
|
||||
ldr r2, [r0]
|
||||
str r4, [sp]
|
||||
str r4, [sp, 0x4]
|
||||
adds r0, r5, 0
|
||||
adds r1, r6, 0
|
||||
movs r3, 0x3
|
||||
bl sub_8076E20
|
||||
_08048E9E:
|
||||
add sp, 0x8
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08048EA8: .4byte gUnknown_8106A4C
|
||||
_08048EAC: .4byte gUnknown_8106A50
|
||||
thumb_func_end sub_8048E04
|
||||
|
||||
thumb_func_start sub_8048EB0
|
||||
sub_8048EB0:
|
||||
push {lr}
|
||||
ldr r1, _08048EC0
|
||||
ldr r1, [r1]
|
||||
bl SendMessage
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08048EC0: .4byte gPtrIcePartCrumbledMessage
|
||||
thumb_func_end sub_8048EB0
|
||||
|
||||
thumb_func_start sub_8048EC4
|
||||
sub_8048EC4:
|
||||
push {lr}
|
||||
ldr r1, _08048ED4
|
||||
ldr r1, [r1]
|
||||
bl SendMessage
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08048ED4: .4byte gPtrRockPartCrumbledMessage
|
||||
thumb_func_end sub_8048EC4
|
||||
|
||||
thumb_func_start sub_8048ED8
|
||||
sub_8048ED8:
|
||||
push {lr}
|
||||
ldr r1, _08048EE8
|
||||
ldr r1, [r1]
|
||||
bl SendMessage
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08048EE8: .4byte gPtrSteelPartCrumbledMessage
|
||||
thumb_func_end sub_8048ED8
|
||||
|
||||
thumb_func_start sub_8048EEC
|
||||
sub_8048EEC:
|
||||
push {lr}
|
||||
ldr r1, _08048EFC
|
||||
ldr r1, [r1]
|
||||
bl SendMessage
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08048EFC: .4byte gPtrWishStoneCrumbledMessage
|
||||
thumb_func_end sub_8048EEC
|
||||
|
||||
thumb_func_start sub_8048F00
|
||||
sub_8048F00:
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
movs r1, 0xD6
|
||||
bl sub_80421C0
|
||||
ldr r0, _08048F24
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, 0
|
||||
bl SendMessage
|
||||
movs r0, 0x3C
|
||||
movs r1, 0x46
|
||||
bl sub_803E708
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08048F24: .4byte gPtrMusicBoxPlayedCrumbledMessage
|
||||
thumb_func_end sub_8048F00
|
||||
|
||||
.align 2, 0
|
||||
|
|
@ -19,7 +19,7 @@ u32 GetMoveMaxPP(struct PokemonMove *move);
|
|||
u8 GetMoveUnk12(struct PokemonMove *move);
|
||||
u8 GetMoveCriticalHitChance(struct PokemonMove *move);
|
||||
u8 GetMoveCannotHitFrozen(struct PokemonMove *move);
|
||||
u8 GetMoveDealsDirectDamage(struct PokemonMove *move);
|
||||
u8 MoveDealsDirectDamage(struct PokemonMove *move);
|
||||
u32 GetMoveRangeType(struct PokemonMove *move);
|
||||
void sub_8092C84(u8 *buffer, u16 moveID);
|
||||
u8 *GetMoveUseText(u16 moveID);
|
||||
|
|
|
|||
|
|
@ -1,16 +1,98 @@
|
|||
#include "global.h"
|
||||
#include "dungeon_ai_item_weight.h"
|
||||
|
||||
#include "code_80521D0.h"
|
||||
#include "constants/status.h"
|
||||
#include "constants/targeting.h"
|
||||
#include "dungeon_ai_1.h"
|
||||
#include "dungeon_map_access.h"
|
||||
#include "dungeon_pokemon_attributes.h"
|
||||
#include "dungeon_random.h"
|
||||
#include "dungeon_util.h"
|
||||
#include "moves.h"
|
||||
#include "number_util.h"
|
||||
#include "status_checks_1.h"
|
||||
|
||||
extern void sub_803E708(u32, u32);
|
||||
extern void sub_80421C0(struct DungeonEntity *r0, u16 r1);
|
||||
extern void sub_8078B5C(struct DungeonEntity *, u32, u32, u32, u32);
|
||||
extern void sub_80763F8(struct DungeonEntity *, u32, u32);
|
||||
extern void sub_80769CC(struct DungeonEntity *, u32);
|
||||
extern void sub_8076210(struct DungeonEntity *, u32, u32, u32);
|
||||
extern void sub_8077780(struct DungeonEntity *, u32, u32);
|
||||
extern void sub_8076E20(struct DungeonEntity *, u32, u32, u32, u32, u32);
|
||||
|
||||
extern u8 *gPtrMusicBoxPlayedCrumbledMessage[];
|
||||
extern u8 *gPtrWishStoneCrumbledMessage[];
|
||||
extern u8 *gPtrIcePartCrumbledMessage[];
|
||||
extern u8 *gPtrRockPartCrumbledMessage[];
|
||||
extern u8 *gPtrSteelPartCrumbledMessage[];
|
||||
extern u32 gUnknown_8106A4C;
|
||||
extern u32 gUnknown_8106A50;
|
||||
extern s16 gUnknown_80F4FAC;
|
||||
extern void sub_806F370(struct DungeonEntity *r0, struct DungeonEntity *r1, u32, u32, u8 *, u8, s32, u32, u32, u32);
|
||||
extern void sub_8051E7C(struct DungeonEntity *pokemon);
|
||||
|
||||
void sub_8048DB8(struct DungeonEntity *pokemon, struct DungeonEntity *r1, u8 r2)
|
||||
{
|
||||
u8 temp;
|
||||
if(r2 != 0)
|
||||
sub_806F370(pokemon, r1, gUnknown_80F4FAC, 1, &temp, 0, 0x217, 0, 0, 0);
|
||||
else
|
||||
sub_8051E7C(pokemon);
|
||||
}
|
||||
|
||||
void sub_8048E04(struct DungeonEntity *pokemon, u32 r1)
|
||||
{
|
||||
sub_8078B5C(pokemon, r1, 0x1E, 0, 1);
|
||||
switch(DungeonRandomCapped(5))
|
||||
{
|
||||
case 0:
|
||||
sub_80763F8(pokemon, r1, 1);
|
||||
break;
|
||||
case 1:
|
||||
sub_80769CC(pokemon, r1);
|
||||
break;
|
||||
case 2:
|
||||
sub_8076210(pokemon, r1, 1, 1);
|
||||
break;
|
||||
case 3:
|
||||
sub_8077780(pokemon, r1, 1);
|
||||
break;
|
||||
case 4:
|
||||
sub_8076E20(pokemon, r1, gUnknown_8106A4C, 3, 1, 1);
|
||||
sub_8076E20(pokemon, r1, gUnknown_8106A50, 3, 1, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8048EB0(struct DungeonEntity *pokemon)
|
||||
{
|
||||
SendMessage(pokemon, *gPtrIcePartCrumbledMessage);
|
||||
}
|
||||
|
||||
void sub_8048EC4(struct DungeonEntity *pokemon)
|
||||
{
|
||||
SendMessage(pokemon, *gPtrRockPartCrumbledMessage);
|
||||
}
|
||||
|
||||
void sub_8048ED8(struct DungeonEntity *pokemon)
|
||||
{
|
||||
SendMessage(pokemon, *gPtrSteelPartCrumbledMessage);
|
||||
}
|
||||
|
||||
void sub_8048EEC(struct DungeonEntity *pokemon)
|
||||
{
|
||||
SendMessage(pokemon, *gPtrWishStoneCrumbledMessage);
|
||||
}
|
||||
|
||||
void sub_8048F00(struct DungeonEntity *pokemon)
|
||||
{
|
||||
sub_80421C0(pokemon, 0xD6);
|
||||
SendMessage(pokemon, *gPtrMusicBoxPlayedCrumbledMessage);
|
||||
sub_803E708(0x3C, 0x46);
|
||||
}
|
||||
|
||||
u32 EvaluateItem(struct DungeonEntity *targetPokemon, struct ItemSlot *item, u32 itemTargetFlags)
|
||||
{
|
||||
struct DungeonEntityData *pokemonData = targetPokemon->entityData;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user