Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
very cool graphics qb4.5 game
#1
hey check out my game copy and paste it can be compiled in fb open to suggestions i cant figure out how to read from different data statements it always wants to read from the first any suggestions n e way the game works so give it a spin i know it may seem elementary as per code but guarantee itll give u a challenge heres the code

SCREEN 12
CLS
DIM GRIDX(1000)
DIM GRIDY(1000)
DIM GRIDC(1000)
B=1
H=1
ROW=1
CX=0
LEVEL=1
GOSUB LEVELSETUP
MEGAHAVE=0
ENEMY=0
MEGAMAX=241

GAME:
DO
GOSUB LEVEL1
MOVE=0
A$=INKEY$
IF A$="8" THEN GOSUB UPMOV
IF A$="2" THEN GOSUB DOWNMOV
IF A$="4" THEN GOSUB LEFTMOV
IF A$="6" THEN GOSUB RIGHTMOV
IF A$=CHR$(27) THEN SYSTEM
IF COLLECT=1 THEN GOSUB COLLECT
LOCATE 26,1TongueRINT "MEGADOTS=";MEGAHAVE
LOCATE 27,1TongueRINT "ENEMYDOTS=";ENEMY
IF MEGAHAVE+ENEMY=MEGAMAX THEN GOSUB CHECKWIN
LOOP

CHECKWIN:
'IF ENEMY>MEGAHAVE THEN GOSUB ENEMYWIN
IF MEGAHAVE>ENEMY THEN
LOCATE 27,25TongueRINT "YOU WIN"
DO
A$=INKEY$
IF A$=" " THEN GOSUB GAME
'GOSUB LEVELSETUP
'GOSUB GAME
LOOP
END IF
RETURN

'ENEMYWIN:'
'LOCATE 27,25TongueRINT "I WIN"'
'DO
'A$=INKEY$
'IF A$="" THEN
'GOSUB LEVELSETUP
'GOSUB GAME
'RETURN


UPMOV:
ROW=ROW-1
IF ROW=0 THEN GOSUB UPNO
GOSUB ROWCHECK
CBD=ROWY+CX
GOSUB CHECKCBGB
IF MOVE=-1 THEN GOSUB UPNO
GRIDC(CBD)=0
X=GRIDX(CBD)
Y=GRIDY(CBD)
FOR R=5 TO 1 STEP-1
CIRCLE (X,Y),R,2
CIRCLE (X,Y+20),R,0
NEXT R
RETURN
UPNO:
ROW=ROW+1
MOVE=0
GOSUB GAME

DOWNMOV:
ROW=ROW+1
IF ROW=20 THEN GOSUB DOWNNO
GOSUB ROWCHECK
CBD=ROWY+CX
GOSUB CHECKCBGB
IF MOVE=-1 THEN GOSUB DOWNNO
GRIDC(CBD)=0
X=GRIDX(CBD)
Y=GRIDY(CBD)
FOR R=5 TO 1 STEP-1
CIRCLE(X,Y),R,2
CIRCLE(X,Y-20),R,0
NEXT R
RETURN
DOWNNO:
ROW=ROW-1
MOVE=0
GOSUB GAME

LEFTMOV:
CX=CX-1
IF CX=-1 THEN GOSUB LEFTNO
GOSUB ROWCHECK
CBD=ROWY+CX
GOSUB CHECKCBGB
IF MOVE=-1 THEN GOSUB LEFTNO
GRIDC(CBD)=0
X=GRIDX(CBD)
Y=GRIDY(CBD)
FOR R=5 TO 1 STEP-1
CIRCLE(X,Y),R,2
CIRCLE(X+20,Y),R,0
NEXT R
RETURN
LEFTNO:
CX=CX+1
MOVE=0
GOSUB GAME

RIGHTMOV:
CX=CX+1
IF CX=32 THEN GOSUB RIGHTNO
GOSUB ROWCHECK
CBD=ROWY+CX
GOSUB CHECKCBGB
IF MOVE=-1 THEN GOSUB RIGHTNO
GRIDC(CBD)=0
X=GRIDX(CBD)
Y=GRIDY(CBD)
FOR R=5 TO 1 STEP-1
CIRCLE (X,Y),R,2
CIRCLE (X-20,Y),R,0
NEXT R
RETURN
RIGHTNO:
CX=CX-1
MOVE=0
GOSUB GAME

CHECKCBGB:
IF GRIDC(CBD)=1 THEN MOVE=-1
IF GRIDC(CBD)=2 THEN COLLECT=1

RETURN

WALL:
X=GRIDX(P)
Y=GRIDY(P)
FOR R=10 TO 1 STEP-1
CIRCLE (X,Y),R,1
NEXT R
RETURN

MEGADOT:
X=GRIDX(P)
Y=GRIDY(P)
CIRCLE(X,Y),5,3
RETURN

COLLECT:
MEGAHAVE=MEGAHAVE+1
SCORE=SCORE+20
COLLECT=0
RETURN

ROWCHECK:
IF ROW=1 THEN ROWY=1
IF ROW=2 THEN ROWY=33
IF ROW=3 THEN ROWY=65
IF ROW=4 THEN ROWY=97
IF ROW=5 THEN ROWY=129
IF ROW=6 THEN ROWY=161
IF ROW=7 THEN ROWY=193
IF ROW=8 THEN ROWY=225
IF ROW=9 THEN ROWY=257
IF ROW=10 THEN ROWY=289
IF ROW=11 THEN ROWY=321
IF ROW=12 THEN ROWY=353
IF ROW=13 THEN ROWY=385
IF ROW=14 THEN ROWY=417
IF ROW=15 THEN ROWY=449
IF ROW=16 THEN ROWY=481
IF ROW=17 THEN ROWY=513
IF ROW=18 THEN ROWY=545
IF ROW=19 THEN ROWY=577
RETURN

LEVELSETUP: ' DO NOT CHANGE
'GOSUB LEVDAT
H=10:B=10:T=1
DO
READ C
IF C=0 THEN EXIT DO
GRIDX(T)=H
GRIDY(T)=B
GRIDC(T)=C
T=T+1
H=H+20
IF H=650 THEN H=10
IF H=10 THEN B=B+20
LOOP
FOR P=1 TO T
IF GRIDC(P)=1 THEN GOSUB WALL
IF GRIDC(P)=2 THEN GOSUB MEGADOT
NEXT P
RETURN


DATA 2,1,1,1,1,2,1,1,2,1,1,1,1,1,2,2,2,2,2,2,2,1,1,1,2,1,1,1,1,1,1,1
DATA 2,1,1,1,1,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,2,1,1,2,2,2,2,1
DATA 2,1,1,2,2,2,1,1,2,1,1,1,1,1,2,2,2,1,2,2,2,2,2,2,2,1,1,2,1,1,2,1
DATA 2,2,2,2,1,1,1,1,2,2,2,1,1,1,2,1,2,1,2,1,1,1,1,1,2,1,1,2,1,1,2,1
DATA 1,1,1,1,1,1,2,1,1,1,2,1,1,1,2,1,2,1,2,1,1,1,1,1,2,2,2,2,1,1,1,1
DATA 1,1,1,2,2,2,2,1,1,1,2,2,2,2,2,1,2,2,2,2,2,2,1,1,1,1,1,1,1,1,2,1
DATA 1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,2,1,1,2,1,1,1,2,2,2,1
DATA 1,1,2,1,1,1,1,1,2,2,2,2,1,1,1,2,1,1,1,1,1,2,1,1,2,1,1,1,2,1,1,1
DATA 1,1,2,2,2,2,2,2,2,1,1,1,1,1,1,2,2,2,2,2,2,2,1,1,2,1,1,1,2,1,1,2
DATA 1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,2,1,2,2,2,2,2,2
DATA 1,1,1,1,1,2,2,2,2,2,2,2,1,1,1,1,1,2,2,2,2,1,1,1,2,2,2,1,1,1,1,1
DATA 1,1,1,1,1,2,1,2,1,2,1,2,2,2,2,2,2,2,1,1,2,2,2,2,2,1,1,1,1,1,1,1
DATA 1,2,2,2,2,2,1,2,1,2,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,2,2,2
DATA 1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,2,2,2,2,1,1,1,2,2,2,2,2,2,1,1,1
DATA 1,1,1,1,1,1,2,2,2,2,2,2,2,1,1,2,1,1,1,1,1,1,1,2,1,1,1,1,1,1,2,1
DATA 1,1,1,1,2,2,2,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,1,1,2,2,2,2,2,1
DATA 1,1,2,2,2,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,2,1
DATA 1,1,1,1,2,2,2,2,2,2,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1
DATA 1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2
DATA 0,0

'LEVEL2DAT
DATA 2,2,2,2,2,2,1,2,2,2,1,1,1,1,1,1,2,2,2,2,1,1,1,1,1,2,1,1,1,2,1,1
DATA 1,1,1,1,1,2,2,2,1,1,2,1,1,1,2,2,2,1,1,2,1,1,1,1,1,2,1,1,1,2,2,2
DATA 2,2,1,1,1,1,2,1,1,1,2,1,1,1,2,1,1,1,1,2,1,1,1,1,1,2,1,1,1,1,1,2
DATA 1,2,2,2,2,2,2,1,1,1,2,2,2,2,2,1,1,1,1,2,2,2,1,1,2,2,2,2,2,2,2,2
DATA 1,1,1,1,2,1,1,1,2,1,1,1,1,1,2,1,1,2,1,1,1,2,2,1,1,1,1,1,2,1,1,1
DATA 1,1,1,2,2,1,1,1,2,2,2,2,1,1,2,1,2,2,1,1,1,1,2,1,1,2,2,2,2,1,1,2
DATA 2,2,2,2,1,1,1,1,1,1,1,2,2,2,2,1,2,1,1,1,2,2,2,1,1,1,1,1,2,1,1,2
DATA 1,1,1,2,2,2,2,2,2,1,1,1,1,1,1,1,2,1,1,1,2,1,1,1,1,1,1,1,2,1,1,2
DATA 1,1,1,1,1,1,1,1,2,2,2,2,2,2,1,1,2,2,2,2,2,1,1,1,2,2,2,2,2,1,2,2
DATA 1,1,1,2,2,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,2,2,2,1
DATA 2,2,2,2,1,1,1,1,2,1,1,1,1,2,2,2,2,2,2,2,2,1,1,2,2,2,1,1,2,1,1,1
DATA 2,1,1,1,1,2,2,2,2,1,1,2,2,2,1,1,1,1,1,1,1,1,1,2,1,2,1,1,2,1,1,1
DATA 2,2,2,2,2,2,1,1,1,1,1,2,1,1,1,1,1,1,1,2,2,2,2,2,1,1,1,1,2,1,1,1
DATA 1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,2,2,2,2,1,1,2
DATA 1,1,1,1,2,2,2,1,1,1,2,1,2,1,2,1,2,1,2,1,1,1,2,2,2,2,1,1,1,1,1,2
DATA 1,1,1,2,2,1,1,1,1,1,2,1,2,1,2,1,2,1,2,1,1,2,2,1,1,1,2,2,2,2,2,2
DATA 2,2,2,2,1,1,1,2,2,2,2,1,2,1,2,1,2,1,2,1,1,2,1,1,1,1,2,1,1,1,1,1
DATA 1,1,1,2,2,2,2,2,1,1,1,2,2,1,1,1,1,1,2,2,2,2,2,2,2,2,2,1,1,1,1,1
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,1,1,1,1,1,1,1
DATA 0,0

LEVEL1:
YN=INT(RND(1)*1500)
IF YN=2 THEN ELSE RETURN
BG=INT(RND(1)*608)+1
IF GRIDC(BG)=1 THEN RETURN
IF GRIDC(BG)=2 THEN ENEMY=ENEMY+1
GRIDC(BG)=0
X=GRIDX(BG)
Y=GRIDY(BG)
FOR R=7 TO 1 STEP-1
CIRCLE(XX,YY),R,0
CIRCLE (X,Y),R,2
NEXT R
XX=X:YY=Y
RETURN



have fun and reply for suggestions
o live is to die, to die is to expel, to expel is to exist is to live without knowing to be
Reply
#2
I am also a newbie and I will try your program tonight. Go to Bowling for John to try mine out, as well. I'll help you, you help me. Alright?
Reply
#3
yep thats what we do, im not exactly a newby but just not quite advanced but i try to learn. n e way i forgot to mention since the game isnt quite finished when you first start you dont see your man you have to hit the down button and then it will appear also you can only use the arrow keys on the number pad or 2,4,6,8 on the top row i cant figure out what the scane codes are for the arrow keys and the ones i did find arent right but theres a couple modifications still needed to my game i will work on them later but for now i will check out your game and see what we can do
o live is to die, to die is to expel, to expel is to exist is to live without knowing to be
Reply
#4
I don't intend to sound rude, but please, can you stop typing like if you were sending a SMS? Big Grin Use stops and commas and write the full words, please, so I (and others) can understand you and help you.

Just a call for some style Wink In a cell phone it's normal that you write that way, but now you have a good keyboard and almost unlimited space.
SCUMM (the band) on Myspace!
ComputerEmuzone Games Studio
underBASIC, homegrown musicians
[img]http://www.ojodepez-fanzine.net/almacen/yoghourtslover.png[/i
Reply
#5
QB 4.5:: out of stack space @ 161:001
but cool
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)