@turnipxenon/pineapple 2.4.23 → 2.4.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.idea/workspace.xml +63 -58
- package/.svelte-kit/__package__/index.d.ts +1 -1
- package/.svelte-kit/__package__/index.js +1 -1
- package/.svelte-kit/__package__/template/Seaweed/GameSection.svelte +207 -0
- package/.svelte-kit/__package__/template/Seaweed/GameSection.svelte.d.ts +17 -0
- package/.svelte-kit/__package__/template/Seaweed/ProjectSection.svelte +289 -0
- package/.svelte-kit/__package__/template/Seaweed/ProjectSection.svelte.d.ts +17 -0
- package/.svelte-kit/__package__/template/Seaweed/SeaweedTemplate.svelte +246 -0
- package/.svelte-kit/__package__/template/{SeaweedTemplate.svelte.d.ts → Seaweed/SeaweedTemplate.svelte.d.ts} +1 -0
- package/.svelte-kit/__package__/template/Seaweed/seaweed.postcss +133 -0
- package/.svelte-kit/ambient.d.ts +2 -0
- package/.svelte-kit/generated/server/internal.js +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/template/Seaweed/GameSection.svelte +207 -0
- package/dist/template/Seaweed/GameSection.svelte.d.ts +17 -0
- package/dist/template/Seaweed/ProjectSection.svelte +289 -0
- package/dist/template/Seaweed/ProjectSection.svelte.d.ts +17 -0
- package/dist/template/Seaweed/SeaweedTemplate.svelte +246 -0
- package/dist/template/{SeaweedTemplate.svelte.d.ts → Seaweed/SeaweedTemplate.svelte.d.ts} +1 -0
- package/dist/template/Seaweed/seaweed.postcss +133 -0
- package/package.json +1 -1
- package/src/lib/index.ts +1 -1
- package/src/lib/template/Seaweed/GameSection.svelte +213 -0
- package/src/lib/template/Seaweed/ProjectSection.svelte +298 -0
- package/src/lib/template/Seaweed/SeaweedTemplate.svelte +275 -0
- package/src/lib/template/Seaweed/seaweed.postcss +133 -0
- package/src/routes/(seaweed)/portfolio/+page.svelte +1 -1
- package/src/routes/(seaweed)/portfolio/actual/+page.svelte +4 -4
- package/.svelte-kit/__package__/template/SeaweedTemplate.svelte +0 -910
- package/dist/template/SeaweedTemplate.svelte +0 -910
- package/src/lib/template/SeaweedTemplate.svelte +0 -877
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
main {
|
|
2
|
+
width: 100%;
|
|
3
|
+
overflow: visible;
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
justify-content: center;
|
|
7
|
+
align-items: center;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
h1 {
|
|
11
|
+
font-size: 2em;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
h2 {
|
|
15
|
+
font-size: 1.5em;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.section-card {
|
|
19
|
+
padding: 3em;
|
|
20
|
+
max-width: 800px;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.game-card, .project-card {
|
|
24
|
+
width: 100vw;
|
|
25
|
+
max-width: 36em;
|
|
26
|
+
margin-bottom: 3em;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.game-card > video {
|
|
30
|
+
border-top-left-radius: 1em;
|
|
31
|
+
border-top-right-radius: 1em;
|
|
32
|
+
max-height: 24em;
|
|
33
|
+
width: 100%;
|
|
34
|
+
object-fit: cover;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
#migrante-alberta, .game-card > img, .project-card > img {
|
|
38
|
+
border-top-left-radius: 1em;
|
|
39
|
+
border-top-right-radius: 1em;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
#migrante-alberta {
|
|
43
|
+
width: 100%;
|
|
44
|
+
object-fit: cover;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.game-button {
|
|
48
|
+
@apply btn variant-filled-primary;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.game-button > img {
|
|
52
|
+
max-height: 1lh;
|
|
53
|
+
/* todo: consider night mode day mode */
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.two-column-separated {
|
|
57
|
+
display: flex;
|
|
58
|
+
justify-content: space-between;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.more-section {
|
|
62
|
+
padding: 1em;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.greater-about-div {
|
|
66
|
+
display: flex;
|
|
67
|
+
flex-direction: column;
|
|
68
|
+
max-width: 36em;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.experience-and-about-div {
|
|
72
|
+
display: flex;
|
|
73
|
+
gap: 2em;
|
|
74
|
+
flex-wrap: wrap;
|
|
75
|
+
justify-content: center;
|
|
76
|
+
align-items: flex-start;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.game-card-body, .project-card-body {
|
|
80
|
+
padding: 1em;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.game-card-body > blockquote {
|
|
84
|
+
margin-bottom: 0.7lh;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.game-card-body > h1, .project-card-body > h2 {
|
|
88
|
+
text-align: center;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.game-link-section {
|
|
92
|
+
display: flex;
|
|
93
|
+
flex-direction: row;
|
|
94
|
+
justify-content: center;
|
|
95
|
+
gap: 1em;
|
|
96
|
+
margin-top: 1em;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.games-section, .projects-section {
|
|
100
|
+
display: flex;
|
|
101
|
+
flex-wrap: wrap;
|
|
102
|
+
gap: 2em;
|
|
103
|
+
justify-content: center;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.projects-section {
|
|
107
|
+
align-items: flex-start;
|
|
108
|
+
/*justify-content: flex-start;*/
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.long-btn-image {
|
|
112
|
+
max-height: 1lh;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.itch-promo {
|
|
116
|
+
padding: 4em;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
#hepcat-video {
|
|
120
|
+
object-position: 0 0;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.title-card {
|
|
124
|
+
width: clamp(360px, 80vw, 800px);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
[class*='qt-'] {
|
|
128
|
+
font-weight: var(--qt-font-weight);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.accordion-header {
|
|
132
|
+
margin-top: 0.25em;
|
|
133
|
+
}
|
package/.svelte-kit/ambient.d.ts
CHANGED
|
@@ -46,6 +46,7 @@ declare module '$env/static/private' {
|
|
|
46
46
|
export const HOMEDRIVE: string;
|
|
47
47
|
export const HOMEPATH: string;
|
|
48
48
|
export const IDEA_INITIAL_DIRECTORY: string;
|
|
49
|
+
export const IJ_RESTARTER_LOG: string;
|
|
49
50
|
export const INIT_CWD: string;
|
|
50
51
|
export const JAVA_HOME: string;
|
|
51
52
|
export const LOCALAPPDATA: string;
|
|
@@ -239,6 +240,7 @@ declare module '$env/dynamic/private' {
|
|
|
239
240
|
HOMEDRIVE: string;
|
|
240
241
|
HOMEPATH: string;
|
|
241
242
|
IDEA_INITIAL_DIRECTORY: string;
|
|
243
|
+
IJ_RESTARTER_LOG: string;
|
|
242
244
|
INIT_CWD: string;
|
|
243
245
|
JAVA_HOME: string;
|
|
244
246
|
LOCALAPPDATA: string;
|
|
@@ -21,7 +21,7 @@ export const options = {
|
|
|
21
21
|
app: ({ head, body, assets, nonce, env }) => "<!DOCTYPE html>\n<html lang=\"en\">\n\t<head>\n\t\t<meta charset=\"utf-8\" />\n\t\t<link rel=\"icon\" href=\"" + assets + "/favicon.png\" />\n\t\t<meta name=\"viewport\" content=\"width=device-width\" />\n\t\t" + head + "\n\t</head>\n\n\t<body data-sveltekit-preload-data=\"hover\" data-theme=\"crimson\">\n\t\t<div style=\"display: contents\" class=\"h-full overflow-hidden\">" + body + "</div>\n\t</body>\n</html>\n",
|
|
22
22
|
error: ({ status, message }) => "<!doctype html>\n<html lang=\"en\">\n\t<head>\n\t\t<meta charset=\"utf-8\" />\n\t\t<title>" + message + "</title>\n\n\t\t<style>\n\t\t\tbody {\n\t\t\t\t--bg: white;\n\t\t\t\t--fg: #222;\n\t\t\t\t--divider: #ccc;\n\t\t\t\tbackground: var(--bg);\n\t\t\t\tcolor: var(--fg);\n\t\t\t\tfont-family:\n\t\t\t\t\tsystem-ui,\n\t\t\t\t\t-apple-system,\n\t\t\t\t\tBlinkMacSystemFont,\n\t\t\t\t\t'Segoe UI',\n\t\t\t\t\tRoboto,\n\t\t\t\t\tOxygen,\n\t\t\t\t\tUbuntu,\n\t\t\t\t\tCantarell,\n\t\t\t\t\t'Open Sans',\n\t\t\t\t\t'Helvetica Neue',\n\t\t\t\t\tsans-serif;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\t\t\t\theight: 100vh;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t.error {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tmax-width: 32rem;\n\t\t\t\tmargin: 0 1rem;\n\t\t\t}\n\n\t\t\t.status {\n\t\t\t\tfont-weight: 200;\n\t\t\t\tfont-size: 3rem;\n\t\t\t\tline-height: 1;\n\t\t\t\tposition: relative;\n\t\t\t\ttop: -0.05rem;\n\t\t\t}\n\n\t\t\t.message {\n\t\t\t\tborder-left: 1px solid var(--divider);\n\t\t\t\tpadding: 0 0 0 1rem;\n\t\t\t\tmargin: 0 0 0 1rem;\n\t\t\t\tmin-height: 2.5rem;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t}\n\n\t\t\t.message h1 {\n\t\t\t\tfont-weight: 400;\n\t\t\t\tfont-size: 1em;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t@media (prefers-color-scheme: dark) {\n\t\t\t\tbody {\n\t\t\t\t\t--bg: #222;\n\t\t\t\t\t--fg: #ddd;\n\t\t\t\t\t--divider: #666;\n\t\t\t\t}\n\t\t\t}\n\t\t</style>\n\t</head>\n\t<body>\n\t\t<div class=\"error\">\n\t\t\t<span class=\"status\">" + status + "</span>\n\t\t\t<div class=\"message\">\n\t\t\t\t<h1>" + message + "</h1>\n\t\t\t</div>\n\t\t</div>\n\t</body>\n</html>\n"
|
|
23
23
|
},
|
|
24
|
-
version_hash: "
|
|
24
|
+
version_hash: "1cu0e7k"
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
export async function get_hooks() {
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { default as PineappleLayoutBase } from "./components/pineapple/PineappleBaseLayout.svelte";
|
|
2
|
-
export { default as SeaweedTemplate } from "./template/SeaweedTemplate.svelte";
|
|
2
|
+
export { default as SeaweedTemplate } from "./template/Seaweed/SeaweedTemplate.svelte";
|
|
3
3
|
export { default as LazyAsset } from "./components/LazyAsset.svelte";
|
|
4
4
|
export { default as Card } from "./components/Card.svelte";
|
|
5
5
|
export * from "./components/dialog_manager/DialogManagerStore";
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { default as PineappleLayoutBase } from "./components/pineapple/PineappleBaseLayout.svelte";
|
|
2
|
-
export { default as SeaweedTemplate } from "./template/SeaweedTemplate.svelte";
|
|
2
|
+
export { default as SeaweedTemplate } from "./template/Seaweed/SeaweedTemplate.svelte";
|
|
3
3
|
export { default as LazyAsset } from "./components/LazyAsset.svelte";
|
|
4
4
|
export { default as Card } from "./components/Card.svelte";
|
|
5
5
|
export * from "./components/dialog_manager/DialogManagerStore";
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
<script>export let email = "turnipxenon@gmail.com";
|
|
2
|
+
import "./seaweed.postcss";
|
|
3
|
+
import HeaderPengi from "../../assets/temp/header-pengi.mp4";
|
|
4
|
+
import GithubIcon from "../../assets/icons/github-mark.svg";
|
|
5
|
+
import { ItchLogoHotLink } from "../../consts";
|
|
6
|
+
import HeaderHepCat from "../../assets/temp/header-hep-cat.mp4";
|
|
7
|
+
import BitbucketIcon from "../../assets/icons/bitbucket-icon.svg";
|
|
8
|
+
import HeaderChefWings from "../../assets/game_dev/footage-chef-wings.gif";
|
|
9
|
+
import LinkIcon from "../../assets/icons/link-icon.svg";
|
|
10
|
+
import HeaderSoulwork from "../../assets/temp/header-soulwork.mp4";
|
|
11
|
+
import Card from "../../components/Card.svelte";
|
|
12
|
+
import { getModalStore } from "@skeletonlabs/skeleton";
|
|
13
|
+
const modalStore = getModalStore();
|
|
14
|
+
const chefWingsWarning = {
|
|
15
|
+
type: "confirm",
|
|
16
|
+
title: "Warning: please confirm",
|
|
17
|
+
body: `This will directly link to the game itself, since this game does not have any game page or any publicly viewable source code. The game is only playable on desktop. Are you sure you wish to proceed? If there are any bugs, please report at <a href='mailto:${email}' target='_blank'>${email}</a>.`,
|
|
18
|
+
response: (r) => {
|
|
19
|
+
if (r) {
|
|
20
|
+
window.open("https://selk.io/birb-project/trunk/");
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
</script>
|
|
25
|
+
|
|
26
|
+
<Card>
|
|
27
|
+
<div class="section-card title-card" slot="content">
|
|
28
|
+
<h1 class="text-center">Games</h1>
|
|
29
|
+
</div>
|
|
30
|
+
</Card>
|
|
31
|
+
|
|
32
|
+
<section class="games-section">
|
|
33
|
+
|
|
34
|
+
<Card>
|
|
35
|
+
<section class="game-card" slot="content">
|
|
36
|
+
<video playsinline autoplay muted loop preload="none">
|
|
37
|
+
video unavailable. original video contains pengi gameplay showing the dynamic dialog
|
|
38
|
+
layout and character animation.
|
|
39
|
+
<source src={HeaderPengi} type="video/mp4">
|
|
40
|
+
</video>
|
|
41
|
+
|
|
42
|
+
<section class="game-card-body">
|
|
43
|
+
|
|
44
|
+
<h1>Pengi</h1>
|
|
45
|
+
|
|
46
|
+
<blockquote>
|
|
47
|
+
Well well, quite the dreamer, aren’t you? Might be hard to get in... costs a lot of
|
|
48
|
+
money...
|
|
49
|
+
</blockquote>
|
|
50
|
+
|
|
51
|
+
<p>
|
|
52
|
+
Pengi is a text-based adventure made in <span class="qt-unity">Unity</span>. I acted as the sole
|
|
53
|
+
programmer for the team. Most of the work revolves around UI and creating <a
|
|
54
|
+
href="https://yarnspinner.dev/" target="_blank">YarnSpinner</a> commands for writers
|
|
55
|
+
to use to create expressive stage directions in the script.
|
|
56
|
+
</p>
|
|
57
|
+
|
|
58
|
+
<section class="game-link-section">
|
|
59
|
+
<button type="button" class="game-button turnip-button"
|
|
60
|
+
role="link"
|
|
61
|
+
title="https://github.com/GreenTea-M/ProjectPengi"
|
|
62
|
+
on:click={()=> window.open("https://github.com/GreenTea-M/ProjectPengi")}>
|
|
63
|
+
<img alt="github icon" src={GithubIcon}>
|
|
64
|
+
</button>
|
|
65
|
+
<button type="button" class="game-button turnip-button"
|
|
66
|
+
role="link"
|
|
67
|
+
title="https://turnipxenon.itch.io/pengi"
|
|
68
|
+
on:click={()=> window.open("https://turnipxenon.itch.io/pengi")}>
|
|
69
|
+
<img alt="itch.io icon" src={ItchLogoHotLink}>
|
|
70
|
+
</button>
|
|
71
|
+
</section>
|
|
72
|
+
</section>
|
|
73
|
+
</section>
|
|
74
|
+
</Card>
|
|
75
|
+
|
|
76
|
+
<Card>
|
|
77
|
+
<section class="game-card" slot="content">
|
|
78
|
+
<!-- todo: move the image crop a bit lower -->
|
|
79
|
+
<video playsinline autoplay muted loop preload="none" id="hepcat-video">
|
|
80
|
+
<source src={HeaderHepCat} type="video/mp4">
|
|
81
|
+
</video>
|
|
82
|
+
|
|
83
|
+
<section class="game-card-body">
|
|
84
|
+
|
|
85
|
+
<h1>Hepcat</h1>
|
|
86
|
+
|
|
87
|
+
<blockquote>
|
|
88
|
+
"Cats, Jazz, and a little bit of Death. What more could anyone ask for?"
|
|
89
|
+
</blockquote>
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
<p>This is a course project made by a team of six for <a
|
|
93
|
+
href="https://sites.google.com/ualberta.ca/cmput250/">CMPUT 250</a>, and it won <a
|
|
94
|
+
href="https://webdocs.cs.ualberta.ca/~nathanst/certificate/">Game of the year.</a>
|
|
95
|
+
</p>
|
|
96
|
+
|
|
97
|
+
<p>
|
|
98
|
+
Hep Cat is a rhythm game made in <a
|
|
99
|
+
href="https://www.rpgmakerweb.com/products/programs/rpg-maker-mv" target="_blank" class="qt-rpgmaker">
|
|
100
|
+
RPG Maker MV</a> with the help of additional custom-made <span class="qt-js">Javascript</span> plugins. I
|
|
101
|
+
wrote the rhythm game plugin's framework. For this plugin to work, I
|
|
102
|
+
had to write a <span class="qt-python">Python</span> script that parses osu! files into readable JSON
|
|
103
|
+
files.
|
|
104
|
+
</p>
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
<section class="game-link-section">
|
|
108
|
+
<button type="button" class="game-button turnip-button"
|
|
109
|
+
role="link"
|
|
110
|
+
title="https://bitbucket.org/egginchicken/hep-cat/src/master/"
|
|
111
|
+
on:click={()=> window.open("https://bitbucket.org/egginchicken/hep-cat/src/master/")}>
|
|
112
|
+
<img alt="bitbucket icon" src={BitbucketIcon}>
|
|
113
|
+
</button>
|
|
114
|
+
<button type="button" class="game-button turnip-button"
|
|
115
|
+
role="link"
|
|
116
|
+
title="https://just-a-phantom.itch.io/hep-cat"
|
|
117
|
+
on:click={()=> window.open("https://just-a-phantom.itch.io/hep-cat")}>
|
|
118
|
+
<img alt="itch.io icon" src={ItchLogoHotLink}>
|
|
119
|
+
</button>
|
|
120
|
+
</section>
|
|
121
|
+
</section>
|
|
122
|
+
</section>
|
|
123
|
+
</Card>
|
|
124
|
+
|
|
125
|
+
<Card>
|
|
126
|
+
<section class="game-card" slot="content">
|
|
127
|
+
<img src={HeaderChefWings} alt="todo" loading="lazy">
|
|
128
|
+
<section class="game-card-body">
|
|
129
|
+
|
|
130
|
+
<h1>Chef Wings</h1>
|
|
131
|
+
<p>
|
|
132
|
+
A “roguelite-lite” where you gather ingredients in a procedurally-generated dungeon and use
|
|
133
|
+
them to cook for customers and then critics!
|
|
134
|
+
</p>
|
|
135
|
+
<p>
|
|
136
|
+
I built and documented several of the game’s systems including the game state management
|
|
137
|
+
system that extends <span class="qt-unity">Unity’s</span> existing Monobehavior lifecycle with new events,
|
|
138
|
+
and the dialogue, event, and level systems that coordinate the game flow using the interactive
|
|
139
|
+
dialogue tool YarnSpinner
|
|
140
|
+
</p>
|
|
141
|
+
|
|
142
|
+
<section class="game-link-section">
|
|
143
|
+
<button type="button" class="game-button turnip-button"
|
|
144
|
+
title="https://selk.io/birb-project/trunk/"
|
|
145
|
+
on:click={()=>modalStore.trigger(chefWingsWarning)}>
|
|
146
|
+
<img alt="itch.io icon" src={LinkIcon}>
|
|
147
|
+
<span>selk.io/birb-project/trunk/</span>
|
|
148
|
+
</button>
|
|
149
|
+
</section>
|
|
150
|
+
</section>
|
|
151
|
+
</section>
|
|
152
|
+
</Card>
|
|
153
|
+
<Card>
|
|
154
|
+
<section class="game-card" slot="content">
|
|
155
|
+
<video playsinline autoplay muted loop preload="none">
|
|
156
|
+
<source src={HeaderSoulwork} type="video/mp4">
|
|
157
|
+
</video>
|
|
158
|
+
<section class="game-card-body">
|
|
159
|
+
|
|
160
|
+
<h1>Soulwork</h1>
|
|
161
|
+
|
|
162
|
+
<p>
|
|
163
|
+
Soulwork is a 2D platforming game that uses unique physics to solve puzzle-based levels.
|
|
164
|
+
This project is a Time to Game Jam entry, restricting game development to be under 48
|
|
165
|
+
hours.
|
|
166
|
+
</p>
|
|
167
|
+
<p>
|
|
168
|
+
I helped make the level designing tools used by the designers to drag-and-drop objects
|
|
169
|
+
on the stage. I also helped program the unique physics-based gameplay mechanic. This was
|
|
170
|
+
was made in <span class="qt-unity">Unity</span> written using <span class="qt-cs">C#</span>.
|
|
171
|
+
</p>
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
<section class="game-link-section">
|
|
175
|
+
<button type="button" class="game-button turnip-button"
|
|
176
|
+
role="link"
|
|
177
|
+
title="https://github.com/Zeyu-Li/Clockwork"
|
|
178
|
+
on:click={()=> window.open("https://github.com/Zeyu-Li/Clockwork")}>
|
|
179
|
+
<img alt="github icon" src={GithubIcon}>
|
|
180
|
+
</button>
|
|
181
|
+
<button type="button" class="game-button turnip-button"
|
|
182
|
+
role="link"
|
|
183
|
+
title="https://itch.io/jam/time-to-game-jam-gadec-fall-game-jam/rate/514331"
|
|
184
|
+
on:click={()=> window.open("https://itch.io/jam/time-to-game-jam-gadec-fall-game-jam/rate/514331")}>
|
|
185
|
+
<img alt="itch.io icon" src={ItchLogoHotLink}>
|
|
186
|
+
</button>
|
|
187
|
+
</section>
|
|
188
|
+
</section>
|
|
189
|
+
</section>
|
|
190
|
+
</Card>
|
|
191
|
+
<Card overrideStyle="align-self: flex-start;">
|
|
192
|
+
<section class="game-card itch-promo" slot="content">
|
|
193
|
+
<h1 class="mb-12 text-center">Check out my itch.io page for more games</h1>
|
|
194
|
+
|
|
195
|
+
<section class="game-link-section">
|
|
196
|
+
<button type="button" class="btn variant-filled-primary turnip-button"
|
|
197
|
+
role="link"
|
|
198
|
+
title="https://turnipxenon.itch.io/"
|
|
199
|
+
on:click={() => window.open("https://turnipxenon.itch.io/")}>
|
|
200
|
+
<img src={ItchLogoHotLink} class="long-btn-image" alt="itch icon">
|
|
201
|
+
<span>TurnipXenon</span>
|
|
202
|
+
</button>
|
|
203
|
+
</section>
|
|
204
|
+
|
|
205
|
+
</section>
|
|
206
|
+
</Card>
|
|
207
|
+
</section>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
import "./seaweed.postcss";
|
|
3
|
+
declare const __propDef: {
|
|
4
|
+
props: {
|
|
5
|
+
email?: string | undefined;
|
|
6
|
+
};
|
|
7
|
+
events: {
|
|
8
|
+
[evt: string]: CustomEvent<any>;
|
|
9
|
+
};
|
|
10
|
+
slots: {};
|
|
11
|
+
};
|
|
12
|
+
export type GameSectionProps = typeof __propDef.props;
|
|
13
|
+
export type GameSectionEvents = typeof __propDef.events;
|
|
14
|
+
export type GameSectionSlots = typeof __propDef.slots;
|
|
15
|
+
export default class GameSection extends SvelteComponent<GameSectionProps, GameSectionEvents, GameSectionSlots> {
|
|
16
|
+
}
|
|
17
|
+
export {};
|