Skip to content

Commit f43d9b4

Browse files
committed
pwa
1 parent 4539b4b commit f43d9b4

3 files changed

Lines changed: 83 additions & 2 deletions

File tree

index.html

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@
3434
<meta property="twitter:image" content="https://sombrasoft.github.io/solda-slug/assets/solda_slug_opengraph.png">
3535

3636
<link rel="icon" type="image/png" href="/assets/bozo.png">
37+
<link rel="manifest" href="/manifest.json">
38+
<meta name="theme-color" content="#000000">
3739
<title>Solda Slug</title>
3840
<link rel="preconnect" href="https://fonts.googleapis.com">
3941
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@@ -43,11 +45,11 @@
4345

4446
<body>
4547
<div id="game-container"></div>
46-
<div id="about-container">
47-
<div class="about-game">
4848
<div id="rotate-device-overlay" style="display: none;">
4949
<p>Please rotate your device to landscape mode.</p>
5050
</div>
51+
<div id="about-container">
52+
<div class="about-game">
5153
<h2>SOBRE O JOGO</h2>
5254
<p class="bio">
5355
Em um futuro distópico não muito distante, um ex-presidente se encontra em uma situação delicada: uma tornozeleira eletrônica, cortesia de seu fã número um, o temível Xandão. Sua missão é usar um ferro de solda para libertá-lo, mas cuidado! O olhar atento de Xandão pode aparecer a qualquer momento. Se ele te pegar no flagra... é GAME OVER.
@@ -84,6 +86,17 @@ <h2>CRÉDITOS E AVISOS</h2>
8486
</div>
8587
</div>
8688
<script type="module" src="./src/main.ts"></script>
89+
<script>
90+
if ('serviceWorker' in navigator) {
91+
window.addEventListener('load', () => {
92+
navigator.serviceWorker.register('/sw.js').then(registration => {
93+
console.log('ServiceWorker registration successful with scope: ', registration.scope);
94+
}, err => {
95+
console.log('ServiceWorker registration failed: ', err);
96+
});
97+
});
98+
}
99+
</script>
87100
</body>
88101

89102
</html>

public/manifest.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"name": "Solda Slug",
3+
"short_name": "Solda Slug",
4+
"description": "Ajude a libertar o ex-presidente de sua tornozeleira eletrônica nesta paródia hilária.",
5+
"start_url": ".",
6+
"display": "standalone",
7+
"background_color": "#000000",
8+
"theme_color": "#000000",
9+
"icons": [
10+
{
11+
"src": "/assets/bozo.png",
12+
"sizes": "192x192",
13+
"type": "image/png"
14+
},
15+
{
16+
"src": "/assets/bozo.png",
17+
"sizes": "512x512",
18+
"type": "image/png"
19+
}
20+
]
21+
}

public/sw.js

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
const CACHE_NAME = "solda-slug-cache-v1";
2+
const urlsToCache = [
3+
"/",
4+
"/index.html",
5+
"/src/style.css",
6+
// Add all your assets here
7+
"/assets/background.png",
8+
"/assets/bozo_chora.png",
9+
"/assets/bozo_sentado.png",
10+
"/assets/bozo_telefone.ogg",
11+
"/assets/bozo.png",
12+
"/assets/cursor_gado.png",
13+
"/assets/gameover.ogg",
14+
"/assets/heart.svg",
15+
"/assets/menu_background.png",
16+
"/assets/menu_theme.ogg",
17+
"/assets/miau.ogg",
18+
"/assets/solda_quente.png",
19+
"/assets/solda_slug_banner.png",
20+
"/assets/solda_slug_opengraph.png",
21+
"/assets/solda.png",
22+
"/assets/soldering.ogg",
23+
"/assets/song_intro.ogg",
24+
"/assets/song_loop.ogg",
25+
"/assets/vaca.ogg",
26+
"/assets/xandao.png",
27+
];
28+
29+
self.addEventListener("install", (event) => {
30+
event.waitUntil(
31+
caches.open(CACHE_NAME).then((cache) => {
32+
console.log("Opened cache");
33+
return cache.addAll(urlsToCache);
34+
}),
35+
);
36+
});
37+
38+
self.addEventListener("fetch", (event) => {
39+
event.respondWith(
40+
caches.match(event.request).then((response) => {
41+
if (response) {
42+
return response;
43+
}
44+
return fetch(event.request);
45+
}),
46+
);
47+
});

0 commit comments

Comments
 (0)