Files
tris-html/script.js

87 lines
3.5 KiB
JavaScript

var skinName = "default";
var player = "cross";
var cellResolution = "100px";
var gameEnded = false;
var crossSigned = [];
var circleSigned = [];
var audio = new Audio("yomama");
const winConditions = [
[1, 2, 3], [4, 5, 6], [7, 8, 9],
[1, 4, 7], [2, 5, 8], [3, 6, 9],
[1, 5, 9], [3, 5, 7]
];
function SignCell(cella){
if(gameEnded == false && document.getElementById(cella).innerHTML == "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>"){
audio.pause();
audio = new Audio("assets/skins/" + skinName + "/fill.mp3");
audio.play();
document.getElementById(cella).innerHTML = "\<img src=\"assets/skins/" + skinName + "/" + player + ".jpg\" width=\"" + cellResolution + "\"\>";
switch(player){
case "cross":
crossSigned.push(cella);
player = "circle";
break;
case "circle":
circleSigned.push(cella);
player = "cross";
break;
}
}
ControllaVittoria();
}
function ControllaVittoria(){
for (var i = 0; i < winConditions.length; i++) {
var [a, b, c] = winConditions[i];
if (crossSigned.includes(a) && crossSigned.includes(b) && crossSigned.includes(c)) {
audio.pause();
audio = new Audio("assets/skins/" + skinName + "/win.mp3");
audio.play();
document.getElementById("winTxt").innerHTML = "HA VINTO CROCE (GIOCATORE 1)";
gameEnded = true;
}
if (circleSigned.includes(a) && circleSigned.includes(b) && circleSigned.includes(c)) {
audio.pause();
audio = new Audio("assets/skins/" + skinName + "/win.mp3");
audio.play();
document.getElementById("winTxt").innerHTML = "HA VINTO CERCHIO (GIOCATORE 2)";
gameEnded = true;
}
}
}
function Riavvia(){
SvuotaTavola();
audio.pause();
audio = new Audio("assets/skins/" + skinName + "/retry.mp3");
audio.play();
gameEnded = false;
player = "cross";
}
function SvuotaTavola(){
crossSigned = [];
circleSigned = [];
document.getElementById("winTxt").innerHTML = "";
document.getElementById("1").innerHTML = "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>";
document.getElementById("2").innerHTML = "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>";
document.getElementById("3").innerHTML = "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>";
document.getElementById("4").innerHTML = "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>";
document.getElementById("5").innerHTML = "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>";
document.getElementById("6").innerHTML = "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>";
document.getElementById("7").innerHTML = "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>";
document.getElementById("8").innerHTML = "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>";
document.getElementById("9").innerHTML = "\<img src=\"assets/skins/" + skinName + "/empty.jpg\" width=\"" + cellResolution + "\"\>";
}
function ChangeSkin(){
event.preventDefault()
skinName = document.getElementById("skinName").value;
Riavvia();
}