diff options
author | M <No Email> | 2017-07-09 17:51:39 +0200 |
---|---|---|
committer | M <No Email> | 2017-07-09 17:51:39 +0200 |
commit | 60fb46c82b9432c29f5c94dc6680d9d02365f790 (patch) | |
tree | 59c52f954d227fd08e190fa04c7e519cb2bdde6f | |
parent | b4d7dffd1cb3bcaaf0cebbbbe42cb6b70d02bef8 (diff) |
Labelled BallSaverIcon functions
10 files changed, 40 insertions, 40 deletions
diff --git a/engine/pinball_game/ball_saver/ball_saver_20.asm b/engine/pinball_game/ball_saver/ball_saver_20.asm index db4c55b..78dd4ff 100755 --- a/engine/pinball_game/ball_saver/ball_saver_20.asm +++ b/engine/pinball_game/ball_saver/ball_saver_20.asm @@ -2,7 +2,7 @@ Start20SecondSaverTimer: ; 0xdbba ld a, $1
ld [wBallSaverIconOn], a
ld a, $ff
- ld [wd4a2], a
+ ld [wBallSaverFlashRate], a
ld a, 59
ld [wBallSaverTimerFrames], a
ld a, 20
diff --git a/engine/pinball_game/ball_saver/ball_saver_30.asm b/engine/pinball_game/ball_saver/ball_saver_30.asm index be1dda9..8df9643 100755 --- a/engine/pinball_game/ball_saver/ball_saver_30.asm +++ b/engine/pinball_game/ball_saver/ball_saver_30.asm @@ -2,7 +2,7 @@ Start30SecondSaverTimer: ; 0xef35 ld a, $0
ld [wBallSaverIconOn], a
ld a, $ff
- ld [wd4a2], a
+ ld [wBallSaverFlashRate], a
ld a, 59
ld [wBallSaverTimerFrames], a
ld a, 30
diff --git a/engine/pinball_game/ball_saver/ball_saver_60.asm b/engine/pinball_game/ball_saver/ball_saver_60.asm index 9b6b5ef..e26934f 100755 --- a/engine/pinball_game/ball_saver/ball_saver_60.asm +++ b/engine/pinball_game/ball_saver/ball_saver_60.asm @@ -2,7 +2,7 @@ Start60SecondSaverTimer: ; 0xef4f ld a, $0
ld [wBallSaverIconOn], a
ld a, $ff
- ld [wd4a2], a
+ ld [wBallSaverFlashRate], a
ld a, 59
ld [wBallSaverTimerFrames], a
ld a, 60
diff --git a/engine/pinball_game/ball_saver/ball_saver_90.asm b/engine/pinball_game/ball_saver/ball_saver_90.asm index 7acda2c..6f5dc25 100755 --- a/engine/pinball_game/ball_saver/ball_saver_90.asm +++ b/engine/pinball_game/ball_saver/ball_saver_90.asm @@ -2,7 +2,7 @@ Start90SecondSaverTimer: ; 0xef69 ld a, $0
ld [wBallSaverIconOn], a
ld a, $ff
- ld [wd4a2], a
+ ld [wBallSaverFlashRate], a
ld a, 59
ld [wBallSaverTimerFrames], a
ld a, 90
diff --git a/engine/pinball_game/ball_saver/ball_saver_catchem_mode.asm b/engine/pinball_game/ball_saver/ball_saver_catchem_mode.asm index 2d1dbdd..5e308d8 100755 --- a/engine/pinball_game/ball_saver/ball_saver_catchem_mode.asm +++ b/engine/pinball_game/ball_saver/ball_saver_catchem_mode.asm @@ -8,7 +8,7 @@ InitBallSaverForCatchEmMode: ; 0xdbd4 ld a, $0
ld [wBallSaverIconOn], a
ld a, $ff
- ld [wd4a2], a
+ ld [wBallSaverFlashRate], a
ld a, 59
ld [wBallSaverTimerFrames], a
ld a, 60
@@ -43,9 +43,9 @@ RestoreBallSaverAfterCatchEmMode: ; 0xdc00 ld c, $ff
.asm_dc34
ld a, c
- ld [wd4a2], a
+ ld [wBallSaverFlashRate], a
ld a, [wCurrentStage]
bit 0, a
ret z
- callba Func_14707
+ callba DrawBallSaverIcon
ret
diff --git a/engine/pinball_game/load_stage_data/load_blue_field.asm b/engine/pinball_game/load_stage_data/load_blue_field.asm index be4ffe0..1413bd4 100755 --- a/engine/pinball_game/load_stage_data/load_blue_field.asm +++ b/engine/pinball_game/load_stage_data/load_blue_field.asm @@ -20,7 +20,7 @@ _LoadStageDataBlueFieldBottom: ; 0x1c191 call Func_1c305
call Func_1c3ee
callba Func_14746
- callba Func_14707
+ callba DrawBallSaverIcon
call Func_1c235
call Func_1c21e
call Func_1e8f6
diff --git a/engine/pinball_game/load_stage_data/load_red_field.asm b/engine/pinball_game/load_stage_data/load_red_field.asm index 2cf7296..63a7e54 100755 --- a/engine/pinball_game/load_stage_data/load_red_field.asm +++ b/engine/pinball_game/load_stage_data/load_red_field.asm @@ -19,7 +19,7 @@ _LoadStageDataRedFieldBottom: ; 0x1401c call Func_1414b
call Func_14234
call Func_14746
- call Func_14707
+ call DrawBallSaverIcon
call Func_140f9
call Func_16878
call Func_140e2
diff --git a/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm b/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm index 1cabbd8..cd13316 100755 --- a/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm +++ b/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm @@ -14,7 +14,7 @@ ResolveBlueFieldTopGameObjectCollisions: ; 0x1c715 call Func_1e9c0
call UpdateForceFieldDirection
call Func_1f18a
- callba Func_146a9
+ callba UpdateBallSaverState
call Func_1f27b
call Func_1df15
callba HandleExtraBall
@@ -39,7 +39,7 @@ ResolveBlueFieldBottomGameObjectCollisions: ; 0x1c769 call Func_1ea0a
call UpdateForceFieldDirection
callba Func_14733
- callba Func_146a2
+ callba UpdateBallSaver
call Func_1f261
call Func_1de93
callba HandleExtraBall
diff --git a/engine/pinball_game/object_collision/red_stage_resolve_collision.asm b/engine/pinball_game/object_collision/red_stage_resolve_collision.asm index ac5ead8..69b924a 100755 --- a/engine/pinball_game/object_collision/red_stage_resolve_collision.asm +++ b/engine/pinball_game/object_collision/red_stage_resolve_collision.asm @@ -13,7 +13,7 @@ ResolveRedFieldTopGameObjectCollisions: ; 0x1460e call ResolveDittoSlotCollision
call Func_161e0
call Func_164e3
- call Func_146a9
+ call UpdateBallSaverState
call Func_174ea
call Func_148cf
callba HandleExtraBall
@@ -39,39 +39,39 @@ ResolveRedFieldBottomGameObjectCollisions: ; 0x14652 call Func_161af
call Func_164e3
call Func_14733
- call Func_146a2
+ call UpdateBallSaver
call Func_174d0
callba HandleExtraBall
ld a, $0
callba Func_10000
ret
-Func_146a2: ; 0x146a2
- call Func_146a9
- call nz, Func_14707
+UpdateBallSaver: ; 0x146a2
+ call UpdateBallSaverState
+ call nz, DrawBallSaverIcon ;redraw icon if its state changed
ret
-Func_146a9: ; 0x146a9
+UpdateBallSaverState: ; 0x146a9
ld a, [wBallSaverTimerFrames]
ld hl, wBallSaverTimerSeconds
- or [hl] ;if both the number of frames and number of seconds left is 0, skip
+ or [hl] ;skip if timer ran out
ret z
ld a, [wBallXPos + 1]
- cp 154 ;if high? Byte of ball X pos is >= 154, jump ahead
- jr nc, .asm_146e8
+ cp 154 ;if high? Byte of ball X pos is >= 154, don't update timers
+ jr nc, .SkipSecondsOrFramesUpdate
ld a, [wBallSaverTimerFrames]
dec a
ld [wBallSaverTimerFrames], a
bit 7, a
- jr z, .asm_146e8
- ld a, 59
+ jr z, .SkipSecondsOrFramesUpdate
+ ld a, 59 ;if frames underflowed, set to 59 and decrement second
ld [wBallSaverTimerFrames], a
ld a, [hl]
dec a
bit 7, a
- jr nz, .asm_146cf
+ jr nz, .DontClampSeconds ;if seconds would underflow, keep it at 0
ld [hl], a
-.asm_146cf
+.DontClampSeconds
inc a
ld c, $0
cp $2
@@ -85,30 +85,30 @@ Func_146a9: ; 0x146a9 ld c, $ff
.asm_146e4
ld a, c
- ld [wd4a2], a
-.asm_146e8
- ld a, [wd4a2]
+ ld [BallSaverFlashRate], a
+.SkipSecondsOrFramesUpdate
+ ld a, [BallSaverFlashRate]
ld c, $0
and a
jr z, .asm_146fe
ld c, $1
cp $ff
- jr z, .asm_146fe
+ jr z, .asm_146fe
ld hl, hNumFramesDropped
and [hl]
- jr z, .asm_146fe
+ jr z, .asm_146fe ; hNumFramesDropped used as timer for flashing
ld c, $0
.asm_146fe
ld a, [wBallSaverIconOn]
- cp c
+ cp c ;did the icon state change ?
ld a, c
ld [wBallSaverIconOn], a
ret
-Func_14707: ; 0x14707
+DrawBallSaverIcon: ; 0x14707
ld a, [wBallSaverIconOn]
and a
- jr nz, .asm_1471c
+ jr nz, .DrawIconOn
ld a, BANK(BgTileData_1172b)
ld hl, BgTileData_1172b
deCoord 8, 13, vBGMap
@@ -116,7 +116,7 @@ Func_14707: ; 0x14707 call LoadOrCopyVRAMData
ret
-.asm_1471c
+.DrawIconOn
ld a, BANK(BgTileData_1472f)
ld hl, BgTileData_1472f
deCoord 8, 13, vBGMap
@@ -124,10 +124,10 @@ Func_14707: ; 0x14707 call LoadOrCopyVRAMData
ret
-BgTileData_1172b:
+BgTileData_1172b: ;BallSaverIconOffSprite
db $AA, $AB, $AC, $AD
-BgTileData_1472f:
+BgTileData_1472f: ;BallSaverIconOnSprite
db $B4, $B5, $B6, $B7
Func_14733: ; 0x14733
@@ -135,13 +135,13 @@ Func_14733: ; 0x14733 ld a, [wCurBonusMultiplier]
and a
jr z, .asm_1473d
- ld c, $1
-.asm_1473d
- ld a, [wd4a9]
+ ld c, $1 ; set c=1 if a >0
+.asm_1473d ;
+ ld a, [wd4a9] ;
cp c
ld a, c
ld [wd4a9], a
- ret z
+ ret z ; ret if a=c
; fall through
Func_14746: ; 0x14746
@@ -195,7 +195,7 @@ wd49f:: ; 0xd49f wBallSaverIconOn:: ; 0xd4a1 ds $1 -wd4a2:: ; 0xd4a2 +wBallSaverFlashRate:: ; 0xd4a2 ds $1 wBallSaverTimerFrames:: ; 0xd4a3 |