'=========================================================================== ' Subject: MARIO BROTHERS CLONE (TEXT) Date: 06-03-96 (15:00) ' Author: John Wantland Code: QB, QBasic, PDS ' Origin: kwantlan@coffey.com Packet: GAMES.ABC '=========================================================================== REM mario bros. DIM l$(22) PRINT "Use the arrow keys to move around. Hit the block under the enemy" PRINT "to knock him over. " PRINT "M = you" PRINT "T = turtles" PRINT "press a key to start" DO a$ = INKEY$ IF a$ <> "" THEN EXIT DO LOOP l$(1) = " " l$(2) = "мммммл лммммм" l$(3) = "пппппллллллллл лллллллллппппп" l$(4) = " " l$(5) = " " l$(6) = " " l$(7) = " лллллллллллллллл " l$(8) = " " l$(9) = " " l$(10) = " " l$(11) = "лллллллллллллл лллллллллллллл" l$(12) = " " l$(13) = " " l$(14) = " " l$(15) = " лллллллллллллллл " l$(16) = " " l$(17) = " # " l$(18) = " " l$(19) = "лллллллллллллл лллллллллллллл" l$(20) = " " l$(21) = "мммммл лммммм" l$(22) = "пппппл лппппп" WIDTH 40, 25 CLS r = 22 c = 21 tr = 2 tc = 7 tr2 = 2 tc2 = 34 l = 5 p = 0 n = 0 o = 0 u = 0 q = 0 v = 0 b = 0 g = 1 h = 2 w = 0 pow = 3 DO LOCATE 1, 1 FOR i = 1 TO 22 COLOR 2, 0 PRINT l$(i) NEXT i LOCATE 23, 1 COLOR 7, 0 PRINT "Lives"; l; " Points"; p LOCATE r, c COLOR 4, 0 PRINT "M" IF n = 1 THEN e = 2: ELSE e = 10 LOCATE tr, tc COLOR e, 0 PRINT "T" IF o = 1 THEN a = 2: ELSE a = 10 LOCATE tr2, tc2 COLOR a, 0 PRINT "T" IF (r = tr AND (tc = c AND n = 0)) THEN l = l - 1: IF l <= 0 THEN CLS : PRINT "Game over": END: ELSE r = 22: c = 21: tr = 2: tc = 7: tr2 = 2: tc2 = 34: n = 0: pow = 3 IF (r = tr2 AND (tc2 = c AND o = 0)) THEN l = l - 1: pow = 3: IF l <= 0 THEN CLS : PRINT "Game over": END: ELSE r = 22: c = 21: tr = 2: tc = 7: tr2 = 2: tc2 = 34: o = 0: pow = 3 IF (r = tr AND (c = tc AND n = 1)) THEN p = p + 1: tr = 2: tc = 7: n = 0 IF (r = tr2 AND (c = tc2 AND o = 1)) THEN p = p + 1: tr2 = 2: tc2 = 34: o = 0 FOR nothing = 1 TO 200: NEXT nothing 'change depending on the speed of your computer olr = r oc = c a$ = INKEY$: IF a$ = "" THEN GOTO nokey IF a$ = CHR$(27) THEN END IF LEN(a$) = 2 THEN ky = -ASC(RIGHT$(a$, 1)): ELSE ky = ASC(a$) SELECT CASE ky CASE IS = -75 c = c - 1 CASE IS = -77 c = c + 1 CASE IS = -72 IF u = 0 THEN u = 1 END SELECT nokey: IF u = 0 AND r < 22 THEN r = r + 1 IF u = 1 THEN r = r - 1: q = q + 1: IF q >= 6 THEN u = 0: q = 0 IF r = 0 THEN u = 0: q = 0: r = r + 1 IF MID$(l$(r), c, 1) = "л" THEN r = olr IF MID$(l$(r), c, 1) = "л" AND MID$(l$(r - 1), c, 1) = "T" AND n = 0 THEN n = 1: v = 0 IF MID$(l$(r), c, 1) = "л" AND MID$(l$(r - 1), c, 1) = "T" AND n = 1 THEN n = 0 IF MID$(l$(r), c, 1) = "л" AND MID$(l$(r - 1), c, 1) = "T" AND o = 0 THEN o = 1: b = 0 IF MID$(l$(r), c, 1) = "л" AND MID$(l$(r - 1), c, 1) = "T" AND o = 1 THEN o = 0 a$ = MID$(l$(r - 1), c, 1) IF a$ = "#" AND pow > 0 THEN pow = pow - 1: n = 1: o = 1: r = olr IF n = 1 THEN v = v + 1: IF v >= 250 THEN n = 0 IF o = 1 THEN b = b + 1: IF b >= 250 THEN o = 0 IF c >= 41 OR c <= 1 THEN c = oc IF c = tc2 AND r - 2 = tr2 THEN o = 1: b = 0 IF RND >= .6 THEN IF n = 0 THEN otr = tr IF g = 1 THEN tc = tc + 1: IF tc >= 40 THEN g = 2 IF g = 2 THEN tc = tc - 1: IF tc <= 1 THEN g = 1 tr = tr + 1: IF tr >= 23 THEN tr = 22 IF tr < 22 THEN IF MID$(l$(tr), tc, 1) = "л" THEN tr = otr: ELSE g = INT(RND * 2 + 1) IF tr >= 22 AND (tc = 7 OR tc = 34) THEN tr = 2: tc = 7: g = 1 END IF END IF IF RND <= .4 THEN IF o = 0 THEN otr2 = tr2 IF h = 1 THEN tc2 = tc2 + 1: IF tc2 >= 40 THEN h = 2 IF h = 2 THEN tc2 = tc2 - 1: IF tc2 <= 1 THEN h = 1 tr2 = tr2 + 1: IF tr2 >= 23 THEN tr2 = 22 IF tr2 < 22 THEN IF MID$(l$(tr2), tc2, 1) = "л" THEN tr2 = otr2: ELSE h = INT(RND * 2 + 1) IF tr2 >= 22 AND (tc2 = 7 OR tc2 = 34) THEN tr2 = 2: tc2 = 34: h = 2 END IF END IF LOOP