79 lines
3.0 KiB
Markdown
79 lines
3.0 KiB
Markdown
# DR game/DR rs 0.3.x 更新日志
|
|
|
|
## 20240522 DR rs 0.3.4
|
|
|
|
我希望今晚可以睡觉 ( 指 0 点前完事 )
|
|
|
|
- 为 `SR1Ship_rs`(`PySR1Ship`)
|
|
- 添加了 `fn disconnected_parts(&self) -> Vec<(Vec<(PySR1PartType, PySR1PartData)>, PySR1Connections)>` 方法
|
|
- 用于获取所有断开链接的部件
|
|
- 每一个列表是一组断开链接的部件
|
|
- 去除了 `#[getter] fn get_connection`
|
|
- 添加了 `fn connections(&self) -> PySR1Connections` 方法
|
|
- 用于获取所有连接点信息
|
|
- 为 `Connection`
|
|
- 添加了一个 `pub fn as_raw_data(&self) -> RawConnectionData` 方法
|
|
- 用于获取连接的原始数据
|
|
- 也是用来方便外面包装
|
|
- 添加了 `RawConnectionData`
|
|
- `pub type RawConnectionData = (i32, i32, IdType, IdType)`
|
|
- 添加了 `SR1Connection_rs`(`PySR1Connections`)
|
|
- 用来存一堆连接点信息
|
|
- 同时提供一些好用的 API
|
|
- `fn search_connection_by_parent(&self, parent_id: IdType) -> Vec<RawConnectionData>`
|
|
- 用于搜索所有以 `parent_id` 为父节点的连接
|
|
- `fn search_by_child(&self, child_id: IdType) -> Vec<RawConnectionData>`
|
|
- 用于搜索所有以 `child_id` 为子节点的连接
|
|
- `fn search_by_id(&self, any_id: IdType) -> Vec<RawConnectionData>`
|
|
- 用于搜索所有包含 `any_id` 的连接
|
|
- `fn search_by_both_id(&self, parent_id: IdType, child_id: IdType) -> Vec<RawConnectionData>`
|
|
- 用于搜索所有同时包含 `parent_id` 和 `child_id` 的连接
|
|
- 保险起见, 我还是返回一个 Vec
|
|
- 万一真有 双/多 连接呢
|
|
- `fn get_raw_data(&self) -> Vec<RawConnectionData>`
|
|
- 获取所有连接的原始数据
|
|
- 万一你确实需要吭哧吭哧去处理原始数据呢
|
|
|
|
> 现在 0:10 了, 我去睡觉了
|
|
|
|
## 20240516 DR rs 0.3.3
|
|
|
|
然后就又开始熬夜更新了
|
|
|
|
- 修复了上个版本在 xml 解析里加的 Enum 导致的解析失败问题
|
|
|
|
## 20240515 DR rs 0.3.1/2
|
|
|
|
好家伙, 上次更新还是在上次, 这次更新已经是在这次了
|
|
|
|
- 修复了因为 GitHub Copilot 自动补全补错了内容导致的解析错误问题
|
|
|
|
```diff title="mods/dr_game/Difficult_Rocket_rs/src/src/sr1_parse/data_structure/ship.rs"
|
|
- #[serde(rename = "@inflation")]
|
|
+ #[serde(rename = "@inflate")]
|
|
pub inflate: Option<i8>,
|
|
- #[serde(rename = "@inflationTarget")]
|
|
+ #[serde(rename = "@inflation")]
|
|
pub inflation: Option<f64>,
|
|
```
|
|
|
|
- 去除了因为 raiper 版本更新所以导致没法过编译的 `dr_physics/simulation.rs`
|
|
- 好欸, raiper 更新了
|
|
|
|
- 更新了一些别的依赖的版本
|
|
|
|
## 20231224 DR rs 0.3.0
|
|
|
|
感谢 [@InfyniteHeap](https://github.com/InfyniteHeap) 进行的重构工作
|
|
|
|
- 重构了 Rust 部分的文件结构
|
|
- 去除了早期的 `serde-xml-rs` 和 `xml-rs` 依赖
|
|
- 这是因为之前 `quick-xml` 在解析 `Option<Vec<T>>` 有问题
|
|
- 现在问题解决了
|
|
- 以及 `quick-xml` 的解析方式更符合规范 ( 或者说更明确 )
|
|
|
|
- 将所有的 logging 去除
|
|
- 改为 `lib-not-dr.loggers`
|
|
|
|
- 现在飞船保存测试的命令叫作 `save`
|