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 或 http://opensource.org/licenses/MIT)
根据您的选择。
贡献
除非您明确说明,否则您有意提交以供包含在本工作(根据Apache-2.0许可证定义)中的任何贡献,将如上双许可,不附加任何额外的条款或条件。
依赖项
约11MB
约221K SLoC