Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
lehrkraefte:blc:informatik:ffprg1-2024:raster-tictactoe [2024/04/09 15:37] Ivo Blöchliger |
lehrkraefte:blc:informatik:ffprg1-2024:raster-tictactoe [2024/04/09 17:57] Ivo Blöchliger [Tic Tac Toe] |
||
---|---|---|---|
Line 20: | Line 20: | ||
* fügen Sie eine Variable '' | * fügen Sie eine Variable '' | ||
* Beginnen Sie das Spiel im '' | * Beginnen Sie das Spiel im '' | ||
+ | * Fügen Sie eine weitere Variable '' | ||
+ | * Programmieren Sie eine Unterfunktion '' | ||
+ | * Wenn geklickt wird und alle Zellen schon voll sind, soll das Spiel neu starten. | ||
<hidden Lösungsvorschlag> | <hidden Lösungsvorschlag> | ||
Line 58: | Line 61: | ||
</ | </ | ||
+ | |||
+ | ===== Gewinn überprüfen ===== | ||
+ | <WRAP todo> | ||
+ | In der Datei '' | ||
+ | * 0, wenn niemand 3 in einer Reihe hat | ||
+ | * 1 oder 2, wenn Spieler 1 oder Spieler 2 gewonnen hat. | ||
+ | |||
+ | Hinweise: | ||
+ | * Schreiben Sie zusätzlich eine Funktion '' | ||
+ | * Rufen Sie die Funktion '' | ||
+ | |||
+ | <hidden Teillösungsvorschlag> | ||
+ | <code javascript> | ||
+ | function sindsDrei(x, | ||
+ | let w = meinRaster.getValue(x, | ||
+ | if (w==0) return false; | ||
+ | for (let i=0; i<3; i++) { | ||
+ | if (meinRaster.getValue(x, | ||
+ | x+=vx; | ||
+ | y+=vy; | ||
+ | } | ||
+ | return true; | ||
+ | } | ||
+ | |||
+ | function winner() { | ||
+ | for (let i=0; i<3; i++) { | ||
+ | if (sindsDrei(i, | ||
+ | if (sindsDrei(0, | ||
+ | } | ||
+ | if (sindsDrei(0, | ||
+ | if (sindsDrei(2, | ||
+ | return 0; | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ===== Zellen markieren ===== | ||
+ | <WRAP todo> | ||
+ | Ziel ist es, die gewinnende Dreierreihe zu markieren. | ||
+ | * Fügen Sie dazu in der Datei '' | ||
+ | * In der Funktion '' | ||
+ | |||
+ | <hidden Lösungsvorschlag> | ||
+ | <code css> | ||
+ | .wert3 { | ||
+ | background-image: | ||
+ | background-color: | ||
+ | background-size: | ||
+ | } | ||
+ | .wert4 { | ||
+ | background-image: | ||
+ | background-color: | ||
+ | background-size: | ||
+ | } | ||
+ | </ | ||
+ | <code javascript> | ||
+ | for (let i=0; i<3; i++) { | ||
+ | x-=vx; | ||
+ | y-=vy; | ||
+ | meinRaster.setValue(x, | ||
+ | } | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||