From 905c6b649521296bba609db5b5c9a39008d34325 Mon Sep 17 00:00:00 2001 From: troido Date: Thu, 16 Apr 2020 10:54:23 +0200 Subject: add visit whitelist to homeportal, save and dedup its data even though it is loaded from template --- src/components/interactable.rs | 2 +- src/components/mod.rs | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) (limited to 'src/components') diff --git a/src/components/interactable.rs b/src/components/interactable.rs index 3432f33..f1f0508 100644 --- a/src/components/interactable.rs +++ b/src/components/interactable.rs @@ -65,7 +65,7 @@ impl Interactable { } Visit(_) => { if let Some(txt) = arg { - txt.starts_with("visit") + txt.starts_with("visit ") || txt.starts_with("disallow ") || txt.starts_with("allow ") || txt.starts_with("whitelist") } else { false } diff --git a/src/components/mod.rs b/src/components/mod.rs index ae50edc..176f97a 100644 --- a/src/components/mod.rs +++ b/src/components/mod.rs @@ -29,7 +29,7 @@ pub use ear::{ Ear }; -use std::collections::HashMap; +use std::collections::{HashMap, HashSet}; use specs::{ DenseVecStorage, @@ -229,9 +229,13 @@ pub struct Build { #[derive(Component, Debug, Clone)] pub struct Whitelist{ - pub allowed: HashMap + pub allowed: HashMap> } - +#[derive(Component, Debug, Clone)] +pub struct Dedup { + pub id: String, + pub priority: i64 +} -- cgit