resolve conflict

This commit is contained in:
ProjectRevoTPP
2019-12-04 01:57:27 -05:00
27 changed files with 1519 additions and 3748 deletions
+1 -1
View File
@@ -5484,7 +5484,7 @@ sub_810A9D4: @ 810A9D4
mov r2, r8 mov r2, r8
ldrh r1, [r2, 0x10] ldrh r1, [r2, 0x10]
movs r2, 0x2 movs r2, 0x2
bl sub_809C09C bl RecordItemPurchase
mov r3, r8 mov r3, r8
ldrb r0, [r3] ldrb r0, [r3]
ldr r4, _0810AAE4 @ =gUnknown_203ACFC ldr r4, _0810AAE4 @ =gUnknown_203ACFC
-3563
View File
File diff suppressed because it is too large Load Diff
+8 -8
View File
@@ -14062,17 +14062,17 @@ gBerryPouchSpritePalette:: @ 8E85C1C
gBerryPouchBg1Tilemap:: @ 8E85C44 gBerryPouchBg1Tilemap:: @ 8E85C44
.incbin "graphics/berry_pouch/unk_8E85C44.bin.lz" .incbin "graphics/berry_pouch/unk_8E85C44.bin.lz"
gUnknown_8E85DC8:: @ 8E85DC8 gBuyMenuFrame_Gfx:: @ 8E85DC8
.incbin "graphics/interface/shop.4bpp.lz" @ shop tiles .incbin "graphics/shop_menu/shop_menu.4bpp.lz"
gUnknown_8E85EFC:: @ 8E85EFC gBuyMenuFrame_Tilemap:: @ 8E85EFC
.incbin "graphics/interface/shop1.bin.lz" @ shop tilemap regular .incbin "graphics/shop_menu/shop_tilemap.bin"
gUnknown_8E86038:: @ 8E86038 gBuyMenuFrame_TmHmTilemap:: @ 8E86038
.incbin "graphics/interface/shop2.bin.lz" @ shop tilemap TMs .incbin "graphics/shop_menu/shop_tm_hm_tilemap.bin"
gUnknown_8E86170:: @ 8E86170 gBuyMenuFrame_Pal:: @ 8E86170
.incbin "graphics/interface/shop.gbapal.lz" @ shop tiles palette .incbin "graphics/shop_menu/shop_menu.gbapal.lz"
gUnknown_8E861A8:: @ 8E861A8 gUnknown_8E861A8:: @ 8E861A8
.incbin "graphics/unknown/unknown_E861A8.bin.lz" @ hmm what is this. .incbin "graphics/unknown/unknown_E861A8.bin.lz" @ hmm what is this.
-92
View File
@@ -1,92 +0,0 @@
#include "constants/maps.h"
#include "constants/species.h"
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2
gUnknown_83DF09C:: @ 83DF09C
.4byte gUnknown_8416738, sub_809AC5C
.4byte gUnknown_841673C, sub_809AC98
.4byte gUnknown_8416741, sub_809ACF8
gUnknown_83DF0B4:: @ 83DF0B4
.4byte sub_809BEA4
.4byte sub_809BF98
gUnknown_83DF0BC:: @ 83DF0BC
.byte 0, 2, 1, 12, 6, 15
.2byte 0x0008
@ {
@ .bg = 0,
@ .tilemapLeft = 2,
@ .tilemapTop = 1,
@ .width = 12,
@ .height = 6,
@ .paletteNum = 15,
@ .baseBlock = 0x0008
@ }
gUnknown_83DF0C4:: @ 83DF0C4
.4byte 0x000001f8
@ {
@ .bg = 0,
@ .charBaseIndex = 2,
@ .mapBaseIndex = 31,
@ .screenSize = 0,
@ .paletteMode = 0,
@ .priority = 0,
@ .baseTile = 0x0000
@ }
.4byte 0x000011e1
@ {
@ .bg = 1,
@ .charBaseIndex = 0,
@ .mapBaseIndex = 30,
@ .screenSize = 0,
@ .paletteMode = 0,
@ .priority = 1,
@ .baseTile = 0x0000
@ }
.4byte 0x000021d2
@ {
@ .bg = 2,
@ .charBaseIndex = 0,
@ .mapBaseIndex = 29,
@ .screenSize = 0,
@ .paletteMode = 0,
@ .priority = 2,
@ .baseTile = 0x0000
@ }
.4byte 0x000031c3
@ {
@ .bg = 3,
@ .charBaseIndex = 0,
@ .mapBaseIndex = 28,
@ .screenSize = 0,
@ .paletteMode = 0,
@ .priority = 3,
@ .baseTile = 0x0000
@ }
gUnknown_83DF0D4:: @ 83DF0D4
.2byte 0x0308, 0x030a, 0x02d0
gUnknown_83DF0DA:: @ 83DF0DA
.2byte 0x0309, 0x030b, 0x02d1
gUnknown_83DF0E0:: @ 83DF0E0
.2byte 0x0310, 0x0312, 0x02d8
gUnknown_83DF0E6:: @ 83DF0E6
.2byte 0x0311, 0x0313, 0x02d9
gUnknown_83DF0EC:: @ 83DF0EC
.2byte 0x02e3, 0x0316, 0x0314
gUnknown_83DF0F2:: @ 83DF0F2
.2byte 0x02e4, 0x0317, 0x0315
gUnknown_83DF0F8:: @ 83DF0F8
.2byte 0x02eb, 0x031e, 0x031c
+12 -12
View File
@@ -475,7 +475,7 @@ gUnknown_8416210:: @ 8416210
gText_ThreeHyphens:: @ 8416213 gText_ThreeHyphens:: @ 8416213
.string "---$" .string "---$"
gUnknown_8416217:: @ 8416217 gText_SevenHyphens:: @ 8416217
.string "-------$" .string "-------$"
gText_MaleSymbol:: @ 841621F gText_MaleSymbol:: @ 841621F
@@ -720,26 +720,26 @@ gText_TheBerryPouchWillBePutAway:: @ 8416716
.string "The BERRY POUCH will be\n" .string "The BERRY POUCH will be\n"
.string "put away.$" .string "put away.$"
gUnknown_8416738:: @ 0x8416738 gText_ShopBuy:: @ 0x8416738
.string "BUY$" .string "BUY$"
gUnknown_841673C:: @ 0x841673C gText_ShopSell:: @ 0x841673C
.string "SELL$" .string "SELL$"
gUnknown_8416741:: @ 0x8416741 gText_ShopQuit:: @ 0x8416741
.string "SEE YA!$" .string "SEE YA!$"
gUnknown_8416749:: @ 8416749 gText_InBagVar1:: @ 8416749
.string "IN BAG:{SMALL} {STR_VAR_1}$" .string "IN BAG:{SMALL} {STR_VAR_1}$"
gUnknown_8416757:: @ 8416757 gText_QuitShopping:: @ 8416757
.string "Quit shopping.$" .string "Quit shopping.$"
gUnknown_8416766:: @ 8416766 gText_Var1CertainlyHowMany:: @ 8416766
.string "{STR_VAR_1}? Certainly.\n" .string "{STR_VAR_1}? Certainly.\n"
.string "How many would you like?$" .string "How many would you like?$"
gUnknown_841678E:: @ 841678E gText_Var1AndYouWantedVar2:: @ 841678E
.string "{STR_VAR_1}, and you want {STR_VAR_2}.\n" .string "{STR_VAR_1}, and you want {STR_VAR_2}.\n"
.string "That will be ¥{STR_VAR_3}. Okay?$" .string "That will be ¥{STR_VAR_3}. Okay?$"
@@ -751,7 +751,7 @@ gUnknown_84167D0:: @ 0x84167D0
.string "{STR_VAR_1} !\n" .string "{STR_VAR_1} !\n"
.string "{STR_VAR_2}¥ ?$" .string "{STR_VAR_2}¥ ?$"
gUnknown_84167E7:: @ 84167E7 gText_HereYouGoThankYou:: @ 84167E7
.string "Here you are!\n" .string "Here you are!\n"
.string "Thank you!$" .string "Thank you!$"
@@ -763,10 +763,10 @@ gUnknown_8416822:: @ 0x8416822
.string " !\n" .string " !\n"
.string " !$" .string " !$"
gUnknown_8416842:: @ 8416842 gText_YouDontHaveMoney:: @ 8416842
.string "You don't have enough money.{PAUSE_UNTIL_PRESS}$" .string "You don't have enough money.{PAUSE_UNTIL_PRESS}$"
gUnknown_8416861:: @ 8416861 gText_NoMoreRoomForThis:: @ 8416861
.string "You have no more room for this\n" .string "You have no more room for this\n"
.string "item.{PAUSE_UNTIL_PRESS}$" .string "item.{PAUSE_UNTIL_PRESS}$"
@@ -774,7 +774,7 @@ gUnknown_8416888:: @ 0x8416888
.string "{STR_VAR_1}\n" .string "{STR_VAR_1}\n"
.string " {PAUSE_UNTIL_PRESS}$" .string " {PAUSE_UNTIL_PRESS}$"
gUnknown_841689E:: @ 841689E gText_CanIHelpWithAnythingElse:: @ 841689E
.string "Is there anything else I can do?$" .string "Is there anything else I can do?$"
gUnknown_84168BF:: @ 0x84168BF gUnknown_84168BF:: @ 0x84168BF
Binary file not shown.

Before

Width:  |  Height:  |  Size: 324 B

Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 261 B

Binary file not shown.
Binary file not shown.
+1
View File
@@ -16,6 +16,7 @@ extern const struct MapData Route1_Layout;
u32 MapGridGetMetatileIdAt(int, int); u32 MapGridGetMetatileIdAt(int, int);
u32 MapGridGetMetatileBehaviorAt(int, int); u32 MapGridGetMetatileBehaviorAt(int, int);
u8 MapGridGetMetatileLayerTypeAt(s16 x, s16 y);
void MapGridSetMetatileIdAt(int, int, u16); void MapGridSetMetatileIdAt(int, int, u16);
void MapGridSetMetatileEntryAt(int, int, u16); void MapGridSetMetatileEntryAt(int, int, u16);
void GetCameraCoords(u16*, u16*); void GetCameraCoords(u16*, u16*);
+6
View File
@@ -4249,6 +4249,12 @@ extern const u16 gUnknown_8E97DDC[];
extern const u32 gUnknown_8E97DFC[]; extern const u32 gUnknown_8E97DFC[];
extern const u32 gUnknown_8E97EC4[]; extern const u32 gUnknown_8E97EC4[];
// shop menu
extern const u32 gBuyMenuFrame_Gfx[];
extern const u32 gBuyMenuFrame_Tilemap[];
extern const u32 gBuyMenuFrame_TmHmTilemap[];
extern const u32 gBuyMenuFrame_Pal[];
// battle_message // battle_message
extern const u16 gUnknown_8D2FBB4[]; extern const u16 gUnknown_8D2FBB4[];
+1
View File
@@ -68,6 +68,7 @@ bool8 AddBagItem(u16 itemId, u16 amount);
void SortPocketAndPlaceHMsFirst(struct BagPocket * pocket); void SortPocketAndPlaceHMsFirst(struct BagPocket * pocket);
u16 BagGetItemIdByPocketPosition(u8 pocketId, u16 itemId); u16 BagGetItemIdByPocketPosition(u8 pocketId, u16 itemId);
u16 BagGetQuantityByPocketPosition(u8 pocketId, u16 itemId); u16 BagGetQuantityByPocketPosition(u8 pocketId, u16 itemId);
u16 BagGetQuantityByItemId(u16 item);
bool8 itemid_is_unique(u16 itemId); bool8 itemid_is_unique(u16 itemId);
void BagPocketCompaction(struct ItemSlot * slots, u8 capacity); void BagPocketCompaction(struct ItemSlot * slots, u8 capacity);
u16 GetPcItemQuantity(u16 *); u16 GetPcItemQuantity(u16 *);
+19 -19
View File
@@ -30,25 +30,25 @@ struct ListMenu;
struct ListMenuTemplate struct ListMenuTemplate
{ {
const struct ListMenuItem *items; /*0x00*/ const struct ListMenuItem *items;
void (* moveCursorFunc)(s32 itemIndex, bool8 onInit, struct ListMenu *list); /*0x04*/ void (* moveCursorFunc)(s32 itemIndex, bool8 onInit, struct ListMenu *list);
void (* itemPrintFunc)(u8 windowId, s32 itemId, u8 y); /*0x08*/ void (* itemPrintFunc)(u8 windowId, s32 itemId, u8 y);
u16 totalItems; /*0x0C*/ u16 totalItems;
u16 maxShowed; /*0x0E*/ u16 maxShowed;
u8 windowId; /*0x10*/ u8 windowId;
u8 header_X; /*0x11*/ u8 header_X;
u8 item_X; /*0x12*/ u8 item_X;
u8 cursor_X; /*0x13*/ u8 cursor_X;
u8 upText_Y:4; // x1, x2, x4, x8 = xF /*0x14*/ u8 upText_Y:4; // x1, x2, x4, x8 = xF
u8 cursorPal:4; // x10, x20, x40, x80 = xF0 u8 cursorPal:4; // x10, x20, x40, x80 = xF0
u8 fillValue:4; // x1, x2, x4, x8 = xF /*0x15*/ u8 fillValue:4; // x1, x2, x4, x8 = xF
u8 cursorShadowPal:4; // x10, x20, x40, x80 = xF0 u8 cursorShadowPal:4; // x10, x20, x40, x80 = xF0
u8 lettersSpacing:3; /*0x16*/ u8 lettersSpacing:3;
u8 itemVerticalPadding:3; u8 itemVerticalPadding:3;
u8 scrollMultiple:2; // x40, x80 = xC0 u8 scrollMultiple:2; // x40, x80 = xC0
u8 fontId:6; // x1, x2, x4, x8, x10, x20 = x3F /*0x17*/ u8 fontId:6; // x1, x2, x4, x8, x10, x20 = x3F
u8 cursorKind:2; // x40, x80 u8 cursorKind:2; // x40, x80
}; }; /* size = 0x18 */
struct ListMenu struct ListMenu
{ {
+12
View File
@@ -0,0 +1,12 @@
#ifndef GUARD_SEA_COTTAGE_SPECIAL_ANIM_H
#define GUARD_SEA_COTTAGE_SPECIAL_ANIM_H
#include "global.h"
void sub_809C448(u8 a0);
void sub_809C460(void);
bool8 sub_809C474(void);
void sub_809C4A8(void);
void sub_809C5FC(void);
#endif // GUARD_SEA_COTTAGE_SPECIAL_ANIM_H
+6 -4
View File
@@ -4,18 +4,20 @@
#include "global.h" #include "global.h"
#include "menu_helpers.h" #include "menu_helpers.h"
#define INDEX_CANCEL -2
extern EWRAM_DATA struct ItemSlot gUnknown_02039F80[3]; extern EWRAM_DATA struct ItemSlot gUnknown_02039F80[3];
void CreatePokemartMenu(const u16 *); void CreatePokemartMenu(const u16 *itemsForSale);
void CreateDecorationShop1Menu(const u16 *); void CreateDecorationShop1Menu(const u16 *);
void CreateDecorationShop2Menu(const u16 *); void CreateDecorationShop2Menu(const u16 *);
void sub_809C09C(u16, u16, u8); u8 GetMartUnk16_4(void);
u8 sub_809B56C(void); void RecordItemPurchase(u16 a0, u16 a1, u8 a2);
// buy_menu_helper // buy_menu_helper
void BuyMenuInitWindows(bool32 isSellingTM); void BuyMenuInitWindows(bool32 isSellingTM);
void BuyMenuDrawMoneyBox(void); void BuyMenuDrawMoneyBox(void);
void BuyMenuPrint(u8 windowId, u8 font, const u8 *text, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, s8 speed, u8 color); void BuyMenuPrint(u8 windowId, u8 font, const u8 *text, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 color);
void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback); void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback);
void BuyMenuQuantityBoxNormalBorder(u8 windowId, bool8 copyToVram); void BuyMenuQuantityBoxNormalBorder(u8 windowId, bool8 copyToVram);
void BuyMenuQuantityBoxThinBorder(u8 windowId, bool8 copyToVram); void BuyMenuQuantityBoxThinBorder(u8 windowId, bool8 copyToVram);
+15
View File
@@ -97,6 +97,7 @@ extern const u8 gOtherText_Toss[];
extern const u8 gOtherText_Give[]; extern const u8 gOtherText_Give[];
extern const u8 gOtherText_Exit[]; extern const u8 gOtherText_Exit[];
extern const u8 gText_ThreeHyphens[]; extern const u8 gText_ThreeHyphens[];
extern const u8 gText_SevenHyphens[];
extern const u8 gOtherText_UnkF9_08_Clear_01[]; extern const u8 gOtherText_UnkF9_08_Clear_01[];
extern const u8 gText_TimesStrVar1[]; extern const u8 gText_TimesStrVar1[];
extern const u8 gText_IsSelected[]; extern const u8 gText_IsSelected[];
@@ -928,4 +929,18 @@ extern const u8 gText_CongratsPkmnEvolved[];
extern const u8 gText_EllipsisQuestionMark[]; extern const u8 gText_EllipsisQuestionMark[];
extern const u8 gText_PkmnStoppedEvolving[]; extern const u8 gText_PkmnStoppedEvolving[];
// shop
extern const u8 gText_ShopBuy[];
extern const u8 gText_ShopSell[];
extern const u8 gText_ShopQuit[];
extern const u8 gText_CanIHelpWithAnythingElse[];
extern const u8 gText_QuitShopping[];
extern const u8 gText_PokedollarVar1[];
extern const u8 gText_YouDontHaveMoney[];
extern const u8 gText_Var1CertainlyHowMany[];
extern const u8 gText_InBagVar1[];
extern const u8 gText_Var1AndYouWantedVar2[];
extern const u8 gText_HereYouGoThankYou[];
extern const u8 gText_NoMoreRoomForThis[];
#endif //GUARD_STRINGS_H #endif //GUARD_STRINGS_H
+4 -2
View File
@@ -140,7 +140,8 @@ SECTIONS {
src/item_menu_icons.o(.text); src/item_menu_icons.o(.text);
src/battle_anim_mon_movement.o(.text); src/battle_anim_mon_movement.o(.text);
src/item.o(.text); src/item.o(.text);
asm/shop.o(.text); src/shop.o(.text);
src/sea_cottage_special_anim.o(.text);
src/berry.o(.text); src/berry.o(.text);
src/script_menu.o(.text); src/script_menu.o(.text);
asm/naming_screen.o(.text); asm/naming_screen.o(.text);
@@ -441,7 +442,8 @@ SECTIONS {
src/item_menu_icons.o(.rodata); src/item_menu_icons.o(.rodata);
src/battle_anim_mon_movement.o(.rodata); src/battle_anim_mon_movement.o(.rodata);
src/item.o(.rodata); src/item.o(.rodata);
data/shop.o(.rodata); src/shop.o(.rodata);
src/sea_cottage_special_anim.o(.rodata);
src/berry.o(.rodata); src/berry.o(.rodata);
src/script_menu.o(.rodata); src/script_menu.o(.rodata);
data/naming_screen.o(.rodata); data/naming_screen.o(.rodata);
+1 -1
View File
@@ -1384,7 +1384,7 @@ static void Task_SellBerries_PlaySfxAndRemoveBerries(u8 taskId)
PlaySE(SE_SHOP); PlaySE(SE_SHOP);
RemoveBagItem(gSpecialVar_ItemId, data[8]); RemoveBagItem(gSpecialVar_ItemId, data[8]);
AddMoney(&gSaveBlock1Ptr->money, itemid_get_market_price(gSpecialVar_ItemId) / 2 * data[8]); AddMoney(&gSaveBlock1Ptr->money, itemid_get_market_price(gSpecialVar_ItemId) / 2 * data[8]);
sub_809C09C(gSpecialVar_ItemId, data[8], 2); RecordItemPurchase(gSpecialVar_ItemId, data[8], 2);
DestroyListMenuTask(data[0], &sStaticCnt.listMenuScrollOffset, &sStaticCnt.listMenuSelectedRow); DestroyListMenuTask(data[0], &sStaticCnt.listMenuScrollOffset, &sStaticCnt.listMenuSelectedRow);
SortAndCountBerries(); SortAndCountBerries();
SanitizeListMenuSelectionParams(); SanitizeListMenuSelectionParams();
+2 -2
View File
@@ -177,14 +177,14 @@ void BuyMenuDrawMoneyBox(void)
PrintMoneyAmountInMoneyBoxWithBorder(0, 0xA, 0xF, GetMoney(&gSaveBlock1Ptr->money)); PrintMoneyAmountInMoneyBoxWithBorder(0, 0xA, 0xF, GetMoney(&gSaveBlock1Ptr->money));
} }
void BuyMenuPrint(u8 windowId, u8 font, const u8 *text, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, s8 speed, u8 color) void BuyMenuPrint(u8 windowId, u8 font, const u8 *text, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 color)
{ {
AddTextPrinterParameterized4(windowId, font, x, y, letterSpacing, lineSpacing, sShopBuyMenuTextColors[color], speed, text); AddTextPrinterParameterized4(windowId, font, x, y, letterSpacing, lineSpacing, sShopBuyMenuTextColors[color], speed, text);
} }
void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback) void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback)
{ {
DisplayMessageAndContinueTask(taskId, 2, 0x13, 0xE, sub_809B56C(), GetTextSpeedSetting(), text, callback); DisplayMessageAndContinueTask(taskId, 2, 0x13, 0xE, GetMartUnk16_4(), GetTextSpeedSetting(), text, callback);
ScheduleBgCopyTilemapToVram(0); ScheduleBgCopyTilemapToVram(0);
} }
+1 -1
View File
@@ -463,7 +463,7 @@ u32 MapGridGetMetatileBehaviorAt(s32 x, s32 y)
return sub_8058F48(x, y, 0); return sub_8058F48(x, y, 0);
} }
u8 MapGridGetMetatileLayerTypeAt(s32 x, s32 y) u8 MapGridGetMetatileLayerTypeAt(s16 x, s16 y)
{ {
return sub_8058F48(x, y, 6); return sub_8058F48(x, y, 6);
} }
+264
View File
@@ -0,0 +1,264 @@
#include "global.h"
#include "event_data.h"
#include "task.h"
#include "menu.h"
#include "field_player_avatar.h"
#include "fieldmap.h"
#include "field_map_obj.h"
#include "field_camera.h"
static EWRAM_DATA u8 gUnknown_2039984 = 0;
static void sub_809C1D8(u8 taskId, const s16 *a1, u16 a2);
static void sub_809C334(u8 taskId);
static void sub_809C500(u8 taskId);
static void sub_809C640(u8 taskId);
static const u16 gUnknown_83DF0D4[] = {0x0308, 0x030a, 0x02d0};
static const u16 gUnknown_83DF0DA[] = {0x0309, 0x030b, 0x02d1};
static const u16 gUnknown_83DF0E0[] = {0x0310, 0x0312, 0x02d8};
static const u16 gUnknown_83DF0E6[] = {0x0311, 0x0313, 0x02d9};
static const u16 gUnknown_83DF0EC[] = {0x02e3, 0x0316, 0x0314};
static const u16 gUnknown_83DF0F2[] = {0x02e4, 0x0317, 0x0315};
static const u16 gUnknown_83DF0F8[] = {0x02eb, 0x031e, 0x031c};
// Functions
static void sub_809C1D8(u8 taskId, const s16 *a1, u16 a2)
{
s16 r5, r3, r4;
s16 i, j;
r5 = gTasks[taskId].data[4] - 1;
r3 = gTasks[taskId].data[5] - 1;
r4 = gTasks[taskId].data[1];
if (gTasks[taskId].data[2] == 0)
{
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
s32 id = MapGridGetMetatileIdAt(r5 + j, r3 + i);
if (a1[r4] == (s16)id)
{
if (r4 != 2)
MapGridSetMetatileIdAt(r5 + j, r3 + i, a2 | a1[r4 + 1]);
else
MapGridSetMetatileIdAt(r5 + j, r3 + i, a2 | a1[0]);
}
}
}
}
else
{
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
s32 id = MapGridGetMetatileIdAt(r5 + j, r3 + i);
if (a1[2 - r4] == (s16)id)
{
if (r4 != 2)
MapGridSetMetatileIdAt(r5 + j, r3 + i, a2 | a1[1 - r4]);
else
MapGridSetMetatileIdAt(r5 + j, r3 + i, a2 | a1[2]);
}
}
}
}
}
static void sub_809C334(u8 taskId)
{
s16 *data = gTasks[taskId].data;
u16 v1;
data[3] = 1;
switch (data[0])
{
case 0:
sub_809C1D8(taskId, gUnknown_83DF0D4, 0);
break;
case 1:
sub_809C1D8(taskId, gUnknown_83DF0DA, 0);
break;
case 2:
sub_809C1D8(taskId, gUnknown_83DF0E0, 0xC00);
break;
case 3:
sub_809C1D8(taskId, gUnknown_83DF0E6, 0);
break;
case 4:
sub_809C1D8(taskId, gUnknown_83DF0EC, 0xC00);
break;
case 5:
sub_809C1D8(taskId, gUnknown_83DF0F2, 0);
break;
case 6:
sub_809C1D8(taskId, gUnknown_83DF0F8, 0);
default:
break;
}
data[0] = (data[0] + 1) & 7;
v1 = data[0] & 7;
if (v1 == 0)
{
DrawWholeMapView();
data[1] = (data[1] + 1) % 3;
data[3] = v1;
}
}
static u8 sub_809C3FC(u16 a0)
{
u8 taskId;
s16 *data;
taskId = CreateTask(sub_809C334, 0);
data = gTasks[taskId].data;
PlayerGetDestCoords(&data[4], &data[5]);
data[0] = 0;
data[1] = 0;
data[2] = a0;
sub_809C334(taskId);
return taskId;
}
void sub_809C448(u8 a0)
{
u8 taskId;
taskId = sub_809C3FC(a0);
gUnknown_2039984 = taskId;
}
void sub_809C460(void)
{
DestroyTask(gUnknown_2039984);
}
bool8 sub_809C474(void)
{
if (gTasks[gUnknown_2039984].data[3] == 0)
{
if (gTasks[gUnknown_2039984].data[1] != 2)
return TRUE;
return FALSE;
}
else
{
return TRUE;
}
}
// special 0x1b5 - creates a tile animaiton one block left two-four up the player
void sub_809C4A8(void)
{
u8 taskId;
s16 *data;
taskId = CreateTask(sub_809C500, 0);
gTasks[taskId].data[0] = 0;
gTasks[taskId].data[1] = 0;
data = gTasks[taskId].data;
PlayerGetDestCoords(&data[2], &data[3]);
if (gSpecialVar_0x8004 == 0)
{
gTasks[taskId].data[2] += 6;
gTasks[taskId].data[3] -= 5;
}
else
{
gTasks[taskId].data[2]--;
gTasks[taskId].data[3] -= 5;
}
}
static void sub_809C500(u8 taskId)
{
s16 *data = gTasks[taskId].data;
if (data[0] == 0)
{
if ((data[1] & 1) == 0)
{
MapGridSetMetatileIdAt(data[2], data[3], 0xEB5);
MapGridSetMetatileIdAt(data[2], data[3] + 2, 0xEB7);
}
else
{
MapGridSetMetatileIdAt(data[2], data[3], 0xEB6);
MapGridSetMetatileIdAt(data[2], data[3] + 2, 0xEB8);
}
CurrentMapDrawMetatileAt(data[2], data[3]);
CurrentMapDrawMetatileAt(data[2], data[3] + 2);
}
data[0]++;
if (data[0] != 0x10)
return;
data[0] = 0;
data[1]++;
if (data[1] != 0xD)
return;
MapGridSetMetatileIdAt(data[2], data[3], 0xE8A);
MapGridSetMetatileIdAt(data[2], data[3] + 2, 0xE96);
CurrentMapDrawMetatileAt(data[2], data[3]);
CurrentMapDrawMetatileAt(data[2], data[3] + 2);
DestroyTask(taskId);
}
// special 0x1B7 - creates a tile animation two-six blocks right from the top-left corner of the screen
void sub_809C5FC(void)
{
u8 taskId;
s16 *data;
taskId = CreateTask(sub_809C640, 0);
gTasks[taskId].data[0] = 0;
gTasks[taskId].data[1] = 0;
data = gTasks[taskId].data;
PlayerGetDestCoords(&data[2], &data[3]);
gTasks[taskId].data[2] += 4;
gTasks[taskId].data[3] -= 5;
}
static void sub_809C640(u8 taskId)
{
s16 *data = gTasks[taskId].data;
if (data[0] == 0)
{
if (data[1] != 0)
{
MapGridSetMetatileIdAt(data[2], data[3], 0xE85);
MapGridSetMetatileIdAt(data[2], data[3] + 1, 0xEB4);
CurrentMapDrawMetatileAt(data[2], data[3]);
CurrentMapDrawMetatileAt(data[2], data[3] + 1);
if (data[1] == 4)
{
DestroyTask(taskId);
return;
}
data[2]--;
}
MapGridSetMetatileIdAt(data[2], data[3], 0xEB9);
MapGridSetMetatileIdAt(data[2], data[3] + 1, 0xEBA);
CurrentMapDrawMetatileAt(data[2], data[3]);
CurrentMapDrawMetatileAt(data[2], data[3] + 1);
}
data[0]++;
if (data[0] == 4)
{
data[0] = 0;
data[1]++;
}
}
+1161
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1107,7 +1107,7 @@ static void Task_DoSaleOfTMs(u8 taskId)
PlaySE(SE_SHOP); PlaySE(SE_SHOP);
RemoveBagItem(gSpecialVar_ItemId, data[8]); RemoveBagItem(gSpecialVar_ItemId, data[8]);
AddMoney(&gSaveBlock1Ptr->money, itemid_get_market_price(gSpecialVar_ItemId) / 2 * data[8]); AddMoney(&gSaveBlock1Ptr->money, itemid_get_market_price(gSpecialVar_ItemId) / 2 * data[8]);
sub_809C09C(gSpecialVar_ItemId, data[8], 2); RecordItemPurchase(gSpecialVar_ItemId, data[8], 2);
DestroyListMenuTask(data[0], &sTMCaseStaticResources.scrollOffset, &sTMCaseStaticResources.selectedRow); DestroyListMenuTask(data[0], &sTMCaseStaticResources.scrollOffset, &sTMCaseStaticResources.selectedRow);
TMCaseSetup_GetTMCount(); TMCaseSetup_GetTMCount();
TMCaseSetup_InitListMenuPositions(); TMCaseSetup_InitListMenuPositions();
+4 -42
View File
@@ -306,48 +306,10 @@ gUnknown_2039874: @ 2039874
gBagPockets: @ 203988C gBagPockets: @ 203988C
.space 0x28 .space 0x28
gUnknown_20398B4: @ 20398B4 .align 2
.space 0x4 .include "src/shop.o"
.align 2
gUnknown_20398B8: @ 20398B8 .include "src/sea_cottage_special_anim.o"
.space 0x2
gUnknown_20398BA: @ 20398BA
.space 0x7A
gUnknown_2039934: @ 2039934
.space 0xE
gUnknown_2039942: @ 2039942
.space 0xE
gUnknown_2039950: @ 2039950
.space 0x4
gUnknown_2039954: @ 2039954
.space 0x4
gUnknown_2039958: @ 2039958
.space 0x4
gUnknown_203995C: @ 203995C
.space 0x4
gUnknown_2039960: @ 2039960
.space 0x4
gUnknown_2039964: @ 2039964
.space 0x4
gUnknown_2039968: @ 2039968
.space 0x4
gUnknown_203996C: @ 203996C
.space 0x18
gUnknown_2039984: @ 2039984
.space 0x4
.align 2 .align 2
.include "src/script_menu.o" .include "src/script_menu.o"