use crate::parser::{entity::Entity, RawMetadata};
#[derive(Debug, Default)]
pub struct ExportedEntity {
entity_id: u32,
race: String,
entity_type: String,
child_id: u32,
}
impl ExportedEntity {
pub fn set_id(&mut self, id: u32) {
self.entity_id = id;
}
pub fn set_race(&mut self, race: &str) {
self.race = race.into();
}
pub fn set_entity_type(&mut self, entity_type: &str) {
self.entity_type = entity_type.into();
}
pub fn set_child_id(&mut self, child_id: u32) {
self.child_id = child_id;
}
#[must_use]
#[allow(dead_code)]
pub fn into_entity(self, legend_metadata: &RawMetadata) -> Entity {
Entity::new(
format!("{}-{}{}", self.race, self.entity_type, self.entity_id).as_str(),
legend_metadata,
)
}
}