Показать сообщение отдельно
  #1 (permalink)  
Старый 16.07.2013, 09:17
Интересующийся
Отправить личное сообщение для Угумс Посмотреть профиль Найти все сообщения от Угумс
 
Регистрация: 15.07.2013
Сообщений: 14

Не добавляет очки игроку в функции
Доброго времени суток уважаемые Знатоки!

Помогите пожалуйста разобраться почему в функции VerificationEnsemble не добавляет очко игроку.

<!DOCTYPE html>
<html>
<head>
<script>
var namePlayer = prompt("What is your name:","Player");
var timeFixe = 1000*prompt("Give the time for the tour(in secondes):","100");
var pointsPlayer = 0;
var pointsComp = 0;
</script>
</head>

<body>
<script>
var doCartes = function() {
   var element = ["A","B","C"];
   var compteur = 0;
   for (var i=0; i<numValeur; i++) {
      for (var j=0; j<numValeur; j++) {
         for (var k=0; k<numValeur; k++) {
            for (var l=0; l<numValeur; l++) {
               cartes[compteur] = element[i]+element[j]+element[k]+element[l]; 
               compteur++;
            }
         }
      }
   }
};

var shuffleCartes = function(cartes)//эта функция перемешивает карты но почему то не работает
{
    
    if (cartes && cartes.length) {
	for (var i=0; i<cartes.length; ++i) {
	    var j = Math.floor(Math.random() * cartes.length);
	    if (i !== j) 
		swap(cartes,i,j);
	}	    
    }
    return cartes; 
};

var carteOnClick = function(cell) {
    tab = document.getElementById("ensemble");
    if (cell.style.background == "") { // добавляют карту к сет 
       for (var i = 0; i < 3; i++) {
          if (tab[i].value == "") {
             tab[i].value = cell.innerText;                      
             cell.style.background = "aqua";
             break;
          }
       }
    } else if (cell.style.background == "aqua") { // уберают карту из сета
       cell.style.background = "";
       for (var i = 0; i < 3; i++) {
          if (tab[i].value == cell.innerText) {
             for (var j=i+1; j<3; j++) tab[j-1].value = tab[j].value;
             break;
          }
       }
       tab[2].value = "";
    }
};
<!-- этот код генерирует таблицу с элементами то есть картами. -->
function genererPlateauCartes() {
  // get the reference for the body
  var body = document.getElementsByTagName("body")[0];
 
  // creates a <table> element and a <tbody> element
  var tbl     = document.createElement("table");
  var tblBody = document.createElement("tbody");
 
  // creating all cells
  for (var i = 0; i < 4; i++) {
    // creates a table row
    var row = document.createElement("tr");
 
    for (var j = 0; j < 3; j++) {
      // Create a <td> element and a text node, make the text
      // node the contents of the <td>, and put the <td> at
      // the end of the table row
      var cell = document.createElement("td");
      var cellText = document.createTextNode(cartes[prochaineCarte++]);
      cell.onclick = function() { carteOnClick(this) };
      cell.appendChild(cellText);
      row.appendChild(cell);
    }
 
    // add the row to the end of the table body
    tblBody.appendChild(row);
  }
 // put the <tbody> in the <table>
  tbl.appendChild(tblBody);
 // appends <table> into <body> 
  body.appendChild(tbl);
  // sets the border attribute of tbl to 1;
  tbl.setAttribute("border", "3");
};

</script>

<h1> Set! </h1>
<h2 id="timer"> оставшиеся время</h2>

<script>
 <!-- определяет таблицу карт. Имеются 81 карта. -->
var numFacteur = 4;
var numValeur = 3;
var numCartes = Math.pow(3,4);
var cartes = Array(numCartes);
var prochaineCarte = 0;
doCartes();
shuffleCartes();
genererPlateauCartes();

var od = Date.now()+timeFixe;

var myVar = setInterval(function(){myTimer()},1000);
var endOfRound = setInterval(function(){finTour()},timeFixe);

var myTimer = function() {
  var d=Date.now();
  // var t=d.toLocaleTimeString();
  var timerSeconds = Math.round((od-d)/1000);
  if (timerSeconds >= 0) {
    document.getElementById("timer").innerHTML= "Time left for this tour:  "+timerSeconds;
  } 
};

var tourOfComp = function() {
  /*Если это возможно то компьютер должен выбрать Сет (то есть карты которые
   * состовляют Сет) и добавить себе очко и выбрать карты из колоды что бы
   * заполнить недостающие в таблице
   * Если же это невозможно сделать то тогда выбрать карты наугад и
   * добавить карты из колоды и заменить избранные при этом очки компьютеру
   * не добавляются*/
  
  

};

var finTour = function() {  
   // выполнить роль компьютера
   // возобновить время
   od = Date.now()+timeFixe;
};

var verificationEnsemble = function() {
   
   var tab = document.getElementById("ensemble");
   var mot0= tab.children[0].value;
   var mot1= tab.children[1].value;
   var mot2= tab.children[2].value;
   
  
   if ((mot0.charAt(0)==mot1.charAt(0)&& mot0.charAt(0)==mot2.charAt(0)||
       mot0.charAt(0)!=mot1.charAt(0)&& mot0.charAt(0)!= mot2.charAt(0)&&
       mot1.charAt(0)!=mot2.charAt(0))&&(mot0.charAt(1)==mot1.charAt(1)
       && mot0.charAt(1)==mot2.charAt(1)||mot0.charAt(1)!=mot1.charAt(1)
       &&mot0.charAt(1)!=mot2.charAt(1)&&mot1.charAt(1)!=mot2.charAt(1))
       &&(mot0.charAt(2)==mot1.charAt(2)&&mot0.charAt(2)==mot2.charAt(2)
       ||mot0.charAt(2)!=mot1.charAt(2)&&mot0.charAt(2)!=mot2.charAt(2)
       &&mot1.charAt(2)!=mot2.charAt(2))&&(mot0.charAt(3)==mot1.charAt(3)
       &&mot0.charAt(3)==mot2.charAt(3)||mot0.charAt(3)!=mot1.charAt(3)
       &&mot0.charAt(3)!=mot2.charAt(3)&&mot1.charAt(3)!=mot2.charAt(3)))
  
    //alert("Bravo!");
    
      pointsPlayer++;
                           
     
    else
        (pointsPlayer --);

   return (pointsPlayer); 
   
   /* В этой функции нужно проверит есть ли Сет ну это я уже проверила
Uncaught SyntaxError: Unexpected token ILLEGAL
    * Если Сет есть то нужно добавить очко игроку (но оно не добавляется
    * почему то) а также выбрать три другие карты из колоды что бы заменить
    * взятые карты
    * Затем если нету Сет то теперь компьютер выбирает карты 


};
 
 
  
</script>
<br>
<!-- Voici les cartes choisi pour l'ensemble -->
<!-- ils sont accessibles par id "ensemble", voit le fonction carteOnClick --
  -- pour un exemple comment utiliser --> 
<h4> Ensemble: </h4>
<form id="ensemble">
<input type=text maxlength=4 size=4 readOnly=true />
<input type=text maxlength=4 size=4 readOnly=true />
<input type=text maxlength=4 size=4 readOnly=true />
<input type="button" value="Verifier!" onclick="verificationEnsemble()" />
</form>

<br>
<h2> Les Points </h2>
<h3 id="points">
<script>
document.write(namePlayer + ": " + pointsPlayer + "<br>")
document.write("Computer: " + pointsComp)
</script>
</h3>

</body>
Ответить с цитированием