const reels = [document.getElementById('reel1'), document.getElementById('reel2'), document.getElementById('reel3')];
const stopButtons = [document.getElementById('stopButton1'), document.getElementById('stopButton2'), document.getElementById('stopButton3')];
const startButton = document.getElementById('startButton');
const symbols = ['1', '2', '3', '4', '5', '6', '7', '8', '9'];
let spinning = false;
let spinIntervals = [];
function spinReel(reel, index) {
return setInterval(() => {
reel.textContent = symbols[Math.floor(Math.random() * symbols.length)];
}, 100);
}
function startSpin() {
if (spinning) return;
spinning = true;
startButton.textContent = "スピン中";
spinIntervals = reels.map((reel, index) => {
stopButtons[index].disabled = false;
return spinReel(reel, index);
});
}
function stopReel(index) {
clearInterval(spinIntervals[index]);
spinIntervals[index] = null;
stopButtons[index].disabled = true;
if (spinIntervals.every(interval => interval === null)) {
spinning = false;
startButton.textContent = "リスタート";
startButton.disabled = false;
checkWin();
}
}
function checkWin() {
if (reels[0].textContent === reels[1].textContent && reels[1].textContent === reels[2].textContent) {
alert('おめでとう!');
}
}
function resetGame() {
spinning = false;
spinIntervals = [];
reels.forEach(reel => reel.textContent = '1');
stopButtons.forEach(button => button.disabled = true);
startButton.textContent = "スタート";
}
startButton.addEventListener('click', () => {
if (spinning) {
return;
}
if (spinIntervals.every(interval => interval === null)) {
resetGame();
}
startSpin();
});
stopButtons.forEach((button, index) => {
button.addEventListener('click', () => stopReel(index));
});