ZAP - Tutorial Bomber (Curses) (2019/2020)
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Cvičenie sa venuje tvorbe hry Bomber pomocou knižnice curses, ktorá slúži na jednoduchú ASCII grafiku v termináli a súvisí so zadaním číslo 6. Vysvetľuje sa princíp hry, kde bombardér preletáva nad mestom a zhadzuje bomby na budovy, pričom cieľom je zničiť všetky poschodia všetkých budov. Podrobne sa preberá inicializácia knižnice (funkcie InitScreen, EndWin, noecho, keypad, curs_set, nodelay), nastavenie kompilátorového prepínača lcurses v súbore .bashrc a overenie funkčnosti preloženého programu. Ďalej sa rieši vytvorenie sveta ako jednorozmerného poľa výšok budov generovaných náhodne pomocou funkcie rand a time, s obmedzením na polovicu výšky obrazovky a vynechaním okrajov obrazovky. Na záver sa ukazuje vykresľovanie mesta pomocou funkcií move, printw a refresh, spolu s implementáciou oneskorenia pomocou nanosleep a štruktúry timespec pre riadenie rýchlosti pohybu bombardéra.
- - Cvičenie z tutoriálov demonštruje prácu s knižnicou curses potrebnou pre zadanie č. 6
- - Princíp hry: bombardér preletáva nad mestom a zhadzuje bomby, cieľom je zbúrať všetky budovy
- - Inicializácia curses pomocou initscr, noecho, keypad, curs_set, nodelay a ukončenie pomocou endwin
- - Nutnosť nastaviť prepínač -lcurses v .bashrc, inak preklad zlyhá
- - Mesto sa reprezentuje jednorozmerným poľom výšok budov generovaných náhodne cez rand a time
- - Výšky budov sú obmedzené na polovicu výšky obrazovky (macro LINES) a okraje obrazovky ostávajú bez budov
- - Vykresľovanie sveta pomocou move, printw a refresh doplnené o oneskorenie cez nanosleep a štruktúru timespec
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky