Advertisement
whitesurge

pz.dnd

Dec 20th, 2022
16
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Image Puzzle</title>
  5. </head>
  6. <body>
  7. <style>
  8. .tile {
  9. display: inline-block;
  10. width: 100px;
  11. height: 100px;
  12. border: 1px solid black;
  13. background-color: lightgray;
  14. }
  15. .hidden {
  16. background-color: black;
  17. background-size: 300px 100px;
  18. background-position: -100px 0;
  19. }
  20. </style>
  21. <div id="puzzle">
  22. <div class="tile" onclick="reveal(0)"></div>
  23. <div class="tile" onclick="reveal(1)"></div>
  24. <div class="tile" onclick="reveal(2)"></div>
  25. <div class="tile" onclick="reveal(3)"></div>
  26. <div class="tile" onclick="reveal(4)"></div>
  27. <div class="tile" onclick="reveal(5)"></div>
  28. <div class="tile" onclick="reveal(6)"></div>
  29. <div class="tile" onclick="reveal(7)"></div>
  30. <div class="tile" onclick="reveal(8)"></div>
  31. </div>
  32. <script>
  33. var correctOrder = [6, 1, 5, 7, 0, 3, 8, 2, 4];
  34.  
  35. var revealed = [false, false, false, false, false, false, false, false, false];
  36. var currentIndex = 0;
  37.  
  38. function reveal(i) {
  39. if (revealed[i]) {
  40. return;
  41. }
  42. if (correctOrder[currentIndex] === i) {
  43. revealed[i] = true;
  44. currentIndex++;
  45. document.getElementById('puzzle').children[i].classList.add('hidden');
  46. } else {
  47. resetPuzzle();
  48. }
  49. if (currentIndex === 9) {
  50. alert('You solved the puzzle!');
  51. }
  52. }
  53.  
  54. function resetPuzzle() {
  55. for (var i = 0; i < 9; i++) {
  56. revealed[i] = false;
  57. document.getElementById('puzzle').children[i].classList.remove('hidden');
  58. }
  59. currentIndex = 0;
  60. //alert('You clicked on a tile out of order. The puzzle has been reset.');
  61. }
  62.  
  63. </script>
  64. </body>
  65. </html>
  66.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement