From 418dec7bd4d6c0abbef57445b1ed9aa562015b70 Mon Sep 17 00:00:00 2001 From: zoe Date: Sat, 7 May 2022 00:17:56 +0200 Subject: [PATCH] default values for tiles --- godot/native/libroutes_native.so | Bin 3967568 -> 3967568 bytes godot/world/StateApi.gd | 4 ++-- routes-native/Cargo.toml | 1 + routes-native/src/stateserver/world/tiles.rs | 14 ++++++++------ 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/godot/native/libroutes_native.so b/godot/native/libroutes_native.so index 84dcca8f6f4ed25f8e11fb95a3edf2929c322bd5..06496e7351b086a2e382cc49820d3a23add9a3ac 100755 GIT binary patch delta 25355 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 diff --git a/godot/world/StateApi.gd b/godot/world/StateApi.gd index 14b645a..33ef3f4 100644 --- a/godot/world/StateApi.gd +++ b/godot/world/StateApi.gd @@ -2,8 +2,8 @@ extends Node onready var server = $StateServer -export var xsize = 16 -export var ysize = 16 +export var xsize = 256 +export var ysize = 256 export var zsize = 16 var Tilemap = preload("res://world/Tilemap.tscn") diff --git a/routes-native/Cargo.toml b/routes-native/Cargo.toml index fd26335..631ac24 100644 --- a/routes-native/Cargo.toml +++ b/routes-native/Cargo.toml @@ -12,6 +12,7 @@ crate-type = ["cdylib"] gdnative = {version = "0.10", features = ["async"]} strum = { version = "0.24", features = ["derive"] } strum_macros = "0.24" +derive_builder = "0.11.2" # tokio = {version = "1.18.0", features = ["sync"]} # lazy_static = "1.4.0" # pathfinding = "3.0.12" diff --git a/routes-native/src/stateserver/world/tiles.rs b/routes-native/src/stateserver/world/tiles.rs index f716122..0e2cbfd 100644 --- a/routes-native/src/stateserver/world/tiles.rs +++ b/routes-native/src/stateserver/world/tiles.rs @@ -1,7 +1,7 @@ -use strum::{AsRefStr, EnumIter, FromRepr, EnumDiscriminants}; +use derive_builder::Builder; +use strum::{AsRefStr, EnumDiscriminants, EnumIter, FromRepr}; - -#[derive(Debug, Clone, AsRefStr, Copy, EnumIter, FromRepr, EnumDiscriminants)] +#[derive(AsRefStr, EnumIter, FromRepr, EnumDiscriminants, Clone)] #[repr(u16)] pub enum Tiletypes { Air, @@ -11,15 +11,17 @@ pub enum Tiletypes { Sand, } -#[derive(Debug, Clone, Copy)] +#[allow(dead_code)] +#[derive(Builder)] pub struct Tile { kind: Tiletypes, + #[builder(default = "true")] + is_support: bool, } impl Tile { pub fn new(kind: Tiletypes) -> Tile { - - Tile { kind } + TileBuilder::default().kind(kind).is_support(false).build().unwrap() } pub fn kind_to_string(&self) -> String { self.kind.as_ref().to_string()