Imported serde::Deserialize to avoid spelling it out frequently.

This commit is contained in:
DaniD3v
2024-08-24 23:11:13 +02:00
parent a0260acd8b
commit 03fcdc2e32
2 changed files with 10 additions and 8 deletions

View File

@@ -1,26 +1,27 @@
use std::collections::HashMap;
use lazy_static::lazy_static;
use serde::Deserialize;
use crate::level::WorldError;
const BLOCKS_JSON: &str = include_str!("../../assets/blocks.json");
#[derive(serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[derive(Deserialize, Debug, Clone, PartialEq, Eq)]
pub struct BlockDefinition {
#[serde(rename = "type")]
kind: String,
block_set_type: Option<String>,
}
#[derive(serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[derive(Deserialize, Debug, Clone, PartialEq, Eq)]
pub struct BlockState {
default: Option<bool>,
id: i64,
properties: Option<HashMap<String, String>>,
}
#[derive(serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[derive(Deserialize, Debug, Clone, PartialEq, Eq)]
pub struct BlocksElement {
definition: BlockDefinition,
properties: Option<HashMap<String, Vec<String>>>,

View File

@@ -1,6 +1,7 @@
use std::collections::HashMap;
use fastnbt::LongArray;
use serde::{Deserialize, Serialize};
use crate::{
coordinates::{ChunkCoordinates, ChunkRelativeBlockCoordinates},
@@ -14,27 +15,27 @@ pub struct ChunkData {
pub heightmaps: ChunkHeightmaps,
}
#[derive(serde::Deserialize, Debug, Clone)]
#[derive(Deserialize, Debug, Clone)]
#[serde(rename_all = "PascalCase")]
struct PaletteEntry {
name: String,
properties: Option<HashMap<String, String>>,
}
#[derive(serde::Deserialize, Debug, Clone)]
#[derive(Deserialize, Debug, Clone)]
struct ChunkSectionBlockStates {
data: Option<LongArray>,
palette: Vec<PaletteEntry>,
}
#[derive(serde::Deserialize, serde::Serialize, Debug, Clone)]
#[derive(Deserialize, Serialize, Debug, Clone)]
#[serde(rename_all = "UPPERCASE")]
pub struct ChunkHeightmaps {
motion_blocking: LongArray,
world_surface: LongArray,
}
#[derive(serde::Deserialize, Debug)]
#[derive(Deserialize, Debug)]
#[allow(dead_code)]
struct ChunkSection {
#[serde(rename = "Y")]
@@ -42,7 +43,7 @@ struct ChunkSection {
block_states: Option<ChunkSectionBlockStates>,
}
#[derive(serde::Deserialize, Debug)]
#[derive(Deserialize, Debug)]
#[allow(dead_code)]
struct ChunkNbt {
#[serde(rename = "DataVersion")]