diff options
| author | DizzyEggg <jajkodizzy@wp.pl> | 2017-11-17 22:28:55 +0100 | 
|---|---|---|
| committer | DizzyEggg <jajkodizzy@wp.pl> | 2017-11-17 22:28:55 +0100 | 
| commit | 6b075ae0ffc82a8aff6ae5812f9f6f7675c08031 (patch) | |
| tree | b550c921e61c65ea61090173111dee215e4edf43 /asm | |
| parent | a2a17bba926d1465108ab55c47f9145494ff78e5 (diff) | |
wild encounter file is decompiled
Diffstat (limited to 'asm')
| -rw-r--r-- | asm/field_control_avatar.s | 2 | ||||
| -rw-r--r-- | asm/field_player_avatar.s | 2 | ||||
| -rw-r--r-- | asm/rom4.s | 4 | ||||
| -rw-r--r-- | asm/wild_encounter.s | 508 | 
4 files changed, 4 insertions, 512 deletions
| diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s index a6d3c93ea..57415ca36 100644 --- a/asm/field_control_avatar.s +++ b/asm/field_control_avatar.s @@ -1246,7 +1246,7 @@ sub_809C8DC: @ 809C8DC  	lsrs r0, 24  	cmp r0, 0x1  	beq _0809C92E -	bl sub_80B5870 +	bl UpdateRepelCounter  	lsls r0, 24  	lsrs r0, 24  	cmp r0, 0x1 diff --git a/asm/field_player_avatar.s b/asm/field_player_avatar.s index 28c90d23d..ae405f127 100644 --- a/asm/field_player_avatar.s +++ b/asm/field_player_avatar.s @@ -4640,7 +4640,7 @@ _0808CD58:  	ldrh r0, [r5, 0x26]  	lsls r0, 24  	lsrs r0, 24 -	bl sub_80B5734 +	bl FishingWildEncounter  	movs r0, 0x1  	bl sub_80ED950  	ldr r0, =Task_Fish diff --git a/asm/rom4.s b/asm/rom4.s index 3f59c2807..8b7dec1ae 100644 --- a/asm/rom4.s +++ b/asm/rom4.s @@ -2675,12 +2675,12 @@ sub_8085B2C: @ 8085B2C  	ldr r1, =gUnknown_02032306  	movs r0, 0x1  	strb r0, [r1] -	bl sub_80B582C +	bl GetLocalWaterMon  	b _08085B62  	.pool  _08085B5C:  	ldr r0, =gUnknown_02032306 -	bl wild_pokemon_rand_for_map +	bl GetLocalWildMon  _08085B62:  	ldr r1, =gUnknown_02032304  	strh r0, [r1] diff --git a/asm/wild_encounter.s b/asm/wild_encounter.s index d8f02ae83..da4dca0ed 100644 --- a/asm/wild_encounter.s +++ b/asm/wild_encounter.s @@ -6,512 +6,4 @@  	.text - - -	thumb_func_start sub_80B5734 -sub_80B5734: @ 80B5734 -	push {r4,r5,lr} -	lsls r0, 24 -	lsrs r5, r0, 24 -	bl CheckFeebas -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x1 -	bne _080B5764 -	ldr r4, =gUnknown_08553A78 -	adds r0, r4, 0 -	bl ChooseWildMonLevel -	adds r1, r0, 0 -	lsls r1, 24 -	lsrs r1, 24 -	ldrh r4, [r4, 0x2] -	adds r0, r4, 0 -	bl CreateWildMon -	b _080B5784 -	.pool -_080B5764: -	ldr r4, =gWildMonHeaders -	bl GetCurrentMapWildMonHeaderId -	lsls r0, 16 -	lsrs r0, 16 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 2 -	adds r4, 0x10 -	adds r1, r4 -	ldr r0, [r1] -	adds r1, r5, 0 -	bl GenerateFishingWildMon -	lsls r0, 16 -	lsrs r4, r0, 16 -_080B5784: -	movs r0, 0xC -	bl IncrementGameStat -	adds r0, r4, 0 -	bl sub_80EDA3C -	bl BattleSetup_StartWildBattle -	pop {r4,r5} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_80B5734 - -	thumb_func_start wild_pokemon_rand_for_map -wild_pokemon_rand_for_map: @ 80B57A0 -	push {r4-r6,lr} -	adds r6, r0, 0 -	movs r0, 0 -	strb r0, [r6] -	bl GetCurrentMapWildMonHeaderId -	lsls r0, 16 -	lsrs r3, r0, 16 -	ldr r0, =0x0000ffff -	cmp r3, r0 -	beq _080B57D2 -	ldr r2, =gWildMonHeaders -	lsls r1, r3, 2 -	adds r1, r3 -	lsls r1, 2 -	adds r0, r2, 0x4 -	adds r0, r1, r0 -	ldr r5, [r0] -	adds r2, 0x8 -	adds r1, r2 -	ldr r4, [r1] -	cmp r5, 0 -	bne _080B57E0 -	cmp r4, 0 -	bne _080B57E6 -_080B57D2: -	movs r0, 0 -	b _080B5826 -	.pool -_080B57E0: -	cmp r4, 0 -	bne _080B57F4 -	b _080B5818 -_080B57E6: -	movs r0, 0x1 -	strb r0, [r6] -	bl ChooseWildMonIndex_WaterRock -	lsls r0, 24 -	ldr r1, [r4, 0x4] -	b _080B5820 -_080B57F4: -	bl Random -	lsls r0, 16 -	lsrs r0, 16 -	movs r1, 0x64 -	bl __umodsi3 -	lsls r0, 16 -	lsrs r0, 16 -	cmp r0, 0x4F -	bls _080B5818 -	movs r0, 0x1 -	strb r0, [r6] -	bl ChooseWildMonIndex_WaterRock -	lsls r0, 24 -	ldr r1, [r4, 0x4] -	b _080B5820 -_080B5818: -	bl ChooseWildMonIndex_Land -	lsls r0, 24 -	ldr r1, [r5, 0x4] -_080B5820: -	lsrs r0, 22 -	adds r0, r1 -	ldrh r0, [r0, 0x2] -_080B5826: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end wild_pokemon_rand_for_map - -	thumb_func_start sub_80B582C -sub_80B582C: @ 80B582C -	push {r4,lr} -	bl GetCurrentMapWildMonHeaderId -	lsls r0, 16 -	lsrs r2, r0, 16 -	ldr r0, =0x0000ffff -	cmp r2, r0 -	beq _080B5868 -	ldr r1, =gWildMonHeaders -	lsls r0, r2, 2 -	adds r0, r2 -	lsls r0, 2 -	adds r1, 0x8 -	adds r0, r1 -	ldr r4, [r0] -	cmp r4, 0 -	beq _080B5868 -	bl ChooseWildMonIndex_WaterRock -	lsls r0, 24 -	ldr r1, [r4, 0x4] -	lsrs r0, 22 -	adds r0, r1 -	ldrh r0, [r0, 0x2] -	b _080B586A -	.pool -_080B5868: -	movs r0, 0 -_080B586A: -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_80B582C - -	thumb_func_start sub_80B5870 -sub_80B5870: @ 80B5870 -	push {r4,r5,lr} -	bl InBattlePike -	lsls r0, 24 -	cmp r0, 0 -	bne _080B58C4 -	bl InBattlePyramid -	lsls r0, 24 -	cmp r0, 0 -	bne _080B58C4 -	bl InUnionRoom -	cmp r0, 0x1 -	beq _080B58C4 -	ldr r5, =0x00004021 -	adds r0, r5, 0 -	bl VarGet -	lsls r0, 16 -	lsrs r0, 16 -	cmp r0, 0 -	beq _080B58C4 -	subs r4, r0, 0x1 -	lsls r4, 16 -	lsrs r4, 16 -	adds r0, r5, 0 -	adds r1, r4, 0 -	bl VarSet -	cmp r4, 0 -	bne _080B58C4 -	ldr r0, =EventScript_RepelWoreOff -	bl ScriptContext1_SetupScript -	movs r0, 0x1 -	b _080B58C6 -	.pool -_080B58C4: -	movs r0, 0 -_080B58C6: -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end sub_80B5870 - -	thumb_func_start IsWildLevelAllowedByRepel -IsWildLevelAllowedByRepel: @ 80B58CC -	push {r4-r6,lr} -	lsls r0, 24 -	lsrs r6, r0, 24 -	ldr r0, =0x00004021 -	bl VarGet -	lsls r0, 16 -	cmp r0, 0 -	beq _080B5912 -	movs r5, 0 -_080B58E0: -	movs r0, 0x64 -	adds r1, r5, 0 -	muls r1, r0 -	ldr r0, =gPlayerParty -	adds r4, r1, r0 -	adds r0, r4, 0 -	movs r1, 0x39 -	bl GetMonData -	cmp r0, 0 -	beq _080B5920 -	adds r0, r4, 0 -	movs r1, 0x2D -	bl GetMonData -	cmp r0, 0 -	bne _080B5920 -	adds r0, r4, 0 -	movs r1, 0x38 -	bl GetMonData -	lsls r0, 24 -	lsrs r0, 24 -	cmp r6, r0 -	bcc _080B592A -_080B5912: -	movs r0, 0x1 -	b _080B592C -	.pool -_080B5920: -	adds r0, r5, 0x1 -	lsls r0, 24 -	lsrs r5, r0, 24 -	cmp r5, 0x5 -	bls _080B58E0 -_080B592A: -	movs r0, 0 -_080B592C: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end IsWildLevelAllowedByRepel - -	thumb_func_start IsAbilityAllowingEncounter -@ _BOOL1 IsAbilityAllowingEncounter(u8 wildMonLevel) -IsAbilityAllowingEncounter: @ 80B5934 -	push {r4,r5,lr} -	lsls r0, 24 -	lsrs r5, r0, 24 -	ldr r4, =gPlayerParty -	adds r0, r4, 0 -	movs r1, 0x6 -	bl GetMonData -	cmp r0, 0 -	bne _080B5988 -	adds r0, r4, 0 -	bl GetMonAbility -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x33 -	beq _080B595A -	cmp r0, 0x16 -	bne _080B5988 -_080B595A: -	adds r0, r4, 0 -	movs r1, 0x38 -	bl GetMonData -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x5 -	bls _080B5988 -	subs r0, 0x5 -	cmp r5, r0 -	bgt _080B5988 -	bl Random -	lsls r0, 16 -	lsrs r0, 16 -	movs r1, 0x1 -	ands r0, r1 -	cmp r0, 0 -	bne _080B5988 -	movs r0, 0 -	b _080B598A -	.pool -_080B5988: -	movs r0, 0x1 -_080B598A: -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end IsAbilityAllowingEncounter - -	thumb_func_start TryGetRandomWildMonIndexByType -@ _BOOL1 TryGetRandomWildMonIndexByType(WildMonEntry *mons, u8 type, u8 numMons, u8 *monIndex) -TryGetRandomWildMonIndexByType: @ 80B5990 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x4 -	mov r7, sp -	mov r12, r0 -	mov r8, r3 -	lsls r1, 24 -	lsrs r1, 24 -	str r1, [r7] -	lsls r2, 24 -	lsrs r2, 24 -	mov r9, sp -	adds r0, r2, 0x3 -	lsrs r0, 2 -	lsls r0, 2 -	mov r1, sp -	subs r1, r0 -	mov sp, r1 -	mov r5, sp -	movs r3, 0 -	cmp r3, r2 -	bcs _080B59D2 -	movs r1, 0 -_080B59C4: -	adds r0, r5, r3 -	strb r1, [r0] -	adds r0, r3, 0x1 -	lsls r0, 24 -	lsrs r3, r0, 24 -	cmp r3, r2 -	bcc _080B59C4 -_080B59D2: -	movs r4, 0 -	movs r3, 0 -	cmp r4, r2 -	bcs _080B5A12 -	ldr r6, =gBaseStats -	mov r10, r6 -_080B59DE: -	lsls r0, r3, 2 -	add r0, r12 -	ldrh r1, [r0, 0x2] -	lsls r0, r1, 3 -	subs r0, r1 -	lsls r0, 2 -	mov r6, r10 -	adds r1, r0, r6 -	ldrb r0, [r1, 0x6] -	ldr r6, [r7] -	cmp r0, r6 -	beq _080B59FC -	ldrb r0, [r1, 0x7] -	cmp r0, r6 -	bne _080B5A08 -_080B59FC: -	adds r1, r4, 0 -	adds r0, r1, 0x1 -	lsls r0, 24 -	lsrs r4, r0, 24 -	adds r1, r5, r1 -	strb r3, [r1] -_080B5A08: -	adds r0, r3, 0x1 -	lsls r0, 24 -	lsrs r3, r0, 24 -	cmp r3, r2 -	bcc _080B59DE -_080B5A12: -	cmp r4, 0 -	beq _080B5A1A -	cmp r4, r2 -	bne _080B5A24 -_080B5A1A: -	movs r0, 0 -	b _080B5A3C -	.pool -_080B5A24: -	bl Random -	lsls r0, 16 -	lsrs r0, 16 -	adds r1, r4, 0 -	bl __modsi3 -	adds r0, r5, r0 -	ldrb r0, [r0] -	mov r1, r8 -	strb r0, [r1] -	movs r0, 0x1 -_080B5A3C: -	mov sp, r9 -	add sp, 0x4 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end TryGetRandomWildMonIndexByType - -	thumb_func_start TryGetAbilityInfluencedWildMonIndex -@ _BOOL1 TryGetAbilityInfluencedWildMonIndex(WildMonEntry *mons, u8 type, u8 abilityId, u8 *monIndex) -TryGetAbilityInfluencedWildMonIndex: @ 80B5A50 -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	adds r7, r0, 0 -	mov r8, r3 -	lsls r1, 24 -	lsrs r6, r1, 24 -	lsls r2, 24 -	lsrs r5, r2, 24 -	ldr r4, =gPlayerParty -	adds r0, r4, 0 -	movs r1, 0x6 -	bl GetMonData -	cmp r0, 0 -	bne _080B5AA4 -	adds r0, r4, 0 -	bl GetMonAbility -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, r5 -	bne _080B5AA4 -	bl Random -	lsls r0, 16 -	lsrs r0, 16 -	movs r1, 0x1 -	ands r0, r1 -	cmp r0, 0 -	bne _080B5AA4 -	adds r0, r7, 0 -	adds r1, r6, 0 -	movs r2, 0xC -	mov r3, r8 -	bl TryGetRandomWildMonIndexByType -	lsls r0, 24 -	lsrs r0, 24 -	b _080B5AA6 -	.pool -_080B5AA4: -	movs r0, 0 -_080B5AA6: -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end TryGetAbilityInfluencedWildMonIndex - -	thumb_func_start ApplyFluteEncounterRateMod -@ void ApplyFluteEncounterRateMod(u32 *val) -ApplyFluteEncounterRateMod: @ 80B5AB0 -	push {r4,lr} -	adds r4, r0, 0 -	ldr r0, =0x000008ad -	bl FlagGet -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x1 -	bne _080B5AD0 -	ldr r0, [r4] -	lsrs r1, r0, 1 -	adds r0, r1 -	b _080B5AE2 -	.pool -_080B5AD0: -	ldr r0, =0x000008ae -	bl FlagGet -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x1 -	bne _080B5AE4 -	ldr r0, [r4] -	lsrs r0, 1 -_080B5AE2: -	str r0, [r4] -_080B5AE4: -	pop {r4} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end ApplyFluteEncounterRateMod - -	thumb_func_start ApplyCleanseTagEncounterRateMod -ApplyCleanseTagEncounterRateMod: @ 80B5AF0 -	push {r4,lr} -	adds r4, r0, 0 -	ldr r0, =gPlayerParty -	movs r1, 0xC -	bl GetMonData -	cmp r0, 0xBE -	bne _080B5B0C -	ldr r0, [r4] -	lsls r0, 1 -	movs r1, 0x3 -	bl __udivsi3 -	str r0, [r4] -_080B5B0C: -	pop {r4} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end ApplyCleanseTagEncounterRateMod -  	.align 2, 0 @ Don't pad with nop. | 
