diff options
| author | LLLL Colonq <llll@colonq> | 2026-06-16 15:09:57 -0400 |
|---|---|---|
| committer | LLLL Colonq <llll@colonq> | 2026-06-16 15:09:57 -0400 |
| commit | 068f3b9dc0522b03af534479cfa300a720ae86fa (patch) | |
| tree | fd716225332835a2fe7f7cbc8b041d0eba70beed /2026/framing | |
| parent | 11f43a75bcf70b13b68ca1b722e75715652d6977 (diff) | |
Update
Diffstat (limited to '2026/framing')
| -rw-r--r-- | 2026/framing/Cargo.lock | 1 | ||||
| -rw-r--r-- | 2026/framing/art/mrworld.aseprite | bin | 12732 -> 45076 bytes | |||
| -rw-r--r-- | 2026/framing/dist/game_lib-62e6bf35091a4376.js (renamed from 2026/framing/dist/game_lib-8947a38430399c9a.js) | 14 | ||||
| -rw-r--r-- | 2026/framing/dist/game_lib-62e6bf35091a4376_bg.wasm (renamed from 2026/framing/dist/game_lib-8947a38430399c9a_bg.wasm) | bin | 3543295 -> 3536755 bytes | |||
| -rw-r--r-- | 2026/framing/dist/index.html | 6 | ||||
| -rw-r--r-- | 2026/framing/src/game.rs | 28 |
6 files changed, 32 insertions, 17 deletions
diff --git a/2026/framing/Cargo.lock b/2026/framing/Cargo.lock index 96a3e84..6b25c1b 100644 --- a/2026/framing/Cargo.lock +++ b/2026/framing/Cargo.lock @@ -934,6 +934,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc46dd3ec48fdd8e693a98d2b8bafae273a2d54c1de02a2a7e3d57d501f39677" dependencies = [ "mint", + "serde", ] [[package]] diff --git a/2026/framing/art/mrworld.aseprite b/2026/framing/art/mrworld.aseprite Binary files differindex c072ae1..69bc5a8 100644 --- a/2026/framing/art/mrworld.aseprite +++ b/2026/framing/art/mrworld.aseprite diff --git a/2026/framing/dist/game_lib-8947a38430399c9a.js b/2026/framing/dist/game_lib-62e6bf35091a4376.js index 9732dd7..c68088f 100644 --- a/2026/framing/dist/game_lib-8947a38430399c9a.js +++ b/2026/framing/dist/game_lib-62e6bf35091a4376.js @@ -1450,31 +1450,31 @@ function __wbg_get_imports() { const ret = false; return ret; }; - imports.wbg.__wbindgen_closure_wrapper3074 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper3065 = function(arg0, arg1, arg2) { const ret = makeMutClosure(arg0, arg1, 523, __wbg_adapter_43); return ret; }; - imports.wbg.__wbindgen_closure_wrapper3075 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper3066 = function(arg0, arg1, arg2) { const ret = makeMutClosure(arg0, arg1, 523, __wbg_adapter_43); return ret; }; - imports.wbg.__wbindgen_closure_wrapper3076 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper3067 = function(arg0, arg1, arg2) { const ret = makeMutClosure(arg0, arg1, 523, __wbg_adapter_43); return ret; }; - imports.wbg.__wbindgen_closure_wrapper3077 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper3068 = function(arg0, arg1, arg2) { const ret = makeMutClosure(arg0, arg1, 523, __wbg_adapter_43); return ret; }; - imports.wbg.__wbindgen_closure_wrapper3078 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper3069 = function(arg0, arg1, arg2) { const ret = makeMutClosure(arg0, arg1, 523, __wbg_adapter_43); return ret; }; - imports.wbg.__wbindgen_closure_wrapper3079 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper3070 = function(arg0, arg1, arg2) { const ret = makeMutClosure(arg0, arg1, 523, __wbg_adapter_54); return ret; }; - imports.wbg.__wbindgen_closure_wrapper3305 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper3296 = function(arg0, arg1, arg2) { const ret = makeMutClosure(arg0, arg1, 598, __wbg_adapter_57); return ret; }; diff --git a/2026/framing/dist/game_lib-8947a38430399c9a_bg.wasm b/2026/framing/dist/game_lib-62e6bf35091a4376_bg.wasm Binary files differindex d424373..0e28a03 100644 --- a/2026/framing/dist/game_lib-8947a38430399c9a_bg.wasm +++ b/2026/framing/dist/game_lib-62e6bf35091a4376_bg.wasm diff --git a/2026/framing/dist/index.html b/2026/framing/dist/index.html index ba1afc6..6d9a12d 100644 --- a/2026/framing/dist/index.html +++ b/2026/framing/dist/index.html @@ -6,8 +6,8 @@ <meta charset="UTF-8"> <script type="module"> -import init, * as bindings from '/framing/dist/game_lib-8947a38430399c9a.js'; -const wasm = await init({ module_or_path: '/framing/dist/game_lib-8947a38430399c9a_bg.wasm' }); +import init, * as bindings from '/framing/dist/game_lib-62e6bf35091a4376.js'; +const wasm = await init({ module_or_path: '/framing/dist/game_lib-62e6bf35091a4376_bg.wasm' }); window.wasmBindings = bindings; @@ -23,7 +23,7 @@ dispatchEvent(new CustomEvent("TrunkApplicationStarted", {detail: {wasm}})); <link rel="icon" href="data:;base64,iVBORw0KGgo="> <link rel="stylesheet" href="/framing/dist/index-1e3cd2ca0ba4d1ec.css" integrity="sha384-1q3UDTmLdOyf9/QxW+Imap//HWhTWNfvn7j2iwuUap3HSD6IOGG7pDS9VJMk7nKv"/> <title>TODO TITLE</title> - <link rel="modulepreload" href="/framing/dist/game_lib-8947a38430399c9a.js" crossorigin="anonymous" integrity="sha384-GmWye0MDObaMJ0Slq20KqKRRpxA1i4/j9xWbNbjDqFDD4BE47/HNFmWfRw3UIfnK"><link rel="modulepreload" href="/framing/dist/snippets/teleia-727bf4351691f1c8/src/helpers.js" crossorigin="anonymous" integrity="sha384-HhtEY2WfGmhyPUSRWKZvqsRxYsdT/DLEdFUqWyDZt6G6lrNHmE1zMlw4BJ3RycRd"><link rel="preload" href="/framing/dist/game_lib-8947a38430399c9a_bg.wasm" crossorigin="anonymous" integrity="sha384-4M/GBflGE2lZc63NU+i+NE4ZPNIde+L84WeHScEMaHUeV8OyHvtfhTDKAtaZh597" as="fetch" type="application/wasm"></head> + <link rel="modulepreload" href="/framing/dist/game_lib-62e6bf35091a4376.js" crossorigin="anonymous" integrity="sha384-S1KY7Qk066hXL+J+Cz93n5XryauMt7DLP0Q3rQ8A3KkLu+wkFUlVXUp6FK1ZRE10"><link rel="modulepreload" href="/framing/dist/snippets/teleia-727bf4351691f1c8/src/helpers.js" crossorigin="anonymous" integrity="sha384-HhtEY2WfGmhyPUSRWKZvqsRxYsdT/DLEdFUqWyDZt6G6lrNHmE1zMlw4BJ3RycRd"><link rel="preload" href="/framing/dist/game_lib-62e6bf35091a4376_bg.wasm" crossorigin="anonymous" integrity="sha384-u9lGl9wvDd+Iyeq4ubFCWIsIAw+N6TZgqfYkGlHNazsvIe43vmp0qAPvfrsvgJsy" as="fetch" type="application/wasm"></head> <body> <script type="module"> window.addEventListener("TrunkApplicationStarted", async (event) => { diff --git a/2026/framing/src/game.rs b/2026/framing/src/game.rs index 4e81e16..f27b6c1 100644 --- a/2026/framing/src/game.rs +++ b/2026/framing/src/game.rs @@ -146,11 +146,13 @@ fn draw_mr_armed( } pub enum Mode { - Running, + BetweenGames, + InGame, } pub struct Game { mode: Mode, + mode_started: Tick, renderer: renderer::Renderer<assets::Assets>, lives: Lives, } @@ -158,7 +160,8 @@ pub struct Game { impl Game { pub fn new(ctx: &context::Context, st: &mut state::State) -> Self { Self { - mode: Mode::Running, + mode: Mode::BetweenGames, + mode_started: 0, renderer: renderer::Renderer::new(ctx, st, assets::Assets::new), lives: Lives::new(), } @@ -175,19 +178,30 @@ impl teleia::state::Game for Game { Ok(()) } fn render(&mut self, ctx: &context::Context, st: &mut state::State) -> Erm<()> { + let t = st.tick - self.mode_started; match self.mode { - Mode::Running => { + Mode::BetweenGames => { self.renderer.begin_frame(ctx, st, Vec4::ZERO); - self.renderer.text_screen(ctx, st, Vec2::new(0.0, 0.0), "hi").render(); - self.renderer.bind_uber_2d(ctx, st, UberFlags::TEXTURE_COLOR | UberFlags::TEXTURE_FLIP | UberFlags::SPRITE | UberFlags::OPACITY); + self.renderer.bind_uber_2d(ctx, st, UberFlags::TEXTURE_COLOR | UberFlags::TEXTURE_FLIP | UberFlags::SPRITE); self.renderer.bind_texture(ctx, st, assets::Texture::Mrworld); - self.renderer.set_texture_offset(ctx, st, 2, 1, ((st.tick / 15) % 2) as i32, 0); + self.renderer.set_texture_offset(ctx, st, 8, 1, (t % 2) as i32, 0); self.renderer.set_position_2d(ctx, st, Vec2::ZERO, st.render_dims); self.renderer.set_vec2(ctx, st, "texture_flip", glam::Vec2::new(0.0, 1.0)); - self.renderer.set_f32(ctx, st, "opacity", 0.5); self.renderer.render_square(ctx, st); self.lives.render(ctx, st, &mut self.renderer)?; }, + Mode::InGame => { + self.renderer.begin_frame(ctx, st, Vec4::ZERO); + if t < 18 { + self.renderer.bind_uber_2d(ctx, st, UberFlags::TEXTURE_COLOR | UberFlags::TEXTURE_FLIP | UberFlags::SPRITE | UberFlags::OPACITY); + self.renderer.bind_texture(ctx, st, assets::Texture::Mrworld); + self.renderer.set_texture_offset(ctx, st, 8, 1, 2 + (t % 6) as i32, 0); + self.renderer.set_position_2d(ctx, st, Vec2::ZERO, st.render_dims); + self.renderer.set_vec2(ctx, st, "texture_flip", glam::Vec2::new(0.0, 1.0)); + self.renderer.render_square(ctx, st); + } + self.lives.render(ctx, st, &mut self.renderer)?; + } } Ok(()) } |
