Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Please help with inkeys and array
#1
ok im starting to make a game in qbasic for my final project (teacher said we can ask for help) and i dont see why my programs not working right i have it where the x% and y% are (3,2) but when i tell it to print something with the array for that thing it only prints out the part of the array for (1,1) and thats only because i told it to make x or y = 1 if either = 0 and also if they = 6 then they stay at 5 also with the inkeys i have it where it says do until i press esc (chr$(27)) or until complete1 (for room1) is yes and for some reason none of it is working so please help me out

DECLARE SUB ROOM1 ()

REM 3/30/05
REM 4TH QT GAME

CLS
SCREEN 12
DO UNTIL DONE$ = "YES"
ROOM1



LOOP

SUB ROOM1
SCREEN 12
DIM X%
DIM Y%
DIM MOVE%(5, 5)
LET X% = 3
LET Y% = 2
CLS
OPEN "C:\ROOM1.TXT" FOR INPUT AS #1

DO UNTIL EOF(1)
INPUT #1, TEMP$
PRINT TEMP$
LOOP

LOCATE 28, 2: INPUT "WELCOME TO MY GAME WOULD YOU LIKE TO START NOW"; START$
CLS
DO UNTIL INKEY$ = CHR$(69) OR COMPLETE1$ = "YES"
IF MOVE%(X%, Y%) = MOVE%(1, 1) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TABLE BEHIND YOU AND A BAR TO YOUR LEFT"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (DOWN/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(1, 2) THEN
LOCATE 2, 2: PRINT "YOU ARE AT A BAR...THERE IS A BAR TENDER AT THE BAR"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (DOWN/RIGHT/LEFT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(1, 3) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A BAR TO YOUR LEFT AND A TRAPPED DOOR BEHIND YOU"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (DOWN/RIGHT/LEFT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(1, 4) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TABLE TO YOUR RIGHT"
LOCATE 3, 2: PRINT "YOU CAN EITHER GO (DOWN/RIGHT/LEFT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(1, 5) THEN
LOCATE 2, 2: PRINT "YOU ARE STANDIN AT A TABLE"
LOCATE 3, 2: PRINT "THERE IS A SWORD AND SOME ARMOR ON THE TABLE"
LOCATE 4, 2: PRINT "YOU CAN GO EITHER (DOWN/LEFT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(2, 1) THEN
LOCATE 2, 2: PRINT "YOU ARE AT A TABLE"
LOCATE 3, 2: PRINT "ON THE TABLE THERE IS A BEER CUP ON THE TABLE"
LOCATE 4, 2: PRINT "YOU CAN EITHER GO (UP/DOWN/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(2, 2) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TABLE TO YOUR LEFT AND A TRAPPED DOOR TO YOUR RIGHT"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(2, 3) THEN
LOCATE 2, 2: PRINT "YOU ARE AT A TRAPPED DOOR"
LOCATE 3, 2: PRINT "THERE IS AN OLD MAN STANDING BEHIND YOU"
LOCATE 4, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(2, 4) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TRAPPED DOOR TO YOUR LEFT"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(2, 5) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TABLE BEHIND YOU"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(3, 1) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TABLE FORWARD OF YOU"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(3, 2) THEN
LOCATE 2, 2: PRINT "YOU ARE BACK WHERE YOU STARTED"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(3, 3) THEN
LOCATE 2, 2: PRINT "YOU ARE STANDING BY A MAN"
LOCATE 3, 2: PRINT "YOU CAN SEE A TRAPPED DOOR INFRONT OF YOU"
LOCATE 4, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(3, 4) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A MAN TO YOUR LEFT"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(3, 5) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TABLE BEHIND YOU"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(4, 1) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TABLE BEHIND YOU"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(4, 2) THEN
LOCATE 2, 2: PRINT "IF YOU GO UP YOUR BACK WHERE YOU STARTED"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(4, 3) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A MAN INFRONT OF YOU"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(4, 4) THEN
LOCATE 2, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(4, 5) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TABLE BEHIND YOU"
LOCATE 3, 2: PRINT "YOU CAN GO EITHER (UP/DOWN/LEFT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(5, 1) THEN
LOCATE 2, 2: PRINT "YOU ARE STANDING AT A TABLE"
LOCATE 3, 2: PRINT "YOU CAN SEE AN AMULET ON THE TABLE"
LOCATE 4, 2: PRINT "YOU CAN GO EITHER (UP/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(5, 2) THEN
LOCATE 2, 2: PRINT "YOU CAN SEE A TABLE TO YOUR LEFT"
LOCATE 2, 2: PRINT "YOU CAN GO EITHER (UP/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(5, 3) THEN
LOCATE 2, 2: PRINT "YOU CAN GO EITHER (UP/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(5, 4) THEN
LOCATE 2, 2: PRINT "YOU ARE STANDING AT A TABLE"
LOCATE 3, 2: PRINT "YOU CAN SEE A BAG OF MONEY ON THE TABLE"
LOCATE 4, 2: PRINT "YOU CAN GO EITHER (UP/LEFT/RIGHT)"
ELSEIF MOVE%(X%, Y%) = MOVE%(5, 5) THEN
LOCATE 2, 2: PRINT "YOU ARE STANDING AT A TABLE"
LOCATE 3, 2: PRINT "ON THE TABLE YOU CAN SEE A BAG OF MONEY"
LOCATE 4, 2: PRINT "YOU CAN GO EITHER (UP/LEFT)"
END IF
PRINT "HI"
IF INKEY$ = CHR$(0) + CHR$(72) THEN
LET X% = X% - 1
ELSEIF INKEY$ = CHR$(0) + CHR$(75) THEN
LET X% = X% + 1
ELSEIF INKEY$ = CHR$(0) + CHR$(80) THEN
LET Y% = Y% - 1
ELSEIF INKEY$ = CHR$(0) + CHR$(77) THEN
LET Y% = Y% + 1
END IF
PRINT "HI"
IF X% = 0 THEN
LOCATE 2, 5: PRINT "YOU CAN NOT GO THAT WAY"
LET X% = 1
ELSEIF X% = 6 THEN
LOCATE 2, 5: PRINT "YOU CAN NOT GO THAT WAY"
LET X% = 5
ELSEIF Y% = 0 THEN
LOCATE 2, 5: PRINT "YOU CAN NOT GO THAT WAY"
LET Y% = 1
ELSEIF Y% = 6 THEN
LOCATE 2, 5: PRINT "YOU CAN NOT GO THAT WAY"
LET Y% = 5
END IF


LOOP
END SUB
eath
Reply
#2
Ummm...just a thought....where do you fill the Move%() array?
I don't see where you do that, and that's a prob
i]"But...it was so beautifully done"[/i]
Reply
#3
yeah i sorta saw that lol dont need it but heh i fixed the problem now i got a new problem lol gunna try to fix it on my own
eath
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)