mirror of
https://github.com/tobspr/shapez.io.git
synced 2025-12-13 18:21:51 +00:00
72 lines
2.3 KiB
JavaScript
72 lines
2.3 KiB
JavaScript
/**
|
|
* Shows to add new translations
|
|
*/
|
|
registerMod(() => {
|
|
return class ModImpl extends shapez.Mod {
|
|
constructor(app, modLoader) {
|
|
super(
|
|
app,
|
|
{
|
|
website: "https://tobspr.io",
|
|
author: "tobspr",
|
|
name: "Mod Example: Translations",
|
|
version: "1",
|
|
id: "translations",
|
|
description: "Shows how to add and modify translations",
|
|
},
|
|
modLoader
|
|
);
|
|
}
|
|
|
|
init() {
|
|
// Replace an existing translation in the english language
|
|
this.modInterface.registerTranslations("en", {
|
|
ingame: {
|
|
interactiveTutorial: {
|
|
title: "Hello",
|
|
hints: {
|
|
"1_1_extractor": "World!",
|
|
},
|
|
},
|
|
},
|
|
});
|
|
|
|
// Replace an existing translation in german
|
|
this.modInterface.registerTranslations("de", {
|
|
ingame: {
|
|
interactiveTutorial: {
|
|
title: "Hallo",
|
|
hints: {
|
|
"1_1_extractor": "Welt!",
|
|
},
|
|
},
|
|
},
|
|
});
|
|
|
|
// Add an entirely new translation which is localized in german and english
|
|
this.modInterface.registerTranslations("en", {
|
|
mods: {
|
|
mymod: {
|
|
test: "Test Translation",
|
|
},
|
|
},
|
|
});
|
|
this.modInterface.registerTranslations("de", {
|
|
mods: {
|
|
mymod: {
|
|
test: "Test Übersetzung",
|
|
},
|
|
},
|
|
});
|
|
|
|
// Show a dialog in the main menu
|
|
this.signals.stateEntered.add(state => {
|
|
if (state instanceof shapez.MainMenuState) {
|
|
// Will show differently based on the selected language
|
|
this.dialogs.showInfo("My translation", shapez.T.mods.mymod.test);
|
|
}
|
|
});
|
|
}
|
|
};
|
|
});
|