JavaScript beadandó feladat

Labirintus

"Kréta szigetén élt egy szörny egy labirintusban, akit Minótaurusznak hívtak. Mínosz király knószoszi csodaszép palotájában állt ez a labirintus, szövevényes útvesztőiből ember még élve nem került ki, mert a bikafejű ember testű szörny felfalta az áldozatul odaküldötteket." A monda szerint a szörnyet az ifjú Thészeusznak sikerült legyőznie, aki nagyon elgyengült a harcban. Thészeusznak a kezében csupán egyetlen fáklya ég, az sem sokáig, és minden lépéssel gyengül az ereje. Sajnos most nem segített neki a szépfürtű Ariadné, így Neked kell segíteni Thészeusznak kijutni a labirintusból, mielőtt végképp elgyengül.

Szabályok

A labirintus egy NxM elemből álló játéktábla, amely alapvetően kétféle elemből: falból és padlóból épül fel. A játékmezőt mindenhol fal veszi körbe, csupán egy helyen van rajta kijárat, ide kell Thészeusznak eljutnia, akinek a kiindulási pontja valahol a labirintus gyomrában van.

A labirintusban nincsen világítás, csupán Thészeusz fáklyája világítja meg az utat két mező távolságra, azaz a főhős körül egy 5x5-ös négyzetben, de a falakon a fáklya sem tud átvilágítani.

Thészeusz kiindulási pontja valahol a labirintus gyomrában van. Irányítása a billentyűzet kurzorbillentyűivel történik, egyszerre egyet léphet vízszintesen vagy függőlegesen.

Kezdetben Thészeusznak van valamennyi életerő pontja, és a fáklyájának égési ideje másodpercben. Minden lépéssel az életerő pont eggyel csökken, a fáklya égési ideje pedig az eltelt időnek megfelelően fogy. Elérve a kijáratot írjuk ki a hátralévő időt és az életerőpontot.

Speciális mezők:

Elérhető funkciók:

Pályák

A játékban legyen lehetőség három különböző méretű pálya közül választani:

Megjelenés

A pályák grafikai elemeire és a dizájnra nincsenek megkötések. Egy pályának tartalmaznia kell:

Beadás

A megoldásokat a webprogramozas.inf.elte.hu szerverre kell feltölteni, és publikusan elérhetővé tenni. Az oldalra való hivatkozást a gyakorlatvezetőnek kell elküldeni e-mailben.

A webprogramozas szerveren a beadandót a public_html mappán belül egy beadjs mappában kell elhelyezni. Annak érdekében, hogy más ne férjen a mappán belüli fájlokhoz, adjunk egyedi nevet az állományoknak (pl. ne index.html és bead.js legyen az állományok neve). A beadjs mappát érdemes 711-es jogosultsággal ellátni, azaz a csoportnak és másoknak csak X jogot adni (pl. WinSCP-ben jobb gomb/Tulajdonságok párbeszédablakban).

Határidő: 2014. április 13. éjfél

Értékelés

Szempont Pontszám
Labirintus megjelenik kötelező
Hős mozgatása kurzorbillentyűkkel kötelező
Idő kijelzése: számokkal kötelező
Életerő kijelzése: számokkal kötelező
Kijárathoz érkezés ellenőrzése kötelező
1 pálya kötelező
Pályaválasztó képernyő 1
Három pálya 3
Fáklyavilágítás 5x5-ös mezőben 4
Idő kijelzése: sávval 1
Életerő kijelzése: sávval 1
Speciális mezők 3
Labirintus világítás ki-/bekapcsolása 3
nem a public_html/beadjs mappába van feltöltve nincs beadva
1 hét késés -2
2 hét késés -4
2 hétnél több késés nincs elfogadva (nincs jegy)
Pontszám Értékelés
13-16 0,5
10-12 0
< 10 -0,5