mirror of
https://github.com/Noratrieb/game-wip-dontplay.git
synced 2026-01-14 11:45:01 +01:00
more
This commit is contained in:
parent
ea398555ac
commit
fa77644b0d
11 changed files with 15 additions and 2811 deletions
9
Cargo.lock
generated
9
Cargo.lock
generated
|
|
@ -2,13 +2,6 @@
|
||||||
# It is not intended for manual editing.
|
# It is not intended for manual editing.
|
||||||
version = 3
|
version = 3
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "egui-inspect"
|
|
||||||
version = "0.1.0"
|
|
||||||
dependencies = [
|
|
||||||
"egui-inspect-derive",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "egui-inspect-derive"
|
name = "egui-inspect-derive"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
|
|
@ -21,7 +14,7 @@ dependencies = [
|
||||||
name = "mantle-diver"
|
name = "mantle-diver"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"egui-inspect",
|
"egui-inspect-derive",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,8 @@ edition = "2021"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
|
||||||
[dependencies.egui-inspect]
|
[dependencies.egui-inspect-derive]
|
||||||
path = "./egui_inspect"
|
path = "./egui-inspect-derive"
|
||||||
|
|
||||||
#[profile.dev]
|
#[profile.dev]
|
||||||
#incremental = false # Buggy on latest rustc nightly, keeps ICEing
|
#incremental = false # Buggy on latest rustc nightly, keeps ICEing
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ use quote::quote;
|
||||||
#[proc_macro_derive(Inspect)]
|
#[proc_macro_derive(Inspect)]
|
||||||
pub fn derive_inspect(input: TokenStream) -> TokenStream {
|
pub fn derive_inspect(input: TokenStream) -> TokenStream {
|
||||||
let expanded = quote! {
|
let expanded = quote! {
|
||||||
impl ::egui_inspect::Inspect for GameState {
|
impl Inspect for GameState {
|
||||||
fn inspect_mut(&mut self) {
|
fn inspect_mut(&mut self) {
|
||||||
output_mut(|o| o.copied_text = format!(""));
|
output_mut(|o| o.copied_text = format!(""));
|
||||||
output_mut(|o| o.copied_text = format!("{:?}", self.tile_db));
|
output_mut(|o| o.copied_text = format!("{:?}", self.tile_db));
|
||||||
1
egui_inspect/.gitignore
vendored
1
egui_inspect/.gitignore
vendored
|
|
@ -1 +0,0 @@
|
||||||
/target
|
|
||||||
2679
egui_inspect/Cargo.lock
generated
2679
egui_inspect/Cargo.lock
generated
File diff suppressed because it is too large
Load diff
|
|
@ -1,16 +0,0 @@
|
||||||
[package]
|
|
||||||
name = "egui-inspect"
|
|
||||||
version = "0.1.0"
|
|
||||||
edition = "2021"
|
|
||||||
|
|
||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
||||||
|
|
||||||
[features]
|
|
||||||
derive = ["egui-inspect-derive"]
|
|
||||||
default = ["derive"]
|
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
egui-inspect-derive = { path = "egui-inspect-derive", optional = true}
|
|
||||||
|
|
||||||
[workspace]
|
|
||||||
members = ["egui-inspect-derive", "testbed"]
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
#[cfg(feature = "derive")]
|
|
||||||
pub use egui_inspect_derive as derive;
|
|
||||||
|
|
||||||
pub trait Inspect {
|
|
||||||
fn inspect_mut(&mut self) {
|
|
||||||
loop {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl Inspect for () {}
|
|
||||||
|
|
@ -1,14 +0,0 @@
|
||||||
[package]
|
|
||||||
name = "testbed"
|
|
||||||
version = "0.1.0"
|
|
||||||
edition = "2021"
|
|
||||||
|
|
||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
||||||
|
|
||||||
[dependencies.egui-inspect]
|
|
||||||
path = ".."
|
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
rand = "0.8.5"
|
|
||||||
eframe = "0.21.3"
|
|
||||||
egui = "0.21.0"
|
|
||||||
|
|
@ -1,78 +0,0 @@
|
||||||
use std::fmt::Debug;
|
|
||||||
use std::marker::PhantomData;
|
|
||||||
use eframe::{egui, App, Frame, NativeOptions};
|
|
||||||
use egui_inspect::inspect;
|
|
||||||
use egui_inspect::{derive::Inspect, Inspect};
|
|
||||||
use rand::{distributions::Alphanumeric, prelude::SliceRandom, thread_rng, Rng};
|
|
||||||
struct Testbed {
|
|
||||||
entities: Vec<GameEntity>,
|
|
||||||
some_string: String,
|
|
||||||
}
|
|
||||||
#[derive(Inspect, Debug)]
|
|
||||||
struct GameEntity {
|
|
||||||
name: String,
|
|
||||||
position: Vector2,
|
|
||||||
hp: i32,
|
|
||||||
godmode: bool,
|
|
||||||
dir: Dir,
|
|
||||||
#[opaque]
|
|
||||||
#[allow(dead_code)]
|
|
||||||
something_opaque: MyOpaque,
|
|
||||||
#[inspect_with(custom_inspect)]
|
|
||||||
custom: MyOpaque,
|
|
||||||
tuple: TupleStruct,
|
|
||||||
generic: Generic<String>,
|
|
||||||
phantom: PhantomData<NonInspect>,
|
|
||||||
unit: (),
|
|
||||||
}
|
|
||||||
struct NonInspect;
|
|
||||||
#[derive(Inspect, Debug)]
|
|
||||||
struct TupleStruct(u32);
|
|
||||||
#[derive(Default, Debug)]
|
|
||||||
struct MyOpaque {
|
|
||||||
field1: i32,
|
|
||||||
field2: String,
|
|
||||||
field3: f32,
|
|
||||||
}
|
|
||||||
#[derive(Inspect, Debug)]
|
|
||||||
struct Generic<T: Inspect> {
|
|
||||||
field: T,
|
|
||||||
}
|
|
||||||
fn custom_inspect(o: &mut MyOpaque, ui: &mut egui::Ui, _id_source: u64) {
|
|
||||||
loop {}
|
|
||||||
}
|
|
||||||
#[derive(Inspect, Clone, Copy, PartialEq, Eq, Debug)]
|
|
||||||
enum Dir {
|
|
||||||
North,
|
|
||||||
East,
|
|
||||||
South,
|
|
||||||
West,
|
|
||||||
}
|
|
||||||
impl GameEntity {
|
|
||||||
fn rand() -> Self {
|
|
||||||
loop {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#[derive(Inspect, Debug)]
|
|
||||||
struct Vector2 {
|
|
||||||
x: f32,
|
|
||||||
y: f32,
|
|
||||||
}
|
|
||||||
impl Vector2 {
|
|
||||||
fn rand() -> Self {
|
|
||||||
loop {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl Default for Testbed {
|
|
||||||
fn default() -> Self {
|
|
||||||
loop {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
impl App for Testbed {
|
|
||||||
fn update(&mut self, ctx: &egui::Context, frame: &mut Frame) {
|
|
||||||
loop {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
fn main() {
|
|
||||||
loop {}
|
|
||||||
}
|
|
||||||
14
src/main.rs
14
src/main.rs
|
|
@ -1,5 +1,3 @@
|
||||||
use egui_inspect::Inspect;
|
|
||||||
|
|
||||||
extern crate alloc;
|
extern crate alloc;
|
||||||
mod tiles;
|
mod tiles;
|
||||||
|
|
||||||
|
|
@ -12,7 +10,7 @@ impl App {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
use egui_inspect::derive::Inspect;
|
use egui_inspect_derive::Inspect;
|
||||||
|
|
||||||
pub(crate) struct WorldPos {}
|
pub(crate) struct WorldPos {}
|
||||||
|
|
||||||
|
|
@ -45,6 +43,16 @@ fn show(f: &dyn FnMut()) {}
|
||||||
pub struct TileDb {
|
pub struct TileDb {
|
||||||
unknown_bg: tiles::TileDef,
|
unknown_bg: tiles::TileDef,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
pub trait Inspect {
|
||||||
|
fn inspect_mut(&mut self) {
|
||||||
|
loop {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl Inspect for () {}
|
||||||
|
|
||||||
|
|
||||||
impl Inspect for TileDb {
|
impl Inspect for TileDb {
|
||||||
fn inspect_mut(&mut self) {
|
fn inspect_mut(&mut self) {
|
||||||
let _a = &mut self.unknown_bg;
|
let _a = &mut self.unknown_bg;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue