tämä on enmsimmäinen pelini....
start:
 SCREEN 12
 CLS
 RANDOMIZE TIMER
 x = INT(RND(20) * 600)                 'pallon muuttujat
 y = INT(RND(20) * 400)
xl = -1                   'liike ja määritys
yl = -1
x1 = 280
x2 = 360                  'mailan muutujat
y1 = 470
y2 = 470
pisteet = 0
LOCATE 15, 29                                 'alkutiedot
COLOR 9:  INPUT "anna nimesi >", nimi$
SLEEP 1
CLS
LOCATE 15, 29
COLOR 4:  PRINT "peli alkaa!!!!!!!!"
SLEEP 2
CLS
DO
IF INKEY$ = "q" THEN GOTO kuolema
                           'pallon piirto ja liike
CIRCLE (x, y), 10, 10
PAINT (x, y), 10
FOR i = 1 TO 10000
NEXT
PAINT (x, y), 0
CIRCLE (x, y), 10, 0
                             'onko pallo melan kohalla
IF x > x1 AND x < x2 THEN
       IF y + 10 > y2 THEN   'jos on niin...
       yl = -1               'vaihtaa suuntaa
pisteet = pisteet + 1
       END IF
END IF
x = x + xl
y = y + yl
                           'kuvaruudun määritys ja kimpoaminen
IF x = 630 THEN xl = -1
IF x = 10 THEN xl = 1
IF y = 470 THEN GOTO kuolema
IF y = 10 THEN yl = 1
                            'maila ja toiminnot
LINE (x1, y1)-((x2 - 10), (y2 + 10)), 3, BF
l$ = INKEY$
                 'vasempaan
IF l$ = "j" THEN
IF x1 - 10 > 0 THEN   'outoa?
LINE (x1, y1)-((x2 - 10), (y2 + 10)), 0, BF
 x1 = x1 - 70
 x2 = x2 - 70
 END IF
END IF
                 'oikeaan
IF l$ = "l" THEN
IF x2 + 10 < 640 THEN        '
LINE (x1, y1)-((x2 - 10), (y2 + 10)), 0, BF
 x1 = x1 + 70
 x2 = x2 + 70
 END IF
END IF
IF l$ = "q" THEN GOTO lopetus
LOOP
kuolema:
LOCATE 15, 29
COLOR 6:  PRINT "nyt kyllä kuolit "; nimi$;
SLEEP 1
LOCATE 20, 29
COLOR 2:  PRINT "pisteesi on:   "; pisteet
SLEEP 2
CLS
IF pisteet <= 10 THEN
LOCATE 15, 29
COLOR 15:  PRINT "YRITŽ PARANTAA "; nimi$
ELSEIF pisteet > 10 AND pisteet < 20 THEN
LOCATE 15, 29
COLOR 8:  PRINT "HYVŽ "; nimi$
ELSE
LOCATE 15, 29
COLOR 13: PRINT "TE OLETTE LOISTAVA "; nimi$
END IF
SLEEP 2
CLS
LOCATE 15, 28
INPUT "pelataanko uudestaan ? k/e >  ", s$
CLS
IF s$ = "k" THEN GOTO start
IF s$ = "e" THEN GOTO lopetus
lopetus:
ENDantaisiko joku vinkkejä koodin optimoimiseen.
No en optimointiin nyt ihmeempiä keksi... ihan hieno koodi ensimmäiseksi peliksi. Kannattaa muuten käyttää mieluummin subeja ja funktioita kun tuota goto -rakennetta...
joo, gotot pois ja ton sais varmaan pienempään tilaan..
en jaksanu ettiä kontrolleja, mutta näyttää jopa toimivan
l$ = INKEY$ > l$ = LCASE$(INKEY$)
sori kun näitä tulee kokoajan
näppiksenluku kannattais varmaan toteuttaa suoraan portista &h60, eli näppäin=inp(&h60) ja sitten sitä näppispuskurin tyhjennystä en nyt jaksa muistaa...
Hyvä, varsinkin ensimmäiseksi peliksi.
Juu, kyllä tuo on oikein hyvä peli!
IF s$ = "k" THEN GOTO start
IF s$ = "e" THEN GOTO lopetus
??????????????????????????
IF s$ = "k" THEN CALL SUB start
IF s$ = "e" THEN CALL SUB lopetus
unohtakaa edellinen
nolo stume...
Lähellä puolivalmista ensimmäistä peliäni.
Aihe on jo aika vanha, joten et voi enää vastata siihen.