Буква O Буква X
Как создать игру в крестики-нолики, используя только context.save/context.restore, операторы if, canvas и анимации? Я также пытаюсь сделать так, чтобы, если изображение X отображалось в блоке 1, изображение O не могло отображаться в том же блоке, поэтому вы не можете обмануть.
Я не знаю, как запретить кому-либо наносить изображение O на изображение X, и наоборот. Пожалуйста, кто-нибудь, покажите мне способ, чтобы люди не могли поместить О поверх Х и наоборот.
Это то, что у меня есть
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="U1TS.css">
</head>
<body>
<canvas id="canvas" width="400" height="400"></canvas>
<br>
<button onclick="Restart()">Restart</button>
<script type="text/javascript">
var canvas = document.getElementById("canvas");
var context = canvas.getContext('2d');
var c1 = 1
var c2 = 1
var c3 = 1
var c4 = 1
var c5 = 1
var c6 = 1
var c7 = 1
var c8 = 1
var c9 = 1
var cup1 = 2
var cup2 = 2
var cup3 = 2
var cup4 = 2
var cup5 = 2
var cup6 = 2
var cup7 = 2
var cup8 = 2
var cup9 = 2
//Line horizontale et verticale
context.beginPath();
context.moveTo(40,145);
context.lineTo(360,145);
context.lineWidth = 5
context.lineCap = 'round';
context.stroke();
context.beginPath();
context.moveTo(40,260);
context.lineTo(360,260);
context.lineCap = 'round';
context.stroke();
context.beginPath();
context.moveTo(260,40);
context.lineTo(260,360);
context.lineCap = 'round';
context.stroke();
context.beginPath();
context.moveTo(140,40);
context.lineTo(140,360);
context.lineCap = 'round';
context.stroke();
context.font = "italic bold 30pt Calibri"
context.fillText("1", 75, 325);
context.fillText("2", 190, 325);
context.fillText("3", 305, 325);
context.fillText("4", 75, 215);
context.fillText("5", 190, 215);
context.fillText("6", 305, 215);
context.fillText("7", 75, 105);
context.fillText("8", 190, 105);
context.fillText("9", 305, 105);
function Restart(){
document.location.reload(true);
}
document.onkeydown = Nombre;
Nombreup1 = 49; Nombreup2 = 50; Nombreup3 = 51;
Nombreup4 = 52; Nombreup5 = 53; Nombreup6 = 54;
Nombreup7 = 55; Nombreup8 = 56; Nombreup9 = 57;
Nombre7 = 103; Nombre8 = 104; Nombre9 = 105;
Nombre4 = 100; Nombre5 = 101; Nombre6 = 102;
Nombre3 = 99; Nombre2 = 98; Nombre1 = 97;
function Nombre(e){
toucheCourante = e.keyCode;
if (toucheCourante == Nombre7){
lettreO7();
} else if (toucheCourante == Nombre8){
lettreO8();
} else if (toucheCourante == Nombre9){
lettreO9();
} else if (toucheCourante == Nombre6){
lettreO6();
} else if (toucheCourante == Nombre5){
lettreO5();
} else if (toucheCourante == Nombre4){
lettreO4();
} else if (toucheCourante == Nombre3){
lettreO3();
} else if (toucheCourante == Nombre2){
lettreO2();
} else if (toucheCourante == Nombre1){
lettreO1();
}
/////////////////////////////////////////
if (toucheCourante == Nombreup7){
lettreX7();
} else if (toucheCourante == Nombreup8){
lettreX8();
} else if (toucheCourante == Nombreup9){
lettreX9();
} else if (toucheCourante == Nombreup6){
lettreX6();
} else if (toucheCourante == Nombreup5){
lettreX5();
} else if (toucheCourante == Nombreup4){
lettreX4();
} else if (toucheCourante == Nombreup3){
lettreX3();
} else if (toucheCourante == Nombreup2){
lettreX2();
} else if (toucheCourante == Nombreup1){
lettreX1();
}
}
function lettreO1()
{
lettreO = new Image();
lettreO.src = 'O.jpg';
lettreO.onload = function(){
context.drawImage(lettreO, 40, 265,95,93);
}
}
function lettreX1()
{
lettreX = new Image();
lettreX.src = 'X.PNG';
lettreX.onload = function(){
context.drawImage(lettreX, 40, 265,95,93);
}
}
function lettreO2()
{
lettreO = new Image();
lettreO.src = 'O.jpg';
lettreO.onload = function(){
context.drawImage(lettreO, 145, 265,110,93);
}
}
function lettreX2()
{
lettreX = new Image();
lettreX.src = 'X.PNG';
lettreX.onload = function(){
context.drawImage(lettreX, 145, 265,110,93);
}
}
function lettreO3()
{
lettreO = new Image();
lettreO.src = 'O.jpg';
lettreO.onload = function(){
context.drawImage(lettreO, 265, 265,95,93);
}
}
function lettreX3()
{
lettreX = new Image();
lettreX.src = 'X.PNG';
lettreX.onload = function(){
context.drawImage(lettreX, 265, 265,95,93);
}
}
function lettreO4()
{
lettreO = new Image();
lettreO.src = 'O.jpg';
lettreO.onload = function(){
context.drawImage(lettreO, 40,149,95,107);
}
}
function lettreX4()
{
lettreX = new Image();
lettreX.src = 'X.PNG';
lettreX.onload = function(){
context.drawImage(lettreX, 40,149,95,107);
}
}
function lettreO5()
{
lettreO = new Image();
lettreO.src = 'O.jpg';
lettreO.onload = function(){
context.drawImage(lettreO, 145,149,110,107);
}
}
function lettreX5()
{
lettreX = new Image();
lettreX.src = 'X.PNG';
lettreX.onload = function(){
context.drawImage(lettreX, 145,149,110,107);
}
}
function lettreO6()
{
lettreO = new Image();
lettreO.src = 'O.jpg';
lettreO.onload = function(){
context.drawImage(lettreO, 265,149,95,107);
}
}
function lettreX6()
{
lettreX = new Image();
lettreX.src = 'X.PNG';
lettreX.onload = function(){
context.drawImage(lettreX, 265,149,95,107);
}
}
function lettreO7()
{
lettreO = new Image();
lettreO.src = 'O.jpg';
lettreO.onload = function(){
context.drawImage(lettreO, 40,40,95,101);
}
}
function lettreX7()
{
lettreX = new Image();
lettreX.src = 'X.PNG';
lettreX.onload = function(){
context.drawImage(lettreX, 40,40,95,101);
}
}
function lettreO8()
{
lettreO = new Image();
lettreO.src = 'O.jpg';
lettreO.onload = function(){
context.drawImage(lettreO, 145,40,110,101);
}
}
function lettreX8()
{
lettreX = new Image();
lettreX.src = 'X.PNG';
lettreX.onload = function(){
context.drawImage(lettreX, 145,40,110,101);
}
}
function lettreO9()
{
lettreO = new Image();
lettreO.src = 'O.jpg';
lettreO.onload = function(){
context.drawImage(lettreO, 265,40,95,101);
}
}
function lettreX9()
{
lettreX = new Image();
lettreX.src = 'X.PNG';
lettreX.onload = function(){
context.drawImage(lettreX, 265,40,95,101);
}
}
</script>
</body>
</html>