summaryrefslogtreecommitdiff
path: root/src/pokemon_1.c
diff options
context:
space:
mode:
authorSeth Barberee <seth.barberee@gmail.com>2020-12-17 13:17:58 -0600
committerGitHub <noreply@github.com>2020-12-17 13:17:58 -0600
commit096de8d9b2ffd90c52e790296bfd7c5436d45ca3 (patch)
tree9c5af2e04dea05221c71946a5dfc06471f77801d /src/pokemon_1.c
parentbc504264f1e54b3c1e482710c592e5549828bfe1 (diff)
parentf90f3affeb9b0a66aa7df68f5fdecd692033faf9 (diff)
Merge pull request #12 from SethBarberee/master
Merge work from SethBarberee/pmd-red into pret.
Diffstat (limited to 'src/pokemon_1.c')
-rw-r--r--src/pokemon_1.c74
1 files changed, 74 insertions, 0 deletions
diff --git a/src/pokemon_1.c b/src/pokemon_1.c
new file mode 100644
index 0000000..ebb24d7
--- /dev/null
+++ b/src/pokemon_1.c
@@ -0,0 +1,74 @@
+#include "global.h"
+#include "pokemon.h"
+#include "file_system.h"
+
+extern int sprintf(char *, const char *, ...);
+
+extern struct gPokemon *gMonsterParameters;
+extern struct FileArchive gUnknown_8510000;
+extern const char gUnknown_8107684[];
+
+struct unkEvolve
+{
+ /* 0x0 */ struct EvolveStruct1 conditions;
+ /* 0x4 */ struct EvolveNeeds needs;
+};
+
+s16 sub_808DD48(s16 r0, struct unkEvolve *r1)
+{
+ struct EvolveStruct1 temp2;
+ struct EvolveNeeds temp1;
+ temp1 = gMonsterParameters[r0].need;
+ temp2 = gMonsterParameters[r0].pre;
+ r1->conditions = temp2;
+ r1->needs = temp1;
+ // The return value is not used anywhere, but necessary for the function to match.
+ return r0;
+}
+
+u8 sub_808DD68(s16 r0, u32 r1)
+{
+ // Had to have this cast to match
+ u32 temp;
+ temp = r0;
+ if (r1 != 0)
+ {
+ return 0xA;
+ }
+ else
+ {
+ return gMonsterParameters[temp].overworld_sprite;
+ }
+}
+
+struct OpenedFile *sub_808DD90(s16 r0)
+{
+ // Looks like this loads the dialogue sprite for the pokemon
+
+ char buffer[0xC];
+ if(gMonsterParameters[r0].dialogue_sprites == 0)
+ {
+ return NULL;
+ }
+ sprintf(buffer, gUnknown_8107684, r0); // "kao%03d"
+ return OpenFile(buffer, &gUnknown_8510000);
+}
+
+struct OpenedFile *sub_808DDD0(s16 r0)
+{
+ // Looks like this loads the dialogue sprite for the pokemon
+
+ char buffer[0xC];
+ if(gMonsterParameters[r0].dialogue_sprites == 0)
+ {
+ return NULL;
+ }
+ sprintf(buffer, gUnknown_8107684, r0); // "kao%03d"
+ return OpenFileAndGetFileDataPtr(buffer, &gUnknown_8510000);
+}
+
+bool8 sub_808DE10(s16 r0, s32 r1)
+{
+ // checking to see if dialogue sprite is available??
+ return (gMonsterParameters[r0].dialogue_sprites >> r1) & 1;
+}