Kontrolní otázky od AI – Týden 14/2026 (od 05.04.)
Student: adeno
Vysvětli mi, proč je pro správné odstraňování jednotek ve funkci
handle_combatnaprosto nezbytné použít zápisunits[:] = ...místo obyčejnéhounits = ...a co by se v průběhu hry dělo s jednotkami na obrazovce, kdybys ty dvojtečky vynechal?
Student: damykk
Proč jsi pro cestu k datovému souboru použil konstrukci
Path(__file__).with_suffix('.json')a co konkrétního se stane s názvem ukládaného JSON souboru, pokud svůj skript přejmenuješ ztodolist.pynaseznam_ukolu.py?
Student: drobek
V tabulce v README jsi aktualizoval datum u projektu „piškvorky“ pod číslem 5, ale v repozitáři máš složky jen do čísla 03 – můžeš mi vysvětlit, proč se číslování v tabulce neshoduje s názvy tvých složek a kde se vlastně nachází kód k těmto piškvorkám?
Student: Gajdy_wdym
V commitu uvádíš, že jsi „nerfnul“ ceny prvků (např. u Scandia jsi ji snížil z 20 000 na 15 000), což je v herní terminologii rozporuplné, tak mi vysvětli, jaký má tato změna skutečný dopad na hratelnost a proč jsi musel u centrování textu v menu nově použít matematický vzorec s
get_width() // 2místo původního fixního odsazení?
Student: ilou
K čemu přesně v aktuální verzi kódu slouží maska
COIN_MASKnastavená v metoděsetFromCollideMasku objektuCoin, a jak by se změnilo chování hry, kdybys tento konkrétní řádek odstranil?
Student: Jarmil
Mohl bys mi vysvětlit, jaký konkrétní problém se zobrazením tabulky v README jsi řešil těmi dvěma po sobě jdoucími commity, ve kterých jsi pouze měnil počet mezer u data začátku, a proč se toto datum v dokumentaci liší o měsíc od času tvých úprav?
Student: Katana
V hlavní herní smyčce procházíš seznam bodů pomocí
for pellet in pellets[:]– k čemu přesně tam slouží ten zápis[:]a co konkrétně by se v programu stalo (nebo mohlo stát), kdybys tyto dvě tečky a závorky smazal?
Student: kejousek
V metodě
kontrola_vyhrypoužíváš pro kontrolu diagonály směrem doleva výrazall(self.platno[y+i][x-i] == hrac for i in range(5))– vysvětli mi, proč u souřadnicexhodnotuiodečítáš, zatímco uyji přičítáš, a před čím přesně tě v tomto případě chrání podmínkax - 4 >= 0?
Student: Litr
Všiml jsem si, že jsi upravil funkci
draw_cube_with_linetak, aby přijímala volitelné argumentydraw_xadraw_y, ale v celém kódu (ve stavech PLAYING i GAMEOVER) ji stále voláš bez nich – můžeš mi vysvětlit, k čemu tam tyto parametry tedy jsou a jakou konkrétní logiku zajišťuje ta podmínkaif draw_x is Nonena začátku funkce?
Student: Luros
V dokumentaci uvádíš, že vyhledávání nově spouštíš pomocí
pole.bind("<Return>", po_kliknuti)– jak jsi musel upravit definici (hlavičku) funkcepo_kliknuti, aby korektně zpracovala objekt události, který jí tato metoda automaticky předává?
Student: Maximistr
V metodě
render_particlesprovádíš normalizaci proměnnéangle_diffpomocí dvouwhilecyklů v rozsahu od -π do π; dokázal bys vysvětlit, v jaké konkrétní situaci by se bez této úpravy částice zobrazovaly chybně a jak přesně by se ten vizuální glitch na obrazovce projevoval?
Student: Mendys
V metodě
go_totřídyViewCubeHUDsčítášcoords[1] + ry_offset. Proč jsi pro boční pohledy (tlačítka L a R) zvolil v maticiself.viewshodnotu rotace 35 stupňů místo kolmých 90 stupňů, a jak se tato hodnota chová v kombinaci s offsetem 180 stupňů při aktivním režimu „BACK“?
Student: NahrazenoAI
Kdybys ve své funkci
vygeneruj_pribehsmazal klíčové slovoreturn, co přesně by se po spuštění programu vypsalo v konzoli na místě proměnnénovy_pribeh?
Student: Nvm_Sorry
Vysvětli mi, proč při vytváření
cube_rectpro kolize přičítáš k souřadnicímnew_xanew_yhodnotuhitbox_offseta co přesně by se stalo s pozicí hitboxu vůči vykreslené textuře hráče, kdybys toto přičtení vynechal?
Student: Paprikon34
V rámci tvé implementace funkce
calculate_weaknessesv souborufetch_pokedata.pypoužíváš kumulativní násobení (např.*= 2.0nebo*= 0.0) – mohl bys vysvětlit, k jakému výslednému násobku dojde u Pokémona se dvěma typy, pokud je jeden typ na útok velmi slabý (2.0x) a druhý je proti němu zcela imunní (0.0x), a proč je tento výsledek v kontextu herní mechaniky správně?
Student: Přezdívka
Proč u vykreslování polygonu srpku používáš pro vnitřní body metodu
reverse()(respektiveinsert(0, ...)), a jak by výsledný tvar vypadal, kdybys oba seznamy bodů (outerainner) spojil bez změny jejich pořadí?
Student: TheReader
V souboru
ffmpeg_conv.pymáš u textového polecmd_previewnastaven stavtk.DISABLED, který uživateli brání v úpravách – jakým konkrétním způsobem v metoděupdate_cmd_previewtento zákaz obcházíš, aby se v poli mohl aktualizovat vygenerovaný příkaz?
Student: Titan
Proč jsi v metodě
tic_tac_toepři vytváření tlačítek v cyklu použil v anonymní funkci (lambda) parametryr=i, c=ja co by se stalo, kdybys tam napsal jencommand=lambda: self.make_move(i, j, ttt_window)?
Student: virtualAI
V metodě
hrej_zvuku Ultra Snaka generuješ tón pomocímath.sina ukládáš ho doarray.arraytypu'h'. Co přesně v tomto vzorci ovlivňuje konstanta16383a proč by nastal problém, kdybys tuto hodnotu zvýšil nad 32767?
Student: Vozuch
V souboru
quiz.pymáš v hlavní smyčce řádekif vysledek is True: skore += 1– mohl bys mi vysvětlit, proč toto umístění způsobuje, že skóre během dvousekundové pauzy před další otázkou nekontrolovaně narůstá o stovky bodů, a jak bys tento logický problém opravil?