Extend profiles from 280 to 312 bytes with legacy compatibility. Keep tower relics run-local and share the profile bankroll.
95 lines
2.4 KiB
PHP
95 lines
2.4 KiB
PHP
include src_graphics\artifact_system.inc
|
|
|
|
DrawCharmsHUD PROC uses ebx esi edi, drawX:DWORD, drawY:DWORD
|
|
local curX:DWORD, tempBuf[16]:BYTE
|
|
|
|
cmp tournamentMode,0
|
|
jne hud_done
|
|
mov eax, charmCloverUses
|
|
or eax, charmHorseshoeUses
|
|
or eax, charmSkullUses
|
|
or eax, charmDevilUses
|
|
test eax, eax
|
|
jz hud_done
|
|
|
|
mov eax, drawX
|
|
mov curX, eax
|
|
|
|
; 1. Clover Badge
|
|
test charmEnabledMask3D,1
|
|
jz check_horse_hud
|
|
cmp charmCloverUses, 0
|
|
jle check_horse_hud
|
|
|
|
invoke DrawString8x8, curX, drawY, OFFSET badgeCloverPrefix, 0080FF80h
|
|
add curX, 32
|
|
invoke FormatNumber, charmCloverUses, ADDR tempBuf
|
|
invoke DrawString8x8, curX, drawY, ADDR tempBuf, 00FFFFFFh
|
|
cmp charmCloverUses, 10
|
|
jb @F
|
|
add curX, 8
|
|
@@:
|
|
add curX, 8
|
|
invoke DrawString8x8, curX, drawY, OFFSET badgeCloseBracket, 0080FF80h
|
|
add curX, 16
|
|
|
|
check_horse_hud:
|
|
; 2. Horseshoe Badge
|
|
test charmEnabledMask3D,2
|
|
jz check_skull_hud
|
|
cmp charmHorseshoeUses, 0
|
|
jle check_skull_hud
|
|
|
|
invoke DrawString8x8, curX, drawY, OFFSET badgeHorsePrefix, 00FFE060h
|
|
add curX, 32
|
|
invoke FormatNumber, charmHorseshoeUses, ADDR tempBuf
|
|
invoke DrawString8x8, curX, drawY, ADDR tempBuf, 00FFFFFFh
|
|
cmp charmHorseshoeUses, 10
|
|
jb @F
|
|
add curX, 8
|
|
@@:
|
|
add curX, 8
|
|
invoke DrawString8x8, curX, drawY, OFFSET badgeCloseBracket, 00FFE060h
|
|
add curX, 16
|
|
|
|
check_skull_hud:
|
|
; 3. Skull Badge
|
|
test charmEnabledMask3D,4
|
|
jz check_devil_hud
|
|
cmp charmSkullUses, 0
|
|
jle check_devil_hud
|
|
|
|
invoke DrawString8x8, curX, drawY, OFFSET badgeSkullPrefix, 0080FFFFh
|
|
add curX, 32
|
|
invoke FormatNumber, charmSkullUses, ADDR tempBuf
|
|
invoke DrawString8x8, curX, drawY, ADDR tempBuf, 00FFFFFFh
|
|
cmp charmSkullUses, 10
|
|
jb @F
|
|
add curX, 8
|
|
@@:
|
|
add curX, 8
|
|
invoke DrawString8x8, curX, drawY, OFFSET badgeCloseBracket, 0080FFFFh
|
|
add curX, 16
|
|
|
|
check_devil_hud:
|
|
; 4. Devil Contract Badge
|
|
test charmEnabledMask3D,8
|
|
jz hud_done
|
|
cmp charmDevilUses, 0
|
|
jle hud_done
|
|
|
|
invoke DrawString8x8, curX, drawY, OFFSET badgeDevilPrefix, 00FF6060h
|
|
add curX, 32
|
|
invoke FormatNumber, charmDevilUses, ADDR tempBuf
|
|
invoke DrawString8x8, curX, drawY, ADDR tempBuf, 00FFFFFFh
|
|
cmp charmDevilUses, 10
|
|
jb @F
|
|
add curX, 8
|
|
@@:
|
|
add curX, 8
|
|
invoke DrawString8x8, curX, drawY, OFFSET badgeCloseBracket, 00FF6060h
|
|
add curX, 16
|
|
|
|
hud_done:
|
|
ret
|
|
DrawCharmsHUD ENDP
|