mirror of
https://github.com/Pecusx/scorch_src.git
synced 2026-05-21 06:39:40 +02:00
Game Over "animation" - TEST ONLY!
This commit is contained in:
+5
-1
@@ -36,7 +36,11 @@ TanksWeaponsTableL
|
||||
.by <TanksWeapon1,<TanksWeapon2,<TanksWeapon3,<TanksWeapon4,<TanksWeapon5,<TanksWeapon6
|
||||
TanksWeaponsTableH
|
||||
.by >TanksWeapon1,>TanksWeapon2,>TanksWeapon3,>TanksWeapon4,>TanksWeapon5,>TanksWeapon6
|
||||
|
||||
;--------------
|
||||
XtankOffsetGO_L
|
||||
.by 6,56,106,156,206,0
|
||||
XtankOffsetGO_H
|
||||
.by 0,0,0,0,0,1
|
||||
;-----4x4 texts-----
|
||||
LineTop
|
||||
dta d"(%%%%%%%%%%%%)", $ff
|
||||
|
||||
+10
@@ -93,6 +93,16 @@ dl ; MAIN game display list
|
||||
.byte $41
|
||||
.word dl
|
||||
;-----------------------------------------------
|
||||
GameOverDL
|
||||
.byte $70,$70,$70,$70,$70,$70,$70,$20
|
||||
.byte $4f ; 1 line
|
||||
.word display+(40*32)
|
||||
:31 .byte $0f ; 31 lines
|
||||
.byte $70
|
||||
.byte $41
|
||||
.word GameOverDL
|
||||
|
||||
;-----------------------------------------------
|
||||
;Screen displays go first to avoid crossing 4kb barrier
|
||||
;-----------------------------------------------
|
||||
OptionsScreen
|
||||
|
||||
+1
-1
@@ -462,7 +462,7 @@ endcircleloop
|
||||
.endp
|
||||
|
||||
;--------------------------------------------------
|
||||
.proc clearscreen
|
||||
.proc ClearScreen
|
||||
;--------------------------------------------------
|
||||
|
||||
lda #$ff
|
||||
|
||||
@@ -128,6 +128,8 @@ START
|
||||
|
||||
; Startup sequence
|
||||
jsr Initialize
|
||||
|
||||
jsr GameOverScreen ; only for test !!!
|
||||
|
||||
jsr Options ;startup screen
|
||||
lda escFlag
|
||||
|
||||
BIN
Binary file not shown.
@@ -1828,6 +1828,56 @@ FinishResultDisplay
|
||||
jmp TypeLine4x4 ; jsr:rts
|
||||
.endp
|
||||
|
||||
;--------------------------------------------------
|
||||
.proc GameOverScreen
|
||||
;--------------------------------------------------
|
||||
jsr ClearScreen
|
||||
jsr ClearPMmemory
|
||||
mwa #GameOverDL dlptrs
|
||||
lda #%00111110 ; normal screen width, DL on, P/M on
|
||||
sta dmactls
|
||||
jsr ColorsOfSprites
|
||||
VDLI DLIinterruptText.DLIinterruptNone ; jsr SetDLI for text screen without DLIs
|
||||
; initial tank positions randomization
|
||||
ldx #(MaxPlayers-1) ;maxNumberOfPlayers-1
|
||||
@
|
||||
jsr RandomizeTankPos
|
||||
dex
|
||||
bpl @-
|
||||
MainTanksFloatingLoop
|
||||
; main tanks floating loop
|
||||
ldx #(MaxPlayers-1) ;maxNumberOfPlayers-1
|
||||
AllTanksFloatingDown
|
||||
stx TankNr
|
||||
inc Ytankstable,x
|
||||
lda Ytankstable,x
|
||||
; cmp #32 ; tank over screen - not visible
|
||||
cmp #80 ; tank under screen - new tank randomize
|
||||
bne TankOnScreen
|
||||
jsr RandomizeTankPos
|
||||
TankOnScreen
|
||||
jsr DrawTankNr
|
||||
jsr DrawTankParachute
|
||||
ldx TankNr
|
||||
dex
|
||||
bpl AllTanksFloatingDown
|
||||
jmp MainTanksFloatingLoop ; neverending loop
|
||||
rts
|
||||
RandomizeTankPos
|
||||
randomize 8 32
|
||||
sta Ytankstable,x
|
||||
randomize 0 180
|
||||
sta AngleTable,x
|
||||
randomize 0 (49-8)
|
||||
and #%11111110 ; correction for PMG
|
||||
clc
|
||||
adc XtankOffsetGO_L,x
|
||||
sta XtankstableL,x
|
||||
lda XtankOffsetGO_H,x
|
||||
adc #0
|
||||
sta XtankstableH,x
|
||||
rts
|
||||
.endp
|
||||
;-------------------------------------------------
|
||||
.proc DisplayStatus
|
||||
;-------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user