Selectable change of wind power (once per turn or round).

This commit is contained in:
Pecusx
2023-01-16 09:53:29 +01:00
parent 9ec78928f1
commit 33b962725d
4 changed files with 23 additions and 3 deletions
+11 -3
View File
@@ -26,10 +26,12 @@
;---------------------------------------------------
icl 'definitions.asm'
;---------------------------------------------------
FirstZpageVariable = $5B
FirstZpageVariable = $5A
.zpvar DliColorBack .byte = FirstZpageVariable
.zpvar GradientNr .byte
.zpvar GradientColors .word
.zpvar WindChangeInRound .byte ; wind change after each turn (not round only) flag - (0 - round only, >0 - each turn)
.zpvar JoystickNumber .byte
.zpvar xdraw .word ;= $64 ;variable X for plot
.zpvar ydraw .word ;variable Y for plot (like in Atari Basic - Y=0 in upper right corner of the screen)
@@ -883,8 +885,14 @@ NoPlayerNoDeath
inc:lda TankSequencePointer
cmp NumberOfPlayers
sne:mva #0 TankSequencePointer
bne NotLastPlayerInRound
mva #0 TankSequencePointer
lda WindChangeInRound
beq NoWindChangeNow
jsr GetRandomWind ; wind change after each turn (not round only)
NoWindChangeNow
NotLastPlayerInRound
jmp MainRoundLoop
.endp
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+12
View File
@@ -63,6 +63,10 @@
mva #0 OptionsY
OptionsMainLoop
lda WindChangeInRound
sta OptionsHere+126
jsr OptionsInversion
jsr getkey
bit escFlag
@@ -119,6 +123,14 @@ OptionsNoTab
jmp OptionsMainLoop
.endp
.proc SelectNextGradient
lda OptionsY ; if "Wind" option selected
cmp #$03
bne NotWind
lda WindChangeInRound ; wind change after each turn (not round only) flag
eor #$1f ; '?' character
sta WindChangeInRound
rts
NotWind
ldy GradientNr
iny
cpy #$03