diff --git a/electron_wegame/index.js b/electron_wegame/index.js
index 57d1f43e..23c277c4 100644
--- a/electron_wegame/index.js
+++ b/electron_wegame/index.js
@@ -43,7 +43,7 @@ function createWindow() {
useContentSize: true,
minWidth: 800,
minHeight: 600,
- title: "shapez.io Standalone",
+ title: "图形工厂",
transparent: false,
icon: path.join(__dirname, "favicon" + faviconExtension),
// fullscreen: true,
diff --git a/src/js/game/hud/parts/HUDPuzzleNextPuzzle.js b/src/js/game/hud/parts/HUDPuzzleNextPuzzle.js
index f0187d0d..472a3491 100644
--- a/src/js/game/hud/parts/HUDPuzzleNextPuzzle.js
+++ b/src/js/game/hud/parts/HUDPuzzleNextPuzzle.js
@@ -1,6 +1,10 @@
+/* typehints:start */
+import { PuzzlePlayGameMode } from "../../modes/puzzle_play";
+/* typehints:end */
+
import { makeDiv } from "../../../core/utils";
import { T } from "../../../translations";
-import { PuzzlePlayGameMode } from "../../modes/puzzle_play";
+
import { BaseHUDPart } from "../base_hud_part";
export class HUDPuzzleNextPuzzle extends BaseHUDPart {
diff --git a/src/js/game/hud/parts/pinned_shapes.js b/src/js/game/hud/parts/pinned_shapes.js
index a53ecbe5..c5bb9a82 100644
--- a/src/js/game/hud/parts/pinned_shapes.js
+++ b/src/js/game/hud/parts/pinned_shapes.js
@@ -232,15 +232,20 @@ export class HUDPinnedShapes extends BaseHUDPart {
}
// Show small info icon
- const infoButton = document.createElement("button");
- infoButton.classList.add("infoButton");
- element.appendChild(infoButton);
- const infoDetector = new ClickDetector(infoButton, {
- consumeEvents: true,
- preventDefault: true,
- targetOnly: true,
- });
- infoDetector.click.add(() => this.root.hud.signals.viewShapeDetailsRequested.dispatch(definition));
+ let infoDetector;
+ if (!G_WEGAME_VERSION) {
+ const infoButton = document.createElement("button");
+ infoButton.classList.add("infoButton");
+ element.appendChild(infoButton);
+ infoDetector = new ClickDetector(infoButton, {
+ consumeEvents: true,
+ preventDefault: true,
+ targetOnly: true,
+ });
+ infoDetector.click.add(() =>
+ this.root.hud.signals.viewShapeDetailsRequested.dispatch(definition)
+ );
+ }
const amountLabel = makeDiv(element, null, ["amountLabel"], "");
diff --git a/src/js/game/hud/parts/shop.js b/src/js/game/hud/parts/shop.js
index 96521898..4b353bd3 100644
--- a/src/js/game/hud/parts/shop.js
+++ b/src/js/game/hud/parts/shop.js
@@ -77,7 +77,9 @@ export class HUDShop extends BaseHUDPart {
const requiredHandle = handle.requireIndexToElement[i];
requiredHandle.container.remove();
requiredHandle.pinDetector.cleanup();
- requiredHandle.infoDetector.cleanup();
+ if (requiredHandle.infoDetector) {
+ requiredHandle.infoDetector.cleanup();
+ }
}
// Cleanup
@@ -119,9 +121,19 @@ export class HUDShop extends BaseHUDPart {
pinButton.classList.add("pin");
container.appendChild(pinButton);
- const viewInfoButton = document.createElement("button");
- viewInfoButton.classList.add("showInfo");
- container.appendChild(viewInfoButton);
+ let infoDetector;
+ if (!G_WEGAME_VERSION) {
+ const viewInfoButton = document.createElement("button");
+ viewInfoButton.classList.add("showInfo");
+ container.appendChild(viewInfoButton);
+ infoDetector = new ClickDetector(viewInfoButton, {
+ consumeEvents: true,
+ preventDefault: true,
+ });
+ infoDetector.click.add(() =>
+ this.root.hud.signals.viewShapeDetailsRequested.dispatch(shapeDef)
+ );
+ }
const currentGoalShape = this.root.hubGoals.currentGoal.definition.getHash();
if (shape === currentGoalShape) {
@@ -146,14 +158,6 @@ export class HUDShop extends BaseHUDPart {
}
});
- const infoDetector = new ClickDetector(viewInfoButton, {
- consumeEvents: true,
- preventDefault: true,
- });
- infoDetector.click.add(() =>
- this.root.hud.signals.viewShapeDetailsRequested.dispatch(shapeDef)
- );
-
handle.requireIndexToElement.push({
container,
progressLabel,
@@ -211,7 +215,9 @@ export class HUDShop extends BaseHUDPart {
const requiredHandle = handle.requireIndexToElement[i];
requiredHandle.container.remove();
requiredHandle.pinDetector.cleanup();
- requiredHandle.infoDetector.cleanup();
+ if (requiredHandle.infoDetector) {
+ requiredHandle.infoDetector.cleanup();
+ }
}
handle.requireIndexToElement = [];
}
diff --git a/src/js/states/settings.js b/src/js/states/settings.js
index 23a0b16a..352e0153 100644
--- a/src/js/states/settings.js
+++ b/src/js/states/settings.js
@@ -40,7 +40,7 @@ export class SettingsState extends TextualGameState {
`
}
-
${T.global.loading} ...
+ ${G_WEGAME_VERSION ? "" : `
${T.global.loading} ...
`}
@@ -91,6 +91,9 @@ export class SettingsState extends TextualGameState {
renderBuildText() {
const labelVersion = this.htmlElement.querySelector(".buildVersion");
+ if (!labelVersion) {
+ return;
+ }
const lastBuildMs = new Date().getTime() - G_BUILD_TIME;
const lastBuildText = formatSecondsToTimeAgo(lastBuildMs / 1000.0);
diff --git a/translations/base-de.yaml b/translations/base-de.yaml
index afaae040..04b15137 100644
--- a/translations/base-de.yaml
+++ b/translations/base-de.yaml
@@ -91,9 +91,9 @@ puzzleMenu:
submittingPuzzle: Puzzle wird veröffentlicht
noPuzzles: Hier gibt es bisher noch keine Puzzles.
dlcHint: >
- DLC schon gekauft? Stelle sicher, dass es aktiviert ist, indem du in
- der Steam-Bibliothek shapez.io rechtsklickst und es unter Eigenschaften
- > Zusatzinhalte (DLC) aktivierst.
+ DLC schon gekauft? Stelle sicher, dass es aktiviert ist, indem du in der
+ Steam-Bibliothek shapez.io rechtsklickst und es unter Eigenschaften >
+ Zusatzinhalte (DLC) aktivierst.
categories:
levels: Levels
new: Neu
diff --git a/translations/base-it.yaml b/translations/base-it.yaml
index c8c10974..ecb8dafc 100644
--- a/translations/base-it.yaml
+++ b/translations/base-it.yaml
@@ -1051,8 +1051,9 @@ settings:
si fa lo zoom indietro).
shapeTooltipAlwaysOn:
title: Shape Tooltip - Show Always
- description: Determina se mostrare sempre la forma in uscita da un edificio quando si passa sopra di esso col cursore,
- invece di dover premere 'ALT'.
+ description: Determina se mostrare sempre la forma in uscita da un edificio
+ quando si passa sopra di esso col cursore, invece di dover
+ premere 'ALT'.
rangeSliderPercentage: %
tickrateHz: Hz
keybindings:
@@ -1280,8 +1281,8 @@ puzzleMenu:
medium: Medio
hard: Difficile
unknown: Non classificato
- dlcHint: Hai già acquistato il DLC? Assicurati che sia attivo facendo clic destro
- su shapez.io nella tua libreria e selezionando Proprietà > DLC.
+ dlcHint: Hai già acquistato il DLC? Assicurati che sia attivo facendo clic
+ destro su shapez.io nella tua libreria e selezionando Proprietà > DLC.
search:
action: Cerca
placeholder: Inserisci il nome di un puzzle o di un autore
diff --git a/translations/base-tr.yaml b/translations/base-tr.yaml
index 9521a112..f793972a 100644
--- a/translations/base-tr.yaml
+++ b/translations/base-tr.yaml
@@ -1024,8 +1024,8 @@ settings:
ayarlar.
shapeTooltipAlwaysOn:
title: Şekil İpucu - Her Zaman Göster
- description: Şekil ipuçlarını 'ALT' tuşuna basarak göstermek yerine
- her zaman gösterir.
+ description: Şekil ipuçlarını 'ALT' tuşuna basarak göstermek yerine her zaman
+ gösterir.
tickrateHz: Hz
keybindings:
title: Tuş Atamaları
diff --git a/translations/base-zh-CN-ISBN.yaml b/translations/base-zh-CN-ISBN.yaml
index 20ab8a61..4416c789 100644
--- a/translations/base-zh-CN-ISBN.yaml
+++ b/translations/base-zh-CN-ISBN.yaml
@@ -137,13 +137,15 @@ dialogs:
desc: 您还没有解锁蓝图功能!通过第12关的挑战后可解锁蓝图。
keybindingsIntroduction:
title: 实用快捷键
- desc: "这个游戏有很多有用的快捷键设定。 以下是其中的一些介绍,记得在按键设置 中查看其他按键设定!
+ desc:
+ "这个游戏有很多有用的快捷键设定。 以下是其中的一些介绍,记得在按键设置 中查看其他按键设定!
CTRL键
+ 拖动:选择区域以复制或删除。 SHIFT键
: 按住以放置多个同一种设施。 ALT键
: 反向放置传送带。 "
createMarker:
title: 创建地图标记
- desc: 填写一个有意义的名称, 还可以同时包含一个形状的 短代码 (您可以 点击这里
+ desc:
+ 填写一个有意义的名称, 还可以同时包含一个形状的 短代码 (您可以 点击这里
生成短代码)
titleEdit: 编辑地图标记
markerDemoLimit:
@@ -319,15 +321,18 @@ ingame:
hints:
1_1_extractor: 在圆形 上放置一个开采器 来获取圆形! 提示:按下鼠标左键 选中开采器
1_2_conveyor: 用传送带 将您的开采器连接到中心基地上! 提示:选中传送带 后按下鼠标左键可拖动 布置传送带!
- 1_3_expand: 您可以放置更多的开采器 和传送带 来更有效率地完成关卡目标。
+ 1_3_expand:
+ 您可以放置更多的开采器 和传送带 来更有效率地完成关卡目标。
提示:按住 SHIFT
键可放置多个开采器 ,注意用R
键可旋转开采器 的出口方向,确保开采的图形可以顺利传送。
2_1_place_cutter: 现在放置一个切割器 ,这个设施可把圆形 切成两半! 注意:无论如何放置,切割机总是从上到下 切割。
- 2_2_place_trash: 使用切割机后产生的废弃图形会导致堵塞 。 注意使用垃圾桶 清除当前
+ 2_2_place_trash:
+ 使用切割机后产生的废弃图形会导致堵塞 。 注意使用垃圾桶 清除当前
(!) 不需要的废物。
2_3_more_cutters: 干的好!现在放置2个以上的切割机 来加快当前缓慢的过程! 提示:用快捷键0-9 可以快速选择各项设施!
- 3_1_rectangles: 现在让我们开采一些矩形!找到矩形地带 并放置4个开采器 并将它们用传送带 连接到中心基地。
+ 3_1_rectangles:
+ 现在让我们开采一些矩形!找到矩形地带 并放置4个开采器 并将它们用传送带 连接到中心基地。
提示:选中传送带 后按住SHIFT键 可快速准确地规划传送带路线!
21_1_place_quad_painter: 放置四口上色器 并且获取一些圆形 ,白色 和红色 !
21_2_switch_to_wires: 按 E 键选择电线层 !
@@ -502,7 +507,7 @@ buildings:
hub:
deliver: 交付
toUnlock: 解锁
- levelShortcut: LVL
+ levelShortcut: 关卡
endOfDemo: 试玩版结束
wire:
default:
@@ -629,7 +634,8 @@ storyRewards:
desc: 恭喜!您解锁了旋转机 。它会顺时针将输入的图形旋转90度 。
reward_painter:
title: 上色
- desc: 恭喜!您解锁了上色器 。开采一些颜色 (就像您开采图形一样),将其在上色器中与图形结合来将图形上色!
+ desc:
+ 恭喜!您解锁了上色器 。开采一些颜色 (就像您开采图形一样),将其在上色器中与图形结合来将图形上色!
注意:如果您不幸患有色盲,可以在设置中启用色盲模式
reward_mixer:
title: 混合颜色
@@ -646,11 +652,13 @@ storyRewards:
desc: 恭喜!您解锁了隧道 。它可放置在传送带 或设施 下方以运送物品。
reward_rotater_ccw:
title: 逆时针旋转
- desc: 恭喜!您解锁了旋转机 的逆时针 变体。它可以逆时针旋转图形 。
+ desc:
+ 恭喜!您解锁了旋转机 的逆时针 变体。它可以逆时针旋转图形 。
选择旋转机 然后按"T"键来选取这个变体。
reward_miner_chainable:
title: 链式开采器
- desc: 您已经解锁了链式开采器 !它能转发资源 给其他的开采器,这样您就能更有效率的开采各类资源了!
+ desc:
+ 您已经解锁了链式开采器 !它能转发资源 给其他的开采器,这样您就能更有效率的开采各类资源了!
注意:新的开采器已替换了工具栏里旧的开采器!
reward_underground_belt_tier_2:
title: 二级隧道
@@ -667,12 +675,14 @@ storyRewards:
它优先从左边 输出,这样您就可以用它做一个溢流门 了!
reward_freeplay:
title: 自由模式
- desc: 成功了!您解锁了自由模式 !挑战升级!这意味着现在将随机 生成图形!
+ desc:
+ 成功了!您解锁了自由模式 !挑战升级!这意味着现在将随机 生成图形!
从现在起,中心基地最为需要的是产量 ,我强烈建议您去制造一台能够自动交付所需图形的机器!
基地会在电线层 输出需要的图形,您需要去分析图形并在此基础上自动配置您的工厂。
reward_blueprints:
title: 蓝图
- desc: 您现在可以复制粘贴 您的工厂的一部分了!按住 CTRL键并拖动鼠标来选择一块区域,然后按C键复制。
+ desc:
+ 您现在可以复制粘贴 您的工厂的一部分了!按住 CTRL键并拖动鼠标来选择一块区域,然后按C键复制。
粘贴并不是免费的 ,您需要制造蓝图图形 来负担。蓝图图形是您刚刚交付的图形。
no_reward:
title: 下一关
@@ -700,7 +710,8 @@ storyRewards:
注意:您注意到传送读取器 和存储器 输出的他们最后读取的物品了吗?试着在显示屏上展示一下!"
reward_constant_signal:
title: 恒定信号
- desc: 恭喜!您解锁了生成于电线层之上的恒定信号 ,把它连接到过滤器 时非常有用。
+ desc:
+ 恭喜!您解锁了生成于电线层之上的恒定信号 ,把它连接到过滤器 时非常有用。
比如,它能发出图形、颜色、开关值(1 / 0)的固定信号。
reward_logic_gates:
title: 逻辑门
@@ -719,7 +730,8 @@ storyRewards:
提示 :可在设置中打开电线层教程!"
reward_filter:
title: 物品过滤器
- desc: 恭喜!您解锁了物品过滤器 !它会根据在电线层上输入的信号决定是从上面还是右边输出物品。
+ desc:
+ 恭喜!您解锁了物品过滤器 !它会根据在电线层上输入的信号决定是从上面还是右边输出物品。
您也可以输入开关值(1 / 0)信号来激活或者禁用它。
reward_demo_end:
title: 试玩结束
diff --git a/translations/base-zh-TW.yaml b/translations/base-zh-TW.yaml
index 78b15faa..81e5c8a7 100644
--- a/translations/base-zh-TW.yaml
+++ b/translations/base-zh-TW.yaml
@@ -135,15 +135,13 @@ dialogs:
desc: 你還沒有解鎖藍圖功能!完成更多的關卡來解鎖藍圖。
keybindingsIntroduction:
title: 實用按鍵
- desc:
- "這個遊戲有很多能幫助搭建工廠的使用按鍵。 以下是其中的一些,記得在按鍵設定 中查看其他的!
+ desc: "這個遊戲有很多能幫助搭建工廠的使用按鍵。 以下是其中的一些,記得在按鍵設定 中查看其他的!
CTRL
+ 拖曳:選擇區域以複製或刪除。 SHIFT
: 按住以放置多個。 ALT
: 反向放置輸送帶。 "
createMarker:
title: 建立標記
- desc:
- 給地圖標記取一個名字。你可以在名字中加入一個簡短代碼 以加入圖形。(你可以在 這裡
+ desc: 給地圖標記取一個名字。你可以在名字中加入一個簡短代碼 以加入圖形。(你可以在 這裡
建立簡短代碼。)
titleEdit: 修改標記
markerDemoLimit:
@@ -320,18 +318,15 @@ ingame:
1_1_extractor: 在圓形礦脈 上放一個開採機 來採集圓形!
1_2_conveyor: 用輸送帶 將你的開採機連接到基地上!
提示:用你的游標按下並拖曳 輸送帶!
- 1_3_expand:
- 這不是 一個放置型遊戲!建造更多的開採機和輸送帶來更快地完成目標。
+ 1_3_expand: 這不是 一個放置型遊戲!建造更多的開採機和輸送帶來更快地完成目標。
提示:按住SHIFT 鍵來放置多個開採機,用R 鍵旋轉它們。
2_1_place_cutter: "現在放置一個切割機 並利用它把圓圈切成兩半! PS:
不論切割機的方向,它都會把圖形垂直地 切成兩半。"
2_2_place_trash: 切割機可能會堵塞並停止運作 !
用垃圾桶 把「目前」不需要的部分處理掉。
- 2_3_more_cutters:
- "做得好! 現在,再放2個切割機 來加速這個緩慢的生產線! PS:
+ 2_3_more_cutters: "做得好! 現在,再放2個切割機 來加速這個緩慢的生產線! PS:
使用0-9快捷鍵 可以更快選取建築 !"
- 3_1_rectangles:
- "現在來開採一些方形吧!蓋4座開採機 ,把形狀收集到基地。 PS:
+ 3_1_rectangles: "現在來開採一些方形吧!蓋4座開採機 ,把形狀收集到基地。 PS:
選擇輸送帶,按住SHIFT 並拖曳滑鼠可以計畫輸送帶位置!"
21_1_place_quad_painter: 放置一個上色機(四向) 並取得一些
圓形 、白色 和紅色 !
@@ -448,32 +443,32 @@ shopUpgrades:
buildings:
belt:
default:
- name: &belt 輸送帶
+ name: 輸送帶
description: 運送物品,按住並拖曳來放置多個。
miner:
default:
- name: &miner 開採機
- description: &miner_desc 在圖形礦脈或者顏色礦脈上放置開採機來開採。
+ name: 開採機
+ description: 在圖形礦脈或者顏色礦脈上放置開採機來開採。
chainable:
name: 鏈式開採機
- description: *miner_desc
+ description: 在圖形礦脈或者顏色礦脈上放置開採機來開採。
underground_belt:
default:
- name: &underground_belt 隧道
+ name: 隧道
description: 可以從其他輸送帶或建築底下方運送物品。
tier2:
name: 二級隧道
description: 可以從其他輸送帶或建築底下方運送物品。
cutter:
default:
- name: &cutter 切割機
+ name: 切割機
description: 將圖形從上到下切開並輸出。 如果你只需要其中一半,記得把另一半銷毀掉,否則切割機會停止運作!
quad:
name: 四分切割機
description: 將輸入的圖形切成四塊。 如果你只需要其中一塊,記得把其他的銷毀掉,否則切割機會停止運作!
rotater:
default:
- name: &rotator 旋轉機
+ name: 旋轉機
description: 將圖形順時針旋轉90度。
ccw:
name: 旋轉機(逆時針)
@@ -483,28 +478,29 @@ buildings:
description: 將圖形旋轉180度。
stacker:
default:
- name: &stacker 圖形拼貼機
+ name: 圖形拼貼機
description: 將輸入的圖形拼貼在一起。如果不能在同一圖層直接拼貼,右邊的圖形會被堆疊在左邊的圖形上面.
mixer:
default:
- name: &mixer 混色機
- description: 將兩個顏料加在一起 。
+ name: 混色機
+ description: Mixes two colors using additive blending.
painter:
default:
- name: &painter 上色機
- description: &painter_desc 將整個圖形塗上輸入的顏料。
+ name: 上色機
+ description: 將整個圖形塗上輸入的顏料。
double:
name: 雙倍上色機
description: 同時為兩個輸入的圖形上色,每次上色只消耗一份顏料。
quad:
name: 四分上色機
- description: 分別為圖形的四個部分上色。 只有從 有「真」訊號輸入 的顏料輸入端輸入的顏料會用來為相對的四分位上色。
+ description: 分別為圖形的四個部分上色。 只有從 有「真」訊號輸入
+ 的顏料輸入端輸入的顏料會用來為相對的四分位上色。
mirrored:
- name: *painter
- description: *painter_desc
+ name: 上色機
+ description: 將整個圖形塗上輸入的顏料。
trash:
default:
- name: &trash 垃圾桶
+ name: 垃圾桶
description: 從所有從四個方向輸入的物品銷毀。
hub:
deliver: 交付
@@ -513,14 +509,14 @@ buildings:
endOfDemo: 試玩結束
wire:
default:
- name: &wire 電線
- description: &wire_desc 傳輸訊號,訊號可以是圖形,顏料或布林值(0或1)。 不同顏色的電線無法互相連接。
+ name: 電線
+ description: 傳輸訊號,訊號可以是圖形,顏料或布林值(0或1)。 不同顏色的電線無法互相連接。
second:
- name: *wire
- description: *wire_desc
+ name: 電線
+ description: 傳輸訊號,訊號可以是圖形,顏料或布林值(0或1)。 不同顏色的電線無法互相連接。
balancer:
default:
- name: &balancer 平衡機
+ name: 平衡機
description: 多功能 —— 將單一輸入平均分配到所有輸出;及將多個輸入集合到一個輸出。
merger:
name: 合流機(右)
@@ -536,19 +532,19 @@ buildings:
description: 將底部的輸送帶輸入分流成兩個輸出(頂部和左側)。
storage:
default:
- name: &storage 倉庫
+ name: 倉庫
description: 儲存多餘的物品,有一定儲存上限。優先從左側輸出,右側輸出可以被用來作為溢流門。
wire_tunnel:
default:
- name: &wire_tunnel 電線交叉
+ name: 電線交叉
description: 電線彼此交叉但不互相連接。
constant_signal:
default:
- name: &constant_signal 固定訊號
+ name: 固定訊號
description: 輸出固定訊號,可以是形狀、顏料或布林值(1或0)。
lever:
default:
- name: &lever 信號切換器
+ name: 信號切換器
description: 切換「1(真值)」或「0(假值)」輸出,舉例來說,它可以操控物件分類器。
logic_gate:
default:
@@ -565,48 +561,49 @@ buildings:
description: 當其中一個輸入為「真」訊號時,輸出「1(真值)」。(「真」訊號代表:形狀訊號、顏色訊號或布林值為1)
transistor:
default:
- name: &transistor 電晶體
- description:
- &transistor_desc 如果基極(側面)的輸入訊號為「真」,則把射極(底部)輸入的真假值複製到集極(頂部)的輸出。
+ name: 電晶體
+ description: 如果基極(側面)的輸入訊號為「真」,則把射極(底部)輸入的真假值複製到集極(頂部)的輸出。
(「真」訊號代表:形狀訊號、顏色訊號或布林值為1)
mirrored:
- name: *transistor
- description: *transistor_desc
+ name: 電晶體
+ description: 如果基極(側面)的輸入訊號為「真」,則把射極(底部)輸入的真假值複製到集極(頂部)的輸出。
+ (「真」訊號代表:形狀訊號、顏色訊號或布林值為1)
filter:
default:
- name: &filter 物件分類器
- description: 它會依據電路層收到的訊號,從分類器底部輸入的物件如符合輸入信號的會輸出到頂部,不符合的會從右方(交叉標記)排出。 它也可以被布林值訊號控制。
+ name: 物件分類器
+ description: 它會依據電路層收到的訊號,從分類器底部輸入的物件如符合輸入信號的會輸出到頂部,不符合的會從右方(交叉標記)排出。
+ 它也可以被布林值訊號控制。
display:
default:
- name: &display 顯示器
+ name: 顯示器
description: 連接一個訊號到顯示器上顯示,訊號可以是形狀、顏料或布林值。
reader:
default:
- name: &reader 輸送帶讀取機
+ name: 輸送帶讀取機
description: 它會讀取輸送帶的平均流量,(電路層解鎖後)在電路層輸出最後讀取的物件。
analyzer:
default:
- name: &analyzer 圖形分析機
+ name: 圖形分析機
description: 分析輸入的圖形訊號中最底層右上角的圖形並輸出其形狀和顏色。
comparator:
default:
- name: &comparator 比較機
+ name: 比較機
description: 當兩個輸入訊號完全相等時,輸出布林值「1(真值)」。它可以比較形狀、物件或布林值。
virtual_processor:
default:
- name: &virtual_processor 虛擬切割機
+ name: 虛擬切割機
description: 虛擬地將圖形訊號從上到下切開。
rotater:
- name: &rotater 虛擬旋轉機
+ name: 虛擬旋轉機
description: 虛擬地將圖形訊號順時針旋轉。
unstacker:
- name: &unstacker 虛擬提取機
+ name: 虛擬提取機
description: 虛擬地提取圖形訊號最上層的圖形到右方輸出,剩下的圖形由左方輸出。
stacker:
- name: &stacker 虛擬堆疊機
+ name: 虛擬堆疊機
description: 虛擬地將輸入的圖形拼貼在一起。如果不能被直接拼貼,右邊的圖形會被疊在左邊的圖形上面。
painter:
- name: &painter 虛擬上色機
+ name: 虛擬上色機
description: 虛擬地將整個圖形塗上輸入的顏色。
item_producer:
default:
@@ -614,130 +611,102 @@ buildings:
description: 沙盒模式專有,將電路層的輸入轉化成實體層的輸出。
constant_producer:
default:
- name: &constant_producer 恆定生產機
+ name: 恆定生產機
description: 持續輸出圖形或顏料。
goal_acceptor:
default:
- name: &goal_acceptor 目標接收機
+ name: 目標接收機
description: 交付接收機所示圖形以完成目標。
block:
default:
- name: &block 障礙物
+ name: 障礙物
description: 用來禁止在障礙物處放置物件。
storyRewards:
reward_cutter_and_trash:
title: 切割圖形
- desc: >-
- 切割機 已解鎖!不論切割機的方向,它都會把圖形垂直地 切成兩半。
+ desc: 切割機 已解鎖!不論切割機的方向,它都會把圖形垂直地 切成兩半。
記得把不需要的部分處理掉,否則切割機會因為堵塞而停止運作 。
為此我給你準備了垃圾桶 ,它會把所有放進去的物品銷毀掉。
reward_rotater:
title: 順時針旋轉
- desc: >-
- 順時針旋轉機 已解鎖!
- 它會順時針旋轉輸入的圖形90度。
+ desc: 順時針旋轉機 已解鎖! 它會順時針旋轉輸入的圖形90度。
reward_painter:
title: 上色
- desc: >-
- 上色機 已解鎖!
+ desc: 上色機 已解鎖!
開採一些顏色,用上色機把顏色和圖形混合,就可以為圖形著色。 備註:如果你是色盲,設定中有色盲模式 可以選。
reward_mixer:
title: 混色
- desc: >-
- 混色器 已解鎖!
- 在此建築物中使用附加混合 結合兩種顏色!
+ desc: 混色器 已解鎖! 在此建築物中使用附加混合 結合兩種顏色!
reward_stacker:
title: 拼貼
- desc: >-
- 圖形拼貼機 已解鎖!
+ desc: 圖形拼貼機 已解鎖!
如果沒有重疊的部分,圖形拼貼機會嘗試把兩個輸入的圖形拼貼 在一起。如果有重疊的部分,右邊的輸入會被疊 到左邊的輸入上方!
reward_splitter:
title: 分流
- desc: >-
+ desc: |-
分流機 (平衡機 的變體)已解鎖!
- 它將單個輸送帶分流成兩個。
reward_tunnel:
title: 隧道
- desc: >-
- 隧道 已解鎖!
- 你現在可以在其他輸送帶或建築底下運送物品了!
+ desc: 隧道 已解鎖! 你現在可以在其他輸送帶或建築底下運送物品了!
reward_rotater_ccw:
title: 逆時針旋轉
- desc: >-
- 逆時針旋轉機 已解鎖!
- 它會逆時針旋轉輸入的圖形90度。
+ desc: 逆時針旋轉機 已解鎖! 它會逆時針旋轉輸入的圖形90度。
逆時針旋轉機是順時針旋轉機的變體。選擇「順時針旋轉機」並按「T」來切換變體 就能使用。
reward_miner_chainable:
title: 鏈式開採
- desc: >-
- 鏈式開採機 已解鎖!
- 它是開採機的一個變體。
+ desc: 鏈式開採機 已解鎖! 它是開採機的一個變體。
它可以將開採出來的資源傳遞 給其他的開採機,使得資源提取更加高效!
備註:工具列中舊的開採機已被取代。
reward_underground_belt_tier_2:
title: 二級隧道
- desc: >-
- 二級隧道 已解鎖!
- 這個隧道變體有更長的傳輸距離 。你還可以混用不同的隧道變體!
+ desc: 二級隧道 已解鎖! 這個隧道變體有更長的傳輸距離 。你還可以混用不同的隧道變體!
reward_cutter_quad:
title: 四分切割
- desc: >-
- 您已解鎖了切割機 的變體:四分切割機。
+ desc: 您已解鎖了切割機 的變體:四分切割機。
它允許您將直接切割出形狀的四個邊角 ,而不是分成兩半!
reward_painter_double:
title: 雙倍上色
- desc: >-
- 您已經解鎖了上色機 的變體:雙倍上色機。
+ desc: 您已經解鎖了上色機 的變體:雙倍上色機。
它的運作方式跟上色機類似,但一次能處理兩個形狀 ,而且只消耗一種顏色而不是兩種顏色!
reward_storage:
title: 倉庫
- desc: >-
- 倉庫 已解鎖:
- 它可以儲存多餘的物品,但有一定儲存上限。
+ desc: 倉庫 已解鎖: 它可以儲存多餘的物品,但有一定儲存上限。
物品優先從左側輸出,它也可以被用來作為溢流門 。
reward_freeplay:
title: 自由模式
- desc: >-
- 你做到了!你解鎖了自由模式 !現在圖形將會是隨機 生成的!
+ desc: 你做到了!你解鎖了自由模式 !現在圖形將會是隨機 生成的!
從現在開始,基地會有交付速率下限 的要求,因此我強烈建議你建造全自動化的生產線。
基地會在電路層輸出它需要的形狀,你只需要分析這些訊號,然後依照需求自動調整你的工廠。
reward_blueprints:
title: 藍圖
- desc: >-
- 你現在可以複製貼上 你的工廠某些區域。 選擇一個區域(按住 CTRL 並拖曳滑鼠),再按「C」來複製。
+ desc: 你現在可以複製貼上 你的工廠某些區域。 選擇一個區域(按住 CTRL
+ 並拖曳滑鼠),再按「C」來複製。
貼上藍圖不是免費的 ,你必須製造(剛才生成的)藍圖形狀 來給付。
no_reward:
title: 下一關
- desc: >-
- 這一關沒有獎勵,但是下一關會有!
+ desc: 這一關沒有獎勵,但是下一關會有!
備註:你生產過的所有 圖形都會被用來升級建築 。
no_reward_freeplay:
title: 下一關
- desc: >-
- 恭喜你!另外,我們已經計劃在單機版中加入更多內容!
+ desc: 恭喜你!另外,我們已經計劃在單機版中加入更多內容!
reward_balancer:
title: 平衡物流
- desc: >-
- 平衡機 已解鎖!
- 在大型工廠中,平衡機負責合流或分流 多個輸送帶上的物品。
+ desc: 平衡機 已解鎖! 在大型工廠中,平衡機負責合流或分流 多個輸送帶上的物品。
reward_merger:
title: 合流
- desc: >-
+ desc: |-
合流機 (平衡機 的變體)已解鎖!
- 它會將兩個輸送帶整合成一個。
reward_belt_reader:
title: 讀取輸送帶
- desc: >-
- 輸送帶讀取機 已解鎖! 它會讀取輸送帶的流量。
- 當你解鎖電路層時,它會變得超有用!
+ desc: 輸送帶讀取機 已解鎖! 它會讀取輸送帶的流量。 當你解鎖電路層時,它會變得超有用!
reward_rotater_180:
title: 180度旋轉
- desc: >-
- 180度旋轉機 已解鎖! - 它可以180度旋轉物件(驚喜!:D)
+ desc: 180度旋轉機 已解鎖! - 它可以180度旋轉物件(驚喜!:D)
reward_display:
title: 顯示器
- desc: >-
- 顯示器 已解鎖! - 在電路層上連接一個訊號到顯示器上顯示!
+ desc: 顯示器 已解鎖! - 在電路層上連接一個訊號到顯示器上顯示!
備註:你有注意到輸送帶讀取機跟倉庫都會輸出它們最後讀取的物件嗎? 試試看在顯示器上顯示它吧!"
reward_constant_signal:
title: 固定信號
@@ -747,25 +716,21 @@ storyRewards:
布林值 (1或0)。
reward_logic_gates:
title: 邏輯閘
- desc: >-
- 邏輯閘 已解鎖!你可能覺得無所謂,但其實邏輯閘其實超酷的!
- 有了這些邏輯閘,你可以運算 AND, OR, XOR 與 NOT 邏輯。
- 錦上添花,我再送你電晶體 !
+ desc: 邏輯閘 已解鎖!你可能覺得無所謂,但其實邏輯閘其實超酷的! 有了這些邏輯閘,你可以運算 AND,
+ OR, XOR 與 NOT 邏輯。 錦上添花,我再送你電晶體 !
reward_virtual_processing:
title: 虛擬操作
- desc: >-
- 虛擬操作 已解鎖!
- 我已為您帶來很多原有建築的虛擬版,有切割機、旋轉機、拼貼機還有更多電路層上的虛擬建築。
- 有了虛擬操作的你現在有三個繼續玩下去的方向:
- - 蓋一個自動生成任何基地要求圖形的自動工廠 (推薦!)。
- - 利用電路層蓋一些很酷建築
- - 繼續用原本的方式破關。
- 不論你的選擇是什麼,祝你玩得開心!
+ desc: I just gave a whole bunch of new buildings which allow you to
+ simulate the processing of shapes ! You can
+ now simulate a cutter, rotator, stacker and more on the wires layer!
+ With this you now have three options to continue the game: -
+ Build an automated machine to create any possible
+ shape requested by the HUB (I recommend to try it!). - Build
+ something cool with wires. - Continue to play
+ normally. Whatever you choose, remember to have fun!
reward_wires_painter_and_levers:
title: 電路層 & 四角上色機
- desc: >-
- 電路層 已解鎖!
- 它是一個獨立於實體層之外的存在,將帶給你更多玩法!
+ desc: 電路層 已解鎖! 它是一個獨立於實體層之外的存在,將帶給你更多玩法!
首先,我為你解鎖四角上色機 。記得先在電路層為想要上色的角落通電!
按E 切換至電路層。
備註:設定裡開啟提示 來啟動教學!"
@@ -943,15 +908,15 @@ keybindings:
menuOpenStats: 統計選單
toggleHud: 開關基地
toggleFPSInfo: 開關幀數與除錯信息
- belt: *belt
- underground_belt: *underground_belt
- miner: *miner
- cutter: *cutter
- rotater: *rotater
- stacker: *stacker
- mixer: *mixer
- painter: *painter
- trash: *trash
+ belt: 輸送帶
+ underground_belt: 隧道
+ miner: 開採機
+ cutter: 切割機
+ rotater: 虛擬旋轉機
+ stacker: 虛擬堆疊機
+ mixer: 混色機
+ painter: 虛擬上色機
+ trash: 垃圾桶
rotateWhilePlacing: 順時針旋轉
rotateInverseModifier: "修飾鍵: 改為逆時針旋轉"
cycleBuildingVariants: 選擇建築變體
@@ -972,29 +937,29 @@ keybindings:
pipette: 滴管
menuClose: 關閉選單
switchLayers: 切換實體層/電路層
- wire: *wire
- balancer: *balancer
- storage: *storage
- constant_signal: *constant_signal
+ wire: 電線
+ balancer: 平衡機
+ storage: 倉庫
+ constant_signal: 固定訊號
logic_gate: 邏輯閘
- lever: *lever
- filter: *filter
- wire_tunnel: *wire_tunnel
- display: *display
- reader: *reader
+ lever: 信號切換器
+ filter: 物件分類器
+ wire_tunnel: 電線交叉
+ display: 顯示器
+ reader: 輸送帶讀取機
virtual_processor: 虛擬處理
- transistor: *transistor
- analyzer: *analyzer
- comparator: *comparator
+ transistor: 電晶體
+ analyzer: 圖形分析機
+ comparator: 比較機
item_producer: 物品生產機(沙盒模式)
copyWireValue: 電路:複製數值於游標底下
rotateToUp: "轉動: 向上"
rotateToDown: "轉動: 向下"
rotateToRight: "轉動: 向右"
rotateToLeft: "轉動: 向左"
- constant_producer: *constant_producer
- goal_acceptor: *goal_acceptor
- block: *block
+ constant_producer: 恆定生產機
+ goal_acceptor: 目標接收機
+ block: 障礙物
massSelectClear: 清空輸送帶
showShapeTooltip: 顯示建築物輸出提示
about: