main: add some more useful /commands

This commit is contained in:
2026-06-02 11:29:04 +02:00
parent 326817733a
commit 5889d67dcb
+39 -2
View File
@@ -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;