its finaly done

This commit is contained in:
Nathan 2025-12-19 01:01:10 +07:00
parent 6ad0110109
commit d62cc3c97f
3 changed files with 27 additions and 46 deletions

View File

@ -9,34 +9,25 @@ const sfxLose = document.getElementById("sfxLose");
const toggleBtn = document.getElementById("toggleMusic");
const countdownOverlay = document.getElementById("countdown-overlay");
let musicMuted = false;
let musicMuted = true;
toggleBtn.textContent = "🔇";
function playSFX(audio) {
if(!musicMuted) {
audio.currentTime = 0;
audio.play().catch(() => {});
}
audio.currentTime = 0;
audio.play().catch(() => {});
}
document.addEventListener('click', function initAudio() {
if(musicMuted) {
musicMuted = false;
toggleBtn.textContent = "🔊";
bgMusic.play().catch(() => {});
document.removeEventListener('click', initAudio);
}
});
toggleBtn.onclick = (e) => {
e.stopPropagation();
if (musicMuted) {
bgMusic.play();
toggleBtn.textContent = "🔊";
musicMuted = false;
} else {
bgMusic.pause();
toggleBtn.textContent = "🔇";
musicMuted = true;
}
musicMuted = !musicMuted;
};
const images = [

View File

@ -1,3 +1,4 @@
// --- AUDIO CONFIG ---
const bgMusic = document.getElementById("bgMusic");
const sfxClick = document.getElementById("sfxClick");
const sfxMatch = document.getElementById("sfxMatch");
@ -8,34 +9,32 @@ const sfxLose = document.getElementById("sfxLose");
const toggleBtn = document.getElementById("toggleMusic");
const overlay = document.getElementById("countdown-overlay");
// 1. Set Default Mute (Mati)
let musicMuted = true;
toggleBtn.textContent = "🔇";
// 2. SFX Jalan Terus (Tanpa Cek Mute)
function playSFX(audio) {
if(!musicMuted) {
audio.currentTime = 0;
audio.play().catch(() => {});
}
audio.currentTime = 0;
audio.play().catch(() => {});
}
document.addEventListener('click', function initAudio() {
if(musicMuted) {
musicMuted = false;
toggleBtn.textContent = "🔊";
bgMusic.play().catch(() => {});
document.removeEventListener('click', initAudio);
}
});
// 3. Listener 'initAudio' DIHAPUS
// (Supaya musik tidak nyala otomatis saat klik layar sembarangan)
toggleBtn.onclick = (e) => {
e.stopPropagation();
if (musicMuted) {
// Nyalakan Musik
bgMusic.play();
toggleBtn.textContent = "🔊";
musicMuted = false;
} else {
// Matikan Musik
bgMusic.pause();
toggleBtn.textContent = "🔇";
musicMuted = true;
}
musicMuted = !musicMuted;
};
const images = [
@ -68,7 +67,6 @@ function showComboPopup(targetCard, combo, bonus) {
setTimeout(() => popup.remove(), 1500);
}
function shuffleDistant(cards, minDistance = 4) {
let valid = false;
let result;
@ -111,7 +109,6 @@ function shuffleDistant(cards, minDistance = 4) {
return result;
}
function runCountdown(callback) {
let count = 3;
overlay.style.display = "flex";
@ -212,7 +209,7 @@ function flipCard(card) {
score += 50;
document.getElementById("score").textContent = score;
time += 5;
document.getElementById("timer").textContent = time; // Update tampilan waktu bonus
document.getElementById("timer").textContent = time;
flipped = [];
if (document.querySelectorAll(".matched").length === cards.length) {
@ -234,7 +231,9 @@ function startGame() {
board.innerHTML = "";
runCountdown(() => {
// Pastikan musik hanya main jika musicMuted = false (user sudah toggle on)
if(!musicMuted) bgMusic.play().catch(() => {});
const shuffledCards = shuffleDistant([...cards]);
shuffledCards.forEach(image => {
const card = document.createElement("div");

View File

@ -9,34 +9,25 @@ const sfxLose = document.getElementById("sfxLose");
const toggleBtn = document.getElementById("toggleMusic");
const countdownOverlay = document.getElementById("countdown-overlay");
let musicMuted = false;
let musicMuted = true;
toggleBtn.textContent = "🔇";
function playSFX(audio) {
if(!musicMuted) {
audio.currentTime = 0;
audio.play().catch(() => {});
}
audio.currentTime = 0;
audio.play().catch(() => {});
}
document.addEventListener('click', function initAudio() {
if(musicMuted) {
musicMuted = false;
toggleBtn.textContent = "🔊";
bgMusic.play().catch(() => {});
document.removeEventListener('click', initAudio);
}
});
toggleBtn.onclick = (e) => {
e.stopPropagation();
if (musicMuted) {
bgMusic.play();
toggleBtn.textContent = "🔊";
musicMuted = false;
} else {
bgMusic.pause();
toggleBtn.textContent = "🔇";
musicMuted = true;
}
musicMuted = !musicMuted;
};
const images = [