main: add some more useful /commands
This commit is contained in:
+39
-2
@@ -349,14 +349,51 @@ impl App {
|
|||||||
self.scene.insert_conversation(ConversationEntry::SystemMessage("Invalid episode number format. Use /episode [number]".into()));
|
self.scene.insert_conversation(ConversationEntry::SystemMessage("Invalid episode number format. Use /episode [number]".into()));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/reset" => {
|
"/reload" => {
|
||||||
self.scene = Scene::default();
|
self.load();
|
||||||
|
self.reload_mixxx_playlist();
|
||||||
|
},
|
||||||
|
"/timer" => {
|
||||||
|
if let Ok(minutes) = arg.trim().parse::<i64>() {
|
||||||
|
self.end_time = Utc::now() + Duration::minutes(minutes);
|
||||||
|
self.scene.insert_conversation(ConversationEntry::SystemMessage(format!("Set timer for {} minutes.", minutes)));
|
||||||
|
} else {
|
||||||
|
self.scene.insert_conversation(ConversationEntry::SystemMessage("Invalid timer format. Use /timer [minutes]".into()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
"/clear" => {
|
||||||
|
match arg.trim() {
|
||||||
|
"playlist" => {
|
||||||
|
self.scene.direction.current_playlist.clear();
|
||||||
|
self.scene.insert_conversation(ConversationEntry::SystemMessage("Cleared current playlist.".into()));
|
||||||
|
return;
|
||||||
|
},
|
||||||
|
"artifacts" => {
|
||||||
|
self.scene.direction.artifacts.clear();
|
||||||
|
self.scene.insert_conversation(ConversationEntry::SystemMessage("Cleared artifacts.".into()));
|
||||||
|
return;
|
||||||
|
},
|
||||||
|
"all" => {
|
||||||
|
self.scene = Scene::default();
|
||||||
|
self.scene.insert_conversation(ConversationEntry::SystemMessage("Cleared all data.".into()));
|
||||||
|
},
|
||||||
|
"conversation" => {
|
||||||
|
self.scene.conversation.clear();
|
||||||
|
self.scene.insert_conversation(ConversationEntry::SystemMessage("Cleared conversation.".into()));
|
||||||
|
},
|
||||||
|
_ => {
|
||||||
|
self.scene.insert_conversation(ConversationEntry::SystemMessage("Unknown clear command. Use /clear [playlist|artifacts|all]".into()));
|
||||||
|
}
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
},
|
},
|
||||||
"/narrative" => {
|
"/narrative" => {
|
||||||
self.scene.direction.narrative = arg.to_string();
|
self.scene.direction.narrative = arg.to_string();
|
||||||
self.scene.insert_conversation(ConversationEntry::SystemMessage(format!("Updated stage direction: {}", self.scene.direction.narrative)));
|
self.scene.insert_conversation(ConversationEntry::SystemMessage(format!("Updated stage direction: {}", self.scene.direction.narrative)));
|
||||||
},
|
},
|
||||||
|
"/event" => {
|
||||||
|
self.scene.insert_conversation(ConversationEntry::StageDirection(arg.to_string()));
|
||||||
|
}
|
||||||
_ => {
|
_ => {
|
||||||
self.scene.insert_conversation(ConversationEntry::SystemMessage("Unknown command. Available commands: /bandcamp [url], /episode [number], /narrative [text], /reset".into()));
|
self.scene.insert_conversation(ConversationEntry::SystemMessage("Unknown command. Available commands: /bandcamp [url], /episode [number], /narrative [text], /reset".into()));
|
||||||
return;
|
return;
|
||||||
|
|||||||
Reference in New Issue
Block a user