summaryrefslogtreecommitdiff
path: root/src/cable_club.c
diff options
context:
space:
mode:
authorscnorton <scnorton@biociphers.org>2017-06-27 15:01:18 -0400
committerscnorton <scnorton@biociphers.org>2017-06-27 15:01:18 -0400
commit00c7dee919c8f93b8519a7eede2c41ba2ddcaf08 (patch)
tree5707f8764920abcd4cffca84c675e5c53c32559d /src/cable_club.c
parent3d9eb18add0d8a9eb5bfa77fc64cd7b1f37fea5d (diff)
parent06b6cada0ddedc62063171703ba6607019751a9a (diff)
Merge branch 'master' into pokemon_data
Diffstat (limited to 'src/cable_club.c')
-rw-r--r--src/cable_club.c38
1 files changed, 26 insertions, 12 deletions
diff --git a/src/cable_club.c b/src/cable_club.c
index 45fb347f3..70b372205 100644
--- a/src/cable_club.c
+++ b/src/cable_club.c
@@ -1,5 +1,5 @@
#include "global.h"
-#include "asm.h"
+#include "cable_club.h"
#include "field_message_box.h"
#include "link.h"
#include "main.h"
@@ -13,6 +13,7 @@
extern u16 gScriptResult;
extern struct TrainerCard gTrainerCards[4];
+extern struct LinkPlayer gLinkPlayers[];
extern u8 gUnknown_03004860;
extern u8 gFieldLinkPlayerCount;
@@ -20,20 +21,9 @@ extern u8 gFieldLinkPlayerCount;
extern u8 gUnknown_081A4932[];
extern const u8 gUnknown_081A4975[];
-void sub_8082D4C();
-void sub_8082D60(u8, u8);
-u16 sub_8082D9C(u8, u8);
-u32 sub_8082DF4(u8);
-u32 sub_8082E28(u8);
-u32 sub_8082EB8(u8);
-void sub_8082FEC(u8 taskId);
static void sub_80830E4(u8 taskId);
-void sub_8083188(u8 taskId);
static void sub_8083288(u8 taskId);
static void sub_8083314(u8 taskId);
-void sub_80833C4(u8 taskId);
-void sub_8083418(u8 taskId);
-u8 sub_8083444(u8 taskId);
void sub_808303C(u8 taskId) {
s32 linkPlayerCount;
@@ -57,6 +47,7 @@ void sub_808303C(u8 taskId) {
return;
}
+#if ENGLISH
if (linkPlayerCount < taskData[1])
{
return;
@@ -67,6 +58,17 @@ void sub_808303C(u8 taskId) {
ConvertIntToDecimalStringN(gStringVar1, linkPlayerCount, STR_CONV_MODE_LEFT_ALIGN, 1); // r5
ShowFieldAutoScrollMessage((u8 *) gUnknown_081A4975);
gTasks[taskId].func = sub_80830E4;
+#elif GERMAN
+ if ((gLinkType == 0x2255 && (u32) linkPlayerCount > 1) ||
+ (gLinkType != 0x2255 && taskData[1] <= linkPlayerCount))
+ {
+ sub_80081C8(linkPlayerCount);
+ sub_8082D4C();
+ ConvertIntToDecimalStringN(gStringVar1, linkPlayerCount, STR_CONV_MODE_LEFT_ALIGN, 1); // r5
+ ShowFieldAutoScrollMessage((u8 *) gUnknown_081A4975);
+ gTasks[taskId].func = sub_80830E4;
+ }
+#endif
}
#ifdef NONMATCHING
@@ -291,9 +293,21 @@ static void sub_8083314(u8 taskId) {
if (gScriptResult == 1)
{
+#if ENGLISH
u16 linkType;
linkType = gLinkType;
+ // FIXME: sub_8082D4C doesn't take any arguments
sub_8082D4C(0x00004411, linkType);
+#elif GERMAN
+ if (gLinkType != 0x4411)
+ {
+ if (gLinkType == 0x6601)
+ {
+ deUnkValue2 = 1;
+ }
+ }
+ sub_8082D4C();
+#endif
EnableBothScriptContexts();
DestroyTask(taskId);
return;