initial upload
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
REM
|
||||
REM --- Tiny BASIC Interpreter and Compiler Project
|
||||
REM --- Lunar Lander Demonstration Game
|
||||
REM
|
||||
REM --- Released as Public Domain by Damian Gareth Walker 2019
|
||||
REM --- Created: 15-Aug-2019
|
||||
REM
|
||||
|
||||
REM --- Variables:
|
||||
REM A: altitude
|
||||
REM B: fuel to burn this turn
|
||||
REM F: fuel remaining
|
||||
REM T: time elapsed
|
||||
REM V: velocity this turn
|
||||
REM W: velocity next turn
|
||||
|
||||
REM --- Initialise the Program
|
||||
50 LET A=1000
|
||||
51 LET B=0
|
||||
52 LET F=150
|
||||
53 LET V=50
|
||||
54 LET T=0
|
||||
|
||||
REM --- Main Loop
|
||||
100 PRINT "Time:",T," Alt:",A," Velocity:",V," Fuel:",F," Thrust:",B
|
||||
111 IF F>30 THEN PRINT "Thrust (0-30)?"
|
||||
112 IF F<31 THEN PRINT "Thrust (0-",F,")?"
|
||||
113 INPUT B
|
||||
114 IF B>=0 THEN IF B<=30 THEN IF B<=F THEN GOTO 120
|
||||
115 GOTO 111
|
||||
120 LET W=V-B+5
|
||||
121 LET F=F-B
|
||||
122 LET A=A-(V+W)/2
|
||||
123 LET V=W
|
||||
124 LET T=T+1
|
||||
125 IF A>0 THEN GOTO 100
|
||||
|
||||
REM --- End of Game
|
||||
126 IF V<5 THEN GOTO 140
|
||||
127 PRINT "You crashed!"
|
||||
130 GOTO 160
|
||||
140 IF A<0 THEN GOTO 150
|
||||
141 PRINT "Perfect landing!"
|
||||
142 GOTO 160
|
||||
150 PRINT "Touchdown."
|
||||
160 IF A<0 THEN LET A=0
|
||||
165 PRINT "Time:",T," Alt:",A," Velocity:",V," Fuel:",F
|
||||
170 END
|
||||
Reference in New Issue
Block a user