summaryrefslogtreecommitdiff
path: root/2026/games/the0x539/data.js
diff options
context:
space:
mode:
authorLLLL Colonq <llll@colonq>2026-08-18 00:08:28 -0400
committerLLLL Colonq <llll@colonq>2026-08-18 00:08:28 -0400
commit32a62cfcb925225359a5c90761b795f2f737ebd2 (patch)
tree95c2261964803b19f2d39cb35d8d514ed6e5a6f4 /2026/games/the0x539/data.js
parentde99c5f7636a952025ea13de02bafd25bcb6bdec (diff)
Re-populate games
Diffstat (limited to '2026/games/the0x539/data.js')
-rw-r--r--2026/games/the0x539/data.js101
1 files changed, 101 insertions, 0 deletions
diff --git a/2026/games/the0x539/data.js b/2026/games/the0x539/data.js
new file mode 100644
index 0000000..977c557
--- /dev/null
+++ b/2026/games/the0x539/data.js
@@ -0,0 +1,101 @@
+const ingredients = {
+ i: 'ingot',
+ l: 'log',
+ p: 'plank',
+ s: 'stick',
+ d: 'dust',
+ c: 'cobble',
+ C: 'chest',
+ S: 'string',
+ g: 'gold',
+}
+
+function recipe(...shape) {
+ return shape.map(line => Array.from(line).map(ch => {
+ if (ch === ' ') {
+ return null;
+ } else {
+ const item = ingredients[ch];
+ console.assert(!!item);
+ return item;
+ }
+ }));
+}
+
+export const recipes = {
+ helmet: recipe(
+ 'iii',
+ 'i i',
+ ),
+ chestplate: recipe(
+ 'i i',
+ 'iii',
+ 'iii',
+ ),
+ leggings: recipe(
+ 'iii',
+ 'i i',
+ 'i i',
+ ),
+ boots: recipe(
+ 'i i',
+ 'i i',
+ ),
+ plank: recipe(
+ 'l',
+ ),
+ stick: recipe(
+ 'p',
+ 'p',
+ ),
+ pickaxe: recipe(
+ 'ppp',
+ ' s ',
+ ' s ',
+ ),
+ piston: recipe(
+ 'ppp',
+ 'cic',
+ 'cdc',
+ ),
+ chest: recipe(
+ 'ppp',
+ 'p p',
+ 'ppp',
+ ),
+ hopper: recipe(
+ 'i i',
+ 'iCi',
+ ' i ',
+ ),
+ rod: recipe(
+ ' s',
+ ' sS',
+ 's S',
+ ),
+ bow: recipe(
+ ' sS',
+ 's S',
+ ' sS',
+ ),
+ clock: recipe(
+ ' g ',
+ 'gdg',
+ ' g ',
+ ),
+};
+
+export const amounts = {
+ plank: 4,
+ stick: 4,
+}
+
+export const stackSizes = {
+ helmet: 1,
+ chestplate: 1,
+ leggings: 1,
+ boots: 1,
+ pickaxe: 1,
+ rod: 1,
+ bow: 1,
+}