summary refs log tree commit diff
path: root/src/system/plugin.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/system/plugin.rs')
-rw-r--r--src/system/plugin.rs26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/system/plugin.rs b/src/system/plugin.rs
index 8e6066f..043b4d0 100644
--- a/src/system/plugin.rs
+++ b/src/system/plugin.rs
@@ -1,21 +1,19 @@
-mod autoproxy;
-mod edit;
-// mod ghost;
-mod prefixes;
-// mod reproxy;
-
-use std::{collections::HashMap, sync::Arc};
-
 use async_trait::async_trait;
-
-use edit::Edit;
+use std::{collections::HashMap, sync::Arc};
 use twilight_model::{channel::Message, id::{marker::ChannelMarker, Id}};
 
-use super::log::Logger;
 use crate::system::types::{System, Response};
+use super::log::Logger;
+
+mod autoproxy;
+mod edit;
+mod prefixes;
+mod reproxy;
 
-pub use prefixes::ProxyPrefixes;
-pub use autoproxy::Autoproxy;
+use edit::Edit;
+use prefixes::ProxyPrefixes;
+use autoproxy::Autoproxy;
+use reproxy::Reproxy;
 
 #[derive(Copy, Clone, Debug)]
 pub enum PluginCommand {
@@ -37,6 +35,8 @@ pub trait SeancePlugin<'system> {
 pub fn get_plugins<'system>() -> (Vec<Arc<Box<dyn SeancePlugin<'system>>>>, HashMap<&'static str, (PluginCommand, Arc<Box<dyn SeancePlugin<'system>>>)>) {
     let all_plugins : Vec<Arc<Box<dyn SeancePlugin<'system>>>> = vec![
         Arc::new(Box::new(ProxyPrefixes::new())),
+        // Before autoproxy because it should only recognize explicitly prefixed messages
+        Arc::new(Box::new(Reproxy::new())), 
         Arc::new(Box::new(Autoproxy::new())),
         Arc::new(Box::new(Edit::new())),
     ];