NEWS
Tic-Tac-Toe auf der VIS spielen
-
@djmarc75 bis jetzt hab ich nur die Datenpunkte angelegt.
Das Blockly wird aber nicht mehr lange dauern bis ich den ersten Versuch zeigen kann. -
@rtwl sagte in Tic-Tac-Toe auf der VIS spielen:
Das Blockly wird aber nicht mehr lange dauern bis ich den ersten Versuch zeigen kann.
Na dann warten wir erstmal gespannt auf
Deine UmsetzungDeinen ersten Versuch -
Meine Idee:
Das Widget schreibt die Zahl 1-9 in den Datenpunkt
LastPlay
Ein Blockly wird damit getriggert (am ende des Blocklys wird dieLastPlay
auf 0 gesetzt)
Das Blockly prüft anhandSpieler
wer an der Reihe ist und setztFeldX
auf true (Frau) bzw false (Ich) - (am ende wird dannSpieler
gewechselt)
Unterhalb (Z-Index) liegt ein Bild, welches je nach true/false das korrekte Bild anzeigt. (Was passiert eigentlich wenn ein Booleon Objekt keinen Wert hat, alsonull
? - Ich werde testen.Soweit meine Theorie im Kopf
-
@rtwl sagte in Tic-Tac-Toe auf der VIS spielen:
Was passiert eigentlich wenn ein Booleon Objekt keinen Wert hat, also null? - Ich werde testen.
Kann ich den überhaupt auf
null
stellen - also löschen?EDIT:
Ja geht mit Blockly, bringt aber in der VIS nichts, danull
wie false gewertet wird (zumindest bei der Anzeige des Bildes.
Ich werde es nun von booleon auf number umstellen, und mit Sichtbarkeit arbeiten.Der Test geht weiter
-
Sehr gut!
Einfacher als gedacht:
Bei Klick auf ein leeres Feld wird
lastPlay
auf 1 bis 9 gesetzt - je nachdem wo man klickt.
Das Blockly prüft wer an der Reihe ist und setzt dannFeldX
auf 1 oder 0.
Bei Klick auf den Restart-Button wirdlastPlay
auf 99 gesetzt - hier werden dann alleFeldX
auf 2 gesetzt - und der Button an den Feldern wird wieder eingeblendet (SichtbarkeitFeldX
== 2) -
Jetzt müsste ich noch irgendwie mit einem Blockly prüfen, ob jemand gewonnen hat und dann die Siege nach oben zählen.
Man müsste jetzt prüfen, ob alle 3 Felder dieser möglichen Kombinationen auf 1 bzw 0 stehen:
1-2-3
4-5-6
7-8-9
1-4-7
2-5-8
3-6-9
1-5-9
9-5-7Da bin ich grad am Überlegen wie man das mit Blockly am einfachsten machen könnte.
-
@djmarc75 sagte in Tic-Tac-Toe auf der VIS spielen:
Na dann warten wir erstmal gespannt auf
Deine UmsetzungDeinen ersten VersuchDu kannst "Deine Umsetzung" wieder lesbar machen und "Deinen ersten Versuch" durchstreichen
auch das automatische erkennen des Gewinners funktioniert wie gewünscht.
war gestern Abend ein nettes kleines (ev. sinnloses) Projekt, aber ich konnte lernen und wiedermal etwas umsetzen wo ich anfangs keine Idee hatte wie und wo ich überhaupt beginne. -
@rtwl sagte in Tic-Tac-Toe auf der VIS spielen:
ein nettes kleines (ev. sinnloses) Projekt
geht mir fast täglich so
-
hi @rtwl
könntest du das fertige projekt hier noch am ende posten ?vielen dank
-
@mikiline
Natürlich, gerne.Ich weiß nicht wie/ob man Datenpunkte auch teilen kann, daher hier nur der Screenshot davon: Sind alles Typ "Number" bis auf
Sieger
der ist ein "String".
Der genaue Pfad (wichtig für das Blockly):0_userdata.0.VIS.TicTacToe
Im Blockly muss man sicher noch die Namen ausbessern bzw auch die zwei Datenpunkte welche den Namen beinhalten.
Für die VIS braucht man die Widgets von vis-inventwoViel Spaß beim Spielen
-
Im live test ist mir noch ein Fehler aufgefallen. Die "Gewinner Meldung" wird bei Neustart nicht zurück gesetzt/ausgeblendet.
hab aber grad weniger Zeit mich dem zu widmen.
Die Reaktionen hier waren aber mehr als überschaubar, wird also niemandem auffallen -
Hallo @rtwl
Danke für deine Mühen. Ich habe noch eine Datenpunkt Reset eingefügt, welcher bei Restart und Sieger getriggert wird. Entsprechend wird die Gewinnermeldung und ein transparentes Basic-String ein- oder ausgeblendet. Das transparente Basic-String Widget wurde über das Feld gelegt, damit kein Feld mehr gesetzt werden kann, was bis dato ging und man sich einen Sieg mogeln konnte.
Das ganze funktioniert als Invent-Popup einwandfrei.
Danke -
@quarkmax erstmal danke für eine Rückmeldung
freut mich, wenn das wirklich jemand verwenden möchte.deine Inputs sind toll! An das Mogeln hab ich nicht gedacht, stimmt aber natürlich. Ich werde mir das auch noch einbauen