blob: df8759464f98cf3b87955961c7000eb3521c860a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
#ifndef POKEMON_H
#define POKEMON_H
#include "file_system.h"
struct EvolveStruct1
{
/* 0x34 */ u16 evolve_from;
/* 0x36 */ u16 evolve_type;
};
struct EvolveNeeds
{
/* 0x38 */ u16 evolve_need1;
/* 0x3A */ u16 evolve_need2;
};
struct unkEvolve
{
/* 0x0 */ struct EvolveStruct1 conditions;
/* 0x4 */ struct EvolveNeeds needs;
};
struct gPokemon
{
/* 0x0 */ u8* species;
/* 0x4 */ u8* category;
/* 0x8 */ u8 overworld_palette;
/* 0x9 */ u8 size;
/* 0xA */ u8 unkA;
/* 0xB */ u8 unkB;
/* 0xC */ s32 move_speed;
/* 0x10 */ u16 dialogue_sprites;
/* 0x12 */ u8 unk12;
/* 0x13 */ u8 types[2];
/* 0x15 */ u8 walkable_tiles;
/* 0x16 */ u8 friend_area;
/* 0x17 */ u8 abilities[2];
/* 0x19 */ u8 shadow_size;
/* 0x1A */ u8 unk1A;
/* 0x1B */ u8 unk1B;
/* 0x1C */ bool8 isMoving;
/* 0x1D */ u8 unk1D;
/* 0x1E */ u16 base_hp;
/* 0x20 */ u16 base_exp;
/* 0x22 */ u16 unk22;
/* 0x24 */ u16 base_att_spatt[2];
/* 0x28 */ u16 base_def_spdef[2];
/* 0x2C */ u16 lowkick_dmg;
/* 0x2E */ u16 sizeorb_dmg;
/* 0x30 */ u8 unk30;
/* 0x31 */ u8 unk31;
/* 0x32 */ u8 unk32;
/* 0x33 */ bool8 unk33;
/* 0x34 */ struct EvolveStruct1 pre;
/* 0x38 */ struct EvolveNeeds need;
/* 0x3C */ s16 unk3C[2]; // dexNo and internalNo
/* 0x40 */ s16 base_recruit;
/* 0x42 */ s16 unk42[2]; // alphabetNo and parentNo
};
u8 *GetCategoryString(s16 index);
u8 GetPokemonSize(s16 index);
u8 GetShadowSize(s16 index);
s32 GetMoveSpeed(s16 index);
u8 GetWalkableTiles(s16 index);
u8 GetUnk1B(s16 index);
bool8 GetIsMoving(s16 index);
u8 GetUnk1D(s16 index);
u16 GetLowKickDmg(s16 index);
u16 GetSizeOrbDmg(s16 index);
u8 GetFriendArea(s16 index);
u16 GetBaseHP(s16 index);
bool8 GetUnk33(s16 index);
u8 GetUnk12(s16 index);
s16 GetPokemonEvolveFrom(s16 index);
u16 GetPokemonAttSpatt(s16 index, u32 r1);
u16 GetPokemonDefSpdef(s16 index, u32 r1);
u8 GetPokemonType(s32 index, u32 typeIndex);;
u8 GetPokemonAbility(s16 index, u32 abilityIndex);
s16 sub_808DCA0(s16 index, u32 r1);
s16 GetBaseRecruit(s16 index);
s16 sub_808DCDC(s16 index, s32 r1);
s16 sub_808DCFC(s16 index);
u32 CalculateEXPGain(s16 index, s32 level);
s16 sub_808DD48(s16 index, struct unkEvolve *r1);
u8 GetPokemonOverworldPalette(s16 index, u32 r1);
bool8 IsPokemonDialogueSpriteAvail(s16 index, s32 r1);
struct OpenedFile *OpenPokemonDialogueSpriteFile(s16 index);
struct OpenedFile *GetDialogueSpriteDataPtr(s16 index);
#endif // POKEMON_H
|