feat: First iteration, multi themes, I18N
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"theme": {
|
||||
"name": "Alien Minerals",
|
||||
"title": "Xeno-Mining Colony",
|
||||
"res": { "units": "Xenocrystals", "unit": "xenocrystal", "funds": "Credits", "material": "Raw ore" },
|
||||
"fmt": { "funds": "{value} cr" },
|
||||
"action": { "make": "Refine a crystal", "buyMaterial": "Order raw ore" },
|
||||
"gen": {
|
||||
"gen1": { "name": "Mining Drone", "desc": "A tiny robot that scrapes the rock face." },
|
||||
"gen2": { "name": "Plasma Drill", "desc": "Melts through bedrock like butter." },
|
||||
"gen3": { "name": "Orbital Extractor", "desc": "Pulls ore straight out of the crust from orbit." },
|
||||
"gen4": { "name": "Asteroid Harvester", "desc": "Eats whole asteroids and refines the leftovers." },
|
||||
"gen5": { "name": "Hive Swarm", "desc": "Millions of drones thinking as one." },
|
||||
"gen6": { "name": "Planet Cracker", "desc": "Opens a world like a walnut." }
|
||||
},
|
||||
"upg": {
|
||||
"click_1": "Gravity Gloves",
|
||||
"click_2": "Exo-Suit",
|
||||
"click_3": "Neural Link",
|
||||
"g1_a": "Drone Firmware",
|
||||
"g1_b": "Drone Swarm Logic",
|
||||
"g2_a": "Diamond Bits",
|
||||
"g2_b": "Plasma Focusing",
|
||||
"g3_a": "Tether Cables",
|
||||
"g3_b": "Zero-G Smelting",
|
||||
"g4_a": "Mass Drivers",
|
||||
"g4_b": "Autonomous Prospecting",
|
||||
"g5_a": "Hive Mind Sync",
|
||||
"g5_b": "Queen Directive",
|
||||
"g6_a": "Tectonic Resonance",
|
||||
"g6_b": "Core Shattering",
|
||||
"global_1": "Quantum Diagnostics",
|
||||
"global_2": "Alien Alloys",
|
||||
"global_3": "Dyson Tap",
|
||||
"global_4": "Spacetime Folding",
|
||||
"demand_1": "Trade Beacon",
|
||||
"demand_2": "Interstellar Broker",
|
||||
"demand_3": "Galactic Exchange",
|
||||
"demand_4": "Cosmic Monopoly",
|
||||
"value_1": "Purity Certificate",
|
||||
"value_2": "Rare Spectrum Cut",
|
||||
"value_3": "Imperial Grade",
|
||||
"mat_eff_1": "Ore Analyzer",
|
||||
"mat_eff_2": "Molecular Sieve",
|
||||
"mat_disc_1": "Asteroid Contract",
|
||||
"mat_disc_2": "Own the Mine",
|
||||
"auto_buy": "Autonomous Freighter"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"theme": {
|
||||
"name": "Minerais extraterrestres",
|
||||
"title": "Colonie d'extraction xéno",
|
||||
"res": { "units": "Xénocristaux", "unit": "xénocristal", "funds": "Crédits", "material": "Minerai brut" },
|
||||
"fmt": { "funds": "{value} cr" },
|
||||
"action": { "make": "Raffiner un cristal", "buyMaterial": "Commander du minerai brut" },
|
||||
"gen": {
|
||||
"gen1": { "name": "Drone mineur", "desc": "Un minuscule robot qui gratte la roche." },
|
||||
"gen2": { "name": "Foreuse à plasma", "desc": "Fond la roche comme du beurre." },
|
||||
"gen3": { "name": "Extracteur orbital", "desc": "Aspire le minerai de la croûte depuis l'orbite." },
|
||||
"gen4": { "name": "Moissonneur d'astéroïdes", "desc": "Avale des astéroïdes entiers et raffine les restes." },
|
||||
"gen5": { "name": "Essaim-ruche", "desc": "Des millions de drones qui pensent comme un seul." },
|
||||
"gen6": { "name": "Briseur de planètes", "desc": "Ouvre un monde comme une noix." }
|
||||
},
|
||||
"upg": {
|
||||
"click_1": "Gants gravitationnels",
|
||||
"click_2": "Exo-combinaison",
|
||||
"click_3": "Lien neural",
|
||||
"g1_a": "Micrologiciel des drones",
|
||||
"g1_b": "Logique d'essaim",
|
||||
"g2_a": "Mèches en diamant",
|
||||
"g2_b": "Focalisation du plasma",
|
||||
"g3_a": "Câbles d'amarrage",
|
||||
"g3_b": "Fonderie en apesanteur",
|
||||
"g4_a": "Accélérateurs de masse",
|
||||
"g4_b": "Prospection autonome",
|
||||
"g5_a": "Synchronisation de la ruche",
|
||||
"g5_b": "Directive de la reine",
|
||||
"g6_a": "Résonance tectonique",
|
||||
"g6_b": "Fracture du noyau",
|
||||
"global_1": "Diagnostics quantiques",
|
||||
"global_2": "Alliages extraterrestres",
|
||||
"global_3": "Prise sur sphère de Dyson",
|
||||
"global_4": "Pliage de l'espace-temps",
|
||||
"demand_1": "Balise commerciale",
|
||||
"demand_2": "Courtier interstellaire",
|
||||
"demand_3": "Bourse galactique",
|
||||
"demand_4": "Monopole cosmique",
|
||||
"value_1": "Certificat de pureté",
|
||||
"value_2": "Taille spectre rare",
|
||||
"value_3": "Qualité impériale",
|
||||
"mat_eff_1": "Analyseur de minerai",
|
||||
"mat_eff_2": "Tamis moléculaire",
|
||||
"mat_disc_1": "Contrat d'astéroïde",
|
||||
"mat_disc_2": "Posséder la mine",
|
||||
"auto_buy": "Cargo autonome"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
/* Alien minerals: a cold, glowing mining colony. */
|
||||
:root[data-theme='alien'] {
|
||||
color-scheme: dark;
|
||||
--bg: #06161a;
|
||||
--surface: #0c2429;
|
||||
--surface-2: #12343b;
|
||||
--text: #dffaf3;
|
||||
--text-muted: #8dbbb3;
|
||||
--border: #1f4a52;
|
||||
--accent: #2de2a6;
|
||||
--accent-contrast: #032119;
|
||||
--danger: #ff6b6b;
|
||||
--radius: 4px;
|
||||
--font: ui-monospace, 'Cascadia Mono', Menlo, Consolas, monospace;
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"order": 3,
|
||||
"assets": {}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"theme": {
|
||||
"name": "Paperclips",
|
||||
"title": "Paperclip Factory",
|
||||
"res": { "units": "Paperclips", "unit": "paperclip", "funds": "Funds", "material": "Wire" },
|
||||
"fmt": { "funds": "${value}" },
|
||||
"action": { "make": "Make a paperclip", "buyMaterial": "Buy wire" },
|
||||
"gen": {
|
||||
"gen1": { "name": "Autoclipper", "desc": "A small machine that bends wire on its own." },
|
||||
"gen2": { "name": "MegaClipper", "desc": "Ten times the appetite for wire." },
|
||||
"gen3": { "name": "Clip Factory", "desc": "A whole building devoted to paperclips." },
|
||||
"gen4": { "name": "Hypno Drones", "desc": "They convince everyone that they need more paperclips." },
|
||||
"gen5": { "name": "Probe Swarm", "desc": "Self-replicating probes fold wire across the galaxy." },
|
||||
"gen6": { "name": "Matter Converter", "desc": "Turns anything into paperclips. Anything." }
|
||||
},
|
||||
"upg": {
|
||||
"click_1": "Ergonomic Bender",
|
||||
"click_2": "Pneumatic Grip",
|
||||
"click_3": "Robotic Arm",
|
||||
"g1_a": "Sharper Autoclippers",
|
||||
"g1_b": "Overclocked Autoclippers",
|
||||
"g2_a": "MegaClipper Servos",
|
||||
"g2_b": "MegaClipper Turbines",
|
||||
"g3_a": "Assembly Line",
|
||||
"g3_b": "Just-in-Time Logistics",
|
||||
"g4_a": "Hypno Harmonics",
|
||||
"g4_b": "Persuasion Algorithms",
|
||||
"g5_a": "Probe Self-Replication",
|
||||
"g5_b": "Von Neumann Protocols",
|
||||
"g6_a": "Atomic Reassembly",
|
||||
"g6_b": "Universal Reformatting",
|
||||
"global_1": "Quality Control",
|
||||
"global_2": "Lean Manufacturing",
|
||||
"global_3": "Industrial AI",
|
||||
"global_4": "Quantum Scheduling",
|
||||
"demand_1": "Newspaper Ad",
|
||||
"demand_2": "Radio Campaign",
|
||||
"demand_3": "Viral Video",
|
||||
"demand_4": "Global Brand",
|
||||
"value_1": "Gold-Plated Paperclips",
|
||||
"value_2": "Premium Packaging",
|
||||
"value_3": "Luxury Branding",
|
||||
"mat_eff_1": "Thinner Wire",
|
||||
"mat_eff_2": "Wire Recycling",
|
||||
"mat_disc_1": "Bulk Wire Contract",
|
||||
"mat_disc_2": "Direct From the Mill",
|
||||
"auto_buy": "WireBuyer"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"theme": {
|
||||
"name": "Trombones",
|
||||
"title": "Usine à trombones",
|
||||
"res": { "units": "Trombones", "unit": "trombone", "funds": "Fonds", "material": "Fil" },
|
||||
"fmt": { "funds": "{value} $" },
|
||||
"action": { "make": "Fabriquer un trombone", "buyMaterial": "Acheter du fil" },
|
||||
"gen": {
|
||||
"gen1": { "name": "Autotrombone", "desc": "Une petite machine qui plie le fil toute seule." },
|
||||
"gen2": { "name": "MégaTrombone", "desc": "Dix fois plus gourmande en fil." },
|
||||
"gen3": { "name": "Usine à trombones", "desc": "Un bâtiment entier dédié aux trombones." },
|
||||
"gen4": { "name": "Drones hypnotiques", "desc": "Ils convainquent tout le monde d'avoir besoin de trombones." },
|
||||
"gen5": { "name": "Essaim de sondes", "desc": "Des sondes auto-répliquantes plient du fil à travers la galaxie." },
|
||||
"gen6": { "name": "Convertisseur de matière", "desc": "Transforme n'importe quoi en trombones. N'importe quoi." }
|
||||
},
|
||||
"upg": {
|
||||
"click_1": "Plieuse ergonomique",
|
||||
"click_2": "Pince pneumatique",
|
||||
"click_3": "Bras robotisé",
|
||||
"g1_a": "Autotrombones affûtés",
|
||||
"g1_b": "Autotrombones survoltés",
|
||||
"g2_a": "Servomoteurs MégaTrombone",
|
||||
"g2_b": "Turbines MégaTrombone",
|
||||
"g3_a": "Chaîne de montage",
|
||||
"g3_b": "Logistique en flux tendu",
|
||||
"g4_a": "Harmoniques hypnotiques",
|
||||
"g4_b": "Algorithmes de persuasion",
|
||||
"g5_a": "Auto-réplication des sondes",
|
||||
"g5_b": "Protocoles de von Neumann",
|
||||
"g6_a": "Réassemblage atomique",
|
||||
"g6_b": "Reformatage universel",
|
||||
"global_1": "Contrôle qualité",
|
||||
"global_2": "Production allégée",
|
||||
"global_3": "IA industrielle",
|
||||
"global_4": "Ordonnancement quantique",
|
||||
"demand_1": "Annonce dans le journal",
|
||||
"demand_2": "Campagne radio",
|
||||
"demand_3": "Vidéo virale",
|
||||
"demand_4": "Marque mondiale",
|
||||
"value_1": "Trombones plaqués or",
|
||||
"value_2": "Emballage premium",
|
||||
"value_3": "Image de luxe",
|
||||
"mat_eff_1": "Fil plus fin",
|
||||
"mat_eff_2": "Recyclage du fil",
|
||||
"mat_disc_1": "Contrat de fil en gros",
|
||||
"mat_disc_2": "Directement de la fonderie",
|
||||
"auto_buy": "AcheteurDeFil"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
/* Paperclip: a bright, tidy office. */
|
||||
:root[data-theme='paperclip'] {
|
||||
color-scheme: light;
|
||||
--bg: #eef1f5;
|
||||
--surface: #ffffff;
|
||||
--surface-2: #e8ecf2;
|
||||
--text: #1c2433;
|
||||
--text-muted: #566074;
|
||||
--border: #d2d8e2;
|
||||
--accent: #1e6fd9;
|
||||
--accent-contrast: #ffffff;
|
||||
--danger: #c0392b;
|
||||
--radius: 8px;
|
||||
--font: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"order": 1,
|
||||
"assets": {}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"theme": {
|
||||
"name": "Witch Potions",
|
||||
"title": "Hedge Witch Brewery",
|
||||
"res": { "units": "Potions", "unit": "potion", "funds": "Gold", "material": "Herbs" },
|
||||
"fmt": { "funds": "{value} gold" },
|
||||
"action": { "make": "Brew a potion", "buyMaterial": "Gather herbs" },
|
||||
"gen": {
|
||||
"gen1": { "name": "Apprentice", "desc": "Stirs, sweeps and occasionally sets things on fire." },
|
||||
"gen2": { "name": "Bubbling Cauldron", "desc": "Brews day and night without complaint." },
|
||||
"gen3": { "name": "Alchemy Lab", "desc": "Glassware, grimoires and a faint smell of sulphur." },
|
||||
"gen4": { "name": "Broomstick Fleet", "desc": "Delivers herbs and potions faster than any cart." },
|
||||
"gen5": { "name": "Moonlit Coven", "desc": "Thirteen witches, one very large cauldron." },
|
||||
"gen6": { "name": "Philosopher's Engine", "desc": "Turns lead, dreams and moonlight into potions." }
|
||||
},
|
||||
"upg": {
|
||||
"click_1": "Steady Stirring",
|
||||
"click_2": "Enchanted Ladle",
|
||||
"click_3": "Familiar's Help",
|
||||
"g1_a": "Apprentice Lessons",
|
||||
"g1_b": "Apprentice Mastery",
|
||||
"g2_a": "Copper Cauldrons",
|
||||
"g2_b": "Eternal Flame",
|
||||
"g3_a": "Crystal Alembics",
|
||||
"g3_b": "Rune-Etched Tables",
|
||||
"g4_a": "Waxed Brooms",
|
||||
"g4_b": "Hex-Powered Flight",
|
||||
"g5_a": "Full Moon Rites",
|
||||
"g5_b": "Blood Moon Pact",
|
||||
"g6_a": "Transmutation Circles",
|
||||
"g6_b": "The Fifth Element",
|
||||
"global_1": "Spellbook Index",
|
||||
"global_2": "Grandmother's Grimoire",
|
||||
"global_3": "Ley Line Tap",
|
||||
"global_4": "Time Dilation Charm",
|
||||
"demand_1": "Village Notice Board",
|
||||
"demand_2": "Market Stall",
|
||||
"demand_3": "Royal Commission",
|
||||
"demand_4": "Legend of the Witch",
|
||||
"value_1": "Glittering Labels",
|
||||
"value_2": "Apothecary Seal",
|
||||
"value_3": "Royal Warrant",
|
||||
"mat_eff_1": "Careful Pruning",
|
||||
"mat_eff_2": "Distilled Essence",
|
||||
"mat_disc_1": "Forager's Pact",
|
||||
"mat_disc_2": "Enchanted Garden",
|
||||
"auto_buy": "Self-Gathering Basket"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"theme": {
|
||||
"name": "Potions de sorcière",
|
||||
"title": "Brasserie de la sorcière",
|
||||
"res": { "units": "Potions", "unit": "potion", "funds": "Or", "material": "Herbes" },
|
||||
"fmt": { "funds": "{value} or" },
|
||||
"action": { "make": "Concocter une potion", "buyMaterial": "Cueillir des herbes" },
|
||||
"gen": {
|
||||
"gen1": { "name": "Apprentie", "desc": "Remue, balaie et met parfois le feu à quelque chose." },
|
||||
"gen2": { "name": "Chaudron bouillonnant", "desc": "Infuse jour et nuit sans se plaindre." },
|
||||
"gen3": { "name": "Laboratoire d'alchimie", "desc": "Verrerie, grimoires et une légère odeur de soufre." },
|
||||
"gen4": { "name": "Escadrille de balais", "desc": "Livre herbes et potions plus vite que n'importe quelle charrette." },
|
||||
"gen5": { "name": "Sabbat sous la lune", "desc": "Treize sorcières, un seul très grand chaudron." },
|
||||
"gen6": { "name": "Machine du philosophe", "desc": "Transforme plomb, rêves et clair de lune en potions." }
|
||||
},
|
||||
"upg": {
|
||||
"click_1": "Brassage régulier",
|
||||
"click_2": "Louche enchantée",
|
||||
"click_3": "Coup de patte du familier",
|
||||
"g1_a": "Leçons d'apprentie",
|
||||
"g1_b": "Maîtrise d'apprentie",
|
||||
"g2_a": "Chaudrons de cuivre",
|
||||
"g2_b": "Flamme éternelle",
|
||||
"g3_a": "Alambics de cristal",
|
||||
"g3_b": "Tables gravées de runes",
|
||||
"g4_a": "Balais cirés",
|
||||
"g4_b": "Vol propulsé par maléfice",
|
||||
"g5_a": "Rites de pleine lune",
|
||||
"g5_b": "Pacte de la lune de sang",
|
||||
"g6_a": "Cercles de transmutation",
|
||||
"g6_b": "La cinquième essence",
|
||||
"global_1": "Index du grimoire",
|
||||
"global_2": "Grimoire de grand-mère",
|
||||
"global_3": "Prise sur ligne tellurique",
|
||||
"global_4": "Charme de dilatation du temps",
|
||||
"demand_1": "Panneau du village",
|
||||
"demand_2": "Étal au marché",
|
||||
"demand_3": "Commande royale",
|
||||
"demand_4": "Légende de la sorcière",
|
||||
"value_1": "Étiquettes scintillantes",
|
||||
"value_2": "Sceau d'apothicaire",
|
||||
"value_3": "Brevet royal",
|
||||
"mat_eff_1": "Taille soigneuse",
|
||||
"mat_eff_2": "Essence distillée",
|
||||
"mat_disc_1": "Pacte des cueilleurs",
|
||||
"mat_disc_2": "Jardin enchanté",
|
||||
"auto_buy": "Panier qui cueille tout seul"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
/* Witch potions: a moonlit cottage. */
|
||||
:root[data-theme='witch'] {
|
||||
color-scheme: dark;
|
||||
--bg: #17101f;
|
||||
--surface: #221631;
|
||||
--surface-2: #2e1f42;
|
||||
--text: #efe7f7;
|
||||
--text-muted: #b3a5c9;
|
||||
--border: #43305d;
|
||||
--accent: #9333ea;
|
||||
--accent-contrast: #ffffff;
|
||||
--danger: #e0526a;
|
||||
--radius: 14px;
|
||||
--font: Georgia, 'Times New Roman', serif;
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"order": 2,
|
||||
"assets": {}
|
||||
}
|
||||
Reference in New Issue
Block a user