From f79d4aa7974b2e0e1056b67cf0e6bb796ac6f97f Mon Sep 17 00:00:00 2001 From: Harry Wood Date: Mon, 6 May 2019 00:42:39 +0100 Subject: [PATCH] Make fans move only when we get it right It's way too much fun to just sit and stare at the fans moving, so let's make them only move when we get the answer right. To do that I'm introducing the idea of different "celebration" configs. In this case we want to swap the image (to an animated gif). In other cases we'll stay with the default celebration. --- images/{fan.gif => fan-animated.gif} | Bin images/fan-stopped.png | Bin 0 -> 34437 bytes index.html | 33 ++++++++++++++++++--------- 3 files changed, 22 insertions(+), 11 deletions(-) rename images/{fan.gif => fan-animated.gif} (100%) create mode 100644 images/fan-stopped.png diff --git a/images/fan.gif b/images/fan-animated.gif similarity index 100% rename from images/fan.gif rename to images/fan-animated.gif diff --git a/images/fan-stopped.png b/images/fan-stopped.png new file mode 100644 index 0000000000000000000000000000000000000000..d917fa84c662e3c72910ffcb7b6d147a94da8d56 GIT binary patch literal 34437 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 dSuOw9tv literal 0 HcmV?d00001 diff --git a/index.html b/index.html index 4779761..0a751be 100644 --- a/index.html +++ b/index.html @@ -103,8 +103,10 @@ }, { word: "Fans", - image: "./images/fan.gif", - imageCredits: "Fan image by joealfaraby, public domain" + image: "./images/fan-stopped.png", + imageCredits: "Fan image by joealfaraby, public domain", + celebration: "SwapImage", + celebrationImage: "./images/fan-animated.gif" } ]; @@ -158,9 +160,13 @@ playSound("correct"); } - document.getElementById('credits').style.display = "none"; - celebrationTimer = setInterval( function(){ celebrateCorrect() }, 80); + if (images[imageNumber]['celebration']=="SwapImage") { + showImageByURL(count, images[imageNumber]['celebrationImage']); + } else { + document.getElementById('credits').style.display = "none"; + celebrationTimer = setInterval( function(){ numberFlickerCelebration() }, 80); + } // New game after 1.3 seconds setTimeout(function() { clearInterval(celebrationTimer); @@ -170,7 +176,7 @@ }, 1300); } - function celebrateCorrect() { + function numberFlickerCelebration() { if (!processingKey) return; drawColourfulText(count); if (Math.random()<0.3) document.body.style.backgroundColor = randomLightColour(); @@ -178,6 +184,7 @@ function wrongNumberPressed() { if (processingKey) return + clearAll(); wrongInARow++; @@ -191,7 +198,7 @@ // Re-draw images afer 2 seconds gameTimer = setTimeout(function() { - showImages(count, imageNumber); + showImageByNumber(count, imageNumber); processingKey = false; }, 3000); } @@ -209,11 +216,12 @@ while (count==prevCount) chooseImage(); - showImages(count, imageNumber); + showImageByNumber(count, imageNumber); } function chooseImage() { if (fixedImage!=null) { + // fixedImage ("fixed-image" URL param) is set for (var i = 0; i < images.length; i++) { if (images[i]["word"].toLowerCase() == fixedImage) { imageNumber = i; @@ -231,10 +239,16 @@ } } - function showImages(count, imageNumber) { + function showImageByNumber(count, imageNumber) { var imageData = images[imageNumber]; var imageURL = imageData['image']; var imageCredits = imageData['imageCredits']; + showImageByURL(count, imageURL); + document.getElementById('credits').style.display = "block"; + document.getElementById('credits').innerHTML = imageCredits; + } + + function showImageByURL(count, imageURL) { for (i = 0; i < count; i++) { var elem = document.createElement("span"); elem.setAttribute("class", "image"); @@ -254,11 +268,8 @@ allElements.push(elem); } - document.getElementById('credits').style.display = "block"; - document.getElementById('credits').innerHTML = imageCredits; } - function drawColourfulText(text) { var elem = document.createElement("span"); elem.setAttribute("class", "letter");