Merge pull request #11 from tobspr/master

Update
This commit is contained in:
Killgaru 2020-06-22 17:35:44 +03:00 committed by GitHub
commit 0a7ca996c9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 542 additions and 446 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:ebde52e75e54d2f4add0cf498c85f059082a0745212a23c4de7328a7d78b00a5 oid sha256:ae83b8805191eeba13016e40216fc4781ac3958e6886769ce8677ea28370d13e
size 238170 size 239706

View File

@ -0,0 +1,2 @@
<?xml version="1.0"?>
<svg xmlns="http://www.w3.org/2000/svg" id="Capa_1" enable-background="new 0 0 512 512" height="512px" viewBox="0 0 512 512" width="512px" class=""><g><path d="m106 512h300c24.814 0 45-20.186 45-45v-317h-105c-24.814 0-45-20.186-45-45v-105h-195c-24.814 0-45 20.186-45 45v422c0 24.814 20.186 45 45 45zm60-301h180c8.291 0 15 6.709 15 15s-6.709 15-15 15h-180c-8.291 0-15-6.709-15-15s6.709-15 15-15zm0 60h180c8.291 0 15 6.709 15 15s-6.709 15-15 15h-180c-8.291 0-15-6.709-15-15s6.709-15 15-15zm0 60h180c8.291 0 15 6.709 15 15s-6.709 15-15 15h-180c-8.291 0-15-6.709-15-15s6.709-15 15-15zm0 60h120c8.291 0 15 6.709 15 15s-6.709 15-15 15h-120c-8.291 0-15-6.709-15-15s6.709-15 15-15z" data-original="#000000" class="active-path" data-old_color="#000000" fill="#00AF80"/><path d="m346 120h96.211l-111.211-111.211v96.211c0 8.276 6.724 15 15 15z" data-original="#000000" class="active-path" data-old_color="#000000" fill="#00AF80"/></g> </svg>

After

Width:  |  Height:  |  Size: 953 B

View File

@ -0,0 +1 @@
<svg enable-background="new 0 0 24 24" height="512" viewBox="0 0 24 24" width="512" xmlns="http://www.w3.org/2000/svg"><path d="m21.325 9.308c-.758 0-1.425.319-1.916.816-1.805-1.268-4.239-2.084-6.936-2.171l1.401-6.406 4.461 1.016c0 1.108.89 2.013 1.982 2.013 1.113 0 2.008-.929 2.008-2.038s-.889-2.038-2.007-2.038c-.779 0-1.451.477-1.786 1.129l-4.927-1.108c-.248-.067-.491.113-.557.365l-1.538 7.062c-2.676.113-5.084.928-6.895 2.197-.491-.518-1.184-.837-1.942-.837-2.812 0-3.733 3.829-1.158 5.138-.091.405-.132.837-.132 1.268 0 4.301 4.775 7.786 10.638 7.786 5.888 0 10.663-3.485 10.663-7.786 0-.431-.045-.883-.156-1.289 2.523-1.314 1.594-5.115-1.203-5.117zm-15.724 5.41c0-1.129.89-2.038 2.008-2.038 1.092 0 1.983.903 1.983 2.038 0 1.109-.89 2.013-1.983 2.013-1.113.005-2.008-.904-2.008-2.013zm10.839 4.798c-1.841 1.868-7.036 1.868-8.878 0-.203-.18-.203-.498 0-.703.177-.18.491-.18.668 0 1.406 1.463 6.07 1.488 7.537 0 .177-.18.491-.18.668 0 .207.206.207.524.005.703zm-.041-2.781c-1.092 0-1.982-.903-1.982-2.011 0-1.129.89-2.038 1.982-2.038 1.113 0 2.008.903 2.008 2.038-.005 1.103-.895 2.011-2.008 2.011z" fill="#ff5722"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1,2 @@
<?xml version="1.0"?>
<svg xmlns="http://www.w3.org/2000/svg" id="Capa_1" enable-background="new 0 0 512 512" height="512px" viewBox="0 0 512 512" width="512px"><g><g><g><path d="m496 0h-210c-8.284 0-15 6.716-15 15v260c0 8.284 6.716 15 15 15h143.787l55.606 55.606c2.869 2.87 6.706 4.394 10.609 4.394 1.933 0 3.882-.374 5.737-1.142 5.605-2.322 9.26-7.792 9.26-13.858v-320c.001-8.284-6.715-15-14.999-15zm-40 130h-10.978c-3.123 23.867-13.59 45.455-29.054 62.414 10.691 4.857 22.545 7.586 35.032 7.586 8.284 0 15 6.716 15 15s-6.716 15-15 15c-21.972 0-42.521-6.198-60-16.931-17.478 10.733-38.028 16.931-60 16.931-8.284 0-15-6.716-15-15s6.716-15 15-15c12.487 0 24.342-2.729 35.032-7.586-15.464-16.959-25.932-38.547-29.054-62.414h-10.978c-8.284 0-15-6.716-15-15s6.716-15 15-15h50v-25c0-8.284 6.716-15 15-15s15 6.716 15 15v25h50c8.284 0 15 6.716 15 15s-6.716 15-15 15z" data-original="#000000" class="active-path" data-old_color="#000000" fill="#4949E7"/><path d="m391 175.148c12.068-12.039 20.523-27.681 23.648-45.148h-47.295c3.124 17.467 11.579 33.11 23.647 45.148z" data-original="#000000" class="active-path" data-old_color="#000000" fill="#4949E7"/></g><g><path d="m100.59 327.624h41.01l-20.411-54.086z" data-original="#000000" class="active-path" data-old_color="#000000" fill="#4949E7"/><path d="m226 162h-210c-8.284 0-15 6.716-15 15v320c0 6.067 3.654 11.537 9.26 13.858 1.855.769 3.805 1.142 5.737 1.142 3.903 0 7.74-1.524 10.609-4.394l55.607-55.606h143.787c8.284 0 15-6.716 15-15v-260c0-8.284-6.716-15-15-15zm-44.438 229.034c-1.743.658-3.534.97-5.293.97-6.062 0-11.77-3.701-14.037-9.708l-9.311-24.673h-63.757l-9.413 24.715c-2.948 7.741-11.61 11.628-19.356 8.679-7.741-2.948-11.627-11.615-8.679-19.356l52.569-138.028c.043-.114.088-.228.135-.34 2.803-6.852 9.397-11.284 16.8-11.292h.021c7.396 0 13.99 4.416 16.806 11.256.057.137.11.275.163.413l52.092 138.034c2.924 7.751-.989 16.405-8.74 19.33z" data-original="#000000" class="active-path" data-old_color="#000000" fill="#4949E7"/></g></g></g> </svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -343,33 +343,42 @@
} }
.footer { .footer {
display: flex; display: grid;
flex-grow: 1; flex-grow: 1;
justify-content: center; justify-content: center;
align-items: flex-end; align-items: flex-end;
width: 100%; width: 100%;
grid-template-columns: auto auto auto 1fr;
@include S(padding, 10px);
box-sizing: border-box;
@include S(grid-gap, 5px);
.author { .author {
flex-grow: 1; flex-grow: 1;
text-align: right; text-align: right;
@include S(padding-right, 10px); @include PlainText;
color: #888a8f;
a {
color: #333438;
}
} }
@include S(padding, 15px); @include S(padding, 15px);
> a {
> .boxLink {
display: grid; display: grid;
align-items: center; align-items: center;
grid-template-columns: 1fr auto; grid-template-columns: 1fr auto;
justify-content: center; justify-content: center;
background: #fafafa; background: #fdfdfd;
@include S(padding, 5px); @include S(padding, 5px);
@include S(padding-left, 10px); @include S(padding-left, 10px);
@include S(border-radius, $globalBorderRadius); @include S(border-radius, $globalBorderRadius);
@include S(margin-left, 10px);
@include SuperSmallText(); @include SuperSmallText();
font-weight: bold; font-weight: bold;
box-sizing: border-box;
text-transform: uppercase; text-transform: uppercase;
color: #616266; color: #616266;
@ -377,19 +386,11 @@
transition-property: background-color, transform; transition-property: background-color, transform;
pointer-events: all; pointer-events: all;
@include S(width, 120px); @include S(width, 120px);
@include S(height, 50px); @include S(height, 60px);
cursor: pointer; cursor: pointer;
&:hover { &:hover {
background-color: #fff; background-color: #fff;
transform: scale(1.01);
}
&:not(.boxLink) {
align-self: flex-end;
justify-self: flex-end;
height: unset;
width: unset;
@include S(padding, 3px);
} }
.thirdpartyLogo { .thirdpartyLogo {
@ -406,6 +407,49 @@
} }
} }
} }
> .sidelinks {
display: grid;
align-items: flex-start;
justify-content: flex-start;
grid-template-rows: 1fr 1fr 1fr;
@include S(grid-gap, 2px);
@include S(height, 60px);
> a {
color: #616266;
background: #fdfdfd;
height: 100%;
&:hover {
background-color: #fff;
}
@include SuperSmallText;
text-transform: uppercase;
width: 100%;
@include S(padding, 2px, 10px);
display: flex;
align-items: center;
justify-content: flex-start;
@include S(padding-left, 25px);
box-sizing: border-box;
font-weight: bold;
background-position: #{D(5px)} center;
background-size: #{D(12px)};
background-repeat: no-repeat;
&.redditLink {
background-image: uiResource("main_menu/reddit.svg");
}
&.changelog {
background-image: uiResource("main_menu/changelog.svg");
}
&.helpTranslate {
background-image: uiResource("main_menu/translate.svg");
}
}
}
} }
@include DarkThemeOverride { @include DarkThemeOverride {
@ -429,9 +473,14 @@
} }
.footer { .footer {
> a { > a,
background: darken($darkModeGameBackground, 10); .sidelinks > a {
background-color: darken($darkModeGameBackground, 10);
color: #eee; color: #eee;
&:hover {
background-color: darken($darkModeGameBackground, 8);
}
} }
.author { .author {

View File

@ -1,7 +1,7 @@
export const CHANGELOG = [ export const CHANGELOG = [
{ {
version: "1.1.17", version: "1.1.17",
date: "unreleased", date: "22.06.2020",
entries: [ entries: [
"Color blind mode! You can now activate it in the settings and it will show you which color is below your cursor (Either resource or on the belt)", "Color blind mode! You can now activate it in the settings and it will show you which color is below your cursor (Either resource or on the belt)",
"Add info buttons to all shapes so you can figure out how they are built! (And also, which colors they have)", "Add info buttons to all shapes so you can figure out how they are built! (And also, which colors they have)",
@ -14,6 +14,7 @@ export const CHANGELOG = [
"Fix keybinding for pipette showing while pasting blueprints", "Fix keybinding for pipette showing while pasting blueprints",
"Improve visibility of shape background in dark mode", "Improve visibility of shape background in dark mode",
"Added sound when destroying a building", "Added sound when destroying a building",
"Added swedish translation",
"Update tutorial image for tier 2 tunnels to explain mix/match (by jimmyshadow1)", "Update tutorial image for tier 2 tunnels to explain mix/match (by jimmyshadow1)",
], ],
}, },

View File

@ -19,6 +19,7 @@ const smoothCanvas = true;
export const THIRDPARTY_URLS = { export const THIRDPARTY_URLS = {
discord: "https://discord.gg/HN7EVzV", discord: "https://discord.gg/HN7EVzV",
github: "https://github.com/tobspr/shapez.io", github: "https://github.com/tobspr/shapez.io",
reddit: "https://www.reddit.com/r/shapezio",
standaloneStorePage: "https://store.steampowered.com/app/1318690/shapezio/", standaloneStorePage: "https://store.steampowered.com/app/1318690/shapezio/",
}; };

View File

@ -184,6 +184,13 @@ export class HUDBuildingPlacerLogic extends BaseHUDPart {
if (mousePos) { if (mousePos) {
this.onMouseMove(mousePos); this.onMouseMove(mousePos);
} }
// Make sure we have nothing selected while in overview mode
if (this.root.camera.getIsMapOverlayActive()) {
if (this.currentMetaBuilding.get()) {
this.currentMetaBuilding.set(null);
}
}
} }
/** /**

View File

@ -246,6 +246,6 @@ export class HUDShop extends BaseHUDPart {
tryUnlockNextTier(upgradeId) { tryUnlockNextTier(upgradeId) {
// Nothing // Nothing
this.root.hubGoals.tryUnlockUgprade(upgradeId); this.root.hubGoals.tryUnlockUpgrade(upgradeId);
} }
} }

View File

@ -86,4 +86,10 @@ export const LANGUAGES = {
code: "zh", code: "zh",
region: "CN", region: "CN",
}, },
"sv": {
name: "Svenska",
data: require("./built-temp/base-sv.json"),
code: "sv",
region: "",
},
}; };

View File

@ -91,10 +91,14 @@ export class MainMenuState extends GameState {
<span class="thirdpartyLogo discordLogo"></span> <span class="thirdpartyLogo discordLogo"></span>
</a> </a>
<a class="changelog">${T.changelog.title}</a> <div class="sidelinks">
<a class="redditLink">${T.mainMenu.subreddit}</a>
<a class="helpTranslate">${T.mainMenu.helpTranslate}</a>
<a class="changelog">${T.changelog.title}</a>
<a class="helpTranslate">${T.mainMenu.helpTranslate}</a>
</div>
<div class="author">${T.mainMenu.madeBy.replace( <div class="author">${T.mainMenu.madeBy.replace(
"<author-link>", "<author-link>",
'<a class="producerLink" target="_blank">Tobias Springer</a>' '<a class="producerLink" target="_blank">Tobias Springer</a>'
@ -215,6 +219,7 @@ export class MainMenuState extends GameState {
this.trackClicks(qs(".settingsButton"), this.onSettingsButtonClicked); this.trackClicks(qs(".settingsButton"), this.onSettingsButtonClicked);
this.trackClicks(qs(".changelog"), this.onChangelogClicked); this.trackClicks(qs(".changelog"), this.onChangelogClicked);
this.trackClicks(qs(".redditLink"), this.onRedditClicked);
this.trackClicks(qs(".languageChoose"), this.onLanguageChooseClicked); this.trackClicks(qs(".languageChoose"), this.onLanguageChooseClicked);
this.trackClicks(qs(".helpTranslate"), this.onTranslationHelpLinkClicked); this.trackClicks(qs(".helpTranslate"), this.onTranslationHelpLinkClicked);
@ -307,6 +312,11 @@ export class MainMenuState extends GameState {
this.moveToState("ChangelogState"); this.moveToState("ChangelogState");
} }
onRedditClicked() {
this.app.analytics.trackUiClick("main_menu_reddit_link");
this.app.platformWrapper.openExternalLink(THIRDPARTY_URLS.reddit);
}
onContestClicked() { onContestClicked() {
this.app.analytics.trackUiClick("contest_click"); this.app.analytics.trackUiClick("contest_click");

View File

@ -121,6 +121,7 @@ mainMenu:
continue: Continue continue: Continue
newGame: New Game newGame: New Game
changelog: Changelog changelog: Changelog
subreddit: Reddit
importSavegame: Import importSavegame: Import
openSourceHint: This game is open source! openSourceHint: This game is open source!
discordLink: Official Discord Server discordLink: Official Discord Server

View File

@ -212,7 +212,7 @@ dialogs:
keybindingsResetOk: keybindingsResetOk:
title: Réinitialisation des contrôles title: Réinitialisation des contrôles
desc: Les contrôles ont été réinitialisés par leur état par défaut respectifs ! desc: Les contrôles ont été réinitialisés dans leur état par défaut respectifs !
featureRestriction: featureRestriction:
title: Version démo title: Version démo
@ -236,7 +236,7 @@ dialogs:
massDeleteConfirm: massDeleteConfirm:
title: Confirmation de suppression title: Confirmation de suppression
desc: >- desc: >-
Vous allez supprimer pas mal de bâtiments (<count> pour être exact) ! Etes vous certains de vouloir faire cela ? Vous allez supprimer pas mal de bâtiments (<count> pour être exact) ! Êtes vous certains de vouloir faire cela ?
massCutConfirm: massCutConfirm:
title: Confirmer la coupure title: Confirmer la coupure
@ -247,7 +247,7 @@ dialogs:
blueprintsNotUnlocked: blueprintsNotUnlocked:
title: Pas encore débloqué title: Pas encore débloqué
desc: >- desc: >-
Les patrons n'ont pas encore étés débloqués ! Terminez encore quelques niveaux pour les débloquer. Les patrons n'ont pas encore étés débloqués ! Terminez encore quelques niveaux pour y avoir accès.
keybindingsIntroduction: keybindingsIntroduction:
title: Raccourcis utiles title: Raccourcis utiles
@ -288,9 +288,9 @@ ingame:
pasteLastBlueprint: Copier le dernier patron pasteLastBlueprint: Copier le dernier patron
lockBeltDirection: Utiliser le plannificateur de convoyeurs lockBeltDirection: Utiliser le plannificateur de convoyeurs
plannerSwitchSide: Échanger la direction du plannificateur plannerSwitchSide: Échanger la direction du plannificateur
cutSelection: Cut cutSelection: Couper
copySelection: Copy copySelection: Copier
clearSelection: Clear Selection clearSelection: Effacer la sélection
pipette: Pipette pipette: Pipette
# Everything related to placing buildings (I.e. as soon as you selected a building # Everything related to placing buildings (I.e. as soon as you selected a building
@ -691,27 +691,24 @@ settings:
Permet l'affichage de l'effet de vignette qui assombrit les coins de l'écran afin de rendre le texte plus facile à lire. Permet l'affichage de l'effet de vignette qui assombrit les coins de l'écran afin de rendre le texte plus facile à lire.
autosaveInterval: autosaveInterval:
title: Autosave Interval title: Fréquence des sauvegardes automatiques
description: >- description: >-
Controls how often the game saves automatically. You can also disable it Contrôle avec quelle fréquence le jeu sera sauvegardé automatiquement. Vous pouvez aussi entièrement désactiver cette fonctionnalité ici.
entirely here.
intervals: intervals:
one_minute: 1 Minute one_minute: 1 Minute
two_minutes: 2 Minutes two_minutes: 2 Minutes
five_minutes: 5 Minutes five_minutes: 5 Minutes
ten_minutes: 10 Minutes ten_minutes: 10 Minutes
twenty_minutes: 20 Minutes twenty_minutes: 20 Minutes
disabled: Disabled disabled: Désactivé
compactBuildingInfo: compactBuildingInfo:
title: Compact Building Infos title: Informations réduites sur les bâtiments
description: >- description: >-
Shortens info boxes for buildings by only showing their ratios. Otherwise a Raccourcit les panneaux d'information sur les bâtiments en n'affichant que les ratios. Dans le cas contraire, une description et une imagine sont présentés.
description and image is shown.
disableCutDeleteWarnings: disableCutDeleteWarnings:
title: Disable Cut/Delete Warnings title: Désactive les avertissement pour Couper/Effacer
description: >- description: >-
Disable the warning dialogs brought up when cutting/deleting more than 100 Désactive la boîte de dialogue qui s'affiche lorsque vous vous apprêtez à couper/effacer plus de 100 entités.
entities.
keybindings: keybindings:
title: Contrôles title: Contrôles

View File

@ -159,7 +159,7 @@ mainMenu:
showInfo: Wyświetl showInfo: Wyświetl
contestOver: Ten konkurs już się skończył - Dołącz do serwera Discord by nie przegapić kolejnych! contestOver: Ten konkurs już się skończył - Dołącz do serwera Discord by nie przegapić kolejnych!
madeBy: Made by <author-link> madeBy: Gra wykonana przez <author-link>
dialogs: dialogs:
buttons: buttons:
@ -292,10 +292,21 @@ ingame:
pasteLastBlueprint: Wklej ostatnio skopiowany obszar pasteLastBlueprint: Wklej ostatnio skopiowany obszar
lockBeltDirection: Tryb planowania taśmociągu lockBeltDirection: Tryb planowania taśmociągu
plannerSwitchSide: Obróć planowany taśmociąg plannerSwitchSide: Obróć planowany taśmociąg
cutSelection: Cut cutSelection: Wytnij
copySelection: Copy copySelection: Skopiuj
clearSelection: Clear Selection clearSelection: Wyczyść zaznaczenie
pipette: Pipette pipette: Wybierz obiekt z mapy
# Names of the colors, used for the color blind mode
colors:
red: Czerwony
green: Zielony
blue: Niebieski
yellow: Żółty
purple: Fioletowy
cyan: Cyjanowy
white: Biały
uncolored: Brak koloru
# Everything related to placing buildings (I.e. as soon as you selected a building # Everything related to placing buildings (I.e. as soon as you selected a building
# from the toolbar) # from the toolbar)
@ -394,6 +405,11 @@ ingame:
description: Kliknij znacznik lewym przyciskiem myszy, by się do niego przenieść lub prawym, by go usunąć.<br><br>Naciśnij <keybinding>, by stworzyć marker na środku widoku lub <strong>prawy przycisk myszy</strong>, by stworzyć na wskazanej lokacji. description: Kliknij znacznik lewym przyciskiem myszy, by się do niego przenieść lub prawym, by go usunąć.<br><br>Naciśnij <keybinding>, by stworzyć marker na środku widoku lub <strong>prawy przycisk myszy</strong>, by stworzyć na wskazanej lokacji.
creationSuccessNotification: Utworzono znacznik. creationSuccessNotification: Utworzono znacznik.
# Shape viewer
shapeViewer:
title: Poziomy
empty: Puste
# Interactive tutorial # Interactive tutorial
interactiveTutorial: interactiveTutorial:
title: Tutorial title: Tutorial
@ -698,37 +714,39 @@ settings:
Oferuje porady i tutoriale podczas gry. Dodatkowo chowa pewne elementy interfejsu, by ułatwić poznanie gry. Oferuje porady i tutoriale podczas gry. Dodatkowo chowa pewne elementy interfejsu, by ułatwić poznanie gry.
enableTunnelSmartplace: enableTunnelSmartplace:
title: Smart Tunnels title: Inteligentne taśmociągi i tunele
description: >- description: >-
Gdy włączone, umieszczenie tunelu automatycznie usuwa zbędny taśmociąg. Gdy włączone, umieszczenie tunelu automatycznie usuwa zbędny taśmociąg.
Pozwala również budować tunele przez przeciąganie i nadmiarowe tunele zostają usunięte. Pozwala również budować tunele przez przeciąganie, gdyż niepotrzebne tunele zostają usunięte.
vignette: vignette:
title: Vignette title: Winieta
description: >- description: >-
Włącza winietowanie, które przyciemnia rogi ekranu i poprawia czytelność tekstu. Włącza winietę - przyciemnia rogi ekranu, poprawiając czytelność tekstu.
autosaveInterval: autosaveInterval:
title: Autosave Interval title: Częstość auto-zapisu
description: >- description: >-
Controls how often the game saves automatically. You can also disable it Zmienia, jak często gra automatycznie zapisuje fabrykę.
entirely here. Można tą funkcję również całkowicie wyłączyć.
intervals: intervals:
one_minute: 1 Minute one_minute: Co minutę
two_minutes: 2 Minutes two_minutes: Co 2 minuty
five_minutes: 5 Minutes five_minutes: Co 5 minut
ten_minutes: 10 Minutes ten_minutes: Co 10 minut
twenty_minutes: 20 Minutes twenty_minutes: Co 20 minut
disabled: Disabled disabled: Wyłączone
compactBuildingInfo: compactBuildingInfo:
title: Compact Building Infos title: Wyłącz opis budynków
description: >- description: >-
Shortens info boxes for buildings by only showing their ratios. Otherwise a Ukrywa opis i zdjęcie budynków w obszarze informacyjnym, pokazując jedynie
description and image is shown. ich tytuł i specyfikacje techniczne.
disableCutDeleteWarnings: disableCutDeleteWarnings:
title: Disable Cut/Delete Warnings title: Wyłącz ostrzeżenia usuwania/wycinania
description: >- description: >-
Disable the warning dialogs brought up when cutting/deleting more than 100 Wyłącza ostrzeżenia wyświetlające się przy usuwaniu lub wycinaniu więcej niż
entities. 100 budynków.
keybindings: keybindings:
title: Klawiszologia title: Klawiszologia
@ -793,8 +811,9 @@ keybindings:
massSelectCut: Wytnij obszar massSelectCut: Wytnij obszar
exportScreenshot: Wyeksportuj całą fabrykę jako zrzut ekranu exportScreenshot: Wyeksportuj całą fabrykę jako zrzut ekranu
lockBeltDirection: Tryb planowania taśmociągu lockBeltDirection: Tryb planowania taśmociągu
switchDirectionLockSide: "Planowanie taśmociągu: Zmień stronę" switchDirectionLockSide: >-
pipette: Pipette Planowanie taśmociągu: Zmień stronę
pipette: Wybieranie obiektów z mapy
about: about:
title: O Grze title: O Grze

File diff suppressed because it is too large Load Diff