Post by Carl on Mar 13, 2013 18:42:39 GMT
Hi, I have just written a new game.
You control Syd, he is a snail.
Using Space you can time his jump to capture a dot on the screen that in turn opens a door for him to get the Cash!
if you miss, potty mouthed Syd will not get in the building and the game ends!
Please please please add sound FX and enhance this any way you like, any questions or feedback is appreciated.
Commands.
to begin type ' start '
to restart, ' start ' also!
space to jump, space to start a new screen afted getting cash.
tip. Make a loader for all the blocks, I use block 99 so I type ' 99 load'
here is a short video.
here is the listing, hex files will follow.
hope you all enjoy it, feedback welcome.
Carlos.
( syd snail Carl Attrill)
: wait 0 15405 ! begin dup 15405 @ = inkey or until drop ;
: xy@ 25 * + vram + ;
: ulist 150 0 do i vram i + ic! loop ;
: rep 0 do loop ;
0 var loc
0 var loc1
0 var loc2
0 var money
0 var gv
9000 var speed
0 var seed
: seedon seed @ 75 u* 75 0 d+ over u< - - 1 dup seed ! ;
: rnd seedon u* swap drop :
: rn 7 rnd 411 + ;
0 var dot
: show rn dot ! 28 vram dot @ + ic! ;
: gap 32 vram 569 + ic!
32 vram 544 + ic! ;
: dotoff 32 vram dot @ + ic! ;
: top 0 0 at ." $" money @ .
13 0 at ." FIGnition" ;
: s0 cls top
0 6 xy@ 4 swap ic!
2 6 xy@ 4 swap ic!
4 6 xy@ 4 swap ic!
6 6 xy@ 4 swap ic!
8 6 xy@ 4 swap ic!
1 8 xy@ 27 swap ic!
3 8 xy@ 27 swap ic!
5 8 xy@ 27 swap ic!
7 8 xy@ 27 swap ic!
0 10 xy@ 27 swap ic!
2 10 xy@ 27 swap ic!
4 10 xy@ 27 swap ic!
6 10 xy@ 27 swap ic!
8 10 xy@ 27 swap ic! ;
: s1
1 12 xy@ 27 swap ic!
3 12 xy@ 27 swap ic!
5 12 xy@ 27 swap ic!
7 12 xy@ 27 swap ic!
0 14 xy@ 27 swap ic!
2 14 xy@ 27 swap ic!
4 14 xy@ 27 swap ic!
6 14 xy@ 27 swap ic!
8 14 xy@ 27 swap ic!
1 6 xy@ 4 swap ic!
3 6 xy@ 4 swap ic!
5 6 xy@ 4 swap ic!
7 6 xy@ 4 swap ic!
9 6 xy@ 4 swap ic! ;
: s2
1 16 xy@ 27 swap ic!
3 16 xy@ 27 swap ic!
5 16 xy@ 27 swap ic!
7 16 xy@ 27 swap ic!
0 18 xy@ 27 swap ic!
2 18 xy@ 27 swap ic!
4 18 xy@ 27 swap ic!
6 18 xy@ 27 swap ic!
8 18 xy@ 27 swap ic!
1 20 xy@ 27 swap ic!
3 20 xy@ 27 swap ic!
5 20 xy@ 27 swap ic!
7 20 xy@ 27 swap ic! ;
: s3
9 6 xy@ 4 swap ic!
9 7 xy@ 4 swap ic!
9 8 xy@ 4 swap ic!
9 9 xy@ 4 swap ic!
9 10 xy 4 swap ic!
9 11 xy@ 4 swap ic!
9 12 xy@ 4 swap ic!
9 13 xy@ 4 swap ic!
9 14 xy@ 4 swap ic!
9 15 xy@ 4 swap ic!
9 16 xy@ 4 swap ic!
9 17 xy@ 4 swap ic!
9 18 xy@ 4 swap ic!
9 19 xy@ 4 swap ic!
9 20 xy@ 4 swap ic!
9 21 xy@ 4 swap ic!
9 22 xy@ 4 swap ic!
9 23 xy@ 4 swap ic! ;
: s8
21 19 xy@ 27 swap ic!
23 19 xy@ 27 swap ic!
21 17 xy@ 27 swap ic!
23 17 xy@ 27 swap ic!
21 15 xy@ 27 swap ic!
23 15 xy@ 27 swap ic!
21 13 xy@ 27 swap ic!
23 13 xy@ 27 swap ic!
21 11 xy@ 27 swap ic!
23 11 xy@ 27 swap ic!
21 9 xy@ 27 swap ic!
23 9 xy@ 27 swap ic!
21 7 xy@ 27 swap ic!
23 7 xy@ 27 swap ic! ;
: s4
4 22 xy@ 27 swap ic!
9 5 xy@ 27 swap ic! ;
: s5 0 do i 23 xy@ 25 swap ic! loop ;
: s6
19 5 xy@ 4 swap ic!
20 5 xy@ 4 swap ic!
21 5 xy@ 4 swap ic!
22 5 xy@ 4 swap ic!
23 5 xy@ 4 swap ic!
24 5 xy@ 4 swap ic!
19 8 xy@ 4 swap ic!
19 6 xy@ 4 swap ic!
19 7 xy@ 4 swap ic! ;
: s7
19 6 xy@ 4 swap ic!
19 7 xy@ 4 swap ic!
19 8 xy@ 4 swap ic!
19 9 xy@ 4 swap ic!
19 10 xy@ 4 swap ic!
19 11 xy@ 4 swap ic!
19 12 xy@ 4 swap ic!
19 13 xy@ 4 swap ic!
19 14 xy@ 4 swap ic!
19 15 xy@ 4 swap ic!
19 16 xy@ 4 swap ic!
19 17 xy@ 4 swap ic!
19 18 xy@ 4 swap ic!
19 19 xy@ 4 swap ic!
19 20 xy@ 4 swap ic!
19 21 xy@ 4 swap ic! ;
: sx
24 22 xy@ 32 swap ic!
23 22 xy@ 36 swap ic!
22 22 xy@ 32 swap ic!
19 21 xy@ 35 swap ic!
19 22 xy@ 35 swap ic! ;
: govr 14 20 ." !@*#"
wait 9000 speed ! 0 money ! quit ;
125 var snail 125 var nosnail
: snail1 32 vram nosnail @ + ic!
30 vram snail @ + ic!
31 vram snail @ 1 + + ic!
snail @ nosnail ! ;
: timeout 0 do loop ;
: coll vram snail @ 1 + + ic@ loc !
loc @ 35 = if govr then ;
: col vram snail @ 25 + + ic@ loc1 ! loc1 @ 35 = if gap then
vram snail @ 26 + + ic@ loc2 ! loc2 @ 35 = if gap then ;
: move snail @ 1 + snail ! speed @ timeout coll ;
: jump1
snail @ 24 - snail !
snail 1
snail @ 24 + nosnail !
32 vram nosnail @ + ic!
32 vram nosnail @ 1 + + ic! ;
: jump2
snail1
snail @ 26 + snail !
snail1
snail @ 26 - nosnail !
32 vram nosnail @ + ic!
32 vram nosnail @ 1 + + ic! ;
: jump3
snail @ 25 + snail !
snail 1
snail @ 25 - nosnail !
32 vram nosnail @ + ic!
32 vram nosnail @ 1 + + ic! ;
: a1 o do i jump1 9000 timeout drop loop ;
: a2 0 do i jump2 9000 timeout drop loop ;
: a3 0 do i jump3 9000 timeout drop loop ;
: dokey inkey 32 = if 5 a1 4 a2 18 a3 then ;
: run begin snail1 move dokey snail @ 547 = until 23 22 at ." " wait ;
: again sx 125 snail ! 125 nosnail ! 0 loc! 0 loc1 ! 0 loc2 !
dotoff show snail1 top wait run money @ 10 + money ! top
speed @ 200 - speed! ;
: init s0 s1 s2 s3 s4 25 s5 s6 s7 s8 sx ;
: start init begin again gv @ until gv @ 2 = if gover then ;