diff options
-rw-r--r-- | data/union_room_battle.s | 7 | ||||
-rw-r--r-- | data/union_room_message.s | 297 | ||||
-rw-r--r-- | include/event_object_movement.h | 2 | ||||
-rw-r--r-- | include/link_rfu.h | 2 | ||||
-rw-r--r-- | include/rfu_union_tool.h | 2 | ||||
-rw-r--r-- | include/union_room.h | 18 | ||||
-rw-r--r-- | src/link_rfu_2.c | 4 | ||||
-rw-r--r-- | src/rfu_union_tool.c | 292 | ||||
-rw-r--r-- | src/union_room.c | 52 |
9 files changed, 412 insertions, 264 deletions
diff --git a/data/union_room_battle.s b/data/union_room_battle.s index f9988661e..d7fff5e96 100644 --- a/data/union_room_battle.s +++ b/data/union_room_battle.s @@ -10,13 +10,14 @@ gUnknown_8457194:: @ 8457194 .2byte 0x01FC, 0x0000 @ BgTemplate + .align 2 gUnknown_8457198:: @ 8457198 .byte 0x00, 0x02, 0x0F, 0x1A, 0x04, 0x0E @ window template .2byte 0x0014 - @ ??? - .byte -1, 0, 0, 0 - .byte 0, 0, 0, 0 + .byte 0xFF, 0, 0, 0, 0, 0 + .2byte 0x0000 + .align 2 gUnknown_84571A8:: @ 84571A8 .byte 0x01, 0x02, 0x03, 0x00 diff --git a/data/union_room_message.s b/data/union_room_message.s index 0d72f7c1d..02ad4f5f4 100644 --- a/data/union_room_message.s +++ b/data/union_room_message.s @@ -27,6 +27,7 @@ gUnknown_84571E0:: @ 84571E0 .string "SYSTEM search has been canceled.$" .align 2 +gUnref_845721C:: @ 845721C .string "ともだちからの れんらくを\n" @ something about waiting for a friend to connect? .string "まっています$" @@ -167,43 +168,56 @@ gUnknown_845747C:: @ 845747C .align 2 unref_text_union_room_2:: - .string "ため\nさんかしゃ ぼしゅうちゅう です!$" + .string "ため\n" + .string "さんかしゃ ぼしゅうちゅう です!$" .align 2 gUnknown_84574A0:: @ 84574A0 - .string "{STR_VAR_2} contacted you for\n{STR_VAR_1}. Accept?$" + .string "{STR_VAR_2} contacted you for\n" + .string "{STR_VAR_1}. Accept?$" .align 2 gUnknown_84574C4:: @ 84574C4 - .string "{STR_VAR_2} contacted you.\nWill you share {STR_VAR_1}?$" + .string "{STR_VAR_2} contacted you.\n" + .string "Will you share {STR_VAR_1}?$" .align 2 gUnknown_84574EC:: @ 84574EC - .string "{STR_VAR_2} contacted you.\nAdd to the members?$" + .string "{STR_VAR_2} contacted you.\n" + .string "Add to the members?$" .align 2 gUnknown_8457514:: @ 8457514 - .string "{STR_VAR_1}!\nAre these members OK?$" + .string "{STR_VAR_1}!\n" + .string "Are these members OK?$" .align 2 gUnknown_8457530:: @ 8457530 - .string "Cancel {STR_VAR_1} MODE\nwith these members?$" + .string "Cancel {STR_VAR_1} MODE\n" + .string "with these members?$" .align 2 gUnknown_8457554:: @ 8457554 - .string "An “OK” was sent\nto {STR_VAR_1}.$" + .string "An “OK” was sent\n" + .string "to {STR_VAR_1}.$" .align 2 gUnknown_845756C:: @ 845756C - .string "The other TRAINER doesn't appear\nto be available now…\p$" + .string "The other TRAINER doesn't appear\n" + .string "to be available now…\p" + .string "$" .align 2 gUnknown_84575A4:: @ 84575A4 - .string "You can't transmit with a TRAINER\nwho is too far away.\p$" + .string "You can't transmit with a TRAINER\n" + .string "who is too far away.\p" + .string "$" .align 2 gUnknown_84575DC:: @ 84575DC - .string "The other TRAINER(S) is/are not\nready yet.\p$" + .string "The other TRAINER(S) is/are not\n" + .string "ready yet.\p" + .string "$" .align 2 gUnknown_8457608:: @ 8457608 @@ -212,11 +226,14 @@ gUnknown_8457608:: @ 8457608 .align 2 gUnknown_8457610:: @ 8457610 - .string "The {STR_VAR_1} MODE with\nthese members will be canceled.{PAUSE 90}$" + .string "The {STR_VAR_1} MODE with\n" + .string "these members will be canceled.{PAUSE 90}$" .align 2 gUnknown_8457644:: @ 8457644 - .string "There is a member who can no\nlonger remain available.\p$" + .string "There is a member who can no\n" + .string "longer remain available.\p" + .string "$" .align 2 gUnknown_845767C:: @ 845767C @@ -225,7 +242,9 @@ gUnknown_845767C:: @ 845767C .align 2 gUnknown_8457684:: @ 8457684 - .string "The other TRAINER appears\nunavailable…\p$" + .string "The other TRAINER appears\n" + .string "unavailable…\p" + .string "$" .align 2 gUnknown_84576AC:: @ 84576AC @@ -233,15 +252,18 @@ gUnknown_84576AC:: @ 84576AC .align 2 gUnknown_84576C4:: @ 84576C4 - .string "{STR_VAR_1} OK'd your registration as\na member.$" + .string "{STR_VAR_1} OK'd your registration as\n" + .string "a member.$" .align 2 gUnknown_84576EC:: @ 84576EC - .string "{STR_VAR_1} replied, “No…”\p$" + .string "{STR_VAR_1} replied, “No…”\p" + .string "$" .align 2 gUnknown_8457700:: @ 8457700 - .string "{STR_VAR_1}!\nAwaiting other members!$" + .string "{STR_VAR_1}!\n" + .string "Awaiting other members!$" .align 2 gUnknown_845771C:: @ 845771C @@ -249,7 +271,8 @@ gUnknown_845771C:: @ 845771C .align 2 gUnknown_8457734:: @ 8457734 - .string "You stopped being a member.\p$" + .string "You stopped being a member.\p" + .string "$" .align 2 gUnknown_8457754:: @ 8457754 @@ -266,15 +289,18 @@ gUnknown_8457754:: @ 8457754 .align 2 gUnknown_845777C:: @ 845777C - .string "The WIRELESS COMMUNICATION\nSYSTEM link has been established.$" + .string "The WIRELESS COMMUNICATION\n" + .string "SYSTEM link has been established.$" .align 2 gUnknown_84577BC:: @ 84577BC - .string "The WIRELESS COMMUNICATION\nSYSTEM link has been dropped…$" + .string "The WIRELESS COMMUNICATION\n" + .string "SYSTEM link has been dropped…$" .align 2 gUnknown_84577F8:: @ 84577F8 - .string "The link with your friend has been\ndropped…$" + .string "The link with your friend has been\n" + .string "dropped…$" .align 2 gUnknown_8457824:: @ 8457824 @@ -295,11 +321,13 @@ gUnknown_8457838:: @ 8457838 .align 2 gUnknown_8457860:: @ 8457860 - .string "Do you want the {STR_VAR_2}\nMODE?$" + .string "Do you want the {STR_VAR_2}\n" + .string "MODE?$" .align 2 gUnknown_845787C:: @ 845787C - .string "Do you want the {STR_VAR_2}\nMODE?$" + .string "Do you want the {STR_VAR_2}\n" + .string "MODE?$" .align 2 gUnknown_8457898:: @ 8457898 @@ -313,19 +341,23 @@ gUnknown_84578A0:: @ 84578A0 .align 2 gUnknown_84578BC:: @ 84578BC - .string "Awaiting {STR_VAR_1}'s response about\nthe trade…$" + .string "Awaiting {STR_VAR_1}'s response about\n" + .string "the trade…$" .align 2 gUnknown_84578E4:: @ 84578E4 - .string "Communicating{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.$" + .string "Communicating{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n" + .string "{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.$" .align 2 gUnknown_8457950:: @ 8457950 - .string "Communicating with {STR_VAR_1}{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.$" + .string "Communicating with {STR_VAR_1}{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n" + .string "{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.$" .align 2 gUnknown_84579BC:: @ 84579BC - .string "Please wait a while{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.$" + .string "Please wait a while{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n" + .string "{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.$" .align 2 gUnknown_8457A34:: @ 8457A34 @@ -335,19 +367,23 @@ gUnknown_8457A34:: @ 8457A34 .align 2 gUnknown_8457A40:: @ 8457A40 - .string "Hiya! Is there something that you\nwanted to do?$" + .string "Hiya! Is there something that you\n" + .string "wanted to do?$" .align 2 gUnknown_8457A70:: @ 8457A70 - .string "Hello!\nWould you like to do something?$" + .string "Hello!\n" + .string "Would you like to do something?$" .align 2 gUnknown_8457A98:: @ 8457A98 - .string "{STR_VAR_1}: Hiya, we meet again!\nWhat are you up for this time?$" + .string "{STR_VAR_1}: Hiya, we meet again!\n" + .string "What are you up for this time?$" .align 2 gUnknown_8457AD0:: @ 8457AD0 - .string "{STR_VAR_1}: Oh! {PLAYER}, hello!\nWould you like to do something?$" + .string "{STR_VAR_1}: Oh! {PLAYER}, hello!\n" + .string "Would you like to do something?$" .align 2 gUnknown_8457B04:: @ 8457B04 @@ -366,7 +402,8 @@ gUnknown_8457B2C:: @ 8457B2C .align 2 gUnknown_8457B4C:: @ 8457B4C - .string "{STR_VAR_1}: What would you like to\ndo now?$" + .string "{STR_VAR_1}: What would you like to\n" + .string "do now?$" .align 2 gUnknown_8457B70:: @ 8457B70 @@ -394,11 +431,13 @@ gUnknown_8457BCC:: @ 8457BCC .align 2 gUnknown_8457BD4:: @ 8457BD4 - .string "Awaiting a response from\nthe other TRAINER…$" + .string "Awaiting a response from\n" + .string "the other TRAINER…$" .align 2 gUnknown_8457C00:: @ 8457C00 - .string "Awaiting a response from\n{STR_VAR_1}…$" + .string "Awaiting a response from\n" + .string "{STR_VAR_1}…$" .align 2 gUnknown_8457C20:: @ 8457C20 @@ -448,18 +487,22 @@ gUnknown_8457DB8:: @ 8457DB8 .align 2 gUnknown_8457E0C:: @ 8457E0C - .string "The chat has been dropped.\p$" + .string "The chat has been dropped.\p" + .string "$" gUnknown_8457E28:: @ 8457E28 - .string "You declined the offer.\p$" + .string "You declined the offer.\p" + .string "$" .align 2 gUnknown_8457E44:: @ 8457E44 - .string "You declined the offer.\p$" + .string "You declined the offer.\p" + .string "$" .align 2 gUnknown_8457E60:: @ 8457E60 - .string "The chat was ended.\p$" + .string "The chat was ended.\p" + .string "$" .align 2 gUnknown_8457E78:: @@ -499,7 +542,8 @@ gUnknown_8457F80:: @ 8457F80 gUnknown_8457F90:: @ 8457F90 .string "……\n" - .string "The TRAINER appears to be busy…\p$" + .string "The TRAINER appears to be busy…\p" + .string "$" .align 2 gUnknown_8457FB4:: @@ -596,12 +640,14 @@ gUnknown_8458230:: @ 8458230 gUnknown_8458260:: .string "Sorry! My POKéMON don't seem to\n" .string "be feeling too well right now.\l" - .string "Let me battle you another time.\p$" + .string "Let me battle you another time.\p" + .string "$" gUnknown_84582C0:: .string "I'm terribly sorry, but my POKéMON\n" .string "aren't feeling well…\p" - .string "Let's battle another time.\p$" + .string "Let's battle another time.\p" + .string "$" gUnknown_8458314:: @ 8458314 .4byte gUnknown_8458260 @@ -611,13 +657,15 @@ gUnknown_8458314:: @ 8458314 gUnknown_845831C:: .string "Huh? My TRAINER CARD…\n" .string "Where'd it go now?\l" - .string "Sorry! I'll show you another time!\p$" + .string "Sorry! I'll show you another time!\p" + .string "$" .align 2 gUnknown_845836C:: .string "Oh? Now where did I put my\n" .string "TRAINER CARD?…\l" - .string "Sorry! I'll show you later!\p$" + .string "Sorry! I'll show you later!\p" + .string "$" .align 2 gUnknown_84583B4:: @ 84583B4 @@ -627,11 +675,13 @@ gUnknown_84583B4:: @ 84583B4 .align 2 gUnknown_84583BC:: .string "If you want to do something with\n" - .string "me, just give me a shout!\p$" + .string "me, just give me a shout!\p" + .string "$" .align 2 gUnknown_84583F8:: .string "If you want to do something with\n" - .string "me, don't be shy.\p$" + .string "me, don't be shy.\p" + .string "$" .align 2 gUnknown_845842C:: @ 845842C @@ -641,27 +691,32 @@ gUnknown_845842C:: @ 845842C gUnknown_8458434:: @ 8458434 .string "Whoops! Sorry, but I have to do\n" .string "something else.\l" - .string "Another time, okay?\p$" + .string "Another time, okay?\p" + .string "$" .align 2 gUnknown_845847C:: @ 845847C .string "If you want to battle, you need\n" .string "two POKéMON that are below\l" - .string "Lv. 30.\p$" + .string "Lv. 30.\p" + .string "$" gUnknown_84584C0:: @ 84584C0 .string "For a battle, you need two\n" - .string "POKéMON that are below Lv. 30.\p$" + .string "POKéMON that are below Lv. 30.\p" + .string "$" .align 2 gUnknown_84584FC:: .string "Oh, all right.\n" - .string "Come see me anytime, okay?\p$" + .string "Come see me anytime, okay?\p" + .string "$" .align 2 gUnknown_8458528:: .string "Oh…\n" - .string "Please come by anytime.\p$" + .string "Please come by anytime.\p" + .string "$" .align 2 gUnknown_8458548:: @ 8458548 @@ -672,13 +727,15 @@ gUnknown_8458548:: @ 8458548 gUnknown_8458550:: .string "Oh, sorry!\n" .string "I just can't right this instant.\l" - .string "Let's chat another time.\p$" + .string "Let's chat another time.\p" + .string "$" .align 2 gUnknown_8458598:: .string "Oh, I'm sorry.\n" .string "I have too much to do right now.\l" - .string "Let's chat some other time.\p$" + .string "Let's chat some other time.\p" + .string "$" .align 2 gUnknown_84585E8:: @ 84585E8 @@ -688,42 +745,50 @@ gUnknown_84585E8:: @ 84585E8 .align 2 gUnknown_84585F0:: .string "Whoa!\n" - .string "I can tell you're pretty tough!\p$" + .string "I can tell you're pretty tough!\p" + .string "$" .align 2 gUnknown_8458618:: .string "You used that move?\n" - .string "That's good strategy!\p$" + .string "That's good strategy!\p" + .string "$" .align 2 gUnknown_8458644:: .string "Way to go!\n" - .string "That was an eye-opener!\p$" + .string "That was an eye-opener!\p" + .string "$" .align 2 gUnknown_8458668:: .string "Oh! How could you use that\n" - .string "POKéMON in that situation?\p$" + .string "POKéMON in that situation?\p" + .string "$" .align 2 gUnknown_84586A0:: .string "That POKéMON…\n" - .string "It's been raised really well!\p$" + .string "It's been raised really well!\p" + .string "$" .align 2 gUnknown_84586D0:: .string "That's it!\n" - .string "This is the right move now!\p$" + .string "This is the right move now!\p" + .string "$" .align 2 gUnknown_84586F8:: .string "That's awesome!\n" - .string "You can battle that way?\p$" + .string "You can battle that way?\p" + .string "$" .align 2 gUnknown_8458724:: .string "You have exquisite timing for\n" - .string "switching POKéMON!\p$" + .string "switching POKéMON!\p" + .string "$" .align 2 gUnknown_8458758:: @ 8458758 @@ -739,42 +804,50 @@ gUnknown_8458758:: @ 8458758 .align 2 gUnknown_8458778:: .string "Oh, I see!\n" - .string "This is educational!\p$" + .string "This is educational!\p" + .string "$" .align 2 gUnknown_845879C:: .string "Don't say anything funny anymore!\n" - .string "I'm sore from laughing!\p$" + .string "I'm sore from laughing!\p" + .string "$" .align 2 gUnknown_84587D8:: .string "Oh?\n" - .string "Something like that happened.\p$" + .string "Something like that happened.\p" + .string "$" .align 2 gUnknown_84587FC:: .string "Hmhm… What?\n" - .string "So is this what you're saying?\p$" + .string "So is this what you're saying?\p" + .string "$" .align 2 gUnknown_8458828:: .string "Is that right?\n" - .string "I didn't know that.\p$" + .string "I didn't know that.\p" + .string "$" .align 2 gUnknown_845884C:: .string "Ahaha!\n" - .string "What is that about?\p$" + .string "What is that about?\p" + .string "$" .align 2 gUnknown_8458868:: .string "Yes, that's exactly it!\n" - .string "That's what I meant.\p$" + .string "That's what I meant.\p" + .string "$" .align 2 gUnknown_8458898:: .string "In other words…\n" - .string "Yes! That's right!\p$" + .string "Yes! That's right!\p" + .string "$" .align 2 gUnknown_84588BC:: @ 84588BC @@ -790,21 +863,25 @@ gUnknown_84588BC:: @ 84588BC .align 2 gUnknown_84588DC:: .string "I'm just showing my TRAINER CARD\n" - .string "as my way of greeting.\p$" + .string "as my way of greeting.\p" + .string "$" .align 2 gUnknown_8458918:: - .string "I hope I get to know you better!\p$" + .string "I hope I get to know you better!\p" + .string "$" .align 2 gUnknown_845893C:: .string "We're showing each other our\n" - .string "TRAINER CARDS to get acquainted.\p$" + .string "TRAINER CARDS to get acquainted.\p" + .string "$" .align 2 gUnknown_845897C:: .string "Glad to meet you.\n" - .string "Please don't be a stranger!\p$" + .string "Please don't be a stranger!\p" + .string "$" .align 2 gUnknown_84589AC:: @ 84589AC @@ -816,21 +893,25 @@ gUnknown_84589AC:: @ 84589AC .align 2 gUnknown_84589BC:: .string "Yeahah!\n" - .string "I really wanted this POKéMON!\p$" + .string "I really wanted this POKéMON!\p" + .string "$" .align 2 gUnknown_84589E4:: .string "Finally, a trade got me that\n" - .string "POKéMON I'd wanted a long time.\p$" + .string "POKéMON I'd wanted a long time.\p" + .string "$" .align 2 gUnknown_8458A24:: - .string "I'm trading POKéMON right now.\p$" + .string "I'm trading POKéMON right now.\p" + .string "$" .align 2 gUnknown_8458A44:: .string "I finally got that POKéMON I\n" - .string "wanted in a trade!\p$" + .string "wanted in a trade!\p" + .string "$" .align 2 gUnknown_8458A78:: @ 8458A78 @@ -845,7 +926,8 @@ gUnknown_8458A78:: @ 8458A78 gUnknown_8458A98:: @ 8458A98 .string "{STR_VAR_1} checked the\n" - .string "TRADING BOARD.\p$" + .string "TRADING BOARD.\p" + .string "$" .align 2 gUnknown_8458AB8:: @ 8458AB8 @@ -873,33 +955,40 @@ gUnknown_8458B44:: @ 8458B44 .string "こうかんけいじばん の とうろくが\n" .string "かんりょう しました\p" .string "ごりよう ありがとう\n" - .string "ございました!\p$" + .string "ございました!\p" + .string "$" .align 2 .string "けいじばんに だれも ポケモンを\n" - .string "とうろく していません\p\n$" + .string "とうろく していません\p" + .string "\n$" .align 2 gUnknown_8458CD4:: @ 8458CD4 .string "Please choose the type of POKéMON\n" - .string "that you would like in the trade.\n$" + .string "that you would like in the trade.\n" + .string "$" .align 2 gUnknown_8458D1C:: @ 8458D1C .string "Which of your party POKéMON will\n" - .string "you offer in trade?\p$" + .string "you offer in trade?\p" + .string "$" .align 2 gUnknown_8458D54:: @ 8458D54 - .string "Registration has been canceled.\p$" + .string "Registration has been canceled.\p" + .string "$" .align 2 gUnknown_8458D78:: @ 8458D78 - .string "Registration has been completed.\p$" + .string "Registration has been completed.\p" + .string "$" .align 2 gUnknown_8458D9C:: @ 8458D9C - .string "The trade has been canceled.\p$" + .string "The trade has been canceled.\p" + .string "$" .align 2 gUnknown_8458DBC:: @ 8458DBC @@ -913,7 +1002,8 @@ gUnknown_8458DE8:: @ 8458DE8 .align 2 gUnknown_8458E10:: @ 8458E10 - .string "The registration has been canceled.\p$" + .string "The registration has been canceled.\p" + .string "$" .align 2 .string "こうかんを きぼうしているひとを\n" @@ -934,27 +1024,32 @@ gUnknown_8458E70:: @ 8458E70 .align 2 .string "あなたが こうかんにだす\n" - .string "ポケモンが とうろくされていません\p$" + .string "ポケモンが とうろくされていません\p" + .string "$" .align 2 gUnknown_8458ED0:: @ 8458ED0 .string "You don't have a {STR_VAR_2}-type\n" - .string "POKéMON that {STR_VAR_1} wants.\p$" + .string "POKéMON that {STR_VAR_1} wants.\p" + .string "$" .align 2 gUnknown_8458F04:: @ 8458F04 .string "You don't have an EGG that\n" - .string "{STR_VAR_1} wants.\p$" + .string "{STR_VAR_1} wants.\p" + .string "$" .align 2 gUnknown_8458F2C:: @ 8458F2C .string "{STR_VAR_1} can't make a trade for\n" - .string "your POKéMON right now.\p$" + .string "your POKéMON right now.\p" + .string "$" .align 2 gUnknown_8458F60:: @ 8458F60 .string "You can't make a trade for\n" - .string "{STR_VAR_1}'s POKéMON right now.\p$" + .string "{STR_VAR_1}'s POKéMON right now.\p" + .string "$" .align 2 gUnknown_8458F94:: @ 8458F94 @@ -962,7 +1057,8 @@ gUnknown_8458F94:: @ 8458F94 .word gUnknown_8458F60 gUnknown_8458F9C:: @ 8458F9C - .string "Your trade offer was rejected.\p$" + .string "Your trade offer was rejected.\p" + .string "$" gUnknown_8458FBC:: @ 8458FBC .string "EGG TRADE$" @@ -1039,7 +1135,8 @@ gUnknown_84591DC:: @ 84591DC .align 2 .string "ダブルバトルでは 2ひき いじょうの\n" - .string "ポケモンが ひつようです\p$" + .string "ポケモンが ひつようです\p" + .string "$" .align 2 gUnknown_8459238:: @ 8459238 @@ -1187,11 +1284,20 @@ gUnknown_84594B0:: @ 84594B0 .align 2 gUnknown_84594C4:: @ 84594C4 - .string "This is {SPECIAL_F7 0x00} {SPECIAL_F7 0x01}'s\nTRAINER CARD…\l{SPECIAL_F7 0x02}\pPOKéDEX: {SPECIAL_F7 0x03}\nTIME: {SPECIAL_F7 0x04}:{SPECIAL_F7 0x05}\p$" + .string "This is {SPECIAL_F7 0x00} {SPECIAL_F7 0x01}'s\n" + .string "TRAINER CARD…\l" + .string "{SPECIAL_F7 0x02}\p" + .string "POKéDEX: {SPECIAL_F7 0x03}\n" + .string "TIME: {SPECIAL_F7 0x04}:{SPECIAL_F7 0x05}\p" + .string "$" .align 2 gUnknown_8459504:: @ 8459504 - .string "BATTLES: {SPECIAL_F7 0x00} WINS {SPECIAL_F7 0x02} LOSSES\nTRADES: {SPECIAL_F7 0x03} TIMES\p“{SPECIAL_F7 0x04} {SPECIAL_F7 0x05}\n{SPECIAL_F7 0x06} {SPECIAL_F7 0x07}”\p$" + .string "BATTLES: {SPECIAL_F7 0x00} WINS {SPECIAL_F7 0x02} LOSSES\n" + .string "TRADES: {SPECIAL_F7 0x03} TIMES\p" + .string "“{SPECIAL_F7 0x04} {SPECIAL_F7 0x05}\n" + .string "{SPECIAL_F7 0x06} {SPECIAL_F7 0x07}”\p" + .string "$" .align 2 gUnknown_8459544:: @ 8459544 @@ -1208,9 +1314,8 @@ gUnknown_8459580:: @ 8459580 .align 2 gUnknown_8459588:: @ 8459588 - .string "Finished checking {SPECIAL_F7 0x01}'s\nTRAINER CARD.{PAUSE 60}$" - - @ why is this data here of all places? + .string "Finished checking {SPECIAL_F7 0x01}'s\n" + .string "TRAINER CARD.{PAUSE 60}$" .align 2 gUnknown_84595B0:: diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 1b4c9e365..f2e7bd325 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -47,7 +47,7 @@ void ObjectEventClearAnimIfSpecialAnimActive(struct ObjectEvent *); void SpawnObjectEventsInView(s16, s16); u8 sprite_new(u8, u8, s16, s16, u8, u8); u8 AddPseudoObjectEvent(u16, SpriteCallback, s16, s16, u8); -u8 TrySpawnObjectEvent(u8, u8, u8); +u8 TrySpawnObjectEvent(u8 localId, u8 mapNum, u8 mapGroup); u8 SpawnSpecialObjectEventParameterized(u8, u8, u8, s16, s16, u8); u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *); void sub_8093038(s16, s16, s16 *, s16 *); diff --git a/include/link_rfu.h b/include/link_rfu.h index 874f62511..985c260ef 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -303,7 +303,7 @@ bool32 sub_80F8F7C(bool32 a0); bool32 sub_80FA634(u16 a0, const u8 *a1); void sub_80FA670(u8 a0, u16 a1, const u8 *a2); u32 sub_80FA6FC(u16 a0, const u8 *a1); -void sub_80FAF58(u8 a0, u32 a1, u32 a2); +void SetHostRFUtgtGname(u8 a0, u32 a1, u32 a2); void sub_80FBB8C(u32 a0); void sub_80FBD4C(const u8 *ptr, u16 a1); void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *gname, u8 *uname); diff --git a/include/rfu_union_tool.h b/include/rfu_union_tool.h index e7895d25f..b8b5cd664 100644 --- a/include/rfu_union_tool.h +++ b/include/rfu_union_tool.h @@ -11,7 +11,7 @@ void sub_811BECC(struct UnkStruct_URoom *arg0); void sub_811BEDC(struct UnkStruct_URoom *arg0); bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3); void sub_811C028(u32 arg0, u32 arg1, struct UnkStruct_Main0 *arg2); -u8 sub_811B754(struct UnionObj * ptr); +u8 ZeroUnionObjWork(struct UnionObj * ptr); void sub_811BA78(void); #endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H diff --git a/include/union_room.h b/include/union_room.h index 4730dfb18..0ad5e920e 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -87,10 +87,10 @@ struct UnkStruct_Group struct UnionObj { - u8 field_0; - u8 field_1; - s8 field_2; - u8 field_3; + u8 state; + u8 gfxId; + s8 animState; + u8 schedAnim; }; struct UnkStruct_URoom @@ -121,17 +121,17 @@ struct UnkStruct_URoom /* 0x058 */ u8 field_58[4][11]; /* 0x084 */ u16 field_98; /* 0x086 */ u16 field_9A[3]; - /* 0x08C */ struct UnionObj field_A0[8]; - /* 0x0AC */ u8 field_C0[12][15]; + /* 0x08C */ struct UnionObj unionObjs[8]; + /* 0x0AC */ u8 trainerCardStrbufs[12][15]; /* 0x160 */ u8 field_174[48]; /* 0x190 */ u8 field_1A4[200]; }; union UnkUnion_Main { - struct UnkStruct_Leader *leader; - struct UnkStruct_Group *group; - struct UnkStruct_URoom *uRoom; + struct UnkStruct_Leader * leader; + struct UnkStruct_Group * group; + struct UnkStruct_URoom * uRoom; }; struct UnionRoomTrade diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 41fe72e20..17f604ee8 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -1917,7 +1917,7 @@ void ClearAndInitHostRFUtgtGname(void) InitHostRFUtgtGname(&gHostRFUtgtGnameBuffer, 0, 0, 0); } -void sub_80FAF58(u8 a0, u32 a1, u32 a2) +void SetHostRFUtgtGname(u8 a0, u32 a1, u32 a2) { InitHostRFUtgtGname(&gHostRFUtgtGnameBuffer, a0, a2, a1); } @@ -1944,7 +1944,7 @@ void sub_80FAFE0(u8 a0) void sub_80FB008(u8 a0, u32 a1, u32 a2) { if (a0) - sub_80FAF58(a0, a1, a2); + SetHostRFUtgtGname(a0, a1, a2); rfu_REQ_configGameData(0, 2, (void *)&gHostRFUtgtGnameBuffer, gHostRFUtgtUnameBuffer); } diff --git a/src/rfu_union_tool.c b/src/rfu_union_tool.c index 3a1b566e6..c3f6de9c1 100644 --- a/src/rfu_union_tool.c +++ b/src/rfu_union_tool.c @@ -12,52 +12,94 @@ #include "constants/event_object_movement.h" #include "constants/object_events.h" -EWRAM_DATA struct UnionObj * UnionObjWork = NULL; -EWRAM_DATA u32 gUnknown_203B088 = 0; - -u8 sub_811BA18(void); -u32 sub_811BBC8(u32 playerIdx, u32 arg1); -void sub_811C008(s32 arg0, s32 arg1, u8 arg2); +static EWRAM_DATA struct UnionObj * UnionObjWork = NULL; +static EWRAM_DATA u32 sUnionObjRefreshTimer = 0; + +static u8 StartUnionObjAnimTask(void); +static u32 sub_811BBC8(u32 playerIdx, u32 arg1); +static void sub_811C008(s32 arg0, s32 arg1, u8 arg2); + +static const u8 sUnionObjectEventGfxIds[][10] = { + [MALE] = { + OBJECT_EVENT_GFX_COOLTRAINER_M, + OBJECT_EVENT_GFX_BLACKBELT, + OBJECT_EVENT_GFX_CAMPER, + OBJECT_EVENT_GFX_YOUNGSTER, + OBJECT_EVENT_GFX_BOY, + OBJECT_EVENT_GFX_BUG_CATCHER, + OBJECT_EVENT_GFX_MAN, + OBJECT_EVENT_GFX_ROCKER + }, + [FEMALE] = { + OBJECT_EVENT_GFX_COOLTRAINER_F, + OBJECT_EVENT_GFX_CHANNELER, + OBJECT_EVENT_GFX_PICNICKER, + OBJECT_EVENT_GFX_LASS, + OBJECT_EVENT_GFX_WOMAN_1, + OBJECT_EVENT_GFX_BATTLE_GIRL, + OBJECT_EVENT_GFX_WOMAN_2, + OBJECT_EVENT_GFX_BEAUTY + } +}; -const u8 gUnknown_84570D8[][10] = { - {0x29, 0x36, 0x27, 0x12, 0x13, 0x14, 0x19, 0x1A}, - {0x2A, 0x3A, 0x28, 0x16, 0x17, 0x18, 0x1C, 0x1D} +static const s16 sUnionPartnerCoords[][2] = { + { 4, 6}, + {13, 8}, + {10, 6}, + { 1, 8}, + {13, 4}, + { 7, 4}, + { 1, 4}, + { 7, 8} }; -const s16 gUnknown_84570EC[][2] = { - {0x4, 0x6}, - {0xd, 0x8}, - {0xa, 0x6}, - {0x1, 0x8}, - {0xd, 0x4}, - {0x7, 0x4}, - {0x1, 0x4}, - {0x7, 0x8} +static const s8 sFacingDirectionOffsets[][2] = { + [DIR_NONE] = { 0, 0}, + [DIR_SOUTH] = { 1, 0}, + [DIR_NORTH] = { 0, -1}, + [DIR_WEST] = {-1, 0}, + [DIR_EAST] = { 0, 1} }; -const s8 gUnknown_845710C[][2] = { - { 0, 0}, - { 1, 0}, - { 0, -1}, - {-1, 0}, - { 0, 1} +static const u8 sOppositeFacingDirection[] = { + [DIR_NONE] = DIR_NONE, + [DIR_SOUTH] = DIR_NORTH, + [DIR_NORTH] = DIR_SOUTH, + [DIR_WEST] = DIR_EAST, + [DIR_EAST] = DIR_WEST }; -const u8 gUnknown_8457116[] = { - 0x00, 0x02, 0x01, 0x04, 0x03 +static const u8 gUnknown_845711B[] = { + 1, + 3, + 1, + 4, + 2 }; -const u8 gUnknown_845711B[] = { - 0x01, 0x03, 0x01, 0x04, 0x02 +static const u8 sUnionRoomLocalIds[] = { + 9, + 8, + 7, + 2, + 6, + 5, + 4, + 3 }; -const u8 gUnknown_8457120[] = { - 0x09, 0x08, 0x07, 0x02, 0x06, 0x05, 0x04, 0x03, - 0x63, 0x00, 0x64, 0x00, 0x65, 0x00, 0x66, 0x00, - 0x67, 0x00, 0x68, 0x00, 0x69, 0x00, 0x6A, 0x00 +static const u16 sUnref_8457128[] = { + 0x63, + 0x64, + 0x65, + 0x66, + 0x67, + 0x68, + 0x69, + 0x6A }; -bool32 is_walking_or_running(void) +static bool32 is_walking_or_running(void) { if (gPlayerAvatar.tileTransitionState == 2 || gPlayerAvatar.tileTransitionState == 0) { @@ -69,24 +111,24 @@ bool32 is_walking_or_running(void) } } -u8 sub_811B524(u32 a0, u32 a1) +static u8 GetUnionRoomPlayerGraphicsId(u32 gender, u32 id) { - return gUnknown_84570D8[a0][a1 % 8]; + return sUnionObjectEventGfxIds[gender][id % 8]; } -void sub_811B53C(u32 a0, u32 a1, s32 * a2, s32 * a3) +static void GetUnionRoomPlayerFacingCoords(u32 id, u32 dirn, s32 * xp, s32 * yp) { - *a2 = gUnknown_84570EC[a0][0] + gUnknown_845710C[a1][0] + 7; - *a3 = gUnknown_84570EC[a0][1] + gUnknown_845710C[a1][1] + 7; + *xp = sUnionPartnerCoords[id][0] + sFacingDirectionOffsets[dirn][0] + 7; + *yp = sUnionPartnerCoords[id][1] + sFacingDirectionOffsets[dirn][1] + 7; } -bool32 sub_811B58C(u32 a0, u32 a1, s32 a2, s32 a3) +static bool32 sub_811B58C(u32 id, u32 dirn, s32 x, s32 y) { - if (gUnknown_84570EC[a0][0] + gUnknown_845710C[a1][0] + 7 != a2) + if (sUnionPartnerCoords[id][0] + sFacingDirectionOffsets[dirn][0] + 7 != x) { return FALSE; } - else if (gUnknown_84570EC[a0][1] + gUnknown_845710C[a1][1] + 7 != a3) + else if (sUnionPartnerCoords[id][1] + sFacingDirectionOffsets[dirn][1] + 7 != y) { return FALSE; } @@ -96,41 +138,41 @@ bool32 sub_811B58C(u32 a0, u32 a1, s32 a2, s32 a3) } } -bool32 IsUnionRoomPlayerHidden(u32 player_idx) +static bool32 IsUnionRoomPlayerHidden(u32 player_idx) { return FlagGet(FLAG_HIDE_UNION_ROOM_PLAYER_1 + player_idx); } -void HideUnionRoomPlayer(u32 player_idx) +static void HideUnionRoomPlayer(u32 player_idx) { FlagSet(FLAG_HIDE_UNION_ROOM_PLAYER_1 + player_idx); } -void ShowUnionRoomPlayer(u32 player_idx) +static void ShowUnionRoomPlayer(u32 player_idx) { FlagClear(FLAG_HIDE_UNION_ROOM_PLAYER_1 + player_idx); } -void SetUnionRoomPlayerGfx(u32 playerIdx, u32 gfxId) +static void SetUnionRoomPlayerGfx(u32 playerIdx, u32 gfxId) { VarSet(VAR_OBJ_GFX_ID_0 + playerIdx, gfxId); } -void CreateUnionRoomPlayerObjectEvent(u32 playerIdx) +static void CreateUnionRoomPlayerObjectEvent(u32 playerIdx) { - TrySpawnObjectEvent(gUnknown_8457120[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); + TrySpawnObjectEvent(sUnionRoomLocalIds[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); } -void RemoveUnionRoomPlayerObjectEvent(u32 playerIdx) +static void RemoveUnionRoomPlayerObjectEvent(u32 playerIdx) { - RemoveObjectEventByLocalIdAndMap(gUnknown_8457120[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); + RemoveObjectEventByLocalIdAndMap(sUnionRoomLocalIds[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); } -bool32 SetUnionRoomPlayerEnterExitMovement(u32 playerIdx, const u8 * movement) +static bool32 SetUnionRoomPlayerEnterExitMovement(u32 playerIdx, const u8 * movement) { u8 objectId; struct ObjectEvent * object; - if (TryGetObjectEventIdByLocalIdAndMap(gUnknown_8457120[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId)) + if (TryGetObjectEventIdByLocalIdAndMap(sUnionRoomLocalIds[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId)) { return FALSE; } @@ -146,11 +188,11 @@ bool32 SetUnionRoomPlayerEnterExitMovement(u32 playerIdx, const u8 * movement) } return TRUE; } -bool32 sub_811B6E8(u32 playerIdx) +static bool32 TryReleaseUnionRoomPlayerObjectEvent(u32 playerIdx) { u8 objectId; struct ObjectEvent * object; - if (TryGetObjectEventIdByLocalIdAndMap(gUnknown_8457120[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId)) + if (TryGetObjectEventIdByLocalIdAndMap(sUnionRoomLocalIds[playerIdx], gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectId)) { return TRUE; } @@ -170,41 +212,41 @@ bool32 sub_811B6E8(u32 playerIdx) return TRUE; } -u8 sub_811B754(struct UnionObj * ptr) +u8 ZeroUnionObjWork(struct UnionObj * ptr) { s32 i; - gUnknown_203B088 = 0; + sUnionObjRefreshTimer = 0; UnionObjWork = ptr; AGB_ASSERT_EX(UnionObjWork != NULL, ABSPATH("rfu_union_tool.c"), 442) for (i = 0; i < 8; i++) { - ptr[i].field_0 = 0; - ptr[i].field_1 = 0; - ptr[i].field_2 = 0; - ptr[i].field_3 = 0; + ptr[i].state = 0; + ptr[i].gfxId = 0; + ptr[i].animState = 0; + ptr[i].schedAnim = 0; } - return sub_811BA18(); + return StartUnionObjAnimTask(); } -const u8 gUnknown_845718D[2] = { +static const u8 sMovement_UnionPlayerExit[2] = { MOVEMENT_ACTION_FLY_UP, MOVEMENT_ACTION_STEP_END }; -bool32 sub_811B7A8(s8 * a0, u32 playerIdx, struct UnionObj * ptr) +static bool32 AnimateUnionRoomPlayerDespawn(s8 * a0, u32 playerIdx, struct UnionObj * ptr) { switch (*a0) { case 0: - if (SetUnionRoomPlayerEnterExitMovement(playerIdx, gUnknown_845718D) == TRUE) + if (SetUnionRoomPlayerEnterExitMovement(playerIdx, sMovement_UnionPlayerExit) == TRUE) { HideUnionRoomPlayer(playerIdx); (*a0)++; } break; case 1: - if (sub_811B6E8(playerIdx)) + if (TryReleaseUnionRoomPlayerObjectEvent(playerIdx)) { RemoveUnionRoomPlayerObjectEvent(playerIdx); HideUnionRoomPlayer(playerIdx); @@ -216,12 +258,12 @@ bool32 sub_811B7A8(s8 * a0, u32 playerIdx, struct UnionObj * ptr) return FALSE; } -const u8 gUnknown_845718F[2] = { +static const u8 sMovement_UnionPlayerEnter[2] = { MOVEMENT_ACTION_FLY_DOWN, MOVEMENT_ACTION_STEP_END }; -bool32 sub_811B804(s8 * a0, u32 playerIdx, struct UnionObj * ptr) +static bool32 AnimateUnionRoomPlayerSpawn(s8 * a0, u32 playerIdx, struct UnionObj * ptr) { s16 x, y; @@ -233,28 +275,28 @@ bool32 sub_811B804(s8 * a0, u32 playerIdx, struct UnionObj * ptr) break; } PlayerGetDestCoords(&x, &y); - if (sub_811B58C(playerIdx, 0, x, y) == 1) + if (sub_811B58C(playerIdx, 0, x, y) == TRUE) { break; } player_get_pos_including_state_based_drift(&x, &y); - if (sub_811B58C(playerIdx, 0, x, y) == 1) + if (sub_811B58C(playerIdx, 0, x, y) == TRUE) { break; } - SetUnionRoomPlayerGfx(playerIdx, ptr->field_1); + SetUnionRoomPlayerGfx(playerIdx, ptr->gfxId); CreateUnionRoomPlayerObjectEvent(playerIdx); ShowUnionRoomPlayer(playerIdx); (*a0)++; // fallthrough case 3: // incorrect? - if (SetUnionRoomPlayerEnterExitMovement(playerIdx, gUnknown_845718F) == 1) + if (SetUnionRoomPlayerEnterExitMovement(playerIdx, sMovement_UnionPlayerEnter) == 1) { (*a0)++; } break; case 2: - if (sub_811B6E8(playerIdx)) + if (TryReleaseUnionRoomPlayerObjectEvent(playerIdx)) { *a0 = 0; return TRUE; @@ -264,13 +306,13 @@ bool32 sub_811B804(s8 * a0, u32 playerIdx, struct UnionObj * ptr) return FALSE; } -bool32 sub_811B8BC(u32 playerIdx, u32 a1, u32 a2) +static bool32 sub_811B8BC(u32 playerIdx, u32 a1, u32 a2) { struct UnionObj * ptr = &UnionObjWork[playerIdx]; AGB_ASSERT_EX(UnionObjWork != NULL, ABSPATH("rfu_union_tool.c"), 561) - ptr->field_3 = 1; - ptr->field_1 = sub_811B524(a1, a2); - if (ptr->field_0 == 0) + ptr->schedAnim = 1; + ptr->gfxId = GetUnionRoomPlayerGraphicsId(a1, a2); + if (ptr->state == 0) { return TRUE; } @@ -280,12 +322,12 @@ bool32 sub_811B8BC(u32 playerIdx, u32 a1, u32 a2) } } -bool32 sub_811B90C(u32 playerIdx) +static bool32 sub_811B90C(u32 playerIdx) { struct UnionObj * ptr = &UnionObjWork[playerIdx]; AGB_ASSERT_EX(UnionObjWork != NULL, ABSPATH("rfu_union_tool.c"), 577) - ptr->field_3 = 2; - if (ptr->field_0 == 1) + ptr->schedAnim = 2; + if (ptr->state == 1) { return TRUE; } @@ -295,15 +337,15 @@ bool32 sub_811B90C(u32 playerIdx) } } -void sub_811B94C(u32 playerIdx, struct UnionObj * ptr) +static void AnimateUnionObj(u32 playerIdx, struct UnionObj * ptr) { - switch (ptr->field_0) + switch (ptr->state) { case 0: - if (ptr->field_3 == 1) + if (ptr->schedAnim == 1) { - ptr->field_0 = 2; - ptr->field_2 = 0; + ptr->state = 2; + ptr->animState = 0; } else { @@ -311,23 +353,23 @@ void sub_811B94C(u32 playerIdx, struct UnionObj * ptr) } // fallthrough case 2: - if (!sub_811BBC8(playerIdx, 0) && ptr->field_3 == 2) + if (!sub_811BBC8(playerIdx, 0) && ptr->schedAnim == 2) { - ptr->field_0 = 0; - ptr->field_2 = 0; + ptr->state = 0; + ptr->animState = 0; RemoveUnionRoomPlayerObjectEvent(playerIdx); HideUnionRoomPlayer(playerIdx); } - else if (sub_811B804(&ptr->field_2, playerIdx, ptr) == 1) + else if (AnimateUnionRoomPlayerSpawn(&ptr->animState, playerIdx, ptr) == TRUE) { - ptr->field_0 = 1; + ptr->state = 1; } break; case 1: - if (ptr->field_3 == 2) + if (ptr->schedAnim == 2) { - ptr->field_0 = 3; - ptr->field_2 = 0; + ptr->state = 3; + ptr->animState = 0; } else { @@ -335,41 +377,41 @@ void sub_811B94C(u32 playerIdx, struct UnionObj * ptr) } // fallthrough case 3: - if (sub_811B7A8(&ptr->field_2, playerIdx, ptr) == 1) + if (AnimateUnionRoomPlayerDespawn(&ptr->animState, playerIdx, ptr) == TRUE) { - ptr->field_0 = 0; + ptr->state = 0; } break; } - ptr->field_3 = 0; + ptr->schedAnim = 0; } -void sub_811B9D8(u8 taskId) +static void Task_AnimateUnionObjs(u8 taskId) { s32 i; AGB_ASSERT_EX(UnionObjWork != NULL, ABSPATH("rfu_union_tool.c"), 643) for (i = 0; i < 8; i++) { - sub_811B94C(i, &UnionObjWork[i]); + AnimateUnionObj(i, &UnionObjWork[i]); } } -u8 sub_811BA18(void) +static u8 StartUnionObjAnimTask(void) { - if (FuncIsActiveTask(sub_811B9D8) == TRUE) + if (FuncIsActiveTask(Task_AnimateUnionObjs) == TRUE) { AGB_ASSERT_EX(0, ABSPATH("rfu_union_tool.c"), 655) return NUM_TASKS; } else { - return CreateTask(sub_811B9D8, 5); + return CreateTask(Task_AnimateUnionObjs, 5); } } -void sub_811BA5C(void) +static void sub_811BA5C(void) { - u8 taskId = FindTaskIdByFunc(sub_811B9D8); + u8 taskId = FindTaskIdByFunc(Task_AnimateUnionObjs); if (taskId < NUM_TASKS) { DestroyTask(taskId); @@ -398,7 +440,7 @@ void sub_811BAAC(u8 * sp8, s32 r9) for (r7 = 0; r7 < 5; r7++) { s32 r5 = 5 * r9 + r7; - sp8[r5] = sprite_new(OBJECT_EVENT_GFX_MAN, r5 - 0x38, gUnknown_84570EC[r9][0] + gUnknown_845710C[r7][0], gUnknown_84570EC[r9][1] + gUnknown_845710C[r7][1], 3, 1); + sp8[r5] = sprite_new(OBJECT_EVENT_GFX_MAN, r5 - 0x38, sUnionPartnerCoords[r9][0] + sFacingDirectionOffsets[r7][0], sUnionPartnerCoords[r9][1] + sFacingDirectionOffsets[r7][1], 3, 1); sub_8069124(r5 - 0x38, TRUE); } } @@ -419,13 +461,13 @@ void sub_811BB68(void) { for (j = 0; j < 5; j++) { - sub_811B53C(i, j, &x, &y); + GetUnionRoomPlayerFacingCoords(i, j, &x, &y); sub_8059024(x, y, 0); } } } -u8 sub_811BBA0(u32 r1, u32 unused, struct GFtgtGname * r2) +static u8 sub_811BBA0(u32 r1, u32 unused, struct GFtgtGname * r2) { if (r1 != 0) { @@ -441,12 +483,12 @@ u8 sub_811BBA0(u32 r1, u32 unused, struct GFtgtGname * r2) } } -u32 sub_811BBC8(u32 a0, u32 a1) +static u32 sub_811BBC8(u32 a0, u32 a1) { return sub_806916C(5 * a0 + a1 - 0x38); } -void sub_811BBE0(u32 r5, u32 r6, u8 r8, struct GFtgtGname * r9) +static void sub_811BBE0(u32 r5, u32 r6, u8 r8, struct GFtgtGname * r9) { s32 x, y; s32 r7 = 5 * r5 + r6; @@ -457,19 +499,19 @@ void sub_811BBE0(u32 r5, u32 r6, u8 r8, struct GFtgtGname * r9) } sub_8069094(r7 - 0x38, r8); sub_811C008(r6, r5, sub_811BBA0(r6, r5, r9)); - sub_811B53C(r5, r6, &x, &y); + GetUnionRoomPlayerFacingCoords(r5, r6, &x, &y); sub_8059024(x, y, 1); } -void sub_811BC68(u32 a0, u32 a1) +static void sub_811BC68(u32 a0, u32 a1) { s32 x, y; sub_80691A4(5 * a0 + a1 - 0x38, 2); - sub_811B53C(a0, a1, &x, &y); + GetUnionRoomPlayerFacingCoords(a0, a1, &x, &y); sub_8059024(x, y, 0); } -void sub_811BCA0(u32 r7, struct GFtgtGname * r8) +static void sub_811BCA0(u32 r7, struct GFtgtGname * r8) { s16 x, y, x2, y2; s32 i; @@ -478,11 +520,11 @@ void sub_811BCA0(u32 r7, struct GFtgtGname * r8) player_get_pos_including_state_based_drift(&x2, &y2); if (sub_806916C(5 * r7 - 0x38) == 1) { - if (sub_811B58C(r7, 0, x, y) == 1 || sub_811B58C(r7, 0, x2, y2) == 1) + if (sub_811B58C(r7, 0, x, y) == TRUE || sub_811B58C(r7, 0, x2, y2) == TRUE) { return; } - sub_811BBE0(r7, 0, sub_811B524(r8->playerGender, r8->unk_00.playerTrainerId[0]), r8); + sub_811BBE0(r7, 0, GetUnionRoomPlayerGraphicsId(r8->playerGender, r8->unk_00.playerTrainerId[0]), r8); } for (i = 1; i < 5; i++) { @@ -490,14 +532,14 @@ void sub_811BCA0(u32 r7, struct GFtgtGname * r8) { sub_811BC68(r7, i); } - else if (sub_811B58C(r7, i, x, y) == 0 && sub_811B58C(r7, i, x2, y2) == 0) + else if (sub_811B58C(r7, i, x, y) == FALSE && sub_811B58C(r7, i, x2, y2) == FALSE) { - sub_811BBE0(r7, i, sub_811B524((r8->unk_04[i - 1] >> 3) & 1, r8->unk_04[i - 1] & 7), r8); + sub_811BBE0(r7, i, GetUnionRoomPlayerGraphicsId((r8->unk_04[i - 1] >> 3) & 1, r8->unk_04[i - 1] & 7), r8); } } } -void sub_811BDA8(u32 r5, struct GFtgtGname * r4) +static void sub_811BDA8(u32 r5, struct GFtgtGname * r4) { u32 i; switch (r4->unk_0a_0) @@ -525,7 +567,7 @@ void sub_811BDA8(u32 r5, struct GFtgtGname * r4) } } -void sub_811BE6C(u32 r5, struct GFtgtGname * unused) +static void sub_811BE6C(u32 r5, struct GFtgtGname * unused) { s32 i; sub_811B90C(r5); @@ -535,11 +577,11 @@ void sub_811BE6C(u32 r5, struct GFtgtGname * unused) } } -void sub_811BE8C(struct UnkStruct_URoom *r0) +static void UpdateUnionRoomPlayerSprites(struct UnkStruct_URoom *r0) { s32 i; struct UnkStruct_x20 * r4; - gUnknown_203B088 = 0; + sUnionObjRefreshTimer = 0; for (i = 0, r4 = r0->field_0->arr; i < 8; i++) { if (r4[i].field_1A_0 == 1) @@ -555,14 +597,14 @@ void sub_811BE8C(struct UnkStruct_URoom *r0) void sub_811BECC(struct UnkStruct_URoom *unused) { - gUnknown_203B088 = 300; + sUnionObjRefreshTimer = 300; } void sub_811BEDC(struct UnkStruct_URoom *r2) { - if (++gUnknown_203B088 > 300) + if (++sUnionObjRefreshTimer > 300) { - sub_811BE8C(r2); + UpdateUnionRoomPlayerSprites(r2); } } @@ -581,11 +623,11 @@ bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3) for (j = 0; j < 5; j++) { s32 r3 = 5 * i + j; - if (x != gUnknown_84570EC[i][0] + gUnknown_845710C[j][0] + 7) + if (x != sUnionPartnerCoords[i][0] + sFacingDirectionOffsets[j][0] + 7) { continue; } - if (y != gUnknown_84570EC[i][1] + gUnknown_845710C[j][1] + 7) + if (y != sUnionPartnerCoords[i][1] + sFacingDirectionOffsets[j][1] + 7) { continue; } @@ -601,7 +643,7 @@ bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3) { continue; } - sub_811C008(j, i, gUnknown_8457116[GetPlayerFacingDirection()]); + sub_811C008(j, i, sOppositeFacingDirection[GetPlayerFacingDirection()]); *arg1 = j; *arg2 = i; return TRUE; @@ -610,7 +652,7 @@ bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3) return FALSE; } -void sub_811C008(s32 arg0, s32 arg1, u8 arg2) +static void sub_811C008(s32 arg0, s32 arg1, u8 arg2) { sub_8069058(5 * arg1 - 0x38 + arg0, arg2); } diff --git a/src/union_room.c b/src/union_room.c index 0441c8276..46797f2fa 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -649,7 +649,7 @@ static void sub_8115A68(u8 taskId) case 0: gUnknown_203B058 = gUnknown_8456CD8[gSpecialVar_0x8004]; gUnknown_203B059 = gUnknown_8456CD8[gSpecialVar_0x8004] >> 8; - sub_80FAF58(gUnknown_203B058, 0, 0); + SetHostRFUtgtGname(gUnknown_203B058, 0, 0); sub_800B1F4(); OpenLink(); sub_80FBB8C(gUnknown_203B059 & 0xF); @@ -1180,7 +1180,7 @@ static void sub_8116738(u8 taskId) switch (data->state) { case 0: - sub_80FAF58(gUnknown_84570C8[gSpecialVar_0x8004], 0, 0); + SetHostRFUtgtGname(gUnknown_84570C8[gSpecialVar_0x8004], 0, 0); gUnknown_203B058 = gUnknown_84570C8[gSpecialVar_0x8004]; sub_800B1F4(); OpenLink(); @@ -1468,7 +1468,7 @@ static void sub_8116E1C(u8 taskId) switch (data->state) { case 0: - sub_80FAF58(0, 0, 0); + SetHostRFUtgtGname(0, 0, 0); sub_800B1F4(); OpenLink(); sub_80FBBD8(); @@ -1850,7 +1850,7 @@ static void sub_81175BC(u8 taskId) else { sub_80F8D14(); - sub_80FAF58(69, 0, 1); + SetHostRFUtgtGname(69, 0, 1); } sub_8128420(); break; @@ -1950,7 +1950,7 @@ static void sub_8117A0C(u8 taskId) case 0: gUnknown_203B058 = data->field_18; gUnknown_203B059 = 2; - sub_80FAF58(data->field_18, 0, 0); + SetHostRFUtgtGname(data->field_18, 0, 0); sub_80FAF74(FALSE, FALSE); sub_800B1F4(); OpenLink(); @@ -2156,7 +2156,7 @@ static void sub_8117F20(u8 taskId) switch (data->state) { case 0: - sub_80FAF58(data->field_12 + 21, 0, 0); + SetHostRFUtgtGname(data->field_12 + 21, 0, 0); sub_800B1F4(); OpenLink(); sub_80FBBD8(); @@ -2322,7 +2322,7 @@ static void sub_81182DC(u8 taskId) switch (data->state) { case 0: - sub_80FAF58(0, 0, 0); + SetHostRFUtgtGname(0, 0, 0); sub_800B1F4(); OpenLink(); sub_80FBBD8(); @@ -2552,7 +2552,7 @@ static void sub_81186E0(u8 taskId) sub_811A5E4(data->field_0->arr, 8); gUnknown_203B058 = 0x40; data->field_20 = sub_8119E84(data->field_C, data->field_4, 9); - sub_811B754(data->field_A0); + ZeroUnionObjWork(data->unionObjs); sub_811BB68(); data->state = 1; break; @@ -2562,7 +2562,7 @@ static void sub_81186E0(u8 taskId) data->state = 2; break; case 2: - sub_80FAF58(0x40, 0, 0); + SetHostRFUtgtGname(0x40, 0, 0); sub_80FAFA0(sUnionRoomTrade.type, sUnionRoomTrade.playerSpecies, sUnionRoomTrade.playerLevel); sub_800B1F4(); OpenLink(); @@ -3359,7 +3359,7 @@ static void sub_81199FC(u8 taskId) structPtr->state = 1; break; case 1: - sub_80FAF58(0xC, 0, 0); + SetHostRFUtgtGname(0xC, 0, 0); sub_800B1F4(); OpenLink(); sub_80FBC00(); @@ -4547,21 +4547,21 @@ static void sub_811B31C(u8 *unused, struct UnkStruct_URoom * arg1, bool8 arg2) DynamicPlaceholderTextUtil_Reset(); - StringCopy(arg1->field_C0[0], gTrainerClassNames[sub_80447F0()]); - DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, arg1->field_C0[0]); + StringCopy(arg1->trainerCardStrbufs[0], gTrainerClassNames[sub_80447F0()]); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, arg1->trainerCardStrbufs[0]); DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, trainerCard->playerName); StringCopy(arg1->field_174, gUnknown_84594B0[trainerCard->stars]); DynamicPlaceholderTextUtil_SetPlaceholderPtr(2, arg1->field_174); - ConvertIntToDecimalStringN(arg1->field_C0[2], trainerCard->caughtMonsCount, STR_CONV_MODE_LEFT_ALIGN, 3); - DynamicPlaceholderTextUtil_SetPlaceholderPtr(3, arg1->field_C0[2]); + ConvertIntToDecimalStringN(arg1->trainerCardStrbufs[2], trainerCard->caughtMonsCount, STR_CONV_MODE_LEFT_ALIGN, 3); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(3, arg1->trainerCardStrbufs[2]); - ConvertIntToDecimalStringN(arg1->field_C0[3], trainerCard->playTimeHours, STR_CONV_MODE_LEFT_ALIGN, 3); - ConvertIntToDecimalStringN(arg1->field_C0[4], trainerCard->playTimeMinutes, STR_CONV_MODE_LEADING_ZEROS, 2); - DynamicPlaceholderTextUtil_SetPlaceholderPtr(4, arg1->field_C0[3]); - DynamicPlaceholderTextUtil_SetPlaceholderPtr(5, arg1->field_C0[4]); + ConvertIntToDecimalStringN(arg1->trainerCardStrbufs[3], trainerCard->playTimeHours, STR_CONV_MODE_LEFT_ALIGN, 3); + ConvertIntToDecimalStringN(arg1->trainerCardStrbufs[4], trainerCard->playTimeMinutes, STR_CONV_MODE_LEADING_ZEROS, 2); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(4, arg1->trainerCardStrbufs[3]); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(5, arg1->trainerCardStrbufs[4]); DynamicPlaceholderTextUtil_ExpandPlaceholders(arg1->field_1A4, gUnknown_84594C4); StringCopy(gStringVar4, arg1->field_1A4); @@ -4571,24 +4571,24 @@ static void sub_811B31C(u8 *unused, struct UnkStruct_URoom * arg1, bool8 arg2) { n = 9999; } - ConvertIntToDecimalStringN(arg1->field_C0[0], n, STR_CONV_MODE_LEFT_ALIGN, 4); - DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, arg1->field_C0[0]); + ConvertIntToDecimalStringN(arg1->trainerCardStrbufs[0], n, STR_CONV_MODE_LEFT_ALIGN, 4); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, arg1->trainerCardStrbufs[0]); n = trainerCard->linkBattleLosses; if (n > 9999) { n = 9999; } - ConvertIntToDecimalStringN(arg1->field_C0[1], n, STR_CONV_MODE_LEFT_ALIGN, 4); - DynamicPlaceholderTextUtil_SetPlaceholderPtr(2, arg1->field_C0[1]); + ConvertIntToDecimalStringN(arg1->trainerCardStrbufs[1], n, STR_CONV_MODE_LEFT_ALIGN, 4); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(2, arg1->trainerCardStrbufs[1]); - ConvertIntToDecimalStringN(arg1->field_C0[2], trainerCard->pokemonTrades, STR_CONV_MODE_LEFT_ALIGN, 5); - DynamicPlaceholderTextUtil_SetPlaceholderPtr(3, arg1->field_C0[2]); + ConvertIntToDecimalStringN(arg1->trainerCardStrbufs[2], trainerCard->pokemonTrades, STR_CONV_MODE_LEFT_ALIGN, 5); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(3, arg1->trainerCardStrbufs[2]); for (i = 0; i < 4; i++) { - CopyEasyChatWord(arg1->field_C0[i + 3], trainerCard->var_28[i]); - DynamicPlaceholderTextUtil_SetPlaceholderPtr(i + 4, arg1->field_C0[i + 3]); + CopyEasyChatWord(arg1->trainerCardStrbufs[i + 3], trainerCard->var_28[i]); + DynamicPlaceholderTextUtil_SetPlaceholderPtr(i + 4, arg1->trainerCardStrbufs[i + 3]); } DynamicPlaceholderTextUtil_ExpandPlaceholders(arg1->field_1A4, gUnknown_8459504); |