~rabbits/markl

a1ccca8f11adee60f4cbd9b26a8ff703397ba6bb — Devine Lu Linvega 2 months ago bf8bc38
Falling placeholder
3 files changed, 44 insertions(+), 9 deletions(-)

M etc/char10x10.chr
M src/assets.tal
M src/markl.tal
M etc/char10x10.chr => etc/char10x10.chr +0 -0
M src/assets.tal => src/assets.tal +34 -0
@@ 481,6 481,40 @@
	0000 0000 0000 0000 0000 0000 0000 0000
	0000 0000 0000 0000 0000 0000 0000 0000 ]

@player-fall-chr [
	0000 0000 0000 0000 0f18 081f 0909 0b1a
	0000 0000 0000 0000 4242 c2e2 42f2 f322
	0000 0000 0000 0000 1010 1010 1010 d11f
	0000 0000 0000 0000 0000 0000 0000 0000
	0000 0000 0000 0000 1200 0000 0000 0000
	0000 0000 001f 3f7f 0000 0000 1f20 4080
	0000 0000 feff ffff 0000 00fe 0100 0000
	0000 0000 0000 8080 0000 0000 0080 4048
	0018 1c1d 1d03 0307 3925 2322 2214 0c08
	ffff ffff ffff dfff 0000 0000 0000 2000
	ffff fffe fe7f ffff 0000 0001 0180 0000
	c0b0 70e0 e0c0 80a0 3848 8818 1030 7050
	0707 0707 0707 0203 0808 0808 0808 0504
	fcf3 efef ffff ffff 030c 1010 0000 0000
	ff7f ffff ffff ffdf 0080 0000 0000 0020
	e0f0 f0f0 f0e0 e0e0 1008 0808 0810 1010
	0303 0101 0000 0000 0404 0202 0100 0000
	8e8e 9c9e 0e0e 0e0e 7151 6361 9111 1111
	3a38 3831 3030 1030 c547 454a 4948 2848
	c0c0 8080 0000 0000 2020 4040 8000 0000
	0000 0000 0000 0000 0000 0000 0000 0000
	0e0c 0e0e 0200 0e06 1113 1101 1000 0109
	1010 1010 0010 1000 2820 2828 2828 2028
	0000 0000 0000 0000 0000 0000 0000 0000
	0000 0000 0000 0000 0000 0000 0000 0000
	0000 0000 0000 0000 0801 0000 0000 0000
	0010 0000 0000 0000 0800 0000 0000 0000
	0000 0000 0000 0000 0000 0000 0000 0000
	0000 0000 0000 0000 0000 0000 0000 0000
	0000 0000 0000 0000 0000 0000 0000 0000
	0000 0000 0000 0000 0000 0000 4000 0000
	0000 0000 0000 0000 0000 0000 0000 0000 ]

(
@|spells )


M src/markl.tal => src/markl.tal +10 -9
@@ 8,9 8,7 @@
|a0 @File &vector $2 &success $1 &success-lb $1 &stat $2 &delete $1 &append $1 &name $2 &length $2 &read $2 &write $2
|c0 @DateTime &year $2 &month $1 &day $1 &hour $1 &minute $1 &second $1 &dotw $1 &doty $2 &isdst $1
	( TODOs:
	| catch out-of-level
	| skip out-of-screen drawing
	| fall state
	| warp state
	| doorway exit
	| auto move program position after input


@@ 308,14 306,12 @@
	!<animate-fall>

@<animate-fall> ( -- )
	;&anim .Screen/vector DEO2
	{ "fall! 0a $1 }
	<plam>
	;player-fall-chr <set-state>
	.player/posy LDZ2 #0020 ADD2 #0001 ;&callback <animate-player-posy>
	JMP2r

	&anim ( -> )
	BRK
	( callback: <recover-safety> !<release-turn> )
	&callback ( -> )
	<recover-safety> !<release-turn>

@<set-safety> ( -- )
	#00 .modify/x STZ


@@ 654,6 650,7 @@

@<draw-stage> ( -- )
	[ LIT2 36 -Screen/auto ] DEO
	( | TODO: draw player off-stage, background )
	;room #0004 ADD2 LDA2 STH2
	[ LIT2 &h $1 00 ]
	&>lh ( -- )


@@ 678,7 675,11 @@
		DUP .player/y LDZ NEQ ?{ .player/tile LDZ2 <pin-floor>
			<draw-player> }
		INC GTHk ?&>lh
	POP2 POP2r JMP2r
	POP2 POP2r
	( | draw player, foreground )
	.player/y LDZ ;room/h LDA LTH ?{ .player/tile LDZ2 <pin-floor>
		<draw-player> }
	JMP2r

@<draw-floor> ( id -- )
	DUP ?{ POP JMP2r }