1个不稳定版本
| 0.1.0 | 2021年10月8日 |
|---|
#6 in #18xx
740KB
17K SLoC
Rusty Train
构建18xx地图和识别最优火车路线的图形用户界面。
示例用法
使用 cargo run --release 启动Rusty Train

使用 Ctrl+O 加载位于 ./examples/output/1867_bc.game 的示例游戏 1867_bc

按 r 查找公司的最优路线。选择 大西部铁路 并点击 确定

该公司拥有5列火车和8列火车,且不获得右侧列出的四个奖励。输入这些详细信息并点击 确定

在搜索最优路线时,地图会禁用并变暗

找到最优路线后,它们将绘制在地图上(以绿色和红色突出显示),并在窗口标题中显示净收入

使用箭头键(<左>、<右>、<上>、<下>)循环访问单个路线;火车名称和路线收入显示在窗口标题中

按 d 显示股息支付

按 Esc 或 Return 返回默认用户界面模式。
用户指南
有四种不同的用户界面 模式
- 默认:选择和旋转图块,切换到其他模式。
- 替换图块:放置和升级图块。
- 编辑代币:将代币放置在图块上或从中移除。
- 查找路线:识别公司的最优路线和收入。
每种模式对不同的键组合做出响应(请参阅下文各节)。
还有一些全局键在任何模式下都执行相同操作
| 键 | 操作 |
|---|---|
q、Q |
退出 |
s、S |
保存当前地图的截图 |
Ctrl+n、Ctrl+N |
开始新游戏 |
Ctrl+o, Ctrl+O |
从磁盘加载已保存的游戏 |
Ctrl+s, Ctrl+S |
将当前游戏保存到磁盘 |
+ |
放大 |
- |
缩小 |
默认模式
使用此模式选择瓦片或六边形空间,并切换到其他模式以放置瓦片、放置标记和选择最佳路线。
| 键 | 操作 |
|---|---|
e, E |
切换到替换瓦片模式,选择任何瓦片 |
u, U |
切换到替换瓦片模式,选择一个升级瓦片 |
t, T |
切换到编辑标记模式 |
r, R |
切换到查找路线模式 |
<左> |
选择当前六边形的左侧六边形 |
<右> |
选择当前六边形的右侧六边形 |
<上> |
选择当前六边形的上方六边形 |
<下> |
选择当前六边形的下方六边形 |
| 任意鼠标按钮 | 选择鼠标指针下的六边形 |
,, < |
逆时针旋转当前瓦片 |
., > |
顺时针旋转当前瓦片 |
<退格键> |
移除当前瓦片 |
<删除键> |
移除当前瓦片 |
p, P |
更改游戏阶段 |
替换瓦片模式
使用此模式放置和升级瓦片。
| 键 | 操作 |
|---|---|
Esc键 |
返回到默认模式,忽略任何编辑 |
返回键 |
返回到默认模式,保存任何编辑 |
o, O |
显示原始瓦片(如果有) |
<上> |
选择下一个可用的瓦片 |
<下> |
选择上一个可用的瓦片 |
,, < |
逆时针旋转所选瓦片 |
., > |
顺时针旋转所选瓦片 |
编辑标记模式
使用此模式放置和从瓦片中移除标记。
| 键 | 操作 |
|---|---|
Esc键 |
返回到默认模式,忽略任何编辑 |
返回键 |
返回到默认模式,保存任何编辑 |
<左> |
选择活动瓦片上的上一个标记 |
<右> |
选择活动瓦片上的下一个标记 |
<上> |
将当前标记(如果有)替换为下一个可用的标记 |
<下> |
将当前标记(如果有)替换为上一个可用的标记 |
0 |
移除当前标记 |
<删除键> |
移除当前标记 |
<退格键> |
移除当前标记 |
查找路线模式
使用此模式选择一家公司并找到该公司的最佳路线和收入。
用户将被提示选择在地图上放置了标记的公司之一。然后,用户将被提示选择此公司的可用火车以及任何相关奖金。
这将启动路线查找过程;根据潜在路线的数量,这可能需要几分钟才能完成。
然后将最佳路线绘制在地图上,并显示最佳收入。用户可以使用箭头键循环查看各个路线。
| 键 | 操作 |
|---|---|
Esc, Return |
返回到默认模式 |
<Left>, <Up> |
显示上一个火车路线 |
<Right>, <Down> |
显示下一个火车路线 |
d, D |
显示股息支付 |
支持的游戏
以下游戏实现了地图、瓦片和火车
- 1830:铁路与强盗巨商
- 1861:俄罗斯帝国的铁路
- 1867:加拿大的铁路
- 1889:四国铁道历史(四国1889)
许可
根据以下任一许可
- Apache许可证,版本2.0(LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证(LICENSE-MIT 或 https://open-source.org.cn/licenses/MIT)
根据您的选择。
贡献
除非您明确说明,否则您有意提交以供包含在本工作(根据Apache-2.0许可证定义)中的任何贡献,将如上双许可,不附加任何额外的条款或条件。
依赖项
约11MB
约221K SLoC