diff --git a/.gitignore b/.gitignore index b560bcc..4ec79a9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ isle.wasm +isle.wasm.map isle.js LEGO diff --git a/congrats.webp b/congrats.webp new file mode 100644 index 0000000..d565d8e Binary files /dev/null and b/congrats.webp differ diff --git a/index.html b/index.html index 0fcd9f6..dc03f9b 100644 --- a/index.html +++ b/index.html @@ -97,6 +97,10 @@ Changelog +
@@ -293,6 +297,49 @@
+ +
+

Reactions from the original LEGO Island development team:

+
+
+

This is just fantastic! What an endeavor! It is a wonderful tribute to a team that was + unparalleled in talent, and we should now include you and your team in that august group. + I really wish Wes was around to see it. Keep us posted on updates...

+
Scott Anderson
+
+
+

Wow; what a trip. My first trial was on my mac; which had problems displaying any of the + bitmaps applied to the characters in the safari web browser. But it ran, with some + navigation frustrations. But being delivered over the web means any fix you make goes out + immediately. I want you all to know it was a joy to work on and how grateful I am to have + been a part of the origin. I hope you are getting joy from working on it and keeping it alive.

+
Dennis Goodrow
+
+
+

This is pretty neat. At least as responsive over the web as the game was on the target + machines of the time! I hadn't heard of WebAssembly until now. What kind of changes to + the source were needed to get it working under WebAssembly? I foresee many hours of my + time being used up experimenting with this tool!

+
Jim Brown
+
+
+

Well done and such fun tapping back into such fond creative memories.

+
Paul Melmed
+
+
+

That's awesome!

+
Randy Chou
+
+
+

Fantastic! Love it.

+
Kevin Byall
+
+
+

Great stuff!

+ +
+
+
@@ -667,11 +714,11 @@ ← Back
-
+

"In November of 2010, after all was said and done, I started getting emails from a few kids and some adults telling me how cool they thought LEGO Island was. Some people actually still play it. I was quite thrilled by these emails and actually quite honored."

-
- Wes Jenkins, Creative Director
+
Wes Jenkins, Creative Director
@@ -772,7 +819,7 @@
diff --git a/send.webp b/send.webp new file mode 100644 index 0000000..a08d2c5 Binary files /dev/null and b/send.webp differ diff --git a/style.css b/style.css index 5cd85fb..74961bd 100644 --- a/style.css +++ b/style.css @@ -585,28 +585,6 @@ select { line-height: 1.5; } -.page-quote { - padding: 15px 20px; - margin-bottom: 25px; - border-left: 3px solid #FFD700; - background-color: #1c1c1c; - border-radius: 0 8px 8px 0; -} - -.page-quote p { - font-style: italic; - color: #e0e0e0; - margin: 0; - font-size: 1em; -} - -.page-quote footer { - text-align: right; - margin-top: 10px; - font-size: 0.9em; - color: #888; -} - .error-box { padding: 15px 20px; margin-bottom: 25px; @@ -823,6 +801,55 @@ select { color: #FFD700; } +/* Voices Section */ +.voices-intro { + color: #888; + font-size: 0.95em; + font-style: italic; + margin-bottom: 20px; + text-align: center; +} + +.voices-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); + gap: 15px; +} + +.voice-card { + background-color: #1c1c1c; + border: 1px solid #333; + border-left: 3px solid #FFD700; + border-radius: 0 8px 8px 0; + padding: 18px 20px; + margin: 0; + transition: background-color 0.2s ease, transform 0.2s ease; +} + +.voice-card:hover { + background-color: #252525; + transform: translateY(-2px); +} + +.voice-card p { + color: #c0c0c0; + font-size: 0.95em; + line-height: 1.6; + margin: 0 0 12px 0; + font-style: italic; +} + +.voice-card footer { + color: #FFD700; + font-size: 0.9em; + font-weight: bold; + text-align: right; +} + +.voice-card footer::before { + content: '— '; +} + /* Responsive adjustments */ @media (max-width: 768px) { #install-video { @@ -890,6 +917,20 @@ select { width: 42px; height: 42px; } + + .tab-buttons { + flex-wrap: wrap; + } + + .tab-btn { + flex: 1 1 calc(50% - 5px); + min-width: 0; + justify-content: center; + } + + .voices-grid { + grid-template-columns: 1fr; + } } @media (max-width: 480px) { @@ -941,8 +982,14 @@ select { } .tab-icon { - width: 36px; - height: 36px; + width: 28px; + height: 28px; + } + + .tab-btn { + padding: 8px 12px; + font-size: 0.75em; + gap: 6px; } } diff --git a/sw.js b/sw.js index 22c1588..277f7b4 100644 --- a/sw.js +++ b/sw.js @@ -10,7 +10,7 @@ const { Strategy } = workbox.strategies; const { CacheableResponsePlugin } = workbox.cacheableResponse; const { RangeRequestsPlugin } = workbox.rangeRequests; -precacheAndRoute([{"revision":"4bcb2b00de15518f01e19e306fe5c427","url":"index.html"},{"revision":"013ceb7d67293d532e979dde0347f3af","url":"cancel_off.webp"},{"revision":"bfc1563be018d82685716c6130529129","url":"cancel_on.webp"},{"revision":"d282c260fd35522036936bb6faf8ad21","url":"cdspin.gif"},{"revision":"3d820bf72b19bd4e437a61e75f317b83","url":"configure_off.webp"},{"revision":"e2c0c5e6aa1f7703c385a433a2d2a519","url":"configure_on.webp"},{"revision":"88e1e81c930d8e6c24dfdc7af274e812","url":"favicon.png"},{"revision":"d16b293eca457e2fb1e7ef2caca8c904","url":"favicon.svg"},{"revision":"d2b9c2e128ef1e5e4265c603b0bc3305","url":"free_stuff_off.webp"},{"revision":"cbc6a6779897f932c3a3c8dceb329804","url":"free_stuff_on.webp"},{"revision":"05fba4ef1884cbbd6afe09ea3325efc0","url":"install_off.webp"},{"revision":"11247e92082ba3d978a2e3785b0acf51","url":"install_on.webp"},{"revision":"d23ea8243c18eb217ef08fe607097824","url":"island.webp"},{"revision":"c97d78e159b8bff44d41e56d0aa20220","url":"isle.js"},{"revision":"068bc71fd65d0d0f5b0006e3eba93f12","url":"isle.wasm"},{"revision":"6d4248f1a08c218943e582673179b7be","url":"poster.pdf"},{"revision":"a6fcac24a24996545c039a1755af33ea","url":"read_me_off.webp"},{"revision":"aae783d064996b4322e23b092d97ea4a","url":"read_me_on.webp"},{"revision":"766a9e6e6d890f24cef252e81753b29d","url":"run_game_off.webp"},{"revision":"70208e00e9ea641e4c98699f74100db3","url":"run_game_on.webp"},{"revision":"0a65c71d9983c9bb1bc6a5f405fd6fd9","url":"shark.webp"},{"revision":"88c1fd032e6fc16814690712a26c1ede","url":"uninstall_off.webp"},{"revision":"0118a4aca04c5fb0a525bf00b001844e","url":"uninstall_on.webp"},{"revision":"5c265d887349dca70d05a7a698cbc904","url":"app.js"},{"revision":"51c3e428a43da7caec47be6f88d095b3","url":"style.css"},{"revision":"060210979e13e305510de6285e085db1","url":"manifest.json"},{"revision":"4f0172bc7007d34cebf681cc233ab57f","url":"install.webp"},{"revision":"6a70d35dadf51d2ec6e38a6202d7fb0b","url":"install.mp3"},{"revision":"eac041a0b8835bfea706d997b0b7b224","url":"downloader.js"},{"revision":"6899f72755d4e84c707b93ac54a8fb06","url":"debug.js"},{"revision":"7817b36ddda9f07797c05a0ff6cacb21","url":"debug.html"},{"revision":"4ea2aac9446188b8a588811bc593919e","url":"ogel.webp"},{"revision":"c57d24598537443c5b8276c8dd5dbdc9","url":"bonus.webp"},{"revision":"d11c8c893d5525c8842555dc2861c393","url":"callfail.webp"},{"revision":"be9a89fb567b632cf8d4661cbf8afd9e","url":"getinfo.webp"},{"revision":"fe986681f41e96631f39f3288b23e538","url":"sysinfo.webp"}]); +precacheAndRoute([{"revision":"919a89eee50ea6642aa79aca8cf48f6d","url":"index.html"},{"revision":"013ceb7d67293d532e979dde0347f3af","url":"cancel_off.webp"},{"revision":"bfc1563be018d82685716c6130529129","url":"cancel_on.webp"},{"revision":"d282c260fd35522036936bb6faf8ad21","url":"cdspin.gif"},{"revision":"3d820bf72b19bd4e437a61e75f317b83","url":"configure_off.webp"},{"revision":"e2c0c5e6aa1f7703c385a433a2d2a519","url":"configure_on.webp"},{"revision":"88e1e81c930d8e6c24dfdc7af274e812","url":"favicon.png"},{"revision":"d16b293eca457e2fb1e7ef2caca8c904","url":"favicon.svg"},{"revision":"d2b9c2e128ef1e5e4265c603b0bc3305","url":"free_stuff_off.webp"},{"revision":"cbc6a6779897f932c3a3c8dceb329804","url":"free_stuff_on.webp"},{"revision":"05fba4ef1884cbbd6afe09ea3325efc0","url":"install_off.webp"},{"revision":"11247e92082ba3d978a2e3785b0acf51","url":"install_on.webp"},{"revision":"d23ea8243c18eb217ef08fe607097824","url":"island.webp"},{"revision":"c97d78e159b8bff44d41e56d0aa20220","url":"isle.js"},{"revision":"5f174d45de1e3c5e0abdbccfd64567b6","url":"isle.wasm"},{"revision":"6d4248f1a08c218943e582673179b7be","url":"poster.pdf"},{"revision":"a6fcac24a24996545c039a1755af33ea","url":"read_me_off.webp"},{"revision":"aae783d064996b4322e23b092d97ea4a","url":"read_me_on.webp"},{"revision":"766a9e6e6d890f24cef252e81753b29d","url":"run_game_off.webp"},{"revision":"70208e00e9ea641e4c98699f74100db3","url":"run_game_on.webp"},{"revision":"0a65c71d9983c9bb1bc6a5f405fd6fd9","url":"shark.webp"},{"revision":"88c1fd032e6fc16814690712a26c1ede","url":"uninstall_off.webp"},{"revision":"0118a4aca04c5fb0a525bf00b001844e","url":"uninstall_on.webp"},{"revision":"5c265d887349dca70d05a7a698cbc904","url":"app.js"},{"revision":"a135d0ac3af185ef25b4e1afa694e0a0","url":"style.css"},{"revision":"060210979e13e305510de6285e085db1","url":"manifest.json"},{"revision":"4f0172bc7007d34cebf681cc233ab57f","url":"install.webp"},{"revision":"6a70d35dadf51d2ec6e38a6202d7fb0b","url":"install.mp3"},{"revision":"eac041a0b8835bfea706d997b0b7b224","url":"downloader.js"},{"revision":"6899f72755d4e84c707b93ac54a8fb06","url":"debug.js"},{"revision":"7817b36ddda9f07797c05a0ff6cacb21","url":"debug.html"},{"revision":"4ea2aac9446188b8a588811bc593919e","url":"ogel.webp"},{"revision":"c57d24598537443c5b8276c8dd5dbdc9","url":"bonus.webp"},{"revision":"d11c8c893d5525c8842555dc2861c393","url":"callfail.webp"},{"revision":"be9a89fb567b632cf8d4661cbf8afd9e","url":"getinfo.webp"},{"revision":"fe986681f41e96631f39f3288b23e538","url":"sysinfo.webp"},{"revision":"4ec902e0b0ce60ffd9dd565c9ddf40a1","url":"send.webp"}]); const gameFiles = [ "/LEGO/Scripts/CREDITS.SI", "/LEGO/Scripts/INTRO.SI", "/LEGO/Scripts/NOCD.SI", "/LEGO/Scripts/SNDANIM.SI", diff --git a/workbox-config.js b/workbox-config.js index 2e6e158..16860f5 100644 --- a/workbox-config.js +++ b/workbox-config.js @@ -8,7 +8,7 @@ module.exports = { 'read_me_on.webp', 'run_game_off.webp', 'run_game_on.webp', 'shark.webp', 'uninstall_off.webp', 'uninstall_on.webp', 'app.js', 'style.css', 'manifest.json', 'install.webp', 'install.mp3', 'downloader.js', 'debug.js', 'debug.html', 'ogel.webp', - 'bonus.webp', 'callfail.webp', 'getinfo.webp', 'sysinfo.webp' + 'bonus.webp', 'callfail.webp', 'getinfo.webp', 'sysinfo.webp', 'send.webp' ], swSrc: 'src/sw.js', swDest: 'sw.js',