From 8cdb8016dedf16caf1bf5ad0eeb9d8b13e00ca2a Mon Sep 17 00:00:00 2001 From: LLLL Colonq Date: Sun, 7 Jun 2026 20:03:10 -0400 Subject: Update --- 2026/framing/art/mrworld.aseprite | Bin 12122 -> 12732 bytes 2026/framing/src/assets/textures/mrworld.png | Bin 10491 -> 10312 bytes 2026/framing/src/game.rs | 38 ++++++++++++++++----------- 3 files changed, 23 insertions(+), 15 deletions(-) (limited to '2026/framing') diff --git a/2026/framing/art/mrworld.aseprite b/2026/framing/art/mrworld.aseprite index fb4a5f3..c072ae1 100644 Binary files a/2026/framing/art/mrworld.aseprite and b/2026/framing/art/mrworld.aseprite differ diff --git a/2026/framing/src/assets/textures/mrworld.png b/2026/framing/src/assets/textures/mrworld.png index 1f2d166..831cacb 100644 Binary files a/2026/framing/src/assets/textures/mrworld.png and b/2026/framing/src/assets/textures/mrworld.png differ diff --git a/2026/framing/src/game.rs b/2026/framing/src/game.rs index 5e84503..d379dad 100644 --- a/2026/framing/src/game.rs +++ b/2026/framing/src/game.rs @@ -150,7 +150,12 @@ fn draw_mr_armed( Ok(()) } +pub enum Mode { + Running, +} + pub struct Game { + mode: Mode, renderer: renderer::Renderer, lives: Lives, } @@ -158,6 +163,7 @@ pub struct Game { impl Game { pub fn new(ctx: &context::Context) -> Self { Self { + mode: Mode::Running, renderer: renderer::Renderer::new(ctx, assets::Assets::new), lives: Lives::new(), } @@ -167,27 +173,29 @@ impl Game { impl teleia::state::Game for Game { fn initialize_audio(&self, ctx: &context::Context, st: &state::State, actx: &audio::Context) -> HashMap { HashMap::from_iter(vec![ - ("footsteps".to_owned(), audio::Audio::new(&actx, include_bytes!("assets/audio/footsteps.wav"))), + ("footsteps".to_owned(), audio::Audio::new(actx, include_bytes!("assets/audio/footsteps.wav"))), ]) } fn update(&mut self, ctx: &context::Context, st: &mut state::State) -> Erm<()> { - if st.keys.new_a() { - log::info!("yo"); - self.lives.lose_life(ctx, st); - st.audio.play_sfx("footsteps"); - } Ok(()) } fn render(&mut self, ctx: &context::Context, st: &mut state::State) -> Erm<()> { - ctx.clear_color(glam::Vec4::ZERO); - ctx.clear(); - self.renderer.text_screen(ctx, st, glam::Vec2::new(0.0, 0.0), "hi"); - self.renderer.bind_uber_2d(ctx, st, UberFlags::TEXTURE_COLOR | 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_position_2d(ctx, st, glam::Vec2::ZERO, st.render_dims); - self.renderer.render_square(ctx, st); - self.lives.render(ctx, st, &mut self.renderer)?; + match self.mode { + Mode::Running => { + self.renderer.clear(ctx, st, glam::Vec4::ZERO); + self.renderer.text_screen(ctx, st, glam::Vec2::new(0.0, 0.0), "hi"); + self.renderer.bind_uber_2d(ctx, st, UberFlags::TEXTURE_COLOR | UberFlags::SPRITE | UberFlags::OPACITY); + 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_position_2d(ctx, st, glam::Vec2::ZERO, st.render_dims); + self.renderer.set_f32(ctx, st, "opacity", 0.5); + self.renderer.render_square(ctx, st); + self.lives.render(ctx, st, &mut self.renderer)?; + }, + } + Ok(()) + } + fn mouse_press(&mut self, _ctx: &context::Context, st: &mut state::State) -> Erm<()> { Ok(()) } } -- cgit v1.2.3