diff options
| author | LLLL Colonq <llll@colonq> | 2025-11-06 18:01:09 -0500 |
|---|---|---|
| committer | LLLL Colonq <llll@colonq> | 2025-11-06 18:01:09 -0500 |
| commit | 0e8b1dded85602aa2dc15f27c3c89800e4c3402b (patch) | |
| tree | c54f665b7dca44972a243d3f70b80d1de39b926b /crates/renderer/src/overlay.rs | |
| parent | aff8a500d2807187cdb6c3fa3d58206fad5dd9a1 (diff) | |
Update
Diffstat (limited to 'crates/renderer/src/overlay.rs')
| -rw-r--r-- | crates/renderer/src/overlay.rs | 13 |
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())?; + } }, } } |
