ITI0011:Mull

Allikas: Kursused
Redaktsioon seisuga 20. aprill 2015, kell 08:35 kasutajalt Ago (arutelu | kaastöö) (→‎Põhiosa (5p))
Mine navigeerimisribale Mine otsikasti

Tagasi kursuse lehele

Ülesande tähtaeg: 7. - 8. mai

Detailid ja hindamise osa täpsustub

Kirjeldus

Kirjutada graafilise kasutajaliidesega programm, mis kuvab kasutajale kujundeid, mis vahetavad oma asukohta ekraanil. Kujundile klikkides saab kasutaja/mängija punkte. Mängu erinevaid parameetreid saab seadistada eraldi menüüs.

Seda ülesannet on võimalik teha ka Androidi peal.

Põhiosa (5p)

  • Tuleb kirjutada graafilise kasutajaliidesega (GUI) programm, mis kuvab vähemalt kujundeid:
    • sinine täidetud ruut
    • punane täidetud ring
  • Kujundite asukohad muutuvad juhuslikult teatud ajavahemiku möödudes (näiteks 1 sekund)
  • Kujundid ei tohi üksteisega kattuda
  • Kujundil klikates eemaldatakse see ekraanilt
  • Kujundil klikates saab mängija punkte (koguse võite ise määrata).
  • Mängija punktisumma kuvatakse jooksvalt GUI rakenduses.

Lisaosa (1p)

  • Kujundite asukohti muudetakse ühekaupa, mitte kõik kujundid korraga
    • näiteks ruudu asukoht muutub 850ms tagant, ringi asukoht 600ms tagant
  • Iga kujundi asukohta vahetatakse kolm korda. Peale seda kujund eemaldatakse automaatselt
    • Juhul, kui mängija klikib kujundit, mida näidatakse esimest korda, saab ta 3p. Juhul, kui kujundit on ühe korra ringi paigutatud, siis 2p. Peale teist ümberpaigutamist 1p.
    • Klikkimata ja automaatselt eemaldatud kujund annab mängijale -1p.
  • Kui kõik kujundid on ekraanilt eemaldatud, kuvatakse kogutud punktisumma.

Lisaosa (1p)

  • Juhul, kui kujund ekraanilt eemaldatakse, lisatakse juhuslikkuse alusel uus kujund.
  • Kujundeid peaks ekraanil olema kogu aeg kolm (või rohkem)
  • Kujundite asukohad vahetuvad kiirenevas tempos.
  • Mäng kestab, kuni mängulaualt on automaatselt eemaldatud 5 klikkimata kujundit
  • Mängija punktisumma on pidevalt ekraanil näha
  • Kujundid on erineva suurusega (näiteks ruut on 2x väiksem kui ring) ja nende eest saab erinevalt punkte (väiksema ruudu eest saab 2x rohkem punkte).

Lisaosa: seaded (1p)

  • Programmil on lisaks mängu vaatele ka seadete vaade, kus peaks saama erinevaid parameetreid seadistada. Näiteks
    • kujundite minimaalne arv ekraanil
    • kujundite suurus
    • kujundite asukoha muutumise kiirus jne
  • Mäng peab arvesse võtma seadistausi
  • Seadistuste muutmisel tuleb kontrollida, et kasutaja ei sisesta ebaadekvaatseid väärtusi (mäng ei ole enam mängitav). Võib teha ettemääratud valikud, valida saab 3 kiiruse vahel
  • Seadistused peaks säilima peale programmi uuestikäivitamist.

Lisaosa: edetabel (2p)

  • Programm salvestab mängude tulemused
  • Meeles hoitakse 10 parimat skoori
  • Koos skooriga salvestatakse mängija nimi (saab sisestada juhul, kui mängu lõpptulemus annab koha 10 parema seas) + skoori saavutamise aeg
  • Mängides näidatakse lisaks mängija hetkeskoorile ka parimat skoori.
  • Skooritulemused on võimalik nullida