summaryrefslogtreecommitdiff
path: root/2026/games/the0x539/data.js
diff options
context:
space:
mode:
authorLLLL Colonq <llll@colonq>2026-08-29 04:06:51 -0400
committerLLLL Colonq <llll@colonq>2026-08-29 04:06:51 -0400
commit761a3172bf4c15aed3836e4d1cd6f815b651b0e0 (patch)
treecc90491529e83349d84d42a8e9982e5f0f38338e /2026/games/the0x539/data.js
parent0d2d8cd897e94bd94e0b3ae7c6ce9aa580a44a0a (diff)
Fix
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,
+}