.IVP Inferno: Valani's Promise
DiagnosticOff
ClrHome
ClrDraw
ClrDraw r
"vIVPmap01"→Str1
[FF83878F8F9FBFFFFFFFBF9F878381FFB5FF7BDEFF6DFFB65F80A629419610EB]→Pic0
[FFFFFFFFFFFFFFFF0000000000000000]→Pic00
.Up Down Right Left
[183C3C183C5A2424182424183C5A24240C1A120C1E0C0A123058483078305048]→Pic1
[A5A55A242418243C→Pic3
GetCalc(Str1,140)→V
Data(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,1,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)→V
0→C
ref(0,0,95,63) r
For(A,0,7
For(B,0,23
If {V+C}=1
Pt-Off(B*8,A*8,Pic0
Pt-Off(B*8,A*8,Pic0+8) r
End
If {V+C}=2
Pt-Off(B*8,A*8,Pic0+16
Pt-Off(B*8,A*8,Pic0+24) r
End
If {V+C}=3
Pt-Off(B*8,A*8,Pic3
End
C+1→C
End
End
8→A
24→B
0→O→θ→Z
.Main loop
Repeat getKey(15)
sub(DS
If getKey(2)
If (pxl-Test(A-1,B)+pxl-Test(A-1,B+7)=0
Pt-Off(A,B,Pic00+8
24→O
A-1→A
If A=1
Z-1→Z
sub(RD
A+1→A
sub(DS
End
End
End
If getKey(3)
If (pxl-Test(A+8,B)+pxl-Test(A+8,B+7)=0
Pt-Off(A,B,Pic00+8
A+1→A
16→O
If A=87
Z+1→Z
sub(RD
A-1→A
sub(DS
End
End
End
If getKey(4)
If (pxl-Test(A,B-1)+pxl-Test(A+7,B-1)=0
Pt-Off(A,B,Pic00+8
0→O
B-1→B
If B=1
θ-1→θ
sub(RD
B+1→B
sub(DS
End
End
End
If getKey(1)
If (pxl-Test(A,B+8)+pxl-Test(A+7,B+8)=0
Pt-Off(A,B,Pic00+8
8→O
B+1→B
If B=55
θ+1→θ
sub(RD
B-1→B
sub(DS
End
End
End
End
ClrDraw
ClrDraw
ClrHome
DelVar Str1
Return
Lbl DS
Pt-Off(A,B,Pic1+O
DispGraph r r
Return
Lbl RD
For(Q,0,7
For(R,0,23
{Q*24+R+Z+θ+V}→I
Pt-Off(A,B,Pic1+O
Pt-Off(R*8,Q*8,Pic00) r
Pt-Off(R*8,Q*8,Pic00+8
If I=1
Pt-Off(R*8,Q*8,Pic0
Pt-Off(R*8,Q*8,Pic0+8) r
End
If I=2
Pt-Off(R*8,Q*8,Pic0+16
Pt-Off(R*8,Q*8,Pic0+24) r
End
If I=3
Pt-Off(R*8,Q*8,Pic3
End
End
DispGraph r r
End