Olen tehnyt seuraavan laisen liikkumiskoodin:
DO LINE (x, y)-STEP(10, 10), 15, BF IF INKEY$ = "s" THEN LINE (x, y)-STEP(10, 10), 0, BF y = y + 4 LINE (x, y)-STEP(10, 10), 15, BF END IF IF INKEY$ = "w" THEN LINE (x, y)-STEP(10, 10), 0, BF y = y - 4 LINE (x, y)-STEP(10, 10), 15, BF END IF IF INKEY$ = "q" THEN END IF INKEY$ = "a" THEN LINE (x, y)-STEP(10, 10), 0, BF x = x + 4 LINE (x, y)-STEP(10, 10), 15, BF END IF LOOP
Ongelmana on että tuo nykii aika paljon.
Miten tuon voisi toteuttaa nykimättä?
Tuossa ohjelmassa on se vika, että joka kohdassa tarkastetaan eri näppäimenpainallus ja jopa 75% painalluksista jää tunnistamatta. Seuraava koodi toimii paljon paremmin, SELECT CASEa käyttäen:
SCREEN 13
LINE (x, y)-STEP(10, 10), 15, BF
DO
SELECT CASE LCASE$(INKEY$)
CASE "s"
LINE (x, y)-STEP(10, 10), 0, BF
y = y + 4
LINE (x, y)-STEP(10, 10), 15, BF
CASE "w"
LINE (x, y)-STEP(10, 10), 0, BF
y = y - 4
LINE (x, y)-STEP(10, 10), 15, BF
CASE "q"
END
CASE "a"
LINE (x, y)-STEP(10, 10), 0, BF
LINE (x, y)-STEP(10, 10), 0, BF
x = x + 4
LINE (x, y)-STEP(10, 10), 15, BF
END SELECT
LOOPKiitos! Nyt pyörii nopeammin...
lainaus:
Tuossa ohjelmassa on se vika, että joka kohdassa tarkastetaan eri näppäimenpainallus ja jopa 75% painalluksista jää tunnistamatta. Seuraava koodi toimii paljon paremmin, SELECT CASEa käyttäen:
SCREEN 13 LINE (x, y)-STEP(10, 10), 15, BF DO SELECT CASE LCASE$(INKEY$) CASE "s" LINE (x, y)-STEP(10, 10), 0, BF y = y + 4 LINE (x, y)-STEP(10, 10), 15, BF CASE "w" LINE (x, y)-STEP(10, 10), 0, BF y = y - 4 LINE (x, y)-STEP(10, 10), 15, BF CASE "q" END CASE "a" LINE (x, y)-STEP(10, 10), 0, BF LINE (x, y)-STEP(10, 10), 0, BF x = x + 4 LINE (x, y)-STEP(10, 10), 15, BF END SELECT LOOP
joo testaan vaan miten toi lainausjuttu toimii.... ;P
Aihe on jo aika vanha, joten et voi enää vastata siihen.