Merge pull request #282 from PikalaxALT/field_effect_helpers

port field_effect_helpers from emerald
This commit is contained in:
PikalaxALT
2020-03-02 14:11:32 -05:00
committed by GitHub
19 changed files with 1543 additions and 4467 deletions
+42 -42
View File
@@ -1084,7 +1084,7 @@ _0805E5CA:
ldrh r0, [r6, 0x2]
lsls r1, 28
lsrs r1, 28
bl npc_load_two_palettes__no_record
bl LoadPlayerObjectReflectionPalette
b _0805E606
.align 2, 0
_0805E5F4: .4byte gObjectEvents
@@ -1094,7 +1094,7 @@ _0805E5F8:
ldrh r0, [r6, 0x2]
lsls r1, 28
lsrs r1, 28
bl npc_load_two_palettes__and_record
bl LoadSpecialObjectReflectionPalette
_0805E606:
ldrb r0, [r5, 0x6]
cmp r0, 0x4C
@@ -1728,7 +1728,7 @@ sprite_new: @ 805E9F8
ldrh r0, [r4, 0x2]
lsls r1, 28
lsrs r1, 28
bl npc_load_two_palettes__and_record
bl LoadSpecialObjectReflectionPalette
_0805EAE4:
ldr r1, [sp, 0x1C]
cmp r1, 0
@@ -1852,7 +1852,7 @@ sub_805EB44: @ 805EB44
ldrh r0, [r7, 0x2]
lsls r1, 28
lsrs r1, 28
bl npc_load_two_palettes__and_record
bl LoadSpecialObjectReflectionPalette
_0805EBE6:
ldr r1, [sp, 0x18]
cmp r1, 0
@@ -2239,7 +2239,7 @@ _0805EE70:
ldrh r0, [r5, 0x2]
lsls r1, 28
lsrs r1, 28
bl npc_load_two_palettes__no_record
bl LoadPlayerObjectReflectionPalette
_0805EECA:
ldrb r0, [r5, 0xC]
lsls r1, r0, 28
@@ -2248,7 +2248,7 @@ _0805EECA:
bls _0805EEDC
ldrh r0, [r5, 0x2]
lsrs r1, 28
bl npc_load_two_palettes__and_record
bl LoadSpecialObjectReflectionPalette
_0805EEDC:
mov r0, sp
strh r4, [r0, 0x2]
@@ -2315,7 +2315,7 @@ _0805EEDC:
mov r0, r8
adds r1, r7, 0
bl SetPlayerAvatarObjectEventIdAndObjectId
bl sub_80DB0C4
bl CreateWarpArrowSprite
strb r0, [r6, 0x1B]
_0805EF6A:
ldr r1, [sp, 0x20]
@@ -2470,7 +2470,7 @@ ObjectEventSetGraphicsId: @ 805F060
ldrh r0, [r5, 0x2]
lsls r1, 28
lsrs r1, 28
bl pal_patch_for_npc
bl PatchObjectPalette
_0805F09E:
ldrb r1, [r5, 0xC]
mov r0, r8
@@ -2480,7 +2480,7 @@ _0805F09E:
ldrh r0, [r5, 0x2]
lsls r1, 28
lsrs r1, 28
bl npc_load_two_palettes__and_record
bl LoadSpecialObjectReflectionPalette
_0805F0B2:
ldr r0, [r4, 0xC]
ldrh r0, [r0, 0x4]
@@ -2583,7 +2583,7 @@ _0805F152:
adds r2, 0x20
adds r3, r4, 0
adds r3, 0x22
bl sub_8063B1C
bl SetSpritePosToMapCoords
ldrh r0, [r5, 0x8]
lsls r0, 16
asrs r0, 17
@@ -3107,8 +3107,8 @@ _0805F530:
bx r1
thumb_func_end sub_805F510
thumb_func_start pal_patch_for_npc
pal_patch_for_npc: @ 805F538
thumb_func_start PatchObjectPalette
PatchObjectPalette: @ 805F538
push {r4,lr}
adds r4, r1, 0
lsls r0, 16
@@ -3135,7 +3135,7 @@ pal_patch_for_npc: @ 805F538
bx r0
.align 2, 0
_0805F570: .4byte gObjectEventSpritePalettes
thumb_func_end pal_patch_for_npc
thumb_func_end PatchObjectPalette
thumb_func_start pal_patch_for_npc_range
pal_patch_for_npc_range: @ 805F574
@@ -3150,7 +3150,7 @@ pal_patch_for_npc_range: @ 805F574
_0805F584:
ldrh r0, [r5]
adds r1, r4, 0
bl pal_patch_for_npc
bl PatchObjectPalette
adds r5, 0x2
adds r0, r4, 0x1
lsls r0, 24
@@ -3205,8 +3205,8 @@ _0805F5E2:
bx r1
thumb_func_end FindObjectEventPaletteIndexByTag
thumb_func_start npc_load_two_palettes__no_record
npc_load_two_palettes__no_record: @ 805F5E8
thumb_func_start LoadPlayerObjectReflectionPalette
LoadPlayerObjectReflectionPalette: @ 805F5E8
push {r4-r6,lr}
lsls r0, 16
lsrs r4, r0, 16
@@ -3214,14 +3214,14 @@ npc_load_two_palettes__no_record: @ 805F5E8
lsrs r5, r1, 24
adds r0, r4, 0
adds r1, r5, 0
bl pal_patch_for_npc
bl PatchObjectPalette
movs r3, 0
ldr r1, _0805F630 @ =gUnknown_83A5208
ldrh r0, [r1]
ldr r2, _0805F634 @ =0x000011ff
cmp r0, r2
beq _0805F650
ldr r0, _0805F638 @ =gUnknown_835B934
ldr r0, _0805F638 @ =gReflectionEffectPaletteMap
adds r5, r0
adds r6, r2, 0
_0805F60C:
@@ -3239,12 +3239,12 @@ _0805F60C:
adds r0, r1
ldrh r0, [r0]
ldrb r1, [r5]
bl pal_patch_for_npc
bl PatchObjectPalette
b _0805F650
.align 2, 0
_0805F630: .4byte gUnknown_83A5208
_0805F634: .4byte 0x000011ff
_0805F638: .4byte gUnknown_835B934
_0805F638: .4byte gReflectionEffectPaletteMap
_0805F63C: .4byte gUnknown_2037098
_0805F640:
adds r0, r3, 0x1
@@ -3259,10 +3259,10 @@ _0805F650:
pop {r4-r6}
pop {r0}
bx r0
thumb_func_end npc_load_two_palettes__no_record
thumb_func_end LoadPlayerObjectReflectionPalette
thumb_func_start npc_load_two_palettes__and_record
npc_load_two_palettes__and_record: @ 805F658
thumb_func_start LoadSpecialObjectReflectionPalette
LoadSpecialObjectReflectionPalette: @ 805F658
push {r4-r6,lr}
lsls r0, 16
lsrs r4, r0, 16
@@ -3272,14 +3272,14 @@ npc_load_two_palettes__and_record: @ 805F658
strh r4, [r0]
adds r0, r4, 0
adds r1, r5, 0
bl pal_patch_for_npc
bl PatchObjectPalette
movs r3, 0
ldr r1, _0805F6A8 @ =gUnknown_83A5278
ldrh r0, [r1]
ldr r2, _0805F6AC @ =0x000011ff
cmp r0, r2
beq _0805F6C8
ldr r0, _0805F6B0 @ =gUnknown_835B934
ldr r0, _0805F6B0 @ =gReflectionEffectPaletteMap
adds r5, r0
adds r6, r2, 0
_0805F680:
@@ -3297,13 +3297,13 @@ _0805F680:
adds r0, r1
ldrh r0, [r0]
ldrb r1, [r5]
bl pal_patch_for_npc
bl PatchObjectPalette
b _0805F6C8
.align 2, 0
_0805F6A4: .4byte gUnknown_203709A
_0805F6A8: .4byte gUnknown_83A5278
_0805F6AC: .4byte 0x000011ff
_0805F6B0: .4byte gUnknown_835B934
_0805F6B0: .4byte gReflectionEffectPaletteMap
_0805F6B4: .4byte gUnknown_2037098
_0805F6B8:
adds r0, r3, 0x1
@@ -3318,18 +3318,18 @@ _0805F6C8:
pop {r4-r6}
pop {r0}
bx r0
thumb_func_end npc_load_two_palettes__and_record
thumb_func_end LoadSpecialObjectReflectionPalette
thumb_func_start sub_805F6D0
sub_805F6D0: @ 805F6D0
lsls r0, 24
lsrs r0, 24
ldr r1, _0805F6DC @ =gUnknown_835B934
ldr r1, _0805F6DC @ =gReflectionEffectPaletteMap
adds r0, r1
ldrb r0, [r0]
bx lr
.align 2, 0
_0805F6DC: .4byte gUnknown_835B934
_0805F6DC: .4byte gReflectionEffectPaletteMap
thumb_func_end sub_805F6D0
thumb_func_start unref_sub_808EAC4
@@ -3413,7 +3413,7 @@ sub_805F724: @ 805F724
adds r2, 0x20
adds r3, r7, 0
adds r3, 0x22
bl sub_8063B1C
bl SetSpritePosToMapCoords
mov r1, r8
ldrh r0, [r1, 0x8]
lsls r0, 16
@@ -3979,8 +3979,8 @@ _0805FB5E:
bx r1
thumb_func_end CopySprite
thumb_func_start obj_unfreeze
obj_unfreeze: @ 805FB6C
thumb_func_start CreateCopySpriteAt
CreateCopySpriteAt: @ 805FB6C
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -4038,7 +4038,7 @@ _0805FBD2:
pop {r4-r7}
pop {r1}
bx r1
thumb_func_end obj_unfreeze
thumb_func_end CreateCopySpriteAt
thumb_func_start ObjectEventSetDirection
ObjectEventSetDirection: @ 805FBDC
@@ -4524,8 +4524,8 @@ _0805FF2A:
_0805FF30: .4byte gUnknown_83A5330
thumb_func_end npc_paltag_set_load
thumb_func_start npc_paltag_by_palslot
npc_paltag_by_palslot: @ 805FF34
thumb_func_start GetObjectPaletteTag
GetObjectPaletteTag: @ 805FF34
push {r4-r6,lr}
lsls r0, 24
lsrs r2, r0, 24
@@ -4591,7 +4591,7 @@ _0805FFA2:
_0805FFA8: .4byte gUnknown_83A5278
_0805FFAC: .4byte 0x000011ff
_0805FFB0: .4byte gUnknown_203709A
thumb_func_end npc_paltag_by_palslot
thumb_func_end GetObjectPaletteTag
thumb_func_start sub_805FFB4
sub_805FFB4: @ 805FFB4
@@ -12912,8 +12912,8 @@ _08063B14: .4byte gTotalCameraPixelOffsetX
_08063B18: .4byte gTotalCameraPixelOffsetY
thumb_func_end sub_8063AD4
thumb_func_start sub_8063B1C
sub_8063B1C: @ 8063B1C
thumb_func_start SetSpritePosToMapCoords
SetSpritePosToMapCoords: @ 8063B1C
push {r4-r7,lr}
adds r7, r2, 0
mov r12, r3
@@ -12997,7 +12997,7 @@ _08063BB4: .4byte gUnknown_3005050
_08063BB8: .4byte gTotalCameraPixelOffsetY
_08063BBC: .4byte 0xfff00000
_08063BC0: .4byte gSaveBlock1Ptr
thumb_func_end sub_8063B1C
thumb_func_end SetSpritePosToMapCoords
thumb_func_start sub_8063BC4
sub_8063BC4: @ 8063BC4
@@ -13019,7 +13019,7 @@ sub_8063BC4: @ 8063BC4
ldrsh r1, [r2, r3]
adds r2, r6, 0
mov r3, r8
bl sub_8063B1C
bl SetSpritePosToMapCoords
lsls r4, 16
asrs r4, 16
ldrh r0, [r6]
@@ -23568,7 +23568,7 @@ GroundEffect_JumpOnTallGrass: @ 80685FC
movs r7, 0x12
ldrsh r4, [r5, r7]
str r4, [sp]
bl sub_80DB564
bl FindTallGrassFieldEffectSpriteId
lsls r0, 24
lsrs r0, 24
cmp r0, 0x40
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -3158,7 +3158,7 @@ InitPlayerAvatar: @ 805CA3C
movs r1, 0x1
orrs r0, r1
strb r0, [r4, 0x2]
bl sub_80DB0C4
bl CreateWarpArrowSprite
strb r0, [r4, 0x1B]
adds r0, r4, 0
mov r1, r9
@@ -3403,7 +3403,7 @@ _0805CC62:
movs r1, 0
ldrsh r3, [r7, r1]
adds r1, r6, 0
bl sub_80DB134
bl ShowWarpArrowSprite
b _0805CCC2
.align 2, 0
_0805CCA4: .4byte gUnknown_835B890
@@ -3419,7 +3419,7 @@ _0805CCA8:
cmp r1, 0x3
ble _0805CC62
ldrb r0, [r5, 0x1B]
bl objid_set_invisible
bl SetSpriteInvisible
_0805CCC2:
add sp, 0x4
pop {r3,r4}
+4 -4
View File
@@ -1906,8 +1906,8 @@ _0807AA84: .4byte gUnknown_2037F34
_0807AA88: .4byte 0x000006c6
thumb_func_end IsWeatherNotFadingIn
thumb_func_start sub_807AA8C
sub_807AA8C: @ 807AA8C
thumb_func_start UpdateSpritePaletteWithWeather
UpdateSpritePaletteWithWeather: @ 807AA8C
push {r4-r6,lr}
lsls r0, 24
lsrs r0, 8
@@ -2017,7 +2017,7 @@ _0807AB68:
bx r0
.align 2, 0
_0807AB70: .4byte 0x000073fc
thumb_func_end sub_807AA8C
thumb_func_end UpdateSpritePaletteWithWeather
thumb_func_start sub_807AB74
sub_807AB74: @ 807AB74
@@ -2078,7 +2078,7 @@ sub_807ABC0: @ 807ABC0
movs r2, 0x20
bl LoadPalette
ldrb r0, [r4]
bl sub_807AA8C
bl UpdateSpritePaletteWithWeather
pop {r4}
pop {r0}
bx r0
+1 -1
View File
@@ -252,7 +252,7 @@ _0807B456:
adds r2, 0x20
adds r3, r4, 0
adds r3, 0x22
bl sub_8063B1C
bl SetSpritePosToMapCoords
adds r4, 0x3E
ldrb r0, [r4]
movs r1, 0x2
+1 -1
View File
@@ -7273,7 +7273,7 @@ InitLinkPlayerObjectEventPos: @ 8058448
adds r2, 0xC
adds r3, r4, 0
adds r3, 0xE
bl sub_8063B1C
bl SetSpritePosToMapCoords
ldrh r0, [r4, 0xC]
adds r0, 0x8
strh r0, [r4, 0xC]
+26 -26
View File
@@ -2,7 +2,7 @@
.include "constants/constants.inc"
.section .rodata
.align 2
gUnknown_835B934:: @ 835B934
gReflectionEffectPaletteMap:: @ 835B934
.byte 0x01, 0x01, 0x06, 0x07, 0x08, 0x09, 0x06, 0x07, 0x08, 0x09, 0x0b, 0x0b, 0x00, 0x00, 0x00, 0x00
gUnknown_835B944:: @ 835B944
@@ -6325,16 +6325,16 @@ gUnknown_83A5374:: @ 83A5374
obj_frame_tiles gUnknown_8398128, 0x400
gUnknown_83A537C:: @ 83A537C
spr_template 65535, 65535, gObjectEventBaseOam_128x64, gUnknown_83A5358, gUnknown_83A535C, gDummySpriteAffineAnimTable, oamc_shadow
spr_template 65535, 65535, gObjectEventBaseOam_128x64, gUnknown_83A5358, gUnknown_83A535C, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect
gUnknown_83A5394:: @ 83A5394
spr_template 65535, 65535, gObjectEventBaseOam_Unknown1, gUnknown_83A5358, gUnknown_83A5364, gDummySpriteAffineAnimTable, oamc_shadow
spr_template 65535, 65535, gObjectEventBaseOam_Unknown1, gUnknown_83A5358, gUnknown_83A5364, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect
gUnknown_83A53AC:: @ 83A53AC
spr_template 65535, 65535, gObjectEventBaseOam_Unknown2, gUnknown_83A5358, gUnknown_83A536C, gDummySpriteAffineAnimTable, oamc_shadow
spr_template 65535, 65535, gObjectEventBaseOam_Unknown2, gUnknown_83A5358, gUnknown_83A536C, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect
gUnknown_83A53C4:: @ 83A53C4
spr_template 65535, 65535, gObjectEventBaseOam_Unknown3, gUnknown_83A5358, gUnknown_83A5374, gDummySpriteAffineAnimTable, oamc_shadow
spr_template 65535, 65535, gObjectEventBaseOam_Unknown3, gUnknown_83A5358, gUnknown_83A5374, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect
gUnknown_83A53DC:: @ 83A53DC
overworld_frame gUnknown_839A008, 2, 2, 0
@@ -6355,7 +6355,7 @@ gUnknown_83A541C:: @ 83A541C
.4byte gUnknown_83A5404
gUnknown_83A5420:: @ 83A5420
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A541C, gUnknown_83A53DC, gDummySpriteAffineAnimTable, unc_grass_normal
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A541C, gUnknown_83A53DC, gDummySpriteAffineAnimTable, UpdateTallGrassFieldEffect
gUnknown_83A5438:: @ 83A5438
overworld_frame gUnknown_83986A8, 2, 2, 0
@@ -6379,7 +6379,7 @@ gUnknown_83A5484:: @ 83A5484
.4byte gUnknown_83A5460
gUnknown_83A5488:: @ 83A5488
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5484, gUnknown_83A5438, gDummySpriteAffineAnimTable, sub_80DCD1C
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5484, gUnknown_83A5438, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim
gUnknown_83A54A0:: @ 83A54A0
overworld_frame gUnknown_8398928, 2, 2, 0
@@ -6400,7 +6400,7 @@ gUnknown_83A54E0:: @ 83A54E0
.4byte gUnknown_83A54C8
gUnknown_83A54E4:: @ 83A54E4
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A54E0, gUnknown_83A54A0, gDummySpriteAffineAnimTable, sub_80DC2FC
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A54E0, gUnknown_83A54A0, gDummySpriteAffineAnimTable, UpdateAshFieldEffect
gUnknown_83A54FC:: @ 83A54FC
overworld_frame gUnknown_8396B08, 2, 8, 0
@@ -6437,7 +6437,7 @@ gUnknown_83A555C:: @ 83A555C
.4byte gUnknown_83A5550
gUnknown_83A556C:: @ 83A556C
spr_template 0xFFFF, 0xFFFF, gObjectEventBaseOam_32x32, gUnknown_83A555C, gUnknown_83A54FC, gDummySpriteAffineAnimTable, sub_80DC4F8
spr_template 0xFFFF, 0xFFFF, gObjectEventBaseOam_32x32, gUnknown_83A555C, gUnknown_83A54FC, gDummySpriteAffineAnimTable, UpdateSurfBlobFieldEffect
gUnknown_83A5584:: @ 83A5584
overworld_frame gUnknown_8398BA8, 2, 2, 0
@@ -6542,7 +6542,7 @@ gUnknown_83A56E0:: @ 83A56E0
.4byte gUnknown_83A56D8
gUnknown_83A56F4:: @ 83A56F4
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A56E0, gUnknown_83A56B0, gDummySpriteAffineAnimTable, sub_80DBAFC
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A56E0, gUnknown_83A56B0, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect
gUnknown_83A570C:: @ 83A570C
overworld_frame gUnknown_839A488, 2, 2, 0
@@ -6572,7 +6572,7 @@ gUnknown_83A573C:: @ 83A573C
.4byte gUnknown_83A5734
gUnknown_83A5750:: @ 83A5750
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A573C, gUnknown_83A570C, gDummySpriteAffineAnimTable, sub_80DBAFC
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A573C, gUnknown_83A570C, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect
gUnknown_83A5768:: @ 83A5768
overworld_frame gUnknown_839A588, 2, 2, 0
@@ -6624,7 +6624,7 @@ gUnknown_83A57C8:: @ 83A57C8
.4byte gUnknown_83A57C0
gUnknown_83A57EC:: @ 83A57EC
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A57C8, gUnknown_83A5768, gDummySpriteAffineAnimTable, sub_80DBAFC
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A57C8, gUnknown_83A5768, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect
gUnknown_83A5804:: @ 83A5804
overworld_frame gUnknown_839AA48, 2, 2, 0
@@ -6670,7 +6670,7 @@ gUnknown_83A5894:: @ 83A5894
.4byte gUnknown_83A5870
gUnknown_83A589C:: @ 83A589C
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_Unknown1, gUnknown_83A5894, gUnknown_83A5854, gDummySpriteAffineAnimTable, sub_80DBC2C
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_Unknown1, gUnknown_83A5894, gUnknown_83A5854, gDummySpriteAffineAnimTable, UpdateSplashFieldEffect
gUnknown_83A58B4:: @ 83A58B4
overworld_frame gUnknown_839ACC8, 2, 1, 0
@@ -6709,7 +6709,7 @@ gUnknown_83A5938:: @ 83A5938
.4byte gUnknown_83A5918
gUnknown_83A593C:: @ 83A593C
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5938, gUnknown_83A58F8, gDummySpriteAffineAnimTable, unc_grass_tall
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5938, gUnknown_83A58F8, gDummySpriteAffineAnimTable, UpdateLongGrassFieldEffect
gUnknown_83A5954:: @ 83A5954
overworld_frame gUnknown_8399488, 2, 2, 0
@@ -6761,7 +6761,7 @@ gUnknown_83A5A2C:: @ 83A5A2C
.4byte gUnknown_83A5A04
gUnknown_83A5A30:: @ 83A5A30
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5A2C, gUnknown_83A59BC, gDummySpriteAffineAnimTable, sub_80DCD1C
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5A2C, gUnknown_83A59BC, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim
gUnknown_83A5A48:: @ 83A5A48
overworld_frame gUnknown_8399C08, 2, 2, 0
@@ -6782,7 +6782,7 @@ gUnknown_83A5A84:: @ 83A5A84
.4byte gUnknown_83A5A68
gUnknown_83A5A88:: @ 83A5A88
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5A84, gUnknown_83A5A48, gDummySpriteAffineAnimTable, sub_80DCD1C
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5A84, gUnknown_83A5A48, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim
gUnknown_83A5AA0:: @ 83A5AA0
overworld_frame gUnknown_839A788, 2, 2, 0
@@ -6801,7 +6801,7 @@ gUnknown_83A5AD4:: @ 83A5AD4
.4byte gUnknown_83A5AC0
gUnknown_83A5AD8:: @ 83A5AD8
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A5AD4, gUnknown_83A5AA0, gDummySpriteAffineAnimTable, sub_80DCD1C
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A5AD4, gUnknown_83A5AA0, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim
gUnknown_83A5AF0:: @ 83A5AF0
overworld_frame gUnknown_839A988, 2, 1, 0
@@ -6818,7 +6818,7 @@ gUnknown_83A5B18:: @ 83A5B18
.4byte gUnknown_83A5B08
gUnknown_83A5B1C:: @ 83A5B1C
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_Unknown1, gUnknown_83A5B18, gUnknown_83A5AF0, gDummySpriteAffineAnimTable, sub_80DC86C
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_Unknown1, gUnknown_83A5B18, gUnknown_83A5AF0, gDummySpriteAffineAnimTable, UpdateSandPileFieldEffect
gUnknown_83A5B34:: @ 83A5B34
overworld_frame gUnknown_839AD88, 2, 2, 0
@@ -6839,7 +6839,7 @@ gUnknown_83A5B70:: @ 83A5B70
.4byte gUnknown_83A5B54
gUnknown_83A5B74:: @ 83A5B74
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A5B70, gUnknown_83A5B34, gDummySpriteAffineAnimTable, sub_80DCD1C
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x16, gUnknown_83A5B70, gUnknown_83A5B34, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim
gUnknown_83A5B8C:: @ 83A5B8C
obj_rot_scal_anim_frame -256, 256, 128, 0
@@ -6900,7 +6900,7 @@ gUnknown_83A5CAC:: @ 83A5CAC
.4byte gUnknown_83A5C8C
gUnknown_83A5CB4:: @ 83A5CB4
spr_template 0xFFFF, 0xFFFF, gObjectEventBaseOam_16x32, gUnknown_83A5CAC, gUnknown_83A5C4C, gDummySpriteAffineAnimTable, sub_80DCAC8
spr_template 0xFFFF, 0xFFFF, gObjectEventBaseOam_16x32, gUnknown_83A5CAC, gUnknown_83A5C4C, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect
gUnknown_83A5CCC:: @ 83A5CCC
overworld_frame gUnknown_839B708, 2, 4, 0
@@ -6930,7 +6930,7 @@ gUnknown_83A5D2C:: @ 83A5D2C
.4byte gUnknown_83A5D0C
gUnknown_83A5D34:: @ 83A5D34
spr_template 0xFFFF, 0xFFFF, gObjectEventBaseOam_16x32, gUnknown_83A5D2C, gUnknown_83A5CCC, gDummySpriteAffineAnimTable, sub_80DCAC8
spr_template 0xFFFF, 0xFFFF, gObjectEventBaseOam_16x32, gUnknown_83A5D2C, gUnknown_83A5CCC, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect
gUnknown_83A5D4C:: @ 83A5D4C
overworld_frame gUnknown_839BE08, 2, 4, 0
@@ -6942,7 +6942,7 @@ gUnknown_83A5D4C:: @ 83A5D4C
overworld_frame gUnknown_839BE08, 2, 4, 6
gUnknown_83A5D84:: @ 83A5D84
spr_template 0xFFFF, 0xFFFF, gObjectEventBaseOam_16x32, gUnknown_83A5CAC, gUnknown_83A5D4C, gDummySpriteAffineAnimTable, sub_80DCAC8
spr_template 0xFFFF, 0xFFFF, gObjectEventBaseOam_16x32, gUnknown_83A5CAC, gUnknown_83A5D4C, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect
gUnknown_83A5D9C:: @ 83A5D9C
overworld_frame gUnknown_839D3C8, 8, 8, 0
@@ -6994,7 +6994,7 @@ gUnknown_83A5E34:: @ 83A5E34
.4byte gUnknown_83A5E28
gUnknown_83A5E38:: @ 83A5E38
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5E34, gUnknown_83A5E18, gDummySpriteAffineAnimTable, sub_80DB8AC
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5E34, gUnknown_83A5E18, gDummySpriteAffineAnimTable, UpdateShortGrassFieldEffect
gUnknown_83A5E50:: @ 83A5E50
overworld_frame gUnknown_839C508, 2, 2, 0
@@ -7007,7 +7007,7 @@ gUnknown_83A5E60:: @ 83A5E60
.4byte gUnknown_83A5E58
gUnknown_83A5E64:: @ 83A5E64
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5E60, gUnknown_83A5E50, gDummySpriteAffineAnimTable, sub_80DBFF4
spr_template 0xFFFF, 0x1005, gObjectEventBaseOam_16x16, gUnknown_83A5E60, gUnknown_83A5E50, gDummySpriteAffineAnimTable, UpdateHotSpringsWaterFieldEffect
gUnknown_83A5E7C:: @ 83A5E7C
overworld_frame gUnknown_839C5A8, 2, 2, 0
@@ -7079,7 +7079,7 @@ gUnknown_83A5FA0:: @ 83A5FA0
.4byte gUnknown_83A5F7C
gUnknown_83A5FA4:: @ 83A5FA4
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x32, gUnknown_83A5FA0, gUnknown_83A5F3C, gDummySpriteAffineAnimTable, sub_80DC99C
spr_template 0xFFFF, 0x1004, gObjectEventBaseOam_16x32, gUnknown_83A5FA0, gUnknown_83A5F3C, gDummySpriteAffineAnimTable, UpdateBubblesFieldEffect
gUnknown_83A5FBC:: @ 83A5FBC
overworld_frame gUnknown_839D2A8, 2, 2, 0
@@ -7095,7 +7095,7 @@ gUnknown_83A5FDC:: @ 83A5FDC
.4byte gUnknown_83A5FCC
gUnknown_83A5FE0:: @ 83A5FE0
spr_template 0xFFFF, 0x100F, gObjectEventBaseOam_16x16, gUnknown_83A5FDC, gUnknown_83A5FBC, gDummySpriteAffineAnimTable, sub_80DCC90
spr_template 0xFFFF, 0x100F, gObjectEventBaseOam_16x16, gUnknown_83A5FDC, gUnknown_83A5FBC, gDummySpriteAffineAnimTable, UpdateSparkleFieldEffect
gUnknown_83A5FF8::
obj_pal gUnknown_839D3A8, 0x100F
-34
View File
@@ -1,34 +0,0 @@
#include "constants/region_map.h"
#include "constants/flags.h"
#include "constants/moves.h"
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2
gUnknown_83FECCC:: @ 83FECCC
.2byte 0x0c, 0x1c, 0x2c
gUnknown_83FECD2:: @ 83FECD2
.byte 0, 1, 2, 3
gUnknown_83FECD6:: @ 83FECD6
.2byte 0x0004, 0x0004, 0x0004, 0x0010
.align 2
gUnknown_83FECE0:: @ 83FECE0
.4byte sub_80DBB18
.4byte sub_80DBB3C
.align 2
gUnknown_83FECE8:: @ 83FECE8
.4byte sub_80DC318
.4byte sub_80DC348
.4byte sub_80DC3A8
gUnknown_83FECF4:: @ 83FECF4
.byte 0, 0, 1, 2, 3
.align 1
gUnknown_83FECFA:: @ 83FECFA
.2byte 0x0007, 0x000f
+4 -4
View File
@@ -86,15 +86,15 @@ gFldEffScript_UseCutOnTree:: @ 81D97D0
end
gFldEffScript_Shadow:: @ 81D97D6
callnative oei_shadow
callnative FldEff_Shadow
end
gFldEffScript_TallGrass:: @ 81D97DC
loadfadedpal_callnative gUnknown_83A5348, oei_grass_normal
loadfadedpal_callnative gUnknown_83A5348, FldEff_TallGrass
end
gFldEffScript_Ripple:: @ 81D97E6
loadfadedpal_callnative gUnknown_83A5348, oei_ripples
loadfadedpal_callnative gUnknown_83A5348, FldEff_Ripple
end
gFldEffScript_FieldMoveShowMon:: @ 81D97F0
@@ -129,7 +129,7 @@ gFldEffScript_SandFootprints:: @ 81D9821
end
gFldEffScript_JumpBigSplash:: @ 81D982B
loadfadedpal_callnative gUnknown_83A5340, oei_water_drop_tall
loadfadedpal_callnative gUnknown_83A5340, FldEff_JumpBigSplash
end
gFldEffScript_Splash:: @ 81D9835
+11 -4
View File
@@ -33,10 +33,10 @@ u8 GetObjectEventIdByXY(s16, s16);
void ObjectEventSetDirection(struct ObjectEvent *, u8);
u8 sub_808D4F4(void);
void RemoveObjectEventByLocalIdAndMap(u8, u8, u8);
void npc_load_two_palettes__no_record(u16, u8);
void npc_load_two_palettes__and_record(u16, u8);
void LoadPlayerObjectReflectionPalette(u16, u8);
void LoadSpecialObjectReflectionPalette(u16, u8);
void sub_805F7C4(u8, u8, u8, s16, s16);
void pal_patch_for_npc(u16, u8);
void PatchObjectPalette(u16, u8);
void sub_808E16C(s16, s16);
void sub_808F28C(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat);
void sub_8092FF0(s16, s16, s16 *, s16 *);
@@ -121,6 +121,13 @@ u8 sub_8064194(u8 direction);
u8 sub_80641C0(u8 direction);
void sub_805F378(s16 x, s16 y);
void sub_805F724(struct ObjectEvent *, s16 x, s16 y);
u8 CreateCopySpriteAt(struct Sprite * sprite, s16 x, s16 y, u8 subpriority);
u16 GetObjectPaletteTag(u8 paletteIndex);
void SetSpritePosToMapCoords(s16 x, s16 y, s16 *x2, s16 *y2);
void UpdateObjectEventSpriteVisibility(struct Sprite *sprite, bool8 invisible);
u8 ZCoordToPriority(u8 z);
void SetObjectSubpriorityByZCoord(u8 z, struct Sprite * sprite, u8 offset);
// Exported data declarations
@@ -131,6 +138,6 @@ extern const struct OamData gObjectEventBaseOam_32x32;
extern const struct UCoords16 gUnknown_83A64C8[];
extern const u16 gUnknown_8398648[];
extern const u16 gUnknown_8398688[];
void sub_805F724(struct ObjectEvent *, s16 x, s16 y);
extern const u8 gReflectionEffectPaletteMap[];
#endif // GUARD_EVENT_OBJECT_MOVEMENT_H
+1 -1
View File
@@ -13,7 +13,7 @@
// Exported ROM declarations
u8 sub_8154228(void);
bool8 sub_8155DA0(struct ObjectEvent *);
bool8 sub_80DCBE0(struct ObjectEvent *);
void sub_80DC44C(u8, u8);
void sub_80DC478(u8, u8);
void StartAshFieldEffect(s16, s16, u16, s16);
+1 -1
View File
@@ -18,7 +18,7 @@ void SetWeatherScreenFadeOut(void);
void sub_807B070(void);
u8 GetCurrentWeather(void);
void FieldWeather_StartFadingOutCreditsMap(u8, u8, u32);
void sub_807AA8C(u8 palIdx);
void UpdateSpritePaletteWithWeather(u8 palIdx);
void ResetPreservedPalettesInWeather(void);
void PreservePaletteInWeather(u8 palIdx);
+6 -6
View File
@@ -217,17 +217,17 @@ struct ObjectEvent
/*0x0C*/ struct Coords16 initialCoords;
/*0x10*/ struct Coords16 currentCoords;
/*0x14*/ struct Coords16 previousCoords;
/*0x18*/ u8 facingDirection:4; //current direction?
/*0x18*/ u8 placeholder18:4;
/*0x18*/ u8 facingDirection:4;
/*0x18*/ u8 movementDirection:4;
/*0x19*/ union ObjectEventRange range;
/*0x1A*/ u8 mapobj_unk_1A;
/*0x1A*/ u8 fieldEffectSpriteId;
/*0x1B*/ u8 mapobj_unk_1B;
/*0x1C*/ u8 mapobj_unk_1C;
/*0x1D*/ u8 trainerRange_berryTreeId;
/*0x1E*/ u8 mapobj_unk_1E;
/*0x1F*/ u8 mapobj_unk_1F;
/*0x1E*/ u8 currentMetatileBehavior;
/*0x1F*/ u8 previousMetatileBehavior;
/*0x20*/ u8 mapobj_unk_20;
/*0x21*/ u8 mapobj_unk_21;
/*0x21*/ u8 directionSequenceIndex;
/*0x22*/ u8 animId;
/*size = 0x24*/
};
+2 -2
View File
@@ -612,8 +612,8 @@ struct QuestLogObjectEvent
/*0x0a*/ s16 x;
/*0x0c*/ s16 y;
/*0x0e*/ u8 trainerRange_berryTreeId;
/*0x0f*/ u8 mapobj_unk_1F;
/*0x10*/ u8 mapobj_unk_21;
/*0x0f*/ u8 previousMetatileBehavior;
/*0x10*/ u8 directionSequenceIndex;
/*0x11*/ u8 animId;
};
+2 -2
View File
@@ -200,7 +200,7 @@ SECTIONS {
src/cable_car_util.o(.text);
src/save.o(.text);
src/mystery_event_script.o(.text);
asm/field_effect_helpers.o(.text);
src/field_effect_helpers.o(.text);
src/battle_anim_sound_tasks.o(.text);
src/battle_controller_safari.o(.text);
src/fldeff_sweetscent.o(.text);
@@ -496,7 +496,7 @@ SECTIONS {
src/battle_controller_link_partner.o(.rodata);
src/battle_message.o(.rodata);
src/save.o(.rodata);
data/field_effect_helpers.o(.rodata);
src/field_effect_helpers.o(.rodata);
src/battle_controller_safari.o(.rodata);
src/battle_anim_effects_3.o(.rodata);
src/learn_move.o(.rodata);
+12 -12
View File
@@ -446,7 +446,7 @@ static void FieldEffectScript_LoadFadedPal(const u8 **script)
LoadSpritePalette(spritePalette);
if (idx == 0xFF)
sub_8083598(IndexOfSpritePaletteTag(spritePalette->tag));
sub_807AA8C(IndexOfSpritePaletteTag(spritePalette->tag));
UpdateSpritePaletteWithWeather(IndexOfSpritePaletteTag(spritePalette->tag));
*script += sizeof(u32);
}
@@ -1604,7 +1604,7 @@ static bool8 waterfall_4_wait_player_move_probably(struct Task * task, struct Ob
{
if (!ObjectEventClearHeldMovementIfFinished(playerObj))
return FALSE;
if (MetatileBehavior_IsWaterfall(playerObj->mapobj_unk_1E))
if (MetatileBehavior_IsWaterfall(playerObj->currentMetatileBehavior))
{
task->data[0] = 3;
return TRUE;
@@ -1664,7 +1664,7 @@ static bool8 dive_3_unknown(struct Task * task)
PlayerGetDestCoords(&pos.x, &pos.y);
if (!FieldEffectActiveListContains(FLDEFF_FIELD_MOVE_SHOW_MON))
{
dive_warp(&pos, gObjectEvents[gPlayerAvatar.objectEventId].mapobj_unk_1E);
dive_warp(&pos, gObjectEvents[gPlayerAvatar.objectEventId].currentMetatileBehavior);
DestroyTask(FindTaskIdByFunc(Task_Dive));
FieldEffectActiveListRemove(FLDEFF_USE_DIVE);
}
@@ -2904,7 +2904,7 @@ static void UseSurfEffect_1(struct Task * task)
gPlayerAvatar.preventStep = TRUE;
SetPlayerAvatarStateMask(8);
PlayerGetDestCoords(&task->data[1], &task->data[2]);
MoveCoords(gObjectEvents[gPlayerAvatar.objectEventId].placeholder18, &task->data[1], &task->data[2]);
MoveCoords(gObjectEvents[gPlayerAvatar.objectEventId].movementDirection, &task->data[1], &task->data[2]);
task->data[0]++;
}
@@ -2940,11 +2940,11 @@ static void UseSurfEffect_4(struct Task * task)
objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(2));
ObjectEventClearHeldMovementIfFinished(objectEvent);
ObjectEventSetHeldMovement(objectEvent, sub_80641C0(objectEvent->placeholder18));
ObjectEventSetHeldMovement(objectEvent, sub_80641C0(objectEvent->movementDirection));
gFieldEffectArguments[0] = task->data[1];
gFieldEffectArguments[1] = task->data[2];
gFieldEffectArguments[2] = gPlayerAvatar.objectEventId;
objectEvent->mapobj_unk_1A = FieldEffectStart(FLDEFF_SURF_BLOB);
objectEvent->fieldEffectSpriteId = FieldEffectStart(FLDEFF_SURF_BLOB);
task->data[0]++;
}
}
@@ -2957,8 +2957,8 @@ static void UseSurfEffect_5(struct Task * task)
{
gPlayerAvatar.preventStep = FALSE;
gPlayerAvatar.flags &= 0xdf;
ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(objectEvent->placeholder18));
sub_80DC44C(objectEvent->mapobj_unk_1A, 1);
ObjectEventSetHeldMovement(objectEvent, GetFaceDirectionMovementAction(objectEvent->movementDirection));
sub_80DC44C(objectEvent->fieldEffectSpriteId, 1);
UnfreezeObjectEvents();
ScriptContext2_Disable();
FieldEffectActiveListRemove(FLDEFF_USE_SURF);
@@ -3151,8 +3151,8 @@ static void UseFlyEffect_3(struct Task * task)
struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
if (task->data[15] & 0x08)
{
sub_80DC44C(objectEvent->mapobj_unk_1A, 2);
sub_80DC478(objectEvent->mapobj_unk_1A, 0);
sub_80DC44C(objectEvent->fieldEffectSpriteId, 2);
sub_80DC478(objectEvent->fieldEffectSpriteId, 0);
}
task->data[1] = sub_8087168();
task->data[0]++;
@@ -3435,7 +3435,7 @@ static void FlyInEffect_1(struct Task * task)
SetPlayerAvatarStateMask(0x01);
if (task->data[15] & 0x08)
{
sub_80DC44C(objectEvent->mapobj_unk_1A, 0);
sub_80DC44C(objectEvent->fieldEffectSpriteId, 0);
}
ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(2));
CameraObjectReset2();
@@ -3549,7 +3549,7 @@ static void FlyInEffect_7(struct Task * task)
if (task->data[15] & 0x08)
{
state = 2;
sub_80DC44C(objectEvent->mapobj_unk_1A, 1);
sub_80DC44C(objectEvent->fieldEffectSpriteId, 1);
}
ObjectEventSetGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(state));
ObjectEventTurn(objectEvent, DIR_SOUTH);
File diff suppressed because it is too large Load Diff
+11 -11
View File
@@ -39,8 +39,8 @@ void SetQuestLogObjectEventsData(struct QuestLog * questLog)
questLog->unk_008[i].x = gObjectEvents[i].currentCoords.x;
questLog->unk_008[i].y = gObjectEvents[i].currentCoords.y;
questLog->unk_008[i].trainerRange_berryTreeId = gObjectEvents[i].trainerRange_berryTreeId;
questLog->unk_008[i].mapobj_unk_1F = gObjectEvents[i].mapobj_unk_1F;
questLog->unk_008[i].mapobj_unk_21 = gObjectEvents[i].mapobj_unk_21;
questLog->unk_008[i].previousMetatileBehavior = gObjectEvents[i].previousMetatileBehavior;
questLog->unk_008[i].directionSequenceIndex = gObjectEvents[i].directionSequenceIndex;
questLog->unk_008[i].animId = gObjectEvents[i].animId;
}
}
@@ -83,8 +83,8 @@ void sub_815A1F8(const struct QuestLog * questLog, const struct ObjectEventTempl
gObjectEvents[i].currentCoords.x = questLogObjectEvents[i].x;
gObjectEvents[i].currentCoords.y = questLogObjectEvents[i].y;
gObjectEvents[i].trainerRange_berryTreeId = questLogObjectEvents[i].trainerRange_berryTreeId;
gObjectEvents[i].mapobj_unk_1F = questLogObjectEvents[i].mapobj_unk_1F;
gObjectEvents[i].mapobj_unk_21 = questLogObjectEvents[i].mapobj_unk_21;
gObjectEvents[i].previousMetatileBehavior = questLogObjectEvents[i].previousMetatileBehavior;
gObjectEvents[i].directionSequenceIndex = questLogObjectEvents[i].directionSequenceIndex;
gObjectEvents[i].animId = questLogObjectEvents[i].animId;
for (j = 0; j < 0x40; j++)
@@ -98,28 +98,28 @@ void sub_815A1F8(const struct QuestLog * questLog, const struct ObjectEventTempl
}
}
gObjectEvents[i].mapobj_unk_1E = MapGridGetMetatileBehaviorAt(gObjectEvents[i].currentCoords.x, gObjectEvents[i].currentCoords.y);
if (gObjectEvents[i].mapobj_unk_1F == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x), (s16)(gObjectEvents[i].currentCoords.y)))
gObjectEvents[i].currentMetatileBehavior = MapGridGetMetatileBehaviorAt(gObjectEvents[i].currentCoords.x, gObjectEvents[i].currentCoords.y);
if (gObjectEvents[i].previousMetatileBehavior == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x), (s16)(gObjectEvents[i].currentCoords.y)))
{
gObjectEvents[i].previousCoords.x = gObjectEvents[i].currentCoords.x;
gObjectEvents[i].previousCoords.y = gObjectEvents[i].currentCoords.y;
}
else if (gObjectEvents[i].mapobj_unk_1F == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x - 1), (s16)(gObjectEvents[i].currentCoords.y)))
else if (gObjectEvents[i].previousMetatileBehavior == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x - 1), (s16)(gObjectEvents[i].currentCoords.y)))
{
gObjectEvents[i].previousCoords.x = gObjectEvents[i].currentCoords.x - 1;
gObjectEvents[i].previousCoords.y = gObjectEvents[i].currentCoords.y;
}
else if (gObjectEvents[i].mapobj_unk_1F == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x + 1), (s16)(gObjectEvents[i].currentCoords.y)))
else if (gObjectEvents[i].previousMetatileBehavior == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x + 1), (s16)(gObjectEvents[i].currentCoords.y)))
{
gObjectEvents[i].previousCoords.x = gObjectEvents[i].currentCoords.x + 1;
gObjectEvents[i].previousCoords.y = gObjectEvents[i].currentCoords.y;
}
else if (gObjectEvents[i].mapobj_unk_1F == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x), (s16)(gObjectEvents[i].currentCoords.y - 1)))
else if (gObjectEvents[i].previousMetatileBehavior == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x), (s16)(gObjectEvents[i].currentCoords.y - 1)))
{
gObjectEvents[i].previousCoords.x = gObjectEvents[i].currentCoords.x;
gObjectEvents[i].previousCoords.y = gObjectEvents[i].currentCoords.y - 1;
}
else if (gObjectEvents[i].mapobj_unk_1F == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x), (s16)(gObjectEvents[i].currentCoords.y + 1)))
else if (gObjectEvents[i].previousMetatileBehavior == MapGridGetMetatileBehaviorAt((s16)(gObjectEvents[i].currentCoords.x), (s16)(gObjectEvents[i].currentCoords.y + 1)))
{
gObjectEvents[i].previousCoords.x = gObjectEvents[i].currentCoords.x;
gObjectEvents[i].previousCoords.y = gObjectEvents[i].currentCoords.y + 1;
@@ -140,7 +140,7 @@ void sub_815A540(void)
{
struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
SetPlayerAvatarTransitionFlags(0x01);
DestroySprite(&gSprites[objectEvent->mapobj_unk_1A]);
DestroySprite(&gSprites[objectEvent->fieldEffectSpriteId]);
}
}
}
+5 -5
View File
@@ -58,7 +58,7 @@ static void sub_81504A8(void)
{
struct ObjectEvent *objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
sub_81507BC(objectEvent, GetPlayerAvatarGraphicsIdByStateId(0));
ObjectEventTurn(objectEvent, objectEvent->placeholder18);
ObjectEventTurn(objectEvent, objectEvent->movementDirection);
SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_ON_FOOT);
}
@@ -66,7 +66,7 @@ static void sub_81504E8(void)
{
struct ObjectEvent *objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
sub_81507BC(objectEvent, GetPlayerAvatarGraphicsIdByStateId(1));
ObjectEventTurn(objectEvent, objectEvent->placeholder18);
ObjectEventTurn(objectEvent, objectEvent->movementDirection);
SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_MACH_BIKE);
sub_80BD620(0, 0);
}
@@ -125,7 +125,7 @@ static void sub_81505C4(u8 taskId)
sub_81507BC(objectEvent, GetPlayerAvatarGraphicsIdByStateId(0));
else
sub_81507BC(objectEvent, GetPlayerAvatarGraphicsIdByStateId(2));
ObjectEventTurn(objectEvent, objectEvent->placeholder18);
ObjectEventTurn(objectEvent, objectEvent->movementDirection);
sprite->pos2.x = 0;
sprite->pos2.y = 0;
ScriptContext2_Disable();
@@ -143,13 +143,13 @@ static void sub_8150708(void)
if (!(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING))
{
sub_81507BC(objectEvent, GetPlayerAvatarGraphicsIdByStateId(2));
ObjectEventTurn(objectEvent, objectEvent->placeholder18);
ObjectEventTurn(objectEvent, objectEvent->movementDirection);
SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_SURFING);
gFieldEffectArguments[0] = objectEvent->currentCoords.x;
gFieldEffectArguments[1] = objectEvent->currentCoords.y;
gFieldEffectArguments[2] = gPlayerAvatar.objectEventId;
fieldEffectId = FieldEffectStart(FLDEFF_SURF_BLOB);
objectEvent->mapobj_unk_1A = fieldEffectId;
objectEvent->fieldEffectSpriteId = fieldEffectId;
sub_80DC44C(fieldEffectId, 1);
}
}