Colors, speed and cactuses

This commit is contained in:
Pecusx
2024-08-11 16:21:42 +02:00
parent d413d9e153
commit 9c4f7409e6
6 changed files with 716 additions and 588 deletions
BIN
View File
Binary file not shown.
+30 -2
View File
@@ -93,6 +93,26 @@ cactus_2
.by $50, $51 ; '##' .by $50, $51 ; '##'
.by $4e, $4f ; '##' .by $4e, $4f ; '##'
.by $4c, $4d ; '##' .by $4c, $4d ; '##'
cactus_3
.by $ff, $ff ; '..'
.by $57, $ff ; '#.'
.by $56, $ff ; '#.'
.by $55, $52 ; '##'
cactus_4
.by $ff, $ff ; '..'
.by $ff, $ff ; '..'
.by $59, $ff ; '#.'
.by $58, $52 ; '##'
ground_1
.by $ff, $ff ; '..'
.by $ff, $ff ; '..'
.by $ff, $ff ; '..'
.by $53, $54 ; '##'
ground_2
.by $ff, $ff ; '..'
.by $ff, $ff ; '..'
.by $ff, $ff ; '..'
.by $5a, $52 ; '##'
ShapesTableL ShapesTableL
.by <ground_0 .by <ground_0
@@ -106,6 +126,10 @@ ShapesTableL
.by <cactus_0 .by <cactus_0
.by <cactus_1 .by <cactus_1
.by <cactus_2 .by <cactus_2
.by <cactus_3
.by <cactus_4
.by <ground_1
.by <ground_2
ShapesTableH ShapesTableH
.by >ground_0 .by >ground_0
.by >ground_0 .by >ground_0
@@ -118,10 +142,14 @@ ShapesTableH
.by >cactus_0 .by >cactus_0
.by >cactus_1 .by >cactus_1
.by >cactus_2 .by >cactus_2
.by >cactus_3
.by >cactus_4
.by >ground_1
.by >ground_2
diff_object_gap ; min distance between obstacles by difficulty level diff_object_gap ; min distance between obstacles by difficulty level
:DIFF_LEVELS .by 20-# :DIFF_LEVELS .by 20-#
;----------vars---------- ;----------vars----------
diff_level .ds 1 diff_level .ds 1
DinoJumpTr .by 1,2,3,3,3,2,1 DinoJumpTr .by 1,2,3,4,4,3,2,1
JumpLen = 7 JumpLen = 8
.endif ; .IF *>0 .endif ; .IF *>0
+44 -6
View File
@@ -93,24 +93,24 @@ FirstSTART
EndLoop EndLoop
jsr WorldShift jsr WorldShift
jsr WorldToScreen jsr WorldToScreen
jsr CheckJoy
jsr ShowDino jsr ShowDino
waitRTC ; or waitRTC ? jsr CheckJoy
;waitRTC ; or waitRTC ?
;key ;key
mva #>font2 chbas mva #>font2 chbas
waitRTC ; or waitRTC ? waitRTC ; or waitRTC ?
mva #3 hscrol mva #3 hscrol
waitRTC ; or waitRTC ? ;waitRTC ; or waitRTC ?
;key ;key
mva #>font3 chbas mva #>font3 chbas
waitRTC ; or waitRTC ? waitRTC ; or waitRTC ?
mva #2 hscrol mva #2 hscrol
waitRTC ; or waitRTC ? ;waitRTC ; or waitRTC ?
;key ;key
mva #>font4 chbas mva #>font4 chbas
waitRTC ; or waitRTC ? waitRTC ; or waitRTC ?
mva #1 hscrol mva #1 hscrol
waitRTC ; or waitRTC ? ;waitRTC ; or waitRTC ?
;key ;key
jsr Animate jsr Animate
mva #>font1 chbas mva #>font1 chbas
@@ -218,7 +218,7 @@ insertObject
lda RANDOM lda RANDOM
and #%00000001 ; insert 50/50 and #%00000001 ; insert 50/50
beq noInsert beq noInsert
randomize 8 10 ; cactuses randomize 8 13 ; cactuses and hole
sta WorldTable+WORLD_LENGTH-2 sta WorldTable+WORLD_LENGTH-2
ora #$80 ora #$80
sta WorldTable+WORLD_LENGTH-1 sta WorldTable+WORLD_LENGTH-1
@@ -345,6 +345,8 @@ Jump
beq jPhase2 beq jPhase2
cmp #3 cmp #3
jeq jPhase3 jeq jPhase3
cmp #4
jeq jPhase4
jPhase1 jPhase1
ldy #0 ldy #0
DinoLoop1 DinoLoop1
@@ -417,6 +419,30 @@ DinoLoop3
cpy #5 ; dino width cpy #5 ; dino width
bne DinoLoop3 bne DinoLoop3
rts rts
jPhase4
ldy #0
DinoLoop4
lda (temp_w),y
bmi @+
sta screen,x
@ adw temp_w #5
lda (temp_w),y
bmi @+
sta screen+$100,x
@ adw temp_w #5
lda (temp_w),y
bmi @+
sta screen+$200,x
@ adw temp_w #5
lda (temp_w),y
bmi @+
sta screen+$300,x
@ sbw temp_w #15
inx
iny
cpy #5 ; dino width
bne DinoLoop4
rts
.endp .endp
;----------------------------------------------- ;-----------------------------------------------
.proc CheckJoy .proc CheckJoy
@@ -451,6 +477,18 @@ Down
sta DinoWalkPhase sta DinoWalkPhase
lda #0 lda #0
sta DinoState sta DinoState
sta COLOR1
ldy #0
FadeColor
sty COLOR2
sty COLOR4
waitRTC
iny
cpy #$10
bne FadeColor
lda #$0f
sta COLOR2
sta COLOR4
rts rts
.endp .endp
;----------------------------------------------- ;-----------------------------------------------
+90 -79
View File
@@ -598,82 +598,93 @@ FFFD 0000 @KBCODE
00 3825 WORLDTABLE 00 3825 WORLDTABLE
00 3865 FIRSTSTART 00 3865 FIRSTSTART
00 38AA ENDLOOP 00 38AA ENDLOOP
00 3920 GENERATECHARSETS 00 3908 GENERATECHARSETS
00 3922 GENERATECHARSETS.COPYLOOP 00 390A GENERATECHARSETS.COPYLOOP
00 394A CLEARWORLD 00 3932 CLEARWORLD
00 394E CLEARWORLD.0@ 00 3936 CLEARWORLD.0@
00 3955 CLEARSCREEN 00 393D CLEARSCREEN
00 3959 CLEARSCREEN.CLEARLOOP 00 3941 CLEARSCREEN.CLEARLOOP
00 396C WORLDTOSCREEN 00 3954 WORLDTOSCREEN
00 3973 WORLDTOSCREEN.TOSCREENLOOP 00 395B WORLDTOSCREEN.TOSCREENLOOP
00 397C WORLDTOSCREEN.NOTHINGTODRAW 00 3964 WORLDTOSCREEN.NOTHINGTODRAW
00 3985 WORLDSHIFT 00 396D WORLDSHIFT
00 3987 WORLDSHIFT.SHIFT 00 396F WORLDSHIFT.SHIFT
00 39A1 WORLDSHIFT.1@ 00 3989 WORLDSHIFT.1@
00 39AB WORLDSHIFT.INSERTOBJECT 00 3993 WORLDSHIFT.INSERTOBJECT
00 39C6 WORLDSHIFT.NOINSERT 00 39AE WORLDSHIFT.NOINSERT
00 39C7 ANIMATE 00 39AF ANIMATE
00 39C9 ANIMATE.2@ 00 39B1 ANIMATE.2@
00 39DB ANIMATE.NOBIRD 00 39C3 ANIMATE.NOBIRD
00 39F3 ANIMATE.ENDJUMP 00 39DB ANIMATE.ENDJUMP
00 39F9 ANIMATE.NOJUMP 00 39E1 ANIMATE.NOJUMP
00 39FA SHOWOBJECT 00 39E2 SHOWOBJECT
00 3A06 SHOWOBJECT.OBJECTLOOP 00 39EE SHOWOBJECT.OBJECTLOOP
00 3A0D SHOWOBJECT.3@ 00 39F5 SHOWOBJECT.3@
00 3A1F SHOWOBJECT.4@ 00 3A07 SHOWOBJECT.4@
00 3A31 SHOWOBJECT.5@ 00 3A19 SHOWOBJECT.5@
00 3A43 SHOWOBJECT.6@ 00 3A2B SHOWOBJECT.6@
00 3A55 SHOWDINO 00 3A3D SHOWDINO
00 3A70 SHOWDINO.DINOLOOP 00 3A58 SHOWDINO.DINOLOOP
00 3A77 SHOWDINO.7@ 00 3A5F SHOWDINO.7@
00 3A89 SHOWDINO.8@ 00 3A71 SHOWDINO.8@
00 3A9B SHOWDINO.9@ 00 3A83 SHOWDINO.9@
00 3AAD SHOWDINO.10@ 00 3A95 SHOWDINO.10@
00 3ABF SHOWDINO.JUMP 00 3AA7 SHOWDINO.JUMP
00 3ACF SHOWDINO.JPHASE1 00 3ABE SHOWDINO.JPHASE1
00 3AD1 SHOWDINO.DINOLOOP1 00 3AC0 SHOWDINO.DINOLOOP1
00 3AD8 SHOWDINO.11@ 00 3AC7 SHOWDINO.11@
00 3AEA SHOWDINO.12@ 00 3AD9 SHOWDINO.12@
00 3AFC SHOWDINO.13@ 00 3AEB SHOWDINO.13@
00 3B0E SHOWDINO.14@ 00 3AFD SHOWDINO.14@
00 3B20 SHOWDINO.JPHASE2 00 3B0F SHOWDINO.JPHASE2
00 3B22 SHOWDINO.DINOLOOP2 00 3B11 SHOWDINO.DINOLOOP2
00 3B29 SHOWDINO.15@ 00 3B18 SHOWDINO.15@
00 3B3B SHOWDINO.16@ 00 3B2A SHOWDINO.16@
00 3B4D SHOWDINO.17@ 00 3B3C SHOWDINO.17@
00 3B5F SHOWDINO.18@ 00 3B4E SHOWDINO.18@
00 3B71 SHOWDINO.JPHASE3 00 3B60 SHOWDINO.JPHASE3
00 3B73 SHOWDINO.DINOLOOP3 00 3B62 SHOWDINO.DINOLOOP3
00 3B7A SHOWDINO.19@ 00 3B69 SHOWDINO.19@
00 3B8C SHOWDINO.20@ 00 3B7B SHOWDINO.20@
00 3B9E SHOWDINO.21@ 00 3B8D SHOWDINO.21@
00 3BB0 SHOWDINO.22@ 00 3B9F SHOWDINO.22@
00 3BC2 CHECKJOY 00 3BB1 SHOWDINO.JPHASE4
00 3BDA CHECKJOY.NOCHANGE 00 3BB3 SHOWDINO.DINOLOOP4
00 3BDB CHECKJOY.UP 00 3BBA SHOWDINO.23@
00 3BE4 CHECKJOY.DOWN 00 3BCC SHOWDINO.24@
00 3BE9 SETSTART 00 3BDE SHOWDINO.25@
00 3BF5 SETGAMESCREEN 00 3BF0 SHOWDINO.26@
00 3C0A DINO_RUN_0 00 3C02 CHECKJOY
00 3C1E DINO_RUN_1 00 3C1A CHECKJOY.NOCHANGE
00 3C32 DINO_RUN_2 00 3C1B CHECKJOY.UP
00 3C46 DINO_CROUCH_1 00 3C24 CHECKJOY.DOWN
00 3C5A DINO_CROUCH_2 00 3C29 SETSTART
00 3C6E DINOSHAPESTABLEL 00 3C39 SETSTART.FADECOLOR
00 3C74 DINOSHAPESTABLEH 00 3C53 SETGAMESCREEN
00 3C7A GROUND_0 00 3C68 DINO_RUN_0
00 3C82 BIRD_0 00 3C7C DINO_RUN_1
00 3C8A BIRD_1 00 3C90 DINO_RUN_2
00 3C92 BIRD_2 00 3CA4 DINO_CROUCH_1
00 3C9A BIRD_0A 00 3CB8 DINO_CROUCH_2
00 3CA2 BIRD_1A 00 3CCC DINOSHAPESTABLEL
00 3CAA BIRD_2A 00 3CD2 DINOSHAPESTABLEH
00 3CB2 CACTUS_0 00 3CD8 GROUND_0
00 3CBA CACTUS_1 00 3CE0 BIRD_0
00 3CC2 CACTUS_2 00 3CE8 BIRD_1
00 3CCA SHAPESTABLEL 00 3CF0 BIRD_2
00 3CD5 SHAPESTABLEH 00 3CF8 BIRD_0A
00 3CE0 DIFF_OBJECT_GAP 00 3D00 BIRD_1A
00 3CF0 DIFF_LEVEL 00 3D08 BIRD_2A
00 3CF1 DINOJUMPTR 00 3D10 CACTUS_0
00 0007 JUMPLEN 00 3D18 CACTUS_1
00 3D20 CACTUS_2
00 3D28 CACTUS_3
00 3D30 CACTUS_4
00 3D38 GROUND_1
00 3D40 GROUND_2
00 3D48 SHAPESTABLEL
00 3D57 SHAPESTABLEH
00 3D66 DIFF_OBJECT_GAP
00 3D76 DIFF_LEVEL
00 3D77 DINOJUMPTR
00 0008 JUMPLEN
+552 -501
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.