Kirjautuminen

Haku

Tehtävät

Koodit: QB: Kaahailua parkkipaikalla

Kirjoittaja: Antti Laaksonen

Kirjoitettu: 22.02.2002 – 21.11.2011

Tagit: pelinteko, koodi näytille, peli, vinkki

Tämä on toinen autopelin alku, jossa kaahaillaan autiolla parkkipaikalla limusiinilla. Tekemisessä on käytetty hyväksi DRAW-komentoa, jonka avulla grafiikka piirtyy suhteellisen nopeasti ja vaivattomasti, joskin melko epätarkasti. Fysiikasta ei ole tietoakaan, mutta ehkä tällä silti jotain tekee.

SCREEN 13
DIM x AS SINGLE, y AS SINGLE
pii = 4 * ATN(1)
x = 100
y = 100
kaantyvyys = 5
nopeus = 2
kulma = 0

'näytön tyhjennys
LINE (0, 0)-(320, 200), 8, BF

DO
  'vanhojen jälkien siivous
  LINE (x - 50, y - 50)-(x + 50, y + 50), 8, BF

  'uuden kohdan laskeminen
  x = x - SIN(kulma * 2 * pii / 360) * nopeus
  y = y - COS(kulma * 2 * pii / 360) * nopeus

  'auton piirtäminen: tuota ei liiemmin kannata tutkia
  DRAW "bm" + STR$(INT(x)) + "," + STR$(INT(y))
  DRAW "TA" + STR$(kulma)
  DRAW "bu5c14r2br4r2br1bd1 c0l10"
  DRAW "d1br1c1r8c0br1d1bl1c1l8c0bl1d1"
  DRAW "br1c1r8c0br1d1bl1c1l8c0bl1d1"
  DRAW "c0r10d1bl1c3l8bl1c0d1r10"
  FOR i = 1 TO 6
    DRAW "d1bl1c1l8c0bl1d1br1c1r8c0br1d0"
  NEXT
  DRAW "d1l10bd1br1c4r0br8r0"

  'näppäimien luku
  SELECT CASE INKEY$
  CASE CHR$(0) + "K"
    kulma = kulma + kaantyvyys
    IF kulma > 360 THEN kulma = kulma - 360
  CASE CHR$(0) + "M"
    kulma = kulma - kaantyvyys
    IF kulma < 1 THEN kulma = kulma + 360
  CASE CHR$(27)
    END
  END SELECT

  WAIT &H3DA, 8
LOOP

Kommentit

snakari [23.02.2002 10:21:08]

#

Hyvin toimii, paitsi että reunoista ei tarvisi mennä ulos ja jarrutkin ois kivat!
Mut nää on edelleen esimerkkejä!

vipemype [23.02.2002 12:53:43]

#

Hyvältä näyttää

(nimetön) [30.06.2002 15:57:34]

#

mites tohon vois saaha kuvan? nii siis tohon autoks.

Olli Vanhoja [23.07.2002 11:04:57]

#

Joo no toi grafiikka vähä sotkee välil, ei varmaa johdu GF2 näytön ohjaimesta.

Toni_ [31.07.2002 19:51:05]

#

Äärettömän loistava ajopeli, enää ei tarvi muuta kuin reunat ja päämäärän.

Sami S. [11.09.2002 22:54:03]

#

Kova peli on! Nopeampi kääntyvyys ja reunat niin olis melkein täydellinen!!!

jake99 [05.01.2003 10:39:05]

#

Minkä takia mun qbasic ei hyväksy noita kulma-sanoja. aina se ilmoittaa jostain kaksoismerkityksestä. mitä se tarkoittaa?

M.K [20.02.2003 21:19:10]

#

joo on hyvin tehty...!!

CodeMan [26.02.2003 18:35:44]

#

Tosi yksinkertainen,vaikka koodi on noin pitkä vaikea,olen kyllä kokeillut:)

hunajavohveli [05.09.2003 20:43:09]

#

kaksoismerkitys? <-- Dublicate definition?
Voi olla, että kopioidessasi koodia sinulta jäi jotain pois. Tiedän kyllä mistä ongelmassa on kyse, mutta en osaa selittää tarkemmin. Kopioi koodi uudelleen.

hunajavohveli [05.09.2003 20:47:48]

#

Tuo auton liikuttaminen kulman avulla muuten. Nuo SIN ja COS komennot, kun luulevat käyttäjän antavan kulman radiaaneina. Ei tarvittaisi pitkää litaniaa:
SIN(kulma * 2 * pii / 360)
Riittäisi pelkästään: SIN(kulma * rad), jossa rad on asteiden suhde radiaaneihin (tai toisin päin). Se lasketaan näin:
rad = ATN(1) * 4 / 180
Pelkkä: ATN(1) * 4 muuten laskeen piin tarkan arvon, joten ei aina tarvitse kirjoittaa: pii = 3.14159 jne...
Eli asteiden suhde radiaaneihin on pii / 180.

stere [31.01.2004 15:17:25]

#

Mistä q-BASICIN SAA?

Fisher [17.04.2004 20:47:51]

#

tallenna tuo koneelle hakemistoon C:\qbasic: http://download.microsoft.com/download/win95upg/tool_s/1.0/W95/EN-US/olddos.exe

Gary534 [11.05.2005 12:30:09]

#

Ian hyvä vinkki. Jos haluaa tehdä oman matopelin niin voi kopsatata ton koodin ja jos mato liikkuu omasta mielestä liian kovaa niin vaihtaa ton nopeuden tuolta ylhäältä.

Dude [25.02.2007 21:43:02]

#

tästä saa version 7.1 http://personal.inet.fi/peli/samuli/qbasic71.zip

New Samppi [08.01.2009 16:29:01]

#

hunajavohveli kirjoitti:

Pelkkä: ATN(1) * 4 muuten laskeen piin tarkan arvon

Ei se muuten tarkkaa arvoa laske, ihan vaan 3,141593. Ja sitäpaitsi piihän on irrationaaliluku eli se jatkuu loputtomiin. Ei sitä QBasic noin helposti laskee.

sammakkomies [06.12.2009 04:47:00]

#

miksi tuolla on pari kommenttia joiden tekijän nimi ei linkivä?

Kirjoita kommentti

Muista lukea kirjoitusohjeet.
Tietoa sivustosta