diff --git a/asm/emerald.s b/asm/emerald.s index a987c77e9..74e5c5630 100644 --- a/asm/emerald.s +++ b/asm/emerald.s @@ -9838,7 +9838,7 @@ sub_800E084: ; 800E084 movs r0, 0x84 lsls r0, 3 adds r3, r0 - ldr r0, =gUnknown_082EC690 + ldr r0, =gDefaultOamAttributes ldr r1, [r0] ldr r2, [r0, 0x4] str r1, [r3] @@ -45574,7 +45574,7 @@ sub_80201A4: ; 80201A4 adds r0, r6, 0 adds r1, r5, 0 adds r2, r4, 0 - bl StringCopy_LimitN_Multibyte + bl CopyString_LimitN_Multibyte movs r0, 0 adds r1, r6, 0 movs r2, 0 @@ -242281,7 +242281,7 @@ sub_8086988: ; 8086988 movs r0, 0x1 bl npc_paltag_set_load @080869BA: - bl oe_active_list_clear + bl FieldEffectActiveListClear bl sub_80AAFA4 bl sub_80AEE84 cmp r4, 0 @@ -253249,7 +253249,7 @@ get_on_surf_blob: ; 808B4D8 ldrb r0, [r0, 0x5] str r0, [r1, 0x8] movs r0, 0x8 - bl oe_exec + bl FieldEffectStart lsls r0, 24 lsrs r0, 24 strb r0, [r4, 0x1A] @@ -255266,7 +255266,7 @@ do_jump_landing_dust: ; 808C3C4 lsrs r0, 30 str r0, [r2, 0xC] movs r0, 0xA - bl oe_exec + bl FieldEffectStart movs r0, 0xD6 bl audio_play ldrh r0, [r6, 0x8] @@ -257281,7 +257281,7 @@ sub_808D450: ; 808D450 mov r5, r9 mov r4, r8 push {r4-r6} - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x54] mov r9, r0 movs r1, 0 @@ -263118,7 +263118,7 @@ do_berry_tree_growth_sparkle_1: ; 808FE90 lsrs r0, 30 str r0, [r1, 0xC] movs r0, 0x17 - bl oe_exec + bl FieldEffectStart strb r7, [r6] @0808FEF6: movs r0, 0 @@ -263216,7 +263216,7 @@ do_berry_tree_growth_sparkle_2: ; 808FF68 lsrs r0, 30 str r0, [r3, 0xC] movs r0, 0x17 - bl oe_exec + bl FieldEffectStart movs r0, 0x1 pop {r4} pop {r1} @@ -268361,7 +268361,7 @@ do_ninja_boy_tree_disguise: ; 809253C adds r0, r4, 0 bl npc_get_local_id_and_mapnumbers movs r0, 0x1C - bl oe_exec + bl FieldEffectStart strb r0, [r4, 0x1A] movs r0, 0x1 strb r0, [r6] @@ -268425,7 +268425,7 @@ do_ninja_boy_mountain_disguise: ; 80925B8 adds r0, r4, 0 bl npc_get_local_id_and_mapnumbers movs r0, 0x1D - bl oe_exec + bl FieldEffectStart strb r0, [r4, 0x1A] movs r0, 0x1 strb r0, [r6] @@ -275181,7 +275181,7 @@ do_exclamation_mark_bubble_1: ; 80954DC adds r3, 0x8 bl npc_get_local_id_and_mapnumbers movs r0, 0 - bl oe_exec + bl FieldEffectStart movs r0, 0x1 strh r0, [r4, 0x32] pop {r4} @@ -275201,7 +275201,7 @@ do_exclamation_mark_bubble_2: ; 8095500 adds r3, 0x8 bl npc_get_local_id_and_mapnumbers movs r0, 0x21 - bl oe_exec + bl FieldEffectStart movs r0, 0x1 strh r0, [r4, 0x32] pop {r4} @@ -275221,7 +275221,7 @@ do_heart_bubble: ; 8095524 adds r3, 0x8 bl npc_get_local_id_and_mapnumbers movs r0, 0x2E - bl oe_exec + bl FieldEffectStart movs r0, 0x1 strh r0, [r4, 0x32] pop {r4} @@ -278840,7 +278840,7 @@ dp03_step_grass_normal: ; 8096E90 movs r0, 0x1 str r0, [r3, 0x1C] movs r0, 0x4 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -278879,7 +278879,7 @@ dp03_step_grass_elastic: ; 8096EDC movs r0, 0 str r0, [r3, 0x1C] movs r0, 0x4 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -278918,7 +278918,7 @@ dp03_step_grass_tall_1: ; 8096F28 movs r0, 0x1 str r0, [r3, 0x1C] movs r0, 0x11 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -278957,7 +278957,7 @@ dp03_step_grass_tall_0: ; 8096F74 movs r0, 0 str r0, [r3, 0x1C] movs r0, 0x11 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -279073,7 +279073,7 @@ do_sand_step_footprint_effect: ; 8097044 mov r1, sp adds r0, r1, r4 ldrb r0, [r0] - bl oe_exec + bl FieldEffectStart add sp, 0x4 pop {r4,r5} pop {r0} @@ -279115,7 +279115,7 @@ do_sand_step_bike_tire_tracks_effect: ; 8097094 ldrb r0, [r1] str r0, [r2, 0x10] movs r0, 0x23 - bl oe_exec + bl FieldEffectStart @080970D6: pop {r4} pop {r0} @@ -279171,7 +279171,7 @@ dp03_step_grass_thin: ; 8097110 movs r0, 0x2 str r0, [r1, 0xC] movs r0, 0xC - bl oe_exec + bl FieldEffectStart ldrb r0, [r5, 0x8] ldrb r1, [r5, 0x9] ldrb r2, [r5, 0xA] @@ -279213,7 +279213,7 @@ dp03_step_grass_heavy: ; 8097168 movs r0, 0x2 str r0, [r2, 0xC] movs r0, 0x12 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -279238,7 +279238,7 @@ dp03_step_bike_splash_probably: ; 8097190 lsrs r0, 30 str r0, [r3, 0xC] movs r0, 0x10 - bl oe_exec + bl FieldEffectStart pop {r4} pop {r0} bx r0 @@ -279264,7 +279264,7 @@ dp03_step_drop_water: ; 80971C0 lsrs r0, 30 str r0, [r3, 0xC] movs r0, 0xE - bl oe_exec + bl FieldEffectStart pop {r4} pop {r0} bx r0 @@ -279290,7 +279290,7 @@ dp03_step_dust: ; 80971F0 lsrs r0, 30 str r0, [r3, 0xC] movs r0, 0xA - bl oe_exec + bl FieldEffectStart pop {r4} pop {r0} bx r0 @@ -279329,7 +279329,7 @@ dp03_step_bubbles: ; 8097240 ldrsh r0, [r0, r1] str r0, [r2, 0x4] movs r0, 0x35 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -280974,7 +280974,7 @@ oe_exec_and_other_stuff: ; 8097DD0 adds r3, 0x8 bl npc_get_local_id_and_mapnumbers adds r0, r4, 0 - bl oe_exec + bl FieldEffectStart pop {r4} pop {r1} bx r1 @@ -281023,7 +281023,7 @@ do_puddle_step_effect: ; 8097E14 movs r0, 0x3 str r0, [r2, 0xC] movs r0, 0x5 - bl oe_exec + bl FieldEffectStart pop {r4} pop {r0} bx r0 @@ -288776,7 +288776,7 @@ s9C_execute_HM: ; 809B7CC strh r0, [r1] lsls r0, 24 lsrs r0, 24 - bl oe_exec + bl FieldEffectStart movs r0, 0 pop {r1} bx r1 @@ -288814,7 +288814,7 @@ sub_809B824: ; 809B824 push {lr} ldr r0, =0x020375d0 ldrb r0, [r0] - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 beq @0809B83C @@ -304061,6 +304061,7 @@ sub_80A303C: ; 80A303C thumb_func_end sub_80A303C thumb_func_start pause_music_for_sound_maybe +; void pause_music_for_sound_maybe(u8 a1) pause_music_for_sound_maybe: ; 80A3060 push {r4,lr} adds r4, r0, 0 @@ -304132,6 +304133,7 @@ sub_80A30CC: ; 80A30CC thumb_func_end sub_80A30CC thumb_func_start fanfare_play +; void fanfare_play(u16 a1) fanfare_play: ; 80A30E4 push {lr} lsls r0, 16 @@ -304210,6 +304212,7 @@ task50_overworld_fanfare: ; 80A3140 thumb_func_end task50_overworld_fanfare thumb_func_start task_add_50_overworld_fanfare_if_not_running +; void task_add_50_overworld_fanfare_if_not_running() task_add_50_overworld_fanfare_if_not_running: ; 80A3170 push {r4,lr} ldr r4, =task50_overworld_fanfare @@ -321359,6 +321362,7 @@ sub_80ABDFC: ; 80ABDFC thumb_func_end sub_80ABDFC thumb_func_start sub_80ABE18 +; void sub_80ABE18(u8 a1) sub_80ABE18: ; 80ABE18 push {r4-r6,lr} lsls r0, 24 @@ -337704,7 +337708,7 @@ sub_80B417C: ; 80B417C adds r0, r4, 0 bl npc_get_local_id_and_mapnumbers movs r0, 0 - bl oe_exec + bl FieldEffectStart ldrb r0, [r4, 0x18] lsls r0, 28 lsrs r0, 28 @@ -337731,7 +337735,7 @@ sub_80B41C0: ; 80B41C0 adds r4, r1, 0 adds r5, r2, 0 movs r0, 0 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 beq @080B41D6 @@ -338036,7 +338040,7 @@ sub_80B43E0: ; 80B43E0 movs r0, 0x2 str r0, [r2, 0xC] movs r0, 0x31 - bl oe_exec + bl FieldEffectStart strh r0, [r5, 0x10] ldrh r0, [r5, 0x8] adds r0, 0x1 @@ -338115,7 +338119,7 @@ sub_80B44AC: ; 80B44AC push {r4,lr} adds r4, r1, 0 movs r0, 0x31 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080B44C0 @@ -338169,7 +338173,7 @@ sub_80B44C8: ; 80B44C8 cmp r0, 0x3 bne @080B4564 movs r0, 0x31 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080B4564 @@ -338458,7 +338462,7 @@ objc_exclamation_mark_probably: ; 80B4724 lsls r1, 24 lsrs r1, 24 adds r0, r4, 0 - bl oe_stop + bl FieldEffectStop b @080B47B2 @080B4764: ldr r2, =0x02037350 @@ -341014,16 +341018,17 @@ ApplyCleanseTagWildEncounterRateReduction: ; 80B5AF0 .pool thumb_func_end ApplyCleanseTagWildEncounterRateReduction - thumb_func_start oe_exec -oe_exec: ; 80B5B18 + thumb_func_start FieldEffectStart +; u8 FieldEffectStart(u8 id) +FieldEffectStart: ; 80B5B18 push {r4,r5,lr} sub sp, 0x8 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 adds r0, r4, 0 - bl oe_active_list_add - ldr r0, =gUnknown_082DB9D4 + bl FieldEffectActiveListAdd + ldr r0, =gFieldEffectScriptPointers lsls r4, 2 adds r4, r0 ldr r0, [r4] @@ -341049,64 +341054,70 @@ oe_exec: ; 80B5B18 bx r1 .align 2, 0 .pool - thumb_func_end oe_exec + thumb_func_end FieldEffectStart - thumb_func_start oec00_load_gfx -oec00_load_gfx: ; 80B5B60 + thumb_func_start FieldEffectCmd00_loadtiles +; BOOL FieldEffectCmd00_loadtiles(u8 **script, u8 *returnValue) +FieldEffectCmd00_loadtiles: ; 80B5B60 push {lr} ldr r1, [r0] adds r1, 0x1 str r1, [r0] - bl oec00_load_gfx_impl + bl FieldEffectScript_LoadTiles movs r0, 0x1 pop {r1} bx r1 - thumb_func_end oec00_load_gfx + thumb_func_end FieldEffectCmd00_loadtiles - thumb_func_start sub_80B5B74 -sub_80B5B74: ; 80B5B74 + thumb_func_start FieldEffectCmd01_loadfadedpal +; BOOL FieldEffectCmd01_loadfadedpal(u8 **script, u8 *returnValue) +FieldEffectCmd01_loadfadedpal: ; 80B5B74 push {lr} ldr r1, [r0] adds r1, 0x1 str r1, [r0] - bl sub_80B5C6C + bl FieldEffectScript_LoadFadedPalette movs r0, 0x1 pop {r1} bx r1 - thumb_func_end sub_80B5B74 + thumb_func_end FieldEffectCmd01_loadfadedpal - thumb_func_start sub_80B5B88 -sub_80B5B88: ; 80B5B88 + thumb_func_start FieldEffectCmd02_loadpal +; BOOL FieldEffectCmd02_loadpal(u8 **script, u8 *returnValue) +FieldEffectCmd02_loadpal: ; 80B5B88 push {lr} ldr r1, [r0] adds r1, 0x1 str r1, [r0] - bl sub_80B5C94 + bl FieldEffectScript_LoadPalette movs r0, 0x1 pop {r1} bx r1 - thumb_func_end sub_80B5B88 + thumb_func_end FieldEffectCmd02_loadpal - thumb_func_start sub_80B5B9C -sub_80B5B9C: ; 80B5B9C + thumb_func_start FieldEffectCmd03_callnative +; BOOL FieldEffectCmd03_callnative(u8 **script, u8 *returnValue) +FieldEffectCmd03_callnative: ; 80B5B9C push {lr} ldr r2, [r0] adds r2, 0x1 str r2, [r0] - bl oec03_call_asm_impl + bl FieldEffectScript_CallNative movs r0, 0x1 pop {r1} bx r1 - thumb_func_end sub_80B5B9C + thumb_func_end FieldEffectCmd03_callnative - thumb_func_start sub_80B5BB0 -sub_80B5BB0: ; 80B5BB0 + thumb_func_start FieldEffectCmd04_end +; BOOL FieldEffectCmd04_end(u8 **script, u8 *returnValue) +FieldEffectCmd04_end: ; 80B5BB0 movs r0, 0 bx lr - thumb_func_end sub_80B5BB0 + thumb_func_end FieldEffectCmd04_end - thumb_func_start sub_80B5BB4 -sub_80B5BB4: ; 80B5BB4 + thumb_func_start FieldEffectCmd05_loadgfx_callnative +; BOOL FieldEffectCmd05_loadgfx_callnative(u8 **script, u8 *returnValue) +FieldEffectCmd05_loadgfx_callnative: ; 80B5BB4 push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 @@ -341114,20 +341125,21 @@ sub_80B5BB4: ; 80B5BB4 adds r0, 0x1 str r0, [r4] adds r0, r4, 0 - bl oec00_load_gfx_impl + bl FieldEffectScript_LoadTiles adds r0, r4, 0 - bl sub_80B5C6C + bl FieldEffectScript_LoadFadedPalette adds r0, r4, 0 adds r1, r5, 0 - bl oec03_call_asm_impl + bl FieldEffectScript_CallNative movs r0, 0x1 pop {r4,r5} pop {r1} bx r1 - thumb_func_end sub_80B5BB4 + thumb_func_end FieldEffectCmd05_loadgfx_callnative - thumb_func_start sub_80B5BDC -sub_80B5BDC: ; 80B5BDC + thumb_func_start FieldEffectCmd06_loadtiles_callnative +; BOOL FieldEffectCmd06_loadtiles_callnative(u8 **script, u8 *returnValue) +FieldEffectCmd06_loadtiles_callnative: ; 80B5BDC push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 @@ -341135,18 +341147,19 @@ sub_80B5BDC: ; 80B5BDC adds r0, 0x1 str r0, [r4] adds r0, r4, 0 - bl oec00_load_gfx_impl + bl FieldEffectScript_LoadTiles adds r0, r4, 0 adds r1, r5, 0 - bl oec03_call_asm_impl + bl FieldEffectScript_CallNative movs r0, 0x1 pop {r4,r5} pop {r1} bx r1 - thumb_func_end sub_80B5BDC + thumb_func_end FieldEffectCmd06_loadtiles_callnative - thumb_func_start sub_80B5C00 -sub_80B5C00: ; 80B5C00 + thumb_func_start FieldEffectCmd07_loadfadedpal_callnative +; BOOL FieldEffectCmd07_loadfadedpal_callnative(u8 **script, u8 *returnValue) +FieldEffectCmd07_loadfadedpal_callnative: ; 80B5C00 push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 @@ -341154,18 +341167,19 @@ sub_80B5C00: ; 80B5C00 adds r0, 0x1 str r0, [r4] adds r0, r4, 0 - bl sub_80B5C6C + bl FieldEffectScript_LoadFadedPalette adds r0, r4, 0 adds r1, r5, 0 - bl oec03_call_asm_impl + bl FieldEffectScript_CallNative movs r0, 0x1 pop {r4,r5} pop {r1} bx r1 - thumb_func_end sub_80B5C00 + thumb_func_end FieldEffectCmd07_loadfadedpal_callnative - thumb_func_start oe_read_word -oe_read_word: ; 80B5C24 + thumb_func_start FieldEffectScript_ReadWord +; u32 FieldEffectScript_ReadWord(u8 **script) +FieldEffectScript_ReadWord: ; 80B5C24 ldr r2, [r0] ldrb r0, [r2] ldrb r1, [r2, 0x1] @@ -341178,13 +341192,14 @@ oe_read_word: ; 80B5C24 lsls r1, 24 adds r0, r1 bx lr - thumb_func_end oe_read_word + thumb_func_end FieldEffectScript_ReadWord - thumb_func_start oec00_load_gfx_impl -oec00_load_gfx_impl: ; 80B5C3C + thumb_func_start FieldEffectScript_LoadTiles +; void FieldEffectScript_LoadTiles(u8 **script) +FieldEffectScript_LoadTiles: ; 80B5C3C push {r4,r5,lr} adds r4, r0, 0 - bl oe_read_word + bl FieldEffectScript_ReadWord adds r5, r0, 0 ldrh r0, [r5, 0x6] bl gpu_tile_obj_tag_get_range_start @@ -341203,13 +341218,14 @@ oec00_load_gfx_impl: ; 80B5C3C bx r0 .align 2, 0 .pool - thumb_func_end oec00_load_gfx_impl + thumb_func_end FieldEffectScript_LoadTiles - thumb_func_start sub_80B5C6C -sub_80B5C6C: ; 80B5C6C + thumb_func_start FieldEffectScript_LoadFadedPalette +; void FieldEffectScript_LoadFadedPalette(u8 **script) +FieldEffectScript_LoadFadedPalette: ; 80B5C6C push {r4,r5,lr} adds r5, r0, 0 - bl oe_read_word + bl FieldEffectScript_ReadWord adds r4, r0, 0 bl gpu_pal_obj_alloc_tag_and_apply ldrh r0, [r4, 0x4] @@ -341223,13 +341239,14 @@ sub_80B5C6C: ; 80B5C6C pop {r4,r5} pop {r0} bx r0 - thumb_func_end sub_80B5C6C + thumb_func_end FieldEffectScript_LoadFadedPalette - thumb_func_start sub_80B5C94 -sub_80B5C94: ; 80B5C94 + thumb_func_start FieldEffectScript_LoadPalette +; void FieldEffectScript_LoadPalette(u8 **script) +FieldEffectScript_LoadPalette: ; 80B5C94 push {r4,lr} adds r4, r0, 0 - bl oe_read_word + bl FieldEffectScript_ReadWord bl gpu_pal_obj_alloc_tag_and_apply ldr r0, [r4] adds r0, 0x4 @@ -341237,14 +341254,15 @@ sub_80B5C94: ; 80B5C94 pop {r4} pop {r0} bx r0 - thumb_func_end sub_80B5C94 + thumb_func_end FieldEffectScript_LoadPalette - thumb_func_start oec03_call_asm_impl -oec03_call_asm_impl: ; 80B5CAC + thumb_func_start FieldEffectScript_CallNative +; void FieldEffectScript_CallNative(u8 **script, u8 *returnValue) +FieldEffectScript_CallNative: ; 80B5CAC push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 - bl oe_read_word + bl FieldEffectScript_ReadWord bl _call_via_r0 str r0, [r5] ldr r0, [r4] @@ -341253,10 +341271,11 @@ oec03_call_asm_impl: ; 80B5CAC pop {r4,r5} pop {r0} bx r0 - thumb_func_end oec03_call_asm_impl + thumb_func_end FieldEffectScript_CallNative - thumb_func_start oe_stop_ -oe_stop_: ; 80B5CC8 + thumb_func_start FieldEffectFreeGraphicsResources +; void FieldEffectFreeGraphicsResources(struct obj *object) +FieldEffectFreeGraphicsResources: ; 80B5CC8 push {r4,r5,lr} adds r1, r0, 0 adds r1, 0x40 @@ -341265,29 +341284,31 @@ oe_stop_: ; 80B5CC8 lsrs r4, 4 bl obj_delete_and_free_tiles adds r0, r5, 0 - bl gpu_tile_obj_free_by_ado_when_unused_maybe + bl FieldEffectFreeTilesIfUnused adds r0, r4, 0 - bl gpu_pal_free_by_index_when_unused + bl FieldEffectFreePaletteIfUnused pop {r4,r5} pop {r0} bx r0 - thumb_func_end oe_stop_ + thumb_func_end FieldEffectFreeGraphicsResources - thumb_func_start oe_stop -oe_stop: ; 80B5CEC + thumb_func_start FieldEffectStop +; void FieldEffectStop(struct obj *object, u8 id) +FieldEffectStop: ; 80B5CEC push {r4,lr} lsls r4, r1, 24 lsrs r4, 24 - bl oe_stop_ + bl FieldEffectFreeGraphicsResources adds r0, r4, 0 - bl oe_active_list_remove + bl FieldEffectActiveListRemove pop {r4} pop {r0} bx r0 - thumb_func_end oe_stop + thumb_func_end FieldEffectStop - thumb_func_start gpu_tile_obj_free_by_ado_when_unused_maybe -gpu_tile_obj_free_by_ado_when_unused_maybe: ; 80B5D04 + thumb_func_start FieldEffectFreeTilesIfUnused +; void FieldEffectFreeTilesIfUnused(u16 tileRangeStart) +FieldEffectFreeTilesIfUnused: ; 80B5D04 push {r4,r5,lr} lsls r0, 16 lsrs r4, r0, 16 @@ -341336,10 +341357,11 @@ gpu_tile_obj_free_by_ado_when_unused_maybe: ; 80B5D04 bx r0 .align 2, 0 .pool - thumb_func_end gpu_tile_obj_free_by_ado_when_unused_maybe + thumb_func_end FieldEffectFreeTilesIfUnused - thumb_func_start gpu_pal_free_by_index_when_unused -gpu_pal_free_by_index_when_unused: ; 80B5D68 + thumb_func_start FieldEffectFreePaletteIfUnused +; void FieldEffectFreePaletteIfUnused(u8 paletteSlot) +FieldEffectFreePaletteIfUnused: ; 80B5D68 push {r4-r6,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -341382,10 +341404,11 @@ gpu_pal_free_by_index_when_unused: ; 80B5D68 bx r0 .align 2, 0 .pool - thumb_func_end gpu_pal_free_by_index_when_unused + thumb_func_end FieldEffectFreePaletteIfUnused - thumb_func_start oe_active_list_clear -oe_active_list_clear: ; 80B5DC0 + thumb_func_start FieldEffectActiveListClear +; void FieldEffectActiveListClear() +FieldEffectActiveListClear: ; 80B5DC0 push {r4,lr} movs r2, 0 ldr r4, =0x03000f58 @@ -341405,10 +341428,11 @@ oe_active_list_clear: ; 80B5DC0 bx r0 .align 2, 0 .pool - thumb_func_end oe_active_list_clear + thumb_func_end FieldEffectActiveListClear - thumb_func_start oe_active_list_add -oe_active_list_add: ; 80B5DE4 + thumb_func_start FieldEffectActiveListAdd +; void FieldEffectActiveListAdd(u8 id) +FieldEffectActiveListAdd: ; 80B5DE4 push {r4,lr} lsls r0, 24 lsrs r3, r0, 24 @@ -341433,10 +341457,11 @@ oe_active_list_add: ; 80B5DE4 pop {r4} pop {r0} bx r0 - thumb_func_end oe_active_list_add + thumb_func_end FieldEffectActiveListAdd - thumb_func_start oe_active_list_remove -oe_active_list_remove: ; 80B5E10 + thumb_func_start FieldEffectActiveListRemove +; void FieldEffectActiveListRemove(u8 id) +FieldEffectActiveListRemove: ; 80B5E10 push {r4,r5,lr} lsls r0, 24 lsrs r3, r0, 24 @@ -341463,10 +341488,11 @@ oe_active_list_remove: ; 80B5E10 pop {r4,r5} pop {r0} bx r0 - thumb_func_end oe_active_list_remove + thumb_func_end FieldEffectActiveListRemove - thumb_func_start oe_active_list_contains -oe_active_list_contains: ; 80B5E40 + thumb_func_start FieldEffectActiveListContains +; void FieldEffectActiveListContains(u8 id) +FieldEffectActiveListContains: ; 80B5E40 push {lr} lsls r0, 24 lsrs r2, r0, 24 @@ -341491,7 +341517,7 @@ oe_active_list_contains: ; 80B5E40 @080B5E68: pop {r1} bx r1 - thumb_func_end oe_active_list_contains + thumb_func_end FieldEffectActiveListContains thumb_func_start sub_80B5E6C sub_80B5E6C: ; 80B5E6C @@ -342062,7 +342088,7 @@ sub_80B62B4: ; 80B62B4 adds r0, r1, 0 bl obj_delete_and_free_tiles movs r0, 0x19 - bl oe_active_list_remove + bl FieldEffectActiveListRemove ldr r0, =sub_80B61E4 bl get_task_id_by_function lsls r0, 24 @@ -342254,7 +342280,7 @@ sub_80B642C: ; 80B642C adds r0, r1, 0 bl obj_delete_and_free_tiles movs r0, 0x3E - bl oe_active_list_remove + bl FieldEffectActiveListRemove ldr r0, =sub_80B6330 bl get_task_id_by_function lsls r0, 24 @@ -342754,7 +342780,7 @@ sub_80B6828: ; 80B6828 cmp r0, 0x4 ble @080B6848 adds r0, r3, 0 - bl oe_stop_ + bl FieldEffectFreeGraphicsResources @080B6848: pop {r0} bx r0 @@ -342834,7 +342860,7 @@ sub_80B68AC: ; 80B68AC cmp r0, 0 beq @080B68E4 adds r0, r4, 0 - bl oe_stop_ + bl FieldEffectFreeGraphicsResources @080B68E4: pop {r4} pop {r0} @@ -342955,7 +342981,7 @@ sub_80B6970: ; 80B6970 cmp r0, 0x7F ble @080B69D4 adds r0, r3, 0 - bl oe_stop_ + bl FieldEffectFreeGraphicsResources @080B69D4: pop {r0} bx r0 @@ -343023,13 +343049,13 @@ task00_8084310: ; 80B6A24 str r6, [r1] @080B6A58: movs r0, 0x1F - bl oe_exec + bl FieldEffectStart ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] @080B6A64: movs r0, 0x1F - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080B6A8A @@ -343116,13 +343142,13 @@ c3_080843F8: ; 80B6B0C cmp r0, 0 bne @080B6B58 movs r0, 0x20 - bl oe_exec + bl FieldEffectStart ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] @080B6B3E: movs r0, 0x20 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080B6B58 @@ -344244,7 +344270,7 @@ waterfall_1_do_anim_probably: ; 80B73F0 ldrsh r0, [r4, r2] str r0, [r1] movs r0, 0x3B - bl oe_exec + bl FieldEffectStart ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] @@ -344262,7 +344288,7 @@ waterfall_2_wait_anim_finish_probably: ; 80B742C push {r4,lr} adds r4, r0, 0 movs r0, 0x6 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080B7446 @@ -344328,7 +344354,7 @@ sub_80B7478: ; 80B7478 lsrs r0, 24 bl remove_task movs r0, 0x2B - bl oe_active_list_remove + bl FieldEffectActiveListRemove movs r0, 0 b @080B74CA .align 2, 0 @@ -344424,7 +344450,7 @@ dive_2_unknown: ; 80B7558 ldrsh r0, [r4, r2] str r0, [r1] movs r0, 0x3B - bl oe_exec + bl FieldEffectStart ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] @@ -344445,7 +344471,7 @@ dive_3_unknown: ; 80B7580 mov r0, sp bl player_get_pos_to movs r0, 0x6 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080B75C4 @@ -344465,7 +344491,7 @@ dive_3_unknown: ; 80B7580 lsrs r0, 24 bl remove_task movs r0, 0x2C - bl oe_active_list_remove + bl FieldEffectActiveListRemove @080B75C4: movs r0, 0 add sp, 0x8 @@ -344614,7 +344640,7 @@ sub_80B76B8: ; 80B76B8 lsrs r0, 30 str r0, [r3, 0xC] movs r0, 0x32 - bl oe_exec + bl FieldEffectStart movs r0, 0xB2 bl audio_play ldrh r0, [r4, 0x8] @@ -344919,7 +344945,7 @@ sub_80B791C: ; 80B791C lsrs r0, 30 str r0, [r1, 0xC] movs r0, 0x31 - bl oe_exec + bl FieldEffectStart strh r0, [r4, 0xA] ldrh r0, [r4, 0x8] adds r0, 0x1 @@ -345011,7 +345037,7 @@ sub_80B79F4: ; 80B79F4 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers adds r0, 0x84 ldr r0, [r0] movs r2, 0 @@ -345061,7 +345087,7 @@ sub_80B7A58: ; 80B7A58 beq @080B7A70 adds r0, r2, 0 movs r1, 0x32 - bl oe_stop + bl FieldEffectStop @080B7A70: pop {r0} bx r0 @@ -345181,7 +345207,7 @@ sub_80B7B18: ; 80B7B18 lsrs r0, 30 str r0, [r1, 0xC] movs r0, 0x31 - bl oe_exec + bl FieldEffectStart strh r0, [r5, 0xA] ldrh r0, [r5, 0x8] adds r0, 0x1 @@ -345247,7 +345273,7 @@ sub_80B7BCC: ; 80B7BCC push {r4,lr} adds r4, r0, 0 movs r0, 0x31 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080B7BEA @@ -345305,7 +345331,7 @@ sub_80B7C48: ; 80B7C48 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers adds r0, 0x80 ldr r0, [r0] movs r2, 0 @@ -345355,7 +345381,7 @@ sub_80B7CAC: ; 80B7CAC beq @080B7CC4 adds r0, r2, 0 movs r1, 0x31 - bl oe_stop + bl FieldEffectStop @080B7CC4: pop {r0} bx r0 @@ -346376,9 +346402,9 @@ sub_80B84F8: ; 80B84F8 orrs r0, r6 str r0, [r5] movs r0, 0x6 - bl oe_exec + bl FieldEffectStart movs r0, 0x3B - bl oe_active_list_remove + bl FieldEffectActiveListRemove movs r0, 0 pop {r4-r6} pop {r1} @@ -346714,7 +346740,7 @@ overworld_bg_setup_2: ; 80B87B8 lsrs r1, 24 bl sub_80B6070 movs r0, 0x6 - bl oe_active_list_remove + bl FieldEffectActiveListRemove ldr r0, =sub_80B8554 bl get_task_id_by_function lsls r0, 24 @@ -347053,7 +347079,7 @@ sub_80B8A64: ; 80B8A64 lsrs r1, 24 bl sub_80B6070 movs r0, 0x6 - bl oe_active_list_remove + bl FieldEffectActiveListRemove ldr r0, =sub_80B88B4 bl get_task_id_by_function lsls r0, 24 @@ -347552,7 +347578,7 @@ sub_80B8E60: ; 80B8E60 orrs r0, r1 str r0, [r2] movs r0, 0x3B - bl oe_exec + bl FieldEffectStart ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] @@ -347569,7 +347595,7 @@ sub_80B8EA8: ; 80B8EA8 push {r4-r6,lr} adds r6, r0, 0 movs r0, 0x6 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080B8F12 @@ -347607,7 +347633,7 @@ sub_80B8EA8: ; 80B8EA8 ldrb r0, [r5, 0x5] str r0, [r1, 0x8] movs r0, 0x8 - bl oe_exec + bl FieldEffectStart strb r0, [r4, 0x1A] ldrh r0, [r6, 0x8] adds r0, 0x1 @@ -347655,7 +347681,7 @@ sub_80B8F24: ; 80B8F24 bl sub_809757C bl script_env_2_disable movs r0, 0x9 - bl oe_active_list_remove + bl FieldEffectActiveListRemove ldr r0, =sub_80B8D84 bl get_task_id_by_function lsls r0, 24 @@ -347674,7 +347700,7 @@ sub_80B8F98: ; 80B8F98 push {r4-r7,lr} mov r7, r8 push {r7} - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers adds r0, 0x90 ldr r0, [r0] movs r2, 0x18 @@ -347806,7 +347832,7 @@ sub_80B8F98: ; 80B8F98 thumb_func_start sub_80B90CC sub_80B90CC: ; 80B90CC push {r4,lr} - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x68] movs r1, 0x78 movs r2, 0 @@ -347900,7 +347926,7 @@ sub_80B9128: ; 80B9128 ble @080B919A adds r0, r4, 0 movs r1, 0x1E - bl oe_stop + bl FieldEffectStop @080B919A: pop {r4,r5} pop {r0} @@ -348021,7 +348047,7 @@ sub_80B925C: ; 80B925C ldrsh r0, [r4, r2] str r0, [r1] movs r0, 0x3B - bl oe_exec + bl FieldEffectStart @080B928C: pop {r4} pop {r0} @@ -348035,7 +348061,7 @@ sub_80B92A0: ; 80B92A0 push {r4,r5,lr} adds r4, r0, 0 movs r0, 0x6 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080B92E8 @@ -348287,7 +348313,7 @@ sub_80B9494: ; 80B9494 cmp r0, 0 bne @080B94B6 movs r0, 0x1F - bl oe_active_list_remove + bl FieldEffectActiveListRemove ldr r0, =sub_80B91D4 bl get_task_id_by_function lsls r0, 24 @@ -348303,7 +348329,7 @@ sub_80B9494: ; 80B9494 thumb_func_start sub_80B94C4 sub_80B94C4: ; 80B94C4 push {lr} - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x68] movs r1, 0xFF movs r2, 0xB4 @@ -349060,7 +349086,7 @@ fishE: ; 80B9A60 movs r0, 0 strb r0, [r6, 0x6] movs r0, 0x20 - bl oe_active_list_remove + bl FieldEffectActiveListRemove ldr r0, =sub_80B97D4 bl get_task_id_by_function lsls r0, 24 @@ -349111,7 +349137,7 @@ sub_80B9ADC: ; 80B9ADC .pool @080B9B2C: movs r0, 0x41 - bl oe_active_list_remove + bl FieldEffectActiveListRemove @080B9B32: movs r0, 0 add sp, 0x4 @@ -349352,7 +349378,7 @@ sub_80B9CDC: ; 80B9CDC ldrb r2, [r4, 0x10] bl npc_hide_by_local_id_and_map movs r0, 0x41 - bl oe_active_list_remove + bl FieldEffectActiveListRemove adds r0, r5, 0 bl remove_task @080B9D16: @@ -349686,7 +349712,7 @@ sub_80B9EDC: ; 80B9EDC orrs r0, r1 strb r0, [r4] movs r0, 0x42 - bl oe_active_list_remove + bl FieldEffectActiveListRemove adds r0, r7, 0 bl remove_task @080B9FAC: @@ -399527,7 +399553,7 @@ sub_80D3718: ; 80D3718 hm2_ruin_valley: ; 80D3A50 push {lr} movs r0, 0x1 - bl oe_exec + bl FieldEffectStart bl brm_get_pokemon_selection ldr r1, =0x02038c08 lsls r0, 24 @@ -399607,9 +399633,9 @@ sub_80D3ABC: ; 80D3ABC sub_80D3AEC: ; 80D3AEC push {lr} movs r0, 0x1 - bl oe_active_list_remove + bl FieldEffectActiveListRemove movs r0, 0x3A - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 thumb_func_end sub_80D3AEC @@ -400486,7 +400512,7 @@ sub_80D41D0: ; 80D41D0 lsls r0, 2 adds r0, r5 movs r1, 0x3A - bl oe_stop + bl FieldEffectStop ldr r0, [r6] bl free movs r0, 0 @@ -400661,7 +400687,7 @@ sub_80D4354: ; 80D4354 movs r0, 0x80 bl audio_play movs r0, 0x2 - bl oe_active_list_remove + bl FieldEffectActiveListRemove bl script_env_2_enable_and_set_ctx_running pop {r0} bx r0 @@ -445151,7 +445177,7 @@ sub_80EA3E4: ; 80EA3E4 .pool @080EA810: ldrb r0, [r5, 0x8] - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @080EA820 @@ -474119,9 +474145,9 @@ oei_sweet_scent: ; 80FA0FC sub_80FA128: ; 80FA128 push {lr} movs r0, 0xB - bl oe_active_list_remove + bl FieldEffectActiveListRemove movs r0, 0x37 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 thumb_func_end sub_80FA128 @@ -474211,7 +474237,7 @@ sub_80FA1A8: ; 80FA1A8 sub_80FA1D8: ; 80FA1D8 push {lr} movs r1, 0x37 - bl oe_stop + bl FieldEffectStop bl script_env_2_enable_and_set_ctx_running pop {r0} bx r0 @@ -474259,9 +474285,9 @@ sub_80FA208: ; 80FA208 sub_80FA234: ; 80FA234 push {lr} movs r0, 0x1A - bl oe_active_list_remove + bl FieldEffectActiveListRemove movs r0, 0x38 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 thumb_func_end sub_80FA234 @@ -474389,7 +474415,7 @@ sub_80FA304: ; 80FA304 sub_80FA33C: ; 80FA33C push {lr} movs r1, 0x38 - bl oe_stop + bl FieldEffectStop bl script_env_2_enable_and_set_ctx_running pop {r0} bx r0 @@ -474437,9 +474463,9 @@ sub_80FA36C: ; 80FA36C sub_80FA398: ; 80FA398 push {lr} movs r0, 0x1B - bl oe_active_list_remove + bl FieldEffectActiveListRemove movs r0, 0x39 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 thumb_func_end sub_80FA398 @@ -474529,7 +474555,7 @@ sub_80FA418: ; 80FA418 sub_80FA448: ; 80FA448 push {lr} movs r1, 0x39 - bl oe_stop + bl FieldEffectStop bl script_env_2_enable_and_set_ctx_running pop {r0} bx r0 @@ -474649,7 +474675,7 @@ sub_80FA4A0: ; 80FA4A0 ldrsh r1, [r4, r2] bl cur_mapdata_draw_block_at movs r0, 0x3D - bl oe_active_list_remove + bl FieldEffectActiveListRemove bl script_env_2_enable_and_set_ctx_running adds r0, r5, 0 bl remove_task @@ -475210,7 +475236,7 @@ sub_80FA9D0: ; 80FA9D0 movs r2, 0x8 movs r3, 0x4 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x58] mov r1, sp movs r2, 0 @@ -475484,7 +475510,7 @@ sub_80FAC24: ; 80FAC24 sub_80FAC68: ; 80FAC68 push {lr} movs r1, 0x34 - bl oe_stop + bl FieldEffectStop bl script_env_2_enable_and_set_ctx_running pop {r0} bx r0 @@ -594110,7 +594136,7 @@ task08_080C9820: ; 813549C cmp r0, 0x5 bne @08135504 movs r0, 0x3B - bl oe_exec + bl FieldEffectStart ldr r0, =0x03005e00 lsls r1, r5, 2 adds r1, r5 @@ -594159,7 +594185,7 @@ sub_813552C: ; 813552C cmp r0, 0x1 bne @08135560 movs r0, 0x3B - bl oe_exec + bl FieldEffectStart ldr r0, =0x03005e00 lsls r1, r4, 2 adds r1, r4 @@ -594181,7 +594207,7 @@ sub_8135578: ; 8135578 lsls r0, 24 lsrs r7, r0, 24 movs r0, 0x6 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 lsrs r4, r0, 24 cmp r4, 0 @@ -594233,7 +594259,7 @@ sub_8135578: ; 8135578 ldrb r1, [r6, 0x8] bl obj_anim_image_start movs r0, 0x6 - bl oe_active_list_remove + bl FieldEffectActiveListRemove ldr r1, =0x03005e00 lsls r0, r7, 2 adds r0, r7 @@ -594369,7 +594395,7 @@ sub_8135714: ; 8135714 movs r0, 0x83 bl audio_play movs r0, 0x25 - bl oe_active_list_remove + bl FieldEffectActiveListRemove bl script_env_2_enable_and_set_ctx_running pop {r0} bx r0 @@ -594405,7 +594431,7 @@ hm2_dig: ; 8135760 push {lr} bl flagmods_08054D70 movs r0, 0x26 - bl oe_exec + bl FieldEffectStart bl brm_get_pokemon_selection ldr r1, =0x02038c08 lsls r0, 24 @@ -594450,7 +594476,7 @@ sub_8135780: ; 8135780 sub_81357BC: ; 81357BC push {r4,lr} movs r0, 0x26 - bl oe_active_list_remove + bl FieldEffectActiveListRemove bl sub_81795E8 lsls r0, 24 lsrs r4, r0, 24 @@ -605476,7 +605502,7 @@ sub_813B0B4: ; 813B0B4 @0813B13A: str r0, [r3, 0x14] movs r0, 0x42 - bl oe_exec + bl FieldEffectStart ldr r0, =gUnknown_085B33E0 adds r1, r5, r0 ldrb r1, [r1] @@ -605499,7 +605525,7 @@ sub_813B160: ; 813B160 lsls r0, 24 lsrs r4, r0, 24 movs r0, 0x42 - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @0813B17C @@ -607325,7 +607351,7 @@ sub_813C008: ; 813C008 adds r0, r4, 0 adds r1, r7, 0 movs r2, 0x7 - bl StringCompare_LimitN + bl CompareString_LimitN cmp r0, 0 bne @0813C02C ldrh r0, [r4, 0x8] @@ -625970,7 +625996,7 @@ sub_8145E2C: ; 8145E2C sub_8145E74: ; 8145E74 push {lr} movs r0, 0x28 - bl oe_active_list_remove + bl FieldEffectActiveListRemove bl script_env_2_enable_and_set_ctx_running pop {r0} bx r0 @@ -627186,7 +627212,7 @@ sub_8146800: ; 8146800 movs r2, 0xB0 lsls r2, 2 bl CpuSet - ldr r0, =gUnknown_085C8ED4 + ldr r0, =gFieldEffectObjectPalette10 movs r1, 0xF0 movs r2, 0x20 bl gpu_pal_apply @@ -628146,7 +628172,7 @@ sub_8146FCC: ; 8146FCC ldr r2, =0x05000200 mov r0, sp bl CpuSet - ldr r0, =gUnknown_085C8ED4 + ldr r0, =gFieldEffectObjectPalette10 movs r1, 0xF0 movs r2, 0x20 bl gpu_pal_apply @@ -628204,7 +628230,7 @@ sub_8147018: ; 8147018 ldrsh r0, [r0, r1] str r0, [r6, 0xC] movs r0, 0x2D - bl oe_exec + bl FieldEffectStart adds r4, 0x1 lsls r4, 16 movs r0, 0x1 @@ -628233,7 +628259,7 @@ sub_8147018: ; 8147018 sub_81470A4: ; 81470A4 push {lr} movs r0, 0x2D - bl oe_active_list_contains + bl FieldEffectActiveListContains lsls r0, 24 cmp r0, 0 bne @081470C4 @@ -628392,7 +628418,7 @@ sub_814713C: ; 814713C bls @081471F2 adds r0, r4, 0 movs r1, 0x2D - bl oe_stop + bl FieldEffectStop @081471F2: add sp, 0x4 pop {r4-r6} @@ -631983,7 +632009,7 @@ sub_8148E8C: ; 8148E8C ldr r2, =0x01000400 mov r0, sp bl CpuSet - ldr r0, =gUnknown_085C8ED4 + ldr r0, =gFieldEffectObjectPalette10 movs r1, 0xF0 movs r2, 0x20 bl gpu_pal_apply @@ -633344,7 +633370,7 @@ sub_8149994: ; 8149994 ldr r2, =0x01000400 mov r0, sp bl CpuSet - ldr r0, =gUnknown_085C8ED4 + ldr r0, =gFieldEffectObjectPalette10 movs r1, 0xF0 movs r2, 0x20 bl gpu_pal_apply @@ -649815,7 +649841,7 @@ sub_81521C0: ; 81521C0 cmp r5, r4 bcs @08152242 adds r3, r6, 0 - ldr r0, =gUnknown_082EC690 + ldr r0, =gDefaultOamAttributes mov r12, r0 movs r2, 0x4 mov r8, r2 @@ -649872,7 +649898,7 @@ sub_8152254: ; 8152254 bcs @08152292 ldr r0, =0x030024f8 mov r12, r0 - ldr r4, =gUnknown_082EC690 + ldr r4, =gDefaultOamAttributes adds r2, r5, 0 @0815227A: lsls r1, r3, 3 @@ -649972,7 +649998,7 @@ sub_81522D4: ; 81522D4 lsls r0, r6, 3 ldr r1, =0x030024f8 adds r0, r1 - ldr r1, =gUnknown_082EC690 + ldr r1, =gDefaultOamAttributes ldm r1!, {r2,r3} stm r0!, {r2,r3} b @081523C0 @@ -650375,7 +650401,7 @@ sub_81525D0: ; 81525D0 lsls r1, r5, 3 ldr r0, =0x030024f8 adds r1, r0 - ldr r0, =gUnknown_082EC690 + ldr r0, =gDefaultOamAttributes ldm r0!, {r2,r3} stm r1!, {r2,r3} adds r0, r5, 0 @@ -653805,7 +653831,7 @@ objc_80DAF50: ; 81540A8 thumb_func_start sub_8154228 sub_8154228: ; 8154228 push {r4,lr} - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x20] movs r1, 0 movs r2, 0 @@ -653967,7 +653993,7 @@ oei_shadow: ; 8154340 ldrb r0, [r1, 0x5] bl GetFieldObjectGraphicsInfo adds r4, r0, 0 - ldr r2, =gUnknown_085059F8 + ldr r2, =gFieldEffectObjectTemplatePointers ldr r1, =gUnknown_085CDC3E ldrb r0, [r4, 0xC] lsls r0, 26 @@ -654044,7 +654070,7 @@ oamc_shadow: ; 81543E4 beq @08154412 adds r0, r5, 0 movs r1, 0x3 - bl oe_stop + bl FieldEffectStop b @08154498 @08154412: mov r0, sp @@ -654108,7 +654134,7 @@ oamc_shadow: ; 81543E4 @08154490: adds r0, r5, 0 movs r1, 0x3 - bl oe_stop + bl FieldEffectStop @08154498: add sp, 0x4 pop {r4,r5} @@ -654135,7 +654161,7 @@ oei_grass_normal: ; 81544AC movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x10] mov r1, sp movs r2, 0 @@ -654281,7 +654307,7 @@ unc_grass_normal: ; 8154550 @081545F0: adds r0, r5, 0 movs r1, 0x4 - bl oe_stop + bl FieldEffectStop b @08154648 .align 2, 0 .pool @@ -654340,7 +654366,7 @@ sub_8154658: ; 8154658 movs r2, 0x8 movs r3, 0xC bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x28] movs r2, 0 ldrsh r1, [r4, r2] @@ -654478,7 +654504,7 @@ sub_8154758: ; 8154758 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x3C] mov r1, sp movs r2, 0 @@ -654625,7 +654651,7 @@ unc_grass_tall: ; 8154800 @081548A0: adds r0, r5, 0 movs r1, 0x11 - bl oe_stop + bl FieldEffectStop b @081548EA .align 2, 0 .pool @@ -654676,7 +654702,7 @@ sub_81548FC: ; 81548FC movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x40] movs r2, 0 ldrsh r1, [r4, r2] @@ -654737,7 +654763,7 @@ sub_815496C: ; 815496C lsls r1, 2 ldr r0, =0x02037350 adds r5, r1, r0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x78] movs r1, 0 movs r2, 0 @@ -654836,7 +654862,7 @@ sub_8154A10: ; 8154A10 @08154A4E: adds r0, r4, 0 movs r1, 0x29 - bl oe_stop + bl FieldEffectStop b @08154AF2 .align 2, 0 .pool @@ -654935,7 +654961,7 @@ sub_8154B04: ; 8154B04 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x2C] movs r2, 0 ldrsh r1, [r4, r2] @@ -654990,7 +655016,7 @@ sub_8154B78: ; 8154B78 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x5C] movs r2, 0 ldrsh r1, [r4, r2] @@ -655046,7 +655072,7 @@ sub_8154BEC: ; 8154BEC movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x6C] movs r2, 0 ldrsh r1, [r4, r2] @@ -655163,7 +655189,7 @@ sub_8154CA0: ; 8154CA0 lsls r1, 24 lsrs r1, 24 adds r0, r4, 0 - bl oe_stop + bl FieldEffectStop @08154CE4: pop {r4} pop {r0} @@ -655185,7 +655211,7 @@ sub_8154CEC: ; 8154CEC lsls r1, 2 ldr r0, =0x02037350 adds r5, r1, r0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x34] movs r1, 0 movs r2, 0 @@ -655274,7 +655300,7 @@ sub_8154D90: ; 8154D90 @08154DC0: adds r0, r4, 0 movs r1, 0xF - bl oe_stop + bl FieldEffectStop b @08154E0A @08154DCA: ldr r3, =0x02020630 @@ -655326,7 +655352,7 @@ sub_8154E1C: ; 8154E1C movs r2, 0x8 movs r3, 0xC bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x38] movs r2, 0 ldrsh r1, [r4, r2] @@ -655381,7 +655407,7 @@ oei_water_drop_tall: ; 8154E8C movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x30] movs r2, 0 ldrsh r1, [r4, r2] @@ -655442,7 +655468,7 @@ sub_8154EFC: ; 8154EFC lsls r1, 2 ldr r0, =0x02037350 adds r6, r1, r0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x34] movs r1, 0 movs r2, 0 @@ -655542,7 +655568,7 @@ sub_8154FB4: ; 8154FB4 @08154FEE: adds r0, r4, 0 movs r1, 0x22 - bl oe_stop + bl FieldEffectStop b @08155046 .align 2, 0 .pool @@ -655594,7 +655620,7 @@ sub_8154FB4: ; 8154FB4 thumb_func_start oei_ripples oei_ripples: ; 8155054 push {r4,lr} - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x14] ldr r4, =0x02038c08 movs r2, 0 @@ -655654,7 +655680,7 @@ sub_81550B4: ; 81550B4 lsls r1, 2 ldr r0, =0x02037350 adds r5, r1, r0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x7C] movs r1, 0 movs r2, 0 @@ -655751,7 +655777,7 @@ sub_8155158: ; 8155158 @08155192: adds r0, r4, 0 movs r1, 0x2A - bl oe_stop + bl FieldEffectStop b @081551E4 .align 2, 0 .pool @@ -655806,7 +655832,7 @@ sub_81551F0: ; 81551F0 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x44] movs r2, 0 ldrsh r1, [r4, r2] @@ -655859,7 +655885,7 @@ sub_815525C: ; 815525C movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x48] movs r2, 0 ldrsh r1, [r4, r2] @@ -655912,7 +655938,7 @@ sub_81552C8: ; 81552C8 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x4C] movs r2, 0 ldrsh r1, [r4, r2] @@ -655965,7 +655991,7 @@ sub_8155334: ; 8155334 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x50] movs r2, 0 ldrsh r1, [r4, r2] @@ -656030,7 +656056,7 @@ ash: ; 81553A0 asrs r3, 16 str r3, [r4, 0x14] movs r0, 0x7 - bl oe_exec + bl FieldEffectStart pop {r4} pop {r0} bx r0 @@ -656055,7 +656081,7 @@ oei_ash: ; 81553D4 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x18] mov r1, sp movs r2, 0 @@ -656214,7 +656240,7 @@ sub_815550C: ; 815550C beq @0815552C adds r0, r4, 0 movs r1, 0x7 - bl oe_stop + bl FieldEffectStop @0815552C: pop {r4} pop {r0} @@ -656230,7 +656256,7 @@ sub_8155534: ; 8155534 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x1C] movs r2, 0 ldrsh r1, [r4, r2] @@ -656268,7 +656294,7 @@ sub_8155534: ; 8155534 strh r0, [r1, 0x3C] @0815558E: movs r0, 0x8 - bl oe_active_list_remove + bl FieldEffectActiveListRemove adds r0, r5, 0 pop {r4,r5} pop {r1} @@ -656691,7 +656717,7 @@ sub_8155890: ; 8155890 movs r2, 0x8 movs r3, 0xC bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x24] movs r2, 0 ldrsh r1, [r4, r2] @@ -656752,7 +656778,7 @@ sub_8155900: ; 8155900 lsls r1, 2 ldr r0, =0x02037350 adds r6, r1, r0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x74] movs r1, 0 movs r2, 0 @@ -656859,7 +656885,7 @@ sub_81559BC: ; 81559BC @081559F6: adds r0, r4, 0 movs r1, 0x27 - bl oe_stop + bl FieldEffectStop b @08155A76 .align 2, 0 .pool @@ -656939,7 +656965,7 @@ sub_8155A88: ; 8155A88 movs r2, 0x8 movs r3, 0 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers adds r0, 0x88 ldr r0, [r0] movs r2, 0 @@ -657004,7 +657030,7 @@ sub_8155AEC: ; 8155AEC beq @08155B20 adds r0, r4, 0 movs r1, 0x35 - bl oe_stop + bl FieldEffectStop @08155B20: pop {r4} pop {r0} @@ -657022,7 +657048,7 @@ sub_8155B2C: ; 8155B2C movs r2, 0x8 movs r3, 0x4 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x58] movs r2, 0 ldrsh r1, [r4, r2] @@ -657070,41 +657096,45 @@ sub_8155B2C: ; 8155B2C .pool thumb_func_end sub_8155B2C - thumb_func_start sub_8155BA0 -sub_8155BA0: ; 8155BA0 + thumb_func_start ShowTreeDisguiseFieldEffect +; u8 ShowTreeDisguiseFieldEffect() +ShowTreeDisguiseFieldEffect: ; 8155BA0 push {lr} movs r0, 0x1C movs r1, 0x18 movs r2, 0x4 - bl sub_8155BD0 + bl ShowDisguiseFieldEffect pop {r1} bx r1 - thumb_func_end sub_8155BA0 + thumb_func_end ShowTreeDisguiseFieldEffect - thumb_func_start sub_8155BB0 -sub_8155BB0: ; 8155BB0 + thumb_func_start ShowMountainDisguiseFieldEffect +; u8 ShowMountainDisguiseFieldEffect() +ShowMountainDisguiseFieldEffect: ; 8155BB0 push {lr} movs r0, 0x1D movs r1, 0x19 movs r2, 0x3 - bl sub_8155BD0 + bl ShowDisguiseFieldEffect pop {r1} bx r1 - thumb_func_end sub_8155BB0 + thumb_func_end ShowMountainDisguiseFieldEffect - thumb_func_start sub_8155BC0 -sub_8155BC0: ; 8155BC0 + thumb_func_start ShowSandDisguiseFieldEffect +; u8 ShowSandDisguiseFieldEffect() +ShowSandDisguiseFieldEffect: ; 8155BC0 push {lr} movs r0, 0x24 movs r1, 0x1C movs r2, 0x2 - bl sub_8155BD0 + bl ShowDisguiseFieldEffect pop {r1} bx r1 - thumb_func_end sub_8155BC0 + thumb_func_end ShowSandDisguiseFieldEffect - thumb_func_start sub_8155BD0 -sub_8155BD0: ; 8155BD0 + thumb_func_start ShowDisguiseFieldEffect +; u8 ShowDisguiseFieldEffect(u8 fieldEffectId, u8 fieldEffectObjectId, u8 paletteSlot) +ShowDisguiseFieldEffect: ; 8155BD0 push {r4-r7,lr} mov r7, r8 push {r7} @@ -657126,13 +657156,13 @@ sub_8155BD0: ; 8155BD0 cmp r0, 0 beq @08155C08 adds r0, r4, 0 - bl oe_active_list_remove + bl FieldEffectActiveListRemove movs r0, 0x40 b @08155C74 .align 2, 0 .pool @08155C08: - ldr r1, =gUnknown_085059F8 + ldr r1, =gFieldEffectObjectTemplatePointers lsls r0, r6, 2 adds r0, r1 ldr r0, [r0] @@ -657195,7 +657225,7 @@ sub_8155BD0: ; 8155BD0 bx r1 .align 2, 0 .pool - thumb_func_end sub_8155BD0 + thumb_func_end ShowDisguiseFieldEffect thumb_func_start sub_8155C88 sub_8155C88: ; 8155C88 @@ -657220,7 +657250,7 @@ sub_8155C88: ; 8155C88 lsls r1, 24 lsrs r1, 24 adds r0, r5, 0 - bl oe_stop + bl FieldEffectStop @08155CB8: ldr r4, =0x02037350 mov r0, sp @@ -657308,7 +657338,7 @@ sub_8155C88: ; 8155C88 lsls r1, 24 lsrs r1, 24 adds r0, r5, 0 - bl oe_stop + bl FieldEffectStop @08155D68: add sp, 0x4 pop {r4,r5} @@ -657394,7 +657424,7 @@ sub_8155DDC: ; 8155DDC movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers adds r0, 0x8C ldr r0, [r0] movs r2, 0 @@ -657475,7 +657505,7 @@ sub_8155E50: ; 8155E50 ble @08155E9A adds r0, r2, 0 movs r1, 0x36 - bl oe_stop + bl FieldEffectStop @08155E9A: pop {r0} bx r0 @@ -657840,7 +657870,7 @@ sub_8155F80: ; 8155F80 bl lcd_io_set adds r0, r5, 0 movs r1, 0x40 - bl oe_stop + bl FieldEffectStop @08156156: movs r3, 0x32 ldrsh r0, [r5, r3] @@ -657892,7 +657922,7 @@ sub_8156194: ; 8156194 lsls r1, 24 lsrs r1, 24 adds r0, r4, 0 - bl oe_stop + bl FieldEffectStop b @081561C8 @081561B2: adds r0, r4, 0 @@ -657924,7 +657954,7 @@ sub_81561D0: ; 81561D0 lsls r1, 24 lsrs r1, 24 adds r0, r2, 0 - bl oe_stop + bl FieldEffectStop b @081561F6 @081561EE: adds r0, r2, 0 @@ -665964,7 +665994,7 @@ sub_8159EF0: ; 8159EF0 hm2_sweet_scent: ; 8159F10 push {lr} movs r0, 0x33 - bl oe_exec + bl FieldEffectStart bl brm_get_pokemon_selection ldr r1, =0x02038c08 lsls r0, 24 @@ -666049,7 +666079,7 @@ sub_8159F5C: ; 8159F5C movs r0, 0 strh r0, [r1, 0x8] movs r0, 0x33 - bl oe_active_list_remove + bl FieldEffectActiveListRemove add sp, 0x4 pop {r4,r5} pop {r0} @@ -726656,7 +726686,7 @@ sub_8179834: ; 8179834 lsrs r0, 24 str r0, [r1] movs r0, 0x3C - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -726667,7 +726697,7 @@ sub_8179834: ; 8179834 sub_8179850: ; 8179850 push {lr} movs r0, 0x3C - bl oe_active_list_remove + bl FieldEffectActiveListRemove bl sub_8179860 pop {r0} bx r0 @@ -726755,7 +726785,7 @@ sub_8179918: ; 8179918 lsrs r0, 24 str r0, [r1] movs r0, 0x3C - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -726766,7 +726796,7 @@ sub_8179918: ; 8179918 sub_8179934: ; 8179934 push {lr} movs r0, 0x3C - bl oe_active_list_remove + bl FieldEffectActiveListRemove bl sub_8179944 pop {r0} bx r0 @@ -732385,7 +732415,7 @@ hm_teleport_run_dp02scr: ; 817C8FC push {lr} bl new_game movs r0, 0x3F - bl oe_exec + bl FieldEffectStart bl brm_get_pokemon_selection ldr r1, =0x02038c08 lsls r0, 24 @@ -732425,7 +732455,7 @@ sub_817C91C: ; 817C91C sub_817C94C: ; 817C94C push {lr} movs r0, 0x3F - bl oe_active_list_remove + bl FieldEffectActiveListRemove bl sub_80B7FC8 pop {r0} bx r0 @@ -844138,7 +844168,7 @@ hm_surf_run_dp02scr: ; 81B5804 lsrs r0, 24 str r0, [r1] movs r0, 0x9 - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -844246,7 +844276,7 @@ hm2_waterfall: ; 81B58D4 lsrs r0, 24 str r0, [r1] movs r0, 0x2B - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -844308,7 +844338,7 @@ sub_81B5958: ; 81B5958 lsrs r0, 24 str r0, [r1] movs r0, 0x2C - bl oe_exec + bl FieldEffectStart pop {r0} bx r0 .align 2, 0 @@ -905956,7 +905986,7 @@ sub_81D4A90: ; 81D4A90 movs r0, 0x1 strb r0, [r1] @081D4B3A: - ldr r4, =gUnknown_0850C9C8 + ldr r4, =gFieldEffectObjectPaletteInfo1 adds r0, r4, 0 bl gpu_pal_obj_alloc_tag_and_apply ldrh r0, [r4, 0x4] @@ -905976,7 +906006,7 @@ sub_81D4A90: ; 81D4A90 movs r2, 0x8 movs r3, 0x8 bl sub_80930E0 - ldr r0, =gUnknown_085059F8 + ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x3C] mov r1, sp movs r2, 0 diff --git a/asm/gpu_obj.s b/asm/gpu_obj.s index c1051759f..bddfe5b4e 100644 --- a/asm/gpu_obj.s +++ b/asm/gpu_obj.s @@ -554,7 +554,7 @@ super_sprites_fill: ; 8006D68 bcs @08006DD8 mov r1, sp ldr r5, =0x030022f8 - ldr r0, =gUnknown_082EC690 + ldr r0, =gDefaultOamAttributes ldr r2, [r0] ldr r3, [r0, 0x4] @08006DBE: @@ -1044,7 +1044,7 @@ reset_super_sprites: ; 8007150 cmp r3, r4 bcs @08007178 ldr r6, =0x030022f8 - ldr r5, =gUnknown_082EC690 + ldr r5, =gDefaultOamAttributes @08007162: lsls r0, r3, 3 adds r0, r6 diff --git a/asm/string_util.s b/asm/string_util.s index dbc64ca8a..482c14b81 100644 --- a/asm/string_util.s +++ b/asm/string_util.s @@ -231,9 +231,9 @@ CompareString: ; 8008C44 bx r1 thumb_func_end CompareString - thumb_func_start StringCompare_LimitN -; u8 StringCompare_LimitN(u8 *s1, u8 *s2, u32 n) -StringCompare_LimitN: ; 8008C68 + thumb_func_start CompareString_LimitN +; u8 CompareString_LimitN(u8 *s1, u8 *s2, u32 n) +CompareString_LimitN: ; 8008C68 push {r4,lr} adds r3, r0, 0 b @08008C80 @@ -260,7 +260,7 @@ StringCompare_LimitN: ; 8008C68 pop {r4} pop {r1} bx r1 - thumb_func_end StringCompare_LimitN + thumb_func_end CompareString_LimitN thumb_func_start IsStringLengthLessThanN ; BOOL IsStringLengthLessThanN(u8 *s, s32 n) @@ -1027,9 +1027,9 @@ RepeatStringTerminator: ; 800917C bx r1 thumb_func_end RepeatStringTerminator - thumb_func_start StringCopy_LimitN_Multibyte -; u8 *StringCopy_LimitN_Multibyte(u8 *dest, u8 *src, u32 n) -StringCopy_LimitN_Multibyte: ; 800918C + thumb_func_start CopyString_LimitN_Multibyte +; u8 *CopyString_LimitN_Multibyte(u8 *dest, u8 *src, u32 n) +CopyString_LimitN_Multibyte: ; 800918C push {r4,r5,lr} adds r4, r0, 0 adds r3, r1, 0 @@ -1065,7 +1065,7 @@ StringCopy_LimitN_Multibyte: ; 800918C pop {r4,r5} pop {r1} bx r1 - thumb_func_end StringCopy_LimitN_Multibyte + thumb_func_end CopyString_LimitN_Multibyte thumb_func_start GetStringLength_Multibyte ; u32 GetStringLength_Multibyte(u8 *s) @@ -1192,7 +1192,7 @@ sub_800924C: ; 800924C thumb_func_end sub_800924C thumb_func_start GetExtendedControlCodeLength -; u8 GetExtendedControlCodeLength(u8 command) +; u8 GetExtendedControlCodeLength(u8 code) GetExtendedControlCodeLength: ; 800927C push {lr} lsls r0, 24 diff --git a/build.bat b/build.bat index 97761d086..304a254e2 100644 --- a/build.bat +++ b/build.bat @@ -1,4 +1,4 @@ as -mcpu=arm7tdmi asm/emerald.s -o emerald.o -ld -T ld_script.txt -T wram_syms.txt -o emerald.elf emerald.o -objcopy -O binary emerald.elf emerald.gba -fc /b base_emerald.gba emerald.gba +ld -T ld_script.txt -T wram_syms.txt -o pokeemerald.elf emerald.o +objcopy -O binary pokeemerald.elf pokeemerald.gba +diff base_emerald.gba pokeemerald.gba diff --git a/data/data1.s b/data/data1.s index ceb3b09fc..bbd82abe2 100644 --- a/data/data1.s +++ b/data/data1.s @@ -1203,8 +1203,10 @@ gUnknown_082DB9C1: ; 82DB9C1 gUnknown_082DB9C8: ; 82DB9C8 .incbin "base_emerald.gba", 0x2db9c8, 0xc -gUnknown_082DB9D4: ; 82DB9D4 - .incbin "base_emerald.gba", 0x2db9d4, 0x334 +; 82DB9D4 + .include "data/field_effect_scripts.s" + + .align 2, 0 gUnknown_082DBD08: ; 82DBD08 .incbin "base_emerald.gba", 0x2dbd08, 0x34 diff --git a/data/data2.s b/data/data2.s index 02f387c78..794eb79d6 100644 --- a/data/data2.s +++ b/data/data2.s @@ -138,8 +138,11 @@ gUnknown_082EC634: ; 82EC634 gUnknown_082EC64C: ; 82EC64C .incbin "base_emerald.gba", 0x2ec64c, 0x44 -gUnknown_082EC690: ; 82EC690 - .incbin "base_emerald.gba", 0x2ec690, 0x8 +; off-screen and low priority relative to background +gDefaultOamAttributes: ; 82EC690 + .2byte 160 ; Y + .2byte 304 ; X + .2byte 3 << 10 ; priority .align 2, 0 @@ -2394,8 +2397,8 @@ gUnknown_085055CD: ; 85055CD ; 8505620 .include "data/graphics/field_objects/field_object_graphics_info_pointers.s" -gUnknown_085059F8: ; 85059F8 - .incbin "base_emerald.gba", 0x5059f8, 0x94 +; 85059F8 + .include "data/graphics/field_objects/field_effect_object_template_pointers.s" ; 8505A8C .include "data/graphics/field_objects/field_object_pic_tables.s" @@ -2427,10 +2430,10 @@ gUnknown_0850BE38: ; 850BE38 ; 850BE48 .include "data/graphics/field_objects/berry_tree_graphics_tables.s" - .incbin "base_emerald.gba", 0x50c9c0, 0x8 +; 850C9C0 + .include "data/graphics/field_objects/field_effect_objects.s" -gUnknown_0850C9C8: ; 850C9C8 - .incbin "base_emerald.gba", 0x50c9c8, 0xd14 + .incbin "base_emerald.gba", 0x50d6d4, 0x8 gUnknown_0850D6DC: ; 850D6DC .incbin "base_emerald.gba", 0x50d6dc, 0x10 @@ -3417,7 +3420,19 @@ gUnknown_08553A78: ; 8553A78 .incbin "base_emerald.gba", 0x553a78, 0x4 gUnknown_08553A7C: ; 8553A7C - .incbin "base_emerald.gba", 0x553a7c, 0x73d4 + .incbin "base_emerald.gba", 0x553a7c, 0x6f14 + + .align 2, 0 + +gFieldEffectObjectPalette4: ; 855A990 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_04.gbapal" + + .incbin "base_emerald.gba", 0x55a9b0, 0x480 + + .align 2, 0 + +gFieldEffectObjectPalette5: ; 855AE30 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_05.gbapal" gUnknown_0855AE50: ; 855AE50 .incbin "base_emerald.gba", 0x55ae50, 0x200 @@ -3453,7 +3468,19 @@ gUnknown_0855C230: ; 855C230 .incbin "base_emerald.gba", 0x55c230, 0x14 gUnknown_0855C244: ; 855C244 - .incbin "base_emerald.gba", 0x55c244, 0x68 + .incbin "base_emerald.gba", 0x55c244, 0x18 + + .align 2, 0 + +gFieldEffectObjectPaletteInfo4: ; 855C25C + obj_pal gFieldEffectObjectPalette4, 0x1007 + + .align 2, 0 + +gFieldEffectObjectPaletteInfo5: ; 855C264 + obj_pal gFieldEffectObjectPalette5, 0x1010 + + .incbin "base_emerald.gba", 0x55c26c, 0x40 gUnknown_0855C2AC: ; 855C2AC .incbin "base_emerald.gba", 0x55c2ac, 0x18 @@ -4056,7 +4083,12 @@ gUnknown_0857C608: ; 857C608 .incbin "base_emerald.gba", 0x57c608, 0x2 gUnknown_0857C60A: ; 857C60A - .incbin "base_emerald.gba", 0x57c60a, 0x62 + .incbin "base_emerald.gba", 0x57c60a, 0x5a + + .align 2, 0 + +gFieldEffectObjectPaletteInfo6: ; 857C664 + obj_pal gFieldEffectObjectPalette6, 0x1000 gUnknown_0857C66C: ; 857C66C .incbin "base_emerald.gba", 0x57c66c, 0x18 @@ -4705,7 +4737,21 @@ gUnknown_0858D8F0: ; 858D8F0 .incbin "base_emerald.gba", 0x58d8f0, 0x80 gUnknown_0858D970: ; 858D970 - .incbin "base_emerald.gba", 0x58d970, 0xc90 + .incbin "base_emerald.gba", 0x58d970, 0x2a8 + + .align 2, 0 + +gFieldEffectObjectPalette7: ; 858DC18 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_07.gbapal" + + .incbin "base_emerald.gba", 0x58dc38, 0x580 + + .align 2, 0 + +gFieldEffectObjectPalette8: ; 858E1B8 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_08.gbapal" + + .incbin "base_emerald.gba", 0x58e1d8, 0x428 gUnknown_0858E600: ; 858E600 .incbin "base_emerald.gba", 0x58e600, 0x18 @@ -4714,10 +4760,31 @@ gUnknown_0858E618: ; 858E618 .incbin "base_emerald.gba", 0x58e618, 0x18 gUnknown_0858E630: ; 858E630 - .incbin "base_emerald.gba", 0x58e630, 0x5c + .incbin "base_emerald.gba", 0x58e630, 0x18 + + .align 2, 0 + +gFieldEffectObjectPaletteInfo7: ; 858E648 + obj_pal gFieldEffectObjectPalette7, 0x1003 + + .align 2, 0 + +gFieldEffectObjectPaletteInfo8: ; 858E650 + obj_pal gFieldEffectObjectPalette8, 0x1008 + + .incbin "base_emerald.gba", 0x58e658, 0x34 gUnknown_0858E68C: ; 858E68C - .incbin "base_emerald.gba", 0x58e68c, 0x1d8 + .incbin "base_emerald.gba", 0x58e68c, 0x18 + + .align 2, 0 + +; This uses one of the secret base palettes, so there is no +; "field_effect_object_palette_09.pal" file. +gFieldEffectObjectPaletteInfo9: ; 858E6A4 + obj_pal gTilesetPalettes_SecretBase + 5 * 0x20, 0x100E + + .incbin "base_emerald.gba", 0x58e6ac, 0x1b8 gUnknown_0858E864: ; 858E864 .incbin "base_emerald.gba", 0x58e864, 0x1c @@ -6546,8 +6613,17 @@ gUnknown_085C8E24: ; 85C8E24 gUnknown_085C8E68: ; 85C8E68 .incbin "base_emerald.gba", 0x5c8e68, 0x6c -gUnknown_085C8ED4: ; 85C8ED4 - .incbin "base_emerald.gba", 0x5c8ed4, 0x108 + .align 2, 0 + +gFieldEffectObjectPalette10: ; 85C8ED4 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_10.gbapal" + + .align 2, 0 + +gFieldEffectObjectPaletteInfo10: ; 85C8EF4 + obj_pal gFieldEffectObjectPalette10, 0x1009 + + .incbin "base_emerald.gba", 0x5c8efc, 0xe0 gUnknown_085C8FDC: ; 85C8FDC .incbin "base_emerald.gba", 0x5c8fdc, 0x14 diff --git a/data/field_effect_scripts.s b/data/field_effect_scripts.s new file mode 100644 index 000000000..7485e7c74 --- /dev/null +++ b/data/field_effect_scripts.s @@ -0,0 +1,341 @@ + .align 2, 0 + +gFieldEffectScriptPointers: ; 82DB9D4 + .4byte gFieldEffectScript_ExclamationMarkIcon1 + .4byte gFieldEffectScript_UseCutOnTallGrass + .4byte gFieldEffectScript_UseCutOnTree + .4byte gFieldEffectScript_Shadow + .4byte gFieldEffectScript_TallGrass + .4byte gFieldEffectScript_Ripple + .4byte gFieldEffectScript_FieldMoveShowMon + .4byte gFieldEffectScript_Ash + .4byte gFieldEffectScript_SurfBlob + .4byte gFieldEffectScript_UseSurf + .4byte gFieldEffectScript_GroundImpactDust + .4byte gFieldEffectScript_Unknown11 + .4byte gFieldEffectScript_BikeHopTallGrass + .4byte gFieldEffectScript_SandFootprints + .4byte gFieldEffectScript_BikeHopBigSplash + .4byte gFieldEffectScript_Splash + .4byte gFieldEffectScript_BikeHopSmallSplash + .4byte gFieldEffectScript_LongGrass + .4byte gFieldEffectScript_Unknown18 + .4byte gFieldEffectScript_Unknown19 + .4byte gFieldEffectScript_Unknown20 + .4byte gFieldEffectScript_Unknown21 + .4byte gFieldEffectScript_Unknown22 + .4byte gFieldEffectScript_BerryTreeGrowthSparkle + .4byte gFieldEffectScript_DeepSandFootprints + .4byte gFieldEffectScript_Unknown25 + .4byte gFieldEffectScript_Unknown26 + .4byte gFieldEffectScript_Unknown27 + .4byte gFieldEffectScript_TreeDisguise + .4byte gFieldEffectScript_MountainDisguise + .4byte gFieldEffectScript_Unknown30 + .4byte gFieldEffectScript_UseFly + .4byte gFieldEffectScript_FlyIn + .4byte gFieldEffectScript_ExclamationMarkIcon2 + .4byte gFieldEffectScript_FeetInFlowingWater + .4byte gFieldEffectScript_BikeTireTracks + .4byte gFieldEffectScript_SandDisguisePlaceholder + .4byte gFieldEffectScript_UseRockSmash + .4byte gFieldEffectScript_Unknown38 + .4byte gFieldEffectScript_Unknown39 + .4byte gFieldEffectScript_Unknown40 + .4byte gFieldEffectScript_ShortGrass + .4byte gFieldEffectScript_HotSpringsWater + .4byte gFieldEffectScript_Unknown43 + .4byte gFieldEffectScript_Unknown44 + .4byte gFieldEffectScript_Unknown45 + .4byte gFieldEffectScript_HeartIcon + .4byte gFieldEffectScript_Unknown47 + .4byte gFieldEffectScript_Unknown48 + .4byte gFieldEffectScript_JumpOutOfAsh + .4byte gFieldEffectScript_Unknown50 + .4byte gFieldEffectScript_Unknown51 + .4byte gFieldEffectScript_Unknown52 + .4byte gFieldEffectScript_Bubbles + .4byte gFieldEffectScript_Unknown54 + .4byte gFieldEffectScript_Unknown55 + .4byte gFieldEffectScript_Unknown56 + .4byte gFieldEffectScript_Unknown57 + .4byte gFieldEffectScript_Unknown58 + .4byte gFieldEffectScript_FieldMoveShowMonInit + .4byte gFieldEffectScript_Unknown60 + .4byte gFieldEffectScript_Unknown61 + .4byte gFieldEffectScript_Unknown62 + .4byte gFieldEffectScript_Unknown63 + .4byte gFieldEffectScript_Rayquaza + .4byte gFieldEffectScript_Unknown65 + .4byte gFieldEffectScript_Unknown66 + +gFieldEffectScript_ExclamationMarkIcon1: ; 82DBAE0 + field_eff_callnative oei_exclamation_mark + field_eff_end + +gFieldEffectScript_UseCutOnTallGrass: ; 82DBAE6 + field_eff_callnative sub_80D3A6C + field_eff_end + +gFieldEffectScript_UseCutOnTree: ; 82DBAEC + field_eff_callnative sub_80D3ABC + field_eff_end + +gFieldEffectScript_Shadow: ; 82DBAF2 + field_eff_callnative oei_shadow + field_eff_end + +gFieldEffectScript_TallGrass: ; 82DBAF8 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, oei_grass_normal + field_eff_end + +gFieldEffectScript_Ripple: ; 82DBB02 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, oei_ripples + field_eff_end + +gFieldEffectScript_FieldMoveShowMon: ; 82DBB0C + field_eff_callnative sub_80B849C + field_eff_end + +gFieldEffectScript_Ash: ; 82DBB12 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, oei_ash + field_eff_end + +gFieldEffectScript_SurfBlob: ; 82DBB1C + field_eff_callnative sub_8155534 + field_eff_end + +gFieldEffectScript_UseSurf: ; 82DBB22 + field_eff_callnative sub_80B8D44 + field_eff_end + +gFieldEffectScript_GroundImpactDust: ; 82DBB28 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8155890 + field_eff_end + +gFieldEffectScript_Unknown11: ; 82DBB32 + field_eff_callnative oei_sweet_scent + field_eff_end + +gFieldEffectScript_BikeHopTallGrass: ; 82DBB38 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, sub_8154658 + field_eff_end + +gFieldEffectScript_SandFootprints: ; 82DBB42 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8154B04 + field_eff_end + +gFieldEffectScript_BikeHopBigSplash: ; 82DBB4C + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, oei_water_drop_tall + field_eff_end + +gFieldEffectScript_Splash: ; 82DBB56 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8154CEC + field_eff_end + +gFieldEffectScript_BikeHopSmallSplash: ; 82DBB60 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8154E1C + field_eff_end + +gFieldEffectScript_LongGrass: ; 82DBB6A + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, sub_8154758 + field_eff_end + +gFieldEffectScript_Unknown18: ; 82DBB74 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, sub_81548FC + field_eff_end + +gFieldEffectScript_Unknown19: ; 82DBB7E + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, sub_81551F0 + field_eff_end + +gFieldEffectScript_Unknown20: ; 82DBB88 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, sub_815525C + field_eff_end + +gFieldEffectScript_Unknown21: ; 82DBB92 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_81552C8 + field_eff_end + +gFieldEffectScript_Unknown22: ; 82DBB9C + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8155334 + field_eff_end + +gFieldEffectScript_BerryTreeGrowthSparkle: ; 82DBBA6 + field_eff_callnative sub_8155B2C + field_eff_end + +gFieldEffectScript_DeepSandFootprints: ; 82DBBAC + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8154B78 + field_eff_end + +gFieldEffectScript_Unknown25: ; 82DBBB6 + field_eff_loadfadedpal gFieldEffectObjectPaletteInfo4 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_80B61A0 + field_eff_end + +gFieldEffectScript_Unknown26: ; 82DBBC5 + field_eff_callnative sub_80FA208 + field_eff_end + +gFieldEffectScript_Unknown27: ; 82DBBCB + field_eff_callnative sub_80FA36C + field_eff_end + +gFieldEffectScript_TreeDisguise: ; 82DBBD1 + field_eff_callnative ShowTreeDisguiseFieldEffect + field_eff_end + +gFieldEffectScript_MountainDisguise: ; 82DBBD7 + field_eff_callnative ShowMountainDisguiseFieldEffect + field_eff_end + +gFieldEffectScript_Unknown30: ; 82DBBDD + field_eff_callnative sub_80B90CC + field_eff_end + +gFieldEffectScript_UseFly: ; 82DBBE3 + field_eff_callnative sub_80B91A4 + field_eff_end + +gFieldEffectScript_FlyIn: ; 82DBBE9 + field_eff_callnative sub_80B97C0 + field_eff_end + +gFieldEffectScript_ExclamationMarkIcon2: ; 82DBBEF + field_eff_callnative sub_80B4658 + field_eff_end + +gFieldEffectScript_FeetInFlowingWater: ; 82DBBF5 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8154EFC + field_eff_end + +gFieldEffectScript_BikeTireTracks: ; 82DBBFF + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8154BEC + field_eff_end + +gFieldEffectScript_SandDisguisePlaceholder: ; 82DBC09 + field_eff_callnative ShowSandDisguiseFieldEffect + field_eff_end + +gFieldEffectScript_UseRockSmash: ; 82DBC0F + field_eff_callnative oei_rocksmash + field_eff_end + +gFieldEffectScript_Unknown40: ; 82DBC15 + field_eff_callnative sub_8145E2C + field_eff_end + +gFieldEffectScript_Unknown38: ; 82DBC1B + field_eff_callnative sub_8135780 + field_eff_end + +gFieldEffectScript_Unknown39: ; 82DBC21 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8155900 + field_eff_end + +gFieldEffectScript_ShortGrass: ; 82DBC2B + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, sub_815496C + field_eff_end + +gFieldEffectScript_HotSpringsWater: ; 82DBC35 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo1, sub_81550B4 + field_eff_end + +gFieldEffectScript_Unknown43: ; 82DBC3F + field_eff_callnative oei_waterfall + field_eff_end + +gFieldEffectScript_Unknown44: ; 82DBC45 + field_eff_callnative sub_80B74D0 + field_eff_end + +gFieldEffectScript_Unknown45: ; 82DBC4B + field_eff_loadpal gFieldEffectObjectPaletteInfo10 + field_eff_callnative sub_81470D0 + field_eff_end + +gFieldEffectScript_HeartIcon: ; 82DBC56 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_80B4690 + field_eff_end + +gFieldEffectScript_Unknown47: ; 82DBC60 + field_eff_callnative sub_80FA6FC + field_eff_end + +gFieldEffectScript_Unknown48: ; 82DBC66 + field_eff_callnative sub_80FA700 + field_eff_end + +gFieldEffectScript_JumpOutOfAsh: ; 82DBC6C + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo2, sub_80B7C48 + field_eff_end + +gFieldEffectScript_Unknown50: ; 82DBC76 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo2, sub_80B79F4 + field_eff_end + +gFieldEffectScript_Unknown51: ; 82DBC80 + field_eff_callnative sub_8159F2C + field_eff_end + +gFieldEffectScript_Unknown52: ; 82DBC86 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo9, sub_80FAA7C + field_eff_end + +gFieldEffectScript_Bubbles: ; 82DBC90 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo0, sub_8155A88 + field_eff_end + +gFieldEffectScript_Unknown54: ; 82DBC9A + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo3, sub_8155DDC + field_eff_end + +gFieldEffectScript_Unknown55: ; 82DBCA4 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo7, sub_80FA13C + field_eff_end + +gFieldEffectScript_Unknown56: ; 82DBCAE + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo8, sub_80FA248 + field_eff_end + +gFieldEffectScript_Unknown57: ; 82DBCB8 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo8, sub_80FA3AC + field_eff_end + +gFieldEffectScript_Unknown58: ; 82DBCC2 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo6, sub_80D3B00 + field_eff_end + +gFieldEffectScript_FieldMoveShowMonInit: ; 82DBCCC + field_eff_callnative sub_80B84F8 + field_eff_end + +gFieldEffectScript_Unknown60: ; 82DBCD2 + field_eff_callnative sub_81799B8 + field_eff_end + +gFieldEffectScript_Unknown61: ; 82DBCD8 + field_eff_callnative sub_80FA458 + field_eff_end + +gFieldEffectScript_Unknown62: ; 82DBCDE + field_eff_loadfadedpal gFieldEffectObjectPaletteInfo4 + field_eff_loadfadedpal_callnative gFieldEffectObjectPaletteInfo5, sub_80B62F4 + field_eff_end + +gFieldEffectScript_Unknown63: ; 82DBCED + field_eff_callnative sub_817C91C + field_eff_end + +gFieldEffectScript_Rayquaza: ; 82DBCF3 + field_eff_callnative sub_80B8F98 + field_eff_end + +gFieldEffectScript_Unknown65: ; 82DBCF9 + field_eff_callnative sub_80B9ADC + field_eff_end + +gFieldEffectScript_Unknown66: ; 82DBCFF + field_eff_callnative sub_80B9E28 + field_eff_end diff --git a/data/graphics/field_objects/field_effect_object_template_pointers.s b/data/graphics/field_objects/field_effect_object_template_pointers.s new file mode 100644 index 000000000..3690e2558 --- /dev/null +++ b/data/graphics/field_objects/field_effect_object_template_pointers.s @@ -0,0 +1,40 @@ + .align 2, 0 + +gFieldEffectObjectTemplatePointers: ; 85059F8 + .4byte gFieldEffectObjectTemplate_ShadowSmall + .4byte gFieldEffectObjectTemplate_ShadowMedium + .4byte gFieldEffectObjectTemplate_ShadowLarge + .4byte gFieldEffectObjectTemplate_ShadowExtraLarge + .4byte gFieldEffectObjectTemplate_TallGrass + .4byte gFieldEffectObjectTemplate_Ripple + .4byte gFieldEffectObjectTemplate_Ash + .4byte gFieldEffectObjectTemplate_SurfBlob + .4byte gFieldEffectObjectTemplate_Arrow + .4byte gFieldEffectObjectTemplate_GroundImpactDust + .4byte gFieldEffectObjectTemplate_BikeHopTallGrass + .4byte gFieldEffectObjectTemplate_SandFootprints + .4byte gFieldEffectObjectTemplate_BikeHopBigSplash + .4byte gFieldEffectObjectTemplate_Splash + .4byte gFieldEffectObjectTemplate_BikeHopSmallSplash + .4byte gFieldEffectObjectTemplate_LongGrass + .4byte gFieldEffectObjectTemplate_Unknown16 + .4byte gFieldEffectObjectTemplate_Unknown17 + .4byte gFieldEffectObjectTemplate_Unknown18 + .4byte gFieldEffectObjectTemplate_Unknown19 + .4byte gFieldEffectObjectTemplate_Unknown20 + .4byte gFieldEffectObjectTemplate_Unknown21 + .4byte gFieldEffectObjectTemplate_BerryTreeGrowthSparkle + .4byte gFieldEffectObjectTemplate_DeepSandFootprints + .4byte gFieldEffectObjectTemplate_TreeDisguise + .4byte gFieldEffectObjectTemplate_MountainDisguise + .4byte gFieldEffectObjectTemplate_Bird + .4byte gFieldEffectObjectTemplate_BikeTireTracks + .4byte gFieldEffectObjectTemplate_SandDisguisePlaceholder + .4byte gFieldEffectObjectTemplate_Unknown29 + .4byte gFieldEffectObjectTemplate_ShortGrass + .4byte gFieldEffectObjectTemplate_HotSpringsWater + .4byte gFieldEffectObjectTemplate_JumpOutOfAsh + .4byte gFieldEffectObjectTemplate_Unknown33 + .4byte gFieldEffectObjectTemplate_Bubbles + .4byte gFieldEffectObjectTemplate_Unknown35 + .4byte gFieldEffectObjectTemplate_Rayquaza diff --git a/data/graphics/field_objects/field_effect_objects.s b/data/graphics/field_objects/field_effect_objects.s new file mode 100644 index 000000000..9f1c3cc1f --- /dev/null +++ b/data/graphics/field_objects/field_effect_objects.s @@ -0,0 +1,1374 @@ + + .align 2, 0 + +gFieldEffectObjectPaletteInfo0: ; 850C9C0 + obj_pal gFieldEffectObjectPalette0, 0x1004 + + .align 2, 0 + +gFieldEffectObjectPaletteInfo1: ; 850C9C8 + obj_pal gFieldEffectObjectPalette1, 0x1005 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850C9D0: ; 850C9D0 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Shadow: ; 850C9D8 + .4byte gFieldEffectObjectImageAnim_850C9D0 + + .align 2, 0 + +gFieldEffectObjectPicTable_ShadowSmall: ; 850C9DC + obj_tiles gFieldEffectObjectPic_ShadowSmall, 0x20 + + .align 2, 0 + +gFieldEffectObjectPicTable_ShadowMedium: ; 850C9E4 + obj_tiles gFieldEffectObjectPic_ShadowMedium, 0x40 + + .align 2, 0 + +gFieldEffectObjectPicTable_ShadowLarge: ; 850C9EC + obj_tiles gFieldEffectObjectPic_ShadowLarge, 0x80 + + .align 2, 0 + +gFieldEffectObjectPicTable_ShadowExtraLarge: ; 850C9F4 + obj_tiles gFieldEffectObjectPic_ShadowExtraLarge, 0x400 + + .align 2, 0 + +gFieldEffectObjectTemplate_ShadowSmall: ; 850C9FC + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_8x8 + .4byte gFieldEffectObjectImageAnimTable_Shadow + .4byte gFieldEffectObjectPicTable_ShadowSmall + .4byte gDummyObjectRotScalAnimTable + .4byte oamc_shadow + + .align 2, 0 + +gFieldEffectObjectTemplate_ShadowMedium: ; 850CA14 + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_16x8 + .4byte gFieldEffectObjectImageAnimTable_Shadow + .4byte gFieldEffectObjectPicTable_ShadowMedium + .4byte gDummyObjectRotScalAnimTable + .4byte oamc_shadow + + .align 2, 0 + +gFieldEffectObjectTemplate_ShadowLarge: ; 850CA2C + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_32x8 + .4byte gFieldEffectObjectImageAnimTable_Shadow + .4byte gFieldEffectObjectPicTable_ShadowLarge + .4byte gDummyObjectRotScalAnimTable + .4byte oamc_shadow + + .align 2, 0 + +gFieldEffectObjectTemplate_ShadowExtraLarge: ; 850CA44 + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_64x32 + .4byte gFieldEffectObjectImageAnimTable_Shadow + .4byte gFieldEffectObjectPicTable_ShadowExtraLarge + .4byte gDummyObjectRotScalAnimTable + .4byte oamc_shadow + + .align 2, 0 + +gFieldEffectObjectPicTable_TallGrass: ; 850CA5C + obj_tiles gFieldEffectObjectPic_TallGrass_0, 0x80 + obj_tiles gFieldEffectObjectPic_TallGrass_1, 0x80 + obj_tiles gFieldEffectObjectPic_TallGrass_2, 0x80 + obj_tiles gFieldEffectObjectPic_TallGrass_3, 0x80 + obj_tiles gFieldEffectObjectPic_TallGrass_4, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CA84: ; 850CA84 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 2, 10 + obj_image_anim_frame 3, 10 + obj_image_anim_frame 4, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_TallGrass: ; 850CA9C + .4byte gFieldEffectObjectImageAnim_850CA84 + + .align 2, 0 + +gFieldEffectObjectTemplate_TallGrass: ; 850CAA0 + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_TallGrass + .4byte gFieldEffectObjectPicTable_TallGrass + .4byte gDummyObjectRotScalAnimTable + .4byte unc_grass_normal + + .align 2, 0 + +gFieldEffectObjectPicTable_Ripple: ; 850CAB8 + obj_tiles gFieldEffectObjectPic_Ripple_0, 0x80 + obj_tiles gFieldEffectObjectPic_Ripple_1, 0x80 + obj_tiles gFieldEffectObjectPic_Ripple_2, 0x80 + obj_tiles gFieldEffectObjectPic_Ripple_3, 0x80 + obj_tiles gFieldEffectObjectPic_Ripple_4, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CAE0: ; 850CAE0 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 2, 9 + obj_image_anim_frame 3, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 2, 11 + obj_image_anim_frame 4, 11 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Ripple: ; 850CB04 + .4byte gFieldEffectObjectImageAnim_850CAE0 + + .align 2, 0 + +gFieldEffectObjectTemplate_Ripple: ; 850CB08 + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Ripple + .4byte gFieldEffectObjectPicTable_Ripple + .4byte gDummyObjectRotScalAnimTable + .4byte sub_81561D0 + + .align 2, 0 + +gFieldEffectObjectPicTable_Ash: ; 850CB20 + obj_tiles gFieldEffectObjectPic_Ash_0, 0x80 + obj_tiles gFieldEffectObjectPic_Ash_1, 0x80 + obj_tiles gFieldEffectObjectPic_Ash_2, 0x80 + obj_tiles gFieldEffectObjectPic_Ash_3, 0x80 + obj_tiles gFieldEffectObjectPic_Ash_4, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CB48: ; 850CB48 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 2, 8 + obj_image_anim_frame 3, 12 + obj_image_anim_frame 4, 12 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Ash: ; 850CB60 + .4byte gFieldEffectObjectImageAnim_850CB48 + + .align 2, 0 + +gFieldEffectObjectTemplate_Ash: ; 850CB64 + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Ash + .4byte gFieldEffectObjectPicTable_Ash + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8155460 + + .align 2, 0 + +gFieldEffectObjectPicTable_SurfBlob: ; 850CB7C + obj_tiles gFieldEffectObjectPic_SurfBlob_0, 0x200 + obj_tiles gFieldEffectObjectPic_SurfBlob_1, 0x200 + obj_tiles gFieldEffectObjectPic_SurfBlob_2, 0x200 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CB94: ; 850CB94 + obj_image_anim_frame 0, 1 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CB9C: ; 850CB9C + obj_image_anim_frame 1, 1 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CBA4: ; 850CBA4 + obj_image_anim_frame 2, 1 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CBAC: ; 850CBAC + obj_image_anim_frame 2, 1, OBJ_IMAGE_ANIM_H_FLIP + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_SurfBlob: ; 850CBB4 + .4byte gFieldEffectObjectImageAnim_850CB94 + .4byte gFieldEffectObjectImageAnim_850CB9C + .4byte gFieldEffectObjectImageAnim_850CBA4 + .4byte gFieldEffectObjectImageAnim_850CBAC + + .align 2, 0 + +gFieldEffectObjectTemplate_SurfBlob: ; 850CBC4 + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_32x32 + .4byte gFieldEffectObjectImageAnimTable_SurfBlob + .4byte gFieldEffectObjectPicTable_SurfBlob + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8155658 + + .align 2, 0 + +gFieldEffectObjectPicTable_Arrow: ; 850CBDC + obj_tiles gFieldEffectObjectPic_Arrow_0, 0x80 + obj_tiles gFieldEffectObjectPic_Arrow_1, 0x80 + obj_tiles gFieldEffectObjectPic_Arrow_2, 0x80 + obj_tiles gFieldEffectObjectPic_Arrow_3, 0x80 + obj_tiles gFieldEffectObjectPic_Arrow_4, 0x80 + obj_tiles gFieldEffectObjectPic_Arrow_5, 0x80 + obj_tiles gFieldEffectObjectPic_Arrow_6, 0x80 + obj_tiles gFieldEffectObjectPic_Arrow_7, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CC1C: ; 850CC1C + obj_image_anim_frame 3, 32 + obj_image_anim_frame 7, 32 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CC28: ; 850CC28 + obj_image_anim_frame 0, 32 + obj_image_anim_frame 4, 32 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CC34: ; 850CC34 + obj_image_anim_frame 1, 32 + obj_image_anim_frame 5, 32 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CC40: ; 850CC40 + obj_image_anim_frame 2, 32 + obj_image_anim_frame 6, 32 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Arrow: ; 850CC4C + .4byte gFieldEffectObjectImageAnim_850CC1C + .4byte gFieldEffectObjectImageAnim_850CC28 + .4byte gFieldEffectObjectImageAnim_850CC34 + .4byte gFieldEffectObjectImageAnim_850CC40 + + .align 2, 0 + +gFieldEffectObjectTemplate_Arrow: ; 850CC5C + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Arrow + .4byte gFieldEffectObjectPicTable_Arrow + .4byte gDummyObjectRotScalAnimTable + .4byte nullsub_12 + + .align 2, 0 + +gFieldEffectObjectPicTable_GroundImpactDust: ; 850CC74 + obj_tiles gFieldEffectObjectPic_GroundImpactDust_0, 0x40 + obj_tiles gFieldEffectObjectPic_GroundImpactDust_1, 0x40 + obj_tiles gFieldEffectObjectPic_GroundImpactDust_2, 0x40 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CC8C: ; 850CC8C + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 2, 8 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_GroundImpactDust: ; 850CC9C + .4byte gFieldEffectObjectImageAnim_850CC8C + + .align 2, 0 + +gFieldEffectObjectTemplate_GroundImpactDust: ; 850CCA0 + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x8 + .4byte gFieldEffectObjectImageAnimTable_GroundImpactDust + .4byte gFieldEffectObjectPicTable_GroundImpactDust + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8156194 + + .align 2, 0 + +gFieldEffectObjectPicTable_BikeHopTallGrass: ; 850CCB8 + obj_tiles gFieldEffectObjectPic_BikeHopTallGrass_0, 0x40 + obj_tiles gFieldEffectObjectPic_BikeHopTallGrass_1, 0x40 + obj_tiles gFieldEffectObjectPic_BikeHopTallGrass_2, 0x40 + obj_tiles gFieldEffectObjectPic_BikeHopTallGrass_3, 0x40 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CCD8: ; 850CCD8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 2, 8 + obj_image_anim_frame 3, 8 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_BikeHopTallGrass: ; 850CCEC + .4byte gFieldEffectObjectImageAnim_850CCD8 + + .align 2, 0 + +gFieldEffectObjectTemplate_BikeHopTallGrass: ; 850CCF0 + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x8 + .4byte gFieldEffectObjectImageAnimTable_BikeHopTallGrass + .4byte gFieldEffectObjectPicTable_BikeHopTallGrass + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8156194 + + .align 2, 0 + +gFieldEffectObjectPicTable_SandFootprints: ; 850CD08 + obj_tiles gFieldEffectObjectPic_SandFootprints_0, 0x80 + obj_tiles gFieldEffectObjectPic_SandFootprints_1, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CD18: ; 850CD18 + obj_image_anim_frame 0, 1, OBJ_IMAGE_ANIM_V_FLIP + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CD20: ; 850CD20 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CD28: ; 850CD28 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CD30: ; 850CD30 + obj_image_anim_frame 1, 1, OBJ_IMAGE_ANIM_H_FLIP + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_SandFootprints: ; 850CD38 + .4byte gFieldEffectObjectImageAnim_850CD18 + .4byte gFieldEffectObjectImageAnim_850CD18 + .4byte gFieldEffectObjectImageAnim_850CD20 + .4byte gFieldEffectObjectImageAnim_850CD28 + .4byte gFieldEffectObjectImageAnim_850CD30 + + .align 2, 0 + +gFieldEffectObjectTemplate_SandFootprints: ; 850CD4C + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_SandFootprints + .4byte gFieldEffectObjectPicTable_SandFootprints + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8154C60 + + .align 2, 0 + +gFieldEffectObjectPicTable_DeepSandFootprints: ; 850CD64 + obj_tiles gFieldEffectObjectPic_DeepSandFootprints_0, 0x80 + obj_tiles gFieldEffectObjectPic_DeepSandFootprints_1, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CD74: ; 850CD74 + obj_image_anim_frame 0, 1, OBJ_IMAGE_ANIM_V_FLIP + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CD7C: ; 850CD7C + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CD84: ; 850CD84 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CD8C: ; 850CD8C + obj_image_anim_frame 1, 1, OBJ_IMAGE_ANIM_H_FLIP + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_DeepSandFootprints: ; 850CD94 + .4byte gFieldEffectObjectImageAnim_850CD74 + .4byte gFieldEffectObjectImageAnim_850CD74 + .4byte gFieldEffectObjectImageAnim_850CD7C + .4byte gFieldEffectObjectImageAnim_850CD84 + .4byte gFieldEffectObjectImageAnim_850CD8C + + .align 2, 0 + +gFieldEffectObjectTemplate_DeepSandFootprints: ; 850CDA8 + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_DeepSandFootprints + .4byte gFieldEffectObjectPicTable_DeepSandFootprints + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8154C60 + + .align 2, 0 + +gFieldEffectObjectPicTable_BikeTireTracks: ; 850CDC0 + obj_tiles gFieldEffectObjectPic_BikeTireTracks_0, 0x80 + obj_tiles gFieldEffectObjectPic_BikeTireTracks_1, 0x80 + obj_tiles gFieldEffectObjectPic_BikeTireTracks_2, 0x80 + obj_tiles gFieldEffectObjectPic_BikeTireTracks_3, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CDE0: ; 850CDE0 + obj_image_anim_frame 2, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CDE8: ; 850CDE8 + obj_image_anim_frame 2, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CDF0: ; 850CDF0 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CDF8: ; 850CDF8 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CE00: ; 850CE00 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CE08: ; 850CE08 + obj_image_anim_frame 0, 1, OBJ_IMAGE_ANIM_H_FLIP + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CE10: ; 850CE10 + obj_image_anim_frame 3, 1, OBJ_IMAGE_ANIM_H_FLIP + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CE18: ; 850CE18 + obj_image_anim_frame 3, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_BikeTireTracks: ; 850CE20 + .4byte gFieldEffectObjectImageAnim_850CDE0 + .4byte gFieldEffectObjectImageAnim_850CDE0 + .4byte gFieldEffectObjectImageAnim_850CDE8 + .4byte gFieldEffectObjectImageAnim_850CDF0 + .4byte gFieldEffectObjectImageAnim_850CDF8 + .4byte gFieldEffectObjectImageAnim_850CE00 + .4byte gFieldEffectObjectImageAnim_850CE08 + .4byte gFieldEffectObjectImageAnim_850CE10 + .4byte gFieldEffectObjectImageAnim_850CE18 + + .align 2, 0 + +gFieldEffectObjectTemplate_BikeTireTracks: ; 850CE44 + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_BikeTireTracks + .4byte gFieldEffectObjectPicTable_BikeTireTracks + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8154C60 + + .align 2, 0 + +gFieldEffectObjectPicTable_BikeHopBigSplash: ; 850CE5C + obj_tiles gFieldEffectObjectPic_BikeHopBigSplash_0, 0x80 + obj_tiles gFieldEffectObjectPic_BikeHopBigSplash_1, 0x80 + obj_tiles gFieldEffectObjectPic_BikeHopBigSplash_2, 0x80 + obj_tiles gFieldEffectObjectPic_BikeHopBigSplash_3, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CE7C: ; 850CE7C + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 2, 8 + obj_image_anim_frame 3, 8 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_BikeHopBigSplash: ; 850CE90 + .4byte gFieldEffectObjectImageAnim_850CE7C + + .align 2, 0 + +gFieldEffectObjectTemplate_BikeHopBigSplash: ; 850CE94 + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_BikeHopBigSplash + .4byte gFieldEffectObjectPicTable_BikeHopBigSplash + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8156194 + + .align 2, 0 + +gFieldEffectObjectPicTable_Splash: ; 850CEAC + obj_tiles gFieldEffectObjectPic_Splash_0, 0x40 + obj_tiles gFieldEffectObjectPic_Splash_1, 0x40 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CEBC: ; 850CEBC + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CEC8: ; 850CEC8 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Splash: ; 850CEEC + .4byte gFieldEffectObjectImageAnim_850CEBC + .4byte gFieldEffectObjectImageAnim_850CEC8 + + .align 2, 0 + +gFieldEffectObjectTemplate_Splash: ; 850CEF4 + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x8 + .4byte gFieldEffectObjectImageAnimTable_Splash + .4byte gFieldEffectObjectPicTable_Splash + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8154D90 + + .align 2, 0 + +gFieldEffectObjectPicTable_BikeHopSmallSplash: ; 850CF0C + obj_tiles gFieldEffectObjectPic_BikeHopSmallSplash_0, 0x40 + obj_tiles gFieldEffectObjectPic_BikeHopSmallSplash_1, 0x40 + obj_tiles gFieldEffectObjectPic_BikeHopSmallSplash_2, 0x40 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CF24: ; 850CF24 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_BikeHopSmallSplash: ; 850CF34 + .4byte gFieldEffectObjectImageAnim_850CF24 + + .align 2, 0 + +gFieldEffectObjectTemplate_BikeHopSmallSplash: ; 850CF38 + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x8 + .4byte gFieldEffectObjectImageAnimTable_BikeHopSmallSplash + .4byte gFieldEffectObjectPicTable_BikeHopSmallSplash + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8156194 + + .align 2, 0 + +gFieldEffectObjectPicTable_LongGrass: ; 850CF50 + obj_tiles gFieldEffectObjectPic_LongGrass_0, 0x80 + obj_tiles gFieldEffectObjectPic_LongGrass_1, 0x80 + obj_tiles gFieldEffectObjectPic_LongGrass_2, 0x80 + obj_tiles gFieldEffectObjectPic_LongGrass_3, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CF70: ; 850CF70 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 2, 3 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 3, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 3, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_LongGrass: ; 850CF90 + .4byte gFieldEffectObjectImageAnim_850CF70 + + .align 2, 0 + +gFieldEffectObjectTemplate_LongGrass: ; 850CF94 + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_LongGrass + .4byte gFieldEffectObjectPicTable_LongGrass + .4byte gDummyObjectRotScalAnimTable + .4byte unc_grass_tall + + .align 2, 0 + +gFieldEffectObjectPicTable_Unknown16: ; 850CFAC + obj_tiles gFieldEffectObjectPic_Unknown16_0, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown16_1, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown16_2, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown16_3, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown16_4, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown16_5, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850CFDC: ; 850CFDC + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 8 + obj_image_anim_frame 3, 8 + obj_image_anim_frame 4, 8 + obj_image_anim_frame 5, 8 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Unknown16: ; 850CFF8 + .4byte gFieldEffectObjectImageAnim_850CFDC + + .align 2, 0 + +gFieldEffectObjectTemplate_Unknown16: ; 850CFFC + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Unknown16 + .4byte gFieldEffectObjectPicTable_Unknown16 + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8156194 + + .align 2, 0 + +gFieldEffectObjectPicTable_Unknown17: ; 850D014 + obj_tiles gFieldEffectObjectPic_Unknown16_5, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown17_0, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown17_1, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown17_2, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown17_3, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown17_4, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown17_5, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown17_6, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown17_7, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D05C: ; 850D05C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 3, 4 + obj_image_anim_frame 4, 4 + obj_image_anim_frame 5, 4 + obj_image_anim_frame 6, 4 + obj_image_anim_frame 7, 4 + obj_image_anim_frame 8, 4 + obj_image_anim_jump 7 + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Unknown17: ; 850D084 + .4byte gFieldEffectObjectImageAnim_850D05C + + .align 2, 0 + +gFieldEffectObjectTemplate_Unknown17: ; 850D088 + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Unknown17 + .4byte gFieldEffectObjectPicTable_Unknown17 + .4byte gDummyObjectRotScalAnimTable + .4byte sub_81561D0 + + .align 2, 0 + +gFieldEffectObjectPicTable_Unknown18: ; 850D0A0 + obj_tiles gFieldEffectObjectPic_Unknown18_0, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown18_1, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown18_2, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown18_3, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D0C0: ; 850D0C0 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 3, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Unknown18: ; 850D0DC + .4byte gFieldEffectObjectImageAnim_850D0C0 + + .align 2, 0 + +gFieldEffectObjectTemplate_Unknown18: ; 850D0E0 + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Unknown18 + .4byte gFieldEffectObjectPicTable_Unknown18 + .4byte gDummyObjectRotScalAnimTable + .4byte sub_81561D0 + + .align 2, 0 + +gFieldEffectObjectPicTable_Unknown19: ; 850D0F8 + obj_tiles gFieldEffectObjectPic_Unknown19_0, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown19_1, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown19_2, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown19_3, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D118: ; 850D118 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 3, 4 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Unknown19: ; 850D12C + .4byte gFieldEffectObjectImageAnim_850D118 + + .align 2, 0 + +gFieldEffectObjectTemplate_Unknown19: ; 850D130 + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Unknown19 + .4byte gFieldEffectObjectPicTable_Unknown19 + .4byte gDummyObjectRotScalAnimTable + .4byte sub_81561D0 + + .align 2, 0 + +gFieldEffectObjectPicTable_Unknown29: ; 850D148 + obj_tiles gFieldEffectObjectPic_Unknown29_0, 0x40 + obj_tiles gFieldEffectObjectPic_Unknown29_1, 0x40 + obj_tiles gFieldEffectObjectPic_Unknown29_2, 0x40 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D160: ; 850D160 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Unknown29: ; 850D170 + .4byte gFieldEffectObjectImageAnim_850D160 + + .align 2, 0 + +gFieldEffectObjectTemplate_Unknown29: ; 850D174 + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x8 + .4byte gFieldEffectObjectImageAnimTable_Unknown29 + .4byte gFieldEffectObjectPicTable_Unknown29 + .4byte gDummyObjectRotScalAnimTable + .4byte sub_81559BC + + .align 2, 0 + +gFieldEffectObjectPicTable_Unknown20: ; 850D18C + obj_tiles gFieldEffectObjectPic_Unknown20_0, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown20_1, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown20_2, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown20_3, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D1AC: ; 850D1AC + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 3, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_jump 0 + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Unknown20: ; 850D1C8 + .4byte gFieldEffectObjectImageAnim_850D1AC + + .align 2, 0 + +gFieldEffectObjectTemplate_Unknown20: ; 850D1CC + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Unknown20 + .4byte gFieldEffectObjectPicTable_Unknown20 + .4byte gDummyObjectRotScalAnimTable + .4byte sub_81561D0 + + .align 2, 0 + +gFieldEffectObjectRotScalAnim_850D1E4: ; 850D1E4 + obj_rot_scal_anim_frame 0xFF00, 0x100, -128, 0 + obj_rot_scal_anim_frame 0x1, 0x0, 0, 4 + obj_rot_scal_anim_frame 0x0, 0x0, 0, 8 + obj_rot_scal_anim_frame 0xFFFF, 0x0, 0, 4 + obj_rot_scal_anim_frame 0x0, 0x0, 0, 8 + obj_rot_scal_anim_frame 0xFFFF, 0x0, 0, 4 + obj_rot_scal_anim_frame 0x0, 0x0, 0, 8 + obj_rot_scal_anim_frame 0x1, 0x0, 0, 4 + obj_rot_scal_anim_frame 0x0, 0x0, 0, 8 + obj_rot_scal_anim_jump 1 + + .align 2, 0 + +gFieldEffectObjectRotScalAnim_850D234: ; 850D234 + obj_rot_scal_anim_frame 0x100, 0x100, -128, 0 + obj_rot_scal_anim_frame 0xFFFF, 0x0, 0, 4 + obj_rot_scal_anim_frame 0x0, 0x0, 0, 8 + obj_rot_scal_anim_frame 0x1, 0x0, 0, 4 + obj_rot_scal_anim_frame 0x0, 0x0, 0, 8 + obj_rot_scal_anim_frame 0x1, 0x0, 0, 4 + obj_rot_scal_anim_frame 0x0, 0x0, 0, 8 + obj_rot_scal_anim_frame 0xFFFF, 0x0, 0, 4 + obj_rot_scal_anim_frame 0x0, 0x0, 0, 8 + obj_rot_scal_anim_jump 1 + + .align 2, 0 + +gFieldEffectObjectRotScalAnimTable_Unknown21: ; 850D284 + .4byte gFieldEffectObjectRotScalAnim_850D1E4 + .4byte gFieldEffectObjectRotScalAnim_850D234 + + .align 2, 0 + +gFieldEffectObjectTemplate_Unknown21: ; 850D28C + .2byte 0x0 ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gDefaultOamAttributes + .4byte gDummyObjectImageAnimTable + .4byte NULL + .4byte gFieldEffectObjectRotScalAnimTable_Unknown21 + .4byte nullsub_12 + + .align 2, 0 + +gFieldEffectObjectPicTable_BerryTreeGrowthSparkle: ; 850D2A4 + obj_tiles gFieldEffectObjectPic_BerryTreeGrowthSparkle_0, 0x80 + obj_tiles gFieldEffectObjectPic_BerryTreeGrowthSparkle_1, 0x80 + obj_tiles gFieldEffectObjectPic_BerryTreeGrowthSparkle_2, 0x80 + obj_tiles gFieldEffectObjectPic_BerryTreeGrowthSparkle_3, 0x80 + obj_tiles gFieldEffectObjectPic_BerryTreeGrowthSparkle_4, 0x80 + obj_tiles gFieldEffectObjectPic_BerryTreeGrowthSparkle_5, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D2D4: ; 850D2D4 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 2, 8 + obj_image_anim_frame 3, 8 + obj_image_anim_frame 4, 8 + obj_image_anim_frame 5, 8 + obj_image_anim_loop 0 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 3, 4 + obj_image_anim_frame 4, 4 + obj_image_anim_frame 5, 4 + obj_image_anim_loop 3 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 2, 8 + obj_image_anim_frame 3, 8 + obj_image_anim_frame 4, 8 + obj_image_anim_frame 5, 8 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_BerryTreeGrowthSparkle: ; 850D328 + .4byte gFieldEffectObjectImageAnim_850D2D4 + + .align 2, 0 + +gFieldEffectObjectTemplate_BerryTreeGrowthSparkle: ; 850D32C + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_BerryTreeGrowthSparkle + .4byte gFieldEffectObjectPicTable_BerryTreeGrowthSparkle + .4byte gDummyObjectRotScalAnimTable + .4byte sub_81561D0 + + .align 2, 0 + +gFieldEffectObjectPicTable_TreeDisguise: ; 850D344 + obj_tiles gFieldEffectObjectPic_TreeDisguise_0, 0x100 + obj_tiles gFieldEffectObjectPic_TreeDisguise_1, 0x100 + obj_tiles gFieldEffectObjectPic_TreeDisguise_2, 0x100 + obj_tiles gFieldEffectObjectPic_TreeDisguise_3, 0x100 + obj_tiles gFieldEffectObjectPic_TreeDisguise_4, 0x100 + obj_tiles gFieldEffectObjectPic_TreeDisguise_5, 0x100 + obj_tiles gFieldEffectObjectPic_TreeDisguise_6, 0x100 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D37C: ; 850D37C + obj_image_anim_frame 0, 16 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D384: ; 850D384 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 3, 4 + obj_image_anim_frame 4, 4 + obj_image_anim_frame 5, 4 + obj_image_anim_frame 6, 4 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_TreeDisguise: ; 850D3A4 + .4byte gFieldEffectObjectImageAnim_850D37C + .4byte gFieldEffectObjectImageAnim_850D384 + + .align 2, 0 + +gFieldEffectObjectTemplate_TreeDisguise: ; 850D3AC + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_16x32 + .4byte gFieldEffectObjectImageAnimTable_TreeDisguise + .4byte gFieldEffectObjectPicTable_TreeDisguise + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8155C88 + + .align 2, 0 + +gFieldEffectObjectPicTable_MountainDisguise: ; 850D3C4 + obj_tiles gFieldEffectObjectPic_MountainDisguise_0, 0x100 + obj_tiles gFieldEffectObjectPic_MountainDisguise_1, 0x100 + obj_tiles gFieldEffectObjectPic_MountainDisguise_2, 0x100 + obj_tiles gFieldEffectObjectPic_MountainDisguise_3, 0x100 + obj_tiles gFieldEffectObjectPic_MountainDisguise_4, 0x100 + obj_tiles gFieldEffectObjectPic_MountainDisguise_5, 0x100 + obj_tiles gFieldEffectObjectPic_MountainDisguise_6, 0x100 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D3FC: ; 850D3FC + obj_image_anim_frame 0, 16 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D404: ; 850D404 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 3, 4 + obj_image_anim_frame 4, 4 + obj_image_anim_frame 5, 4 + obj_image_anim_frame 6, 4 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_MountainDisguise: ; 850D424 + .4byte gFieldEffectObjectImageAnim_850D3FC + .4byte gFieldEffectObjectImageAnim_850D404 + + .align 2, 0 + +gFieldEffectObjectTemplate_MountainDisguise: ; 850D42C + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_16x32 + .4byte gFieldEffectObjectImageAnimTable_MountainDisguise + .4byte gFieldEffectObjectPicTable_MountainDisguise + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8155C88 + + .align 2, 0 + +gFieldEffectObjectPicTable_SandDisguisePlaceholder: ; 850D444 + obj_tiles gFieldEffectObjectPic_SandDisguisePlaceholder_0, 0x100 + obj_tiles gFieldEffectObjectPic_SandDisguisePlaceholder_1, 0x100 + obj_tiles gFieldEffectObjectPic_SandDisguisePlaceholder_2, 0x100 + obj_tiles gFieldEffectObjectPic_SandDisguisePlaceholder_3, 0x100 + obj_tiles gFieldEffectObjectPic_SandDisguisePlaceholder_4, 0x100 + obj_tiles gFieldEffectObjectPic_SandDisguisePlaceholder_5, 0x100 + obj_tiles gFieldEffectObjectPic_SandDisguisePlaceholder_6, 0x100 + + .align 2, 0 + +gFieldEffectObjectTemplate_SandDisguisePlaceholder: ; 850D47C + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_16x32 + .4byte gFieldEffectObjectImageAnimTable_TreeDisguise + .4byte gFieldEffectObjectPicTable_SandDisguisePlaceholder + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8155C88 + + .align 2, 0 + +gFieldEffectObjectPicTable_Bird: ; 850D494 + obj_tiles gFieldEffectObjectPic_Bird, 0x200 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D49C: ; 850D49C + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Bird: ; 850D4A4 + .4byte gFieldEffectObjectImageAnim_850D49C + + .align 2, 0 + +gFieldEffectObjectTemplate_Bird: ; 850D4A8 + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_32x32 + .4byte gFieldEffectObjectImageAnimTable_Bird + .4byte gFieldEffectObjectPicTable_Bird + .4byte gDummyObjectRotScalAnimTable + .4byte nullsub_12 + + .align 2, 0 + +gFieldEffectObjectPicTable_ShortGrass: ; 850D4C0 + obj_tiles gFieldEffectObjectPic_ShortGrass_0, 0x80 + obj_tiles gFieldEffectObjectPic_ShortGrass_1, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D4D0: ; 850D4D0 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_ShortGrass: ; 850D4DC + .4byte gFieldEffectObjectImageAnim_850D4D0 + + .align 2, 0 + +gFieldEffectObjectTemplate_ShortGrass: ; 850D4E0 + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_ShortGrass + .4byte gFieldEffectObjectPicTable_ShortGrass + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8154A10 + + .align 2, 0 + +gFieldEffectObjectPicTable_HotSpringsWater: ; 850D4F8 + obj_tiles gFieldEffectObjectPic_HotSpringsWater, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D500: ; 850D500 + obj_image_anim_frame 0, 4 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_HotSpringsWater: ; 850D508 + .4byte gFieldEffectObjectImageAnim_850D500 + + .align 2, 0 + +gFieldEffectObjectTemplate_HotSpringsWater: ; 850D50C + .2byte 0xFFFF ; tiles tag + .2byte 0x1005 ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_HotSpringsWater + .4byte gFieldEffectObjectPicTable_HotSpringsWater + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8155158 + + .align 2, 0 + +gFieldEffectObjectPicTable_JumpOutOfAsh: ; 850D524 + obj_tiles gFieldEffectObjectPic_JumpOutOfAsh_0, 0x80 + obj_tiles gFieldEffectObjectPic_JumpOutOfAsh_1, 0x80 + obj_tiles gFieldEffectObjectPic_JumpOutOfAsh_2, 0x80 + obj_tiles gFieldEffectObjectPic_JumpOutOfAsh_3, 0x80 + obj_tiles gFieldEffectObjectPic_JumpOutOfAsh_4, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D54C: ; 850D54C + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 2, 6 + obj_image_anim_frame 3, 6 + obj_image_anim_frame 4, 6 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_JumpOutOfAsh: ; 850D564 + .4byte gFieldEffectObjectImageAnim_850D54C + + .align 2, 0 + +gFieldEffectObjectTemplate_JumpOutOfAsh: ; 850D568 + .2byte 0xFFFF ; tiles tag + .2byte 0x100D ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_JumpOutOfAsh + .4byte gFieldEffectObjectPicTable_JumpOutOfAsh + .4byte gDummyObjectRotScalAnimTable + .4byte sub_80B7CAC + + .align 2, 0 + +gFieldEffectObjectPaletteInfo2: ; 850D580 + obj_pal gFieldEffectObjectPalette2, 0x100D + + .align 2, 0 + +gFieldEffectObjectPicTable_Unknown33: ; 850D588 + obj_tiles gFieldEffectObjectPic_Unknown33_0, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown33_1, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown33_2, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown33_3, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown33_4, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D5B0: ; 850D5B0 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 2, 6 + obj_image_anim_frame 3, 6 + obj_image_anim_frame 4, 6 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Unknown33: ; 850D5C8 + .4byte gFieldEffectObjectImageAnim_850D5B0 + + .align 2, 0 + +gFieldEffectObjectTemplate_Unknown33: ; 850D5CC + .2byte 0xFFFF ; tiles tag + .2byte 0x100D ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Unknown33 + .4byte gFieldEffectObjectPicTable_Unknown33 + .4byte gDummyObjectRotScalAnimTable + .4byte sub_80B7A58 + + .align 2, 0 + +gFieldEffectObjectPicTable_Bubbles: ; 850D5E4 + obj_tiles gFieldEffectObjectPic_Bubbles_0, 0x100 + obj_tiles gFieldEffectObjectPic_Bubbles_1, 0x100 + obj_tiles gFieldEffectObjectPic_Bubbles_2, 0x100 + obj_tiles gFieldEffectObjectPic_Bubbles_3, 0x100 + obj_tiles gFieldEffectObjectPic_Bubbles_4, 0x100 + obj_tiles gFieldEffectObjectPic_Bubbles_5, 0x100 + obj_tiles gFieldEffectObjectPic_Bubbles_6, 0x100 + obj_tiles gFieldEffectObjectPic_Bubbles_7, 0x100 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D624: ; 850D624 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 2, 4 + obj_image_anim_frame 3, 6 + obj_image_anim_frame 4, 6 + obj_image_anim_frame 5, 4 + obj_image_anim_frame 6, 4 + obj_image_anim_frame 7, 4 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Bubbles: ; 850D648 + .4byte gFieldEffectObjectImageAnim_850D624 + + .align 2, 0 + +gFieldEffectObjectTemplate_Bubbles: ; 850D64C + .2byte 0xFFFF ; tiles tag + .2byte 0x1004 ; palette tag + .4byte gFieldObjectBaseOam_16x32 + .4byte gFieldEffectObjectImageAnimTable_Bubbles + .4byte gFieldEffectObjectPicTable_Bubbles + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8155AEC + + .align 2, 0 + +gFieldEffectObjectPicTable_Unknown35: ; 850D664 + obj_tiles gFieldEffectObjectPic_Unknown35_0, 0x80 + obj_tiles gFieldEffectObjectPic_Unknown35_1, 0x80 + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D674: ; 850D674 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Unknown35: ; 850D684 + .4byte gFieldEffectObjectImageAnim_850D674 + + .align 2, 0 + +gFieldEffectObjectTemplate_Unknown35: ; 850D688 + .2byte 0xFFFF ; tiles tag + .2byte 0x100F ; palette tag + .4byte gFieldObjectBaseOam_16x16 + .4byte gFieldEffectObjectImageAnimTable_Unknown35 + .4byte gFieldEffectObjectPicTable_Unknown35 + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8155E50 + + .align 2, 0 + +gFieldEffectObjectPaletteInfo3: ; 850D6A0 + obj_pal gFieldEffectObjectPalette3, 0x100F + + .align 2, 0 + +gFieldEffectObjectImageAnim_850D6A8: ; 850D6A8 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2, 0 + +gFieldEffectObjectImageAnimTable_Rayquaza: ; 850D6B0 + .4byte gFieldEffectObjectImageAnim_850D6A8 + + .align 2, 0 + +gFieldEffectObjectPicTable_Rayquaza: ; 850D6B4 + obj_tiles gFieldObjectPic_Rayquaza_0, 0x200 + + .align 2, 0 + +gFieldEffectObjectTemplate_Rayquaza: ; 850D6BC + .2byte 0xFFFF ; tiles tag + .2byte 0xFFFF ; palette tag + .4byte gFieldObjectBaseOam_32x32 + .4byte gFieldEffectObjectImageAnimTable_Rayquaza + .4byte gFieldEffectObjectPicTable_Rayquaza + .4byte gDummyObjectRotScalAnimTable + .4byte sub_8155F80 diff --git a/data/graphics/field_objects/field_object_graphics.s b/data/graphics/field_objects/field_object_graphics.s index 495880e4b..981ec2675 100644 --- a/data/graphics/field_objects/field_object_graphics.s +++ b/data/graphics/field_objects/field_object_graphics.s @@ -5707,7 +5707,35 @@ gFieldObjectPic_SSTidal: ; 84E93F8 gFieldObjectPalette21: ; 84E9B78 .incbin "data/graphics/field_objects/palettes/field_object_palette_21.gbapal" - .incbin "base_emerald.gba", 0x4e9b98, 0x300 + .align 2, 0 + +gFieldEffectObjectPic_BerryTreeGrowthSparkle_0: ; 84E9B98 + .incbin "data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BerryTreeGrowthSparkle_1: ; 84E9C18 + .incbin "data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BerryTreeGrowthSparkle_2: ; 84E9C98 + .incbin "data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BerryTreeGrowthSparkle_3: ; 84E9D18 + .incbin "data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BerryTreeGrowthSparkle_4: ; 84E9D98 + .incbin "data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BerryTreeGrowthSparkle_5: ; 84E9E18 + .incbin "data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/5.4bpp" .align 2, 0 @@ -6624,7 +6652,20 @@ gFieldObjectPic_TamatoBerryTree_4: ; 84F5218 gFieldObjectPic_TamatoBerryTree_5: ; 84F5318 .incbin "data/graphics/field_objects/pics/berry_trees/tamato/5.4bpp" - .incbin "base_emerald.gba", 0x4f5418, 0x600 + .align 2, 0 + +gFieldEffectObjectPic_SurfBlob_0: ; 84F5418 + .incbin "data/graphics/field_objects/pics/effects/surf_blob/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SurfBlob_1: ; 84F5618 + .incbin "data/graphics/field_objects/pics/effects/surf_blob/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SurfBlob_2: ; 84F5818 + .incbin "data/graphics/field_objects/pics/effects/surf_blob/2.4bpp" .align 2, 0 @@ -6671,7 +6712,687 @@ gFieldObjectPalette12: ; 84F6818 gFieldObjectPalette13: ; 84F6838 .incbin "data/graphics/field_objects/palettes/field_object_palette_13.gbapal" - .incbin "base_emerald.gba", 0x4f6858, 0x54a0 + .align 2, 0 + +gFieldEffectObjectPic_ShadowSmall: ; 84F6858 + .incbin "data/graphics/field_objects/pics/effects/shadow_small.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_ShadowMedium: ; 84F6878 + .incbin "data/graphics/field_objects/pics/effects/shadow_medium.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_ShadowLarge: ; 84F68B8 + .incbin "data/graphics/field_objects/pics/effects/shadow_large.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_ShadowExtraLarge: ; 84F6938 + .incbin "data/graphics/field_objects/pics/effects/shadow_extra_large.4bpp" + + .incbin "base_emerald.gba", 0x4f6d38, 0x160 + + .align 2, 0 + +gFieldEffectObjectPalette6: ; 84F6E98 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_06.gbapal" + + .align 2, 0 + +gFieldEffectObjectPic_Ripple_0: ; 84F6EB8 + .incbin "data/graphics/field_objects/pics/effects/ripple/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Ripple_1: ; 84F6F38 + .incbin "data/graphics/field_objects/pics/effects/ripple/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Ripple_2: ; 84F6FB8 + .incbin "data/graphics/field_objects/pics/effects/ripple/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Ripple_3: ; 84F7038 + .incbin "data/graphics/field_objects/pics/effects/ripple/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Ripple_4: ; 84F70B8 + .incbin "data/graphics/field_objects/pics/effects/ripple/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Ash_0: ; 84F7138 + .incbin "data/graphics/field_objects/pics/effects/ash/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Ash_1: ; 84F71B8 + .incbin "data/graphics/field_objects/pics/effects/ash/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Ash_2: ; 84F7238 + .incbin "data/graphics/field_objects/pics/effects/ash/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Ash_3: ; 84F72B8 + .incbin "data/graphics/field_objects/pics/effects/ash/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Ash_4: ; 84F7338 + .incbin "data/graphics/field_objects/pics/effects/ash/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Arrow_0: ; 84F73B8 + .incbin "data/graphics/field_objects/pics/effects/arrow/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Arrow_1: ; 84F7438 + .incbin "data/graphics/field_objects/pics/effects/arrow/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Arrow_2: ; 84F74B8 + .incbin "data/graphics/field_objects/pics/effects/arrow/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Arrow_3: ; 84F7538 + .incbin "data/graphics/field_objects/pics/effects/arrow/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Arrow_4: ; 84F75B8 + .incbin "data/graphics/field_objects/pics/effects/arrow/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Arrow_5: ; 84F7638 + .incbin "data/graphics/field_objects/pics/effects/arrow/5.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Arrow_6: ; 84F76B8 + .incbin "data/graphics/field_objects/pics/effects/arrow/6.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Arrow_7: ; 84F7738 + .incbin "data/graphics/field_objects/pics/effects/arrow/7.4bpp" + + .align 2, 0 + +gFieldEffectObjectPalette0: ; 84F77B8 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_00.gbapal" + + .align 2, 0 + +gFieldEffectObjectPalette1: ; 84F77D8 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_01.gbapal" + + .align 2, 0 + +gFieldEffectObjectPic_GroundImpactDust_0: ; 84F77F8 + .incbin "data/graphics/field_objects/pics/effects/ground_impact_dust/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_GroundImpactDust_1: ; 84F7838 + .incbin "data/graphics/field_objects/pics/effects/ground_impact_dust/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_GroundImpactDust_2: ; 84F7878 + .incbin "data/graphics/field_objects/pics/effects/ground_impact_dust/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopTallGrass_0: ; 84F78B8 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_tall_grass/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopTallGrass_1: ; 84F78F8 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_tall_grass/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopTallGrass_2: ; 84F7938 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_tall_grass/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopTallGrass_3: ; 84F7978 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_tall_grass/3.4bpp" + + .incbin "base_emerald.gba", 0x4f79b8, 0x200 + + .align 2, 0 + +gFieldEffectObjectPic_Unknown16_0: ; 84F7BB8 + .incbin "data/graphics/field_objects/pics/effects/unknown_16/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown16_1: ; 84F7C38 + .incbin "data/graphics/field_objects/pics/effects/unknown_16/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown16_2: ; 84F7CB8 + .incbin "data/graphics/field_objects/pics/effects/unknown_16/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown16_3: ; 84F7D38 + .incbin "data/graphics/field_objects/pics/effects/unknown_16/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown16_4: ; 84F7DB8 + .incbin "data/graphics/field_objects/pics/effects/unknown_16/4.4bpp" + + .incbin "base_emerald.gba", 0x4f7e38, 0x80 + + .align 2, 0 + +gFieldEffectObjectPic_Unknown16_5: ; 84F7EB8 + .incbin "data/graphics/field_objects/pics/effects/unknown_16/5.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown17_0: ; 84F7F38 + .incbin "data/graphics/field_objects/pics/effects/unknown_17/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown17_1: ; 84F7FB8 + .incbin "data/graphics/field_objects/pics/effects/unknown_17/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown17_2: ; 84F8038 + .incbin "data/graphics/field_objects/pics/effects/unknown_17/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown17_3: ; 84F80B8 + .incbin "data/graphics/field_objects/pics/effects/unknown_17/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown17_4: ; 84F8138 + .incbin "data/graphics/field_objects/pics/effects/unknown_17/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown17_5: ; 84F81B8 + .incbin "data/graphics/field_objects/pics/effects/unknown_17/5.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown17_6: ; 84F8238 + .incbin "data/graphics/field_objects/pics/effects/unknown_17/6.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown17_7: ; 84F82B8 + .incbin "data/graphics/field_objects/pics/effects/unknown_17/7.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown18_0: ; 84F8338 + .incbin "data/graphics/field_objects/pics/effects/unknown_18/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown18_1: ; 84F83B8 + .incbin "data/graphics/field_objects/pics/effects/unknown_18/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown18_2: ; 84F8438 + .incbin "data/graphics/field_objects/pics/effects/unknown_18/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown18_3: ; 84F84B8 + .incbin "data/graphics/field_objects/pics/effects/unknown_18/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_LongGrass_0: ; 84F8538 + .incbin "data/graphics/field_objects/pics/effects/long_grass/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_LongGrass_1: ; 84F85B8 + .incbin "data/graphics/field_objects/pics/effects/long_grass/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_LongGrass_2: ; 84F8638 + .incbin "data/graphics/field_objects/pics/effects/long_grass/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_LongGrass_3: ; 84F86B8 + .incbin "data/graphics/field_objects/pics/effects/long_grass/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TallGrass_0: ; 84F8738 + .incbin "data/graphics/field_objects/pics/effects/tall_grass/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TallGrass_1: ; 84F87B8 + .incbin "data/graphics/field_objects/pics/effects/tall_grass/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TallGrass_2: ; 84F8838 + .incbin "data/graphics/field_objects/pics/effects/tall_grass/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TallGrass_3: ; 84F88B8 + .incbin "data/graphics/field_objects/pics/effects/tall_grass/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TallGrass_4: ; 84F8938 + .incbin "data/graphics/field_objects/pics/effects/tall_grass/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_ShortGrass_0: ; 84F89B8 + .incbin "data/graphics/field_objects/pics/effects/short_grass/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_ShortGrass_1: ; 84F8A38 + .incbin "data/graphics/field_objects/pics/effects/short_grass/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SandFootprints_0: ; 84F8AB8 + .incbin "data/graphics/field_objects/pics/effects/sand_footprints/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SandFootprints_1: ; 84F8B38 + .incbin "data/graphics/field_objects/pics/effects/sand_footprints/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_DeepSandFootprints_0: ; 84F8BB8 + .incbin "data/graphics/field_objects/pics/effects/deep_sand_footprints/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_DeepSandFootprints_1: ; 84F8C38 + .incbin "data/graphics/field_objects/pics/effects/deep_sand_footprints/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeTireTracks_0: ; 84F8CB8 + .incbin "data/graphics/field_objects/pics/effects/bike_tire_tracks/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeTireTracks_1: ; 84F8D38 + .incbin "data/graphics/field_objects/pics/effects/bike_tire_tracks/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeTireTracks_2: ; 84F8DB8 + .incbin "data/graphics/field_objects/pics/effects/bike_tire_tracks/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeTireTracks_3: ; 84F8E38 + .incbin "data/graphics/field_objects/pics/effects/bike_tire_tracks/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown19_0: ; 84F8EB8 + .incbin "data/graphics/field_objects/pics/effects/unknown_19/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown19_1: ; 84F8F38 + .incbin "data/graphics/field_objects/pics/effects/unknown_19/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown19_2: ; 84F8FB8 + .incbin "data/graphics/field_objects/pics/effects/unknown_19/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown19_3: ; 84F9038 + .incbin "data/graphics/field_objects/pics/effects/unknown_19/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown29_0: ; 84F90B8 + .incbin "data/graphics/field_objects/pics/effects/unknown_29/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown29_1: ; 84F90F8 + .incbin "data/graphics/field_objects/pics/effects/unknown_29/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown29_2: ; 84F9138 + .incbin "data/graphics/field_objects/pics/effects/unknown_29/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopBigSplash_0: ; 84F9178 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_big_splash/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopBigSplash_1: ; 84F91F8 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_big_splash/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopBigSplash_2: ; 84F9278 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_big_splash/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopBigSplash_3: ; 84F92F8 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_big_splash/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Splash_0: ; 84F9378 + .incbin "data/graphics/field_objects/pics/effects/splash/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Splash_1: ; 84F93B8 + .incbin "data/graphics/field_objects/pics/effects/splash/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopSmallSplash_0: ; 84F93F8 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_small_splash/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopSmallSplash_1: ; 84F9438 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_small_splash/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_BikeHopSmallSplash_2: ; 84F9478 + .incbin "data/graphics/field_objects/pics/effects/bike_hop_small_splash/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown20_0: ; 84F94B8 + .incbin "data/graphics/field_objects/pics/effects/unknown_20/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown20_1: ; 84F9538 + .incbin "data/graphics/field_objects/pics/effects/unknown_20/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown20_2: ; 84F95B8 + .incbin "data/graphics/field_objects/pics/effects/unknown_20/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown20_3: ; 84F9638 + .incbin "data/graphics/field_objects/pics/effects/unknown_20/3.4bpp" + + .align 2, 0 + +; unreferenced +gFieldEffectObjectPic_Unknown20_4: ; 84F96B8 + .incbin "data/graphics/field_objects/pics/effects/unknown_20/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TreeDisguise_0: ; 84F9738 + .incbin "data/graphics/field_objects/pics/effects/tree_disguise/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TreeDisguise_1: ; 84F9838 + .incbin "data/graphics/field_objects/pics/effects/tree_disguise/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TreeDisguise_2: ; 84F9938 + .incbin "data/graphics/field_objects/pics/effects/tree_disguise/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TreeDisguise_3: ; 84F9A38 + .incbin "data/graphics/field_objects/pics/effects/tree_disguise/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TreeDisguise_4: ; 84F9B38 + .incbin "data/graphics/field_objects/pics/effects/tree_disguise/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TreeDisguise_5: ; 84F9C38 + .incbin "data/graphics/field_objects/pics/effects/tree_disguise/5.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_TreeDisguise_6: ; 84F9D38 + .incbin "data/graphics/field_objects/pics/effects/tree_disguise/6.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_MountainDisguise_0: ; 84F9E38 + .incbin "data/graphics/field_objects/pics/effects/mountain_disguise/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_MountainDisguise_1: ; 84F9F38 + .incbin "data/graphics/field_objects/pics/effects/mountain_disguise/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_MountainDisguise_2: ; 84FA038 + .incbin "data/graphics/field_objects/pics/effects/mountain_disguise/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_MountainDisguise_3: ; 84FA138 + .incbin "data/graphics/field_objects/pics/effects/mountain_disguise/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_MountainDisguise_4: ; 84FA238 + .incbin "data/graphics/field_objects/pics/effects/mountain_disguise/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_MountainDisguise_5: ; 84FA338 + .incbin "data/graphics/field_objects/pics/effects/mountain_disguise/5.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_MountainDisguise_6: ; 84FA438 + .incbin "data/graphics/field_objects/pics/effects/mountain_disguise/6.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SandDisguisePlaceholder_0: ; 84FA538 + .incbin "data/graphics/field_objects/pics/effects/sand_disguise_placeholder/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SandDisguisePlaceholder_1: ; 84FA638 + .incbin "data/graphics/field_objects/pics/effects/sand_disguise_placeholder/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SandDisguisePlaceholder_2: ; 84FA738 + .incbin "data/graphics/field_objects/pics/effects/sand_disguise_placeholder/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SandDisguisePlaceholder_3: ; 84FA838 + .incbin "data/graphics/field_objects/pics/effects/sand_disguise_placeholder/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SandDisguisePlaceholder_4: ; 84FA938 + .incbin "data/graphics/field_objects/pics/effects/sand_disguise_placeholder/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SandDisguisePlaceholder_5: ; 84FAA38 + .incbin "data/graphics/field_objects/pics/effects/sand_disguise_placeholder/5.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_SandDisguisePlaceholder_6: ; 84FAB38 + .incbin "data/graphics/field_objects/pics/effects/sand_disguise_placeholder/6.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_HotSpringsWater: ; 84FAC38 + .incbin "data/graphics/field_objects/pics/effects/hot_springs_water.4bpp" + + .align 2, 0 + +gFieldEffectObjectPalette2: ; 84FACB8 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_02.gbapal" + + .align 2, 0 + +gFieldEffectObjectPic_JumpOutOfAsh_0: ; 84FACD8 + .incbin "data/graphics/field_objects/pics/effects/jump_out_of_ash/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_JumpOutOfAsh_1: ; 84FAD58 + .incbin "data/graphics/field_objects/pics/effects/jump_out_of_ash/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_JumpOutOfAsh_2: ; 84FADD8 + .incbin "data/graphics/field_objects/pics/effects/jump_out_of_ash/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_JumpOutOfAsh_3: ; 84FAE58 + .incbin "data/graphics/field_objects/pics/effects/jump_out_of_ash/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_JumpOutOfAsh_4: ; 84FAED8 + .incbin "data/graphics/field_objects/pics/effects/jump_out_of_ash/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown33_0: ; 84FAF58 + .incbin "data/graphics/field_objects/pics/effects/unknown_33/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown33_1: ; 84FAFD8 + .incbin "data/graphics/field_objects/pics/effects/unknown_33/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown33_2: ; 84FB058 + .incbin "data/graphics/field_objects/pics/effects/unknown_33/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown33_3: ; 84FB0D8 + .incbin "data/graphics/field_objects/pics/effects/unknown_33/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown33_4: ; 84FB158 + .incbin "data/graphics/field_objects/pics/effects/unknown_33/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Bubbles_0: ; 84FB1D8 + .incbin "data/graphics/field_objects/pics/effects/bubbles/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Bubbles_1: ; 84FB2D8 + .incbin "data/graphics/field_objects/pics/effects/bubbles/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Bubbles_2: ; 84FB3D8 + .incbin "data/graphics/field_objects/pics/effects/bubbles/2.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Bubbles_3: ; 84FB4D8 + .incbin "data/graphics/field_objects/pics/effects/bubbles/3.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Bubbles_4: ; 84FB5D8 + .incbin "data/graphics/field_objects/pics/effects/bubbles/4.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Bubbles_5: ; 84FB6D8 + .incbin "data/graphics/field_objects/pics/effects/bubbles/5.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Bubbles_6: ; 84FB7D8 + .incbin "data/graphics/field_objects/pics/effects/bubbles/6.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Bubbles_7: ; 84FB8D8 + .incbin "data/graphics/field_objects/pics/effects/bubbles/7.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown35_0: ; 84FB9D8 + .incbin "data/graphics/field_objects/pics/effects/unknown_35/0.4bpp" + + .align 2, 0 + +gFieldEffectObjectPic_Unknown35_1: ; 84FBA58 + .incbin "data/graphics/field_objects/pics/effects/unknown_35/1.4bpp" + + .align 2, 0 + +gFieldEffectObjectPalette3: ; 84FBAD8 + .incbin "data/graphics/field_objects/palettes/field_effect_object_palette_03.gbapal" + + .align 2, 0 + +gFieldEffectObjectPic_Bird: ; 84FBAF8 + .incbin "data/graphics/field_objects/pics/effects/bird.4bpp" .align 2, 0 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_00.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_00.pal new file mode 100644 index 000000000..bbc9c778b --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_00.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +98 172 238 +246 230 197 +238 213 180 +222 180 148 +255 255 255 +222 230 238 +189 205 230 +156 180 222 +98 156 180 +255 189 230 +0 0 0 +238 230 164 +222 205 131 +213 180 106 +205 156 82 +0 0 0 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_01.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_01.pal new file mode 100644 index 000000000..044e1c987 --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_01.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 189 238 +180 255 131 +131 197 98 +57 139 49 +74 90 8 +49 65 0 +98 172 238 +98 172 197 +139 205 246 +148 230 255 +148 131 98 +180 172 148 +164 213 197 +115 197 164 +65 180 131 +24 164 106 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_02.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_02.pal new file mode 100644 index 000000000..e3a76c035 --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_02.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +255 255 255 +98 98 98 +213 213 139 +172 172 90 +139 139 65 +230 246 205 +189 238 180 +131 222 180 +98 172 139 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_03.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_03.pal new file mode 100644 index 000000000..b170eb1f5 --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_03.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +131 172 74 +255 255 255 +205 246 255 +156 213 255 +74 197 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_04.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_04.pal new file mode 100644 index 000000000..2dddefa5f --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_04.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +255 255 255 +156 180 172 +106 115 115 +57 57 57 +156 24 24 +255 0 0 +255 123 123 +255 255 255 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_05.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_05.pal new file mode 100644 index 000000000..468d7212c --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_05.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +49 57 74 +172 164 255 +131 123 230 +106 98 172 +82 74 180 +82 74 98 +246 255 255 +115 172 65 +123 189 74 +148 205 90 +98 90 148 +139 156 213 +57 57 106 +148 205 90 +0 255 0 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_06.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_06.pal new file mode 100644 index 000000000..e4a49a4b9 --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_06.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +180 255 82 +98 205 8 +41 115 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_07.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_07.pal new file mode 100644 index 000000000..6d9e03c67 --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_07.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +255 255 255 +213 213 213 +189 189 189 +164 164 164 +131 131 139 +0 0 0 +0 0 0 +0 0 0 +238 213 205 +222 180 164 +189 148 139 +156 115 115 +131 90 90 +98 65 82 +0 0 0 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_08.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_08.pal new file mode 100644 index 000000000..4c41030f6 --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_08.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +24 41 82 +180 255 131 +131 197 98 +57 139 49 +57 82 0 +222 148 115 +106 90 90 +164 98 90 +65 57 49 +255 197 148 +222 106 98 +205 65 82 +164 213 197 +115 197 164 +65 180 131 +24 164 106 diff --git a/data/graphics/field_objects/palettes/field_effect_object_palette_10.pal b/data/graphics/field_objects/palettes/field_effect_object_palette_10.pal new file mode 100644 index 000000000..6190709ed --- /dev/null +++ b/data/graphics/field_objects/palettes/field_effect_object_palette_10.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +98 172 238 +246 8 0 +238 213 180 +222 180 148 +255 255 255 +222 230 238 +189 205 230 +156 180 222 +98 156 180 +148 0 0 +197 197 197 +238 230 164 +222 205 131 +213 180 106 +205 156 82 +0 0 0 diff --git a/data/graphics/field_objects/pics/effects/arrow/0.png b/data/graphics/field_objects/pics/effects/arrow/0.png new file mode 100644 index 000000000..3f06be064 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/arrow/0.png differ diff --git a/data/graphics/field_objects/pics/effects/arrow/1.png b/data/graphics/field_objects/pics/effects/arrow/1.png new file mode 100644 index 000000000..87bbd99ff Binary files /dev/null and b/data/graphics/field_objects/pics/effects/arrow/1.png differ diff --git a/data/graphics/field_objects/pics/effects/arrow/2.png b/data/graphics/field_objects/pics/effects/arrow/2.png new file mode 100644 index 000000000..f9abae71d Binary files /dev/null and b/data/graphics/field_objects/pics/effects/arrow/2.png differ diff --git a/data/graphics/field_objects/pics/effects/arrow/3.png b/data/graphics/field_objects/pics/effects/arrow/3.png new file mode 100644 index 000000000..58d43a6d8 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/arrow/3.png differ diff --git a/data/graphics/field_objects/pics/effects/arrow/4.png b/data/graphics/field_objects/pics/effects/arrow/4.png new file mode 100644 index 000000000..ef95afd9e Binary files /dev/null and b/data/graphics/field_objects/pics/effects/arrow/4.png differ diff --git a/data/graphics/field_objects/pics/effects/arrow/5.png b/data/graphics/field_objects/pics/effects/arrow/5.png new file mode 100644 index 000000000..71b7e0c27 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/arrow/5.png differ diff --git a/data/graphics/field_objects/pics/effects/arrow/6.png b/data/graphics/field_objects/pics/effects/arrow/6.png new file mode 100644 index 000000000..53c33f44c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/arrow/6.png differ diff --git a/data/graphics/field_objects/pics/effects/arrow/7.png b/data/graphics/field_objects/pics/effects/arrow/7.png new file mode 100644 index 000000000..bda7862da Binary files /dev/null and b/data/graphics/field_objects/pics/effects/arrow/7.png differ diff --git a/data/graphics/field_objects/pics/effects/ash/0.png b/data/graphics/field_objects/pics/effects/ash/0.png new file mode 100644 index 000000000..96a4b8f2a Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ash/0.png differ diff --git a/data/graphics/field_objects/pics/effects/ash/1.png b/data/graphics/field_objects/pics/effects/ash/1.png new file mode 100644 index 000000000..8d973518d Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ash/1.png differ diff --git a/data/graphics/field_objects/pics/effects/ash/2.png b/data/graphics/field_objects/pics/effects/ash/2.png new file mode 100644 index 000000000..eccd2e02d Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ash/2.png differ diff --git a/data/graphics/field_objects/pics/effects/ash/3.png b/data/graphics/field_objects/pics/effects/ash/3.png new file mode 100644 index 000000000..5ad0b8e5a Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ash/3.png differ diff --git a/data/graphics/field_objects/pics/effects/ash/4.png b/data/graphics/field_objects/pics/effects/ash/4.png new file mode 100644 index 000000000..7208f6a5b Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ash/4.png differ diff --git a/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/0.png b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/0.png new file mode 100644 index 000000000..f3e751d3a Binary files /dev/null and b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/0.png differ diff --git a/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/1.png b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/1.png new file mode 100644 index 000000000..d48fd1234 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/1.png differ diff --git a/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/2.png b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/2.png new file mode 100644 index 000000000..9a9abf73e Binary files /dev/null and b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/2.png differ diff --git a/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/3.png b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/3.png new file mode 100644 index 000000000..857abfb0b Binary files /dev/null and b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/3.png differ diff --git a/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/4.png b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/4.png new file mode 100644 index 000000000..bce9df4c7 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/4.png differ diff --git a/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/5.png b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/5.png new file mode 100644 index 000000000..4c757bf6b Binary files /dev/null and b/data/graphics/field_objects/pics/effects/berry_tree_growth_sparkle/5.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_big_splash/0.png b/data/graphics/field_objects/pics/effects/bike_hop_big_splash/0.png new file mode 100644 index 000000000..420663da8 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_big_splash/0.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_big_splash/1.png b/data/graphics/field_objects/pics/effects/bike_hop_big_splash/1.png new file mode 100644 index 000000000..72ca8fa1c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_big_splash/1.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_big_splash/2.png b/data/graphics/field_objects/pics/effects/bike_hop_big_splash/2.png new file mode 100644 index 000000000..96c224cdf Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_big_splash/2.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_big_splash/3.png b/data/graphics/field_objects/pics/effects/bike_hop_big_splash/3.png new file mode 100644 index 000000000..b549ea78c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_big_splash/3.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_small_splash/0.png b/data/graphics/field_objects/pics/effects/bike_hop_small_splash/0.png new file mode 100644 index 000000000..b5cccb306 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_small_splash/0.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_small_splash/1.png b/data/graphics/field_objects/pics/effects/bike_hop_small_splash/1.png new file mode 100644 index 000000000..548198c09 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_small_splash/1.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_small_splash/2.png b/data/graphics/field_objects/pics/effects/bike_hop_small_splash/2.png new file mode 100644 index 000000000..e8b86dfcb Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_small_splash/2.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/0.png b/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/0.png new file mode 100644 index 000000000..d2768ec0c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/0.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/1.png b/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/1.png new file mode 100644 index 000000000..7816f4d00 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/1.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/2.png b/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/2.png new file mode 100644 index 000000000..00c51d276 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/2.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/3.png b/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/3.png new file mode 100644 index 000000000..210382b93 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_hop_tall_grass/3.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_tire_tracks/0.png b/data/graphics/field_objects/pics/effects/bike_tire_tracks/0.png new file mode 100644 index 000000000..d4fd46f9b Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_tire_tracks/0.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_tire_tracks/1.png b/data/graphics/field_objects/pics/effects/bike_tire_tracks/1.png new file mode 100644 index 000000000..9095cdd74 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_tire_tracks/1.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_tire_tracks/2.png b/data/graphics/field_objects/pics/effects/bike_tire_tracks/2.png new file mode 100644 index 000000000..56907c153 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_tire_tracks/2.png differ diff --git a/data/graphics/field_objects/pics/effects/bike_tire_tracks/3.png b/data/graphics/field_objects/pics/effects/bike_tire_tracks/3.png new file mode 100644 index 000000000..397bfb418 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bike_tire_tracks/3.png differ diff --git a/data/graphics/field_objects/pics/effects/bird.png b/data/graphics/field_objects/pics/effects/bird.png new file mode 100644 index 000000000..3147f98f5 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bird.png differ diff --git a/data/graphics/field_objects/pics/effects/bubbles/0.png b/data/graphics/field_objects/pics/effects/bubbles/0.png new file mode 100644 index 000000000..b71b193ae Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bubbles/0.png differ diff --git a/data/graphics/field_objects/pics/effects/bubbles/1.png b/data/graphics/field_objects/pics/effects/bubbles/1.png new file mode 100644 index 000000000..0bd744ef2 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bubbles/1.png differ diff --git a/data/graphics/field_objects/pics/effects/bubbles/2.png b/data/graphics/field_objects/pics/effects/bubbles/2.png new file mode 100644 index 000000000..4241e8f24 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bubbles/2.png differ diff --git a/data/graphics/field_objects/pics/effects/bubbles/3.png b/data/graphics/field_objects/pics/effects/bubbles/3.png new file mode 100644 index 000000000..3b440d9a7 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bubbles/3.png differ diff --git a/data/graphics/field_objects/pics/effects/bubbles/4.png b/data/graphics/field_objects/pics/effects/bubbles/4.png new file mode 100644 index 000000000..de9e66a25 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bubbles/4.png differ diff --git a/data/graphics/field_objects/pics/effects/bubbles/5.png b/data/graphics/field_objects/pics/effects/bubbles/5.png new file mode 100644 index 000000000..54b9d768b Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bubbles/5.png differ diff --git a/data/graphics/field_objects/pics/effects/bubbles/6.png b/data/graphics/field_objects/pics/effects/bubbles/6.png new file mode 100644 index 000000000..35c26e633 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bubbles/6.png differ diff --git a/data/graphics/field_objects/pics/effects/bubbles/7.png b/data/graphics/field_objects/pics/effects/bubbles/7.png new file mode 100644 index 000000000..6323e0cc5 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/bubbles/7.png differ diff --git a/data/graphics/field_objects/pics/effects/deep_sand_footprints/0.png b/data/graphics/field_objects/pics/effects/deep_sand_footprints/0.png new file mode 100644 index 000000000..c449b223e Binary files /dev/null and b/data/graphics/field_objects/pics/effects/deep_sand_footprints/0.png differ diff --git a/data/graphics/field_objects/pics/effects/deep_sand_footprints/1.png b/data/graphics/field_objects/pics/effects/deep_sand_footprints/1.png new file mode 100644 index 000000000..2a1d5cce5 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/deep_sand_footprints/1.png differ diff --git a/data/graphics/field_objects/pics/effects/ground_impact_dust/0.png b/data/graphics/field_objects/pics/effects/ground_impact_dust/0.png new file mode 100644 index 000000000..57e2e8898 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ground_impact_dust/0.png differ diff --git a/data/graphics/field_objects/pics/effects/ground_impact_dust/1.png b/data/graphics/field_objects/pics/effects/ground_impact_dust/1.png new file mode 100644 index 000000000..d91554b6e Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ground_impact_dust/1.png differ diff --git a/data/graphics/field_objects/pics/effects/ground_impact_dust/2.png b/data/graphics/field_objects/pics/effects/ground_impact_dust/2.png new file mode 100644 index 000000000..8d0235141 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ground_impact_dust/2.png differ diff --git a/data/graphics/field_objects/pics/effects/hot_springs_water.png b/data/graphics/field_objects/pics/effects/hot_springs_water.png new file mode 100644 index 000000000..1b6550b19 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/hot_springs_water.png differ diff --git a/data/graphics/field_objects/pics/effects/jump_out_of_ash/0.png b/data/graphics/field_objects/pics/effects/jump_out_of_ash/0.png new file mode 100644 index 000000000..50f9796b2 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/jump_out_of_ash/0.png differ diff --git a/data/graphics/field_objects/pics/effects/jump_out_of_ash/1.png b/data/graphics/field_objects/pics/effects/jump_out_of_ash/1.png new file mode 100644 index 000000000..685d31fac Binary files /dev/null and b/data/graphics/field_objects/pics/effects/jump_out_of_ash/1.png differ diff --git a/data/graphics/field_objects/pics/effects/jump_out_of_ash/2.png b/data/graphics/field_objects/pics/effects/jump_out_of_ash/2.png new file mode 100644 index 000000000..9f11f176f Binary files /dev/null and b/data/graphics/field_objects/pics/effects/jump_out_of_ash/2.png differ diff --git a/data/graphics/field_objects/pics/effects/jump_out_of_ash/3.png b/data/graphics/field_objects/pics/effects/jump_out_of_ash/3.png new file mode 100644 index 000000000..124581f75 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/jump_out_of_ash/3.png differ diff --git a/data/graphics/field_objects/pics/effects/jump_out_of_ash/4.png b/data/graphics/field_objects/pics/effects/jump_out_of_ash/4.png new file mode 100644 index 000000000..6e584a4dc Binary files /dev/null and b/data/graphics/field_objects/pics/effects/jump_out_of_ash/4.png differ diff --git a/data/graphics/field_objects/pics/effects/long_grass/0.png b/data/graphics/field_objects/pics/effects/long_grass/0.png new file mode 100644 index 000000000..4a02b3d17 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/long_grass/0.png differ diff --git a/data/graphics/field_objects/pics/effects/long_grass/1.png b/data/graphics/field_objects/pics/effects/long_grass/1.png new file mode 100644 index 000000000..97f652c6d Binary files /dev/null and b/data/graphics/field_objects/pics/effects/long_grass/1.png differ diff --git a/data/graphics/field_objects/pics/effects/long_grass/2.png b/data/graphics/field_objects/pics/effects/long_grass/2.png new file mode 100644 index 000000000..313226f8b Binary files /dev/null and b/data/graphics/field_objects/pics/effects/long_grass/2.png differ diff --git a/data/graphics/field_objects/pics/effects/long_grass/3.png b/data/graphics/field_objects/pics/effects/long_grass/3.png new file mode 100644 index 000000000..0565b4069 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/long_grass/3.png differ diff --git a/data/graphics/field_objects/pics/effects/mountain_disguise/0.png b/data/graphics/field_objects/pics/effects/mountain_disguise/0.png new file mode 100644 index 000000000..104056e46 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/mountain_disguise/0.png differ diff --git a/data/graphics/field_objects/pics/effects/mountain_disguise/1.png b/data/graphics/field_objects/pics/effects/mountain_disguise/1.png new file mode 100644 index 000000000..4b2d35963 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/mountain_disguise/1.png differ diff --git a/data/graphics/field_objects/pics/effects/mountain_disguise/2.png b/data/graphics/field_objects/pics/effects/mountain_disguise/2.png new file mode 100644 index 000000000..e2ea3b855 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/mountain_disguise/2.png differ diff --git a/data/graphics/field_objects/pics/effects/mountain_disguise/3.png b/data/graphics/field_objects/pics/effects/mountain_disguise/3.png new file mode 100644 index 000000000..8f0a1be2c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/mountain_disguise/3.png differ diff --git a/data/graphics/field_objects/pics/effects/mountain_disguise/4.png b/data/graphics/field_objects/pics/effects/mountain_disguise/4.png new file mode 100644 index 000000000..8fd4df410 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/mountain_disguise/4.png differ diff --git a/data/graphics/field_objects/pics/effects/mountain_disguise/5.png b/data/graphics/field_objects/pics/effects/mountain_disguise/5.png new file mode 100644 index 000000000..a364b234d Binary files /dev/null and b/data/graphics/field_objects/pics/effects/mountain_disguise/5.png differ diff --git a/data/graphics/field_objects/pics/effects/mountain_disguise/6.png b/data/graphics/field_objects/pics/effects/mountain_disguise/6.png new file mode 100644 index 000000000..2644aa9f1 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/mountain_disguise/6.png differ diff --git a/data/graphics/field_objects/pics/effects/ripple/0.png b/data/graphics/field_objects/pics/effects/ripple/0.png new file mode 100644 index 000000000..24055c7d2 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ripple/0.png differ diff --git a/data/graphics/field_objects/pics/effects/ripple/1.png b/data/graphics/field_objects/pics/effects/ripple/1.png new file mode 100644 index 000000000..a47853925 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ripple/1.png differ diff --git a/data/graphics/field_objects/pics/effects/ripple/2.png b/data/graphics/field_objects/pics/effects/ripple/2.png new file mode 100644 index 000000000..6670cb779 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ripple/2.png differ diff --git a/data/graphics/field_objects/pics/effects/ripple/3.png b/data/graphics/field_objects/pics/effects/ripple/3.png new file mode 100644 index 000000000..122df1940 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ripple/3.png differ diff --git a/data/graphics/field_objects/pics/effects/ripple/4.png b/data/graphics/field_objects/pics/effects/ripple/4.png new file mode 100644 index 000000000..f4f79afe2 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/ripple/4.png differ diff --git a/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/0.png b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/0.png new file mode 100644 index 000000000..df242de2f Binary files /dev/null and b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/0.png differ diff --git a/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/1.png b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/1.png new file mode 100644 index 000000000..2e993b30e Binary files /dev/null and b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/1.png differ diff --git a/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/2.png b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/2.png new file mode 100644 index 000000000..3d6864e41 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/2.png differ diff --git a/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/3.png b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/3.png new file mode 100644 index 000000000..690110a8c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/3.png differ diff --git a/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/4.png b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/4.png new file mode 100644 index 000000000..caa568eac Binary files /dev/null and b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/4.png differ diff --git a/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/5.png b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/5.png new file mode 100644 index 000000000..0d0bd9886 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/5.png differ diff --git a/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/6.png b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/6.png new file mode 100644 index 000000000..ed40527d0 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/sand_disguise_placeholder/6.png differ diff --git a/data/graphics/field_objects/pics/effects/sand_footprints/0.png b/data/graphics/field_objects/pics/effects/sand_footprints/0.png new file mode 100644 index 000000000..3cc79aa18 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/sand_footprints/0.png differ diff --git a/data/graphics/field_objects/pics/effects/sand_footprints/1.png b/data/graphics/field_objects/pics/effects/sand_footprints/1.png new file mode 100644 index 000000000..80d33783b Binary files /dev/null and b/data/graphics/field_objects/pics/effects/sand_footprints/1.png differ diff --git a/data/graphics/field_objects/pics/effects/shadow_extra_large.png b/data/graphics/field_objects/pics/effects/shadow_extra_large.png new file mode 100644 index 000000000..41b37d8fb Binary files /dev/null and b/data/graphics/field_objects/pics/effects/shadow_extra_large.png differ diff --git a/data/graphics/field_objects/pics/effects/shadow_large.png b/data/graphics/field_objects/pics/effects/shadow_large.png new file mode 100644 index 000000000..f0e76cd7f Binary files /dev/null and b/data/graphics/field_objects/pics/effects/shadow_large.png differ diff --git a/data/graphics/field_objects/pics/effects/shadow_medium.png b/data/graphics/field_objects/pics/effects/shadow_medium.png new file mode 100644 index 000000000..7bf9afef7 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/shadow_medium.png differ diff --git a/data/graphics/field_objects/pics/effects/shadow_small.png b/data/graphics/field_objects/pics/effects/shadow_small.png new file mode 100644 index 000000000..6c13c1b86 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/shadow_small.png differ diff --git a/data/graphics/field_objects/pics/effects/short_grass/0.png b/data/graphics/field_objects/pics/effects/short_grass/0.png new file mode 100644 index 000000000..a5d5181db Binary files /dev/null and b/data/graphics/field_objects/pics/effects/short_grass/0.png differ diff --git a/data/graphics/field_objects/pics/effects/short_grass/1.png b/data/graphics/field_objects/pics/effects/short_grass/1.png new file mode 100644 index 000000000..17a62968a Binary files /dev/null and b/data/graphics/field_objects/pics/effects/short_grass/1.png differ diff --git a/data/graphics/field_objects/pics/effects/splash/0.png b/data/graphics/field_objects/pics/effects/splash/0.png new file mode 100644 index 000000000..2b29c76ae Binary files /dev/null and b/data/graphics/field_objects/pics/effects/splash/0.png differ diff --git a/data/graphics/field_objects/pics/effects/splash/1.png b/data/graphics/field_objects/pics/effects/splash/1.png new file mode 100644 index 000000000..180721342 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/splash/1.png differ diff --git a/data/graphics/field_objects/pics/effects/surf_blob/0.png b/data/graphics/field_objects/pics/effects/surf_blob/0.png new file mode 100644 index 000000000..c4a14e052 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/surf_blob/0.png differ diff --git a/data/graphics/field_objects/pics/effects/surf_blob/1.png b/data/graphics/field_objects/pics/effects/surf_blob/1.png new file mode 100644 index 000000000..25fd5ad92 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/surf_blob/1.png differ diff --git a/data/graphics/field_objects/pics/effects/surf_blob/2.png b/data/graphics/field_objects/pics/effects/surf_blob/2.png new file mode 100644 index 000000000..532da2611 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/surf_blob/2.png differ diff --git a/data/graphics/field_objects/pics/effects/tall_grass/0.png b/data/graphics/field_objects/pics/effects/tall_grass/0.png new file mode 100644 index 000000000..00d596b4c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tall_grass/0.png differ diff --git a/data/graphics/field_objects/pics/effects/tall_grass/1.png b/data/graphics/field_objects/pics/effects/tall_grass/1.png new file mode 100644 index 000000000..0c8bdd84e Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tall_grass/1.png differ diff --git a/data/graphics/field_objects/pics/effects/tall_grass/2.png b/data/graphics/field_objects/pics/effects/tall_grass/2.png new file mode 100644 index 000000000..55d971758 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tall_grass/2.png differ diff --git a/data/graphics/field_objects/pics/effects/tall_grass/3.png b/data/graphics/field_objects/pics/effects/tall_grass/3.png new file mode 100644 index 000000000..0add11083 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tall_grass/3.png differ diff --git a/data/graphics/field_objects/pics/effects/tall_grass/4.png b/data/graphics/field_objects/pics/effects/tall_grass/4.png new file mode 100644 index 000000000..ca164d3cc Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tall_grass/4.png differ diff --git a/data/graphics/field_objects/pics/effects/tree_disguise/0.png b/data/graphics/field_objects/pics/effects/tree_disguise/0.png new file mode 100644 index 000000000..2bce7f9ed Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tree_disguise/0.png differ diff --git a/data/graphics/field_objects/pics/effects/tree_disguise/1.png b/data/graphics/field_objects/pics/effects/tree_disguise/1.png new file mode 100644 index 000000000..e29336cd4 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tree_disguise/1.png differ diff --git a/data/graphics/field_objects/pics/effects/tree_disguise/2.png b/data/graphics/field_objects/pics/effects/tree_disguise/2.png new file mode 100644 index 000000000..2cca165c5 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tree_disguise/2.png differ diff --git a/data/graphics/field_objects/pics/effects/tree_disguise/3.png b/data/graphics/field_objects/pics/effects/tree_disguise/3.png new file mode 100644 index 000000000..85dd30cfd Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tree_disguise/3.png differ diff --git a/data/graphics/field_objects/pics/effects/tree_disguise/4.png b/data/graphics/field_objects/pics/effects/tree_disguise/4.png new file mode 100644 index 000000000..8c7821634 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tree_disguise/4.png differ diff --git a/data/graphics/field_objects/pics/effects/tree_disguise/5.png b/data/graphics/field_objects/pics/effects/tree_disguise/5.png new file mode 100644 index 000000000..2ffd56fcc Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tree_disguise/5.png differ diff --git a/data/graphics/field_objects/pics/effects/tree_disguise/6.png b/data/graphics/field_objects/pics/effects/tree_disguise/6.png new file mode 100644 index 000000000..bc9333162 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/tree_disguise/6.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_16/0.png b/data/graphics/field_objects/pics/effects/unknown_16/0.png new file mode 100644 index 000000000..491801c32 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_16/0.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_16/1.png b/data/graphics/field_objects/pics/effects/unknown_16/1.png new file mode 100644 index 000000000..f83ca15da Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_16/1.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_16/2.png b/data/graphics/field_objects/pics/effects/unknown_16/2.png new file mode 100644 index 000000000..073aa9b7e Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_16/2.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_16/3.png b/data/graphics/field_objects/pics/effects/unknown_16/3.png new file mode 100644 index 000000000..e7b5c96cf Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_16/3.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_16/4.png b/data/graphics/field_objects/pics/effects/unknown_16/4.png new file mode 100644 index 000000000..8972d5d81 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_16/4.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_16/5.png b/data/graphics/field_objects/pics/effects/unknown_16/5.png new file mode 100644 index 000000000..d570a9a8d Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_16/5.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_17/0.png b/data/graphics/field_objects/pics/effects/unknown_17/0.png new file mode 100644 index 000000000..9c804844e Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_17/0.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_17/1.png b/data/graphics/field_objects/pics/effects/unknown_17/1.png new file mode 100644 index 000000000..6628b5820 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_17/1.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_17/2.png b/data/graphics/field_objects/pics/effects/unknown_17/2.png new file mode 100644 index 000000000..a5cdcca57 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_17/2.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_17/3.png b/data/graphics/field_objects/pics/effects/unknown_17/3.png new file mode 100644 index 000000000..2f9a20019 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_17/3.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_17/4.png b/data/graphics/field_objects/pics/effects/unknown_17/4.png new file mode 100644 index 000000000..ce0bc29aa Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_17/4.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_17/5.png b/data/graphics/field_objects/pics/effects/unknown_17/5.png new file mode 100644 index 000000000..f92888a3a Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_17/5.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_17/6.png b/data/graphics/field_objects/pics/effects/unknown_17/6.png new file mode 100644 index 000000000..7e740a956 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_17/6.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_17/7.png b/data/graphics/field_objects/pics/effects/unknown_17/7.png new file mode 100644 index 000000000..25d90e16c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_17/7.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_18/0.png b/data/graphics/field_objects/pics/effects/unknown_18/0.png new file mode 100644 index 000000000..70b39df59 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_18/0.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_18/1.png b/data/graphics/field_objects/pics/effects/unknown_18/1.png new file mode 100644 index 000000000..392298f5a Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_18/1.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_18/2.png b/data/graphics/field_objects/pics/effects/unknown_18/2.png new file mode 100644 index 000000000..ff418e940 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_18/2.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_18/3.png b/data/graphics/field_objects/pics/effects/unknown_18/3.png new file mode 100644 index 000000000..0e1e13438 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_18/3.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_19/0.png b/data/graphics/field_objects/pics/effects/unknown_19/0.png new file mode 100644 index 000000000..ef8005066 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_19/0.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_19/1.png b/data/graphics/field_objects/pics/effects/unknown_19/1.png new file mode 100644 index 000000000..6fde1a291 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_19/1.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_19/2.png b/data/graphics/field_objects/pics/effects/unknown_19/2.png new file mode 100644 index 000000000..c385fd84c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_19/2.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_19/3.png b/data/graphics/field_objects/pics/effects/unknown_19/3.png new file mode 100644 index 000000000..084c20314 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_19/3.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_20/0.png b/data/graphics/field_objects/pics/effects/unknown_20/0.png new file mode 100644 index 000000000..eec853d53 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_20/0.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_20/1.png b/data/graphics/field_objects/pics/effects/unknown_20/1.png new file mode 100644 index 000000000..f4782fc67 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_20/1.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_20/2.png b/data/graphics/field_objects/pics/effects/unknown_20/2.png new file mode 100644 index 000000000..416dae69d Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_20/2.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_20/3.png b/data/graphics/field_objects/pics/effects/unknown_20/3.png new file mode 100644 index 000000000..3d966e81c Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_20/3.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_20/4.png b/data/graphics/field_objects/pics/effects/unknown_20/4.png new file mode 100644 index 000000000..6bbfbca12 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_20/4.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_29/0.png b/data/graphics/field_objects/pics/effects/unknown_29/0.png new file mode 100644 index 000000000..87fe91c97 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_29/0.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_29/1.png b/data/graphics/field_objects/pics/effects/unknown_29/1.png new file mode 100644 index 000000000..c20fb34bb Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_29/1.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_29/2.png b/data/graphics/field_objects/pics/effects/unknown_29/2.png new file mode 100644 index 000000000..def972b20 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_29/2.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_33/0.png b/data/graphics/field_objects/pics/effects/unknown_33/0.png new file mode 100644 index 000000000..2241eabd3 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_33/0.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_33/1.png b/data/graphics/field_objects/pics/effects/unknown_33/1.png new file mode 100644 index 000000000..5f90405d8 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_33/1.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_33/2.png b/data/graphics/field_objects/pics/effects/unknown_33/2.png new file mode 100644 index 000000000..3f1c3a76a Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_33/2.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_33/3.png b/data/graphics/field_objects/pics/effects/unknown_33/3.png new file mode 100644 index 000000000..2696f4a5a Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_33/3.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_33/4.png b/data/graphics/field_objects/pics/effects/unknown_33/4.png new file mode 100644 index 000000000..c2d1785bf Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_33/4.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_35/0.png b/data/graphics/field_objects/pics/effects/unknown_35/0.png new file mode 100644 index 000000000..c2ae128f7 Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_35/0.png differ diff --git a/data/graphics/field_objects/pics/effects/unknown_35/1.png b/data/graphics/field_objects/pics/effects/unknown_35/1.png new file mode 100644 index 000000000..fe68b19fd Binary files /dev/null and b/data/graphics/field_objects/pics/effects/unknown_35/1.png differ