summaryrefslogtreecommitdiff
path: root/crates/renderer/src/overlay.rs
diff options
context:
space:
mode:
authorLLLL Colonq <llll@colonq>2025-11-06 18:01:09 -0500
committerLLLL Colonq <llll@colonq>2025-11-06 18:01:09 -0500
commit0e8b1dded85602aa2dc15f27c3c89800e4c3402b (patch)
treec54f665b7dca44972a243d3f70b80d1de39b926b /crates/renderer/src/overlay.rs
parentaff8a500d2807187cdb6c3fa3d58206fad5dd9a1 (diff)
Update
Diffstat (limited to 'crates/renderer/src/overlay.rs')
-rw-r--r--crates/renderer/src/overlay.rs13
1 files changed, 10 insertions, 3 deletions
diff --git a/crates/renderer/src/overlay.rs b/crates/renderer/src/overlay.rs
index 38e75c5..bd0a24d 100644
--- a/crates/renderer/src/overlay.rs
+++ b/crates/renderer/src/overlay.rs
@@ -3,6 +3,7 @@ pub mod shader;
pub mod drawing;
pub mod automata;
pub mod irish;
+pub mod tcg;
pub mod loopback;
use teleia::*;
@@ -78,7 +79,8 @@ impl State {
sexp!((overlay irish save)),
]),
fig_binary: fig::BinaryClient::new("shiro:32051", false, &[
- b"background frame"
+ b"background frame",
+ b"overlay tcg generate",
]),
tracking_eyes: (1.0, 1.0),
tracking_mouth: 0.0,
@@ -169,6 +171,9 @@ pub trait Overlay {
fn handle(&mut self, ctx: &context::Context, st: &mut state::State, ost: &mut State, msg: fig::SexpMessage) -> Erm<()> {
Ok(())
}
+ fn handle_binary(&mut self, ctx: &context::Context, st: &mut state::State, ost: &mut State, msg: fig::BinaryMessage) -> Erm<()> {
+ Ok(())
+ }
fn render(&mut self, ctx: &context::Context, st: &mut state::State, ost: &mut State) -> Erm<()> {
Ok(())
}
@@ -235,8 +240,10 @@ impl teleia::state::Game for Overlays {
log::warn!("failed to parse frame");
}
},
- ev => {
- log::info!("unhandled event: {:?}", ev);
+ _ => {
+ for ov in self.overlays.iter_mut() {
+ ov.handle_binary(ctx, st, &mut self.state, msg.clone())?;
+ }
},
}
}