aboutsummaryrefslogtreecommitdiff
path: root/src/payload/mod.rs
blob: dd064f27a62824ba72284e121f858c2e3083b142 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
use serde::{Deserialize, Serialize};
use uuid::Uuid;

pub mod components;

#[derive(Serialize, Deserialize, Default, Clone, Debug)]
pub struct DirworldEntityPayload { 
    pub id: Uuid,
    pub transform: components::Transform,
    pub name: Option<components::Name>,
    pub actor: Option<components::Actor>,
    pub voice: Option<components::Voice>,
    pub rigidbody: Option<components::Rigidbody>,
    pub mesh_collider: Option<components::MeshCollider>,
    pub scripts: Option<Vec<components::Script>>,
    pub relationships: Option<components::Relationships>,
    pub pickup: Option<components::Pickup>,
}

impl DirworldEntityPayload {
    pub fn new() -> Self {
        Self {
            id: Uuid::new_v4(),
            ..Default::default()
        }
    }
}