This commit is contained in:
jiangzhengwenjz 2019-11-08 10:30:17 +08:00
parent 7e4a3697cd
commit 94c1924ed8
9 changed files with 1593 additions and 3119 deletions

View File

@ -2672,4 +2672,99 @@ _080AF052:
bx r0
thumb_func_end sub_80AEFA0
thumb_func_start sub_80AF058
sub_80AF058: @ 80AF058
push {r4,r5,lr}
adds r4, r0, 0
lsls r1, 24
lsrs r5, r1, 24
ldr r0, _080AF0B4 @ =gUnknown_83E5F38
movs r2, 0x22
ldrsh r1, [r4, r2]
movs r3, 0x24
ldrsh r2, [r4, r3]
ldrh r3, [r4, 0x20]
lsls r3, 24
lsrs r3, 24
bl CreateSprite
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0x40
beq _080AF09C
ldr r3, _080AF0B8 @ =gSprites
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r1, r3, 0
adds r1, 0x1C
adds r1, r0, r1
ldr r2, _080AF0BC @ =sub_80AF0C8
str r2, [r1]
adds r0, r3
strh r5, [r0, 0x3A]
movs r1, 0xA
strh r1, [r0, 0x3C]
ldrh r0, [r4, 0x1C]
adds r0, 0x1
strh r0, [r4, 0x1C]
_080AF09C:
ldrh r2, [r4, 0x24]
movs r0, 0x24
ldrsh r1, [r4, r0]
movs r3, 0x26
ldrsh r0, [r4, r3]
cmp r1, r0
bge _080AF0C0
adds r0, r2, 0
adds r0, 0x20
strh r0, [r4, 0x24]
movs r0, 0
b _080AF0C2
.align 2, 0
_080AF0B4: .4byte gUnknown_83E5F38
_080AF0B8: .4byte gSprites
_080AF0BC: .4byte sub_80AF0C8
_080AF0C0:
movs r0, 0x1
_080AF0C2:
pop {r4,r5}
pop {r1}
bx r1
thumb_func_end sub_80AF058
thumb_func_start sub_80AF0C8
sub_80AF0C8: @ 80AF0C8
push {r4,lr}
adds r4, r0, 0
adds r0, 0x3F
ldrb r1, [r0]
movs r0, 0x10
ands r0, r1
cmp r0, 0
beq _080AF0FC
ldr r3, _080AF104 @ =gTasks
movs r0, 0x3C
ldrsh r1, [r4, r0]
lsls r1, 1
movs r0, 0x3A
ldrsh r2, [r4, r0]
lsls r0, r2, 2
adds r0, r2
lsls r0, 3
adds r1, r0
adds r3, 0x8
adds r1, r3
ldrh r0, [r1]
subs r0, 0x1
strh r0, [r1]
adds r0, r4, 0
bl DestroySprite
_080AF0FC:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_080AF104: .4byte gTasks
thumb_func_end sub_80AF0C8
.align 2, 0 @ Don't pad with nop.

3099
asm/ice.s

File diff suppressed because it is too large Load Diff

View File

@ -187,19 +187,4 @@ gUnknown_83E6278:: @ 83E6278
.incbin "baserom.gba", 0x3E6278, 0x30
gUnknown_83E62A8:: @ 83E62A8
.incbin "baserom.gba", 0x3E62A8, 0x138
gUnknown_83E63E0:: @ 83E63E0
.incbin "baserom.gba", 0x3E63E0, 0xF4
gUnknown_83E64D4:: @ 83E64D4
.incbin "baserom.gba", 0x3E64D4, 0x2C
gUnknown_83E6500:: @ 83E6500
.incbin "baserom.gba", 0x3E6500, 0x2C
gUnknown_83E652C:: @ 83E652C
.incbin "baserom.gba", 0x3E652C, 0x78
gUnknown_83E65A4:: @ 83E65A4
.incbin "baserom.gba", 0x3E65A4, 0xE8
.incbin "baserom.gba", 0x3E62A8, 0x18

View File

@ -25,7 +25,7 @@ gUnknown_83C2D00:: @ 83C2D00
gUnknown_83C2D20:: @ 83C2D20
.incbin "baserom.gba", 0x3C2D20, 0x820
gUnknown_83C3540:: @ 83C3540
gWeatherFog1Tiles:: @ 83C3540
.incbin "baserom.gba", 0x3C3540, 0x3080
gUnknown_83C65C0:: @ 83C65C0

View File

@ -13760,7 +13760,7 @@ gFile_graphics_battle_anims_sprites_277_sheet:: @ 8E7EE00
.incbin "graphics/battle_anims/sprites/277.4bpp.lz"
.align 2
gFile_graphics_battle_anims_backgrounds_fog_tilemap:: @ 8E7F1F4
gBattleAnimFogTilemap:: @ 8E7F1F4
.incbin "graphics/battle_anims/backgrounds/fog.bin.lz"
.align 2

View File

@ -84,6 +84,11 @@ extern struct OamData gOamData_83AC9E0;
extern struct OamData gOamData_83ACA20;
extern struct OamData gOamData_83ACA80;
extern struct OamData gOamData_83ACAA0;
extern struct OamData gOamData_83ACBE8;
extern struct OamData gOamData_83ACAE8;
extern struct OamData gOamData_83ACB88;
extern struct OamData gOamData_83ACB48;
extern struct OamData gOamData_83ACB28;
void ClearBattleAnimationVars(void);
void DoMoveAnim(u16 move);
@ -357,6 +362,12 @@ void sub_80B2868(u8 taskId);
// fighting.c
void sub_80B1530(u8 taskId);
// ice.c
void AnimTask_Haze1(u8 taskId);
void AnimTask_LoadMistTiles(u8 taskId);
void AnimTask_Hail1(u8 taskId);
void AnimTask_GetRolloutCounter(u8 taskId);
// water.s
extern const union AnimCmd *const gUnknown_83E5958[];
extern const union AnimCmd *const gUnknown_83E5A78[];

View File

@ -2915,7 +2915,6 @@ extern const u8 gBerryFixWindow_Tilemap[];
extern const u8 gBerryFixWindow_Pal[];
// item_pc
extern const u8 gItemPcTiles[];
extern const u32 gItemPcBgPals[];
extern const u8 gItemPcTilemap[];
@ -3736,6 +3735,11 @@ extern const u32 gSubstituteDollGfx[];
extern const u32 gSubstituteDollTilemap[];
extern const u32 gSubstituteDollPal[];
// ice
extern const u8 gWeatherFog1Tiles[];
extern const u32 gBattleAnimFogTilemap[];
extern const u16 gUnknown_83C2CE0[];
// credits
extern const u32 gCreditsPokeballBgGfxTiles[];
extern const u32 gCreditsPokeballBgGfxMap[];

View File

@ -159,7 +159,7 @@ SECTIONS {
asm/water.o(.text);
asm/fire.o(.text);
asm/electric.o(.text);
asm/ice.o(.text);
src/ice.o(.text);
src/fighting.o(.text);
src/poison.o(.text);
src/flying.o(.text);
@ -450,6 +450,7 @@ SECTIONS {
src/pokemon_size_record.o(.rodata);
data/item_use.o(.rodata);
data/battle_anim_effects_misc.o(.rodata);
src/ice.o(.rodata);
src/fighting.o(.rodata);
src/poison.o(.rodata);
src/flying.o(.rodata);

1477
src/ice.c Normal file

File diff suppressed because it is too large Load Diff