1 个不稳定版本
0.1.0 | 2023年3月23日 |
---|
在可视化类别中排名280
275KB
528 行(不包括注释)
room_visual_ext
这是为Rust bots(Rust游戏API)编写的Rust语言实现的Screeps:World附加可视化工具。
安装
在我们的Cargo.toml
中添加依赖项
[dependencies]
room_visual_ext = "0.1.0"
您也可以直接将src/lib.rs
文件复制到您的项目中(可能已重命名),并直接使用它或进行修改。
使用方法
- 创建一个
RoomVisualExt
对象,就像创建一个RoomVisual
对象一样
use room_visual_ext::RoomVisualExt;
// room_name: RoomName
let room_visual_ext = RoomVisualExt::new(room_name);
- 使用其
structure
方法在指定的坐标和透明度下绘制给定类型的结构。使用透明度1.0进行不透明可视化,使用更小的、正的值进行部分透明。在部分透明可视化中会出现小的视觉伪影。
room_visual_ext.structure(42.0, 42.0, StructureType::Spawn, 1.0);
room_visual_ext.structure_roomxy(
unsafe { RoomXY::unchecked_new(42u8, 42u8) },
StructureType::Rampart,
1.0
);
- 您也可以直接从
RoomVisualExt
对象中调用任何RoomVisual
方法。 - 由于它就像
RoomVisual
一样无效,因此您不能在下一个游戏周期中使用该对象。 - 放置道路时,道路会自动连接。为了得到游戏中的结果,请先放置在容器上的道路,然后放置在下面的结构之后的壁垒。
示例
以下是展示所有支持的结构在透明度1.0和0.5下的可视化示例。为了比较,我们展示了它们在游戏中的实际外观。
您可以在examples/showcase.rs
文件中找到用于生成这些可视化的代码。
项目历史
最初,这些可视化工具的JS版本发布在Screeps Slack上,并由不同的人维护(没有任何特定的许可证)。如今,您可以在screepers仓库中找到它。大多数颜色和结构的形状值来自screepers的RoomVisual。
然而,这个版本有一些显著的变化
- 实现了提取器,
- 用方形建造墙壁和壁垒以改善可见性,
- 透明的壁垒(基础透明度的50%)以查看下面的内容,
- 用能量/矿物质填充的结构,使其看起来像活动房间的结构,
- 较小的终端和核弹以改善可见性(与screepers的RoomVisual中的存储一致),
- 道路的即时连接,
- 各种视觉修复,使其更接近原始版本,
- 没有动画位置、对话框或资源徽章。
依赖关系
~2.2–3.5MB
~62K SLoC