mirror of
https://github.com/zeldaret/tmc
synced 2026-06-25 01:52:14 -04:00
Decompile entity init functions
This commit is contained in:
+2
-2
@@ -91,7 +91,7 @@ _080896A4:
|
||||
adds r0, r5, #0
|
||||
movs r1, #1
|
||||
movs r2, #2
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
ldr r0, _08089700 @ =gUnk_08120E14
|
||||
ldrb r1, [r5, #0xa]
|
||||
lsls r1, r1, #2
|
||||
@@ -346,7 +346,7 @@ _08089DAC:
|
||||
adds r0, r5, #0
|
||||
movs r1, #1
|
||||
movs r2, #2
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
ldr r0, _08089E08 @ =gUnk_08120E14
|
||||
ldrb r1, [r5, #0xa]
|
||||
lsls r1, r1, #2
|
||||
|
||||
+4
-4
@@ -2192,12 +2192,12 @@ _08026B2C:
|
||||
bne _08026B46
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x2b
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
b _08026B4E
|
||||
_08026B46:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x2c
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
_08026B4E:
|
||||
ldr r3, [r6, #0x50]
|
||||
ldr r2, [r6, #0x54]
|
||||
@@ -4624,12 +4624,12 @@ _08027D44:
|
||||
bne _08027D5E
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x2b
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
b _08027D66
|
||||
_08027D5E:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x2c
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
_08027D66:
|
||||
adds r0, r4, #0
|
||||
pop {r4, r5, pc}
|
||||
|
||||
+46
-46
@@ -10,7 +10,7 @@
|
||||
sub_0801CFA8: @ 0x0801CFA8
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
ldr r0, _0801CFCC @ =gUnk_02001A00
|
||||
ldr r0, _0801CFCC @ =gPaletteList
|
||||
movs r1, #0x40
|
||||
bl MemClear
|
||||
movs r4, #0
|
||||
@@ -24,12 +24,12 @@ _0801CFB6:
|
||||
bl sub_0801D000
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0801CFCC: .4byte gUnk_02001A00
|
||||
_0801CFCC: .4byte gPaletteList
|
||||
|
||||
thumb_func_start sub_0801CFD0
|
||||
sub_0801CFD0: @ 0x0801CFD0
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _0801CFF8 @ =gUnk_02001A00
|
||||
ldr r1, _0801CFF8 @ =gPaletteList
|
||||
adds r0, r0, r1
|
||||
ldrb r2, [r0]
|
||||
movs r1, #0x10
|
||||
@@ -48,7 +48,7 @@ sub_0801CFD0: @ 0x0801CFD0
|
||||
strh r1, [r0, #2]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_0801CFF8: .4byte gUnk_02001A00
|
||||
_0801CFF8: .4byte gPaletteList
|
||||
_0801CFFC: .4byte 0x0000FFFF
|
||||
|
||||
thumb_func_start sub_0801D000
|
||||
@@ -65,7 +65,7 @@ _0801D00E:
|
||||
strb r1, [r0]
|
||||
cmp r2, #0
|
||||
beq _0801D028
|
||||
bl sub_0801D34C
|
||||
bl CleanUpObjPalettes
|
||||
movs r0, #0xf
|
||||
bl sub_0801CFD0
|
||||
b _0801D03A
|
||||
@@ -86,8 +86,8 @@ _0801D03A:
|
||||
.align 2, 0
|
||||
_0801D03C: .4byte gUnk_02001A3C
|
||||
|
||||
thumb_func_start sub_0801D040
|
||||
sub_0801D040: @ 0x0801D040
|
||||
thumb_func_start LoadObjPalette
|
||||
LoadObjPalette: @ 0x0801D040
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, sl
|
||||
mov r6, sb
|
||||
@@ -97,7 +97,7 @@ sub_0801D040: @ 0x0801D040
|
||||
str r0, [sp]
|
||||
adds r6, r1, #0
|
||||
adds r0, r6, #0
|
||||
bl sub_0801D108
|
||||
bl FindPalette
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
bge _0801D0E8
|
||||
@@ -116,19 +116,19 @@ _0801D064:
|
||||
ands r4, r0
|
||||
_0801D074:
|
||||
adds r0, r4, #0
|
||||
bl sub_0801D134
|
||||
bl FindFreeObjPalette
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
bge _0801D090
|
||||
bl sub_0801D34C
|
||||
bl CleanUpObjPalettes
|
||||
adds r0, r4, #0
|
||||
bl sub_0801D134
|
||||
bl FindFreeObjPalette
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
blt _0801D0E8
|
||||
_0801D090:
|
||||
lsls r1, r5, #2
|
||||
ldr r0, _0801D104 @ =gUnk_02001A00
|
||||
ldr r0, _0801D104 @ =gPaletteList
|
||||
adds r3, r1, r0
|
||||
movs r0, #0
|
||||
strh r6, [r3, #2]
|
||||
@@ -171,11 +171,11 @@ _0801D0BE:
|
||||
_0801D0E0:
|
||||
adds r0, r6, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_0801D2C8
|
||||
bl LoadObjPaletteAtIndex
|
||||
_0801D0E8:
|
||||
ldr r0, [sp]
|
||||
adds r1, r5, #0
|
||||
bl sub_0801D19C
|
||||
bl SetEntityObjPalette
|
||||
adds r0, r5, #0
|
||||
add sp, #4
|
||||
pop {r3, r4, r5}
|
||||
@@ -185,10 +185,10 @@ _0801D0E8:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0801D100: .4byte gUnk_08133368
|
||||
_0801D104: .4byte gUnk_02001A00
|
||||
_0801D104: .4byte gPaletteList
|
||||
|
||||
thumb_func_start sub_0801D108
|
||||
sub_0801D108: @ 0x0801D108
|
||||
thumb_func_start FindPalette
|
||||
FindPalette: @ 0x0801D108
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
cmp r2, #5
|
||||
@@ -199,7 +199,7 @@ _0801D112:
|
||||
b _0801D12E
|
||||
_0801D116:
|
||||
movs r1, #6
|
||||
ldr r0, _0801D130 @ =gUnk_02001A00
|
||||
ldr r0, _0801D130 @ =gPaletteList
|
||||
adds r0, #0x18
|
||||
_0801D11C:
|
||||
ldrh r3, [r0, #2]
|
||||
@@ -214,15 +214,15 @@ _0801D11C:
|
||||
_0801D12E:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0801D130: .4byte gUnk_02001A00
|
||||
_0801D130: .4byte gPaletteList
|
||||
|
||||
thumb_func_start sub_0801D134
|
||||
sub_0801D134: @ 0x0801D134
|
||||
thumb_func_start FindFreeObjPalette
|
||||
FindFreeObjPalette: @ 0x0801D134
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0
|
||||
movs r2, #6
|
||||
ldr r0, _0801D154 @ =gUnk_02001A00
|
||||
ldr r0, _0801D154 @ =gPaletteList
|
||||
adds r3, r0, #0
|
||||
adds r3, #0x18
|
||||
_0801D142:
|
||||
@@ -235,7 +235,7 @@ _0801D142:
|
||||
bhi _0801D15A
|
||||
b _0801D180
|
||||
.align 2, 0
|
||||
_0801D154: .4byte gUnk_02001A00
|
||||
_0801D154: .4byte gPaletteList
|
||||
_0801D158:
|
||||
movs r1, #0
|
||||
_0801D15A:
|
||||
@@ -245,7 +245,7 @@ _0801D15A:
|
||||
bls _0801D142
|
||||
movs r1, #0
|
||||
movs r2, #6
|
||||
ldr r0, _0801D188 @ =gUnk_02001A00
|
||||
ldr r0, _0801D188 @ =gPaletteList
|
||||
adds r3, r0, #0
|
||||
adds r3, #0x18
|
||||
_0801D16C:
|
||||
@@ -264,7 +264,7 @@ _0801D180:
|
||||
subs r0, r2, r0
|
||||
b _0801D19A
|
||||
.align 2, 0
|
||||
_0801D188: .4byte gUnk_02001A00
|
||||
_0801D188: .4byte gPaletteList
|
||||
_0801D18C:
|
||||
movs r1, #0
|
||||
_0801D18E:
|
||||
@@ -277,8 +277,8 @@ _0801D18E:
|
||||
_0801D19A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0801D19C
|
||||
sub_0801D19C: @ 0x0801D19C
|
||||
thumb_func_start SetEntityObjPalette
|
||||
SetEntityObjPalette: @ 0x0801D19C
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r4, r0, #0
|
||||
adds r3, r1, #0
|
||||
@@ -315,7 +315,7 @@ _0801D1BE:
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x1a]
|
||||
lsls r1, r3, #2
|
||||
ldr r0, _0801D22C @ =gUnk_02001A00
|
||||
ldr r0, _0801D22C @ =gPaletteList
|
||||
adds r4, r1, r0
|
||||
ldr r0, [r4]
|
||||
lsls r0, r0, #0x1c
|
||||
@@ -356,7 +356,7 @@ _0801D212:
|
||||
_0801D22A:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0801D22C: .4byte gUnk_02001A00
|
||||
_0801D22C: .4byte gPaletteList
|
||||
|
||||
thumb_func_start UnloadOBJPalette
|
||||
UnloadOBJPalette: @ 0x0801D230
|
||||
@@ -374,7 +374,7 @@ UnloadOBJPalette: @ 0x0801D230
|
||||
sub_0801D244: @ 0x0801D244
|
||||
push {r4, r5, r6, lr}
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _0801D288 @ =gUnk_02001A00
|
||||
ldr r1, _0801D288 @ =gPaletteList
|
||||
adds r2, r0, r1
|
||||
ldr r0, [r2]
|
||||
lsls r0, r0, #0x1c
|
||||
@@ -408,7 +408,7 @@ _0801D270:
|
||||
_0801D284:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_0801D288: .4byte gUnk_02001A00
|
||||
_0801D288: .4byte gPaletteList
|
||||
|
||||
thumb_func_start sub_0801D28C
|
||||
sub_0801D28C: @ 0x0801D28C
|
||||
@@ -416,7 +416,7 @@ sub_0801D28C: @ 0x0801D28C
|
||||
adds r3, r1, #0
|
||||
adds r0, #0x27
|
||||
ldrb r2, [r0]
|
||||
ldr r1, _0801D2B0 @ =gUnk_02001A00
|
||||
ldr r1, _0801D2B0 @ =gPaletteList
|
||||
lsls r0, r2, #2
|
||||
adds r1, r0, r1
|
||||
ldrb r0, [r1]
|
||||
@@ -427,11 +427,11 @@ sub_0801D28C: @ 0x0801D28C
|
||||
strh r3, [r1, #2]
|
||||
adds r0, r3, #0
|
||||
adds r1, r2, #0
|
||||
bl sub_0801D2C8
|
||||
bl LoadObjPaletteAtIndex
|
||||
_0801D2AE:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0801D2B0: .4byte gUnk_02001A00
|
||||
_0801D2B0: .4byte gPaletteList
|
||||
|
||||
thumb_func_start sub_0801D2B4
|
||||
sub_0801D2B4: @ 0x0801D2B4
|
||||
@@ -441,11 +441,11 @@ sub_0801D2B4: @ 0x0801D2B4
|
||||
bl UnloadOBJPalette
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
pop {r4, r5, pc}
|
||||
|
||||
thumb_func_start sub_0801D2C8
|
||||
sub_0801D2C8: @ 0x0801D2C8
|
||||
thumb_func_start LoadObjPaletteAtIndex
|
||||
LoadObjPaletteAtIndex: @ 0x0801D2C8
|
||||
push {r4, lr}
|
||||
adds r3, r0, #0
|
||||
ldr r2, _0801D2F8 @ =gUsedPalettes
|
||||
@@ -508,13 +508,13 @@ _0801D340: .4byte gUnk_08133368
|
||||
_0801D344: .4byte 0x00FFFFFF
|
||||
_0801D348: .4byte gGlobalGfxAndPalettes
|
||||
|
||||
thumb_func_start sub_0801D34C
|
||||
sub_0801D34C: @ 0x0801D34C
|
||||
thumb_func_start CleanUpObjPalettes
|
||||
CleanUpObjPalettes: @ 0x0801D34C
|
||||
push {r4, r5, r6, r7, lr}
|
||||
sub sp, #0x10
|
||||
movs r2, #0
|
||||
movs r3, #0
|
||||
ldr r1, _0801D37C @ =gUnk_02001A00
|
||||
ldr r1, _0801D37C @ =gPaletteList
|
||||
_0801D356:
|
||||
mov r4, sp
|
||||
adds r0, r4, r2
|
||||
@@ -537,7 +537,7 @@ _0801D370:
|
||||
movs r4, #6
|
||||
b _0801D390
|
||||
.align 2, 0
|
||||
_0801D37C: .4byte gUnk_02001A00
|
||||
_0801D37C: .4byte gPaletteList
|
||||
_0801D380:
|
||||
cmp r4, r1
|
||||
ble _0801D390
|
||||
@@ -553,7 +553,7 @@ _0801D390:
|
||||
cmp r4, #0
|
||||
beq _0801D3AC
|
||||
movs r0, #1
|
||||
bl sub_0801D134
|
||||
bl FindFreeObjPalette
|
||||
adds r1, r0, #0
|
||||
movs r0, #1
|
||||
rsbs r0, r0, #0
|
||||
@@ -656,7 +656,7 @@ sub_0801D458: @ 0x0801D458
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0xf
|
||||
bhi _0801D488
|
||||
ldr r1, _0801D47C @ =gUnk_02001A00
|
||||
ldr r1, _0801D47C @ =gPaletteList
|
||||
lsls r0, r2, #2
|
||||
adds r1, r0, r1
|
||||
_0801D466:
|
||||
@@ -673,7 +673,7 @@ _0801D478:
|
||||
adds r0, r2, #0
|
||||
b _0801D48A
|
||||
.align 2, 0
|
||||
_0801D47C: .4byte gUnk_02001A00
|
||||
_0801D47C: .4byte gPaletteList
|
||||
_0801D480:
|
||||
adds r1, #4
|
||||
adds r2, #1
|
||||
@@ -692,7 +692,7 @@ sub_0801D48C: @ 0x0801D48C
|
||||
sub sp, #4
|
||||
adds r6, r0, #0
|
||||
adds r3, r1, #0
|
||||
ldr r0, _0801D50C @ =gUnk_02001A00
|
||||
ldr r0, _0801D50C @ =gPaletteList
|
||||
mov r8, r0
|
||||
lsls r0, r6, #2
|
||||
mov r1, r8
|
||||
@@ -751,7 +751,7 @@ _0801D4F8:
|
||||
mov r8, r3
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0801D50C: .4byte gUnk_02001A00
|
||||
_0801D50C: .4byte gPaletteList
|
||||
_0801D510: .4byte gPaletteBuffer
|
||||
_0801D514: .4byte gUsedPalettes
|
||||
_0801D518: .4byte 0xFFFF0000
|
||||
|
||||
+1
-1
@@ -152,7 +152,7 @@ sub_080527FC: @ 0x080527FC
|
||||
adds r4, r0, #0
|
||||
bl sub_08053320
|
||||
.ifndef EU
|
||||
bl sub_080AE1D8
|
||||
bl CleanUpGFXSlots
|
||||
.endif
|
||||
bl sub_080ADE24
|
||||
movs r0, #1
|
||||
|
||||
@@ -34,137 +34,3 @@ sub_0806EC38: @ 0x0806EC38
|
||||
_0806EC4C:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start GetNPCDefinition
|
||||
GetNPCDefinition: @ 0x0806EC50
|
||||
push {lr}
|
||||
adds r3, r0, #0
|
||||
ldrb r0, [r3, #9]
|
||||
lsls r0, r0, #3
|
||||
ldr r1, _0806EC74 @ =gNPCDefinitions
|
||||
adds r2, r0, r1
|
||||
ldrb r1, [r2]
|
||||
movs r0, #3
|
||||
ands r0, r1
|
||||
cmp r0, #2
|
||||
bne _0806EC6E
|
||||
ldrb r0, [r3, #0xa]
|
||||
lsls r0, r0, #3
|
||||
ldr r1, [r2, #4]
|
||||
adds r2, r1, r0
|
||||
_0806EC6E:
|
||||
adds r0, r2, #0
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0806EC74: .4byte gNPCDefinitions
|
||||
|
||||
thumb_func_start NPCInit
|
||||
NPCInit: @ 0x0806EC78
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _0806ED4A
|
||||
adds r0, r4, #0
|
||||
bl GetNPCDefinition
|
||||
adds r5, r0, #0
|
||||
ldrb r1, [r5]
|
||||
movs r0, #3
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _0806ECA2
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
b _0806ED4A
|
||||
_0806ECA2:
|
||||
ldrh r0, [r5, #2]
|
||||
lsls r0, r0, #0x16
|
||||
lsrs r2, r0, #0x16
|
||||
adds r1, r2, #0
|
||||
ldrb r0, [r5, #3]
|
||||
lsls r0, r0, #0x1c
|
||||
lsrs r0, r0, #0x1e
|
||||
cmp r0, #1
|
||||
beq _0806ECC0
|
||||
cmp r0, #2
|
||||
bne _0806ECCA
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x60
|
||||
strh r2, [r0]
|
||||
b _0806ECD0
|
||||
_0806ECC0:
|
||||
adds r0, r4, #0
|
||||
movs r2, #0
|
||||
bl sub_080AE008
|
||||
b _0806ECD0
|
||||
_0806ECCA:
|
||||
adds r0, r4, #0
|
||||
bl LoadFixedGFX
|
||||
_0806ECD0:
|
||||
ldrh r0, [r5, #4]
|
||||
lsls r0, r0, #0x16
|
||||
lsrs r1, r0, #0x16
|
||||
adds r0, r4, #0
|
||||
bl sub_0801D040
|
||||
ldrh r0, [r5, #6]
|
||||
lsls r0, r0, #0x16
|
||||
lsrs r0, r0, #0x16
|
||||
strh r0, [r4, #0x12]
|
||||
ldrb r0, [r5, #5]
|
||||
movs r3, #3
|
||||
movs r1, #0x30
|
||||
ands r1, r0
|
||||
ldrb r2, [r4, #0x18]
|
||||
movs r0, #0x31
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
ldrb r1, [r5, #7]
|
||||
lsls r1, r1, #0x1b
|
||||
movs r0, #0x29
|
||||
adds r0, r0, r4
|
||||
mov ip, r0
|
||||
lsrs r1, r1, #0x1d
|
||||
lsls r1, r1, #3
|
||||
ldrb r2, [r0]
|
||||
movs r0, #0x39
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
mov r1, ip
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r5, #7]
|
||||
lsrs r1, r1, #5
|
||||
ands r1, r3
|
||||
ldrb r2, [r4, #0x18]
|
||||
movs r0, #4
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
ldr r1, _0806ED4C @ =gUnk_08114EE4
|
||||
ldrb r0, [r5, #1]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0]
|
||||
str r0, [r4, #0x48]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
movs r1, #0xff
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x58
|
||||
strb r1, [r0]
|
||||
strb r1, [r4, #0x1e]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_0806ED4A:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0806ED4C: .4byte gUnk_08114EE4
|
||||
|
||||
+5
-5
@@ -468,7 +468,7 @@ _0806FE26:
|
||||
lsls r1, r1, #0x16
|
||||
lsrs r1, r1, #0x16
|
||||
adds r0, r6, #0
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
adds r2, r0, #0
|
||||
ldr r3, [r4]
|
||||
lsls r1, r3, #6
|
||||
@@ -603,7 +603,7 @@ sub_0806FF10: @ 0x0806FF10
|
||||
adds r1, r1, r0
|
||||
adds r4, r2, r1
|
||||
adds r0, r5, #0
|
||||
bl sub_0801D108
|
||||
bl FindPalette
|
||||
ldrb r1, [r4, #5]
|
||||
cmp r1, r0
|
||||
beq _0806FF40
|
||||
@@ -611,7 +611,7 @@ sub_0806FF10: @ 0x0806FF10
|
||||
bl sub_0801D244
|
||||
adds r0, r6, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
strb r0, [r4, #5]
|
||||
_0806FF40:
|
||||
pop {r4, r5, r6, pc}
|
||||
@@ -756,7 +756,7 @@ sub_0807000C: @ 0x0807000C
|
||||
orrs r5, r0
|
||||
cmp r5, #0
|
||||
beq _08070072
|
||||
ldr r3, _08070078 @ =gUnk_02024490
|
||||
ldr r3, _08070078 @ =gGFXSlots
|
||||
adds r2, r6, #0
|
||||
adds r2, #0x26
|
||||
ldrb r1, [r2]
|
||||
@@ -781,7 +781,7 @@ _08070072:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_08070074: .4byte gUnk_020000C0
|
||||
_08070078: .4byte gUnk_02024490
|
||||
_08070078: .4byte gGFXSlots
|
||||
|
||||
thumb_func_start sub_0807007C
|
||||
sub_0807007C: @ 0x0807007C
|
||||
|
||||
+1
-1
@@ -1342,7 +1342,7 @@ sub_08073C80: @ 0x08073C80
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #2
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
ldr r0, _08073D0C @ =gRoomControls
|
||||
str r4, [r0, #0x30]
|
||||
bl sub_080809D4
|
||||
|
||||
+10
-10
@@ -4849,13 +4849,13 @@ sub_080A7250: @ 0x080A7250
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #3
|
||||
bl MemCopy
|
||||
ldr r0, _080A72FC @ =gUnk_02024490
|
||||
ldr r0, _080A72FC @ =gGFXSlots
|
||||
ldr r4, _080A7300 @ =gUnk_02032F14
|
||||
movs r2, #0x85
|
||||
lsls r2, r2, #2
|
||||
adds r1, r4, #0
|
||||
bl MemCopy
|
||||
ldr r0, _080A7304 @ =gUnk_02001A00
|
||||
ldr r0, _080A7304 @ =gPaletteList
|
||||
movs r2, #0x85
|
||||
lsls r2, r2, #2
|
||||
adds r1, r4, r2
|
||||
@@ -4909,9 +4909,9 @@ _080A72EC: .4byte gScreen
|
||||
_080A72F0: .4byte gUnk_03001020
|
||||
_080A72F4: .4byte gPaletteBuffer
|
||||
_080A72F8: .4byte gUnk_02024090
|
||||
_080A72FC: .4byte gUnk_02024490
|
||||
_080A72FC: .4byte gGFXSlots
|
||||
_080A7300: .4byte gUnk_02032F14
|
||||
_080A7304: .4byte gUnk_02001A00
|
||||
_080A7304: .4byte gPaletteList
|
||||
_080A7308: .4byte gRoomControls
|
||||
_080A730C: .4byte gUnk_03000420
|
||||
_080A7310: .4byte gActiveScriptInfo
|
||||
@@ -4951,7 +4951,7 @@ sub_080A7328: @ 0x080A7328
|
||||
bl sub_080ADD30
|
||||
movs r0, #0
|
||||
bl sub_0801CFA8
|
||||
ldr r0, _080A739C @ =gUnk_02024490
|
||||
ldr r0, _080A739C @ =gGFXSlots
|
||||
movs r2, #1
|
||||
strb r2, [r0]
|
||||
ldr r1, _080A73A0 @ =gUnk_02032EC0
|
||||
@@ -4968,7 +4968,7 @@ _080A738C: .4byte gMenu
|
||||
_080A7390: .4byte gRoomControls
|
||||
_080A7394: .4byte gUnk_03000420
|
||||
_080A7398: .4byte gActiveScriptInfo
|
||||
_080A739C: .4byte gUnk_02024490
|
||||
_080A739C: .4byte gGFXSlots
|
||||
_080A73A0: .4byte gUnk_02032EC0
|
||||
_080A73A4: .4byte gScreenTransition
|
||||
|
||||
@@ -5013,12 +5013,12 @@ _080A73B4:
|
||||
movs r1, #0x9a
|
||||
lsls r1, r1, #2
|
||||
adds r0, r5, r1
|
||||
ldr r1, _080A7488 @ =gUnk_02001A00
|
||||
ldr r1, _080A7488 @ =gPaletteList
|
||||
movs r2, #0x40
|
||||
bl MemCopy
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x54
|
||||
ldr r1, _080A748C @ =gUnk_02024490
|
||||
ldr r1, _080A748C @ =gGFXSlots
|
||||
movs r2, #0x85
|
||||
lsls r2, r2, #2
|
||||
bl MemCopy
|
||||
@@ -5065,8 +5065,8 @@ _080A7478: .4byte gUnk_02025EB0
|
||||
_080A747C: .4byte gUnk_0200B650
|
||||
_080A7480: .4byte gActiveScriptInfo
|
||||
_080A7484: .4byte gUnk_03000420
|
||||
_080A7488: .4byte gUnk_02001A00
|
||||
_080A748C: .4byte gUnk_02024490
|
||||
_080A7488: .4byte gPaletteList
|
||||
_080A748C: .4byte gGFXSlots
|
||||
_080A7490: .4byte gRoomControls
|
||||
_080A7494: .4byte gUnk_03001020
|
||||
_080A7498: .4byte gScreen
|
||||
|
||||
+56
-56
@@ -11,7 +11,7 @@
|
||||
thumb_func_start sub_080ADD30
|
||||
sub_080ADD30: @ 0x080ADD30
|
||||
push {r4, r5, r6, lr}
|
||||
ldr r4, _080ADD6C @ =gUnk_02024490
|
||||
ldr r4, _080ADD6C @ =gGFXSlots
|
||||
movs r1, #0x85
|
||||
lsls r1, r1, #2
|
||||
adds r0, r4, #0
|
||||
@@ -25,7 +25,7 @@ _080ADD48:
|
||||
adds r0, r5, #0
|
||||
movs r1, #0
|
||||
movs r2, #1
|
||||
bl sub_080AE104
|
||||
bl ReserveGFXSlots
|
||||
ldrb r0, [r4]
|
||||
ands r0, r6
|
||||
movs r1, #6
|
||||
@@ -39,13 +39,13 @@ _080ADD48:
|
||||
bls _080ADD48
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_080ADD6C: .4byte gUnk_02024490
|
||||
_080ADD6C: .4byte gGFXSlots
|
||||
|
||||
thumb_func_start sub_080ADD70
|
||||
sub_080ADD70: @ 0x080ADD70
|
||||
.ifdef EU
|
||||
push {r4, r5, lr}
|
||||
ldr r0, _080AD540 @ =gUnk_02024490
|
||||
ldr r0, _080AD540 @ =gGFXSlots
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _080AD56A
|
||||
@@ -68,7 +68,7 @@ _080AD522:
|
||||
strb r0, [r2]
|
||||
b _080AD562
|
||||
.align 2, 0
|
||||
_080AD540: .4byte gUnk_02024490
|
||||
_080AD540: .4byte gGFXSlots
|
||||
_080AD544: .4byte gUnk_02024494
|
||||
_080AD548:
|
||||
cmp r0, #2
|
||||
@@ -93,7 +93,7 @@ _080AD56A:
|
||||
|
||||
.else
|
||||
push {r4, r5, lr}
|
||||
ldr r1, _080ADD88 @ =gUnk_02024490
|
||||
ldr r1, _080ADD88 @ =gGFXSlots
|
||||
ldrb r0, [r1]
|
||||
cmp r0, #0
|
||||
beq _080ADDD6
|
||||
@@ -103,7 +103,7 @@ _080AD56A:
|
||||
bl sub_080ADE24
|
||||
b _080ADDD6
|
||||
.align 2, 0
|
||||
_080ADD88: .4byte gUnk_02024490
|
||||
_080ADD88: .4byte gGFXSlots
|
||||
_080ADD8C:
|
||||
movs r4, #0
|
||||
movs r5, #0
|
||||
@@ -190,7 +190,7 @@ _080ADE14:
|
||||
thumb_func_start sub_080ADE24
|
||||
sub_080ADE24: @ 0x080ADE24
|
||||
push {r4, r5, lr}
|
||||
ldr r1, _080ADE50 @ =gUnk_02024490
|
||||
ldr r1, _080ADE50 @ =gGFXSlots
|
||||
movs r0, #1
|
||||
strb r0, [r1, #3]
|
||||
movs r4, #0
|
||||
@@ -211,7 +211,7 @@ _080ADE30:
|
||||
bl sub_080ADE74
|
||||
b _080ADE60
|
||||
.align 2, 0
|
||||
_080ADE50: .4byte gUnk_02024490
|
||||
_080ADE50: .4byte gGFXSlots
|
||||
_080ADE54: .4byte gUnk_02024494
|
||||
_080ADE58:
|
||||
adds r0, r1, #0
|
||||
@@ -223,11 +223,11 @@ _080ADE60:
|
||||
cmp r4, #0x2b
|
||||
bls _080ADE30
|
||||
movs r1, #0
|
||||
ldr r0, _080ADE70 @ =gUnk_02024490
|
||||
ldr r0, _080ADE70 @ =gGFXSlots
|
||||
strb r1, [r0, #3]
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_080ADE70: .4byte gUnk_02024490
|
||||
_080ADE70: .4byte gGFXSlots
|
||||
|
||||
thumb_func_start sub_080ADE74
|
||||
sub_080ADE74: @ 0x080ADE74
|
||||
@@ -267,7 +267,7 @@ _080ADEB0:
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _080ADEF6
|
||||
ldr r0, _080ADF0C @ =gUnk_02024490
|
||||
ldr r0, _080ADF0C @ =gGFXSlots
|
||||
ldrb r0, [r0, #3]
|
||||
cmp r0, #0
|
||||
bne _080ADECA
|
||||
@@ -308,7 +308,7 @@ _080ADEF6:
|
||||
_080ADF00: .4byte gUnk_02024494
|
||||
_080ADF04: .4byte 0x0000FFFF
|
||||
_080ADF08: .4byte gUnk_020000C0
|
||||
_080ADF0C: .4byte gUnk_02024490
|
||||
_080ADF0C: .4byte gGFXSlots
|
||||
_080ADF10: .4byte 0x06010000
|
||||
_080ADF14: .4byte 0x040000D4
|
||||
_080ADF18:
|
||||
@@ -379,7 +379,7 @@ LoadFixedGFX: @ 0x080ADF80
|
||||
b _080AD77E
|
||||
_080AD726:
|
||||
movs r4, #4
|
||||
ldr r0, _080AD774 @ =gUnk_02024490
|
||||
ldr r0, _080AD774 @ =gGFXSlots
|
||||
adds r0, #0x30
|
||||
_080AD72C:
|
||||
ldrh r1, [r0, #8]
|
||||
@@ -398,13 +398,13 @@ _080AD72C:
|
||||
ands r0, r7
|
||||
lsrs r6, r0, #0x18
|
||||
adds r0, r6, #0
|
||||
bl sub_080AE174
|
||||
bl FindFreeGFXSlot
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _080AD77C
|
||||
adds r1, r5, #0
|
||||
adds r2, r6, #0
|
||||
bl sub_080AE104
|
||||
bl ReserveGFXSlots
|
||||
adds r0, r4, #0
|
||||
adds r1, r7, #0
|
||||
bl sub_080ADDD8
|
||||
@@ -416,7 +416,7 @@ _080AD766:
|
||||
movs r0, #1
|
||||
b _080AD77E
|
||||
.align 2, 0
|
||||
_080AD774: .4byte gUnk_02024490
|
||||
_080AD774: .4byte gGFXSlots
|
||||
_080AD778: .4byte gFixedTypeGfxData
|
||||
_080AD77C:
|
||||
movs r0, #0
|
||||
@@ -434,7 +434,7 @@ _080AD77E:
|
||||
cmp r7, #0
|
||||
beq _080ADFFC
|
||||
movs r5, #4
|
||||
ldr r0, _080ADFD4 @ =gUnk_02024490
|
||||
ldr r0, _080ADFD4 @ =gGFXSlots
|
||||
adds r0, #0x30
|
||||
_080ADF94:
|
||||
ldrh r1, [r0, #8]
|
||||
@@ -453,26 +453,26 @@ _080ADF94:
|
||||
ands r0, r1
|
||||
lsrs r6, r0, #0x18
|
||||
adds r0, r6, #0
|
||||
bl sub_080AE174
|
||||
bl FindFreeGFXSlot
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
bne _080ADFDC
|
||||
bl sub_080AE1D8
|
||||
bl CleanUpGFXSlots
|
||||
adds r0, r6, #0
|
||||
bl sub_080AE174
|
||||
bl FindFreeGFXSlot
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
bne _080ADFDC
|
||||
movs r0, #0
|
||||
b _080ADFFE
|
||||
.align 2, 0
|
||||
_080ADFD4: .4byte gUnk_02024490
|
||||
_080ADFD4: .4byte gGFXSlots
|
||||
_080ADFD8: .4byte gFixedTypeGfxData
|
||||
_080ADFDC:
|
||||
adds r0, r5, #0
|
||||
adds r1, r7, #0
|
||||
adds r2, r6, #0
|
||||
bl sub_080AE104
|
||||
bl ReserveGFXSlots
|
||||
ldr r0, _080AE004 @ =gFixedTypeGfxData
|
||||
adds r0, r4, r0
|
||||
ldr r1, [r0]
|
||||
@@ -493,8 +493,8 @@ _080ADFFE:
|
||||
_080AE004: .4byte gFixedTypeGfxData
|
||||
.endif
|
||||
|
||||
thumb_func_start sub_080AE008
|
||||
sub_080AE008: @ 0x080AE008
|
||||
thumb_func_start LoadSwapGFX
|
||||
LoadSwapGFX: @ 0x080AE008
|
||||
.ifdef EU
|
||||
push {r4, r5, r6, lr}
|
||||
adds r6, r0, #0
|
||||
@@ -503,12 +503,12 @@ sub_080AE008: @ 0x080AE008
|
||||
cmp r4, #0
|
||||
bne _080AD79C
|
||||
adds r0, r5, #0
|
||||
bl sub_080AE174
|
||||
bl FindFreeGFXSlot
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _080AD7C4
|
||||
_080AD79C:
|
||||
ldr r0, _080AD7D0 @ =gUnk_02024490
|
||||
ldr r0, _080AD7D0 @ =gGFXSlots
|
||||
lsls r1, r4, #1
|
||||
adds r1, r1, r4
|
||||
lsls r1, r1, #2
|
||||
@@ -521,7 +521,7 @@ _080AD79C:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_080AE104
|
||||
bl ReserveGFXSlots
|
||||
movs r2, #5
|
||||
_080AD7BC:
|
||||
adds r0, r4, #0
|
||||
@@ -535,7 +535,7 @@ _080AD7C4:
|
||||
_080AD7CC:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_080AD7D0: .4byte gUnk_02024490
|
||||
_080AD7D0: .4byte gGFXSlots
|
||||
|
||||
.else
|
||||
push {r4, r5, r6, lr}
|
||||
@@ -545,18 +545,18 @@ _080AD7D0: .4byte gUnk_02024490
|
||||
cmp r4, #0
|
||||
bne _080AE030
|
||||
adds r0, r5, #0
|
||||
bl sub_080AE174
|
||||
bl FindFreeGFXSlot
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
bne _080AE030
|
||||
bl sub_080AE1D8
|
||||
bl CleanUpGFXSlots
|
||||
adds r0, r5, #0
|
||||
bl sub_080AE174
|
||||
bl FindFreeGFXSlot
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _080AE058
|
||||
_080AE030:
|
||||
ldr r0, _080AE064 @ =gUnk_02024490
|
||||
ldr r0, _080AE064 @ =gGFXSlots
|
||||
lsls r1, r4, #1
|
||||
adds r1, r1, r4
|
||||
lsls r1, r1, #2
|
||||
@@ -569,7 +569,7 @@ _080AE030:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_080AE104
|
||||
bl ReserveGFXSlots
|
||||
movs r2, #5
|
||||
_080AE050:
|
||||
adds r0, r4, #0
|
||||
@@ -583,7 +583,7 @@ _080AE058:
|
||||
_080AE060:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_080AE064: .4byte gUnk_02024490
|
||||
_080AE064: .4byte gGFXSlots
|
||||
.endif
|
||||
|
||||
thumb_func_start sub_080AE068
|
||||
@@ -672,8 +672,8 @@ _080AE0F6:
|
||||
.align 2, 0
|
||||
_080AE100: .4byte gUnk_02024494
|
||||
|
||||
thumb_func_start sub_080AE104
|
||||
sub_080AE104: @ 0x080AE104
|
||||
thumb_func_start ReserveGFXSlots
|
||||
ReserveGFXSlots: @ 0x080AE104
|
||||
push {r4, r5, r6, lr}
|
||||
adds r6, r1, #0
|
||||
adds r5, r2, #0
|
||||
@@ -734,13 +734,13 @@ _080AE170:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080AE174
|
||||
sub_080AE174: @ 0x080AE174
|
||||
thumb_func_start FindFreeGFXSlot
|
||||
FindFreeGFXSlot: @ 0x080AE174
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0
|
||||
movs r2, #4
|
||||
ldr r0, _080AE194 @ =gUnk_02024490
|
||||
ldr r0, _080AE194 @ =gGFXSlots
|
||||
adds r3, r0, #0
|
||||
adds r3, #0x30
|
||||
_080AE182:
|
||||
@@ -753,7 +753,7 @@ _080AE182:
|
||||
bhi _080AE19A
|
||||
b _080AE1BC
|
||||
.align 2, 0
|
||||
_080AE194: .4byte gUnk_02024490
|
||||
_080AE194: .4byte gGFXSlots
|
||||
_080AE198:
|
||||
movs r1, #0
|
||||
_080AE19A:
|
||||
@@ -763,7 +763,7 @@ _080AE19A:
|
||||
bls _080AE182
|
||||
movs r1, #0
|
||||
movs r2, #4
|
||||
ldr r0, _080AE1C4 @ =gUnk_02024490
|
||||
ldr r0, _080AE1C4 @ =gGFXSlots
|
||||
adds r3, r0, #0
|
||||
adds r3, #0x30
|
||||
_080AE1AC:
|
||||
@@ -784,7 +784,7 @@ _080AE1BC:
|
||||
adds r0, #1
|
||||
b _080AE1D4
|
||||
.align 2, 0
|
||||
_080AE1C4: .4byte gUnk_02024490
|
||||
_080AE1C4: .4byte gGFXSlots
|
||||
_080AE1C8:
|
||||
movs r1, #0
|
||||
_080AE1CA:
|
||||
@@ -798,17 +798,17 @@ _080AE1D4:
|
||||
.align 2, 0
|
||||
|
||||
.ifndef EU
|
||||
thumb_func_start sub_080AE1D8
|
||||
sub_080AE1D8: @ 0x080AE1D8
|
||||
thumb_func_start CleanUpGFXSlots
|
||||
CleanUpGFXSlots: @ 0x080AE1D8
|
||||
push {r4, r5, lr}
|
||||
ldr r0, _080AE1E8 @ =gUnk_02024490
|
||||
ldr r0, _080AE1E8 @ =gGFXSlots
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _080AE216
|
||||
movs r5, #4
|
||||
b _080AE20A
|
||||
.align 2, 0
|
||||
_080AE1E8: .4byte gUnk_02024490
|
||||
_080AE1E8: .4byte gGFXSlots
|
||||
_080AE1EC:
|
||||
bl sub_080AE3B8
|
||||
adds r4, r0, #0
|
||||
@@ -849,7 +849,7 @@ sub_080AE218: @ 0x080AE218
|
||||
mov r2, sl
|
||||
lsls r0, r2, #4
|
||||
adds r3, r0, r1
|
||||
ldr r1, _080AE30C @ =gUnk_02024490
|
||||
ldr r1, _080AE30C @ =gGFXSlots
|
||||
lsls r0, r2, #1
|
||||
add r0, sl
|
||||
lsls r0, r0, #2
|
||||
@@ -964,7 +964,7 @@ _080AE2F8:
|
||||
mov sl, r5
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_080AE30C: .4byte gUnk_02024490
|
||||
_080AE30C: .4byte gGFXSlots
|
||||
_080AE310: .4byte gUnk_020000C0
|
||||
_080AE314: .4byte gPlayerEntity
|
||||
_080AE318: .4byte 0xFFFFFC00
|
||||
@@ -977,7 +977,7 @@ sub_080AE324: @ 0x080AE324
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
adds r3, r1, #0
|
||||
ldr r2, _080AE380 @ =gUnk_02024490
|
||||
ldr r2, _080AE380 @ =gGFXSlots
|
||||
lsls r1, r0, #1
|
||||
adds r1, r1, r0
|
||||
lsls r1, r1, #2
|
||||
@@ -1013,14 +1013,14 @@ _080AE350:
|
||||
cmp r4, r0
|
||||
bne _080AE350
|
||||
_080AE372:
|
||||
ldr r1, _080AE380 @ =gUnk_02024490
|
||||
ldr r1, _080AE380 @ =gGFXSlots
|
||||
movs r0, #1
|
||||
strb r0, [r1, #3]
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_080AE380: .4byte gUnk_02024490
|
||||
_080AE380: .4byte gGFXSlots
|
||||
|
||||
thumb_func_start sub_080AE384
|
||||
sub_080AE384: @ 0x080AE384
|
||||
@@ -1028,7 +1028,7 @@ sub_080AE384: @ 0x080AE384
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0x2a
|
||||
bhi _080AE3B4
|
||||
ldr r1, _080AE3A8 @ =gUnk_02024490
|
||||
ldr r1, _080AE3A8 @ =gGFXSlots
|
||||
lsls r0, r2, #1
|
||||
adds r0, r0, r2
|
||||
lsls r0, r0, #2
|
||||
@@ -1044,7 +1044,7 @@ _080AE396:
|
||||
adds r0, r2, #0
|
||||
b _080AE3B6
|
||||
.align 2, 0
|
||||
_080AE3A8: .4byte gUnk_02024490
|
||||
_080AE3A8: .4byte gGFXSlots
|
||||
_080AE3AC:
|
||||
adds r1, #0xc
|
||||
adds r2, #1
|
||||
@@ -1059,7 +1059,7 @@ _080AE3B6:
|
||||
sub_080AE3B8: @ 0x080AE3B8
|
||||
push {lr}
|
||||
movs r1, #4
|
||||
ldr r0, _080AE3D4 @ =gUnk_02024490
|
||||
ldr r0, _080AE3D4 @ =gGFXSlots
|
||||
adds r2, r0, #0
|
||||
adds r2, #0x30
|
||||
_080AE3C2:
|
||||
@@ -1073,7 +1073,7 @@ _080AE3C2:
|
||||
adds r0, r1, #0
|
||||
b _080AE3E2
|
||||
.align 2, 0
|
||||
_080AE3D4: .4byte gUnk_02024490
|
||||
_080AE3D4: .4byte gGFXSlots
|
||||
_080AE3D8:
|
||||
adds r2, #0xc
|
||||
adds r1, #1
|
||||
|
||||
+1
-1
@@ -61,7 +61,7 @@ _08081674:
|
||||
adds r0, r4, #0
|
||||
movs r1, #4
|
||||
movs r2, #0
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitAnimationForceUpdate
|
||||
|
||||
+2
-2
@@ -136,7 +136,7 @@ sub_08051A14: @ 0x08051A14
|
||||
ldrb r0, [r1, #0xd]
|
||||
strb r0, [r2, #5]
|
||||
bl sub_08053320
|
||||
ldr r1, _08051A88 @ =gUnk_02024490
|
||||
ldr r1, _08051A88 @ =gGFXSlots
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
ldr r1, _08051A8C @ =gMain
|
||||
@@ -150,7 +150,7 @@ _08051A78: .4byte 0x00000B74
|
||||
_08051A7C: .4byte gUnk_02032EC0
|
||||
_08051A80: .4byte gRoomControls
|
||||
_08051A84: .4byte gScreenTransition
|
||||
_08051A88: .4byte gUnk_02024490
|
||||
_08051A88: .4byte gGFXSlots
|
||||
_08051A8C: .4byte gMain
|
||||
|
||||
thumb_func_start sub_08051A90
|
||||
|
||||
+3
-3
@@ -1244,7 +1244,7 @@ _0802D8DE:
|
||||
bl UnloadOBJPalette
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xc9
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
b _0802D918
|
||||
_0802D906:
|
||||
subs r0, #1
|
||||
@@ -1253,7 +1253,7 @@ _0802D906:
|
||||
bl UnloadOBJPalette
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xca
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
_0802D918:
|
||||
ldr r0, [r4, #0x50]
|
||||
adds r0, #0x80
|
||||
@@ -1446,7 +1446,7 @@ _0802DA54:
|
||||
adds r0, r0, r7
|
||||
ldrb r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
_0802DA96:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x41
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
cmp r0, #0xff
|
||||
bne _080173CE
|
||||
ldrb r2, [r3, #2]
|
||||
ldr r1, _08017414 @ =gUnk_08126ED8
|
||||
ldr r1, _08017414 @ =gAdditionalPlayerItemDefinitions
|
||||
ldrb r0, [r3, #1]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
@@ -56,7 +56,7 @@ _080173CE:
|
||||
b _08017428
|
||||
.align 2, 0
|
||||
_08017410: .4byte gPlayerItemDefinitions
|
||||
_08017414: .4byte gUnk_08126ED8
|
||||
_08017414: .4byte gAdditionalPlayerItemDefinitions
|
||||
_08017418: .4byte gPlayerEntity
|
||||
_0801741C:
|
||||
ldr r0, _0801749C @ =0x000003FF
|
||||
|
||||
@@ -94,7 +94,7 @@ _0801B5A4:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r4, #0
|
||||
bl sub_0801766C
|
||||
adds r0, r4, #0
|
||||
|
||||
@@ -88,7 +88,7 @@ _0801B56C:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r4, #0
|
||||
bl sub_0801766C
|
||||
adds r0, r4, #0
|
||||
|
||||
@@ -173,7 +173,7 @@ _080190FC:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r4, #0
|
||||
bl sub_08079BD8
|
||||
adds r0, r4, #0
|
||||
|
||||
@@ -41,7 +41,7 @@ _08054AAC:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r4, #0
|
||||
bl sub_08054AC8
|
||||
pop {r4, pc}
|
||||
|
||||
@@ -43,7 +43,7 @@ _080A2DDA:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r4, #0
|
||||
bl sub_080A2E00
|
||||
pop {r4, pc}
|
||||
|
||||
@@ -24,7 +24,7 @@ _080A75BA:
|
||||
adds r0, r5, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
ldr r1, _080A7658 @ =gPlayerEntity
|
||||
adds r0, r1, #0
|
||||
adds r0, #0x3c
|
||||
|
||||
@@ -112,7 +112,7 @@ _0801BB0A:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r4, #0
|
||||
bl sub_0801BB2C
|
||||
_0801BB26:
|
||||
|
||||
+3
-3
@@ -90,7 +90,7 @@ _0808CF82:
|
||||
movs r0, #0
|
||||
bl sub_0801CFA8
|
||||
bl sub_080ADD30
|
||||
ldr r0, _0808D024 @ =gUnk_02024490
|
||||
ldr r0, _0808D024 @ =gGFXSlots
|
||||
movs r6, #1
|
||||
strb r6, [r0]
|
||||
ldrb r0, [r5, #0xa]
|
||||
@@ -104,7 +104,7 @@ _0808CF82:
|
||||
bl LoadFixedGFX
|
||||
ldrh r1, [r4, #2]
|
||||
adds r0, r5, #0
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
ldrh r0, [r4, #4]
|
||||
strh r0, [r5, #0x12]
|
||||
ldrb r0, [r5, #0xa]
|
||||
@@ -158,7 +158,7 @@ _0808D01E:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_0808D020: .4byte gScreen
|
||||
_0808D024: .4byte gUnk_02024490
|
||||
_0808D024: .4byte gGFXSlots
|
||||
_0808D028: .4byte gUnk_081216C8
|
||||
_0808D02C: .4byte gArea
|
||||
|
||||
|
||||
+1
-1
@@ -47,7 +47,7 @@ sub_08082058: @ 0x08082058
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r4, #0
|
||||
bl sub_08082098
|
||||
pop {r4, pc}
|
||||
|
||||
+2
-2
@@ -114,7 +114,7 @@ _080829A4:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #0
|
||||
bne _080829CC
|
||||
@@ -415,7 +415,7 @@ sub_08082B9C: @ 0x08082B9C
|
||||
adds r0, r6, #0
|
||||
movs r1, #1
|
||||
movs r2, #3
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r6, #0
|
||||
movs r1, #0xc
|
||||
bl InitAnimationForceUpdate
|
||||
|
||||
+1
-1
@@ -73,7 +73,7 @@ sub_08097FB4: @ 0x08097FB4
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #0
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
ldrb r1, [r4, #0xa]
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
|
||||
+1
-1
@@ -105,7 +105,7 @@ sub_08083914: @ 0x08083914
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #1
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x60
|
||||
ldrh r1, [r0]
|
||||
|
||||
@@ -170,7 +170,7 @@ _080A7E78:
|
||||
lsrs r1, r1, #0x18
|
||||
adds r0, r4, #0
|
||||
movs r2, #0
|
||||
bl sub_080AE008
|
||||
bl LoadSwapGFX
|
||||
b _080A7E9A
|
||||
_080A7E92:
|
||||
ldrh r1, [r5]
|
||||
@@ -184,7 +184,7 @@ _080A7E9A:
|
||||
_080A7EA2:
|
||||
ldrh r1, [r5, #2]
|
||||
adds r0, r4, #0
|
||||
bl sub_0801D040
|
||||
bl LoadObjPalette
|
||||
movs r0, #1
|
||||
_080A7EAC:
|
||||
pop {r4, r5, pc}
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start ObjectInit
|
||||
ObjectInit: @ 0x080A2838
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r2, [r4, #9]
|
||||
lsls r2, r2, #3
|
||||
ldr r0, _080A2858 @ =gObjectDefinitions
|
||||
adds r2, r2, r0
|
||||
ldrb r1, [r4, #0xa]
|
||||
adds r0, r4, #0
|
||||
bl LoadObjectSprite
|
||||
cmp r0, #2
|
||||
bne _080A2856
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_080A2856:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_080A2858: .4byte gObjectDefinitions
|
||||
@@ -1,144 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start LoadObjectSprite
|
||||
LoadObjectSprite: @ 0x080A285C
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
adds r5, r2, #0
|
||||
ldrb r3, [r4, #0x10]
|
||||
movs r0, #1
|
||||
ands r0, r3
|
||||
cmp r0, #0
|
||||
beq _080A2870
|
||||
movs r0, #1
|
||||
b _080A2958
|
||||
_080A2870:
|
||||
ldrb r2, [r5]
|
||||
movs r0, #3
|
||||
ands r0, r2
|
||||
cmp r0, #0
|
||||
bne _080A288C
|
||||
lsls r0, r2, #0x1c
|
||||
lsrs r0, r0, #0x1e
|
||||
lsls r0, r0, #2
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
orrs r0, r3
|
||||
strb r0, [r4, #0x10]
|
||||
movs r0, #1
|
||||
b _080A2958
|
||||
_080A288C:
|
||||
subs r0, #2
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #1
|
||||
bhi _080A289C
|
||||
lsls r1, r1, #3
|
||||
ldr r0, [r5, #4]
|
||||
adds r5, r0, r1
|
||||
_080A289C:
|
||||
ldrh r0, [r5, #2]
|
||||
lsls r0, r0, #0x16
|
||||
lsrs r2, r0, #0x16
|
||||
adds r1, r2, #0
|
||||
ldrb r0, [r5, #3]
|
||||
lsls r0, r0, #0x1c
|
||||
lsrs r0, r0, #0x1e
|
||||
cmp r0, #1
|
||||
beq _080A28BA
|
||||
cmp r0, #2
|
||||
bne _080A28C4
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x60
|
||||
strh r2, [r0]
|
||||
b _080A28D2
|
||||
_080A28BA:
|
||||
adds r0, r4, #0
|
||||
movs r2, #0
|
||||
bl sub_080AE008
|
||||
b _080A28CA
|
||||
_080A28C4:
|
||||
adds r0, r4, #0
|
||||
bl LoadFixedGFX
|
||||
_080A28CA:
|
||||
cmp r0, #0
|
||||
bne _080A28D2
|
||||
movs r0, #0
|
||||
b _080A2958
|
||||
_080A28D2:
|
||||
ldrh r0, [r5, #4]
|
||||
lsls r0, r0, #0x16
|
||||
lsrs r1, r0, #0x16
|
||||
adds r0, r4, #0
|
||||
bl sub_0801D040
|
||||
movs r1, #0xff
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x58
|
||||
strb r1, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x40
|
||||
movs r0, #0x48
|
||||
strb r0, [r1]
|
||||
ldrh r0, [r5, #6]
|
||||
lsls r0, r0, #0x16
|
||||
lsrs r0, r0, #0x16
|
||||
strh r0, [r4, #0x12]
|
||||
ldrb r0, [r5, #5]
|
||||
movs r3, #3
|
||||
movs r1, #0x30
|
||||
ands r1, r0
|
||||
ldrb r2, [r4, #0x18]
|
||||
movs r0, #0x31
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
ldrb r1, [r5, #7]
|
||||
lsls r1, r1, #0x1b
|
||||
movs r0, #0x29
|
||||
adds r0, r0, r4
|
||||
mov ip, r0
|
||||
lsrs r1, r1, #0x1d
|
||||
lsls r1, r1, #3
|
||||
ldrb r2, [r0]
|
||||
movs r0, #0x39
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
mov r1, ip
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r5, #7]
|
||||
lsrs r1, r1, #5
|
||||
ands r1, r3
|
||||
ldrb r2, [r4, #0x18]
|
||||
movs r0, #4
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
ldr r1, _080A295C @ =gUnk_08125104
|
||||
ldrb r0, [r5, #1]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0]
|
||||
str r0, [r4, #0x48]
|
||||
ldrb r0, [r5]
|
||||
lsls r0, r0, #0x1c
|
||||
lsrs r0, r0, #0x1e
|
||||
lsls r0, r0, #2
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
ldrb r1, [r4, #0x10]
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
movs r0, #2
|
||||
_080A2958:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_080A295C: .4byte gUnk_08125104
|
||||
+5
-1
@@ -16016,7 +16016,11 @@
|
||||
"path": "gfx/fixedTypeGfx_1.4bpp",
|
||||
"start": 6716160,
|
||||
"size": 1408,
|
||||
"type": "gfx"
|
||||
"type": "gfx",
|
||||
"options": {
|
||||
"width": 2,
|
||||
"palette": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "gfx/fixedTypeGfx_3.4bpp",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
.align 2
|
||||
|
||||
|
||||
gUnk_08114EE4:: @ 08114EE4
|
||||
gNPCHitboxes:: @ 08114EE4
|
||||
.4byte 00000000
|
||||
.4byte gHitbox_2
|
||||
.4byte gHitbox_30
|
||||
|
||||
+46
-11
@@ -12,7 +12,7 @@ typedef struct EnemyDefinition {
|
||||
u16 spriteIndex;
|
||||
struct {
|
||||
u8 spritePriority : 3;
|
||||
u8 unknown : 1;
|
||||
u8 collision : 1;
|
||||
u8 draw : 2;
|
||||
u8 shadow : 2;
|
||||
} PACKED spriteFlags;
|
||||
@@ -33,7 +33,7 @@ typedef struct ProjectileDefinition {
|
||||
u16 field0x3c : 4;
|
||||
struct {
|
||||
u8 spritePriority : 3;
|
||||
u8 unknown : 1;
|
||||
u8 collision : 1;
|
||||
u8 draw : 2;
|
||||
u8 shadow : 2;
|
||||
} PACKED spriteFlags;
|
||||
@@ -44,18 +44,53 @@ typedef struct ProjectileDefinition {
|
||||
} ProjectileDefinition;
|
||||
|
||||
// Sprite data definition for objects and npcs
|
||||
typedef struct SpriteDataB {
|
||||
u8 type;
|
||||
u8 unk;
|
||||
u16 bitfield;
|
||||
typedef struct ObjectDefinition {
|
||||
struct {
|
||||
u8 type : 2;
|
||||
u8 flags : 2;
|
||||
u8 unk : 4;
|
||||
u8 hitbox;
|
||||
u16 gfx : 10;
|
||||
u16 gfx_type : 2;
|
||||
u16 unk2 : 4;
|
||||
} PACKED bitfield;
|
||||
union {
|
||||
struct {
|
||||
u16 paletteIndex;
|
||||
u16 spriteIndex;
|
||||
} sprite;
|
||||
const struct SpriteDataB* spriteData;
|
||||
u16 paletteIndex : 10;
|
||||
u16 unk : 2;
|
||||
u16 shadow : 2;
|
||||
u16 unk2 : 2;
|
||||
u16 spriteIndex : 10;
|
||||
u16 spritePriority : 3;
|
||||
u16 draw : 3;
|
||||
} PACKED sprite;
|
||||
const struct ObjectDefinition* definition;
|
||||
} data;
|
||||
} SpriteDataB;
|
||||
} ObjectDefinition;
|
||||
|
||||
typedef struct NPCDefinition {
|
||||
struct {
|
||||
u8 type : 2;
|
||||
u8 flags : 2;
|
||||
u8 unk : 4;
|
||||
u8 hitbox;
|
||||
u16 gfx : 10;
|
||||
u16 gfx_type : 2;
|
||||
u16 unk2 : 4;
|
||||
} PACKED bitfield;
|
||||
union {
|
||||
struct {
|
||||
u16 paletteIndex : 10;
|
||||
u16 unk : 2;
|
||||
u16 shadow : 2;
|
||||
u16 unk2 : 2;
|
||||
u16 spriteIndex : 10;
|
||||
u16 spritePriority : 3;
|
||||
u16 draw : 3;
|
||||
} PACKED sprite;
|
||||
const struct NPCDefinition* definition;
|
||||
} data;
|
||||
} NPCDefinition;
|
||||
|
||||
// Sprite data definition for player items
|
||||
typedef struct SpriteDataC {
|
||||
|
||||
+3
-3
@@ -55,7 +55,7 @@ extern Entity* CreateProjectile(u32);
|
||||
extern void RegisterPlayerHitbox();
|
||||
extern s32 GetItemPrice();
|
||||
extern void DoExitTransition(ScreenTransitionData*);
|
||||
extern void CreateDustAt(u32, u32, u32);
|
||||
extern void CreateDustAt(s32, s32, u32);
|
||||
extern void PutItemOnSlot(u32 itemID);
|
||||
extern void CreateSpeechBubbleSleep(Entity*, u32, u32);
|
||||
extern u32 CheckPlayerProximity(u32, u32, u32, u32);
|
||||
@@ -193,7 +193,7 @@ extern void sub_0800417E(Entity*, u32);
|
||||
extern void sub_080784C8();
|
||||
extern u32 sub_0808288C(Entity*, u32, u32, u32);
|
||||
extern void sub_0806FDA0(Entity*);
|
||||
extern bool32 sub_080AE008(Entity*, u8, u32);
|
||||
extern bool32 LoadSwapGFX(Entity*, u16, u32);
|
||||
extern u32 sub_08016A30(Entity*);
|
||||
extern void sub_08077728();
|
||||
extern void sub_0807AEE4();
|
||||
@@ -302,5 +302,5 @@ extern void sub_0801855C(void);
|
||||
extern u32 sub_0807CAEC(u32);
|
||||
extern void sub_0807CAC8(u32);
|
||||
extern void sub_0805E4E0(Entity*, u32);
|
||||
extern void sub_0801D040(Entity*, u32);
|
||||
extern void LoadObjPalette(Entity*, u32);
|
||||
#endif
|
||||
|
||||
@@ -1,383 +0,0 @@
|
||||
#ifndef SPRITEDATA_H
|
||||
#define SPRITEDATA_H
|
||||
|
||||
// Sprite data definition for enemies and projectiles
|
||||
typedef struct EnemyDefinition {
|
||||
u16 bitfield;
|
||||
u16 paletteIndex;
|
||||
union {
|
||||
const Hitbox* hitbox;
|
||||
const struct EnemyDefinition* spriteData;
|
||||
} ptr;
|
||||
u16 spriteIndex;
|
||||
struct {
|
||||
u8 spritePriority : 3;
|
||||
u8 unknown : 1;
|
||||
u8 draw : 2;
|
||||
u8 shadow : 2;
|
||||
} PACKED spriteFlags;
|
||||
u8 health;
|
||||
s16 speed;
|
||||
u8 damageType;
|
||||
u8 flags2;
|
||||
} EnemyDefinition;
|
||||
|
||||
// Sprite data definition for objects and npcs
|
||||
typedef struct SpriteDataB {
|
||||
u8 type;
|
||||
u8 unk;
|
||||
u16 bitfield;
|
||||
union {
|
||||
struct {
|
||||
u16 paletteIndex;
|
||||
u16 spriteIndex;
|
||||
} sprite;
|
||||
const struct SpriteDataB* spriteData;
|
||||
} data;
|
||||
} SpriteDataB;
|
||||
|
||||
// Sprite data definition for player items
|
||||
typedef struct SpriteDataC {
|
||||
u8 bitfield;
|
||||
u8 index;
|
||||
u16 unk;
|
||||
u8 unk2;
|
||||
u8 spriteIndex;
|
||||
u16 gfxLoadBitfield;
|
||||
} SpriteDataC;
|
||||
|
||||
typedef enum {
|
||||
SPRITE_0,
|
||||
SPRITE_1,
|
||||
SPRITE_2,
|
||||
SPRITE_3,
|
||||
SPRITE_4,
|
||||
SPRITE_5,
|
||||
SPRITE_6,
|
||||
SPRITE_7,
|
||||
SPRITE_8,
|
||||
SPRITE_9,
|
||||
SPRITE_OBJECT4,
|
||||
SPRITE_OBJECT6,
|
||||
SPRITE_12,
|
||||
SPRITE_13,
|
||||
SPRITE_14,
|
||||
SPRITE_15,
|
||||
SPRITE_16,
|
||||
SPRITE_17,
|
||||
SPRITE_18,
|
||||
SPRITE_19,
|
||||
SPRITE_20,
|
||||
SPRITE_21,
|
||||
SPRITE_22,
|
||||
SPRITE_ITEMGUSTJAR,
|
||||
SPRITE_GENTARI,
|
||||
SPRITE_FESTARI,
|
||||
SPRITE_MELARI,
|
||||
SPRITE_MOUNTAINMINISH,
|
||||
SPRITE_28,
|
||||
SPRITE_TOWNMINISH,
|
||||
SPRITE_LIBRARI,
|
||||
SPRITE_FORESTMINISH,
|
||||
SPRITE_VAATI,
|
||||
SPRITE_OBJECT6A_9,
|
||||
SPRITE_OBJECT6A_0,
|
||||
SPRITE_OBJECT6A_1,
|
||||
SPRITE_OBJECT6A_2,
|
||||
SPRITE_MINISHEZLO,
|
||||
SPRITE_OBJECT6A_3,
|
||||
SPRITE_DIN,
|
||||
SPRITE_NAYRU,
|
||||
SPRITE_FARORE,
|
||||
SPRITE_NPC5,
|
||||
SPRITE_GUARDWITHSPEAR,
|
||||
SPRITE_KINGDALTUS,
|
||||
SPRITE_MINISTERPOTHO,
|
||||
SPRITE_NPC26,
|
||||
SPRITE_MAID,
|
||||
SPRITE_TINGLESIBLINGS,
|
||||
SPRITE_BEEDLE,
|
||||
SPRITE_BROCCO,
|
||||
SPRITE_PINA,
|
||||
SPRITE_POSTMAN,
|
||||
SPRITE_MALON,
|
||||
SPRITE_EPONA,
|
||||
SPRITE_MILKCART,
|
||||
SPRITE_SMITH,
|
||||
SPRITE_TOWNSPERSON,
|
||||
SPRITE_58,
|
||||
SPRITE_KID,
|
||||
SPRITE_MAILBOX,
|
||||
SPRITE_SITTINGPERSON,
|
||||
SPRITE_MUTOH,
|
||||
SPRITE_CARPENTER,
|
||||
SPRITE_GORMAN,
|
||||
SPRITE_CAT,
|
||||
SPRITE_CAT_1,
|
||||
SPRITE_DOG,
|
||||
SPRITE_DOG_1,
|
||||
SPRITE_DOG_2,
|
||||
SPRITE_SYRUP,
|
||||
SPRITE_PERCY,
|
||||
SPRITE_FARMERS_0,
|
||||
SPRITE_FARMERS_1,
|
||||
SPRITE_DAMPE,
|
||||
SPRITE_KINGGUSTAF,
|
||||
SPRITE_GINA,
|
||||
SPRITE_SIMON,
|
||||
SPRITE_MAMA,
|
||||
SPRITE_TEACHERS,
|
||||
SPRITE_TEACHERS_1,
|
||||
SPRITE_WINDTRIBESPEOPLE_0,
|
||||
SPRITE_WINDTRIBESPEOPLE_1,
|
||||
SPRITE_WINDTRIBESPEOPLE_2,
|
||||
SPRITE_WINDTRIBESPEOPLE_3,
|
||||
SPRITE_WINDTRIBESPEOPLE_4,
|
||||
SPRITE_WINDTRIBESPEOPLE_5,
|
||||
SPRITE_MAYORHAGEN,
|
||||
SPRITE_GHOSTBROTHERS,
|
||||
SPRITE_HURDYGURDYMAN,
|
||||
SPRITE_COW,
|
||||
SPRITE_GORONMERCHANT,
|
||||
SPRITE_GORONMERCHANT_1,
|
||||
SPRITE_GORON,
|
||||
SPRITE_CASTORWILDSSTATUE,
|
||||
SPRITE_NPC4F,
|
||||
SPRITE_OBJECT6A_4,
|
||||
SPRITE_97,
|
||||
SPRITE_DARKNUT_0,
|
||||
SPRITE_DARKNUT_1,
|
||||
SPRITE_CHUCHUBOSS_0,
|
||||
SPRITE_DEATHFX_0,
|
||||
SPRITE_MADDERPILLAR_0,
|
||||
SPRITE_GLEEROK_0,
|
||||
SPRITE_KEATON,
|
||||
SPRITE_MAZAALHAND,
|
||||
SPRITE_SCISSORSBEETLE,
|
||||
SPRITE_MANDIBLESPROJECTILE,
|
||||
SPRITE_STALFOS,
|
||||
SPRITE_GIBDO,
|
||||
SPRITE_LAKITU,
|
||||
SPRITE_LAKITUCLOUDPROJECTILE,
|
||||
SPRITE_VAATIREBORNENEMY_0,
|
||||
SPRITE_VAATIREBORNENEMY_1,
|
||||
SPRITE_VAATIREBORNENEMY_2,
|
||||
SPRITE_VAATIREBORNENEMY_3,
|
||||
SPRITE_VAATIBALL,
|
||||
SPRITE_VAATITRANSFIGURED_0,
|
||||
SPRITE_VAATITRANSFIGURED_1,
|
||||
SPRITE_VAATITRANSFIGURED_2,
|
||||
SPRITE_VAATITRANSFIGURED_3,
|
||||
SPRITE_VAATIARM,
|
||||
SPRITE_VAATIWRATH,
|
||||
SPRITE_VAATIREBORN,
|
||||
SPRITE_MOBLINLADY_1,
|
||||
SPRITE_BALLCHAINSOLDIER,
|
||||
SPRITE_GYORGMALE,
|
||||
SPRITE_JARPORTAL,
|
||||
SPRITE_BEANSTALK_0,
|
||||
SPRITE_MINECART,
|
||||
SPRITE_LAVAPLATFORM_1,
|
||||
SPRITE_WHIRLWIND,
|
||||
SPRITE_BIGVORTEX,
|
||||
SPRITE_MACROBOOK,
|
||||
SPRITE_GENTARICURTAINS,
|
||||
SPRITE_SPIDERWEB,
|
||||
SPRITE_OBJECT79,
|
||||
SPRITE_OCTOROKBOSS_0,
|
||||
SPRITE_BELL,
|
||||
SPRITE_TALON,
|
||||
SPRITE_STURGEON,
|
||||
SPRITE_LIBRARIANS_0,
|
||||
SPRITE_LIBRARIANS_1,
|
||||
SPRITE_STAMP,
|
||||
SPRITE_MARCY,
|
||||
SPRITE_STOCKWELL,
|
||||
SPRITE_WHEATON,
|
||||
SPRITE_PITA,
|
||||
SPRITE_CUCCOAGGR,
|
||||
SPRITE_BLADEBROTHERS_0,
|
||||
SPRITE_BLADEBROTHERS_1,
|
||||
SPRITE_REM,
|
||||
SPRITE_CARLOV_0,
|
||||
SPRITE_CARLOV_1,
|
||||
SPRITE_DRLEFT,
|
||||
SPRITE_155,
|
||||
SPRITE_ANJU,
|
||||
SPRITE_EMMA,
|
||||
SPRITE_GREGAL,
|
||||
SPRITE_159,
|
||||
SPRITE_CASTORWILDSSTATUE_1,
|
||||
SPRITE_CHUCHU,
|
||||
SPRITE_SPECIALFX,
|
||||
SPRITE_SPECIALFX_1,
|
||||
SPRITE_OBJECT64,
|
||||
SPRITE_BEETLE,
|
||||
SPRITE_166,
|
||||
SPRITE_POT,
|
||||
SPRITE_DEATHFX_1,
|
||||
SPRITE_PEAHAT,
|
||||
SPRITE_RAILTRACK,
|
||||
SPRITE_ROLLOBITE,
|
||||
SPRITE_OBJECTD,
|
||||
SPRITE_OBJECT2A,
|
||||
SPRITE_OCTOROK,
|
||||
SPRITE_OBJECT43,
|
||||
SPRITE_ROCKPROJECTILE,
|
||||
SPRITE_KEESE,
|
||||
SPRITE_DOORMIMIC,
|
||||
SPRITE_DOORMIMIC_1,
|
||||
SPRITE_ROCKCHUCHU,
|
||||
SPRITE_SPINYCHUCHU,
|
||||
SPRITE_OBJECT24,
|
||||
SPRITE_OBJECT1E,
|
||||
SPRITE_CHESTSPAWNER,
|
||||
SPRITE_BIGBARREL,
|
||||
SPRITE_PUSHABLESTATUE,
|
||||
SPRITE_MOLDWORM,
|
||||
SPRITE_SLUGGULA,
|
||||
SPRITE_SLUGGULA_1,
|
||||
SPRITE_SLUGGULA_2,
|
||||
SPRITE_PESTO,
|
||||
SPRITE_PUFFSTOOL,
|
||||
SPRITE_PUSHABLEROCK,
|
||||
SPRITE_BEANSTALK_1,
|
||||
SPRITE_OBJECTB3,
|
||||
SPRITE_PULLABLEMUSHROOM,
|
||||
SPRITE_BOLLARD,
|
||||
SPRITE_WARPPOINT,
|
||||
SPRITE_OBJECT29,
|
||||
SPRITE_CHUCHUBOSS_1,
|
||||
SPRITE_CHUCHUBOSS_2,
|
||||
SPRITE_OBJECT9,
|
||||
SPRITE_BOSSDOOR,
|
||||
SPRITE_OBJECT45,
|
||||
SPRITE_LIKELIKE,
|
||||
SPRITE_SPEARMOBLIN,
|
||||
SPRITE_BOWMOBLIN,
|
||||
SPRITE_BUSINESSSCRUB,
|
||||
SPRITE_RUPEELIKE,
|
||||
SPRITE_MINISHSIZEDENTRANCE,
|
||||
SPRITE_PULLABLELEVER,
|
||||
SPRITE_THOUGHTBUBBLE,
|
||||
SPRITE_MADDERPILLAR_1,
|
||||
SPRITE_LAVAPLATFORM,
|
||||
SPRITE_WATERDROP,
|
||||
SPRITE_WALLMASTER,
|
||||
SPRITE_DIRTBALLPROJECTILE,
|
||||
SPRITE_CRENALBEANSPROUT,
|
||||
SPRITE_BOMBPEAHAT,
|
||||
SPRITE_SPARK,
|
||||
SPRITE_CHASER,
|
||||
SPRITE_SPIKEDBEETLE,
|
||||
SPRITE_HELMASAUR,
|
||||
SPRITE_FALLINGBOULDER,
|
||||
SPRITE_BOBOMB,
|
||||
SPRITE_GLEEROK_1,
|
||||
SPRITE_GREATFAIRY,
|
||||
SPRITE_TEKTITE,
|
||||
SPRITE_WIZZROBEWIND,
|
||||
SPRITE_WIZZROBEFIRE,
|
||||
SPRITE_WIZZROBEICE,
|
||||
SPRITE_WINDPROJECTILE,
|
||||
SPRITE_FIREPROJECTILE,
|
||||
SPRITE_ICEPROJECTILE,
|
||||
SPRITE_ARMOS,
|
||||
SPRITE_LEEVER,
|
||||
SPRITE_ROPE,
|
||||
SPRITE_EYEGORE,
|
||||
SPRITE_PESTO_1,
|
||||
SPRITE_ACROBANDITS,
|
||||
SPRITE_CROW,
|
||||
SPRITE_MULLDOZER,
|
||||
SPRITE_PUSHABLELEVER,
|
||||
SPRITE_BIGPUSHABLELEVER,
|
||||
SPRITE_BOMBAROSSA,
|
||||
SPRITE_WISP,
|
||||
SPRITE_SPINYBEETLE,
|
||||
SPRITE_MAZAALHEAD,
|
||||
SPRITE_MAZAALBRACELET,
|
||||
SPRITE_MAZAALENERGYBEAM,
|
||||
SPRITE_MAZAALENERGYBEAM_1,
|
||||
SPRITE_MAZAALMACRO,
|
||||
SPRITE_EYESWITCH,
|
||||
SPRITE_OCTOROKBOSS_1,
|
||||
SPRITE_PICOBLOOM,
|
||||
SPRITE_OBJECT35,
|
||||
SPRITE_BIGICEBLOCK,
|
||||
SPRITE_BIGICEBLOCK_1,
|
||||
SPRITE_SMALLICEBLOCK,
|
||||
SPRITE_OBJECT86,
|
||||
SPRITE_EVILSPIRIT,
|
||||
SPRITE_CLOUDPIRANHA,
|
||||
SPRITE_FLYINGSKULL,
|
||||
SPRITE_BONEPROJECTILE,
|
||||
SPRITE_BAKEROVEN,
|
||||
SPRITE_OBJECT93_0,
|
||||
SPRITE_LAKITULIGHTNING,
|
||||
SPRITE_OBJECT6A_5,
|
||||
SPRITE_BIRD_1,
|
||||
SPRITE_BIRD,
|
||||
SPRITE_TORCHTRAPPROJECTILE_0,
|
||||
SPRITE_TORCHTRAPPROJECTILE_1,
|
||||
SPRITE_OBJECT98,
|
||||
SPRITE_OBJECT93_1,
|
||||
SPRITE_FIGURINEDEVICE,
|
||||
SPRITE_PULLABLELEVER_1,
|
||||
SPRITE_VAATIPROJECTILE,
|
||||
SPRITE_OBJECT44,
|
||||
SPRITE_GHINI,
|
||||
SPRITE_VAATIARM_1,
|
||||
SPRITE_VAATIWRATH_1,
|
||||
SPRITE_OBJECTAF,
|
||||
SPRITE_WRATHEYE,
|
||||
SPRITE_V3HANDPROJECTILE,
|
||||
SPRITE_VAATIWRATH_2,
|
||||
SPRITE_VAATIEYESMACRO,
|
||||
SPRITE_OBJECTB4,
|
||||
#if !defined(EU)
|
||||
SPRITE_OBJECTB4_1,
|
||||
#endif
|
||||
SPRITE_FAN,
|
||||
SPRITE_OBJECTA0,
|
||||
SPRITE_CANNONBALLPROJECTILE,
|
||||
SPRITE_V1EYELASER,
|
||||
SPRITE_V1DARKMAGICPROJECTILE,
|
||||
SPRITE_SLIME,
|
||||
SPRITE_CURTAIN,
|
||||
SPRITE_OBJECT9B,
|
||||
SPRITE_ENEMY5A,
|
||||
SPRITE_VAATITRANSFIGURED_4,
|
||||
SPRITE_VAATITRANSFIGURED_5,
|
||||
SPRITE_OBJECTA6,
|
||||
SPRITE_FIREBALLGUY,
|
||||
SPRITE_SPIKEDROLLERS,
|
||||
SPRITE_OBJECT6A_6,
|
||||
SPRITE_MOBLINLADY,
|
||||
SPRITE_OBJECTAB,
|
||||
SPRITE_GYORGMALEENERGYPROJECTILE,
|
||||
SPRITE_CLOTHESRACK,
|
||||
SPRITE_OBJECT6A_7,
|
||||
SPRITE_JAILBARS,
|
||||
SPRITE_OBJECTB2,
|
||||
SPRITE_ENEMY62,
|
||||
SPRITE_GYORGFEMALEEYE,
|
||||
SPRITE_GYORGCHILD,
|
||||
SPRITE_SMALLTOWNMINISH,
|
||||
SPRITE_GYORGFEMALEMOUTH,
|
||||
SPRITE_V2PROJECTILE,
|
||||
SPRITE_OBJECT6A_8,
|
||||
SPRITE_PINWHEEL,
|
||||
SPRITE_SPEARMOBLIN_1,
|
||||
SPRITE_BOWMOBLIN_1,
|
||||
SPRITE_ARROWPROJECTILE,
|
||||
SPRITE_322,
|
||||
SPRITE_323,
|
||||
SPRITE_324,
|
||||
SPRITE_FILESCREENOBJECTS,
|
||||
SPRITE_OBJECTA2,
|
||||
SPRITE_OBJECT6A_10,
|
||||
SPRITE_VAATI_1,
|
||||
|
||||
} Sprites;
|
||||
#endif
|
||||
@@ -123,7 +123,7 @@ typedef struct {
|
||||
u8 unk0;
|
||||
} struct_02024490;
|
||||
|
||||
extern struct_02024490 gUnk_02024490;
|
||||
extern struct_02024490 gGFXSlots;
|
||||
|
||||
typedef struct {
|
||||
u32 unk_00;
|
||||
|
||||
@@ -27,7 +27,7 @@ SECTIONS {
|
||||
. = 0x000000C0; gUnk_020000C0 = .;
|
||||
. = 0x00000CC0; gUnk_02000CC0 = .;
|
||||
. = 0x00000D00; gTextGfxBuffer = .;
|
||||
. = 0x00001A00; gUnk_02001A00 = .;
|
||||
. = 0x00001A00; gPaletteList = .;
|
||||
. = 0x00001A3C; gUnk_02001A3C = .;
|
||||
. = 0x00001A40; gBG3Buffer = .;
|
||||
. = 0x00001B40; gUnk_02001B40 = .;
|
||||
@@ -102,7 +102,7 @@ SECTIONS {
|
||||
. = 0x00024048; gUnk_02024048 = .;
|
||||
. = 0x00024050; gUnk_02024050 = .;
|
||||
. = 0x00024090; gUnk_02024090 = .;
|
||||
. = 0x00024490; gUnk_02024490 = .;
|
||||
. = 0x00024490; gGFXSlots = .;
|
||||
. = 0x00024494; gUnk_02024494 = .;
|
||||
. = 0x000246B0; gUnk_020246B0 = .;
|
||||
. = 0x00025EB0; gUnk_02025EB0 = .;
|
||||
@@ -905,8 +905,6 @@ SECTIONS {
|
||||
asm/objectC1.o(.text);
|
||||
/* END objects */
|
||||
asm/sub_080A276C.o(.text);
|
||||
asm/sub_080A2838.o(.text);
|
||||
asm/sub_080A285C.o(.text);
|
||||
src/createObject.o(.text);
|
||||
asm/code_080A29BC.o(.text);
|
||||
src/playerItem/playerItemShield.o(.text);
|
||||
@@ -1384,7 +1382,7 @@ SECTIONS {
|
||||
data/const/npc/cuccoChick.o(.rodata);
|
||||
data/const/npc/phonograph.o(.rodata);
|
||||
data/const/npc/npc58.o(.rodata);
|
||||
src/spriteDataNpc.o(.rodata);
|
||||
src/npcDefinitions.o(.rodata);
|
||||
data/data_081146D0.o(.rodata);
|
||||
data/gfx/sprite_frames.o(.rodata);
|
||||
data/const/playerItem/playerItem12.o(.rodata);
|
||||
@@ -1649,8 +1647,8 @@ SECTIONS {
|
||||
data/const/object/pinwheel.o(.rodata);
|
||||
data/animations/object/pinwheel.o(.rodata);
|
||||
data/const/object/objectC1.o(.rodata);
|
||||
src/spriteDataObject.o(.rodata);
|
||||
src/spriteDataPlayerItem.o(.rodata);
|
||||
src/objectDefinitions.o(.rodata);
|
||||
src/playerItemDefinitions.o(.rodata);
|
||||
data/data_08125104.o(.rodata);
|
||||
data/const/playerItem/playerItemShield.o(.rodata);
|
||||
data/const/playerItem/playerItem15.o(.rodata);
|
||||
|
||||
+54
-3
@@ -1,10 +1,61 @@
|
||||
#include "global.h"
|
||||
#include "entity.h"
|
||||
#include "functions.h"
|
||||
#include "definitions.h"
|
||||
|
||||
extern const NPCDefinition gNPCDefinitions[];
|
||||
|
||||
extern Hitbox* gNPCHitboxes[];
|
||||
const NPCDefinition* GetNPCDefinition(Entity*);
|
||||
|
||||
const NPCDefinition* GetNPCDefinition(Entity* this) {
|
||||
const NPCDefinition* definition = &gNPCDefinitions[this->id];
|
||||
if (definition->bitfield.type == 2) {
|
||||
definition = &definition->data.definition[this->type];
|
||||
}
|
||||
return definition;
|
||||
}
|
||||
|
||||
void NPCInit(Entity* this) {
|
||||
u32 tmp;
|
||||
u32 tmp2;
|
||||
|
||||
if ((this->flags & 1) == 0) {
|
||||
const NPCDefinition* definition = GetNPCDefinition(this);
|
||||
if (definition->bitfield.type == 0) {
|
||||
// No sprite for this NPC
|
||||
this->flags |= 1;
|
||||
} else {
|
||||
tmp = definition->bitfield.gfx;
|
||||
switch (definition->bitfield.gfx_type) {
|
||||
case 2:
|
||||
this->spriteVramOffset = definition->bitfield.gfx;
|
||||
break;
|
||||
case 1:
|
||||
LoadSwapGFX(this, tmp, 0);
|
||||
break;
|
||||
default:
|
||||
LoadFixedGFX(this, tmp);
|
||||
break;
|
||||
}
|
||||
tmp = definition->data.sprite.paletteIndex;
|
||||
LoadObjPalette(this, tmp);
|
||||
this->spriteIndex = definition->data.sprite.spriteIndex;
|
||||
this->spriteSettings.shadow = definition->data.sprite.shadow;
|
||||
this->spritePriority.b1 = definition->data.sprite.spritePriority;
|
||||
this->spriteSettings.draw = definition->data.sprite.draw;
|
||||
this->hitbox = gNPCHitboxes[definition->bitfield.hitbox];
|
||||
this->flags |= ENT_DID_INIT;
|
||||
tmp2 = 0xff;
|
||||
this->animIndex = tmp2;
|
||||
this->frameIndex = tmp2;
|
||||
UpdateSpriteForCollisionLayer(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Entity* CreateNPC(u32 subtype, u32 form, u32 parameter) {
|
||||
Entity* entity;
|
||||
|
||||
entity = GetEmptyEntity();
|
||||
Entity* entity = GetEmptyEntity();
|
||||
if (entity != NULL) {
|
||||
entity->kind = 7;
|
||||
entity->id = subtype;
|
||||
|
||||
+70
-11
@@ -5,11 +5,72 @@
|
||||
#include "createObject.h"
|
||||
#include "object.h"
|
||||
#include "effects.h"
|
||||
#include "functions.h"
|
||||
#include "definitions.h"
|
||||
|
||||
extern const Hitbox* const gObjectHitboxes[];
|
||||
|
||||
u32 LoadObjectSprite(Entity* this, s32 type, const ObjectDefinition* definition);
|
||||
extern const ObjectDefinition gObjectDefinitions[];
|
||||
|
||||
void ObjectInit(Entity* this) {
|
||||
const ObjectDefinition* definition = &gObjectDefinitions[this->id];
|
||||
if (LoadObjectSprite(this, this->type, definition) == 2) {
|
||||
UpdateSpriteForCollisionLayer(this);
|
||||
}
|
||||
}
|
||||
|
||||
u32 LoadObjectSprite(Entity* this, s32 type, const ObjectDefinition* definition) {
|
||||
u16 tmp1;
|
||||
u8 tmp2;
|
||||
|
||||
if ((this->flags & 1) != 0) {
|
||||
// Sprite already loaded
|
||||
return 1;
|
||||
}
|
||||
if ((definition->bitfield.type) == 0) {
|
||||
// Object has no sprite
|
||||
this->flags |= ENT_DID_INIT | definition->bitfield.flags << 2;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if ((u8)(((*((u8*)definition) & 0xff & 3) - 2)) < 2) {
|
||||
// Multiple forms
|
||||
definition = &definition->data.definition[type];
|
||||
}
|
||||
tmp1 = definition->bitfield.gfx;
|
||||
switch (definition->bitfield.gfx_type) {
|
||||
case 2:
|
||||
this->spriteVramOffset = definition->bitfield.gfx;
|
||||
break;
|
||||
case 1:
|
||||
if (!LoadSwapGFX(this, tmp1, 0)) {
|
||||
return 0;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
if (!LoadFixedGFX(this, tmp1)) {
|
||||
return 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
tmp1 = definition->data.sprite.paletteIndex;
|
||||
LoadObjPalette(this, tmp1);
|
||||
tmp2 = 0xff;
|
||||
this->animIndex = tmp2;
|
||||
this->hurtType = 0x48;
|
||||
this->spriteIndex = definition->data.sprite.spriteIndex;
|
||||
this->spriteSettings.shadow = definition->data.sprite.shadow;
|
||||
this->spritePriority.b1 = definition->data.sprite.spritePriority;
|
||||
this->spriteSettings.draw = definition->data.sprite.draw;
|
||||
this->hitbox = (Hitbox*)gObjectHitboxes[definition->bitfield.hitbox];
|
||||
this->flags |= ENT_DID_INIT | definition->bitfield.flags << 2;
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
Entity* CreateObject(u32 subtype, u32 form, u32 parameter) {
|
||||
Entity* entity;
|
||||
|
||||
entity = GetEmptyEntity();
|
||||
Entity* entity = GetEmptyEntity();
|
||||
if (entity != NULL) {
|
||||
entity->kind = 6;
|
||||
entity->id = subtype;
|
||||
@@ -20,16 +81,14 @@ Entity* CreateObject(u32 subtype, u32 form, u32 parameter) {
|
||||
return entity;
|
||||
}
|
||||
|
||||
Entity* CreateObjectWithParent(Entity* parentEnt, u32 subtype, u32 form, u32 parameter) {
|
||||
Entity* ent;
|
||||
|
||||
ent = CreateObject(subtype, form, parameter);
|
||||
if (ent != NULL) {
|
||||
ent->parent = parentEnt;
|
||||
CopyPosition(parentEnt, ent);
|
||||
Entity* CreateObjectWithParent(Entity* parent, u32 subtype, u32 form, u32 parameter) {
|
||||
Entity* entity = CreateObject(subtype, form, parameter);
|
||||
if (entity != NULL) {
|
||||
entity->parent = parent;
|
||||
CopyPosition(parent, entity);
|
||||
}
|
||||
|
||||
return ent;
|
||||
return entity;
|
||||
}
|
||||
|
||||
Entity* CreateFx(Entity* parentEnt, u32 form, u32 parameter) {
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#include "functions.h"
|
||||
#include "effects.h"
|
||||
|
||||
extern void sub_0801D040(Entity*, u32);
|
||||
extern void LoadObjPalette(Entity*, u32);
|
||||
extern Entity* sub_08049DF4(u32);
|
||||
extern bool32 sub_08056338(void);
|
||||
extern void UnloadOBJPalette(Entity*);
|
||||
@@ -438,7 +438,7 @@ void sub_08029078(Entity* this) {
|
||||
if (LoadFixedGFX(this, 0x72) == 0) {
|
||||
DeleteEntity(this);
|
||||
} else {
|
||||
sub_0801D040(this, 0x6e);
|
||||
LoadObjPalette(this, 0x6e);
|
||||
this->spriteIndex = 0xd0;
|
||||
sub_08028FDC(this);
|
||||
sub_080290E0(this, 1);
|
||||
|
||||
+5
-5
@@ -22,9 +22,9 @@ bool32 EnemyInit(Entity* this) {
|
||||
if (LoadEnemySprite(this, definition) == FALSE) {
|
||||
return FALSE;
|
||||
}
|
||||
this->flags |= 1;
|
||||
if (definition->spriteFlags.unknown != 0) {
|
||||
this->flags |= 0x80;
|
||||
this->flags |= ENT_DID_INIT;
|
||||
if (definition->spriteFlags.collision != 0) {
|
||||
COLLISION_ON(this);
|
||||
}
|
||||
this->spriteIndex = definition->spriteIndex;
|
||||
if (this->spriteSettings.draw == 0) {
|
||||
@@ -72,7 +72,7 @@ bool32 LoadEnemySprite(Entity* entity, const EnemyDefinition* definition) {
|
||||
} else {
|
||||
if ((definition->gfx & 0x4000) != 0) {
|
||||
// Swap gfx (bitfield 0x4000)
|
||||
result = sub_080AE008(entity, definition->gfx >> 4, 0);
|
||||
result = LoadSwapGFX(entity, (u8)(definition->gfx >> 4), 0);
|
||||
} else {
|
||||
// Fixed gfx
|
||||
result = LoadFixedGFX(entity, definition->gfx);
|
||||
@@ -82,6 +82,6 @@ bool32 LoadEnemySprite(Entity* entity, const EnemyDefinition* definition) {
|
||||
}
|
||||
}
|
||||
}
|
||||
sub_0801D040(entity, definition->paletteIndex);
|
||||
LoadObjPalette(entity, definition->paletteIndex);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
+1
-1
@@ -223,7 +223,7 @@ static void HandleFileScreenEnter(void) {
|
||||
gScreen.bg3.control = BGCNT_PRIORITY(3) | BGCNT_CHARBASE(2) | BGCNT_SCREENBASE(30);
|
||||
gScreen.controls.layerFXControl = BLDCNT_TGT1_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_EFFECT_BLEND;
|
||||
gScreen.controls.alphaBlend = BLDALPHA_BLEND(15, 10);
|
||||
gUnk_02024490.unk0 = 1;
|
||||
gGFXSlots.unk0 = 1;
|
||||
gMain.funcIndex = 1;
|
||||
SoundReq(BGM_FILE_SELECT);
|
||||
DoFade(4, 8);
|
||||
|
||||
+1
-1
@@ -146,7 +146,7 @@ static void HandleTitlescreen(void) {
|
||||
EraseAllEntities();
|
||||
sub_0801CFA8(0);
|
||||
sub_080ADD30();
|
||||
gUnk_02024490.unk0 = 1;
|
||||
gGFXSlots.unk0 = 1;
|
||||
LoadGfxGroup(2);
|
||||
if (gSaveHeader->gameLanguage == 0) {
|
||||
paletteGroup = 3;
|
||||
|
||||
@@ -0,0 +1,331 @@
|
||||
#include "entity.h"
|
||||
#include "definitions.h"
|
||||
|
||||
// TODO deduplicate using sprite indices enum
|
||||
const NPCDefinition gNPCDefinition_3[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 48, 0, 0, 0, 31, 1, 0 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 48, 0, 0, 0, 31, 1, 0 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_6[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 2, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 57, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_7[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 58, 0, 0, 0, 59, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 58, 0, 0, 0, 59, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 58, 0, 0, 0, 59, 1, 1 } }, { { 1, 0, 0, 1, 2, 1, 0 }, { 58, 0, 0, 0, 59, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 58, 0, 0, 0, 59, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 58, 0, 0, 0, 59, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 58, 0, 0, 0, 59, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 58, 0, 0, 0, 59, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 58, 0, 0, 0, 59, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_1B[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 71, 0, 1, 0, 48, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 74, 0, 1, 0, 48, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 73, 0, 1, 0, 48, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 72, 0, 1, 0, 48, 1, 0 } },
|
||||
};
|
||||
#ifdef EU
|
||||
const NPCDefinition gNPCDefinition_27[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 80, 0, 1, 0, 327, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 283, 0, 1, 0, 32, 1, 0 } },
|
||||
};
|
||||
#else
|
||||
const NPCDefinition gNPCDefinition_27[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 80, 0, 1, 0, 328, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 283, 0, 1, 0, 32, 1, 0 } },
|
||||
};
|
||||
#endif
|
||||
const NPCDefinition gNPCDefinition_2B[] = {
|
||||
{ { 1, 0, 0, 1, 200, 0, 0 }, { 5, 0, 1, 0, 160, 0, 1 } },
|
||||
{ { 1, 0, 0, 1, 4, 1, 0 }, { 5, 0, 1, 0, 94, 0, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_30[] = {
|
||||
{ { 1, 0, 0, 1, 231, 0, 0 }, { 183, 0, 1, 0, 149, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 232, 0, 0 }, { 184, 0, 1, 0, 150, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 232, 0, 0 }, { 185, 0, 1, 0, 150, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 232, 0, 0 }, { 186, 0, 1, 0, 150, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 232, 0, 0 }, { 187, 0, 1, 0, 150, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 232, 0, 0 }, { 188, 0, 1, 0, 150, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 232, 0, 0 }, { 189, 0, 1, 0, 150, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 232, 0, 0 }, { 190, 0, 1, 0, 150, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_33[] = {
|
||||
{ { 1, 0, 0, 3, 2, 1, 0 }, { 192, 0, 2, 0, 91, 1, 1 } },
|
||||
{ { 1, 0, 0, 3, 2, 1, 0 }, { 192, 0, 2, 0, 92, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_21[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 79, 0, 1, 0, 88, 1, 0 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 78, 0, 1, 0, 88, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 38, 0, 0 }, { 0, 0, 0, 0, 173, 3, 0 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 71, 0, 1, 0, 48, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 79, 0, 1, 0, 88, 0, 0 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 78, 0, 1, 0, 88, 0, 0 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_5[] = {
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 54, 0, 1, 0, 42, 1, 1 } },
|
||||
{ { 1, 0, 0, 0, 0, 0, 0 }, { 54, 0, 1, 0, 42, 0, 0 } },
|
||||
{ { 1, 0, 0, 1, 0, 0, 0 }, { 0, 0, 1, 0, 42, 0, 0 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 54, 0, 1, 0, 42, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_35[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 82, 0, 1, 0, 67, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 64, 0, 1, 0, 69, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 4, 0, 1, 0, 68, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 83, 0, 1, 0, 69, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_2C[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 1, 0, 1, 0, 65, 1, 0 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 65, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 1, 0, 1, 0, 66, 1, 0 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 4, 0, 1, 0, 66, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 84, 0, 1, 0, 66, 1, 0 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 1, 0, 1, 0, 65, 1, 0 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_37[] = {
|
||||
{ { 1, 0, 0, 1, 261, 0, 0 }, { 233, 0, 1, 0, 151, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 261, 0, 0 }, { 233, 0, 1, 0, 151, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 160, 0, 0 }, { 0, 0, 1, 0, 151, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 161, 0, 0 }, { 1, 0, 1, 0, 151, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 455, 0, 0 }, { 1, 0, 1, 0, 151, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 0, 2, 0 }, { 4, 0, 1, 0, 151, 0, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_38[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 234, 0, 1, 0, 29, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 234, 0, 1, 0, 29, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 235, 0, 1, 0, 29, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 236, 0, 1, 0, 29, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 237, 0, 1, 0, 29, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 238, 0, 1, 0, 29, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_3D[] = {
|
||||
{ { 1, 0, 0, 5, 57, 0, 0 }, { 60, 0, 0, 0, 141, 0, 1 } },
|
||||
{ { 1, 0, 0, 5, 58, 0, 0 }, { 61, 0, 0, 0, 142, 0, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_3E[] = {
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 247, 0, 1, 0, 72, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 248, 0, 1, 0, 73, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_3F[] = {
|
||||
{ { 1, 0, 0, 5, 288, 0, 0 }, { 249, 0, 0, 0, 152, 0, 1 } },
|
||||
{ { 1, 0, 0, 5, 289, 0, 0 }, { 250, 0, 0, 0, 153, 0, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_41[] = {
|
||||
{ { 1, 0, 0, 1, 290, 0, 0 }, { 252, 0, 1, 0, 154, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 291, 0, 0 }, { 252, 0, 0, 0, 155, 0, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_48[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 259, 0, 1, 0, 79, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 0, 0, 1, 0, 80, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_49[] = {
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 260, 0, 1, 0, 81, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 260, 0, 1, 0, 82, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 260, 0, 1, 0, 83, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 260, 0, 1, 0, 84, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 260, 0, 1, 0, 85, 1, 1 } }, { { 1, 0, 0, 1, 1, 1, 0 }, { 260, 0, 1, 0, 86, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_4A[] = {
|
||||
{ { 1, 0, 0, 4, 297, 0, 0 }, { 265, 0, 1, 0, 158, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 297, 0, 0 }, { 273, 0, 1, 0, 158, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 297, 0, 0 }, { 1, 0, 1, 0, 158, 0, 1 } },
|
||||
{ { 1, 0, 0, 1, 297, 0, 0 }, { 272, 0, 1, 0, 158, 1, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_4C[] = {
|
||||
{ { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } },
|
||||
{ { 1, 0, 0, 0, 398, 0, 0 }, { 282, 0, 0, 0, 159, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 398, 0, 0 }, { 282, 0, 0, 0, 159, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 398, 0, 0 }, { 0, 0, 0, 0, 159, 0, 1 } },
|
||||
{ { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } },
|
||||
{ { 1, 0, 0, 0, 398, 0, 0 }, { 282, 0, 0, 0, 159, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 398, 0, 0 }, { 282, 0, 0, 0, 159, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 398, 0, 0 }, { 282, 0, 0, 0, 159, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 398, 0, 0 }, { 282, 0, 0, 0, 159, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 398, 0, 0 }, { 282, 0, 0, 0, 159, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 398, 0, 0 }, { 282, 0, 0, 0, 159, 0, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_4F[] = {
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 0, 0, 0, 0, 95, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 0, 0, 0, 0, 95, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 1, 0, 0, 0, 95, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 2, 0, 0, 0, 95, 0, 1 } },
|
||||
};
|
||||
#ifdef EU
|
||||
const NPCDefinition gNPCDefinition_3B[] = {
|
||||
{ { 1, 0, 0, 0, 2, 1, 0 }, { 312, 0, 0, 0, 112, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 312, 0, 0, 0, 114, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 312, 0, 0, 0, 115, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 2, 1, 0 }, { 312, 0, 0, 0, 123, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 460, 0, 0 }, { 319, 0, 0, 0, 303, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 2, 1, 0 }, { 319, 0, 0, 0, 124, 0, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_52[] = {
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 234, 0, 0, 0, 313, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 236, 0, 0, 0, 313, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 237, 0, 0, 0, 313, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 238, 0, 0, 0, 313, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 235, 0, 0, 0, 313, 0, 1 } },
|
||||
};
|
||||
#else
|
||||
const NPCDefinition gNPCDefinition_3B[] = {
|
||||
{ { 1, 0, 0, 0, 2, 1, 0 }, { 312, 0, 0, 0, 112, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 312, 0, 0, 0, 114, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 312, 0, 0, 0, 115, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 2, 1, 0 }, { 312, 0, 0, 0, 123, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 460, 0, 0 }, { 319, 0, 0, 0, 304, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 2, 1, 0 }, { 319, 0, 0, 0, 124, 0, 1 } },
|
||||
};
|
||||
const NPCDefinition gNPCDefinition_52[] = {
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 234, 0, 0, 0, 314, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 236, 0, 0, 0, 314, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 237, 0, 0, 0, 314, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 238, 0, 0, 0, 314, 0, 1 } },
|
||||
{ { 1, 0, 0, 0, 496, 0, 0 }, { 235, 0, 0, 0, 314, 0, 1 } },
|
||||
};
|
||||
#endif
|
||||
|
||||
#define MULTI_FORM(definition_ptr) \
|
||||
{ \
|
||||
{ 2, 0, 0, 0, 0, 0, 0 }, { \
|
||||
.definition = definition_ptr \
|
||||
} \
|
||||
}
|
||||
|
||||
const NPCDefinition gNPCDefinitions[] = {
|
||||
{ { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 49, 0, 0, 0, 24, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 50, 0, 0, 0, 25, 1, 0 } },
|
||||
MULTI_FORM(gNPCDefinition_3),
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 0, 0, 1, 0, 52, 1, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_5),
|
||||
MULTI_FORM(gNPCDefinition_6),
|
||||
MULTI_FORM(gNPCDefinition_7),
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 0, 0, 1, 0, 43, 1, 1 } },
|
||||
{ { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } },
|
||||
{ { 1, 0, 0, 5, 59, 0, 0 }, { 65, 0, 0, 0, 143, 0, 0 } },
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 0, 0, 1, 0, 47, 1, 1 } },
|
||||
{ { 1, 0, 0, 5, 60, 0, 0 }, { 66, 0, 0, 0, 144, 0, 0 } },
|
||||
{ { 1, 0, 0, 5, 61, 0, 0 }, { 57, 0, 0, 0, 146, 0, 1 } },
|
||||
{ { 1, 0, 0, 1, 64, 0, 0 }, { 56, 0, 0, 0, 147, 0, 1 } },
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 284, 0, 1, 0, 37, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 0, 0, 1, 0, 60, 1, 1 } },
|
||||
{ { 1, 0, 0, 3, 1, 1, 0 }, { 62, 0, 1, 0, 49, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 63, 0, 1, 0, 50, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 63, 0, 1, 0, 61, 0, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 51, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 55, 0, 1, 0, 43, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 70, 0, 1, 0, 47, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 67, 0, 1, 0, 39, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 68, 0, 1, 0, 40, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 69, 0, 1, 0, 41, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 56, 0, 0 }, { 59, 0, 1, 0, 140, 1, 0 } },
|
||||
MULTI_FORM(gNPCDefinition_1B),
|
||||
{ { 1, 0, 0, 5, 66, 0, 0 }, { 53, 0, 0, 0, 145, 0, 0 } },
|
||||
{ { 1, 0, 0, 1, 68, 0, 0 }, { 75, 0, 1, 0, 139, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 76, 0, 1, 0, 53, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 1, 0, 1, 0, 54, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 1, 0, 2, 0, 55, 1, 0 } },
|
||||
MULTI_FORM(gNPCDefinition_21),
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 77, 0, 1, 0, 56, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 48, 0, 0, 0, 31, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 55, 0, 0, 0, 44, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 55, 0, 0, 0, 45, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 55, 0, 0, 0, 46, 1, 0 } },
|
||||
MULTI_FORM(gNPCDefinition_27),
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 54, 0, 1, 0, 42, 1, 0 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 81, 0, 1, 0, 62, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 81, 0, 1, 0, 63, 1, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_2B),
|
||||
MULTI_FORM(gNPCDefinition_2C),
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 180, 0, 1, 0, 27, 1, 1 } },
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 54, 0, 1, 0, 42, 1, 1 } },
|
||||
{ { 1, 0, 0, 3, 2, 1, 0 }, { 181, 0, 1, 0, 26, 1, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_30),
|
||||
{ { 1, 0, 0, 3, 1, 1, 0 }, { 191, 0, 0, 0, 90, 0, 1 } },
|
||||
{ { 1, 0, 0, 3, 1, 1, 0 }, { 192, 0, 2, 0, 93, 1, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_33),
|
||||
{ { 1, 0, 0, 3, 1, 1, 0 }, { 193, 0, 1, 0, 64, 1, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_35),
|
||||
{ { 1, 0, 0, 3, 2, 1, 0 }, { 0, 0, 1, 0, 70, 0, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_37),
|
||||
MULTI_FORM(gNPCDefinition_38),
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 281, 0, 1, 0, 30, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 246, 0, 1, 0, 71, 1, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_3B),
|
||||
{ { 1, 0, 0, 1, 72, 0, 0 }, { 111, 0, 1, 0, 207, 1, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_3D),
|
||||
MULTI_FORM(gNPCDefinition_3E),
|
||||
MULTI_FORM(gNPCDefinition_3F),
|
||||
{ { 1, 0, 0, 3, 1, 1, 0 }, { 251, 0, 1, 0, 74, 1, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_41),
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 253, 0, 1, 0, 75, 0, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 254, 0, 1, 0, 76, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 255, 0, 1, 0, 77, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 292, 0, 0 }, { 256, 0, 1, 0, 156, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 257, 0, 1, 0, 78, 1, 1 } },
|
||||
{ { 1, 0, 0, 5, 293, 0, 0 }, { 258, 0, 0, 0, 157, 0, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_48),
|
||||
MULTI_FORM(gNPCDefinition_49),
|
||||
MULTI_FORM(gNPCDefinition_4A),
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 62, 0, 1, 0, 87, 1, 1 } },
|
||||
MULTI_FORM(gNPCDefinition_4C),
|
||||
{ { 1, 0, 0, 1, 1, 1, 0 }, { 22, 0, 1, 0, 11, 1, 1 } },
|
||||
{ { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } },
|
||||
MULTI_FORM(gNPCDefinition_4F),
|
||||
#ifdef EU
|
||||
{ { 1, 0, 0, 0, 464, 0, 0 }, { 0, 0, 1, 0, 306, 0, 1 } },
|
||||
#else
|
||||
{ { 1, 0, 0, 0, 464, 0, 0 }, { 0, 0, 1, 0, 307, 0, 1 } },
|
||||
#endif
|
||||
{ { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } },
|
||||
MULTI_FORM(gNPCDefinition_52),
|
||||
{ { 1, 0, 0, 1, 2, 1, 0 }, { 355, 0, 1, 0, 89, 1, 1 } },
|
||||
{ { 1, 0, 0, 1, 67, 0, 0 }, { 0, 0, 1, 0, 148, 1, 1 } },
|
||||
#ifdef EU
|
||||
{ { 1, 0, 0, 1, 463, 0, 0 }, { 0, 0, 0, 0, 494, 1, 1 } },
|
||||
#else
|
||||
{ { 1, 0, 0, 1, 463, 0, 0 }, { 0, 0, 0, 0, 495, 1, 1 } },
|
||||
#endif
|
||||
{ { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } },
|
||||
#ifdef EU
|
||||
{ { 1, 0, 0, 3, 348, 0, 0 }, { 88, 0, 0, 0, 393, 0, 1 } },
|
||||
#else
|
||||
{ { 1, 0, 0, 3, 348, 0, 0 }, { 88, 0, 0, 0, 394, 0, 1 } },
|
||||
#endif
|
||||
{ { 1, 0, 0, 0, 1, 1, 0 }, { 0, 0, 1, 0, 97, 0, 1 } },
|
||||
{ { 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, 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, 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, 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, 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, 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, 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 }, { 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, 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, 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, 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, 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, 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, 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 } },
|
||||
{ { 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 } },
|
||||
};
|
||||
@@ -60,7 +60,7 @@ void sub_0808E7D8(Entity* this) {
|
||||
}
|
||||
|
||||
void sub_0808E7F0(Entity* this) {
|
||||
sub_080AE008(this, 1, 2);
|
||||
LoadSwapGFX(this, 1, 2);
|
||||
this->palette.b.b0 = 0xF;
|
||||
this->spriteSettings.draw = 0;
|
||||
this->type2 = 0xFF;
|
||||
@@ -145,7 +145,7 @@ void sub_0808E988(Entity* this) {
|
||||
this->spriteIndex = 0x142;
|
||||
#endif
|
||||
this->type2 = 0xFF;
|
||||
sub_080AE008(this, 1, 3);
|
||||
LoadSwapGFX(this, 1, 3);
|
||||
}
|
||||
|
||||
if (sub_0808E950()) {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -103,7 +103,7 @@ void PlayerInit(Entity* this) {
|
||||
gPlayerState.field_0x8 = 0x100;
|
||||
#endif
|
||||
sub_0806FDA0(this);
|
||||
sub_080AE008(this, 1, 2);
|
||||
LoadSwapGFX(this, 1, 2);
|
||||
InitAnimationForceUpdate(this, 2);
|
||||
if (this->collisionLayer == 0) {
|
||||
sub_08016A30(this);
|
||||
|
||||
+54
-54
@@ -22,43 +22,45 @@ extern void PlayerItem14();
|
||||
extern void PlayerItem15();
|
||||
extern void PlayerItemNulled2();
|
||||
|
||||
void (*const gPlayerItemFunctions[])() = { DeleteEntity,
|
||||
PlayerItemSword,
|
||||
PlayerItemBomb,
|
||||
PlayerItem3,
|
||||
PlayerItemBow,
|
||||
PlayerItemShield,
|
||||
PlayerItemLantern,
|
||||
PlayerItemNulled,
|
||||
PlayerItemGustJar,
|
||||
PlayerItemPacciCane,
|
||||
DeleteEntity,
|
||||
DeleteEntity,
|
||||
PlayerItemC,
|
||||
PlayerItemCellOverwriteSet,
|
||||
PlayerItemSwordSpin,
|
||||
PlayerItemSwordBeam,
|
||||
PlayerItem10,
|
||||
PlayerItem11,
|
||||
PlayerItem12,
|
||||
PlayerItem13,
|
||||
PlayerItem14,
|
||||
PlayerItem15,
|
||||
PlayerItemSwordBeam,
|
||||
PlayerItemNulled2,
|
||||
PlayerItemCellOverwriteSet };
|
||||
|
||||
typedef struct {
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 unk4;
|
||||
u8 unk5;
|
||||
u16 unk6;
|
||||
} ItemFrame;
|
||||
extern ItemFrame gUnk_08126DA8[];
|
||||
extern ItemFrame* gUnk_08126ED8[3];
|
||||
u8 bitfield;
|
||||
u8 index;
|
||||
u8 firstItemIndex;
|
||||
u8 hurtType;
|
||||
u8 hitType;
|
||||
u8 spriteIndex;
|
||||
u16 gfx;
|
||||
} PlayerItemDefinition;
|
||||
extern const PlayerItemDefinition gPlayerItemDefinitions[];
|
||||
extern const PlayerItemDefinition* gAdditionalPlayerItemDefinitions[3];
|
||||
|
||||
void (*const gPlayerItemFunctions[])() = {
|
||||
DeleteEntity,
|
||||
PlayerItemSword,
|
||||
PlayerItemBomb,
|
||||
PlayerItem3,
|
||||
PlayerItemBow,
|
||||
PlayerItemShield,
|
||||
PlayerItemLantern,
|
||||
PlayerItemNulled,
|
||||
PlayerItemGustJar,
|
||||
PlayerItemPacciCane,
|
||||
DeleteEntity,
|
||||
DeleteEntity,
|
||||
PlayerItemC,
|
||||
PlayerItemCellOverwriteSet,
|
||||
PlayerItemSwordSpin,
|
||||
PlayerItemSwordBeam,
|
||||
PlayerItem10,
|
||||
PlayerItem11,
|
||||
PlayerItem12,
|
||||
PlayerItem13,
|
||||
PlayerItem14,
|
||||
PlayerItem15,
|
||||
PlayerItemSwordBeam,
|
||||
PlayerItemNulled2,
|
||||
PlayerItemCellOverwriteSet,
|
||||
};
|
||||
|
||||
void ItemInit(Entity*);
|
||||
|
||||
@@ -81,27 +83,25 @@ void ItemUpdate(Entity* this) {
|
||||
|
||||
// tiny regalloc
|
||||
NONMATCH("asm/non_matching/arm_proxy/ItemInit.inc", void ItemInit(Entity* this)) {
|
||||
ItemFrame* entry;
|
||||
|
||||
entry = &gUnk_08126DA8[this->id];
|
||||
if (entry->unk0 == 0xff) {
|
||||
u32 temp = entry->unk2;
|
||||
ItemFrame* temp2 = gUnk_08126ED8[entry->unk1];
|
||||
entry = &temp2[this->field_0x68.HALF.LO - temp];
|
||||
const PlayerItemDefinition* definition = &gPlayerItemDefinitions[this->id];
|
||||
if (definition->bitfield == 0xff) {
|
||||
u32 tmp = definition->firstItemIndex;
|
||||
definition = gAdditionalPlayerItemDefinitions[definition->index];
|
||||
definition = &definition[this->field_0x68.HALF.LO - tmp];
|
||||
}
|
||||
|
||||
this->palette.raw = ((entry->unk0 & 0xf) << 4) | entry->unk0;
|
||||
this->damage = entry->unk1;
|
||||
this->hurtType = entry->unk3;
|
||||
this->hitType = entry->unk4;
|
||||
this->spriteIndex = entry->unk5;
|
||||
if (entry->unk6 == 0)
|
||||
this->palette.raw = (definition->bitfield & 0xf) | (definition->bitfield << 4);
|
||||
this->damage = definition->index;
|
||||
this->hurtType = definition->hurtType;
|
||||
this->hitType = definition->hitType;
|
||||
this->spriteIndex = definition->spriteIndex;
|
||||
if (definition->gfx == 0) {
|
||||
this->spriteVramOffset = gPlayerEntity.spriteVramOffset;
|
||||
else
|
||||
this->spriteVramOffset = entry->unk6 & 0x3ff;
|
||||
|
||||
if (this->animationState == 0)
|
||||
} else {
|
||||
this->spriteVramOffset = definition->gfx & 0x3ff;
|
||||
}
|
||||
if (this->animationState == 0) {
|
||||
this->animationState = gPlayerEntity.animationState & 6;
|
||||
}
|
||||
|
||||
this->collisionLayer = gPlayerEntity.collisionLayer;
|
||||
this->spriteRendering.b3 = gPlayerEntity.spriteRendering.b3;
|
||||
|
||||
@@ -22,7 +22,7 @@ void sub_0801B8B0(Entity* this) {
|
||||
this->flags |= 0x20;
|
||||
this->action = 0x01;
|
||||
this->flags2 = 8;
|
||||
sub_080AE008(this, 1, 3);
|
||||
LoadSwapGFX(this, 1, 3);
|
||||
sub_08079BD8(this);
|
||||
sub_0801766C(this);
|
||||
sub_0801B8FC(this);
|
||||
|
||||
@@ -26,7 +26,7 @@ void sub_080ADA6C(Entity* this) {
|
||||
this->hitbox->unk2[3] = 6;
|
||||
this->hitbox->unk2[0] = 6;
|
||||
sub_080ADC84(this);
|
||||
sub_080AE008(this, 1, 3);
|
||||
LoadSwapGFX(this, 1, 3);
|
||||
InitAnimationForceUpdate(this, this->animationState >> 1);
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ NONMATCH("asm/non_matching/playerItemLantern/sub_08054A60.inc", void sub_08054A6
|
||||
DeleteThisEntity();
|
||||
}
|
||||
sub_0801766C(this);
|
||||
sub_080AE008(this, 1, 3);
|
||||
LoadSwapGFX(this, 1, 3);
|
||||
sub_08054AC8(this);
|
||||
}
|
||||
END_NONMATCH
|
||||
|
||||
@@ -13,7 +13,7 @@ void PlayerItemPacciCane(Entity* this) {
|
||||
void sub_080704D4(Entity* this) {
|
||||
this->action = 1;
|
||||
this->frameIndex = -1;
|
||||
sub_080AE008(this, 1, 3);
|
||||
LoadSwapGFX(this, 1, 3);
|
||||
SoundReq(SFX_10E);
|
||||
sub_080704FC(this);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
#include "entity.h"
|
||||
#include "definitions.h"
|
||||
|
||||
#define MULTI_FORM(index, unk) \
|
||||
{ 0xff, index, unk, 0, 0, 0 }
|
||||
|
||||
const SpriteDataC gPlayerItemDefinitions[] = {
|
||||
{ 0, 0, 16384, 1, SPRITE_0, 0 }, // DeleteEntity
|
||||
MULTI_FORM(0, 1), // PlayerItemSword
|
||||
{ 1, 12, 5644, 169, SPRITE_166, 192 }, // PlayerItemBomb
|
||||
{ 0, 3, 5130, 118, SPRITE_22, 0 }, // PlayerItem3
|
||||
{ 1, 3, 5391, 171, SPRITE_21, 203 }, // PlayerItemBow
|
||||
MULTI_FORM(2, 13), // PlayerItemShield
|
||||
{ 0, 0, 1792, 1, SPRITE_18, 0 }, // PlayerItemLantern
|
||||
MULTI_FORM(0, 1), // PlayerItemNulled
|
||||
{ 1, 0, 16384, 1, SPRITE_ITEMGUSTJAR, 0 }, // PlayerItemGustJar
|
||||
{ 4, 0, 16384, 1, SPRITE_20, 0 }, // PlayerItemPacciCane
|
||||
{ 0, 0, 16384, 1, SPRITE_0, 0 }, // DeleteEntity
|
||||
{ 0, 0, 16384, 1, SPRITE_0, 0 }, // DeleteEntity
|
||||
MULTI_FORM(1, 1), // PlayerItemC
|
||||
MULTI_FORM(0, 1), // PlayerItemCellOverwriteSet
|
||||
{ 0, 0, 7936, 1, SPRITE_19, 0 }, // PlayerItemSwordSpin
|
||||
{ 0, 4, 8204, 152, SPRITE_166, 0x8000 }, // PlayerItemSwordBeam
|
||||
{ 0, 0, 4864, 109, SPRITE_0, 0 }, // PlayerItem10
|
||||
{ 3, 0, 7183, 150, SPRITE_166, 0 }, // PlayerItem11
|
||||
{ 4, 0, 7424, 1, SPRITE_166, 57 }, // PlayerItem12
|
||||
{ 0, 3, 5900, 1, SPRITE_POT, 0 }, // PlayerItem13
|
||||
{ 1, 4, 8460, 152, SPRITE_OBJECT43, 0x8000 }, // PlayerItem14
|
||||
{ 1, 4, 8204, 152, SPRITE_166, 0x8000 }, // PlayerItem15
|
||||
{ 1, 4, 1036, 151, SPRITE_14, 0 }, // PlayerItemSwordBeam
|
||||
{ 1, 4, 1036, 151, SPRITE_14, 0 } // PlayerItemNulled2
|
||||
};
|
||||
|
||||
const SpriteDataC gPlayerItemDefinition_0[] = {
|
||||
{ 1, 4, 1036, 151, SPRITE_14, 0 }, { 2, 4, 1292, 151, SPRITE_15, 0 }, { 0, 4, 1292, 151, SPRITE_15, 0 },
|
||||
{ 1, 4, 1292, 151, SPRITE_15, 0 }, { 4, 4, 1292, 151, SPRITE_15, 0 }, { 4, 4, 1548, 151, SPRITE_16, 0 },
|
||||
};
|
||||
const SpriteDataC gPlayerItemDefinition_1[] = {
|
||||
{ 1, 4, 4108, 151, SPRITE_14, 0 }, { 2, 4, 4364, 151, SPRITE_15, 0 }, { 0, 4, 4364, 151, SPRITE_15, 0 },
|
||||
{ 1, 4, 4364, 151, SPRITE_15, 0 }, { 4, 4, 4364, 151, SPRITE_15, 0 }, { 4, 4, 4620, 151, SPRITE_16, 0 },
|
||||
};
|
||||
const SpriteDataC gPlayerItemDefinition_2[] = {
|
||||
{ 1, 0, 524, 153, SPRITE_17, 0 },
|
||||
{ 1, 0, 780, 153, SPRITE_17, 0 },
|
||||
};
|
||||
|
||||
const SpriteDataC* const gAdditionalPlayerItemDefinitions[] = {
|
||||
gPlayerItemDefinition_0,
|
||||
gPlayerItemDefinition_1,
|
||||
gPlayerItemDefinition_2,
|
||||
};
|
||||
@@ -21,9 +21,9 @@ bool32 ProjectileInit(Entity* this) {
|
||||
if (LoadProjectileSprite(this, definition) == FALSE) {
|
||||
return FALSE;
|
||||
}
|
||||
this->flags |= 1;
|
||||
if (definition->spriteFlags.unknown != 0) {
|
||||
this->flags |= 0x80;
|
||||
this->flags |= ENT_DID_INIT;
|
||||
if (definition->spriteFlags.collision != 0) {
|
||||
COLLISION_ON(this);
|
||||
}
|
||||
this->spriteIndex = definition->spriteIndex;
|
||||
if (this->spriteSettings.draw == 0) {
|
||||
@@ -52,7 +52,7 @@ bool32 LoadProjectileSprite(Entity* this, const ProjectileDefinition* definition
|
||||
this->spriteVramOffset = definition->gfx & 0x3ff;
|
||||
} else {
|
||||
if ((definition->gfx & 0x4000) != 0) {
|
||||
result = sub_080AE008(this, definition->gfx >> 4, 0);
|
||||
result = LoadSwapGFX(this, (u8)(definition->gfx >> 4), 0);
|
||||
} else {
|
||||
result = LoadFixedGFX(this, definition->gfx);
|
||||
}
|
||||
@@ -61,7 +61,7 @@ bool32 LoadProjectileSprite(Entity* this, const ProjectileDefinition* definition
|
||||
}
|
||||
}
|
||||
}
|
||||
sub_0801D040(this, definition->paletteIndex);
|
||||
LoadObjPalette(this, definition->paletteIndex);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,185 +0,0 @@
|
||||
#include "entity.h"
|
||||
#include "definitions.h"
|
||||
|
||||
// clang-format off
|
||||
// TODO deduplicate using sprite indices enum
|
||||
const SpriteDataB gNPCDefinition_3[] = { { 1, 1, 1025, { 48, 1055 } }, { 1, 0, 1025, { 48, 1055 } }, };
|
||||
const SpriteDataB gNPCDefinition_6[] = { { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1026, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, { 1, 1, 1025, { 4158, 9273 } }, };
|
||||
const SpriteDataB gNPCDefinition_7[] = { { 1, 1, 1025, { 58, 9275 } }, { 1, 1, 1025, { 58, 9275 } }, { 1, 1, 1025, { 58, 9275 } }, { 1, 1, 1026, { 58, 9275 } }, { 1, 1, 1025, { 58, 9275 } }, { 1, 1, 1025, { 58, 9275 } }, { 1, 1, 1026, { 58, 9275 } }, { 1, 1, 1025, { 58, 9275 } }, { 1, 1, 1025, { 58, 9275 } }, };
|
||||
const SpriteDataB gNPCDefinition_1B[] = { { 1, 1, 1025, { 4167, 1072 } }, { 1, 1, 1025, { 4170, 1072 } }, { 1, 1, 1025, { 4169, 1072 } }, { 1, 1, 1025, { 4168, 1072 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gNPCDefinition_27[] = { { 1, 1, 1025, { 4176, 1351 } }, { 1, 1, 1026, { 4379, 1056 } }, };
|
||||
#else
|
||||
const SpriteDataB gNPCDefinition_27[] = { { 1, 1, 1025, { 4176, 1352 } }, { 1, 1, 1026, { 4379, 1056 } }, };
|
||||
#endif
|
||||
const SpriteDataB gNPCDefinition_2B[] = { { 1, 1, 200, { 4101, 8352 } }, { 1, 1, 1028, { 4101, 8286 } }, };
|
||||
const SpriteDataB gNPCDefinition_30[] = { { 1, 1, 231, { 4279, 9365 } }, { 1, 1, 232, { 4280, 9366 } }, { 1, 1, 232, { 4281, 9366 } }, { 1, 1, 232, { 4282, 9366 } }, { 1, 1, 232, { 4283, 9366 } }, { 1, 1, 232, { 4284, 9366 } }, { 1, 1, 232, { 4285, 9366 } }, { 1, 1, 232, { 4286, 9366 } }, };
|
||||
const SpriteDataB gNPCDefinition_33[] = { { 1, 3, 1026, { 8384, 9307 } }, { 1, 3, 1026, { 8384, 9308 } }, };
|
||||
const SpriteDataB gNPCDefinition_21[] = { { 1, 1, 1025, { 4175, 1112 } }, { 1, 1, 1025, { 4174, 1112 } }, { 1, 1, 38, { 0, 3245 } }, { 1, 1, 1025, { 4167, 1072 } }, { 1, 1, 1025, { 4175, 88 } }, { 1, 1, 1025, { 4174, 88 } }, };
|
||||
const SpriteDataB gNPCDefinition_5[] = { { 1, 0, 1025, { 4150, 9258 } }, { 1, 0, 0, { 4150, 42 } }, { 1, 1, 0, { 4096, 42 } }, { 1, 0, 1025, { 4150, 9258 } }, };
|
||||
const SpriteDataB gNPCDefinition_35[] = { { 1, 1, 1025, { 4178, 9283 } }, { 1, 1, 1025, { 4160, 9285 } }, { 1, 1, 1025, { 4100, 9284 } }, { 1, 1, 1025, { 4179, 9285 } }, };
|
||||
const SpriteDataB gNPCDefinition_2C[] = { { 1, 1, 1025, { 4097, 1089 } }, { 1, 1, 1025, { 4158, 1089 } }, { 1, 1, 1025, { 4097, 1090 } }, { 1, 1, 1025, { 4100, 1090 } }, { 1, 1, 1025, { 4180, 1090 } }, { 1, 1, 1025, { 4097, 1089 } }, };
|
||||
const SpriteDataB gNPCDefinition_37[] = { { 1, 1, 261, { 4329, 8343 } }, { 1, 0, 261, { 4329, 8343 } }, { 1, 0, 160, { 4096, 8343 } }, { 1, 0, 161, { 4097, 8343 } }, { 1, 0, 455, { 4097, 8343 } }, { 1, 0, 2048, { 4100, 8343 } }, };
|
||||
const SpriteDataB gNPCDefinition_38[] = { { 1, 1, 1025, { 4330, 9245 } }, { 1, 1, 1025, { 4330, 9245 } }, { 1, 1, 1025, { 4331, 9245 } }, { 1, 1, 1025, { 4332, 9245 } }, { 1, 1, 1025, { 4333, 9245 } }, { 1, 1, 1025, { 4334, 9245 } }, };
|
||||
const SpriteDataB gNPCDefinition_3D[] = { { 1, 5, 57, { 60, 8333 } }, { 1, 5, 58, { 61, 8334 } }, };
|
||||
const SpriteDataB gNPCDefinition_3E[] = { { 1, 1, 1026, { 4343, 9288 } }, { 1, 1, 1026, { 4344, 9289 } }, };
|
||||
const SpriteDataB gNPCDefinition_3F[] = { { 1, 5, 288, { 249, 8344 } }, { 1, 5, 289, { 250, 8345 } }, };
|
||||
const SpriteDataB gNPCDefinition_41[] = { { 1, 1, 290, { 4348, 8346 } }, { 1, 0, 291, { 252, 8347 } }, };
|
||||
const SpriteDataB gNPCDefinition_48[] = { { 1, 1, 1025, { 4355, 9295 } }, { 1, 1, 1026, { 4096, 9296 } }, };
|
||||
const SpriteDataB gNPCDefinition_49[] = { { 1, 1, 1025, { 4356, 9297 } }, { 1, 1, 1025, { 4356, 9298 } }, { 1, 1, 1025, { 4356, 9299 } }, { 1, 1, 1025, { 4356, 9300 } }, { 1, 1, 1025, { 4356, 9301 } }, { 1, 1, 1025, { 4356, 9302 } }, };
|
||||
const SpriteDataB gNPCDefinition_4A[] = { { 1, 4, 297, { 4361, 8350 } }, { 1, 0, 297, { 4369, 8350 } }, { 1, 0, 297, { 4097, 8350 } }, { 1, 1, 297, { 4368, 9374 } }, };
|
||||
const SpriteDataB gNPCDefinition_4C[] = { { 0, 0, 0, { 0, 0 } }, { 1, 0, 398, { 282, 8351 } }, { 1, 0, 398, { 282, 8351 } }, { 1, 0, 398, { 0, 8351 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 398, { 282, 8351 } }, { 1, 0, 398, { 282, 8351 } }, { 1, 0, 398, { 282, 8351 } }, { 1, 0, 398, { 282, 8351 } }, { 1, 0, 398, { 282, 8351 } }, { 1, 0, 398, { 282, 8351 } }, };
|
||||
const SpriteDataB gNPCDefinition_4F[] = { { 1, 0, 1025, { 0, 8287 } }, { 1, 0, 1025, { 0, 8287 } }, { 1, 0, 1025, { 1, 8287 } }, { 1, 0, 1025, { 2, 8287 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gNPCDefinition_3B[] = { { 1, 0, 1026, { 312, 8304 } }, { 1, 0, 1025, { 312, 8306 } }, { 1, 0, 1025, { 312, 8307 } }, { 1, 0, 1026, { 312, 8315 } }, { 1, 0, 460, { 319, 8495 } }, { 1, 0, 1026, { 319, 8316 } }, };
|
||||
const SpriteDataB gNPCDefinition_52[] = { { 1, 0, 496, { 234, 8505 } }, { 1, 0, 496, { 236, 8505 } }, { 1, 0, 496, { 237, 8505 } }, { 1, 0, 496, { 238, 8505 } }, { 1, 0, 496, { 235, 8505 } }, };
|
||||
#else
|
||||
const SpriteDataB gNPCDefinition_3B[] = { { 1, 0, 1026, { 312, 8304 } }, { 1, 0, 1025, { 312, 8306 } }, { 1, 0, 1025, { 312, 8307 } }, { 1, 0, 1026, { 312, 8315 } }, { 1, 0, 460, { 319, 8496 } }, { 1, 0, 1026, { 319, 8316 } }, };
|
||||
const SpriteDataB gNPCDefinition_52[] = { { 1, 0, 496, { 234, 8506 } }, { 1, 0, 496, { 236, 8506 } }, { 1, 0, 496, { 237, 8506 } }, { 1, 0, 496, { 238, 8506 } }, { 1, 0, 496, { 235, 8506 } }, };
|
||||
#endif
|
||||
|
||||
#define MULTI_FORM(spriteData_ptr) { 2, 0, 0, {.spriteData=spriteData_ptr} }
|
||||
|
||||
const SpriteDataB gNPCDefinitions[] = {
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
{ 1, 1, 1025, { 49, 1048 } },
|
||||
{ 1, 1, 1025, { 50, 1049 } },
|
||||
MULTI_FORM(gNPCDefinition_3),
|
||||
{ 1, 1, 1025, { 4096, 9268 } },
|
||||
MULTI_FORM(gNPCDefinition_5),
|
||||
MULTI_FORM(gNPCDefinition_6),
|
||||
MULTI_FORM(gNPCDefinition_7),
|
||||
{ 1, 1, 1026, { 4096, 9259 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
{ 1, 5, 59, { 65, 143 } },
|
||||
{ 1, 1, 1026, { 4096, 9263 } },
|
||||
{ 1, 5, 60, { 66, 144 } },
|
||||
{ 1, 5, 61, { 57, 8338 } },
|
||||
{ 1, 1, 64, { 56, 8339 } },
|
||||
{ 1, 1, 1026, { 4380, 9253 } },
|
||||
{ 1, 1, 1025, { 4096, 9276 } },
|
||||
{ 1, 3, 1025, { 4158, 9265 } },
|
||||
{ 1, 1, 1025, { 4159, 9266 } },
|
||||
{ 1, 1, 1025, { 4159, 8253 } },
|
||||
{ 1, 1, 1025, { 4158, 9267 } },
|
||||
{ 1, 1, 1026, { 4151, 9259 } },
|
||||
{ 1, 1, 1025, { 4166, 9263 } },
|
||||
{ 1, 1, 1025, { 4163, 9255 } },
|
||||
{ 1, 1, 1025, { 4164, 9256 } },
|
||||
{ 1, 1, 1025, { 4165, 9257 } },
|
||||
{ 1, 1, 56, { 4155, 1164 } },
|
||||
MULTI_FORM(gNPCDefinition_1B),
|
||||
{ 1, 5, 66, { 53, 145 } },
|
||||
{ 1, 1, 68, { 4171, 9355 } },
|
||||
{ 1, 1, 1025, { 4172, 9269 } },
|
||||
{ 1, 1, 1025, { 4097, 9270 } },
|
||||
{ 1, 1, 1025, { 8193, 1079 } },
|
||||
MULTI_FORM(gNPCDefinition_21),
|
||||
{ 1, 1, 1026, { 4173, 9272 } },
|
||||
{ 1, 1, 1025, { 48, 1055 } },
|
||||
{ 1, 1, 1025, { 55, 1068 } },
|
||||
{ 1, 1, 1025, { 55, 1069 } },
|
||||
{ 1, 1, 1025, { 55, 1070 } },
|
||||
MULTI_FORM(gNPCDefinition_27),
|
||||
{ 1, 1, 1025, { 4150, 1066 } },
|
||||
{ 1, 1, 1025, { 4177, 9278 } },
|
||||
{ 1, 1, 1026, { 4177, 9279 } },
|
||||
MULTI_FORM(gNPCDefinition_2B),
|
||||
MULTI_FORM(gNPCDefinition_2C),
|
||||
{ 1, 1, 1026, { 4276, 9243 } },
|
||||
{ 1, 0, 1025, { 4150, 9258 } },
|
||||
{ 1, 3, 1026, { 4277, 9242 } },
|
||||
MULTI_FORM(gNPCDefinition_30),
|
||||
{ 1, 3, 1025, { 191, 8282 } },
|
||||
{ 1, 3, 1025, { 8384, 9309 } },
|
||||
MULTI_FORM(gNPCDefinition_33),
|
||||
{ 1, 3, 1025, { 4289, 9280 } },
|
||||
MULTI_FORM(gNPCDefinition_35),
|
||||
{ 1, 3, 1026, { 4096, 8262 } },
|
||||
MULTI_FORM(gNPCDefinition_37),
|
||||
MULTI_FORM(gNPCDefinition_38),
|
||||
{ 1, 1, 1026, { 4377, 9246 } },
|
||||
{ 1, 1, 1025, { 4342, 9287 } },
|
||||
MULTI_FORM(gNPCDefinition_3B),
|
||||
{ 1, 1, 72, { 4207, 9423 } },
|
||||
MULTI_FORM(gNPCDefinition_3D),
|
||||
MULTI_FORM(gNPCDefinition_3E),
|
||||
MULTI_FORM(gNPCDefinition_3F),
|
||||
{ 1, 3, 1025, { 4347, 9290 } },
|
||||
MULTI_FORM(gNPCDefinition_41),
|
||||
{ 1, 0, 1025, { 4349, 8267 } },
|
||||
{ 1, 1, 1025, { 4350, 9292 } },
|
||||
{ 1, 1, 1025, { 4351, 9293 } },
|
||||
{ 1, 1, 292, { 4352, 9372 } },
|
||||
{ 1, 1, 1025, { 4353, 9294 } },
|
||||
{ 1, 5, 293, { 258, 8349 } },
|
||||
MULTI_FORM(gNPCDefinition_48),
|
||||
MULTI_FORM(gNPCDefinition_49),
|
||||
MULTI_FORM(gNPCDefinition_4A),
|
||||
{ 1, 1, 1025, { 4158, 9303 } },
|
||||
MULTI_FORM(gNPCDefinition_4C),
|
||||
{ 1, 1, 1025, { 4118, 9227 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gNPCDefinition_4F),
|
||||
#ifdef EU
|
||||
{ 1, 0, 464, { 4096, 8498 } },
|
||||
#else
|
||||
{ 1, 0, 464, { 4096, 8499 } },
|
||||
#endif
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gNPCDefinition_52),
|
||||
{ 1, 1, 1026, { 4451, 9305 } },
|
||||
{ 1, 1, 67, { 4096, 9364 } },
|
||||
#ifdef EU
|
||||
{ 1, 1, 463, { 0, 9710 } },
|
||||
#else
|
||||
{ 1, 1, 463, { 0, 9711 } },
|
||||
#endif
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
#ifdef EU
|
||||
{ 1, 3, 348, { 88, 8585 } },
|
||||
#else
|
||||
{ 1, 3, 348, { 88, 8586 } },
|
||||
#endif
|
||||
{ 1, 0, 1025, { 4096, 8289 } },
|
||||
{ 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, 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, 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, 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, { 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 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
};
|
||||
// clang-format on
|
||||
@@ -1,514 +0,0 @@
|
||||
#include "entity.h"
|
||||
#include "hitbox.h"
|
||||
#include "definitions.h"
|
||||
|
||||
// TODO
|
||||
const Hitbox* const gUnk_08125104[] = { NULL, &gHitbox_0, &gHitbox_30, &gHitbox_2, &gHitbox_3 };
|
||||
|
||||
// clang-format off
|
||||
const SpriteDataB gObjectDefinition_F[] = { { 1, 0, 2107, { 0, SPRITE_SPECIALFX } }, { 1, 0, 2144, { 0, SPRITE_SPECIALFX } }, { 1, 0, 2202, { 3, SPRITE_SPECIALFX } }, { 1, 0, 2276, { 2, SPRITE_SPECIALFX } }, { 1, 0, 2129, { 5, SPRITE_SPECIALFX } }, { 1, 0, 2284, { 1, SPRITE_SPECIALFX } }, { 1, 0, 2144, { 0, SPRITE_SPECIALFX } }, { 1, 0, 2108, { 4, SPRITE_SPECIALFX } }, { 1, 0, 0, { 5, SPRITE_SPECIALFX } }, { 1, 0, 0, { 5, SPRITE_SPECIALFX } }, { 1, 0, 0, { 5, SPRITE_SPECIALFX } }, { 1, 0, 2120, { 1, SPRITE_SPECIALFX } }, { 1, 0, 2126, { 0, SPRITE_SPECIALFX } }, { 1, 0, 2133, { 1, SPRITE_SPECIALFX } }, { 1, 0, 18, { 5, SPRITE_SPECIALFX } }, { 1, 0, 2129, { 1, SPRITE_SPECIALFX } }, { 1, 0, 2141, { 1, SPRITE_SPECIALFX } }, { 1, 0, 2137, { 3, SPRITE_SPECIALFX } }, { 1, 0, 2048, { 0, SPRITE_SPECIALFX } }, { 1, 0, 2276, { 0, SPRITE_SPECIALFX } }, { 1, 0, 2108, { 4, SPRITE_SPECIALFX } }, { 1, 0, 2129, { 1, SPRITE_SPECIALFX } }, { 1, 0, 176, { 0, SPRITE_SPECIALFX } }, { 1, 0, 2276, { 2, SPRITE_SPECIALFX } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 2048, { 0, SPRITE_SPECIALFX } }, { 1, 0, 2112, { 0, SPRITE_SPECIALFX } }, { 1, 0, 4, { 0, SPRITE_SPECIALFX } }, { 1, 0, 2080, { 4, SPRITE_SPECIALFX } }, { 1, 0, 2080, { 4, SPRITE_SPECIALFX } }, { 1, 0, 2080, { 4, SPRITE_SPECIALFX } }, { 1, 0, 28, { 1, SPRITE_SPECIALFX } }, { 1, 0, 2068, { 1, SPRITE_SPECIALFX } }, { 1, 0, 30, { 1, SPRITE_SPECIALFX } }, { 1, 0, 2202, { 4, SPRITE_SPECIALFX } }, { 1, 0, 2202, { 4, SPRITE_SPECIALFX } }, { 1, 0, 2202, { 4, SPRITE_SPECIALFX } }, { 1, 0, 243, { 1, 163 } }, { 1, 0, 2108, { 4, SPRITE_SPECIALFX } }, { 1, 0, 2144, { 0, 163 } }, { 1, 0, 2202, { 3, SPRITE_SPECIALFX } }, { 1, 0, 113, { 71, 163 } }, { 1, 0, 113, { 71, 163 } }, { 1, 0, 2120, { 2, SPRITE_SPECIALFX } }, { 1, 0, 2141, { 1, 163 } }, { 1, 0, 0, { 5, 163 } }, { 1, 0, 2202, { 3, SPRITE_SPECIALFX } }, { 1, 0, 2137, { 3, SPRITE_SPECIALFX } }, { 1, 0, 2105, { 171, 163 } }, { 1, 0, 2253, { 3, 163 } }, { 1, 0, 2144, { 0, 163 } }, { 1, 0, 2144, { 0, 163 } }, { 1, 0, 2144, { 0, 163 } }, { 1, 0, 2144, { 3, 8354 } }, { 1, 0, 2126, { 0, 8355 } }, { 1, 0, 2276, { 2, SPRITE_SPECIALFX } }, { 1, 0, 2276, { 2, SPRITE_SPECIALFX } }, { 1, 0, 2276, { 2, SPRITE_SPECIALFX } }, { 1, 0, 2077, { 3, 163 } }, { 1, 0, 0, { 5, 163 } }, { 1, 0, 366, { 0, 163 } }, { 1, 0, 379, { 4, 8355 } }, { 1, 0, 2276, { 2, SPRITE_SPECIALFX } }, { 1, 0, 2276, { 2, SPRITE_SPECIALFX } }, { 1, 0, 2276, { 2, SPRITE_SPECIALFX } }, { 1, 0, 28, { 4, SPRITE_SPECIALFX } }, { 1, 0, 372, { 0, 8355 } }, { 1, 0, 2144, { 3, 8354 } }, { 1, 0, 446, { 184, 8355 } }, { 1, 0, 2133, { 3, SPRITE_SPECIALFX } }, { 1, 0, 452, { 0, 8355 } }, { 1, 0, 452, { 0, 8355 } }, { 1, 0, 452, { 0, 8355 } }, { 1, 0, 457, { 285, 8355 } }, { 1, 0, 458, { 285, 8355 } }, { 1, 0, 459, { 3, 8355 } }, { 1, 0, 2077, { 4, 163 } }, { 1, 0, 2108, { 4, SPRITE_SPECIALFX } }, { 1, 0, 0, { 1, 8355 } }, { 1, 0, 0, { 4, 8355 } }, { 1, 0, 2108, { 4, 8355 } }, { 1, 0, 0, { 0, 8355 } }, { 1, 0, 2126, { 382, SPRITE_SPECIALFX } }, { 1, 0, 2202, { 319, 8354 } }, { 1, 0, 2202, { 3, 8354 } }, { 1, 0, 2202, { 3, SPRITE_SPECIALFX } }, { 1, 0, 2265, { 0, SPRITE_SPECIALFX_1+0x2000 } }, { 1, 0, 2265, { 1, SPRITE_SPECIALFX_1+0x2000 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_7[] = { { 1, 0, 12, { 5, 8659 } }, { 1, 0, 263, { 5, 8660 } }, { 1, 0, 262, { 5, 8661 } }, { 1, 0, 38, { 5, 8662 } }, }; // TODO sprite index too high
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_7[] = { { 1, 0, 12, { 5, 8660 } }, { 1, 0, 263, { 5, 8661 } }, { 1, 0, 262, { 5, 8662 } }, { 1, 0, 38, { 5, 8663 } }, }; // TODO sprite index too high
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_25[] = { { 1, 0, 23, { 29, SPRITE_BIGBARREL } }, { 1, 0, 23, { 29, SPRITE_BIGBARREL } }, { 1, 0, 24, { 29, SPRITE_BIGBARREL } }, { 0, 0, 0, { 0, SPRITE_0 } }, { 0, 0, 0, { 0, SPRITE_0 } }, };
|
||||
const SpriteDataB gObjectDefinition_24[] = { { 1, 0, 22, { 0, SPRITE_OBJECT24 } }, { 1, 0, 39, { 0, SPRITE_OBJECT24 } }, { 1, 0, 40, { 0, SPRITE_OBJECT24 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_1C[] = { { 1, 0, 43, { 0, 8538 } }, { 1, 0, 43, { 0, 8538 } }, { 1, 0, 43, { 0, 8538 } }, { 1, 0, 44, { 0, 8538 } }, { 1, 0, 44, { 0, 8538 } }, { 1, 0, 45, { 0, 8538 } }, { 1, 0, 46, { 0, 8538 } }, { 1, 0, 47, { 0, 8538 } }, { 1, 0, 48, { 0, 8538 } }, { 1, 0, 49, { 0, 8538 } }, { 1, 0, 50, { 0, 8538 } }, { 1, 0, 51, { 0, 8538 } }, }; // TODO sprite index too high
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_1C[] = { { 1, 0, 43, { 0, 8539 } }, { 1, 0, 43, { 0, 8539 } }, { 1, 0, 43, { 0, 8539 } }, { 1, 0, 44, { 0, 8539 } }, { 1, 0, 44, { 0, 8539 } }, { 1, 0, 45, { 0, 8539 } }, { 1, 0, 46, { 0, 8539 } }, { 1, 0, 47, { 0, 8539 } }, { 1, 0, 48, { 0, 8539 } }, { 1, 0, 49, { 0, 8539 } }, { 1, 0, 50, { 0, 8539 } }, { 1, 0, 51, { 0, 8539 } }, }; // TODO sprite index too high
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_2C[] = { { 1, 0, 0, { 109, SPRITE_BEANSTALK_0 } }, { 1, 0, 0, { 109, SPRITE_BEANSTALK_1 } }, { 1, 0, 0, { 109, SPRITE_BEANSTALK_1 } }, { 1, 0, 0, { 109, SPRITE_BEANSTALK_1 } }, { 1, 0, 0, { 109, SPRITE_BEANSTALK_1 } }, { 1, 0, 0, { 109, SPRITE_BEANSTALK_1 } }, { 1, 0, 0, { 109, SPRITE_BEANSTALK_1 } }, { 1, 0, 36, { 109, SPRITE_BEANSTALK_1 } }, { 1, 0, 36, { 109, SPRITE_BEANSTALK_1 } }, { 1, 0, 122, { 118, SPRITE_BEANSTALK_1 } }, };
|
||||
const SpriteDataB gObjectDefinition_49[] = { { 1, 0, 62, { 43, 8392 } }, { 1, 0, 62, { 21, 8392 } }, { 1, 0, 62, { 21, 8392 } }, { 1, 0, 62, { 43, 200 } }, { 1, 0, 62, { 44, 8392 } }, { 1, 0, 63, { 45, 8393 } }, { 1, 0, 63, { 45, 8393 } }, { 1, 0, 63, { 45, 8393 } }, { 1, 0, 63, { 45, 8393 } }, { 1, 0, 62, { 43, 8392 } }, { 1, 0, 62, { 4, 8393 } }, }; // TODO sprite index too high
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_4F[] = { { 1, 0, 98, { 10, 8599 } }, { 1, 0, 99, { 10, 8599 } }, { 1, 0, 103, { 10, 8599 } }, { 1, 0, 104, { 10, 8599 } }, { 1, 0, 105, { 10, 8599 } }, { 1, 0, 106, { 10, 8599 } }, { 1, 0, 108, { 10, 8599 } }, { 1, 0, 108, { 10, 8599 } }, { 1, 0, 109, { 10, 8599 } }, { 1, 0, 110, { 10, 8599 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 142, { 14, 8650 } }, { 1, 0, 100, { 10, 8599 } }, { 1, 0, 111, { 10, 8600 } }, { 1, 0, 101, { 10, 8599 } }, { 1, 0, 102, { 10, 8599 } }, { 1, 0, 132, { 120, 8534 } }, { 1, 0, 112, { 10, 8599 } }, { 1, 0, 283, { 10, 8599 } }, { 1, 0, 284, { 10, 8599 } }, { 1, 0, 285, { 10, 8601 } }, { 1, 0, 287, { 10, 8599 } }, { 1, 0, 305, { 10, 8602 } }, { 1, 0, 308, { 14, 8650 } }, { 1, 0, 309, { 18, 8650 } }, { 1, 0, 310, { 10, 8603 } }, { 1, 0, 323, { 10, 8599 } }, { 1, 0, 324, { 10, 8599 } }, { 1, 0, 107, { 10, 8604 } }, { 1, 0, 286, { 10, 8604 } }, { 1, 0, 412, { 10, 8599 } }, { 1, 0, 450, { 15, 8650 } }, { 1, 0, 488, { 354, 8687 } }, }; // TODO sprite index too high
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_4F[] = { { 1, 0, 98, { 10, 8600 } }, { 1, 0, 99, { 10, 8600 } }, { 1, 0, 103, { 10, 8600 } }, { 1, 0, 104, { 10, 8600 } }, { 1, 0, 105, { 10, 8600 } }, { 1, 0, 106, { 10, 8600 } }, { 1, 0, 108, { 10, 8600 } }, { 1, 0, 108, { 10, 8600 } }, { 1, 0, 109, { 10, 8600 } }, { 1, 0, 110, { 10, 8600 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 142, { 14, 8651 } }, { 1, 0, 100, { 10, 8600 } }, { 1, 0, 111, { 10, 8601 } }, { 1, 0, 101, { 10, 8600 } }, { 1, 0, 102, { 10, 8600 } }, { 1, 0, 132, { 120, 8535 } }, { 1, 0, 112, { 10, 8600 } }, { 1, 0, 283, { 10, 8600 } }, { 1, 0, 284, { 10, 8600 } }, { 1, 0, 285, { 10, 8602 } }, { 1, 0, 287, { 10, 8600 } }, { 1, 0, 305, { 10, 8603 } }, { 1, 0, 308, { 14, 8651 } }, { 1, 0, 309, { 18, 8651 } }, { 1, 0, 310, { 10, 8604 } }, { 1, 0, 323, { 10, 8600 } }, { 1, 0, 324, { 10, 8600 } }, { 1, 0, 107, { 10, 8605 } }, { 1, 0, 286, { 10, 8605 } }, { 1, 0, 412, { 10, 8600 } }, { 1, 0, 450, { 15, 8651 } }, { 1, 0, 488, { 354, 8688 } }, }; // TODO sprite index too high
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_56[] = { { 1, 0, 119, { 0, SPRITE_THOUGHTBUBBLE } }, { 1, 0, 119, { 0, SPRITE_THOUGHTBUBBLE } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_26[] = { { 1, 0, 27, { 116, 457 } }, { 1, 0, 27, { 116, 457 } }, { 1, 0, 27, { 116, 457 } }, { 1, 0, 27, { 117, 457 } }, { 1, 0, 27, { 117, 457 } }, { 1, 0, 27, { 117, 457 } }, }; // TODO sprite index too high
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_26[] = { { 1, 0, 27, { 116, 458 } }, { 1, 0, 27, { 116, 458 } }, { 1, 0, 27, { 116, 458 } }, { 1, 0, 27, { 117, 458 } }, { 1, 0, 27, { 117, 458 } }, { 1, 0, 27, { 117, 458 } }, }; // TODO sprite index too high
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_59[] = { { 1, 0, 1025, { 0, SPRITE_LAVAPLATFORM_1 } }, { 1, 0, 124, { 0, SPRITE_LAVAPLATFORM } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_4C[] = { { 1, 1, 90, { 87, 8543 } }, { 1, 1, 91, { 87, 8544 } }, { 1, 1, 126, { 87, 8552 } }, { 1, 1, 97, { 86, 8550 } }, { 1, 1, 280, { 101, 8552 } }, }; // TODO sprite index too high
|
||||
const SpriteDataB gObjectDefinition_4D[] = { { 1, 0, 92, { 87, 8545 } }, { 1, 0, 91, { 87, 8544 } }, { 1, 0, 94, { 86, 8547 } }, { 1, 0, 97, { 86, 8550 } }, { 1, 0, 131, { 1, 8557 } }, { 1, 0, 147, { 1, 8558 } }, { 1, 0, 148, { 1, 8559 } }, { 1, 0, 149, { 90, 8560 } }, { 1, 0, 150, { 0, 8561 } }, { 1, 0, 151, { 91, 8562 } }, { 1, 0, 152, { 86, 8563 } }, { 1, 0, 163, { 4097, 9591 } }, { 1, 0, 164, { 94, 8568 } }, { 1, 0, 165, { 94, 8569 } }, { 1, 0, 166, { 92, 8570 } }, { 1, 0, 167, { 93, 8571 } }, { 1, 0, 150, { 1, 8561 } }, { 1, 0, 153, { 86, 8564 } }, { 1, 0, 154, { 1, 8565 } }, { 1, 0, 155, { 88, 8566 } }, { 1, 0, 170, { 2, 8540 } }, { 1, 0, 171, { 2, 8541 } }, { 1, 0, 172, { 2, 8542 } }, { 1, 0, 156, { 86, 8572 } }, { 1, 0, 194, { 48, 8535 } }, { 1, 0, 157, { 87, 8573 } }, { 1, 0, 374, { 105, 8592 } }, { 1, 0, 159, { 86, 8574 } }, { 1, 0, 160, { 0, 8575 } }, { 1, 0, 161, { 1, 8576 } }, { 1, 0, 162, { 99, 8577 } }, { 1, 0, 242, { 211, 8632 } }, { 1, 0, 278, { 102, 8578 } }, { 1, 0, 279, { 102, 8579 } }, { 1, 0, 280, { 101, 8552 } }, { 1, 0, 281, { 101, 8543 } }, { 1, 0, 282, { 100, 8550 } }, { 1, 0, 296, { 87, 8580 } }, { 1, 0, 325, { 292, 8605 } }, { 1, 0, 327, { 294, 8606 } }, { 1, 0, 328, { 291, 8607 } }, { 1, 0, 329, { 294, 8608 } }, { 1, 0, 330, { 294, 8609 } }, { 1, 0, 331, { 291, 8610 } }, { 1, 0, 332, { 294, 8611 } }, { 1, 0, 333, { 292, 8612 } }, { 1, 0, 334, { 292, 8613 } }, { 1, 0, 335, { 294, 8614 } }, { 1, 0, 336, { 292, 8615 } }, { 1, 0, 337, { 294, 8616 } }, { 1, 0, 338, { 292, 8617 } }, { 1, 0, 339, { 292, 8618 } }, { 1, 0, 340, { 292, 8619 } }, { 1, 0, 341, { 290, 8620 } }, { 1, 0, 342, { 293, 8621 } }, { 1, 0, 343, { 292, 8622 } }, { 1, 0, 345, { 103, 8584 } }, { 1, 0, 348, { 88, 8585 } }, { 1, 0, 368, { 104, 8591 } }, { 1, 0, 378, { 86, 8594 } }, { 1, 0, 380, { 86, 8595 } }, { 1, 0, 381, { 108, 8596 } }, { 1, 0, 151, { 91, 8562 } }, { 1, 0, 426, { 322, 8625 } }, { 1, 0, 427, { 321, 8626 } }, { 1, 0, 428, { 321, 8627 } }, { 1, 0, 429, { 322, 8628 } }, { 1, 0, 430, { 0, 8629 } }, { 1, 0, 489, { 294, 8623 } }, { 1, 0, 490, { 291, 8624 } }, }; // TODO sprite index too high
|
||||
const SpriteDataB gObjectDefinition_5A[] = { { 1, 0, 95, { 86, 8548 } }, { 1, 0, 96, { 86, 8549 } }, { 1, 0, 367, { 0, 8590 } }, }; // TODO sprite index too high
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_4C[] = { { 1, 1, 90, { 87, 8544 } }, { 1, 1, 91, { 87, 8545 } }, { 1, 1, 126, { 87, 8553 } }, { 1, 1, 97, { 86, 8551 } }, { 1, 1, 280, { 101, 8553 } }, }; // TODO sprite index too high
|
||||
const SpriteDataB gObjectDefinition_4D[] = { { 1, 0, 92, { 87, 8546 } }, { 1, 0, 91, { 87, 8545 } }, { 1, 0, 94, { 86, 8548 } }, { 1, 0, 97, { 86, 8551 } }, { 1, 0, 131, { 1, 8558 } }, { 1, 0, 147, { 1, 8559 } }, { 1, 0, 148, { 1, 8560 } }, { 1, 0, 149, { 90, 8561 } }, { 1, 0, 150, { 0, 8562 } }, { 1, 0, 151, { 91, 8563 } }, { 1, 0, 152, { 86, 8564 } }, { 1, 0, 163, { 4097, 9592 } }, { 1, 0, 164, { 94, 8569 } }, { 1, 0, 165, { 94, 8570 } }, { 1, 0, 166, { 92, 8571 } }, { 1, 0, 167, { 93, 8572 } }, { 1, 0, 150, { 1, 8562 } }, { 1, 0, 153, { 86, 8565 } }, { 1, 0, 154, { 1, 8566 } }, { 1, 0, 155, { 88, 8567 } }, { 1, 0, 170, { 2, 8541 } }, { 1, 0, 171, { 2, 8542 } }, { 1, 0, 172, { 2, 8543 } }, { 1, 0, 156, { 86, 8573 } }, { 1, 0, 194, { 48, 8536 } }, { 1, 0, 157, { 87, 8574 } }, { 1, 0, 374, { 105, 8593 } }, { 1, 0, 159, { 86, 8575 } }, { 1, 0, 160, { 0, 8576 } }, { 1, 0, 161, { 1, 8577 } }, { 1, 0, 162, { 99, 8578 } }, { 1, 0, 242, { 211, 8633 } }, { 1, 0, 278, { 102, 8579 } }, { 1, 0, 279, { 102, 8580 } }, { 1, 0, 280, { 101, 8553 } }, { 1, 0, 281, { 101, 8544 } }, { 1, 0, 282, { 100, 8551 } }, { 1, 0, 296, { 87, 8581 } }, { 1, 0, 325, { 292, 8606 } }, { 1, 0, 327, { 294, 8607 } }, { 1, 0, 328, { 291, 8608 } }, { 1, 0, 329, { 294, 8609 } }, { 1, 0, 330, { 294, 8610 } }, { 1, 0, 331, { 291, 8611 } }, { 1, 0, 332, { 294, 8612 } }, { 1, 0, 333, { 292, 8613 } }, { 1, 0, 334, { 292, 8614 } }, { 1, 0, 335, { 294, 8615 } }, { 1, 0, 336, { 292, 8616 } }, { 1, 0, 337, { 294, 8617 } }, { 1, 0, 338, { 292, 8618 } }, { 1, 0, 339, { 292, 8619 } }, { 1, 0, 340, { 292, 8620 } }, { 1, 0, 341, { 290, 8621 } }, { 1, 0, 342, { 293, 8622 } }, { 1, 0, 343, { 292, 8623 } }, { 1, 0, 345, { 103, 8585 } }, { 1, 0, 348, { 88, 8586 } }, { 1, 0, 368, { 104, 8592 } }, { 1, 0, 378, { 86, 8595 } }, { 1, 0, 380, { 86, 8596 } }, { 1, 0, 381, { 108, 8597 } }, { 1, 0, 151, { 91, 8563 } }, { 1, 0, 426, { 322, 8626 } }, { 1, 0, 427, { 321, 8627 } }, { 1, 0, 428, { 321, 8628 } }, { 1, 0, 429, { 322, 8629 } }, { 1, 0, 430, { 0, 8630 } }, { 1, 0, 489, { 294, 8624 } }, { 1, 0, 490, { 291, 8625 } }, }; // TODO sprite index too high
|
||||
const SpriteDataB gObjectDefinition_5A[] = { { 1, 0, 95, { 86, 8549 } }, { 1, 0, 96, { 86, 8550 } }, { 1, 0, 367, { 0, 8591 } }, }; // TODO sprite index too high
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_61[] = { { 1, 0, 1025, { 18, SPRITE_13 } }, { 1, 0, 1025, { 18, SPRITE_13 } }, };
|
||||
const SpriteDataB gObjectDefinition_64[] = { { 1, 0, 133, { 1, SPRITE_OBJECT64 } }, { 1, 0, 133, { 1, SPRITE_OBJECT64 } }, { 1, 0, 133, { 1, SPRITE_OBJECT64 } }, };
|
||||
const SpriteDataB gObjectDefinition_67[] = { { 1, 0, 173, { 203, 8418 } }, { 1, 0, 174, { 208, 8418 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 1025, { 0, 8295 } }, }; // TODO sprite index too high
|
||||
const SpriteDataB gObjectDefinition_68[] = { { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_6A[] = { { 1, 0, 25, { 1, 8376 } }, { 1, 0, 1025, { 4096, 11297 } }, { 1, 0, 405, { 0, 8484 } }, { 1, 0, 1025, { 4096, 8513 } }, { 1, 0, 510, { 4096, 8508 } }, { 1, 0, 465, { 4097, 8499 } }, { 1, 3, 252, { 1, 481 } }, { 1, 4, 522, { 22, 9539 } }, { 1, 0, 1025, { 2, 8226 } }, { 1, 0, 1025, { 2, 8227 } }, { 1, 0, 195, { 8339, 3256 } }, { 1, 0, 1026, { 2, 8226 } }, { 1, 0, 382, { 1, 9483 } }, { 1, 0, 405, { 313, 9508 } }, { 1, 0, 369, { 0, 268 } }, { 1, 0, 369, { 2, 8460 } }, { 1, 0, 369, { 2, 8460 } }, { 1, 0, 1026, { 339, 8288 } }, { 1, 0, 2082, { 4, 322 } }, { 1, 0, 1, { 4096, 11438 } }, { 1, 0, 1, { 4097, 11440 } }, { 1, 0, 1025, { 4096, 8513 } }, { 1, 0, 1025, { 286, 8230 } }, { 1, 0, 442, { 300, 498 } }, { 1, 0, 1025, { 0, 8513 } }, { 1, 0, 1025, { 2, 8359 } }, { 1, 0, 114, { 110, 8400 } }, { 1, 0, 1025, { 4379, 8224 } }, { 1, 0, 1025, { 4382, 8230 } }, { 1, 0, 456, { 4382, 8494 } }, { 1, 0, 459, { 4099, 8355 } }, { 1, 0, 1025, { 4096, 8206 } }, { 1, 0, 199, { 4208, 11492 } }, { 1, 0, 199, { 4209, 11492 } }, { 1, 0, 1025, { 4118, 1060 } }, { 1, 0, 457, { 285, 8355 } }, { 1, 0, 458, { 285, 8355 } }, { 1, 0, 459, { 4099, 8355 } }, { 1, 0, 506, { 1, 8646 } }, { 1, 0, 508, { 380, 8647 } }, { 1, 0, 509, { 381, 8648 } }, { 1, 0, 1025, { 0, 9537 } }, { 1, 0, 1025, { 0, 9537 } }, }; // TODO sprite index too high
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_6A[] = { { 1, 0, 25, { 1, 8376 } }, { 1, 0, 1025, { 4096, 11297 } }, { 1, 0, 405, { 0, 8485 } }, { 1, 0, 1025, { 4096, 8514 } }, { 1, 0, 510, { 4096, 8509 } }, { 1, 0, 465, { 4097, 8500 } }, { 1, 3, 252, { 1, 482 } }, { 1, 4, 523, { 22, 9540 } }, { 1, 0, 1025, { 2, 8226 } }, { 1, 0, 1025, { 2, 8227 } }, { 1, 0, 195, { 8339, 3256 } }, { 1, 0, 1026, { 2, 8226 } }, { 1, 0, 382, { 1, 9483 } }, { 1, 0, 405, { 313, 9509 } }, { 1, 0, 369, { 0, 268 } }, { 1, 0, 369, { 2, 8460 } }, { 1, 0, 369, { 2, 8460 } }, { 1, 0, 1026, { 339, 8288 } }, { 1, 0, 2082, { 4, 323 } }, { 1, 0, 1, { 4096, 11438 } }, { 1, 0, 1, { 4097, 11440 } }, { 1, 0, 1025, { 4096, 8514 } }, { 1, 0, 1025, { 286, 8230 } }, { 1, 0, 442, { 300, 499 } }, { 1, 0, 1025, { 0, 8514 } }, { 1, 0, 1025, { 2, 8359 } }, { 1, 0, 114, { 110, 8400 } }, { 1, 0, 1025, { 4379, 8224 } }, { 1, 0, 1025, { 4382, 8230 } }, { 1, 0, 456, { 4382, 8495 } }, { 1, 0, 459, { 4099, 8355 } }, { 1, 0, 1025, { 4096, 8206 } }, { 1, 0, 199, { 4208, 11492 } }, { 1, 0, 199, { 4209, 11492 } }, { 1, 0, 1025, { 4118, 1060 } }, { 1, 0, 457, { 285, 8355 } }, { 1, 0, 458, { 285, 8355 } }, { 1, 0, 459, { 4099, 8355 } }, { 1, 0, 506, { 1, 8647 } }, { 1, 0, 508, { 380, 8648 } }, { 1, 0, 509, { 381, 8649 } }, { 1, 0, 1025, { 0, 9538 } }, { 1, 0, 1025, { 0, 9538 } }, }; // TODO sprite index too high
|
||||
#endif
|
||||
// TODO deduplicate using sprite indices enum
|
||||
const SpriteDataB gObjectDefinition_6B[] = { { 1, 0, 138, { 2, 8410 } }, { 1, 0, 139, { 131, 8410 } }, { 1, 0, 138, { 1, 8410 } }, { 1, 0, 139, { 131, 8410 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_5D[] = { { 1, 0, 127, { 85, 361 } }, { 1, 0, 128, { 1, 362 } }, { 1, 0, 245, { 213, 443 } }, { 1, 0, 181, { 134, 439 } }, { 1, 0, 479, { 348, 362 } }, { 1, 0, 480, { 349, 362 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_5D[] = { { 1, 0, 127, { 85, 362 } }, { 1, 0, 128, { 1, 363 } }, { 1, 0, 245, { 213, 444 } }, { 1, 0, 181, { 134, 440 } }, { 1, 0, 479, { 348, 363 } }, { 1, 0, 480, { 349, 363 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_11[] = { { 1, 0, 2280, { 2, 8359 } }, { 1, 0, 2272, { 5, 8359 } }, { 1, 0, 2290, { 5, 8359 } }, { 1, 0, 2048, { 5, 8358 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_6F[] = { { 1, 0, 179, { 133, 8630 } }, { 1, 0, 182, { 135, 8630 } }, { 1, 0, 183, { 136, 8630 } }, { 1, 0, 184, { 137, 8630 } }, { 1, 0, 185, { 138, 8630 } }, { 1, 0, 186, { 139, 8630 } }, { 1, 0, 186, { 139, 8630 } }, { 1, 0, 187, { 140, 8630 } }, { 1, 0, 188, { 141, 8630 } }, { 1, 0, 189, { 142, 8630 } }, { 1, 0, 190, { 143, 8630 } }, { 1, 0, 244, { 212, 8630 } }, { 1, 0, 191, { 144, 8630 } }, { 1, 0, 192, { 145, 8630 } }, { 1, 0, 193, { 146, 8630 } }, { 1, 0, 298, { 274, 8630 } }, { 1, 0, 299, { 275, 8630 } }, { 1, 0, 300, { 276, 8630 } }, { 1, 0, 301, { 277, 8630 } }, { 1, 0, 302, { 278, 8630 } }, { 1, 0, 303, { 279, 8630 } }, };
|
||||
const SpriteDataB gObjectDefinition_6D[] = { { 1, 0, 178, { 5, 459 } }, { 1, 0, 178, { 0, 459 } }, { 1, 0, 178, { 12, 459 } }, { 1, 0, 178, { 12, 459 } }, { 1, 0, 178, { 0, 459 } }, { 1, 0, 178, { 0, 459 } }, };
|
||||
const SpriteDataB gObjectDefinition_3B[] = { { 1, 0, 209, { 159, 334 } }, { 1, 0, 209, { 158, 334 } }, { 1, 0, 209, { 158, 334 } }, { 1, 0, 209, { 158, 334 } }, { 1, 0, 209, { 158, 334 } }, { 1, 0, 209, { 160, 334 } }, { 1, 0, 209, { 160, 334 } }, { 1, 0, 209, { 160, 334 } }, { 1, 0, 209, { 160, 334 } }, };
|
||||
const SpriteDataB gObjectDefinition_75[] = { { 1, 0, 212, { 162, 335 } }, { 1, 0, 212, { 161, 335 } }, { 1, 0, 212, { 161, 335 } }, { 1, 0, 212, { 161, 335 } }, { 1, 0, 212, { 161, 335 } }, { 1, 0, 212, { 163, 335 } }, { 1, 0, 212, { 163, 335 } }, { 1, 0, 212, { 163, 335 } }, { 1, 0, 212, { 163, 335 } }, };
|
||||
const SpriteDataB gObjectDefinition_76[] = { { 1, 0, 210, { 165, 336 } }, { 1, 0, 210, { 164, 336 } }, { 1, 0, 210, { 164, 336 } }, { 1, 0, 210, { 164, 336 } }, { 1, 0, 210, { 164, 336 } }, { 1, 0, 210, { 166, 336 } }, { 1, 0, 210, { 166, 336 } }, { 1, 0, 210, { 166, 336 } }, { 1, 0, 210, { 166, 336 } }, { 1, 0, 211, { 168, 336 } }, { 1, 0, 211, { 167, 336 } }, { 1, 0, 211, { 167, 336 } }, { 1, 0, 211, { 167, 336 } }, { 1, 0, 211, { 167, 336 } }, { 1, 0, 211, { 169, 336 } }, { 1, 0, 211, { 169, 336 } }, { 1, 0, 211, { 169, 336 } }, { 1, 0, 211, { 169, 336 } }, };
|
||||
const SpriteDataB gObjectDefinition_3E[] = { { 1, 0, 20, { 51, 8520 } }, { 1, 0, 392, { 301, 8679 } }, { 1, 0, 392, { 301, 8679 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 394, { 1, 8643 } }, { 1, 0, 394, { 1, 8643 } }, { 1, 0, 447, { 329, 8691 } }, { 1, 0, 447, { 329, 8691 } }, { 1, 0, 448, { 332, 8692 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_6F[] = { { 1, 0, 179, { 133, 8631 } }, { 1, 0, 182, { 135, 8631 } }, { 1, 0, 183, { 136, 8631 } }, { 1, 0, 184, { 137, 8631 } }, { 1, 0, 185, { 138, 8631 } }, { 1, 0, 186, { 139, 8631 } }, { 1, 0, 186, { 139, 8631 } }, { 1, 0, 187, { 140, 8631 } }, { 1, 0, 188, { 141, 8631 } }, { 1, 0, 189, { 142, 8631 } }, { 1, 0, 190, { 143, 8631 } }, { 1, 0, 244, { 212, 8631 } }, { 1, 0, 191, { 144, 8631 } }, { 1, 0, 192, { 145, 8631 } }, { 1, 0, 193, { 146, 8631 } }, { 1, 0, 298, { 274, 8631 } }, { 1, 0, 299, { 275, 8631 } }, { 1, 0, 300, { 276, 8631 } }, { 1, 0, 301, { 277, 8631 } }, { 1, 0, 302, { 278, 8631 } }, { 1, 0, 303, { 279, 8631 } }, };
|
||||
const SpriteDataB gObjectDefinition_6D[] = { { 1, 0, 178, { 5, 460 } }, { 1, 0, 178, { 0, 460 } }, { 1, 0, 178, { 12, 460 } }, { 1, 0, 178, { 12, 460 } }, { 1, 0, 178, { 0, 460 } }, { 1, 0, 178, { 0, 460 } }, };
|
||||
const SpriteDataB gObjectDefinition_3B[] = { { 1, 0, 209, { 159, 335 } }, { 1, 0, 209, { 158, 335 } }, { 1, 0, 209, { 158, 335 } }, { 1, 0, 209, { 158, 335 } }, { 1, 0, 209, { 158, 335 } }, { 1, 0, 209, { 160, 335 } }, { 1, 0, 209, { 160, 335 } }, { 1, 0, 209, { 160, 335 } }, { 1, 0, 209, { 160, 335 } }, };
|
||||
const SpriteDataB gObjectDefinition_75[] = { { 1, 0, 212, { 162, 336 } }, { 1, 0, 212, { 161, 336 } }, { 1, 0, 212, { 161, 336 } }, { 1, 0, 212, { 161, 336 } }, { 1, 0, 212, { 161, 336 } }, { 1, 0, 212, { 163, 336 } }, { 1, 0, 212, { 163, 336 } }, { 1, 0, 212, { 163, 336 } }, { 1, 0, 212, { 163, 336 } }, };
|
||||
const SpriteDataB gObjectDefinition_76[] = { { 1, 0, 210, { 165, 337 } }, { 1, 0, 210, { 164, 337 } }, { 1, 0, 210, { 164, 337 } }, { 1, 0, 210, { 164, 337 } }, { 1, 0, 210, { 164, 337 } }, { 1, 0, 210, { 166, 337 } }, { 1, 0, 210, { 166, 337 } }, { 1, 0, 210, { 166, 337 } }, { 1, 0, 210, { 166, 337 } }, { 1, 0, 211, { 168, 337 } }, { 1, 0, 211, { 167, 337 } }, { 1, 0, 211, { 167, 337 } }, { 1, 0, 211, { 167, 337 } }, { 1, 0, 211, { 167, 337 } }, { 1, 0, 211, { 169, 337 } }, { 1, 0, 211, { 169, 337 } }, { 1, 0, 211, { 169, 337 } }, { 1, 0, 211, { 169, 337 } }, };
|
||||
const SpriteDataB gObjectDefinition_3E[] = { { 1, 0, 20, { 51, 8521 } }, { 1, 0, 392, { 301, 8680 } }, { 1, 0, 392, { 301, 8680 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 394, { 1, 8644 } }, { 1, 0, 394, { 1, 8644 } }, { 1, 0, 447, { 329, 8692 } }, { 1, 0, 447, { 329, 8692 } }, { 1, 0, 448, { 332, 8693 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_1B[] = { { 1, 0, 196, { 148, 227 } }, { 1, 0, 196, { 148, 227 } }, { 1, 0, 196, { 149, 227 } }, { 1, 0, 196, { 148, 227 } }, { 1, 0, 196, { 148, 227 } }, { 1, 0, 196, { 149, 227 } }, { 1, 0, 196, { 149, 227 } }, { 1, 0, 196, { 148, 227 } }, { 1, 0, 196, { 149, 227 } }, { 1, 0, 196, { 0, 227 } }, { 1, 0, 196, { 148, 227 } }, { 1, 0, 197, { 150, 227 } }, { 1, 0, 197, { 150, 227 } }, { 1, 0, 197, { 151, 227 } }, { 1, 0, 197, { 150, 227 } }, { 1, 0, 197, { 150, 227 } }, { 1, 0, 197, { 151, 227 } }, { 1, 0, 197, { 151, 227 } }, { 1, 0, 197, { 150, 227 } }, { 1, 0, 197, { 151, 227 } }, { 1, 0, 197, { 0, 227 } }, { 1, 0, 197, { 150, 227 } }, { 1, 0, 198, { 152, 227 } }, { 1, 0, 198, { 152, 227 } }, { 1, 0, 198, { 153, 227 } }, { 1, 0, 198, { 152, 227 } }, { 1, 0, 198, { 152, 227 } }, { 1, 0, 198, { 153, 227 } }, { 1, 0, 198, { 153, 227 } }, { 1, 0, 198, { 152, 227 } }, { 1, 0, 198, { 153, 227 } }, { 1, 0, 198, { 0, 227 } }, { 1, 0, 198, { 152, 227 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_71[] = { { 1, 0, 204, { 12, 8524 } }, { 1, 0, 204, { 12, 8524 } }, { 1, 0, 203, { 5, 8524 } }, };
|
||||
const SpriteDataB gObjectDefinition_72[] = { { 1, 0, 205, { 155, 8652 } }, { 1, 0, 205, { 156, 8652 } }, { 1, 0, 205, { 157, 8652 } }, { 1, 0, 445, { 328, 8669 } }, };
|
||||
const SpriteDataB gObjectDefinition_78[] = { { 1, 0, 226, { 11, 8530 } }, { 1, 0, 229, { 14, 8532 } }, { 1, 0, 230, { 182, 8531 } }, { 1, 0, 235, { 197, 8533 } }, };
|
||||
const SpriteDataB gObjectDefinition_7C[] = { { 1, 0, 240, { 209, 8633 } }, { 1, 0, 241, { 210, 8634 } }, };
|
||||
const SpriteDataB gObjectDefinition_46[] = { { 1, 0, 246, { 214, 444 } }, { 1, 0, 247, { 215, 444 } }, { 1, 0, 248, { 216, 444 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_71[] = { { 1, 0, 204, { 12, 8525 } }, { 1, 0, 204, { 12, 8525 } }, { 1, 0, 203, { 5, 8525 } }, };
|
||||
const SpriteDataB gObjectDefinition_72[] = { { 1, 0, 205, { 155, 8653 } }, { 1, 0, 205, { 156, 8653 } }, { 1, 0, 205, { 157, 8653 } }, { 1, 0, 445, { 328, 8670 } }, };
|
||||
const SpriteDataB gObjectDefinition_78[] = { { 1, 0, 226, { 11, 8531 } }, { 1, 0, 229, { 14, 8533 } }, { 1, 0, 230, { 182, 8532 } }, { 1, 0, 235, { 197, 8534 } }, };
|
||||
const SpriteDataB gObjectDefinition_7C[] = { { 1, 0, 240, { 209, 8634 } }, { 1, 0, 241, { 210, 8635 } }, };
|
||||
const SpriteDataB gObjectDefinition_46[] = { { 1, 0, 246, { 214, 445 } }, { 1, 0, 247, { 215, 445 } }, { 1, 0, 248, { 216, 445 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_7D[] = { { 1, 1, 2280, { 2, 8359 } }, { 1, 1, 2272, { 5, 8359 } }, };
|
||||
const SpriteDataB gObjectDefinition_7F[] = { { 1, 1, 304, { 280, 8447 } }, { 1, 1, 304, { 280, 8447 } }, { 1, 1, 304, { 2, 8447 } }, { 1, 1, 304, { 0, 8447 } }, { 1, 1, 304, { 1, 8447 } }, { 1, 1, 304, { 4, 8447 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_35[] = { { 1, 1, 311, { 0, 8448 } }, { 1, 1, 312, { 0, 8583 } }, { 1, 0, 497, { 0, 8694 } }, };
|
||||
const SpriteDataB gObjectDefinition_5C[] = { { 1, 0, 129, { 0, 8555 } }, { 1, 0, 129, { 1, 8555 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_35[] = { { 1, 1, 311, { 0, 8448 } }, { 1, 1, 312, { 0, 8584 } }, { 1, 0, 497, { 0, 8695 } }, };
|
||||
const SpriteDataB gObjectDefinition_5C[] = { { 1, 0, 129, { 0, 8556 } }, { 1, 0, 129, { 1, 8556 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_84[] = { { 1, 0, 314, { 1, 8451 } }, { 1, 0, 316, { 1, 8451 } }, { 1, 0, 317, { 1, 8451 } }, { 1, 0, 318, { 1, 8451 } }, };
|
||||
const SpriteDataB gObjectDefinition_85[] = { { 1, 0, 313, { 1, 8449 } }, { 1, 0, 320, { 1, 8449 } }, { 1, 0, 319, { 1, 8449 } }, { 1, 0, 321, { 1, 8449 } }, { 1, 0, 322, { 1, 8450 } }, };
|
||||
const SpriteDataB gObjectDefinition_87[] = { { 1, 0, 2086, { 0, 8365 } }, { 1, 0, 2086, { 0, 8365 } }, { 1, 0, 272, { 3, 8446 } }, { 1, 0, 273, { 245, 8446 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 274, { 240, 8446 } }, { 1, 0, 272, { 3, 8446 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, { 1, 0, 0, { 0, 0 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_8A[] = { { 1, 0, 350, { 106, 8587 } }, { 1, 0, 351, { 104, 8588 } }, { 1, 0, 352, { 104, 8589 } }, };
|
||||
const SpriteDataB gObjectDefinition_8C[] = { { 1, 1, 1025, { 4096, 9537 } }, { 1, 1, 1025, { 4096, 9537 } }, { 1, 1, 1025, { 4096, 9537 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_8A[] = { { 1, 0, 350, { 106, 8588 } }, { 1, 0, 351, { 104, 8589 } }, { 1, 0, 352, { 104, 8590 } }, };
|
||||
const SpriteDataB gObjectDefinition_8C[] = { { 1, 1, 1025, { 4096, 9538 } }, { 1, 1, 1025, { 4096, 9538 } }, { 1, 1, 1025, { 4096, 9538 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_91[] = { { 1, 1, 276, { 4336, 8446 } }, { 1, 1, 266, { 4336, 8446 } }, { 1, 1, 266, { 4336, 8446 } }, { 1, 1, 266, { 4336, 8446 } }, { 1, 1, 266, { 4336, 8446 } }, { 1, 1, 267, { 4336, 8446 } }, { 1, 1, 276, { 4336, 8446 } }, { 1, 0, 0, { 4096, 0 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_92[] = { { 1, 0, 158, { 106, 8593 } }, { 1, 0, 375, { 1, 265 } }, };
|
||||
const SpriteDataB gObjectDefinition_95[] = { { 1, 1, 370, { 4097, 9485 } }, { 1, 1, 1025, { 0, 11585 } }, { 1, 1, 1025, { 0, 11585 } }, { 1, 1, 371, { 4096, 8462 } }, { 1, 1, 371, { 4097, 8462 } }, { 1, 1, 371, { 4098, 8462 } }, { 1, 1, 371, { 4099, 8462 } }, { 1, 1, 371, { 4100, 8462 } }, { 1, 1, 370, { 4097, 9485 } }, { 1, 1, 370, { 4097, 9485 } }, { 1, 0, 1025, { 4118, 9218 } }, };
|
||||
const SpriteDataB gObjectDefinition_96[] = { { 1, 1, 1025, { 4096, 9537 } }, { 1, 1, 521, { 0, 9539 } }, { 1, 1, 1025, { 4096, 9537 } }, { 1, 1, 1025, { 4096, 9537 } }, { 1, 1, 1025, { 4096, 9537 } }, { 1, 1, 1025, { 4096, 9537 } }, { 1, 1, 1025, { 4096, 9537 } }, { 1, 1, 2082, { 0, 9538 } }, };
|
||||
const SpriteDataB gObjectDefinition_97[] = { { 1, 0, 236, { 0, 9457 } }, { 1, 0, 1025, { 0, 9537 } }, { 1, 0, 236, { 0, 9457 } }, { 1, 0, 236, { 0, 9457 } }, { 1, 0, 236, { 0, 9457 } }, { 1, 0, 1025, { 0, 9537 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_92[] = { { 1, 0, 158, { 106, 8594 } }, { 1, 0, 375, { 1, 265 } }, };
|
||||
const SpriteDataB gObjectDefinition_95[] = { { 1, 1, 370, { 4097, 9485 } }, { 1, 1, 1025, { 0, 11586 } }, { 1, 1, 1025, { 0, 11586 } }, { 1, 1, 371, { 4096, 8462 } }, { 1, 1, 371, { 4097, 8462 } }, { 1, 1, 371, { 4098, 8462 } }, { 1, 1, 371, { 4099, 8462 } }, { 1, 1, 371, { 4100, 8462 } }, { 1, 1, 370, { 4097, 9485 } }, { 1, 1, 370, { 4097, 9485 } }, { 1, 0, 1025, { 4118, 9218 } }, };
|
||||
const SpriteDataB gObjectDefinition_96[] = { { 1, 1, 1025, { 4096, 9538 } }, { 1, 1, 522, { 0, 9540 } }, { 1, 1, 1025, { 4096, 9538 } }, { 1, 1, 1025, { 4096, 9538 } }, { 1, 1, 1025, { 4096, 9538 } }, { 1, 1, 1025, { 4096, 9538 } }, { 1, 1, 1025, { 4096, 9538 } }, { 1, 1, 2082, { 0, 9539 } }, };
|
||||
const SpriteDataB gObjectDefinition_97[] = { { 1, 0, 236, { 0, 9457 } }, { 1, 0, 1025, { 0, 9538 } }, { 1, 0, 236, { 0, 9457 } }, { 1, 0, 236, { 0, 9457 } }, { 1, 0, 236, { 0, 9457 } }, { 1, 0, 1025, { 0, 9538 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_33[] = { { 1, 0, 54, { 1, 8389 } }, { 1, 0, 383, { 1, 8389 } }, { 1, 0, 384, { 1, 8389 } }, { 1, 0, 385, { 1, 8389 } }, { 1, 0, 386, { 1, 8389 } }, { 1, 0, 414, { 1, 8389 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_65[] = { { 1, 0, 249, { 217, 8637 } }, { 1, 0, 250, { 217, 8637 } }, { 1, 0, 251, { 217, 8637 } }, };
|
||||
const SpriteDataB gObjectDefinition_22[] = { { 1, 4, 381, { 108, 8596 } }, { 1, 0, 390, { 107, 8597 } }, { 1, 0, 390, { 1, 8467 } }, { 1, 0, 0, { 0, 0 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_65[] = { { 1, 0, 249, { 217, 8638 } }, { 1, 0, 250, { 217, 8638 } }, { 1, 0, 251, { 217, 8638 } }, };
|
||||
const SpriteDataB gObjectDefinition_22[] = { { 1, 4, 381, { 108, 8597 } }, { 1, 0, 390, { 107, 8598 } }, { 1, 0, 390, { 1, 8467 } }, { 1, 0, 0, { 0, 0 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_54[] = { { 1, 0, 118, { 1, 211 } }, { 1, 0, 391, { 1, 276 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_28[] = { { 1, 0, 355, { 296, 8656 } }, { 1, 0, 355, { 296, 8656 } }, { 1, 0, 355, { 296, 8656 } }, { 1, 0, 355, { 296, 8656 } }, { 1, 0, 355, { 296, 8656 } }, { 1, 0, 356, { 298, 8657 } }, { 1, 0, 357, { 297, 8657 } }, { 1, 0, 358, { 297, 8657 } }, { 1, 0, 359, { 297, 8657 } }, { 1, 0, 360, { 297, 8657 } }, { 1, 0, 361, { 297, 8657 } }, { 1, 0, 362, { 297, 8657 } }, { 1, 0, 363, { 297, 8657 } }, { 1, 0, 364, { 297, 8657 } }, { 1, 0, 365, { 298, 8657 } }, { 1, 0, 354, { 15, 8654 } }, };
|
||||
const SpriteDataB gObjectDefinition_A0[] = { { 1, 0, 433, { 0, 8481 } }, { 1, 0, 434, { 0, 8481 } }, { 1, 0, 433, { 0, 8481 } }, { 1, 0, 434, { 0, 8481 } }, };
|
||||
const SpriteDataB gObjectDefinition_A4[] = { { 1, 0, 438, { 324, 8638 } }, { 1, 0, 439, { 325, 8639 } }, { 1, 0, 440, { 326, 8640 } }, { 1, 0, 441, { 327, 8641 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_28[] = { { 1, 0, 355, { 296, 8657 } }, { 1, 0, 355, { 296, 8657 } }, { 1, 0, 355, { 296, 8657 } }, { 1, 0, 355, { 296, 8657 } }, { 1, 0, 355, { 296, 8657 } }, { 1, 0, 356, { 298, 8658 } }, { 1, 0, 357, { 297, 8658 } }, { 1, 0, 358, { 297, 8658 } }, { 1, 0, 359, { 297, 8658 } }, { 1, 0, 360, { 297, 8658 } }, { 1, 0, 361, { 297, 8658 } }, { 1, 0, 362, { 297, 8658 } }, { 1, 0, 363, { 297, 8658 } }, { 1, 0, 364, { 297, 8658 } }, { 1, 0, 365, { 298, 8658 } }, { 1, 0, 354, { 15, 8655 } }, };
|
||||
const SpriteDataB gObjectDefinition_A0[] = { { 1, 0, 433, { 0, 8482 } }, { 1, 0, 434, { 0, 8482 } }, { 1, 0, 433, { 0, 8482 } }, { 1, 0, 434, { 0, 8482 } }, };
|
||||
const SpriteDataB gObjectDefinition_A4[] = { { 1, 0, 438, { 324, 8639 } }, { 1, 0, 439, { 325, 8640 } }, { 1, 0, 440, { 326, 8641 } }, { 1, 0, 441, { 327, 8642 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_A9[] = { { 1, 0, 2202, { 3, 8354 } }, { 1, 0, 133, { 1, 8356 } }, { 1, 0, 2144, { 3, 8354 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_AA[] = { { 1, 0, 395, { 17, 8644 } }, { 1, 0, 396, { 17, 8644 } }, { 1, 0, 397, { 17, 8644 } }, };
|
||||
const SpriteDataB gObjectDefinition_19[] = { { 1, 0, 41, { 47, 345 } }, { 1, 0, 466, { 340, 8537 } }, { 1, 0, 467, { 341, 8537 } }, { 1, 0, 468, { 342, 8537 } }, { 1, 0, 469, { 343, 8537 } }, { 1, 0, 470, { 344, 8537 } }, { 1, 0, 471, { 345, 8537 } }, { 1, 0, 472, { 346, 8537 } }, { 1, 0, 473, { 347, 8537 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_AA[] = { { 1, 0, 395, { 17, 8645 } }, { 1, 0, 396, { 17, 8645 } }, { 1, 0, 397, { 17, 8645 } }, };
|
||||
const SpriteDataB gObjectDefinition_19[] = { { 1, 0, 41, { 47, 346 } }, { 1, 0, 466, { 340, 8538 } }, { 1, 0, 467, { 341, 8538 } }, { 1, 0, 468, { 342, 8538 } }, { 1, 0, 469, { 343, 8538 } }, { 1, 0, 470, { 344, 8538 } }, { 1, 0, 471, { 345, 8538 } }, { 1, 0, 472, { 346, 8538 } }, { 1, 0, 473, { 347, 8538 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_AD[] = { { 1, 0, 474, { 385, 8192 } }, { 1, 0, 475, { 0, 8192 } }, { 1, 0, 476, { 1, 8192 } }, { 1, 0, 477, { 2, 8192 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_5F[] = { { 1, 0, 130, { 88, 8556 } }, { 1, 4, 483, { 351, 8671 } }, };
|
||||
const SpriteDataB gObjectDefinition_B4[] = { { 1, 0, 495, { 358, 510 } }, { 1, 0, 495, { 357, 510 } }, { 1, 0, 495, { 358, 510 } }, { 1, 0, 495, { 356, 510 } }, };
|
||||
const SpriteDataB gObjectDefinition_BD[] = { { 1, 0, 511, { 359, 510 } }, { 1, 0, 512, { 360, 510 } }, { 1, 0, 513, { 359, 510 } }, { 1, 0, 513, { 360, 510 } }, { 1, 0, 514, { 361, 510 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_5F[] = { { 1, 0, 130, { 88, 8557 } }, { 1, 4, 483, { 351, 8672 } }, };
|
||||
const SpriteDataB gObjectDefinition_B4[] = { { 1, 0, 495, { 358, 511 } }, { 1, 0, 495, { 357, 511 } }, { 1, 0, 495, { 358, 511 } }, { 1, 0, 495, { 356, 511 } }, };
|
||||
const SpriteDataB gObjectDefinition_BD[] = { { 1, 0, 511, { 359, 511 } }, { 1, 0, 512, { 360, 511 } }, { 1, 0, 513, { 359, 511 } }, { 1, 0, 513, { 360, 511 } }, { 1, 0, 514, { 361, 511 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_45[] = { { 1, 0, 2048, { 4, 8396 } }, { 1, 0, 2105, { 4, 8396 } }, };
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_C0[] = { { 1, 0, 2246, { 0, 8514 } }, { 1, 0, 520, { 1, 8515 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_C0[] = { { 1, 0, 2246, { 0, 8515 } }, { 1, 0, 521, { 1, 8516 } }, };
|
||||
#endif
|
||||
const SpriteDataB gObjectDefinition_B3[] = { { 1, 0, 494, { 0, 8387 } }, { 1, 0, 2720, { 0, 8387 } }, };
|
||||
#ifndef EU
|
||||
const SpriteDataB gObjectDefinition_B6[] = { { 1, 0, 502, { 363, 8479 } }, { 1, 0, 519, { 363, 8480 } }, };
|
||||
#endif
|
||||
#ifdef EU
|
||||
const SpriteDataB gObjectDefinition_0[] = { { 1, 0, 0, { 0, 322 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 4, 8513 } }, { 1, 0, 1025, { 4, 8513 } }, { 1, 0, 1025, { 0, 9537 } }, { 1, 0, 1025, { 385, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 520, { 4, 8515 } }, { 1, 0, 1025, { 184, 9537 } }, { 1, 0, 1025, { 185, 9537 } }, { 1, 0, 1025, { 184, 9537 } }, { 1, 0, 1025, { 184, 9537 } }, { 1, 0, 1025, { 187, 9537 } }, { 1, 0, 1025, { 183, 9537 } }, { 1, 0, 1025, { 184, 9537 } }, { 1, 0, 1025, { 186, 9537 } }, { 1, 0, 520, { 4, 9539 } }, { 1, 0, 520, { 0, 9539 } }, { 1, 0, 520, { 4, 9539 } }, { 1, 0, 520, { 1, 9539 } }, { 1, 0, 2057, { 2, 9538 } }, { 1, 0, 2057, { 1, 9538 } }, { 1, 0, 2057, { 0, 9538 } }, { 1, 0, 519, { 2, 9539 } }, { 1, 0, 519, { 1, 9539 } }, { 1, 0, 519, { 0, 9539 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 522, { 22, 9539 } }, { 1, 0, 2082, { 0, 322 } }, { 1, 0, 2246, { 0, 11586 } }, { 1, 0, 2246, { 0, 11586 } }, { 1, 0, 2055, { 0, 11586 } }, { 1, 0, 2073, { 4, 11586 } }, { 1, 0, 1025, { 0, 8513 } }, { 1, 0, 1025, { 4096, 9537 } }, { 1, 0, 521, { 0, 9539 } }, { 1, 0, 1025, { 0, 321 } }, { 1, 0, 1025, { 0, 321 } }, { 1, 0, 1025, { 0, 321 } }, { 1, 0, 1025, { 2, 321 } }, { 1, 0, 524, { 88, 323 } }, { 1, 0, 524, { 88, 323 } }, { 1, 0, 524, { 88, 323 } }, { 1, 0, 524, { 88, 323 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 1025, { 0, 1345 } }, { 1, 0, 523, { 1, 9539 } }, { 1, 0, 523, { 1, 9539 } }, { 1, 0, 523, { 1, 9539 } }, { 1, 0, 1025, { 183, 9537 } }, { 1, 0, 1025, { 190, 9537 } }, { 1, 0, 1025, { 188, 9537 } }, };
|
||||
#else
|
||||
const SpriteDataB gObjectDefinition_0[] = { { 1, 0, 0, { 0, 323 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 0, 0, 0, { 0, 0 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 4, 8514 } }, { 1, 0, 1025, { 4, 8514 } }, { 1, 0, 1025, { 0, 9538 } }, { 1, 0, 1025, { 385, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 521, { 4, 8516 } }, { 1, 0, 1025, { 184, 9538 } }, { 1, 0, 1025, { 185, 9538 } }, { 1, 0, 1025, { 184, 9538 } }, { 1, 0, 1025, { 184, 9538 } }, { 1, 0, 1025, { 187, 9538 } }, { 1, 0, 1025, { 183, 9538 } }, { 1, 0, 1025, { 184, 9538 } }, { 1, 0, 1025, { 186, 9538 } }, { 1, 0, 521, { 4, 9540 } }, { 1, 0, 521, { 0, 9540 } }, { 1, 0, 521, { 4, 9540 } }, { 1, 0, 521, { 1, 9540 } }, { 1, 0, 2057, { 2, 9539 } }, { 1, 0, 2057, { 1, 9539 } }, { 1, 0, 2057, { 0, 9539 } }, { 1, 0, 520, { 2, 9540 } }, { 1, 0, 520, { 1, 9540 } }, { 1, 0, 520, { 0, 9540 } }, { 0, 0, 0, { 0, 0 } }, { 1, 0, 523, { 22, 9540 } }, { 1, 0, 2082, { 0, 323 } }, { 1, 0, 2246, { 0, 11587 } }, { 1, 0, 2246, { 0, 11587 } }, { 1, 0, 2055, { 0, 11587 } }, { 1, 0, 2073, { 4, 11587 } }, { 1, 0, 1025, { 0, 8514 } }, { 1, 0, 1025, { 4096, 9538 } }, { 1, 0, 522, { 0, 9540 } }, { 1, 0, 1025, { 0, 322 } }, { 1, 0, 1025, { 0, 322 } }, { 1, 0, 1025, { 0, 322 } }, { 1, 0, 1025, { 2, 322 } }, { 1, 0, 525, { 88, 324 } }, { 1, 0, 525, { 88, 324 } }, { 1, 0, 525, { 88, 324 } }, { 1, 0, 525, { 88, 324 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 1025, { 0, 1346 } }, { 1, 0, 524, { 1, 9540 } }, { 1, 0, 524, { 1, 9540 } }, { 1, 0, 524, { 1, 9540 } }, { 1, 0, 1025, { 183, 9538 } }, { 1, 0, 1025, { 190, 9538 } }, { 1, 0, 1025, { 188, 9538 } }, };
|
||||
#endif
|
||||
|
||||
#define MULTI_FORM(spriteData_ptr) { 2, 0, 0, {.spriteData=spriteData_ptr} }
|
||||
|
||||
const SpriteDataB gObjectDefinitions[] = {
|
||||
MULTI_FORM(gObjectDefinition_0),
|
||||
{ 1, 0, 2144, { 0, 8360 } },
|
||||
MULTI_FORM(gObjectDefinition_0),
|
||||
{ 1, 0, 0, { 0, 0 } },
|
||||
{ 1, 0, 0, { 0, 10 } },
|
||||
{ 1, 0, 2288, { 1, 8359 } },
|
||||
{ 1, 0, 0, { 0, 8203 } },
|
||||
MULTI_FORM(gObjectDefinition_7),
|
||||
#ifdef EU
|
||||
{ 1, 0, 0, { 10, 476 } },
|
||||
#else
|
||||
{ 1, 0, 0, { 10, 477 } },
|
||||
#endif
|
||||
{ 1, 0, 0, { 1, 202 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_0),
|
||||
{ 1, 0, 25, { 1, 184 } },
|
||||
{ 1, 0, 9, { 3, 172 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_F),
|
||||
{ 1, 0, 2149, { 171, 8359 } },
|
||||
MULTI_FORM(gObjectDefinition_11),
|
||||
#ifdef EU
|
||||
{ 1, 0, 346, { 14, 8655 } },
|
||||
#else
|
||||
{ 1, 0, 346, { 14, 8656 } },
|
||||
#endif
|
||||
{ 1, 0, 121, { 0, 170 } },
|
||||
{ 1, 0, 13, { 2, 8359 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 260, { 1, 466 } },
|
||||
#else
|
||||
{ 1, 0, 260, { 1, 467 } },
|
||||
#endif
|
||||
{ 1, 0, 2137, { 3, 8354 } },
|
||||
{ 1, 1, 347, { 1, 8453 } },
|
||||
MULTI_FORM(gObjectDefinition_19),
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_1B),
|
||||
MULTI_FORM(gObjectDefinition_1C),
|
||||
#ifdef EU
|
||||
{ 1, 0, 42, { 47, 347 } },
|
||||
#else
|
||||
{ 1, 0, 42, { 47, 348 } },
|
||||
#endif
|
||||
{ 1, 0, 2129, { 0, 8375 } },
|
||||
{ 1, 1, 0, { 4096, 9383 } },
|
||||
{ 1, 0, 2144, { 0, 8354 } },
|
||||
{ 1, 0, 2048, { 4, 8358 } },
|
||||
MULTI_FORM(gObjectDefinition_22),
|
||||
{ 1, 0, 258, { 0, 8445 } },
|
||||
MULTI_FORM(gObjectDefinition_24),
|
||||
MULTI_FORM(gObjectDefinition_25),
|
||||
MULTI_FORM(gObjectDefinition_26),
|
||||
{ 1, 0, 0, { 5, 8378 } },
|
||||
MULTI_FORM(gObjectDefinition_28),
|
||||
{ 1, 0, 435, { 1, 8391 } },
|
||||
{ 1, 0, 2086, { 0, 173 } },
|
||||
{ 1, 0, 13, { 46, 8359 } },
|
||||
MULTI_FORM(gObjectDefinition_2C),
|
||||
{ 1, 0, 2202, { 3, 162 } },
|
||||
{ 1, 1, 37, { 5, 193 } },
|
||||
{ 1, 0, 0, { 0, 0 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 2082, { 0, 322 } },
|
||||
{ 1, 0, 402, { 310, 8665 } },
|
||||
#else
|
||||
{ 1, 0, 2082, { 0, 323 } },
|
||||
{ 1, 0, 402, { 310, 8666 } },
|
||||
#endif
|
||||
{ 1, 0, 53, { 1, 8388 } },
|
||||
MULTI_FORM(gObjectDefinition_33),
|
||||
{ 1, 0, 55, { 1, 198 } },
|
||||
MULTI_FORM(gObjectDefinition_35),
|
||||
#ifdef EU
|
||||
{ 1, 0, 27, { 0, 457 } },
|
||||
#else
|
||||
{ 1, 0, 27, { 0, 458 } },
|
||||
#endif
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
{ 1, 4, 1025, { 1, 8319 } },
|
||||
{ 1, 0, 65, { 4, 203 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_3B),
|
||||
{ 1, 0, 1026, { 22, 1 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_3E),
|
||||
#ifdef EU
|
||||
{ 1, 0, 6, { 52, 337 } },
|
||||
#else
|
||||
{ 1, 0, 6, { 52, 338 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_0),
|
||||
{ 1, 0, 177, { 4096, 9383 } },
|
||||
{ 1, 0, 2086, { 0, 173 } },
|
||||
{ 1, 0, 0, { 0, 162 } },
|
||||
{ 1, 0, 400, { 0, 8470 } },
|
||||
MULTI_FORM(gObjectDefinition_45),
|
||||
MULTI_FORM(gObjectDefinition_46),
|
||||
#ifdef EU
|
||||
{ 1, 0, 1025, { 4096, 9537 } },
|
||||
{ 1, 0, 2048, { 0, 8516 } },
|
||||
#else
|
||||
{ 1, 0, 1025, { 4096, 9538 } },
|
||||
{ 1, 0, 2048, { 0, 8517 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_49),
|
||||
#ifdef EU
|
||||
{ 1, 0, 70, { 13, 329 } },
|
||||
#else
|
||||
{ 1, 0, 70, { 13, 330 } },
|
||||
#endif
|
||||
{ 1, 0, 3, { 28, 161 } },
|
||||
MULTI_FORM(gObjectDefinition_4C),
|
||||
MULTI_FORM(gObjectDefinition_4D),
|
||||
#ifdef EU
|
||||
{ 1, 0, 93, { 1, 8546 } },
|
||||
#else
|
||||
{ 1, 0, 93, { 1, 8547 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_4F),
|
||||
{ 1, 0, 116, { 154, 210 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 117, { 114, 8672 } },
|
||||
#else
|
||||
{ 1, 0, 117, { 114, 8673 } },
|
||||
#endif
|
||||
{ 1, 1, 0, { 0, 0 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_54),
|
||||
{ 1, 0, 1025, { 115, 8321 } },
|
||||
MULTI_FORM(gObjectDefinition_56),
|
||||
#ifdef EU
|
||||
{ 1, 0, 120, { 5, 330 } },
|
||||
#else
|
||||
{ 1, 0, 120, { 5, 331 } },
|
||||
#endif
|
||||
{ 1, 0, 1026, { 132, 8326 } },
|
||||
MULTI_FORM(gObjectDefinition_59),
|
||||
MULTI_FORM(gObjectDefinition_5A),
|
||||
#ifdef EU
|
||||
{ 1, 0, 125, { 86, 359 } },
|
||||
#else
|
||||
{ 1, 0, 125, { 86, 360 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_5C),
|
||||
MULTI_FORM(gObjectDefinition_5D),
|
||||
{ 1, 0, 486, { 3, 9347 } },
|
||||
MULTI_FORM(gObjectDefinition_5F),
|
||||
#ifdef EU
|
||||
{ 1, 1, 454, { 0, 8598 } },
|
||||
#else
|
||||
{ 1, 1, 454, { 0, 8599 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_61),
|
||||
#ifdef EU
|
||||
{ 1, 0, 132, { 121, 8534 } },
|
||||
#else
|
||||
{ 1, 0, 132, { 121, 8535 } },
|
||||
#endif
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_64),
|
||||
MULTI_FORM(gObjectDefinition_65),
|
||||
{ 1, 0, 134, { 5, 215 } },
|
||||
MULTI_FORM(gObjectDefinition_67),
|
||||
MULTI_FORM(gObjectDefinition_68),
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_6A),
|
||||
MULTI_FORM(gObjectDefinition_6B),
|
||||
#ifdef EU
|
||||
{ 1, 0, 0, { 10, 476 } },
|
||||
#else
|
||||
{ 1, 0, 0, { 10, 477 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_6D),
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_6F),
|
||||
{ 1, 0, 2181, { 0, 167 } },
|
||||
MULTI_FORM(gObjectDefinition_71),
|
||||
MULTI_FORM(gObjectDefinition_72),
|
||||
#ifdef EU
|
||||
{ 1, 0, 213, { 2, 485 } },
|
||||
{ 1, 0, 221, { 4, 461 } },
|
||||
#else
|
||||
{ 1, 0, 213, { 2, 486 } },
|
||||
{ 1, 0, 221, { 4, 462 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_75),
|
||||
MULTI_FORM(gObjectDefinition_76),
|
||||
{ 1, 0, 1025, { 47, 138 } },
|
||||
MULTI_FORM(gObjectDefinition_78),
|
||||
{ 1, 0, 0, { 1, 8328 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 234, { 1, 450 } },
|
||||
#else
|
||||
{ 1, 0, 234, { 1, 451 } },
|
||||
#endif
|
||||
{ 1, 0, 238, { 1, 8435 } },
|
||||
MULTI_FORM(gObjectDefinition_7C),
|
||||
MULTI_FORM(gObjectDefinition_7D),
|
||||
{ 1, 1, 256, { 5, 248 } },
|
||||
MULTI_FORM(gObjectDefinition_7F),
|
||||
#ifdef EU
|
||||
{ 1, 1, 306, { 86, 8581 } },
|
||||
{ 1, 1, 307, { 86, 8582 } },
|
||||
#else
|
||||
{ 1, 1, 306, { 86, 8582 } },
|
||||
{ 1, 1, 307, { 86, 8583 } },
|
||||
#endif
|
||||
{ 1, 0, 1028, { 287, 132 } },
|
||||
{ 1, 0, 239, { 1, 8436 } },
|
||||
MULTI_FORM(gObjectDefinition_84),
|
||||
MULTI_FORM(gObjectDefinition_85),
|
||||
{ 1, 0, 315, { 289, 8452 } },
|
||||
MULTI_FORM(gObjectDefinition_87),
|
||||
{ 1, 0, 1028, { 295, 8325 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 344, { 218, 8676 } },
|
||||
#else
|
||||
{ 1, 0, 344, { 218, 8677 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_8A),
|
||||
#ifdef EU
|
||||
{ 1, 0, 349, { 87, 8586 } },
|
||||
#else
|
||||
{ 1, 0, 349, { 87, 8587 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_8C),
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 373, { 1, 8663 } },
|
||||
{ 1, 0, 376, { 1, 9688 } },
|
||||
#else
|
||||
{ 1, 0, 373, { 1, 8664 } },
|
||||
{ 1, 0, 376, { 1, 9689 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_91),
|
||||
MULTI_FORM(gObjectDefinition_92),
|
||||
{ 1, 0, 377, { 0, 8458 } },
|
||||
{ 1, 0, 389, { 5, 8466 } },
|
||||
MULTI_FORM(gObjectDefinition_95),
|
||||
MULTI_FORM(gObjectDefinition_96),
|
||||
MULTI_FORM(gObjectDefinition_97),
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
{ 1, 0, 2251, { 1, 8465 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 403, { 311, 8681 } },
|
||||
{ 1, 0, 407, { 319, 8487 } },
|
||||
{ 1, 0, 413, { 10, 8523 } },
|
||||
{ 1, 0, 19, { 6, 8666 } },
|
||||
{ 1, 0, 424, { 4, 8683 } },
|
||||
{ 1, 0, 425, { 0, 8480 } },
|
||||
#else
|
||||
{ 1, 0, 403, { 311, 8682 } },
|
||||
{ 1, 0, 407, { 319, 8488 } },
|
||||
{ 1, 0, 413, { 10, 8524 } },
|
||||
{ 1, 0, 19, { 6, 8667 } },
|
||||
{ 1, 0, 424, { 4, 8684 } },
|
||||
{ 1, 0, 425, { 0, 8481 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_A0),
|
||||
#ifdef EU
|
||||
{ 1, 0, 436, { 323, 8667 } },
|
||||
{ 1, 0, 2560, { 0, 9541 } },
|
||||
{ 1, 0, 437, { 20, 8685 } },
|
||||
#else
|
||||
{ 1, 0, 436, { 323, 8668 } },
|
||||
{ 1, 0, 2560, { 0, 9542 } },
|
||||
{ 1, 0, 437, { 20, 8686 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_A4),
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 443, { 2, 8491 } },
|
||||
#else
|
||||
{ 1, 0, 443, { 2, 8492 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_0),
|
||||
MULTI_FORM(gObjectDefinition_A9),
|
||||
MULTI_FORM(gObjectDefinition_AA),
|
||||
#ifdef EU
|
||||
{ 1, 0, 461, { 1, 8496 } },
|
||||
#else
|
||||
{ 1, 0, 461, { 1, 8497 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_0),
|
||||
MULTI_FORM(gObjectDefinition_AD),
|
||||
#ifdef EU
|
||||
{ 1, 0, 12, { 5, 8670 } },
|
||||
#else
|
||||
{ 1, 0, 12, { 5, 8671 } },
|
||||
#endif
|
||||
{ 1, 0, 416, { 320, 8474 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 481, { 4, 501 } },
|
||||
{ 1, 0, 482, { 350, 8500 } },
|
||||
{ 1, 0, 484, { 3, 8501 } },
|
||||
#else
|
||||
{ 1, 0, 481, { 4, 502 } },
|
||||
{ 1, 0, 482, { 350, 8501 } },
|
||||
{ 1, 0, 484, { 3, 8502 } },
|
||||
#endif
|
||||
MULTI_FORM(gObjectDefinition_B3),
|
||||
MULTI_FORM(gObjectDefinition_B4),
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 502, { 320, 8479 } },
|
||||
#else
|
||||
MULTI_FORM(gObjectDefinition_B6),
|
||||
#endif
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
#ifdef EU
|
||||
{ 1, 0, 503, { 1, 8684 } },
|
||||
#else
|
||||
{ 1, 0, 503, { 1, 8685 } },
|
||||
#endif
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
{ 0, 0, 0, { 0, 0 } },
|
||||
#ifdef EU
|
||||
{ 1, 4, 505, { 4, 8645 } },
|
||||
#else
|
||||
{ 1, 4, 505, { 4, 8646 } },
|
||||
#endif
|
||||
{ 1, 0, 507, { 0, 0 } },
|
||||
MULTI_FORM(gObjectDefinition_BD),
|
||||
#ifdef EU
|
||||
{ 1, 0, 515, { 5, 9533 } },
|
||||
#else
|
||||
{ 1, 0, 515, { 5, 9534 } },
|
||||
#endif
|
||||
{ 1, 0, 2303, { 0, 8192 } },
|
||||
MULTI_FORM(gObjectDefinition_C0),
|
||||
{ 1, 0, 1025, { 4118, 9218 } },
|
||||
};
|
||||
// clang-format on
|
||||
@@ -1,39 +0,0 @@
|
||||
#include "entity.h"
|
||||
#include "definitions.h"
|
||||
|
||||
// clang-format off
|
||||
#define MULTI_FORM(index, unk) { 0xff, index, unk, 0, 0, 0 }
|
||||
|
||||
const SpriteDataC gPlayerItemDefinitions[] = {
|
||||
{ 0, 0, 16384, 1, SPRITE_0, 0 }, // DeleteEntity
|
||||
MULTI_FORM(0, 1), // PlayerItemSword
|
||||
{ 1, 12, 5644, 169, SPRITE_166, 192 }, // PlayerItemBomb
|
||||
{ 0, 3, 5130, 118, SPRITE_22, 0 }, // PlayerItem3
|
||||
{ 1, 3, 5391, 171, SPRITE_21, 203 }, // PlayerItemBow
|
||||
MULTI_FORM(2, 13), // PlayerItemShield
|
||||
{ 0, 0, 1792, 1, SPRITE_18, 0 }, // PlayerItemLantern
|
||||
MULTI_FORM(0, 1), // PlayerItemNulled
|
||||
{ 1, 0, 16384, 1, SPRITE_ITEMGUSTJAR, 0 }, // PlayerItemGustJar
|
||||
{ 4, 0, 16384, 1, SPRITE_20, 0 }, // PlayerItemPacciCane
|
||||
{ 0, 0, 16384, 1, SPRITE_0, 0 }, // DeleteEntity
|
||||
{ 0, 0, 16384, 1, SPRITE_0, 0 }, // DeleteEntity
|
||||
MULTI_FORM(1, 1), // PlayerItemC
|
||||
MULTI_FORM(0, 1), // PlayerItemCellOverwriteSet
|
||||
{ 0, 0, 7936, 1, SPRITE_19, 0 }, // PlayerItemSwordSpin
|
||||
{ 0, 4, 8204, 152, SPRITE_166, 0x8000 }, // PlayerItemSwordBeam
|
||||
{ 0, 0, 4864, 109, SPRITE_0, 0 }, // PlayerItem10
|
||||
{ 3, 0, 7183, 150, SPRITE_166, 0 }, // PlayerItem11
|
||||
{ 4, 0, 7424, 1, SPRITE_166, 57 }, // PlayerItem12
|
||||
{ 0, 3, 5900, 1, SPRITE_POT, 0 }, // PlayerItem13
|
||||
{ 1, 4, 8460, 152, SPRITE_OBJECT43, 0x8000 }, // PlayerItem14
|
||||
{ 1, 4, 8204, 152, SPRITE_166, 0x8000 }, // PlayerItem15
|
||||
{ 1, 4, 1036, 151, SPRITE_14, 0 }, // PlayerItemSwordBeam
|
||||
{ 1, 4, 1036, 151, SPRITE_14, 0 } // PlayerItemNulled2
|
||||
};
|
||||
|
||||
const SpriteDataC gPlayerItemDefinition_0[] = { { 1, 4, 1036, 151, SPRITE_14, 0 }, { 2, 4, 1292, 151, SPRITE_15, 0 }, { 0, 4, 1292, 151, SPRITE_15, 0 }, { 1, 4, 1292, 151, SPRITE_15, 0 }, { 4, 4, 1292, 151, SPRITE_15, 0 }, { 4, 4, 1548, 151, SPRITE_16, 0 }, };
|
||||
const SpriteDataC gPlayerItemDefinition_1[] = { { 1, 4, 4108, 151, SPRITE_14, 0 }, { 2, 4, 4364, 151, SPRITE_15, 0 }, { 0, 4, 4364, 151, SPRITE_15, 0 }, { 1, 4, 4364, 151, SPRITE_15, 0 }, { 4, 4, 4364, 151, SPRITE_15, 0 }, { 4, 4, 4620, 151, SPRITE_16, 0 }, };
|
||||
const SpriteDataC gPlayerItemDefinition_2[] = { { 1, 0, 524, 153, SPRITE_17, 0 }, { 1, 0, 780, 153, SPRITE_17, 0 }, };
|
||||
|
||||
const SpriteDataC* const gUnk_08126ED8[] = {gPlayerItemDefinition_0, gPlayerItemDefinition_1, gPlayerItemDefinition_2, };
|
||||
// clang-format on
|
||||
Reference in New Issue
Block a user