Preskoči na glavno vsebino
Učilnica FRI 23/24
  • Domov
  • Več
Zapri
Preklopi iskalni vnos
Slovenščina ‎(sl)‎
English ‎(en)‎ Slovenščina ‎(sl)‎ Македонски ‎(mk)‎ Русский ‎(ru)‎ 한국어 ‎(ko)‎
Trenutno uporabljate gostujoči dostop
Prijavite se
Domov
Course Activities
Forumi Naloge Viri
Nedavno dostopani predmeti
You are not enrolled in any courses
  1. p1
  2. Oceni 9 - 10: Slalom v d-MOL-u

Oceni 9 - 10: Slalom v d-MOL-u

Zahteve zaključka
Odprto: sreda, 10. januar 2024, 00.00
Rok za oddajo: ponedeljek, 29. januar 2024, 23.59

Oddelek za motorni promet in gospodarske dejavnosti MOL namerava pripraviti didaktično igro, katere namen bo promocija kolesarjenja v Ljubljani. Hkrati bo igra urila reflekse kolesarjev in tako prispevala k še večji varnosti kolesarjenja v Ljubljani. Kako bo videti, kaže video. MOL je pripravil tudi vse slike in zvoke, ki jih potrebujete; pripeti so k nalogi. Vaša naloga je le še, da sprogramirate igro.

(Ob snemanju videa sem opazil napako v zaznavanju trkov. Seveda se je morala prvič pokazati ravno takrat. Zdaj sem jo najbrž odpravil, vendar se mi ne da še enkrat snemati. :)


Za programiranje uporabite modul PyGame. Ker ni del standardne Python distribucije, ga morate namestiti. Navodila za namestitev so na spletni strani modula. Za začetek si lahko pomagate s primerom na spletni strani modula.

Razlaga posamičnih funkcij knjižnice PyGame seveda ni tema Programiranja 1. Ker gre za oceni 9 in 10, je umestno pričakovati, da bo znal študent sam pogledati dokumentacijo in si pomagati s primeri. :) To tudi ne bi smelo biti pretežko; vaše glavno delo bo vseeno programiranje. Če si ne boš brez potrebe zapletal(a) življenja, bi moralo biti celotne kode manj kot 100 vrstic.

Ocena 9

Izdelajte igro tako, da bo

  • na dnu okna velikosti 800x600 prikazan kolesar, ki ga bo igralec lahko premikal s tipkama levo in desno,
  • se bodo z zgornjega roba okna proti kolesarju spuščale ovire in grbi. Koordinate x ovire je naključno število; ovire oz. grb se izbirajo naključno. Gostota ovir je določena tako, da se
    • prva ovira pokaže na začetku igre;
    • po tem, ko pokažete oviro, določite, po koliko krogih osnovne zanke se pokaže naslednja ovira. To število naj bo naključno izbrano med 30 in 150.
  • Ovire se pomikajo s hitrostjo 1 točke na krog, pri čemer je trajanje kroga clock.tick(480). Ko ovira doseže dno okna, se izbriše.
  • Med igro se v neskončni zanki ponavlja zoprni zvok (arcade.mp3), ki ga slišite v videu.

Ocena 10

Dopolnite igro, da bo videti tako kot v videu.

  • Na vrhu zaslona je v na levi strani, centrirano v sredini in na desni strani izpisano število točk, nivo in število življenj.
  • Kolesar ima v začetku tri življenja. Ob vsakem trku v oviro (ovire so vse slike, razen kolesarja in grba) izgubi eno življenje. Ko izgubi zadnje, se igra ustavi.
  • Kolesar ima v začetku 0 točk. Vsakič, ko pobere grb, dobi 1 točko.
  • Po vsakih pridobljenih 5 točkah, kolesar napreduje na naslednji nivo.
  • Gostota ovir ni več naključno število med 30 in 150 temveč med 30 in 160 - 10 * nivo. Če je nivo, recimo, 4, je gostota ovir med 30 in 120. Od nivoja 13 naprej je gostota ovir 30.
  • Hitrost ovir ni več 1 točko na krog zanke, temveč 1 + nivo / 10 točk na krog zanke. Če je nivo, recimo, 4, je hitrost ovir 1.4 točke na krog zanke.
  • Ob trku v oviro se oglasi zvok explosion.mp3, ob pobiranju grba pa jump.mp3. Pri tem se ne prekine zvok, ki teče med igro. (Uporabljaj pygame.mixer in predvajaj zvoke na različnih kanalih.)

Datoteke

  • zvok-in-slika.zip zvok-in-slika.zip
    10. januar 2024, 22:54
◄ Rešitev
Uporabniški vmesniki ►
Trenutno uporabljate gostujoči dostop (Prijavite se)
Pridobi mobilno aplikacijo Obvestilo o avtorskih pravicah
Stran poganja Moodle