Implement non-multiplayer parts of custom games

This commit is contained in:
NG (Graham) committed 2026-03-12 22:44:04 -04:00
1 parent 6ce456a739
commit af04c4093c
34 files changed
+1751 -78

No files matched your search

+3 -3
View File
@@ -4,7 +4,7 @@ use oj_rc_core::persist::user::intercom::IntercomWebServiceUserMessage;
pub struct IntercomHandler {
listener: IntercomListener<IntercomWebServiceUserMessage>,
user: std::sync::Weak<Box<dyn oj_rc_core::persist::user::User<()> + Send + Sync>>,
emitter: polariton_server::events::EventEmitter<()>,
emitter: polariton_server::events::WeakEventEmitter<()>,
}
impl IntercomHandler {
@@ -16,14 +16,14 @@ impl IntercomHandler {
Self {
listener,
user: std::sync::Arc::downgrade(user),
emitter: emitter.to_owned(),
emitter: emitter.to_owned().downgrade(),
}
}
async fn run_loop(
listener: IntercomListener<IntercomWebServiceUserMessage>,
user: std::sync::Weak<Box<dyn oj_rc_core::persist::user::User<()> + Send + Sync>>,
emitter: polariton_server::events::EventEmitter<()>
emitter: polariton_server::events::WeakEventEmitter<()>
) {
use futures::StreamExt;
let mut listener = listener.listen().await;