From 3e3f9d016e09493a37ae5935cecddb5a315350a6 Mon Sep 17 00:00:00 2001 From: LawnCable Date: Fri, 15 Apr 2022 08:37:02 +0200 Subject: more progress --- readme.md | 51 +++++- src/lib.rs | 4 +- src/lowlevel/data.rs | 28 +++ src/lowlevel/image.rs | 28 +++ src/lowlevel/layer.rs | 17 ++ src/lowlevel/macros.rs | 38 ++++ src/lowlevel/map.rs | 99 ++++++++--- src/lowlevel/mod.rs | 10 ++ src/lowlevel/property.rs | 278 +++++++++++++++++++++++------ src/lowlevel/tileset.rs | 443 +++++++++++++++++++++++++++++++++++++++++++++++ src/main.rs | 34 ++++ 11 files changed, 950 insertions(+), 80 deletions(-) create mode 100644 src/lowlevel/data.rs create mode 100644 src/lowlevel/image.rs create mode 100644 src/lowlevel/layer.rs create mode 100644 src/lowlevel/macros.rs create mode 100644 src/lowlevel/tileset.rs create mode 100644 src/main.rs diff --git a/readme.md b/readme.md index 6453a5e..0eacb82 100644 --- a/readme.md +++ b/readme.md @@ -17,4 +17,53 @@ After that is done there could be more high level methods/struct that provide mo Wishlist (things that would be nice): - serializing from rust types back to tmx/tsx (this needs including another xml lib, because roxmltree if fast because it is read-only) -- parsing from and serializing back to the tiled json based formats +- parsing from and serializing back to the tiled JSON based formats + +## Thanks to + +- https://docs.rs/tmx/0.3.1/ - Inspiration for data types. + +## Notes: + +Move: version="1.4" tiledversion="1.4.3" to some kind of file-wrapper type? Because it is also present in tilesets? Or just add those two to tileset and inherit it if its inline/embedded. + + +## progress + +| element | rust representation | parse from XML | tests for parse | +| -------------------- | ------------------- | -------------- | --------------- | +| `` | partial | - | - | +| `` | - | - | - | +| `.` | - | - | - | +| `.` | - | - | - | +| `` | partial | - | - | +| `.` | complete | complete | complete | +| `.` | complete | complete | complete | +| `.` | partial | - | - | +| `.` | complete | - | - | +| `..` | complete | complete | - | +| `.` | complete | complete | complete | +| `.` | partial | - | - | +| `..` | complete | - | - | +| `.` | complete | - | - | +| `.` | partial | - | - | +| `..` | partial | - | - | +| `...` | complete | - | - | +| `...` | partial | - | - | +| `....Wang ID` | - | - | - | +| `` | - | - | - | +| `.` | - | - | - | +| `.` | - | - | - | +| `.` | - | - | - | +| `` | - | - | - | +| `.` | - | - | - | +| `.` | - | - | - | +| `.` | - | - | - | +| `.` | - | - | - | +| `.` | - | - | - | +| `.` | - | - | - | +| `` | - | - | - | +| `` | - | - | - | +| `` | complete | yes | yes | +| `.` | complete | yes | yes | +| `