fantasy-craft 0.0.2

A 2D / 2.5D game engine built on top of Macroquad and Hecs for the Foxvoid Ecosystem
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use crate::prelude::ComponentLoader;

#[derive(Debug)]
pub struct FontComponent(pub String);

pub struct FontComponentLoader;

impl ComponentLoader for FontComponentLoader {
    fn load(&self, ctx: &mut crate::prelude::Context, entity: hecs::Entity, data: &serde_json::Value) {
        let loader_data: String = serde_json::from_value(data.clone())
            .unwrap_or_default();

        let component = FontComponent(loader_data);

        ctx.world.insert_one(entity, component).expect("Failed to insert FontComponent");
    }
}