Þessi tölvuleikur samanstendur af ferhyrndu borði, tveimur spöðum sem spilarar stjórna, tveimur boltum sem ferðast á misjöfnum hraða og stigatöflum sem tilkynna stig spilara.

Kóðinn sem keyrir þennan leik er ekki nema 250 línur (ef við teljum ekki með útskýringartextann).

Í fljótu bragði þá hljóma 250 línur sem heill hellingur en skoðum aðeins hvað þarf að útfæra til að leikurinn virki sem skyldi.

 


 

SPAÐI

HREYFING:

  • Þarf að geta ferðast upp og niður þegar spilari ýtir á réttann takka
  • Uppfæra staðsetningu við hreyfingu
  • Má ekki fara útaf borðinu
    • Stoppar í staðinn fyrir að fara útaf borðinu

 

TEIKNA:

  • Teikna spaðann miðað við staðsetningu

 

RÖK

  • Getur fengið að vita staðsetningu bolta og lætur vita ef boltinn hittir spaðann eða ekki

 


 

BOLTI

HREYFING:

  • Þarf að geta ferðast upp og niður
  • Þarf að geta ferðast til hægri og vinstri
  • Má ekki fara útaf borðinu
    • Ef bolti hittir topp, þá ferðast hann niður
    • Ef bolti hittir botn, þá ferðast hann upp
    • Ef bolti hittir vinstri hlið, þá ferðast hann til hægri
      • Uppfærir stigatöflu, gefur hægri spilara stig
    • Ef bolti hittir hægri hlið, þá ferðast hann til vinstri
      • Uppfærir stigatöflu, gefur vinstri spilara stig
  • Má ekki fara í gegnum spaða
    • Ef bolti hittir spaða, þá breytist hreyfing öfugt á X-ás, þ.e. ef bolti var á ferð til hægri þegar hann hittir spaða, þá byrjar boltinn að ferðast til vinstri
  • Uppfæra staðsetningu miðað við hreyfingu

 

TEIKNA:

  • Teikna boltann miðað við staðsetningu eftir að búið er að uppfæra staðsetningu

 


 

STIGATAFLA

TEIKNA:

  • Teiknar stig fyrir spilara og uppfærist þegar bolti hittir aðra hvora hliðina

 


 

Þetta sýnir að það er heilmikið til að huga að í þessum leik.

 

ÁHUGAVERÐIR HLUTAR Í KÓÐA

Hérna ætla ég að vísa í nokkra áhugaverða hluta í kóðanum sem gaman er að skoða og fikta, og sjá síðan þær breytingar endurvarpast yfir í tölvuleikinn.

 

TENNISSPAÐAR

Í þessum hluta sést að vinstri og hægri spaðarnir eru búnir til og þeim gefnar staðsetningar og hvaða takkar stýra þeim.
Hægt er að prufa að færa spaðana nær miðju borðsins og prufa að spila leikinn þannig til að sjá hvaða áhrif það hefur.

Prufið að setja staðsetningu fyrir g_SpadiVinstri á X-ás = 130 og  g_SpadiHaegri á X-ás = 270 og sjáið hvað gerist.

Í kóðanum er tekið fram hæð og breidd spaðana,.

Spadi.prototype.halfWidth = 10;
Spadi.prototype.halfHeight = 50;

Þessi gildi er hægt að breyta og sjá útkomuna.

Þar sem Spaðinn er teiknaður, Spadi.prototype.teikna er hægt að finna línu sem stendur:

ctx.fillStyle = ‘Black’;

Í stað ‘Black’ má setja hvaða lit sem er til að breyta lit á spöðunum.

 

BOLTAR

Í þessum hluta sést að búnir eru til tveir boltar, einn sem er hraður og einn sem er hægur.

Þeir heita þeim frumlegu nöfnum g_BoltiHradur og g_BoltiHaegur.

Staðsetning boltanna þegar þeir eru búnir til segir til um hvar þeir verða til á borðinu um leið og leikurinn er byrjaður, síðan uppfærist þetta gildi fyrir hvert skref í leiknum.

Það getur verið gaman að fikta í radíusnum til að láta boltann verða stærri eða minni.

Það getur líka verið gaman að fikta í hraða boltans, bæði á X- og Y-ás. Prufið fullt af gildum og fáið tilfinningu fyrir hvernig öll þessi gildi virka saman.

 

KEYRA LEIK

Í þessum hluta er svokölluð “Main Loop”, en það er lífið í tölvuleiknum. Við stillum þetta fall til að keyra á 16.666ms fresti, og í hvert skipti sem það keyrir þá uppfærir það allar stöðurnar í leiknum og teiknar uppfærðu stöðurnar.

 

Höfundur efnis er Daníel Páll Jóhannsson, forritari