Compare commits
4 Commits
Author | SHA1 | Date |
---|---|---|
tobspr | 756015e7d5 | |
tobspr | a4e3766495 | |
tobspr | 731efe151b | |
tobspr | e96610c346 |
|
@ -18,7 +18,7 @@ const roamingFolder =
|
||||||
(process.platform == "darwin"
|
(process.platform == "darwin"
|
||||||
? process.env.HOME + "/Library/Preferences"
|
? process.env.HOME + "/Library/Preferences"
|
||||||
: process.env.HOME + "/.local/share");
|
: process.env.HOME + "/.local/share");
|
||||||
let storePath = path.join(roamingFolder, "shapez.io", "saves");
|
let storePath = path.join(roamingFolder, "shapez-wegame", "saves");
|
||||||
|
|
||||||
if (!fs.existsSync(storePath)) {
|
if (!fs.existsSync(storePath)) {
|
||||||
// No try-catch by design
|
// No try-catch by design
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>shapez.io - Build automated factories to build, combine and color shapes!</title>
|
<title>图形工厂</title>
|
||||||
|
|
||||||
<!-- mobile stuff -->
|
<!-- mobile stuff -->
|
||||||
<meta name="format-detection" content="telephone=no" />
|
<meta name="format-detection" content="telephone=no" />
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>shapez.io Standalone</title>
|
<title>图形工厂</title>
|
||||||
|
|
||||||
<!-- mobile stuff -->
|
<!-- mobile stuff -->
|
||||||
<meta name="format-detection" content="telephone=no" />
|
<meta name="format-detection" content="telephone=no" />
|
||||||
|
|
|
@ -287,6 +287,16 @@ export function formatBigNumber(num, separator = T.global.decimalSeparator) {
|
||||||
if (num < 1000) {
|
if (num < 1000) {
|
||||||
return sign + "" + num;
|
return sign + "" + num;
|
||||||
} else {
|
} else {
|
||||||
|
if (G_WEGAME_VERSION) {
|
||||||
|
if (num < 1000000) {
|
||||||
|
if (num < 10000) {
|
||||||
|
return sign + String(num).replace(".0", "").replace(".", separator);
|
||||||
|
} else {
|
||||||
|
return sign + round2Digits(num / 10000.0) + T.global.suffix.thousands;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
let leadingDigits = num;
|
let leadingDigits = num;
|
||||||
let suffix = "";
|
let suffix = "";
|
||||||
for (let suffixIndex = 0; suffixIndex < bigNumberSuffixTranslationKeys.length; ++suffixIndex) {
|
for (let suffixIndex = 0; suffixIndex < bigNumberSuffixTranslationKeys.length; ++suffixIndex) {
|
||||||
|
|
|
@ -33,9 +33,9 @@ export class StorageImplBrowser extends StorageInterface {
|
||||||
window.localStorage.setItem("storage_availability_test", "1");
|
window.localStorage.setItem("storage_availability_test", "1");
|
||||||
window.localStorage.removeItem("storage_availability_test");
|
window.localStorage.removeItem("storage_availability_test");
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
alert(
|
// alert(
|
||||||
"It seems we don't have permission to write to local storage! Please update your browsers settings or use a different browser!"
|
// "It seems we don't have permission to write to local storage! Please update your browsers settings or use a different browser!"
|
||||||
);
|
// );
|
||||||
reject(LOCAL_STORAGE_NO_WRITE_PERMISSION);
|
reject(LOCAL_STORAGE_NO_WRITE_PERMISSION);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -160,7 +160,6 @@ export class MainMenuState extends GameState {
|
||||||
适度游戏益脑,沉迷游戏伤身。合理安排时间,享受健康生活。
|
适度游戏益脑,沉迷游戏伤身。合理安排时间,享受健康生活。
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="rating"></div>
|
|
||||||
</div>
|
</div>
|
||||||
`
|
`
|
||||||
: `
|
: `
|
||||||
|
@ -239,7 +238,7 @@ export class MainMenuState extends GameState {
|
||||||
closeLoader();
|
closeLoader();
|
||||||
this.dialogs.showWarning(
|
this.dialogs.showWarning(
|
||||||
T.dialogs.importSavegameError.title,
|
T.dialogs.importSavegameError.title,
|
||||||
T.dialogs.importSavegameError.text + "<br><br>" + err
|
T.dialogs.importSavegameError.text
|
||||||
);
|
);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -259,7 +258,7 @@ export class MainMenuState extends GameState {
|
||||||
closeLoader();
|
closeLoader();
|
||||||
this.dialogs.showWarning(
|
this.dialogs.showWarning(
|
||||||
T.dialogs.importSavegameError.title,
|
T.dialogs.importSavegameError.title,
|
||||||
T.dialogs.importSavegameError.text + ":<br><br>" + err
|
T.dialogs.importSavegameError.text
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
@ -267,7 +266,7 @@ export class MainMenuState extends GameState {
|
||||||
reader.addEventListener("error", error => {
|
reader.addEventListener("error", error => {
|
||||||
this.dialogs.showWarning(
|
this.dialogs.showWarning(
|
||||||
T.dialogs.importSavegameError.title,
|
T.dialogs.importSavegameError.title,
|
||||||
T.dialogs.importSavegameError.text + ":<br><br>" + error
|
T.dialogs.importSavegameError.text
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
reader.readAsText(file, "utf-8");
|
reader.readAsText(file, "utf-8");
|
||||||
|
@ -286,10 +285,7 @@ export class MainMenuState extends GameState {
|
||||||
this.dialogs.initializeToElement(dialogsElement);
|
this.dialogs.initializeToElement(dialogsElement);
|
||||||
|
|
||||||
if (payload.loadError) {
|
if (payload.loadError) {
|
||||||
this.dialogs.showWarning(
|
this.dialogs.showWarning(T.dialogs.gameLoadFailure.title, T.dialogs.gameLoadFailure.text);
|
||||||
T.dialogs.gameLoadFailure.title,
|
|
||||||
T.dialogs.gameLoadFailure.text + "<br><br>" + payload.loadError
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (G_IS_DEV && globalConfig.debug.testPuzzleMode) {
|
if (G_IS_DEV && globalConfig.debug.testPuzzleMode) {
|
||||||
|
@ -334,7 +330,6 @@ export class MainMenuState extends GameState {
|
||||||
".producerLink": () => this.app.platformWrapper.openExternalLink("https://tobspr.io"),
|
".producerLink": () => this.app.platformWrapper.openExternalLink("https://tobspr.io"),
|
||||||
".puzzleDlcPlayButton": this.onPuzzleModeButtonClicked,
|
".puzzleDlcPlayButton": this.onPuzzleModeButtonClicked,
|
||||||
".puzzleDlcGetButton": this.onPuzzleWishlistButtonClicked,
|
".puzzleDlcGetButton": this.onPuzzleWishlistButtonClicked,
|
||||||
".wegameDisclaimer > .rating": this.onWegameRatingClicked,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
for (const key in clickHandling) {
|
for (const key in clickHandling) {
|
||||||
|
@ -582,10 +577,7 @@ export class MainMenuState extends GameState {
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
.catch(err => {
|
.catch(err => {
|
||||||
this.dialogs.showWarning(
|
this.dialogs.showWarning(T.dialogs.gameLoadFailure.title, T.dialogs.gameLoadFailure.text);
|
||||||
T.dialogs.gameLoadFailure.title,
|
|
||||||
T.dialogs.gameLoadFailure.text + "<br><br>" + err
|
|
||||||
);
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -613,7 +605,7 @@ export class MainMenuState extends GameState {
|
||||||
err => {
|
err => {
|
||||||
this.dialogs.showWarning(
|
this.dialogs.showWarning(
|
||||||
T.dialogs.savegameDeletionError.title,
|
T.dialogs.savegameDeletionError.title,
|
||||||
T.dialogs.savegameDeletionError.text + "<br><br>" + err
|
T.dialogs.savegameDeletionError.text
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
|
@ -285,21 +285,11 @@ export class PreloadState extends GameState {
|
||||||
</div>
|
</div>
|
||||||
<div class="failureInner">
|
<div class="failureInner">
|
||||||
<div class="errorHeader">
|
<div class="errorHeader">
|
||||||
Failed to initialize application!
|
应用初始化失败!
|
||||||
</div>
|
|
||||||
<div class="errorMessage">
|
|
||||||
${this.currentStatus} failed:<br/>
|
|
||||||
${text}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="supportHelp">
|
|
||||||
Please send me an email with steps to reproduce and what you did before this happened:
|
|
||||||
<br /><a class="email" href="mailto:${email}?subject=App%20does%20not%20launch">${email}</a>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="lower">
|
<div class="lower">
|
||||||
<button class="resetApp styledButton">Reset App</button>
|
<i>建造。${G_BUILD_VERSION} @ ${G_BUILD_COMMIT_HASH}</i>
|
||||||
<i>Build ${G_BUILD_VERSION} @ ${G_BUILD_COMMIT_HASH}</i>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
`;
|
`;
|
||||||
|
@ -307,9 +297,6 @@ export class PreloadState extends GameState {
|
||||||
this.htmlElement.classList.add("failure");
|
this.htmlElement.classList.add("failure");
|
||||||
this.htmlElement.appendChild(subElement);
|
this.htmlElement.appendChild(subElement);
|
||||||
|
|
||||||
const resetBtn = subElement.querySelector("button.resetApp");
|
|
||||||
this.trackClicks(resetBtn, this.showResetConfirm);
|
|
||||||
|
|
||||||
this.hintsText.remove();
|
this.hintsText.remove();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
steamPage:
|
steamPage:
|
||||||
shortText: “唯一能限制您的,只有您的想象力!” 《异形工厂》(Shapez.io)
|
shortText: “唯一能限制您的,只有您的想象力!” 《图形工厂》
|
||||||
是一款在无限拓展的地图上,通过建造各类工厂设施,来自动化生产与组合出愈加复杂图形的游戏。
|
是一款在无限拓展的地图上,通过建造各类工厂设施,来自动化生产与组合出愈加复杂图形的游戏。
|
||||||
discordLinkShort: 官方 Discord 服务器
|
discordLinkShort: 官方讨论区
|
||||||
intro: |-
|
intro: |-
|
||||||
“奇形怪状,放飞想象!”
|
“奇形怪状,放飞想象!”
|
||||||
“自动生产,尽情创造!”
|
“自动生产,尽情创造!”
|
||||||
《异形工厂》(Shapez.io)是一款能让您尽情发挥创造力,充分享受思维乐趣的IO游戏。
|
《图形工厂》是一款能让您尽情发挥创造力,充分享受思维乐趣的益智游戏。
|
||||||
游戏很轻松,只需建造工厂,布好设施,无需操作即能自动创造出各种各样的几何图形。
|
游戏很轻松,只需建造工厂,布好设施,无需操作即能自动创造出各种各样的几何图形。
|
||||||
挑战很烧脑,随着等级提升,需要创造的图形将会越来越复杂,同时您还需要在无限扩展的地图中持续扩建优化您的工厂。
|
挑战很烧脑,随着等级提升,需要创造的图形将会越来越复杂,同时您还需要在无限扩展的地图中持续扩建优化您的工厂。
|
||||||
以为这就是全部了吗? 不!图形的生产需求将会指数性增长,持续的扩大规模和熵增带来的无序,将会是令人头痛的问题!
|
以为这就是全部了吗? 不!图形的生产需求将会指数性增长,持续的扩大规模和熵增带来的无序,将会是令人头痛的问题!
|
||||||
|
@ -13,8 +13,8 @@ steamPage:
|
||||||
然后,还有吗? 当然,唯有思维,方能无限。
|
然后,还有吗? 当然,唯有思维,方能无限。
|
||||||
|
|
||||||
欢迎免费体验试玩版:“让您的想象力插上翅膀!”
|
欢迎免费体验试玩版:“让您的想象力插上翅膀!”
|
||||||
和最聪明的玩家一起挑战,请访问 Steam 游戏商城购买《异形工厂》(Shapez.io)的完整版,
|
和最聪明的玩家一起挑战,请购买《图形工厂》的完整版,
|
||||||
what_others_say: 来看看玩家们对《异形工厂》(Shapez.io)的评价
|
what_others_say: 来看看玩家们对《图形工厂》的评价
|
||||||
nothernlion_comment: 非常棒的有游戏,我的游戏过程充满乐趣,不觉时间飞逝。
|
nothernlion_comment: 非常棒的有游戏,我的游戏过程充满乐趣,不觉时间飞逝。
|
||||||
notch_comment: 哦,天哪!我真得该去睡了!但我想我刚刚搞定如何在游戏里面制造一台电脑出来。
|
notch_comment: 哦,天哪!我真得该去睡了!但我想我刚刚搞定如何在游戏里面制造一台电脑出来。
|
||||||
steam_review_comment: 这是一个不知不觉偷走你时间,但你并不会想要追回的游戏。非常烧脑的挑战,让我这样的完美主义者停不下来,总是希望可以再高效一些。
|
steam_review_comment: 这是一个不知不觉偷走你时间,但你并不会想要追回的游戏。非常烧脑的挑战,让我这样的完美主义者停不下来,总是希望可以再高效一些。
|
||||||
|
@ -24,7 +24,7 @@ global:
|
||||||
thousandsDivider: ","
|
thousandsDivider: ","
|
||||||
decimalSeparator: .
|
decimalSeparator: .
|
||||||
suffix:
|
suffix:
|
||||||
thousands: 千
|
thousands: 万
|
||||||
millions: 百万
|
millions: 百万
|
||||||
billions: 亿万
|
billions: 亿万
|
||||||
trillions: 兆
|
trillions: 兆
|
||||||
|
@ -58,7 +58,7 @@ mainMenu:
|
||||||
changelog: 更新日志
|
changelog: 更新日志
|
||||||
importSavegame: 读取存档
|
importSavegame: 读取存档
|
||||||
openSourceHint: 本游戏已开源!
|
openSourceHint: 本游戏已开源!
|
||||||
discordLink: 官方Discord服务器
|
discordLink: 官方讨论区
|
||||||
helpTranslate: 帮助我们翻译!
|
helpTranslate: 帮助我们翻译!
|
||||||
browserWarning: 很抱歉, 本游戏在当前浏览器上可能运行缓慢! 使用 谷歌浏览器 或者购买完整版以得到更好的体验。
|
browserWarning: 很抱歉, 本游戏在当前浏览器上可能运行缓慢! 使用 谷歌浏览器 或者购买完整版以得到更好的体验。
|
||||||
savegameLevel: 第<x>关
|
savegameLevel: 第<x>关
|
||||||
|
@ -66,13 +66,13 @@ mainMenu:
|
||||||
continue: 继续游戏
|
continue: 继续游戏
|
||||||
newGame: 新游戏
|
newGame: 新游戏
|
||||||
madeBy: 作者:<author-link>
|
madeBy: 作者:<author-link>
|
||||||
subreddit: Reddit
|
subreddit: 讨论区
|
||||||
savegameUnnamed: 存档未命名
|
savegameUnnamed: 存档未命名
|
||||||
puzzleMode: 谜题模式
|
puzzleMode: 谜题模式
|
||||||
back: 返回
|
back: 返回
|
||||||
puzzleDlcText: 新增谜题模式将带给您更多的游戏乐趣!
|
puzzleDlcText: 新增谜题模式将带给您更多的游戏乐趣!
|
||||||
puzzleDlcWishlist: 添加心愿单!
|
puzzleDlcWishlist: 添加心愿单!
|
||||||
puzzleDlcViewNow: View Dlc
|
puzzleDlcViewNow: 查看资料片!
|
||||||
dialogs:
|
dialogs:
|
||||||
buttons:
|
buttons:
|
||||||
ok: 确认
|
ok: 确认
|
||||||
|
@ -81,7 +81,7 @@ dialogs:
|
||||||
later: 以后
|
later: 以后
|
||||||
restart: 重新开始
|
restart: 重新开始
|
||||||
reset: 重置
|
reset: 重置
|
||||||
getStandalone: 获取完整版
|
getStandalone: 获取完整版!
|
||||||
deleteGame: 我没疯!我知道我在做什么!
|
deleteGame: 我没疯!我知道我在做什么!
|
||||||
viewUpdate: 查看更新
|
viewUpdate: 查看更新
|
||||||
showUpgrades: 显示设施升级
|
showUpgrades: 显示设施升级
|
||||||
|
@ -91,19 +91,19 @@ dialogs:
|
||||||
playOffline: 离线游戏
|
playOffline: 离线游戏
|
||||||
importSavegameError:
|
importSavegameError:
|
||||||
title: 读取错误
|
title: 读取错误
|
||||||
text: 未能读取您的存档:
|
text: 未能读取您的存档!
|
||||||
importSavegameSuccess:
|
importSavegameSuccess:
|
||||||
title: 读取成功
|
title: 读取成功
|
||||||
text: 存档被成功读取
|
text: 存档被成功读取!
|
||||||
gameLoadFailure:
|
gameLoadFailure:
|
||||||
title: 存档损坏
|
title: 存档损坏
|
||||||
text: 未能读取您的存档:
|
text: 未能读取您的存档!
|
||||||
confirmSavegameDelete:
|
confirmSavegameDelete:
|
||||||
title: 确认删除
|
title: 确认删除
|
||||||
text: 您确定要删除这个游戏吗?<br><br> '<savegameName>' 等级 <savegameLevel><br><br> 该操作无法回退!
|
text: 您确定要删除这个游戏吗?<br><br> "<savegameName>" 等级 <savegameLevel><br><br> 该操作无法回退!
|
||||||
savegameDeletionError:
|
savegameDeletionError:
|
||||||
title: 删除失败
|
title: 删除失败
|
||||||
text: 未能删除您的存档
|
text: 未能删除您的存档!
|
||||||
restartRequired:
|
restartRequired:
|
||||||
title: 需要重启游戏
|
title: 需要重启游戏
|
||||||
text: 您需要重启游戏以应用变更的设置。
|
text: 您需要重启游戏以应用变更的设置。
|
||||||
|
@ -136,14 +136,16 @@ dialogs:
|
||||||
desc: 您还没有解锁蓝图功能!通过第12关的挑战后可解锁蓝图。
|
desc: 您还没有解锁蓝图功能!通过第12关的挑战后可解锁蓝图。
|
||||||
keybindingsIntroduction:
|
keybindingsIntroduction:
|
||||||
title: 实用快捷键
|
title: 实用快捷键
|
||||||
desc: "这个游戏有很多有用的快捷键设定。 以下是其中的一些介绍,记得在<strong>按键设置</strong>中查看其他按键设定!<br><br>
|
desc:
|
||||||
|
"这个游戏有很多有用的快捷键设定。 以下是其中的一些介绍,记得在<strong>按键设置</strong>中查看其他按键设定!<br><br>
|
||||||
<code class='keybinding'>CTRL键</code> + 拖动:选择区域以复制或删除。<br> <code
|
<code class='keybinding'>CTRL键</code> + 拖动:选择区域以复制或删除。<br> <code
|
||||||
class='keybinding'>SHIFT键</code>: 按住以放置多个同一种设施。<br> <code
|
class='keybinding'>SHIFT键</code>: 按住以放置多个同一种设施。<br> <code
|
||||||
class='keybinding'>ALT键</code>: 反向放置传送带。<br>"
|
class='keybinding'>ALT键</code>: 反向放置传送带。<br>"
|
||||||
createMarker:
|
createMarker:
|
||||||
title: 创建地图标记
|
title: 创建地图标记
|
||||||
desc: 填写一个有意义的名称, 还可以同时包含一个形状的 <strong>短代码</strong> (您可以 <link>点击这里</link>
|
desc:
|
||||||
生成短代码)
|
填写一个有意义的名称, 还可以同时包含一个形状的 <strong>短代码</strong> (您可以 <link>点击这里</link>
|
||||||
|
生成短代码!)
|
||||||
titleEdit: 编辑地图标记
|
titleEdit: 编辑地图标记
|
||||||
markerDemoLimit:
|
markerDemoLimit:
|
||||||
desc: 在试玩版中您只能创建两个地图标记。请获取完整版以创建更多标记。
|
desc: 在试玩版中您只能创建两个地图标记。请获取完整版以创建更多标记。
|
||||||
|
@ -159,41 +161,41 @@ dialogs:
|
||||||
editSignal:
|
editSignal:
|
||||||
title: 设置信号
|
title: 设置信号
|
||||||
descItems: "选择一个预定义的项目:"
|
descItems: "选择一个预定义的项目:"
|
||||||
descShortKey: ... 或者输入图形的 <strong>短代码</strong> (您可以 <link>点击这里</link> 生成短代码)
|
descShortKey: ... 或者输入图形的 <strong>短代码</strong> (您可以 <link>点击这里</link> 生成短代码!)
|
||||||
renameSavegame:
|
renameSavegame:
|
||||||
title: 重命名游戏存档
|
title: 重命名游戏存档
|
||||||
desc: 您可以在此重命名游戏存档。
|
desc: 您可以在此重命名游戏存档。
|
||||||
tutorialVideoAvailable:
|
tutorialVideoAvailable:
|
||||||
title: 教程
|
title: 教程
|
||||||
desc: 这个关卡有视频攻略! 您想查看这个视频攻略?
|
desc: 这个关卡有视频攻略! 您想查看这个视频攻略吗?
|
||||||
tutorialVideoAvailableForeignLanguage:
|
tutorialVideoAvailableForeignLanguage:
|
||||||
title: 教程
|
title: 教程
|
||||||
desc: 这个关卡有英语版本的视频攻略! 您想查看这个视频攻略吗??
|
desc: 这个关卡有英语版本的视频攻略! 您想查看这个视频攻略吗?
|
||||||
editConstantProducer:
|
editConstantProducer:
|
||||||
title: 设置项目
|
title: 设置项目
|
||||||
puzzleLoadFailed:
|
puzzleLoadFailed:
|
||||||
title: 谜题载入失败
|
title: 谜题载入失败
|
||||||
desc: 谜题未能载入:
|
desc: "谜题未能载入!"
|
||||||
submitPuzzle:
|
submitPuzzle:
|
||||||
title: 提交谜题
|
title: 提交谜题
|
||||||
descName: 为您的谜题命名:
|
descName: "为您的谜题命名!"
|
||||||
descIcon: 请输入唯一的短代码,它将作为您的谜题图标显示(您可以在<link>这里</link>生成,或者从以下随机推荐的图形中选择一个):
|
descIcon: "请输入唯一的短代码,它将作为您的谜题图标显示(您可以在<link>这里</link>生成,或者从以下随机推荐的图形中选择一个):"
|
||||||
placeholderName: 谜题标题
|
placeholderName: 谜题标题
|
||||||
puzzleResizeBadBuildings:
|
puzzleResizeBadBuildings:
|
||||||
title: 无法重新定义尺寸
|
title: 无法重新定义尺寸
|
||||||
desc: 由于某些设施将会超出区域范围,因此您无法将区域变得更小。
|
desc: 由于某些设施将会超出区域范围,因此您无法将区域变得更小。
|
||||||
puzzleLoadError:
|
puzzleLoadError:
|
||||||
title: 谜题出错!
|
title: 谜题出错!
|
||||||
desc: 谜题未能载入:
|
desc: "谜题未能载入!"
|
||||||
offlineMode:
|
offlineMode:
|
||||||
title: 离线模式
|
title: 离线模式
|
||||||
desc: 无法访问服务器,所以游戏以离线模式进行。请确认您的互联网访问正常。
|
desc: 无法访问服务器,所以游戏以离线模式进行。请确认您的互联网访问正常。
|
||||||
puzzleDownloadError:
|
puzzleDownloadError:
|
||||||
title: 下载出错!
|
title: 下载出错!
|
||||||
desc: 无法下载谜题:
|
desc: "无法下载谜题!"
|
||||||
puzzleSubmitError:
|
puzzleSubmitError:
|
||||||
title: 提交出错!
|
title: 提交出错!
|
||||||
desc: 无法提交谜题:
|
desc: "无法提交谜题!"
|
||||||
puzzleSubmitOk:
|
puzzleSubmitOk:
|
||||||
title: 谜题成功发布!
|
title: 谜题成功发布!
|
||||||
desc: 恭喜!您的谜题已经成功发布,其他玩家已经可以玩到。您可以在“我的谜题”中找到自己已发布的谜题。
|
desc: 恭喜!您的谜题已经成功发布,其他玩家已经可以玩到。您可以在“我的谜题”中找到自己已发布的谜题。
|
||||||
|
@ -217,13 +219,13 @@ dialogs:
|
||||||
desc: 此谜已被标记!
|
desc: 此谜已被标记!
|
||||||
puzzleReportError:
|
puzzleReportError:
|
||||||
title: 上报失败
|
title: 上报失败
|
||||||
desc: 无法处理您的上报:
|
desc: "无法处理您的上报!"
|
||||||
puzzleLoadShortKey:
|
puzzleLoadShortKey:
|
||||||
title: 输入短代码
|
title: 输入短代码
|
||||||
desc: 输入谜题的短代码并载入。
|
desc: 输入谜题的短代码并载入。
|
||||||
puzzleDelete:
|
puzzleDelete:
|
||||||
title: 删除谜题吗?
|
title: 删除谜题吗?
|
||||||
desc: 您是否确认删除 '<title>'?删除谜题后将无法恢复!
|
desc: 您是否确认删除 "<title>"?删除谜题后将无法恢复!
|
||||||
ingame:
|
ingame:
|
||||||
keybindingsOverlay:
|
keybindingsOverlay:
|
||||||
moveMap: 移动地图
|
moveMap: 移动地图
|
||||||
|
@ -307,17 +309,22 @@ ingame:
|
||||||
interactiveTutorial:
|
interactiveTutorial:
|
||||||
title: 新手教程
|
title: 新手教程
|
||||||
hints:
|
hints:
|
||||||
1_1_extractor: 在<strong>圆形</strong>上放置一个<strong>开采器</strong>来获取圆形!<br><br>提示:<strong>按下鼠标左键</strong>选中<strong>开采器</strong>
|
1_1_extractor:
|
||||||
|
亲爱的玩家,欢迎来到<strong>《图形工厂》<strong>!在这里你可以通过创造各种图形设施与传送带模拟流水线生产,尽情发挥创造力,创办属于自己的工厂!<br><br>
|
||||||
|
在<strong>圆形<strong>上放置一个<strong>开采器</strong>来获取圆形!<br><br>提示:<strong>按下鼠标左键</strong>选中<strong>开采器</strong>
|
||||||
1_2_conveyor: 用<strong>传送带</strong>将您的开采器连接到中心基地上!<br><br>提示:选中<strong>传送带</strong>后<strong>按下鼠标左键可拖动</strong>布置传送带!
|
1_2_conveyor: 用<strong>传送带</strong>将您的开采器连接到中心基地上!<br><br>提示:选中<strong>传送带</strong>后<strong>按下鼠标左键可拖动</strong>布置传送带!
|
||||||
1_3_expand: 您可以放置更多的<strong>开采器</strong>和<strong>传送带</strong>来更有效率地完成关卡目标。<br><br>
|
1_3_expand:
|
||||||
|
您可以放置更多的<strong>开采器</strong>和<strong>传送带</strong>来更有效率地完成关卡目标。<br><br>
|
||||||
提示:按住 <strong>SHIFT</strong>
|
提示:按住 <strong>SHIFT</strong>
|
||||||
键可放置多个<strong>开采器</strong>,注意用<strong>R</strong>
|
键可放置多个<strong>开采器</strong>,注意用<strong>R</strong>
|
||||||
键可旋转<strong>开采器</strong>的出口方向,确保开采的图形可以顺利传送。
|
键可旋转<strong>开采器</strong>的出口方向,确保开采的图形可以顺利传送。
|
||||||
2_1_place_cutter: 现在放置一个<strong>切割器</strong>,这个设施可把<strong>圆形</strong>切成两半!<br><br>注意:无论如何放置,切割机总是<strong>从上到下</strong>切割。
|
2_1_place_cutter: 现在放置一个<strong>切割器</strong>,这个设施可把<strong>圆形</strong>切成两半!<br><br>注意:无论如何放置,切割机总是<strong>从上到下</strong>切割。
|
||||||
2_2_place_trash: 使用切割机后产生的废弃图形会导致<strong>堵塞</strong>。<br><br>注意使用<strong>垃圾桶</strong>清除当前
|
2_2_place_trash:
|
||||||
|
使用切割机后产生的废弃图形会导致<strong>堵塞</strong>。<br><br>注意使用<strong>垃圾桶</strong>清除当前
|
||||||
(!) 不需要的废物。
|
(!) 不需要的废物。
|
||||||
2_3_more_cutters: 干的好!现在放置<strong>2个以上的切割机</strong>来加快当前缓慢的过程!<br><br>提示:用<strong>快捷键0-9</strong>可以快速选择各项设施!
|
2_3_more_cutters: 干的好!现在放置<strong>2个以上的切割机</strong>来加快当前缓慢的过程!<br><br>提示:用<strong>快捷键0-9</strong>可以快速选择各项设施!
|
||||||
3_1_rectangles: 现在让我们开采一些矩形!找到<strong>矩形地带</strong>并<strong>放置4个开采器</strong>并将它们用<strong>传送带</strong>连接到中心基地。<br><br>
|
3_1_rectangles:
|
||||||
|
现在让我们开采一些矩形!找到<strong>矩形地带</strong>并<strong>放置4个开采器</strong>并将它们用<strong>传送带</strong>连接到中心基地。<br><br>
|
||||||
提示:选中<strong>传送带</strong>后按住<strong>SHIFT键</strong>可快速准确地规划<strong>传送带路线!</strong>
|
提示:选中<strong>传送带</strong>后按住<strong>SHIFT键</strong>可快速准确地规划<strong>传送带路线!</strong>
|
||||||
21_1_place_quad_painter: 放置<strong>四口上色器</strong>并且获取一些<strong>圆形</strong>,<strong>白色</strong>和<strong>红色</strong>!
|
21_1_place_quad_painter: 放置<strong>四口上色器</strong>并且获取一些<strong>圆形</strong>,<strong>白色</strong>和<strong>红色</strong>!
|
||||||
21_2_switch_to_wires: 按 <strong>E</strong> 键选择<strong>电线层</strong>!<br><br>
|
21_2_switch_to_wires: 按 <strong>E</strong> 键选择<strong>电线层</strong>!<br><br>
|
||||||
|
@ -345,7 +352,7 @@ ingame:
|
||||||
watermark:
|
watermark:
|
||||||
title: 试玩版
|
title: 试玩版
|
||||||
desc: 点击这里了解完整版内容
|
desc: 点击这里了解完整版内容
|
||||||
get_on_steam: 在Steam商城购买
|
get_on_steam: 购买完整版!
|
||||||
standaloneAdvantages:
|
standaloneAdvantages:
|
||||||
title: 购买完整版!
|
title: 购买完整版!
|
||||||
no_thanks: 不需要,谢谢
|
no_thanks: 不需要,谢谢
|
||||||
|
@ -395,7 +402,7 @@ ingame:
|
||||||
- 6.谜题发布后,<strong>所有设施都将被拆除</strong>,除了<strong>常量生成器</strong>和<strong>目标接收器</strong>。然后,等着其他玩家对您创造的谜题发起挑战吧!
|
- 6.谜题发布后,<strong>所有设施都将被拆除</strong>,除了<strong>常量生成器</strong>和<strong>目标接收器</strong>。然后,等着其他玩家对您创造的谜题发起挑战吧!
|
||||||
puzzleCompletion:
|
puzzleCompletion:
|
||||||
title: 谜题挑战成功!
|
title: 谜题挑战成功!
|
||||||
titleLike: 喜欢此谜题的话,请为它点赞:
|
titleLike: 喜欢此谜题的话,请为它点赞。
|
||||||
titleRating: 您觉得此谜题难度如何?
|
titleRating: 您觉得此谜题难度如何?
|
||||||
titleRatingDesc: 您的评分将帮助作者在未来创作出更好的谜题!
|
titleRatingDesc: 您的评分将帮助作者在未来创作出更好的谜题!
|
||||||
continueBtn: 继续游戏
|
continueBtn: 继续游戏
|
||||||
|
@ -485,16 +492,16 @@ buildings:
|
||||||
deliver: 交付
|
deliver: 交付
|
||||||
toUnlock: 解锁
|
toUnlock: 解锁
|
||||||
levelShortcut: 关卡
|
levelShortcut: 关卡
|
||||||
endOfDemo: 试玩版结束
|
endOfDemo: 试玩版结束!
|
||||||
wire:
|
wire:
|
||||||
default:
|
default:
|
||||||
name: 电线
|
name: 电线
|
||||||
description: 可用来传输<strong>信号<strong>,信号可以是物品,颜色或者开关值(0或1)。
|
description: 可用来传输<strong>信号<strong>,信号可以是物品,颜色或者开关值(0或1)。
|
||||||
不同颜色的<strong>电线</strong>不会互相连接
|
不同颜色的<strong>电线</strong>不会互相连接。
|
||||||
second:
|
second:
|
||||||
name: 电线
|
name: 电线
|
||||||
description: 可用来传输<strong>信号<strong>,信号可以是物品,颜色或者开关值(0或1)。
|
description: 可用来传输<strong>信号<strong>,信号可以是物品,颜色或者开关值(0或1)。
|
||||||
不同颜色的<strong>电线</strong>不会互相连接
|
不同颜色的<strong>电线</strong>不会互相连接。
|
||||||
balancer:
|
balancer:
|
||||||
default:
|
default:
|
||||||
name: 平衡器
|
name: 平衡器
|
||||||
|
@ -583,7 +590,7 @@ buildings:
|
||||||
description: 模拟将右侧<strong>图形</strong>叠在左侧<strong>图形</strong>上。
|
description: 模拟将右侧<strong>图形</strong>叠在左侧<strong>图形</strong>上。
|
||||||
painter:
|
painter:
|
||||||
name: 模拟上色器
|
name: 模拟上色器
|
||||||
description: 模拟使用右侧输入的<strong>颜色</strong>给底部输入的<strong>图形</strong>上色
|
description: 模拟使用右侧输入的<strong>颜色</strong>给底部输入的<strong>图形</strong>上色。
|
||||||
item_producer:
|
item_producer:
|
||||||
default:
|
default:
|
||||||
name: 物品生成器
|
name: 物品生成器
|
||||||
|
@ -611,8 +618,9 @@ storyRewards:
|
||||||
desc: 恭喜!您解锁了<strong>旋转机</strong>。它会顺时针将输入的<strong>图形旋转90度</strong>。
|
desc: 恭喜!您解锁了<strong>旋转机</strong>。它会顺时针将输入的<strong>图形旋转90度</strong>。
|
||||||
reward_painter:
|
reward_painter:
|
||||||
title: 上色
|
title: 上色
|
||||||
desc: 恭喜!您解锁了<strong>上色器</strong>。开采一些颜色 (就像您开采图形一样),将其在上色器中与图形结合来将图形上色!
|
desc:
|
||||||
<br>注意:如果您不幸患有色盲,可以在设置中启用<strong>色盲模式</strong>
|
恭喜!您解锁了<strong>上色器</strong>。开采一些颜色 (就像您开采图形一样),将其在上色器中与图形结合来将图形上色!
|
||||||
|
<br>注意:如果您不幸患有色盲,可以在设置中启用<strong>色盲模式</strong>。
|
||||||
reward_mixer:
|
reward_mixer:
|
||||||
title: 混合颜色
|
title: 混合颜色
|
||||||
desc: 恭喜!您解锁了<strong>混色器</strong>。它使用<strong>叠加混色法</strong>将两种颜色混合起来。
|
desc: 恭喜!您解锁了<strong>混色器</strong>。它使用<strong>叠加混色法</strong>将两种颜色混合起来。
|
||||||
|
@ -628,11 +636,13 @@ storyRewards:
|
||||||
desc: 恭喜!您解锁了<strong>隧道</strong>。它可放置在<strong>传送带</strong>或<strong>设施</strong>下方以运送物品。
|
desc: 恭喜!您解锁了<strong>隧道</strong>。它可放置在<strong>传送带</strong>或<strong>设施</strong>下方以运送物品。
|
||||||
reward_rotater_ccw:
|
reward_rotater_ccw:
|
||||||
title: 逆时针旋转
|
title: 逆时针旋转
|
||||||
desc: 恭喜!您解锁了<strong>旋转机</strong>的<strong>逆时针</strong>变体。它可以逆时针旋转<strong>图形</strong>。
|
desc:
|
||||||
|
恭喜!您解锁了<strong>旋转机</strong>的<strong>逆时针</strong>变体。它可以逆时针旋转<strong>图形</strong>。
|
||||||
<br>选择<strong>旋转机</strong>然后按"T"键来选取这个变体。
|
<br>选择<strong>旋转机</strong>然后按"T"键来选取这个变体。
|
||||||
reward_miner_chainable:
|
reward_miner_chainable:
|
||||||
title: 链式开采器
|
title: 链式开采器
|
||||||
desc: 您已经解锁了<strong>链式开采器</strong>!它能<strong>转发资源</strong>给其他的开采器,这样您就能更有效率的开采各类资源了!<br><br>
|
desc:
|
||||||
|
您已经解锁了<strong>链式开采器</strong>!它能<strong>转发资源</strong>给其他的开采器,这样您就能更有效率的开采各类资源了!<br><br>
|
||||||
注意:新的开采器已替换了工具栏里旧的开采器!
|
注意:新的开采器已替换了工具栏里旧的开采器!
|
||||||
reward_underground_belt_tier_2:
|
reward_underground_belt_tier_2:
|
||||||
title: 二级隧道
|
title: 二级隧道
|
||||||
|
@ -649,12 +659,14 @@ storyRewards:
|
||||||
<br>它<strong>优先从左边</strong>输出,这样您就可以用它做一个<strong>溢流门</strong>了!
|
<br>它<strong>优先从左边</strong>输出,这样您就可以用它做一个<strong>溢流门</strong>了!
|
||||||
reward_freeplay:
|
reward_freeplay:
|
||||||
title: 自由模式
|
title: 自由模式
|
||||||
desc: 成功了!您解锁了<strong>自由模式</strong>!挑战升级!这意味着现在将<strong>随机</strong>生成图形!
|
desc:
|
||||||
|
成功了!您解锁了<strong>自由模式</strong>!挑战升级!这意味着现在将<strong>随机</strong>生成图形!
|
||||||
从现在起,中心基地最为需要的是<strong>产量</strong>,我强烈建议您去制造一台能够自动交付所需图形的机器!<br><br>
|
从现在起,中心基地最为需要的是<strong>产量</strong>,我强烈建议您去制造一台能够自动交付所需图形的机器!<br><br>
|
||||||
基地会在<strong>电线层</strong>输出需要的图形,您需要去分析图形并在此基础上自动配置您的工厂。
|
基地会在<strong>电线层</strong>输出需要的图形,您需要去分析图形并在此基础上自动配置您的工厂。
|
||||||
reward_blueprints:
|
reward_blueprints:
|
||||||
title: 蓝图
|
title: 蓝图
|
||||||
desc: 您现在可以<strong>复制粘贴</strong>您的工厂的一部分了!按住 CTRL键并拖动鼠标来选择一块区域,然后按C键复制。
|
desc:
|
||||||
|
您现在可以<strong>复制粘贴</strong>您的工厂的一部分了!按住 CTRL键并拖动鼠标来选择一块区域,然后按C键复制。
|
||||||
<br><br>粘贴并<strong>不是免费的</strong>,您需要制造<strong>蓝图图形</strong>来负担。蓝图图形是您刚刚交付的图形。
|
<br><br>粘贴并<strong>不是免费的</strong>,您需要制造<strong>蓝图图形</strong>来负担。蓝图图形是您刚刚交付的图形。
|
||||||
no_reward:
|
no_reward:
|
||||||
title: 下一关
|
title: 下一关
|
||||||
|
@ -682,12 +694,13 @@ storyRewards:
|
||||||
<br>注意:您注意到<strong>传送读取器</strong>和<strong>存储器</strong>输出的他们最后读取的物品了吗?试着在显示屏上展示一下!"
|
<br>注意:您注意到<strong>传送读取器</strong>和<strong>存储器</strong>输出的他们最后读取的物品了吗?试着在显示屏上展示一下!"
|
||||||
reward_constant_signal:
|
reward_constant_signal:
|
||||||
title: 恒定信号
|
title: 恒定信号
|
||||||
desc: 恭喜!您解锁了生成于电线层之上的<strong>恒定信号</strong>,把它连接到<strong>过滤器</strong>时非常有用。
|
desc:
|
||||||
|
恭喜!您解锁了生成于电线层之上的<strong>恒定信号</strong>,把它连接到<strong>过滤器</strong>时非常有用。
|
||||||
<br>比如,它能发出图形、颜色、开关值(1 / 0)的固定信号。
|
<br>比如,它能发出图形、颜色、开关值(1 / 0)的固定信号。
|
||||||
reward_logic_gates:
|
reward_logic_gates:
|
||||||
title: 逻辑门
|
title: 逻辑门
|
||||||
desc: 您解锁了<strong>逻辑门</strong>!它们是个好东西!<br>
|
desc: 您解锁了<strong>逻辑门</strong>!它们是个好东西!<br>
|
||||||
您可以用它们来进行'与,或,非,异或'操作。<br><br>作为奖励,我还给您解锁了<strong>晶体管</strong>!
|
您可以用它们来进行"与,或,非,异或"操作。<br><br>作为奖励,我还给您解锁了<strong>晶体管</strong>!
|
||||||
reward_virtual_processing:
|
reward_virtual_processing:
|
||||||
title: 模拟处理器
|
title: 模拟处理器
|
||||||
desc: 我刚刚给了一大堆新设施,让您可以<strong>模拟形状的处理过程</strong>!<br>
|
desc: 我刚刚给了一大堆新设施,让您可以<strong>模拟形状的处理过程</strong>!<br>
|
||||||
|
@ -701,11 +714,12 @@ storyRewards:
|
||||||
<strong>提示</strong>:可在设置中打开电线层教程!"
|
<strong>提示</strong>:可在设置中打开电线层教程!"
|
||||||
reward_filter:
|
reward_filter:
|
||||||
title: 物品过滤器
|
title: 物品过滤器
|
||||||
desc: 恭喜!您解锁了<strong>物品过滤器</strong>!它会根据在电线层上输入的信号决定是从上面还是右边输出物品。<br><br>
|
desc:
|
||||||
|
恭喜!您解锁了<strong>物品过滤器</strong>!它会根据在电线层上输入的信号决定是从上面还是右边输出物品。<br><br>
|
||||||
您也可以输入开关值(1 / 0)信号来激活或者禁用它。
|
您也可以输入开关值(1 / 0)信号来激活或者禁用它。
|
||||||
reward_demo_end:
|
reward_demo_end:
|
||||||
title: 试玩结束
|
title: 试玩结束
|
||||||
desc: 恭喜!您已经通关了试玩版本! <br>更多挑战,请至Steam商城购买完整版!谢谢支持!
|
desc: 恭喜!您已经通关了试玩版本! <br>更多挑战,请购买完整版!谢谢支持!
|
||||||
settings:
|
settings:
|
||||||
title: 设置
|
title: 设置
|
||||||
categories:
|
categories:
|
||||||
|
@ -806,10 +820,10 @@ settings:
|
||||||
description: 每一类设施都会记住各自上一次的旋转方向。如果您经常在不同设施类型之间切换,这个设置会让游戏操控更加便捷。
|
description: 每一类设施都会记住各自上一次的旋转方向。如果您经常在不同设施类型之间切换,这个设置会让游戏操控更加便捷。
|
||||||
soundVolume:
|
soundVolume:
|
||||||
title: 音效音量
|
title: 音效音量
|
||||||
description: 设置音效的音量
|
description: 设置音效的音量。
|
||||||
musicVolume:
|
musicVolume:
|
||||||
title: 音乐音量
|
title: 音乐音量
|
||||||
description: 设置音乐的音量
|
description: 设置音乐的音量。
|
||||||
lowQualityMapResources:
|
lowQualityMapResources:
|
||||||
title: 低质量地图资源
|
title: 低质量地图资源
|
||||||
description: 放大时简化地图上资源的渲染以提高性能。开启甚至会让画面看起来更干净,低配置电脑玩家建议开启!
|
description: 放大时简化地图上资源的渲染以提高性能。开启甚至会让画面看起来更干净,低配置电脑玩家建议开启!
|
||||||
|
@ -881,7 +895,7 @@ keybindings:
|
||||||
painter: 上色器
|
painter: 上色器
|
||||||
trash: 垃圾桶
|
trash: 垃圾桶
|
||||||
rotateWhilePlacing: 顺时针旋转
|
rotateWhilePlacing: 顺时针旋转
|
||||||
rotateInverseModifier: "修饰键: 改为逆时针旋转"
|
rotateInverseModifier: "修饰键: 改为逆时针旋转。"
|
||||||
cycleBuildingVariants: 切换所选择设施变体
|
cycleBuildingVariants: 切换所选择设施变体
|
||||||
confirmMassDelete: 确认批量删除
|
confirmMassDelete: 确认批量删除
|
||||||
cycleBuildings: 切换所选择设施
|
cycleBuildings: 切换所选择设施
|
||||||
|
@ -896,7 +910,7 @@ keybindings:
|
||||||
exportScreenshot: 导出截图
|
exportScreenshot: 导出截图
|
||||||
mapMoveFaster: 快速移动
|
mapMoveFaster: 快速移动
|
||||||
lockBeltDirection: 启用传送带规划
|
lockBeltDirection: 启用传送带规划
|
||||||
switchDirectionLockSide: 规划器:换边
|
switchDirectionLockSide: 规划器:换边。
|
||||||
pipette: 吸取器
|
pipette: 吸取器
|
||||||
menuClose: 关闭菜单
|
menuClose: 关闭菜单
|
||||||
switchLayers: 切换层
|
switchLayers: 切换层
|
||||||
|
@ -915,7 +929,7 @@ keybindings:
|
||||||
analyzer: 图形分析器
|
analyzer: 图形分析器
|
||||||
comparator: 比较器
|
comparator: 比较器
|
||||||
item_producer: 物品生产器 (沙盒模式)
|
item_producer: 物品生产器 (沙盒模式)
|
||||||
copyWireValue: 电线:复制指定电线上的值
|
copyWireValue: 电线:复制指定电线上的值。
|
||||||
rotateToUp: 向上旋转
|
rotateToUp: 向上旋转
|
||||||
rotateToDown: 向下旋转
|
rotateToDown: 向下旋转
|
||||||
rotateToRight: 向右旋转
|
rotateToRight: 向右旋转
|
||||||
|
@ -924,20 +938,17 @@ keybindings:
|
||||||
goal_acceptor: 目标接收器
|
goal_acceptor: 目标接收器
|
||||||
block: 方块
|
block: 方块
|
||||||
massSelectClear: 清除传送带
|
massSelectClear: 清除传送带
|
||||||
showShapeTooltip: 显示图形输出提示
|
showShapeTooltip: 显示图形输出提示。
|
||||||
about:
|
about:
|
||||||
title: 关于游戏
|
title: 关于游戏
|
||||||
body: >-
|
body: >-
|
||||||
本游戏由 <a href="https://github.com/tobspr" target="_blank">Tobias
|
本游戏由托比亚斯开发,并且已经开源。<br><br>
|
||||||
Springer</a>(我)开发,并且已经开源。<br><br>
|
|
||||||
|
|
||||||
如果您想参与开发,请查看 <a href="<githublink>" target="_blank">shapez.io on github</a>。<br><br>
|
这个游戏的开发获得了热情玩家的巨大支持。非常感谢!<br><br>
|
||||||
|
|
||||||
这个游戏的开发获得了 Discord 社区内热情玩家的巨大支持。诚挚邀请您加入我们的 <a href="<discordlink>" target="_blank">Discord 服务器</a>!<br><br>
|
本游戏的音乐由佩普森制作——他是个很棒的伙伴。<br><br>
|
||||||
|
|
||||||
本游戏的音乐由 <a href="https://soundcloud.com/pettersumelius" target="_blank">Peppsen</a> 制作——他是个很棒的伙伴。<br><br>
|
最后,我想感谢我最好的朋友尼可拉斯——如果没有他的《异星工厂》带给我的体验和启发,《图形工厂》将不会存在。
|
||||||
|
|
||||||
最后,我想感谢我最好的朋友 <a href="https://github.com/niklas-dahl" target="_blank">Niklas</a> ——如果没有他的《异星工厂》(factorio)带给我的体验和启发,《异形工厂》(shapez.io)将不会存在。
|
|
||||||
changelog:
|
changelog:
|
||||||
title: 版本日志
|
title: 版本日志
|
||||||
demo:
|
demo:
|
||||||
|
@ -1001,7 +1012,7 @@ tips:
|
||||||
- 这个游戏有很多设置可以提高游戏效率,请一定要了解一下!
|
- 这个游戏有很多设置可以提高游戏效率,请一定要了解一下!
|
||||||
- 中心基地有个指向它所在方向的小指南指针!
|
- 中心基地有个指向它所在方向的小指南指针!
|
||||||
- 想清理传送带,可剪切那块区域然后将其在相同位置粘贴。
|
- 想清理传送带,可剪切那块区域然后将其在相同位置粘贴。
|
||||||
- 按F4显示FPS。
|
- 按F4显示帧数。
|
||||||
- 按两次F4显示您鼠标和镜头所在的块。
|
- 按两次F4显示您鼠标和镜头所在的块。
|
||||||
- 您可以点击被固定在屏幕左侧的图形来解除固定。
|
- 您可以点击被固定在屏幕左侧的图形来解除固定。
|
||||||
- 您可以点击被固定在屏幕左侧的图形来解除固定。
|
- 您可以点击被固定在屏幕左侧的图形来解除固定。
|
||||||
|
@ -1015,7 +1026,7 @@ puzzleMenu:
|
||||||
validatingPuzzle: 验证谜题
|
validatingPuzzle: 验证谜题
|
||||||
submittingPuzzle: 提交谜题
|
submittingPuzzle: 提交谜题
|
||||||
noPuzzles: 暂无满足此部分条件的谜题。
|
noPuzzles: 暂无满足此部分条件的谜题。
|
||||||
dlcHint: 如已购买DLC,请在您的Steam库中右键点击异形工厂,然后选择属性-DLC。
|
dlcHint: 如已购买资料片,请在您的游戏库中右键点击图形工厂,然后选择属性-资料片。
|
||||||
categories:
|
categories:
|
||||||
levels: 关卡
|
levels: 关卡
|
||||||
new: 最新
|
new: 最新
|
||||||
|
@ -1061,7 +1072,7 @@ puzzleMenu:
|
||||||
autoComplete: 您的谜题已自动完成!请确认您的常量生成器没有直接向您的目标接收器进行传送。
|
autoComplete: 您的谜题已自动完成!请确认您的常量生成器没有直接向您的目标接收器进行传送。
|
||||||
backendErrors:
|
backendErrors:
|
||||||
ratelimit: 您的操作太频繁了。请稍等。
|
ratelimit: 您的操作太频繁了。请稍等。
|
||||||
invalid-api-key: 与后台通信失败,请尝试更新或重新启动游戏(无效的Api密钥)。
|
invalid-api-key: 与后台通信失败,请尝试更新或重新启动游戏(无效的密钥)。
|
||||||
unauthorized: 与后台通信失败,请尝试更新或重新启动游戏(未经授权)。
|
unauthorized: 与后台通信失败,请尝试更新或重新启动游戏(未经授权)。
|
||||||
bad-token: 与后台通信失败,请尝试更新或重新启动游戏(令牌错误)。
|
bad-token: 与后台通信失败,请尝试更新或重新启动游戏(令牌错误)。
|
||||||
bad-id: 谜题标识符无效。
|
bad-id: 谜题标识符无效。
|
||||||
|
@ -1079,5 +1090,5 @@ backendErrors:
|
||||||
bad-payload: 此请求包含无效数据。
|
bad-payload: 此请求包含无效数据。
|
||||||
bad-building-placement: 您的谜题包含放置错误的设施。
|
bad-building-placement: 您的谜题包含放置错误的设施。
|
||||||
timeout: 请求超时。
|
timeout: 请求超时。
|
||||||
too-many-likes-already: 您的谜题已经得到了许多玩家的赞赏。如果您仍然希望删除它,请联系support@shapez.io!
|
too-many-likes-already: 您的谜题已经得到了许多玩家的赞赏。如果您仍然希望删除它,请联系客服!
|
||||||
no-permission: 您没有执行此操作的权限。
|
no-permission: 您没有执行此操作的权限。
|
||||||
|
|
Loading…
Reference in New Issue