[GastForen Programmierung/Entwicklung JavaScript TicTacToe / hilfehilfehilfe

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

TicTacToe / hilfehilfehilfe

nika15
Beiträge gesamt: 69

6. Aug 2004, 09:49
Beitrag # 1 von 6
Bewertung:
(1190 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
schaut ans ende ;-))

nika

(Dieser Beitrag wurde von nika15 am 13. Sep 2004, 07:16 geändert)
X

TicTacToe / hilfehilfehilfe

oesi50
  
Beiträge gesamt: 2315

6. Aug 2004, 10:09
Beitrag # 2 von 6
Beitrag ID: #101420
Bewertung:
(1190 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hm,
google.. google .. google,
aha:
http://www.javarea.de/..._tictactoe/index.htm

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)


als Antwort auf: [#101416]
(Dieser Beitrag wurde von oesi50 am 6. Aug 2004, 10:09 geändert)

TicTacToe / hilfehilfehilfe

nika15
Beiträge gesamt: 69

6. Aug 2004, 11:03
Beitrag # 3 von 6
Beitrag ID: #101437
Bewertung:
(1190 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
:-))


als Antwort auf: [#101416]
(Dieser Beitrag wurde von nika15 am 13. Sep 2004, 07:16 geändert)

TicTacToe / hilfehilfehilfe

oesi50
  
Beiträge gesamt: 2315

6. Aug 2004, 11:45
Beitrag # 4 von 6
Beitrag ID: #101448
Bewertung:
(1190 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hinweis: Geben Sie den Textfeldern für das Spielfeld Namen, die Sie im Programm aus der Zeilen- und Spaltenposition ermitteln können. Beispiel: Hat die Variable zeile den Wert 1 und die Variable spalte den Wert 2, dann können Sie nach der Anweisung var feld = eval("document.spielfeld.feld" + zeile + spalte); über die Variable feld auf das Formularfeld feld12 im Formular spielfeld zugreifen. Dann ist feld.value der in diesem Feld eingetragene Wert.

Dieser Hinweis sagt doch schon alles.


Beispiel:

zeile=2; spalte=3;

was ergibt jetzt:
eval("document.spielfeld.feld" + zeile + spalte);

--> document.spielfeld.feld23

Wie lesen wir das ganze Spielfeld aus?

for(var i = 1; i < 4; i++){
for(var j = 1; j < 4; j++){
var feld = eval("document.spielfeld.feld" + i + j);
// feld enthält jetzt den jeweiligen Wert
spielarray[j] = feld; // z.b. alle Felder in ein Array speichern
}
}

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)


als Antwort auf: [#101416]
(Dieser Beitrag wurde von oesi50 am 6. Aug 2004, 11:45 geändert)

TicTacToe / hilfehilfehilfe

oesi50
  
Beiträge gesamt: 2315

6. Aug 2004, 11:58
Beitrag # 5 von 6
Beitrag ID: #101454
Bewertung:
(1190 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
zum Eintragen brauchst Du diese Funktion:

function spielzugEintragen(zeile,spalte) {
eval('document.spielfeld.feld' + zeile + spalte+'.value = kreuz');
}

Das Formular dazu sieht so aus:

<form name="textfelder">
ZEILE:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" size ="4" name="ZEILE" value><br><br>
SPALTE:&nbsp;&nbsp;<input type="text" size ="4" name="SPALTE" value>
<input type="button" name="eintrag" value="EINTRAGEN" onClick="spielzugEintragen(this.form.ZEILE.value,this.form.SPALTE.value);">
</form>

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)


als Antwort auf: [#101416]
(Dieser Beitrag wurde von oesi50 am 6. Aug 2004, 11:59 geändert)

TicTacToe / hilfehilfehilfe

Anonym
Beiträge gesamt: 22827

13. Sep 2004, 07:13
Beitrag # 6 von 6
Beitrag ID: #108286
Bewertung:
(1190 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
also da ich hier so rumgenervt hab und andere auch was von haben sollen, hier die lösung wie ich's mir vorgestellt habe:

<html>
<head>

<title>lektion 5 * TicTacToe</title>

<style type="text/css">
<!--
a:link { color: #000000; text-decoration: none }
a:visited { color: #000000; text-decoration: none }
a:active { color: #000000; text-decoration: none }
a:hover { color: #ffffff; text-decoration: none }
//-->
</style>





<script language="JavaScript" type="text/javascript">

var spieler = "X";

//spielfeldarray
feld = new Array();
feld[1] = new Array();
feld[2] = new Array();
feld[3] = new Array();

// var spielfeld
var a = 3;
var b = 3;



function schreibtspielfeld() {
document.write("<table cellpadding='6'>");
for(i=0; i<=b; i++) {
document.write("<tr>");
if(i>0)
document.write("<td>Zeile&nbsp;"+ i +"</td>");
else
document.write("<td>&nbsp;</td>");
for(j=1; j<=a; j++) {
if(i==0)
document.write("<td align='center'>Sp."+ j +"</td>");
else
document.write("<td><input name='feld"+j+i+"' type='text' value='' size ='2'></td>");
}
document.write("</tr>");
}
document.write("</table>");
}




function eintragen() { //liest den spielzug aus und testet ob feld schon besetzt
spalte = document.spielzug.spalte.value;
zeile = document.spielzug.zeile.value;
if(spalte > 0 && spalte <= a && zeile > 0 && zeile <= b) {
if(feld[spalte][zeile] == "X" || feld[spalte][zeile] == "O")
alert("Tr\xE4um sch\xF6n weiter!");
else {
feld[spalte][zeile] = spieler;
}
if(spieler == "X") spieler = "O"; //spielerwechsel
else spieler = "X";
auslesen();
} else
alert("ung\xFCltige Eingabe!");
}






function auslesen() { //liest das array aus und schreibt ins spielfeld
for(zeile=1; zeile<=b; zeile++) {
for(spalte=1; spalte<=a; spalte++) {
auswahl = eval("document.spielfeld.feld" + spalte + zeile);
auswahl.value = feld[spalte][zeile];
}
}
}






function neuesspiel() {
document.spielzug.reset();
document.spielfeld.reset();
for(zeile=1; zeile<=b; zeile++) {
for(spalte=1; spalte<=a; spalte++) {
feld[spalte][zeile] = "";
}
}
spieler = "X";
}





</script>
</head>

<body onload="javascript: neuesspiel();" bgcolor="#3366FF">
<table align="center" border ="0">
<tr><td>
<br><br><br>




<form name="spielzug">
<table>
<tr>
<td align="right">Zeile:&nbsp;&nbsp;<input name="zeile" value="" type="Text" size ="2"></td></tr>
<tr>
<td align="right">Spalte:&nbsp;&nbsp;<input name="spalte" value="" type="Text" size ="2"></td></tr>
<tr>
<td><input name="eintrag" value="EINTRAGEN" type="Button" onclick="eintragen();"></td></tr>
</table>
</form>
<br><br><br>


<form name="spielfeld">
<script language="JavaScript" type="text/javascript">
schreibtspielfeld();
</script>
</form>

<br><br><br>
<a href="javascript:neuesspiel()">ZUR&Uuml;CKSETZEN</a>



</td></tr></table>
</body>
</html>


danke &
gruss nika


als Antwort auf: [#101416]
X