-==-
!
ASM - Costume-specific Hitbox Display Toggles
Assign devmode hitbox display to specific character costumes without devmode
Edit <costume_hitbox_display_toggles> to customize.
[Punkline]
<costume_hitbox_display_toggles>
# add together any combination of the following for each character
# +01 = toggle display for default costume
# +02 = toggle display for costume 1
# +04 = toggle display for costume 2
# +08 = toggle display for costume 3
# +10 = toggle display for costume 4
00 # Mario
00 # Fox
00 # Captain Falcon
00 # Donkey Kong
00 # Kirby
00 # Bowser
00 # Link
00 # Sheik
00 # Ness
00 # Peach
00 # Popo
00 # Nana
00 # Pikachu
00 # Samus
00 # Yoshi
00 # Jigglypuff
00 # Mewtwo
00 # Luigi
00 # Marth
00 # Zelda
00 # Young Link
00 # Dr. Mario
00 # Falco
00 # Pichu
00 # Mr. Game and Watch
00 # Ganondorf
00 # Roy
00 # Master Hand
00 # Crazy Hand
00 # Wireframe Male
00 # Wireframe Female
00 # Giga Bowser
1.02 ------ 80171af0 --- 8001000c -> Branch
lis r3, <<costume_hitbox_display_toggles>>@h
lwz r4, -0x3e74(r13)
ori r3, r3, <<costume_hitbox_display_toggles>>@l
lwz r4, 0x20(r4)
# r3 = bools index base
# r4 = first player GObj
_for_each_player:
cmpwi r4, 0
bge- _return
# exit loop when end of player GObj chain is reached
lwz r5, 0x2C(r4)
lwz r0, 0x4(r5)
# r5 = character data
# r0 = Character ID
lbzx r6, r3, r0
lbz r0, 0x619(r5)
# r6 = bools for this character
# r0 = Costume ID
srw r6, r6, r0
lbz r0, 0x21FC(r5)
rlwimi r0, r6, 1, 0x2
stb r0, 0x21FC(r5)
lwz r4, 0x8(r4)
b _for_each_player
# store option bit as devmode collision bubble display flag
_return:
lwz r0, 0x000C(sp)
.long 0