'=========================================================================== ' Subject: FIGHT! V2.0 Date: 01-31-99 (23:32) ' Author: Evil Seed Software Code: QB, QBasic, PDS ' Origin: JCCS1554@aol.com Packet: GAMES.ABC '=========================================================================== ' ²²²²²²²° ²²° ²²²²²²° ²²° ²²° ²²²²²²²²° ²²° ' ²²° ²²° ²²° ²²° ²²° ²²° ²²° ' ²²²²²° ²²° ²²° ²²²° ²²²²²²²²° ²²° ²²° ' ²²° ²²° ²²° ²²° ²²° ²²° ²²° ' ²²° ²²° ²²²²²²° ²²° ²²° ²²° ²²° 'For Instructions and more read FIGHT2.DOC 'Scroll down and change the CSPEED setting for 'optimum performance for your computer. DECLARE SUB intro () DECLARE SUB combox1 () DECLARE SUB combox2 () DECLARE SUB dly () DIM SHARED s1, s2, ls1, ls2, PNUM, DIF, MSL, CSPEED, c, d progtop: SCREEN 13 MSL = -1 'CHDIR "C:\0ARCHIVE\FIGHT2~" 'Directory FIGHT! 2.0 was unzipped to. 'Recommended Numbers for CSPEED: '33Mhz-66Mhz: 1-5 '100Mhz-166Mhz: 10-15 '200Mhz-266Mhz: 20-25 '300Mhz-366Mhz: 30-35 '400Mhz-450Mhz: 40-45 CSPEED = 3 punch1: DATA "ÚÎÄ" uppcut1: DATA "ÚÎÙ" uppcut2: DATA "Àο" punch2: DATA "Äο" PLAYER: DATA "  " DATA "Úο" DATA "ÚÊ¿" DATA "  " kick2: DATA "ÄÊ¿" kick1: DATA "ÚÊÄ" c = 0 d = 0 CLS intro STARTM: CLS COLOR 40: PRINT "ÛÛÛÛÛÛÛ° ÛÛ° ÛÛÛÛÛÛ° ÛÛ° ÛÛ° ÛÛÛÛÛÛÛ°" PRINT "ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ°" PRINT "ÛÛÛÛÛ° ÛÛ° ÛÛ° ÛÛÛ° ÛÛÛÛÛÛÛÛ° ÛÛ°" PRINT "ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ°" PRINT "ÛÛ° ÛÛ° ÛÛÛÛÛÛ° ÛÛ° ÛÛ° ÛÛ°" LOCATE 6, 13: COLOR 50: INPUT "1 OR 2 PLAYERS: ", PNUM IF PNUM > 2 OR PNUM < 1 THEN LOCATE 5, 12 COLOR 51 PRINT "ONLY 1 OR 2 PLAYERS!" dly GOTO STARTM END IF menu: round = 1 met = 0 fat = 0 s = 0 w = 0 ar = 0 s1 = 100 s2 = 100 w2 = 0 x1 = 12 y1 = 2 x2 = 12 y2 = 20 k$ = "" LOCATE 8, 1: COLOR 40: PRINT "Player 1 Color: " LOCATE 9, 1: COLOR 7: PRINT " ® ¯" LOCATE 9, 9: COLOR c: PRINT k$ LOCATE 10, 8: COLOR c: PRINT "Úο" LOCATE 11, 8: COLOR c: PRINT "ÚÊ¿" LOCATE 13, 8: PRINT c; " " DO: O$ = INKEY$: LOOP UNTIL O$ <> "" IF O$ <> "" THEN p$ = O$ IF c = 246 THEN IF p$ = CHR$(0) + "M" THEN c = 0 IF c = 0 THEN IF p$ = CHR$(0) + "K" THEN c = 246 IF p$ = CHR$(0) + "M" THEN c = c + 1 IF p$ = CHR$(0) + "K" THEN c = c - 1 IF p$ = CHR$(13) THEN GOTO menu2 GOTO menu END menu2: k$ = "" COLOR 40: LOCATE 8, 18: PRINT "Player 2 Color: " LOCATE 9, 18: COLOR 7: PRINT " ® ¯" LOCATE 9, 26: COLOR d: PRINT k$ LOCATE 10, 25: COLOR d: PRINT "Úο" LOCATE 11, 25: COLOR d: PRINT "ÚÊ¿" LOCATE 13, 25: PRINT d IF PNUM = 1 THEN WHILE A <> 15 RANDOMIZE TIMER A = INT(RND * 30) + 1 d = d + 1 dly GOTO menu2 WEND CLS : GOTO menu5 END IF DO: O$ = INKEY$: LOOP UNTIL O$ <> "" IF O$ <> "" THEN p$ = O$ IF d = 246 THEN IF p$ = CHR$(0) + "M" THEN d = 0 IF d = 0 THEN IF p$ = CHR$(0) + "K" THEN d = 246 IF p$ = CHR$(0) + "K" THEN d = d - 1 IF p$ = CHR$(0) + "M" THEN d = d + 1 IF p$ = CHR$(13) THEN CLS : GOTO menu5 GOTO menu2 END menu5: COLOR 14: PRINT "SFX:" COLOR 40 IF SFX = 0 THEN PRINT "On " IF SFX = 1 THEN PRINT "Off" DO: O$ = INKEY$: LOOP UNTIL O$ <> "" IF O$ <> "" THEN p$ = O$ IF p$ = CHR$(0) + "M" AND SFX = 0 THEN SFX = 1 IF p$ = CHR$(0) + "K" AND SFX = 1 THEN SFX = 0 IF p$ = CHR$(13) THEN GOTO menu3 CLS : GOTO menu5 END menu3: CLS COLOR 40 PRINT "Arenas:" LOCATE 2, 2 COLOR 14: PRINT "1-Original" LOCATE 3, 2: PRINT "2-Ice World" LOCATE 4, 2: PRINT "3-Gravely" LOCATE 5, 2: PRINT "4-FIRE!!!" LOCATE 6, 2: PRINT "5-Moon" LOCATE 7, 2: PRINT "6-Finale" LOCATE 8, 2: PRINT "7-Load Level" COLOR 40: INPUT "Select: ", ar IF ar = 7 THEN INPUT "Load Level: ", lev$: IF INSTR(lev$, ".") = 0 THEN lev$ = lev$ + ".lev": GOTO bin GOTO diff END bin: ON ERROR GOTO ooops OPEN lev$ FOR INPUT AS #1 INPUT #1, flor, fc INPUT #1, roof, rc INPUT #1, bas, bc CLOSE #1 GOTO diff END diff: CLS IF PNUM = 1 THEN COLOR 40: LOCATE 1, 1: PRINT "Computer Difficulty:" COLOR 14 LOCATE 3, 2: PRINT "1-Super Easy" LOCATE 4, 2: PRINT "2-Easy" LOCATE 5, 2: PRINT "3-Medium" LOCATE 6, 2: PRINT "4-Hard" LOCATE 7, 2: PRINT "5-Super Hard" COLOR 40: INPUT "Select: ", DIF IF DIF = 1 THEN DIF = CSPEED * 2000 IF DIF = 2 THEN DIF = CSPEED * 1000 IF DIF = 3 THEN DIF = CSPEED * 500 IF DIF = 4 THEN DIF = CSPEED * 250 IF DIF = 5 THEN DIF = CSPEED * 100 END IF CLS GOTO play.dat END play.dat: RESTORE PLAYER READ A$: READ B$: READ c$: READ d$ GOSUB fight END fight: IF s1 = 0 THEN GOTO fatal IF s2 = 0 THEN GOTO fatal combox1 combox2 gr$ = "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ" SELECT CASE ar CASE 1 LOCATE 15, 1: COLOR 115: PRINT gr$ CASE 2 ic = 1 FOR i = 1 TO 30 LOCATE 5, ic COLOR 3: PRINT "V" ic = ic + 1 NEXT i LOCATE 15, 1: COLOR 9: PRINT gr$ CASE 3 fi = 1 FOR i = 1 TO 30 COLOR 40: LOCATE 15, fi PRINT "^" fi = fi + 1 NEXT i CASE 4 fir = 1 FOR i = 1 TO 30 COLOR 40: LOCATE 15, fir PRINT "^" fir = fir + 1 NEXT i FOR p = 1 TO 30 COLOR 14: LOCATE 17, p PRINT "^" NEXT p FOR f = 1 TO 30 COLOR 42: LOCATE 16, f PRINT "^" NEXT f CASE 5 O = 15 FOR n = 1 TO 3 FOR i = 1 TO 30 LOCATE O, i COLOR 7 PRINT "=" NEXT i O = O + 1 NEXT n CASE 6 LOCATE 15, 1 COLOR 2: PRINT gr$ LOCATE 5, 1 COLOR 40: PRINT gr$ O = 1 COLOR 7 FOR u = 1 TO 30 LOCATE 6, u PRINT "³" NEXT u FOR i = 1 TO 15 LOCATE 7, O PRINT "" O = O + 1 NEXT i FOR j = 1 TO 15 LOCATE 7, O PRINT "" O = O + 1 NEXT j COLOR 22 jk = 1 FOR m = 1 TO 15 LOCATE 16, jk PRINT "/\" jk = jk + 2 NEXT m FOR n = 1 TO 30 LOCATE 17, n PRINT "³" NEXT n LOCATE 18, 1 FOR ui = 1 TO 3 COLOR 40 PRINT gr$ NEXT ui CASE 7 FOR f = 1 TO 30 COLOR fc: LOCATE 15, f: PRINT CHR$(flor) NEXT f FOR rf = 1 TO 30 COLOR rc: LOCATE 5, rf: PRINT CHR$(roof) NEXT rf FOR bs = 1 TO 30 COLOR bc: LOCATE 16, bs: PRINT CHR$(bas) NEXT bs CASE ELSE PRINT "Incorrect Arena Selected." END SELECT 'Player One Placement: COLOR c: LOCATE x1, 1: PRINT TAB(y1); A$ z1 = x1 + 1: a1 = y1 b1 = z1 + 1: c1 = a1 LOCATE z1, 1: PRINT TAB(a1); B$: LOCATE b1, 1: PRINT TAB(c1); c$ 'Player 2 Placement: COLOR d: LOCATE x2, (y1 + 3): PRINT TAB(y2); d$; " " z2 = x2 + 1: a2 = y2 b2 = z2 + 1: c2 = a2 LOCATE z2, (y1 + 3): PRINT TAB(a2); B$; " ": LOCATE b2, (y1 + 3): PRINT TAB(c2); c$; " " DO IF PNUM = 1 THEN MSL = MSL + 1 O$ = INKEY$ LOOP UNTIL O$ <> "" OR MSL = DIF IF O$ <> "" THEN p$ = O$ IF MSL = DIF THEN MSL = -1 IF y2 > y1 + 3 THEN y2 = y2 - 1 GOTO fight ELSE RANDOMIZE TIMER m = INT(RND * 6) IF m = 1 THEN GOTO pnch2 IF m = 2 THEN GOTO kck2 IF m = 3 THEN GOTO upcut2 IF m = 4 THEN GOTO pnch2 IF m = 5 THEN GOTO kck2 IF m = 6 THEN GOTO upcut2 END IF END IF PLAY OFF IF y1 = 2 THEN IF p$ = "Z" THEN GOTO fight IF y1 = 2 THEN IF p$ = "z" THEN GOTO fight IF y2 = 30 THEN IF p$ = CHR$(0) + "M" THEN GOTO fight IF y1 = y2 - 3 THEN IF p$ = "X" THEN GOTO fight IF y1 = y2 - 3 THEN IF p$ = "x" THEN GOTO fight IF y1 = y2 + 3 THEN IF p$ = "W" THEN GOTO fight IF y1 = y2 + 3 THEN IF p$ = "w" THEN GOTO fight IF y2 = y1 + 3 THEN IF p$ = CHR$(0) + "K" THEN GOTO fight IF y2 = y1 - 3 THEN IF p$ = CHR$(0) + "M" THEN GOTO fight IF p$ = CHR$(0) + "M" AND PNUM = 2 THEN y2 = y2 + 1: GOTO fight IF p$ = CHR$(0) + "K" AND PNUM = 2 THEN y2 = y2 - 1: GOTO fight IF p$ = "Z" THEN y1 = y1 - 1: GOTO fight IF p$ = "z" THEN y1 = y1 - 1: GOTO fight IF p$ = "X" THEN y1 = y1 + 1: GOTO fight IF p$ = "x" THEN y1 = y1 + 1: GOTO fight IF p$ = "0" AND PNUM = 2 THEN GOTO pnch2 IF p$ = "1" AND PNUM = 2 THEN GOTO kck2 IF p$ = "2" AND PNUM = 2 THEN GOTO upcut2 IF p$ = " " THEN GOTO kck1 IF p$ = "C" THEN GOTO pnch1 IF p$ = "c" THEN GOTO pnch1 IF p$ = "V" THEN GOTO upcut1 IF p$ = "v" THEN GOTO upcut1 GOSUB fight END pnch1: RESTORE punch1: READ B$ COLOR c LOCATE z1, a1: PRINT B$ IF SFX = 0 THEN SOUND 88, 2 dly IF y2 = y1 + 3 THEN s2 = s2 - 2 IF s2 <= 0 THEN w = 1: met = 2: GOTO fatal GOTO play.dat END pnch2: RESTORE punch2: READ B$ COLOR d LOCATE z2, a2: PRINT B$ IF SFX = 0 THEN SOUND 88, 2 dly IF y1 = y2 - 3 THEN s1 = s1 - 2 IF s1 <= 0 THEN w = 2: met = 1: GOTO fatal GOTO play.dat END upcut1: RESTORE uppcut1: READ B$ COLOR c LOCATE z1, a1: PRINT B$ IF SFX = 0 THEN SOUND 87, 2 dly IF y2 = y1 + 3 THEN s2 = s2 - 5 IF s2 <= 0 THEN w = 1: met = 2: GOTO fatal GOTO play.dat END upcut2: RESTORE uppcut2: READ B$ COLOR d LOCATE z2, a2: PRINT B$ IF SFX = 0 THEN SOUND 87, 2 dly IF y1 = y2 - 3 THEN s1 = s1 - 5 IF s1 <= 0 THEN w = 2: met = 1: GOTO fatal GOTO play.dat END kck1: RESTORE kick1: READ c$ COLOR c LOCATE b1, c1: PRINT c$ IF SFX = 0 THEN SOUND 86, 3 dly IF y2 = y1 + 3 THEN s2 = s2 - 4 IF s2 <= 0 THEN w = 1: met = 2: GOTO fatal GOTO play.dat END kck2: RESTORE kick2: READ c$ COLOR d LOCATE b2, c2: PRINT c$ IF SFX = 0 THEN SOUND 86, 3 dly IF y1 = y2 - 3 THEN s1 = s1 - 4 IF s1 <= 0 THEN w = 2: met = 1: GOTO fatal GOTO play.dat END fatal: IF met = 1 AND PNUM = 1 THEN RANDOMIZE TIMER fat = INT(RND * 3) + 1 GOTO fatal2 END IF LOCATE 8, 10: COLOR 40: PRINT "FINISH HIM/HER!" DO: O$ = INKEY$: LOOP UNTIL O$ <> "" IF O$ <> "" THEN p$ = O$ IF p$ = "Q" AND met = 2 THEN fat = 1: GOTO fatal2 IF p$ = "q" AND met = 2 THEN fat = 1: GOTO fatal2 IF p$ = "W" AND met = 2 THEN fat = 2: GOTO fatal2 IF p$ = "w" AND met = 2 THEN fat = 2: GOTO fatal2 IF p$ = "E" AND met = 2 THEN fat = 3: GOTO fatal2 IF p$ = "e" AND met = 2 THEN fat = 3: GOTO fatal2 IF p$ = "R" AND met = 2 THEN fat = 4: GOTO fatal2 IF p$ = "r" AND met = 2 THEN fat = 4: GOTO fatal2 IF p$ = "8" AND met = 1 THEN fat = 1: GOTO fatal2 IF p$ = "9" AND met = 1 THEN fat = 2: GOTO fatal2 IF p$ = "+" AND met = 1 THEN fat = 3: GOTO fatal2 IF p$ = "-" AND met = 1 THEN fat = 4: GOTO fatal2 GOTO fatal END fatal2: IF fat = 0 THEN GOTO finish2 IF fat = 1 THEN GOTO finish1 IF fat = 2 THEN GOTO finish2 IF fat = 3 THEN GOTO finish3 IF fat = 4 THEN GOTO finish4 finish1: IF met = 1 THEN COLOR 40 LOCATE x1, y1 PRINT ":.:" t = t - 1 LOCATE z1, a1: PRINT ".:." t = t - 1 LOCATE b1, c1: PRINT ":.." A$ = INPUT$(1) GOTO winner END END IF IF met = 2 THEN COLOR 40 LOCATE x2, y2 PRINT ":.." LOCATE z2, a2: PRINT ".:." LOCATE b2, c2: PRINT ":.:" A$ = INPUT$(1) GOTO winner END IF END finish2: DIM melt%(5000) FOR RR = 1 TO 5000 RANDOMIZE TIMER XX = INT(RND * 271) RANDOMIZE TIMER YX = INT(RND * 150) GET (XX, YX)-(XX + 48, YX + 48), melt% PUT (XX, YX + 1), melt%, PSET NEXT RR GOTO winner END finish3: IF met = 1 THEN LOCATE x1 + 1, y1 - 1 COLOR 40 PRINT A$ LOCATE x1, y1: COLOR 40: PRINT ":.:" A$ = INPUT$(1) GOTO winner END IF IF met = 2 THEN COLOR 40 LOCATE x2, y2 PRINT A$ LOCATE x2 + 1, y2 + 1: COLOR 40: PRINT d$ LOCATE x2, y2: COLOR 40: PRINT ".:." A$ = INPUT$(1) GOTO winner END IF END finish4: FOR i = 1 TO 100 CIRCLE (150, 100), i, 40 NEXT i dly FOR i = 1 TO 100 CIRCLE (150, 100), i, 0 NEXT i A$ = INPUT$(1) GOTO winner END winner: CLS COLOR 40 SELECT CASE w CASE 1 PRINT "Player 1 Wins!" CASE 2 PRINT "Player 2 Wins!" END SELECT PRINT "Press escape to end and" PRINT "any other key to view story!" DO: O$ = INKEY$: LOOP UNTIL O$ <> "" IF O$ <> "" THEN p$ = O$ IF p$ = CHR$(27) THEN PLAY OFF: CLOSE #2: END GOTO story END story: CLS SCREEN 12 SELECT CASE w CASE 1 IF c = 0 THEN s = c IF c > 0 THEN s = 50 IF c <= 246 THEN s = 246 IF c <= 100 THEN s = 50 CASE 2 IF d = 0 THEN s = d IF d > 0 THEN s = 50 IF d <= 246 THEN s = 246 IF d <= 100 THEN s = 50 END SELECT RANDOMIZE TIMER COLOR 9: PRINT "Story:" z% = INT(RND * 10) IF z% = 0 THEN ba$ = "train." IF z% < 5 THEN ba$ = "salami." IF z% = 5 THEN ba$ = "turkey." IF z% > 5 THEN ba$ = "piece of doodoo." IF z% = 10 THEN ba$ = "pile of dookie." RANDOMIZE TIMER A% = INT(RND * 50) COLOR 2 SELECT CASE s CASE 0 PRINT " Shadow Boxer known for being completely" PRINT "invisible! Wow! After winning FIGHT! 2.0" PRINT "he left for Boochland and raised his own" PRINT "farm which he wanted for so long..." PRINT "At age "; A%; " Boxer died when hit by a" PRINT ba$ CASE 50 PRINT " Pezz Rio was known for his text color" PRINT "fighting. He is brave enough to be in an old" PRINT "color from 1-50!." PRINT "Rio moved to Switzerland where he started a family." PRINT "He died at "; A%; " when he was hit by a "; ba$ CASE 246 PRINT " Ug Lee, which was his real name was a tough" PRINT "yet wimpy fighter. Interested in pretty colors" PRINT "he always where's color 246." PRINT " Lee moved to New York where he owned a deli" PRINT "and sold the most oiliest pizza in the big apple." PRINT "He died at age "; A%; " when hit by a "; ba$ END SELECT PRINT "Press escape to end." DO: A$ = INKEY$: LOOP UNTIL A$ <> "": IF A$ <> "" THEN B$ = A$ IF B$ = CHR$(27) THEN CLOSE #2: PLAY OFF: END SCREEN 13 GOTO progtop END ooops: PRINT "File Not Found..." O$ = INPUT$(1) GOTO menu3 END SUB combox1 LINE (1, 1)-(101, 11), 22, B LINE (2, 2)-(100, 10), 0, BF IF s1 <= 100 THEN j = 40 IF s1 <= 60 THEN j = 2 IF s1 <= 20 THEN j = 14 LINE (2, 2)-(s1, 10), j, BF LOCATE 3, 1: COLOR c: PRINT "Player 1" END SUB SUB combox2 LINE (150, 1)-(251, 11), 22, B IF s2 <= 100 THEN k = 40 IF s2 <= 60 THEN k = 2 IF s2 <= 20 THEN k = 14 LINE (151, 2)-(250, 10), k, BF se2 = s2 + 150 LINE (se2, 2)-(250, 10), 0, BF COLOR d: LOCATE 3, 20: PRINT "Player 2" END SUB SUB dly FOR i = 1 TO CSPEED * 1000: NEXT i END SUB SUB intro COLOR 40: PRINT "ÛÛÛÛÛÛÛ° ÛÛ° ÛÛÛÛÛÛ° ÛÛ° ÛÛ° ÛÛÛÛÛÛÛ°" PRINT "ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ°" PRINT "ÛÛÛÛÛ° ÛÛ° ÛÛ° ÛÛÛ° ÛÛÛÛÛÛÛÛ° ÛÛ°" PRINT "ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ° ÛÛ°" PRINT "ÛÛ° ÛÛ° ÛÛÛÛÛÛ° ÛÛ° ÛÛ° ÛÛ°" PRINT " By Evil Seed Software" PRINT PRINT 'Head: CIRCLE (150, 75), 20, 14 PAINT (150, 75), 14 CIRCLE (150, 75), 20, 42 'Face: LINE (170, 75)-(160, 72), 40 LINE (160, 72)-(163, 78), 40 LINE (163, 78)-(170, 75), 40 LINE (146, 80)-(161, 90), 40 LINE (146, 80)-(156, 90), 40 LINE (156, 90)-(161, 90), 40 'Body: LINE (150, 93)-(150, 125), 40 LINE (125, 150)-(150, 125), 1 LINE (125, 150)-(110, 175), 1 LINE (150, 125)-(175, 150), 1 LINE (175, 150)-(190, 175), 1 LINE (120, 120)-(150, 100), 40 LINE (120, 120)-(155, 122), 2 LINE (150, 100)-(175, 100), 40 LINE (175, 100)-(195, 100), 2 A$ = INPUT$(1) END SUB