mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-04-21 06:27:22 -05:00
210 lines
5.0 KiB
C
210 lines
5.0 KiB
C
#include <nitro.h>
|
|
#include <string.h>
|
|
|
|
#include "message.h"
|
|
#include "struct_decls/struct_0200B358_decl.h"
|
|
#include "strbuf.h"
|
|
#include "struct_decls/struct_02029D04_decl.h"
|
|
#include "struct_decls/struct_0202CA1C_decl.h"
|
|
#include "struct_decls/struct_021C0794_decl.h"
|
|
|
|
#include "struct_defs/struct_0207CB08.h"
|
|
#include "struct_defs/struct_0207CDEC.h"
|
|
|
|
#include "message.h"
|
|
#include "unk_0200B358.h"
|
|
#include "heap.h"
|
|
#include "strbuf.h"
|
|
#include "unk_02025E08.h"
|
|
#include "unk_020298BC.h"
|
|
#include "coins.h"
|
|
#include "unk_0202C9F4.h"
|
|
#include "unk_0202D05C.h"
|
|
#include "unk_0207CB08.h"
|
|
|
|
static u32 sub_0207CBB4(SaveData * param0);
|
|
static u32 sub_0207CBC0(SaveData * param0);
|
|
static u32 sub_0207CBE0(SaveData * param0);
|
|
static u32 sub_0207CBF0(SaveData * param0);
|
|
static u32 sub_0207CC00(SaveData * param0);
|
|
|
|
UnkStruct_0207CB08 * sub_0207CB08 (u8 param0)
|
|
{
|
|
UnkStruct_0207CB08 * v0 = (UnkStruct_0207CB08 *)Heap_AllocFromHeap(param0, sizeof(UnkStruct_0207CB08));
|
|
memset(v0, 0, sizeof(UnkStruct_0207CB08));
|
|
return v0;
|
|
}
|
|
|
|
u32 sub_0207CB20 (void)
|
|
{
|
|
return sizeof(UnkStruct_0207CB08);
|
|
}
|
|
|
|
void sub_0207CB24 (UnkStruct_0207CB08 * param0, u8 param1)
|
|
{
|
|
param0->unk_65 = param1;
|
|
}
|
|
|
|
void sub_0207CB2C (UnkStruct_0207CB08 * param0, SaveData * param1, u8 param2, void * param3)
|
|
{
|
|
sub_0207CB24(param0, param2);
|
|
param0->unk_00 = param1;
|
|
param0->unk_6C = param3;
|
|
param0->unk_66 = 0;
|
|
}
|
|
|
|
void sub_0207CB48 (UnkStruct_0207CB08 * param0, BagItem * param1, u8 param2, u8 param3)
|
|
{
|
|
param0->unk_04[param3].unk_00 = param1;
|
|
param0->unk_04[param3].unk_08 = param2;
|
|
}
|
|
|
|
void sub_0207CB58 (UnkStruct_0207CB08 * param0)
|
|
{
|
|
param0->unk_76_0 = 1;
|
|
}
|
|
|
|
void sub_0207CB6C (UnkStruct_0207CB08 * param0, void * param1)
|
|
{
|
|
param0->unk_70 = param1;
|
|
}
|
|
|
|
void sub_0207CB70 (UnkStruct_0207CB08 * param0, u8 param1)
|
|
{
|
|
param0->unk_74 = param1;
|
|
}
|
|
|
|
void sub_0207CB78 (UnkStruct_0207CB08 * param0, u16 param1)
|
|
{
|
|
param0->unk_76_1 = param1;
|
|
}
|
|
|
|
u16 sub_0207CB94 (UnkStruct_0207CB08 * param0)
|
|
{
|
|
return param0->unk_66;
|
|
}
|
|
|
|
u16 sub_0207CB9C (UnkStruct_0207CB08 * param0)
|
|
{
|
|
return param0->unk_68;
|
|
}
|
|
|
|
u8 sub_0207CBA4 (UnkStruct_0207CB08 * param0)
|
|
{
|
|
return param0->unk_74;
|
|
}
|
|
|
|
u8 sub_0207CBAC (UnkStruct_0207CB08 * param0)
|
|
{
|
|
return param0->unk_75;
|
|
}
|
|
|
|
static u32 sub_0207CBB4 (SaveData * param0)
|
|
{
|
|
return Coins_GetValue(sub_02025E50(param0));
|
|
}
|
|
|
|
static u32 sub_0207CBC0 (SaveData * param0)
|
|
{
|
|
UnkStruct_0202CA1C * v0;
|
|
u32 v1, v2;
|
|
|
|
v0 = sub_0202CA1C(param0);
|
|
v2 = 0;
|
|
|
|
for (v1 = 1; v1 <= 80; v1++) {
|
|
v2 += sub_0202CBC8(v0, v1);
|
|
}
|
|
|
|
return v2;
|
|
}
|
|
|
|
static u32 sub_0207CBE0 (SaveData * param0)
|
|
{
|
|
UnkStruct_02029D04 * v0 = sub_02029D04(sub_0202A750(param0));
|
|
return sub_02029DF0(v0);
|
|
}
|
|
|
|
static u32 sub_0207CBF0 (SaveData * param0)
|
|
{
|
|
UnkStruct_02029D04 * v0 = sub_02029D04(sub_0202A750(param0));
|
|
return sub_02029E0C(v0);
|
|
}
|
|
|
|
static u32 sub_0207CC00 (SaveData * param0)
|
|
{
|
|
return (u32)sub_0202D230(sub_0202D750(param0), 0, 0);
|
|
}
|
|
|
|
BOOL sub_0207CC10 (SaveData * param0, Strbuf *param1, u16 param2, u32 param3)
|
|
{
|
|
MessageLoader * v0;
|
|
UnkStruct_0200B358 * v1;
|
|
Strbuf* v2;
|
|
|
|
v0 = MessageLoader_Init(0, 26, 7, param3);
|
|
v1 = sub_0200B358(param3);
|
|
|
|
if (param2 == 0) {
|
|
v2 = MessageLoader_GetNewStrbuf(v0, 99);
|
|
} else if (param2 == 432) {
|
|
v2 = MessageLoader_GetNewStrbuf(v0, 97);
|
|
sub_0200B60C(v1, 0, sub_0207CC00(param0), 4, 0, 1);
|
|
} else if (param2 == 434) {
|
|
v2 = MessageLoader_GetNewStrbuf(v0, 92);
|
|
sub_0200B60C(v1, 0, sub_0207CBC0(param0), 4, 0, 1);
|
|
} else if (param2 == 435) {
|
|
v2 = MessageLoader_GetNewStrbuf(v0, 93);
|
|
sub_0200B60C(v1, 0, sub_0207CBE0(param0), 3, 0, 1);
|
|
sub_0200B60C(v1, 1, sub_0207CBF0(param0), 2, 0, 1);
|
|
} else if (param2 == 444) {
|
|
v2 = MessageLoader_GetNewStrbuf(v0, 57);
|
|
sub_0200B60C(v1, 0, sub_0207CBB4(param0), 5, 0, 1);
|
|
} else {
|
|
sub_0200B3F0(v1);
|
|
MessageLoader_Free(v0);
|
|
return 0;
|
|
}
|
|
|
|
sub_0200C388(v1, param1, v2);
|
|
Strbuf_Free(v2);
|
|
sub_0200B3F0(v1);
|
|
MessageLoader_Free(v0);
|
|
|
|
return 1;
|
|
}
|
|
|
|
void sub_0207CD34 (void * param0, Strbuf *param1, u16 param2, u32 param3, u32 param4)
|
|
{
|
|
MessageLoader * v0;
|
|
UnkStruct_0200B358 * v1;
|
|
Strbuf* v2;
|
|
|
|
switch (param3) {
|
|
case 1:
|
|
v0 = MessageLoader_Init(1, 26, 7, param4);
|
|
MessageLoader_GetStrbuf(v0, 56, param1);
|
|
MessageLoader_Free(v0);
|
|
break;
|
|
case 2:
|
|
v0 = MessageLoader_Init(1, 26, 7, param4);
|
|
MessageLoader_GetStrbuf(v0, 111, param1);
|
|
MessageLoader_Free(v0);
|
|
break;
|
|
case 3:
|
|
v0 = MessageLoader_Init(1, 26, 7, param4);
|
|
MessageLoader_GetStrbuf(v0, 112, param1);
|
|
MessageLoader_Free(v0);
|
|
break;
|
|
default:
|
|
v0 = MessageLoader_Init(1, 26, 213, param4);
|
|
v1 = sub_0200B358(param4);
|
|
v2 = MessageLoader_GetNewStrbuf(v0, 36);
|
|
sub_0200B498(v1, 0, param0);
|
|
sub_0200C388(v1, param1, v2);
|
|
Strbuf_Free(v2);
|
|
sub_0200B3F0(v1);
|
|
MessageLoader_Free(v0);
|
|
}
|
|
}
|