mirror of
https://github.com/tobspr/shapez.io.git
synced 2026-03-02 03:39:21 +00:00
Add finish, italian, romania, ukrainian, minor adjustments
This commit is contained in:
@@ -67,7 +67,7 @@ $icons: notification_saved, notification_success, notification_upgrade;
|
||||
}
|
||||
|
||||
$languages: en, de, cs, da, et, es-419, fr, it, pt-BR, sv, tr, el, ru, uk, zh-TW, zh-CN, nb, mt-MT, ar, nl, vi,
|
||||
th, hu, pl, ja, kor, no, pt-PT;
|
||||
th, hu, pl, ja, kor, no, pt-PT, fi, ro;
|
||||
|
||||
@each $language in $languages {
|
||||
[data-languageicon="#{$language}"] {
|
||||
|
||||
@@ -43,9 +43,10 @@
|
||||
.languageChoose {
|
||||
@include S(border-radius, 8px);
|
||||
border: solid #222428;
|
||||
background-color: #fff;
|
||||
@include S(border-width, 2px);
|
||||
background-size: cover;
|
||||
background-color: #222428 !important;
|
||||
background-size: contain !important;
|
||||
background-position: center center !important;
|
||||
opacity: 0.8;
|
||||
}
|
||||
}
|
||||
@@ -182,7 +183,7 @@
|
||||
.updateLabel {
|
||||
position: absolute;
|
||||
transform: translateX(50%) rotate(-5deg);
|
||||
color: rgb(133, 58, 231);
|
||||
color: #3291e9;
|
||||
@include Heading;
|
||||
font-weight: bold;
|
||||
@include S(right, 40px);
|
||||
@@ -444,7 +445,7 @@
|
||||
justify-content: center;
|
||||
align-items: flex-end;
|
||||
width: 100%;
|
||||
grid-template-columns: auto auto auto 1fr;
|
||||
grid-template-columns: auto auto auto auto 1fr;
|
||||
@include S(padding, 10px);
|
||||
box-sizing: border-box;
|
||||
@include S(grid-gap, 4px);
|
||||
@@ -500,6 +501,15 @@
|
||||
background-color: $linkBgHover;
|
||||
}
|
||||
|
||||
&.nftLink {
|
||||
background-color: #3291e9;
|
||||
color: #fff;
|
||||
|
||||
&:hover {
|
||||
background-color: darken(#3291e9, 5);
|
||||
}
|
||||
}
|
||||
|
||||
.thirdpartyLogo {
|
||||
display: inline-block;
|
||||
@include S(width, 50px);
|
||||
@@ -514,6 +524,12 @@
|
||||
background-image: uiResource("main_menu/discord.png");
|
||||
background-size: 95%;
|
||||
}
|
||||
|
||||
&.nftLogo {
|
||||
/* @load-async */
|
||||
background-image: uiResource("main_menu/opensea.png");
|
||||
background-size: 80%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ export const CHANGELOG = [
|
||||
"There are now <strong>45 Steam Achievements!</strong>",
|
||||
"Fixed constant signals being editable from the regular layer",
|
||||
"Fixed items still overlapping sometimes between buildings and belts",
|
||||
"The game is now available in finish, italian, romanian and ukrainian! (Thanks to all contributors!)",
|
||||
"Updated translations (Thanks to all contributors!)",
|
||||
],
|
||||
},
|
||||
|
||||
@@ -16,6 +16,7 @@ export const THIRDPARTY_URLS = {
|
||||
github: "https://github.com/tobspr/shapez.io",
|
||||
reddit: "https://www.reddit.com/r/shapezio",
|
||||
shapeViewer: "https://viewer.shapez.io",
|
||||
nftTokens: "https://opensea.io/collection/shapez",
|
||||
|
||||
standaloneStorePage: "https://store.steampowered.com/app/1318690/shapezio/",
|
||||
|
||||
|
||||
@@ -8,120 +8,180 @@ export const LANGUAGES = {
|
||||
code: "en",
|
||||
region: "",
|
||||
},
|
||||
"de": {
|
||||
name: "Deutsch",
|
||||
data: require("./built-temp/base-de.json"),
|
||||
code: "de",
|
||||
region: "",
|
||||
},
|
||||
"fr": {
|
||||
name: "Français",
|
||||
data: require("./built-temp/base-fr.json"),
|
||||
code: "fr",
|
||||
region: "",
|
||||
},
|
||||
"ja": {
|
||||
name: "日本語",
|
||||
data: require("./built-temp/base-ja.json"),
|
||||
code: "ja",
|
||||
region: "",
|
||||
},
|
||||
"pt-PT": {
|
||||
name: "Português (Portugal)",
|
||||
data: require("./built-temp/base-pt-PT.json"),
|
||||
code: "pt",
|
||||
region: "PT",
|
||||
},
|
||||
"pt-BR": {
|
||||
name: "Português (Brasil)",
|
||||
data: require("./built-temp/base-pt-BR.json"),
|
||||
code: "pt",
|
||||
region: "BR",
|
||||
},
|
||||
"ru": {
|
||||
name: "Русский",
|
||||
data: require("./built-temp/base-ru.json"),
|
||||
code: "ru",
|
||||
region: "",
|
||||
},
|
||||
"cs": {
|
||||
name: "Čeština",
|
||||
data: require("./built-temp/base-cz.json"),
|
||||
code: "cs",
|
||||
region: "",
|
||||
},
|
||||
"es-419": {
|
||||
name: "Español",
|
||||
data: require("./built-temp/base-es.json"),
|
||||
code: "es",
|
||||
region: "",
|
||||
},
|
||||
"pl": {
|
||||
name: "Polski",
|
||||
data: require("./built-temp/base-pl.json"),
|
||||
code: "pl",
|
||||
region: "",
|
||||
},
|
||||
"kor": {
|
||||
name: "한국어",
|
||||
data: require("./built-temp/base-kor.json"),
|
||||
code: "kor",
|
||||
region: "",
|
||||
},
|
||||
"nl": {
|
||||
name: "Nederlands",
|
||||
data: require("./built-temp/base-nl.json"),
|
||||
code: "nl",
|
||||
region: "",
|
||||
},
|
||||
"no": {
|
||||
name: "Norsk",
|
||||
data: require("./built-temp/base-no.json"),
|
||||
code: "no",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"tr": {
|
||||
name: "Türkçe",
|
||||
data: require("./built-temp/base-tr.json"),
|
||||
code: "tr",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"zh-CN": {
|
||||
// simplified
|
||||
name: "中文简体",
|
||||
// simplified chinese
|
||||
name: "简体中文",
|
||||
data: require("./built-temp/base-zh-CN.json"),
|
||||
code: "zh",
|
||||
region: "CN",
|
||||
},
|
||||
|
||||
"zh-TW": {
|
||||
// traditional
|
||||
name: "中文繁體",
|
||||
// traditional chinese
|
||||
name: "繁體中文",
|
||||
data: require("./built-temp/base-zh-TW.json"),
|
||||
code: "zh",
|
||||
region: "TW",
|
||||
},
|
||||
|
||||
"sv": {
|
||||
name: "Svenska",
|
||||
data: require("./built-temp/base-sv.json"),
|
||||
code: "sv",
|
||||
"ja": {
|
||||
// japanese
|
||||
name: "日本語",
|
||||
data: require("./built-temp/base-ja.json"),
|
||||
code: "ja",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"kor": {
|
||||
// korean
|
||||
name: "한국어",
|
||||
data: require("./built-temp/base-kor.json"),
|
||||
code: "kor",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"cs": {
|
||||
// czech
|
||||
name: "Čeština",
|
||||
data: require("./built-temp/base-cz.json"),
|
||||
code: "cs",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"da": {
|
||||
// danish
|
||||
name: "Dansk",
|
||||
data: require("./built-temp/base-da.json"),
|
||||
code: "da",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"de": {
|
||||
// german
|
||||
name: "Deutsch",
|
||||
data: require("./built-temp/base-de.json"),
|
||||
code: "de",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"es-419": {
|
||||
// spanish
|
||||
name: "Español",
|
||||
data: require("./built-temp/base-es.json"),
|
||||
code: "es",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"fr": {
|
||||
// french
|
||||
name: "Français",
|
||||
data: require("./built-temp/base-fr.json"),
|
||||
code: "fr",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"it": {
|
||||
// italian
|
||||
name: "Italiano",
|
||||
data: require("./built-temp/base-it.json"),
|
||||
code: "it",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"hu": {
|
||||
// hungarian
|
||||
name: "Magyar",
|
||||
data: require("./built-temp/base-hu.json"),
|
||||
code: "hu",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"nl": {
|
||||
// dutch
|
||||
name: "Nederlands",
|
||||
data: require("./built-temp/base-nl.json"),
|
||||
code: "nl",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"no": {
|
||||
// norwegian
|
||||
name: "Norsk",
|
||||
data: require("./built-temp/base-no.json"),
|
||||
code: "no",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"pl": {
|
||||
// polish
|
||||
name: "Polski",
|
||||
data: require("./built-temp/base-pl.json"),
|
||||
code: "pl",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"pt-PT": {
|
||||
// portuguese
|
||||
name: "Português",
|
||||
data: require("./built-temp/base-pt-PT.json"),
|
||||
code: "pt",
|
||||
region: "PT",
|
||||
},
|
||||
|
||||
"pt-BR": {
|
||||
// portuguese - brazil
|
||||
name: "Português - Brasil",
|
||||
data: require("./built-temp/base-pt-BR.json"),
|
||||
code: "pt",
|
||||
region: "BR",
|
||||
},
|
||||
|
||||
"ro": {
|
||||
// romanian
|
||||
name: "Română",
|
||||
data: require("./built-temp/base-ro.json"),
|
||||
code: "pt",
|
||||
region: "BR",
|
||||
},
|
||||
|
||||
"ru": {
|
||||
// russian
|
||||
name: "Русский",
|
||||
data: require("./built-temp/base-ru.json"),
|
||||
code: "ru",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"fi": {
|
||||
// finish
|
||||
name: "Suomi",
|
||||
data: require("./built-temp/base-fi.json"),
|
||||
code: "fi",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"sv": {
|
||||
// swedish
|
||||
name: "Svenska",
|
||||
data: require("./built-temp/base-sv.json"),
|
||||
code: "sv",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"tr": {
|
||||
// turkish
|
||||
name: "Türkçe",
|
||||
data: require("./built-temp/base-tr.json"),
|
||||
code: "tr",
|
||||
region: "",
|
||||
},
|
||||
|
||||
"uk": {
|
||||
// ukrainian
|
||||
name: "Українська",
|
||||
data: require("./built-temp/base-uk.json"),
|
||||
code: "uk",
|
||||
region: "",
|
||||
},
|
||||
};
|
||||
|
||||
@@ -109,6 +109,17 @@ export class MainMenuState extends GameState {
|
||||
${G_CHINA_VERSION ? "" : `<a class="helpTranslate">${T.mainMenu.helpTranslate}</a>`}
|
||||
</div>
|
||||
|
||||
${
|
||||
G_CHINA_VERSION
|
||||
? ""
|
||||
: `
|
||||
<a class="nftLink boxLink" target="_blank">
|
||||
shapez.io NFT Tokens
|
||||
<span class="thirdpartyLogo nftLogo"></span>
|
||||
</a>`
|
||||
}
|
||||
|
||||
|
||||
<div class="author">${T.mainMenu.madeBy.replace(
|
||||
"<author-link>",
|
||||
'<a class="producerLink" target="_blank">Tobias Springer</a>'
|
||||
@@ -244,25 +255,41 @@ export class MainMenuState extends GameState {
|
||||
const discordLink = this.htmlElement.querySelector(".discordLink");
|
||||
this.trackClicks(
|
||||
discordLink,
|
||||
() => this.app.platformWrapper.openExternalLink(THIRDPARTY_URLS.discord),
|
||||
() => {
|
||||
this.app.analytics.trackUiClick("main_menu_link_discord");
|
||||
this.app.platformWrapper.openExternalLink(THIRDPARTY_URLS.discord);
|
||||
},
|
||||
{ preventClick: true }
|
||||
);
|
||||
|
||||
const nftLink = this.htmlElement.querySelector(".nftLink");
|
||||
if (nftLink) {
|
||||
this.trackClicks(
|
||||
nftLink,
|
||||
() => {
|
||||
this.app.analytics.trackUiClick("main_menu_link_nft");
|
||||
this.app.platformWrapper.openExternalLink(THIRDPARTY_URLS.nftTokens);
|
||||
},
|
||||
{ preventClick: true }
|
||||
);
|
||||
}
|
||||
|
||||
const githubLink = this.htmlElement.querySelector(".githubLink");
|
||||
if (githubLink) {
|
||||
this.trackClicks(
|
||||
githubLink,
|
||||
() => this.app.platformWrapper.openExternalLink(THIRDPARTY_URLS.github),
|
||||
() => {
|
||||
this.app.analytics.trackUiClick("main_menu_link_github");
|
||||
this.app.platformWrapper.openExternalLink(THIRDPARTY_URLS.github);
|
||||
},
|
||||
{ preventClick: true }
|
||||
);
|
||||
}
|
||||
|
||||
const producerLink = this.htmlElement.querySelector(".producerLink");
|
||||
this.trackClicks(
|
||||
producerLink,
|
||||
() => this.app.platformWrapper.openExternalLink("https://tobspr.com"),
|
||||
{ preventClick: true }
|
||||
);
|
||||
this.trackClicks(producerLink, () => this.app.platformWrapper.openExternalLink("https://tobspr.io"), {
|
||||
preventClick: true,
|
||||
});
|
||||
}
|
||||
|
||||
renderMainMenu() {
|
||||
|
||||
Reference in New Issue
Block a user