summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorxCrystal <rgr.crystal@gmail.com>2018-03-09 23:12:29 +0100
committerxCrystal <rgr.crystal@gmail.com>2018-03-09 23:12:29 +0100
commit25f524cf781a99ef8b6a74e8e2648d9f235a0baa (patch)
tree1da62390171264b4ae49f093ed8896080ea6979c /src
parent072b2daece166792cbe332cef55e0bef419f306e (diff)
PrintPlayAreaCardAttachedEnergies
Diffstat (limited to 'src')
-rw-r--r--src/constants/text_constants.asm1
-rw-r--r--src/engine/bank1.asm55
2 files changed, 53 insertions, 3 deletions
diff --git a/src/constants/text_constants.asm b/src/constants/text_constants.asm
index 6df1c3d..3c93cdf 100644
--- a/src/constants/text_constants.asm
+++ b/src/constants/text_constants.asm
@@ -48,4 +48,5 @@ done EQUS "db TX_END"
charmap "7>", $27
charmap "8>", $28
charmap "9>", $29
+ charmap "+>", $2b
charmap "PRIZE_ICON>", $30 ; icon displayed along with no. of prizes in duel screen
diff --git a/src/engine/bank1.asm b/src/engine/bank1.asm
index cf9f4d4..9cce5b4 100644
--- a/src/engine/bank1.asm
+++ b/src/engine/bank1.asm
@@ -1908,8 +1908,8 @@ DrawDuelHUD: ; 5093 (1:5093)
ld b, [hl]
inc hl
ld c, [hl]
- ld de, $900
- call $63e6
+ lb de, 9, PLAY_AREA_ARENA
+ call PrintPlayAreaCardAttachedEnergies
; print HP bar
ld a, DUELVARS_ARENA_CARD
@@ -3021,7 +3021,56 @@ MenuParameters_60c6: ; 60c6 (1:60c6)
db $00 ; tile behind cursor
dw $60ce ; function pointer if non-0
- INCROM $60ce, $6785
+ INCROM $60ce, $63e6
+
+; print the symbols of the attached energies of a turn holder's play area card
+; input:
+; - e: PLAY_AREA_*
+; - b, c: where to print (x, y)
+; - wAttachedEnergies and wTotalAttachedEnergies
+PrintPlayAreaCardAttachedEnergies: ; 63e6 (1:63e6)
+ push bc
+ call GetPlayAreaCardAttachedEnergies
+ ld hl, wDefaultText
+ push hl
+ ld c, NUM_TYPES
+ xor a
+.empty_loop
+ ld [hli], a
+ dec c
+ jr nz, .empty_loop
+ pop hl
+ ld de, wAttachedEnergies
+ lb bc, LOW("<FIRE>"), NUM_TYPES - 1
+.next_color
+ ld a, [de] ; energy count of current color
+ inc de
+ inc a
+ jr .check_amount
+.has_energy
+ ld [hl], b
+ inc hl
+.check_amount
+ dec a
+ jr nz, .has_energy
+ inc b
+ dec c
+ jr nz, .next_color
+ ld a, [wTotalAttachedEnergies]
+ cp 9
+ jr c, .place_tiles
+ ld a, LOW("<+>")
+ ld [wDefaultText + 7], a
+.place_tiles
+ pop bc
+ call BCCoordToBGMap0Address
+ ld hl, wDefaultText
+ ld b, NUM_TYPES
+ call SafeCopyDataHLtoDE
+ ret
+; 0x6423
+
+ INCROM $6423, $6785
Func_6785: ; 6785 (1:6785)
call EnableSRAM