1 个不稳定版本
| 0.1.0 | 2021年10月8日 |
|---|
#9 在 #18xx
2MB
288 行
Rusty Train
用于构建18xx地图和识别最优列车路线的图形用户界面。
示例用法
使用 cargo run --release 启动Rusty Train

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

按 r 以找到公司的最优路线。选择 大西部铁路 并点击 OK

该公司拥有5列火车和8列火车,并且不接收右侧列出的四个奖金中的任何一个。输入这些详细信息并点击 OK

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

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

使用箭头键 (<Left>、<Right>、<Up>、<Down>) 在各个路线之间循环;火车名称和路线收入显示在窗口标题中

按 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:加拿大的铁路
许可证
许可协议为以下之一
- 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许可证定义,您有意提交以包含在作品中的任何贡献,将按照上述方式双重许可,不附加任何额外条款或条件。
依赖项
~23–33MB
~603K SLoC