| 
				
			 | 
			
			
				@@ -7,6 +7,11 @@ var gameInfos; 
			 | 
		
	
		
			
			| 
				7
			 | 
			
				7
			 | 
			
			
				 /************************************************** 
			 | 
		
	
		
			
			| 
				8
			 | 
			
				8
			 | 
			
			
				 ** GAME INITIALISATION 
			 | 
		
	
		
			
			| 
				9
			 | 
			
				9
			 | 
			
			
				 **************************************************/ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				10
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				11
			 | 
			
			
				+var disconnect = true; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				12
			 | 
			
			
				+var scoreAdversaire = 0; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				13
			 | 
			
			
				+var pseudo =''; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				14
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				10
			 | 
			
				15
			 | 
			
			
				 function init() { 
			 | 
		
	
		
			
			| 
				11
			 | 
			
				16
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				12
			 | 
			
				17
			 | 
			
			
				     // Connexion à socket.io 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -18,7 +23,8 @@ function init() { 
			 | 
		
	
		
			
			| 
				18
			 | 
			
				23
			 | 
			
			
				     // On demande le pseudo a l'utilisateur, on l'envoie au serveur et on l'affiche dans le titre 
			 | 
		
	
		
			
			| 
				19
			 | 
			
				24
			 | 
			
			
				     $("#game").html("<input type=\"text\" id=\"pseudo\" /><input type=\"submit\" id=\"start\" value=\"Valider\" />"); 
			 | 
		
	
		
			
			| 
				20
			 | 
			
				25
			 | 
			
			
				     $("#start").on("click", function() { 
			 | 
		
	
		
			
			| 
				21
			 | 
			
				
			 | 
			
			
				-      socket.emit('nouveau', $("#pseudo").val()); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				26
			 | 
			
			
				+      pseudo = $("#pseudo").val(); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				27
			 | 
			
			
				+      socket.emit('nouveau', pseudo); 
			 | 
		
	
		
			
			| 
				22
			 | 
			
				28
			 | 
			
			
				       document.title = $("#pseudo").val() + ' - ' + document.title; 
			 | 
		
	
		
			
			| 
				23
			 | 
			
				29
			 | 
			
			
				       $("#game").html("Recherche d'un adversare..."); 
			 | 
		
	
		
			
			| 
				24
			 | 
			
				30
			 | 
			
			
				     }); 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -32,8 +38,16 @@ var setEventHandlers = function() { 
			 | 
		
	
		
			
			| 
				32
			 | 
			
				38
			 | 
			
			
				 	socket.on("autres", onAutres); 
			 | 
		
	
		
			
			| 
				33
			 | 
			
				39
			 | 
			
			
				   socket.on("game", onGame); 
			 | 
		
	
		
			
			| 
				34
			 | 
			
				40
			 | 
			
			
				   socket.on("questions", play); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				41
			 | 
			
			
				+  socket.on("lolheded", endGame); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				42
			 | 
			
			
				+  socket.on("end", onEnd); 
			 | 
		
	
		
			
			| 
				35
			 | 
			
				43
			 | 
			
			
				 }; 
			 | 
		
	
		
			
			| 
				36
			 | 
			
				44
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
			 | 
			
				45
			 | 
			
			
				+function onEnd(score) { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				46
			 | 
			
			
				+  disconnect = false; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				47
			 | 
			
			
				+  scoreAdversaire = score; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				48
			 | 
			
			
				+  endGame(); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				49
			 | 
			
			
				+} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				50
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				37
			 | 
			
				51
			 | 
			
			
				 function onGame(game) { 
			 | 
		
	
		
			
			| 
				38
			 | 
			
				52
			 | 
			
			
				   gameInfos = game; 
			 | 
		
	
		
			
			| 
				39
			 | 
			
				53
			 | 
			
			
				   $("#game").html("Adversaire trouvé : "+game[0]+"<br />Début de la partie dans 5s."); 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -136,13 +150,14 @@ function nextQuestion() { 
			 | 
		
	
		
			
			| 
				136
			 | 
			
				150
			 | 
			
			
				   $("#rep1").removeClass(); 
			 | 
		
	
		
			
			| 
				137
			 | 
			
				151
			 | 
			
			
				   $("#rep2").removeClass(); 
			 | 
		
	
		
			
			| 
				138
			 | 
			
				152
			 | 
			
			
				   $("#both").removeClass(); 
			 | 
		
	
		
			
			| 
				139
			 | 
			
				
			 | 
			
			
				-  // Dernière question du thème en cours 
			 | 
		
	
		
			
			| 
				
			 | 
			
				153
			 | 
			
			
				+  pauseGame(); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				154
			 | 
			
			
				+  /*// Dernière question du thème en cours 
			 | 
		
	
		
			
			| 
				140
			 | 
			
				155
			 | 
			
			
				   if((id_quest+1) == theme.questions.length)  { 
			 | 
		
	
		
			
			| 
				141
			 | 
			
				156
			 | 
			
			
				     // Dernier thème de la catégorie en cours 
			 | 
		
	
		
			
			| 
				142
			 | 
			
				157
			 | 
			
			
				     if((id_theme+1) == category.themes.length) { 
			 | 
		
	
		
			
			| 
				143
			 | 
			
				158
			 | 
			
			
				       // Dernière catégorie 
			 | 
		
	
		
			
			| 
				144
			 | 
			
				159
			 | 
			
			
				       if((id_cat+1) == 2) { 
			 | 
		
	
		
			
			| 
				145
			 | 
			
				
			 | 
			
			
				-        endGame(); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				160
			 | 
			
			
				+        pauseGame(); 
			 | 
		
	
		
			
			| 
				146
			 | 
			
				161
			 | 
			
			
				       } else { 
			 | 
		
	
		
			
			| 
				147
			 | 
			
				162
			 | 
			
			
				         id_quest = 0; 
			 | 
		
	
		
			
			| 
				148
			 | 
			
				163
			 | 
			
			
				         id_theme = 0; 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -157,7 +172,7 @@ function nextQuestion() { 
			 | 
		
	
		
			
			| 
				157
			 | 
			
				172
			 | 
			
			
				   } else { 
			 | 
		
	
		
			
			| 
				158
			 | 
			
				173
			 | 
			
			
				     id_quest++; 
			 | 
		
	
		
			
			| 
				159
			 | 
			
				174
			 | 
			
			
				     quest(id_quest); 
			 | 
		
	
		
			
			| 
				160
			 | 
			
				
			 | 
			
			
				-  } 
			 | 
		
	
		
			
			| 
				
			 | 
			
				175
			 | 
			
			
				+  }*/ 
			 | 
		
	
		
			
			| 
				161
			 | 
			
				176
			 | 
			
			
				 } 
			 | 
		
	
		
			
			| 
				162
			 | 
			
				177
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				163
			 | 
			
				178
			 | 
			
			
				 function play(questions) { 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -179,31 +194,31 @@ function stopTimer() { 
			 | 
		
	
		
			
			| 
				179
			 | 
			
				194
			 | 
			
			
				   secRestantes = Math.round($("#timer").width()/baseWidth*timing); 
			 | 
		
	
		
			
			| 
				180
			 | 
			
				195
			 | 
			
			
				 } 
			 | 
		
	
		
			
			| 
				181
			 | 
			
				196
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
			 | 
			
				197
			 | 
			
			
				+function pauseGame() { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				198
			 | 
			
			
				+  $("#game").html("<h2 id=\"score\">Vous avez marqué "+score+" miams</h2>" 
			 | 
		
	
		
			
			| 
				
			 | 
			
				199
			 | 
			
			
				+  +"<p id=\"registerScore\">En attente de l'adversaire...</p>"); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				200
			 | 
			
			
				+  // On indique au serveur qu'on a fini 
			 | 
		
	
		
			
			| 
				
			 | 
			
				201
			 | 
			
			
				+  var options = [gameInfos[1], score]; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				202
			 | 
			
			
				+  socket.emit('findugame', options); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				203
			 | 
			
			
				+} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				204
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				182
			 | 
			
				205
			 | 
			
			
				 function endGame() { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				206
			 | 
			
			
				+  stopTimer(); 
			 | 
		
	
		
			
			| 
				183
			 | 
			
				207
			 | 
			
			
				   $("#game").html("<h2 id=\"score\">Vous avez marqué "+score+" miams</h2>" 
			 | 
		
	
		
			
			| 
				184
			 | 
			
				
			 | 
			
			
				-  +"<p id=\"registerScore\">Enregistrez votre score : <input type=\"text\" id=\"login\" placeholder=\"Nom ou pseudonyme\" />" 
			 | 
		
	
		
			
			| 
				185
			 | 
			
				
			 | 
			
			
				-  +"<input type=\"submit\" id=\"sendScore\" value=\"Valider\" /></p>"); 
			 | 
		
	
		
			
			| 
				186
			 | 
			
				
			 | 
			
			
				-  $("#sendScore").click(function() { 
			 | 
		
	
		
			
			| 
				187
			 | 
			
				
			 | 
			
			
				-    addScore($("#login").val(), score); 
			 | 
		
	
		
			
			| 
				188
			 | 
			
				
			 | 
			
			
				-    var message = json.message; 
			 | 
		
	
		
			
			| 
				189
			 | 
			
				
			 | 
			
			
				-    $("#registerScore").fadeOut(); 
			 | 
		
	
		
			
			| 
				190
			 | 
			
				
			 | 
			
			
				-    console.log(message); 
			 | 
		
	
		
			
			| 
				191
			 | 
			
				
			 | 
			
			
				-    if(message == "score_add_success") { 
			 | 
		
	
		
			
			| 
				192
			 | 
			
				
			 | 
			
			
				-      $("#registerScore").addClass("success"); 
			 | 
		
	
		
			
			| 
				193
			 | 
			
				
			 | 
			
			
				-      $("#registerScore").html("Votre score a bien été enregistré<br />"+ 
			 | 
		
	
		
			
			| 
				194
			 | 
			
				
			 | 
			
			
				-      "<a href=\"palmares.htm\">Voir les meilleurs scores</a>"); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				208
			 | 
			
			
				+  +"<p id=\"registerScore\">"); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				209
			 | 
			
			
				+  if(disconnect) { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				210
			 | 
			
			
				+    $("#game").append(gameInfos[0]+" s'est déconnecté."); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				211
			 | 
			
			
				+  } else { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				212
			 | 
			
			
				+    $("#game").append("Votre adversaire a marqué "+scoreAdversaire+" miams.<br />Le gagnant est... "); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				213
			 | 
			
			
				+    if(score > scoreAdversaire) { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				214
			 | 
			
			
				+      $("#game").append(pseudo+" (vous)."); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				215
			 | 
			
			
				+    } else if(score < scoreAdversaire) { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				216
			 | 
			
			
				+      $("#game").append(gameInfos[0]+"."); 
			 | 
		
	
		
			
			| 
				195
			 | 
			
				217
			 | 
			
			
				     } else { 
			 | 
		
	
		
			
			| 
				196
			 | 
			
				
			 | 
			
			
				-      $("#registerScore").addClass("error"); 
			 | 
		
	
		
			
			| 
				197
			 | 
			
				
			 | 
			
			
				-      if(message === "higher_score_present") { 
			 | 
		
	
		
			
			| 
				198
			 | 
			
				
			 | 
			
			
				-        $("#registerScore").html("Un score supérieur ou égal existe déjà avec ce pseudonyme<br />"+ 
			 | 
		
	
		
			
			| 
				199
			 | 
			
				
			 | 
			
			
				-        "<a href=\"palmares.htm\">Voir les meilleurs scores</a>"); 
			 | 
		
	
		
			
			| 
				200
			 | 
			
				
			 | 
			
			
				-      } else { 
			 | 
		
	
		
			
			| 
				201
			 | 
			
				
			 | 
			
			
				-        $("#registerScore").html("Une erreur est survenue ("+status.message+")<br />"+ 
			 | 
		
	
		
			
			| 
				202
			 | 
			
				
			 | 
			
			
				-        "<a href=\"palmares.htm\">Voir les meilleurs scores</a>"); 
			 | 
		
	
		
			
			| 
				203
			 | 
			
				
			 | 
			
			
				-      } 
			 | 
		
	
		
			
			| 
				
			 | 
			
				218
			 | 
			
			
				+      $("#game").append("personne (égalité)."); 
			 | 
		
	
		
			
			| 
				204
			 | 
			
				219
			 | 
			
			
				     } 
			 | 
		
	
		
			
			| 
				205
			 | 
			
				
			 | 
			
			
				-    $("#registerScore").fadeIn(); 
			 | 
		
	
		
			
			| 
				206
			 | 
			
				
			 | 
			
			
				-  }); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				220
			 | 
			
			
				+  } 
			 | 
		
	
		
			
			| 
				
			 | 
			
				221
			 | 
			
			
				+  $("#game").append("</p>"); 
			 | 
		
	
		
			
			| 
				207
			 | 
			
				222
			 | 
			
			
				 } 
			 | 
		
	
		
			
			| 
				208
			 | 
			
				223
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				209
			 | 
			
				224
			 | 
			
			
				 function addScore(userLogin, userScore) { 
			 |