minetestworld

This crate lets you read minetest worlds in a low-level way.

Build Crates.io Documentation dependency status

Usage

As this crate returns async-std based futures, you have to specify that along the dependencies: toml [dependencies] minetestworld = "0.3" async-std = "1"

Here is an example that reads all nodes of a specific map block: ```rs use minetestworld::{World, Position}; use async_std::task;

fn main() { let blockpos = Position { x: -13, y: -8, z: 2, }; task::blockon(async { let world = World::new("TestWorld"); let mapdata = world.getmap().await.unwrap(); for (pos, node) in mapdata.itermapblocknodes(blockpos).await.unwrap() { println!("{pos:?}, {node:?}"); } }); } ```

See https://github.com/UgnilJoZ/minetest-worldmapper for a real-world example.