From 1d7cc04cbf5251bf298f5e87ed1744e36241d4b9 Mon Sep 17 00:00:00 2001 From: Corwin Date: Sat, 6 May 2023 19:11:39 +0100 Subject: [PATCH] more colours --- agb/gfx/square.aseprite | Bin 562 -> 735 bytes agb/src/no_game.rs | 15 ++++++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/agb/gfx/square.aseprite b/agb/gfx/square.aseprite index e2cf234ee837e2f4276825db54afabb2ca42b25c..75f9581ea96b78a12e9dd331ab13114004aab32f 100644 GIT binary patch literal 735 zcmcJNPbkAt0LS0{Wk)VTX|Gm7lBHx6c9oN>3*o{+;b13Rv|=eY`E%l=QLH&QX^nEw z2nT;xPB!&xQuG^pK5tW&q8z-}`}BVA^?u*a`*UX%BC&24PO20ZA;bXft1zYqMKSe1 z$~J#D(~exKgMd<6k<3LF#9h)am-2JORWKujGVT?ON1(A0fG1BcFmx1$fzS@j-k9)W z>llWoHla#BXhx&(aW1I)Dg`r{LwI$$2v5y7xNB(kY{%eXVg#=2*F*n;8>V`@;Z2(r zF4a{+BY6&Y!XfCcl5ox241=CVIA1MbXa5+iXlPeM?8UCnUFv zG^#aK3PJ2p!wV^l(7^=}EKneyaFU57lR(mla_J;#D>yq8M3Ly~^AC2zd)v&wFCRUryrvI`s^PYKC bcY38gU|780GJlh8%}S-xC36;QFy{LJK8@8V literal 562 zcmcJN!7Bt&9LIl)X&t#Jr+rD{WM&d=wx*Pebvp z7Z>HAIPC`AOH%s;(@O!;azj?3T_w%ObHi$eN#H5*_Bqky=%)esIEJ_RG zKkAs%KVGdU)gqvc8COwcUED2wyHY&;i zuWi757{ZBc1}+Vi;Gyfn>UaQeR!?DhYXp|&Y#nleCiCAF4VT~s=;Mw!)+pnPET(AU zh#+>T;e`}N=olBRu|R=*!bv8UOae(GDq)gTBm6BCBrc=VE3*sA>EXjtwJpt~sFisZ R%e#T^zhB!$NA_F2^KarWjduV5 diff --git a/agb/src/no_game.rs b/agb/src/no_game.rs index 87ca2cb5..d87412e9 100644 --- a/agb/src/no_game.rs +++ b/agb/src/no_game.rs @@ -14,7 +14,7 @@ use crate::{ interrupt::VBlank, }; -const SQUARE: &Sprite = &include_aseprite!("gfx/square.aseprite").sprites()[0]; +const SQUARES: &[Sprite] = include_aseprite!("gfx/square.aseprite").sprites(); fn letters() -> Vec>>> { vec![ @@ -136,7 +136,10 @@ impl Renderable for &[T] { pub fn no_game(mut gba: crate::Gba) -> ! { let (mut oam, mut loader) = gba.display.object.get_unmanaged(); - let square = loader.get_vram_sprite(SQUARE); + let squares: Vec<_> = SQUARES + .iter() + .map(|sprite| loader.get_vram_sprite(sprite)) + .collect(); let mut letter_positons = Vec::new(); @@ -177,13 +180,14 @@ pub fn no_game(mut gba: crate::Gba) -> ! { let mut time: Num = num!(0.); let time_delta: Num = num!(0.025); - let (_background, mut vram) = gba.display.video.tiled0(); + // let (_background, mut vram) = gba.display.video.tiled0(); - vram.set_background_palettes(&[Palette16::new([u16::MAX; 16])]); + // vram.set_background_palettes(&[Palette16::new([u16::MAX; 16])]); let vblank = VBlank::get(); loop { + let mut rng = crate::rng::RandomNumberGenerator::new(); time += time_delta; time %= 1; let letters: Vec = letter_positons @@ -194,7 +198,8 @@ pub fn no_game(mut gba: crate::Gba) -> ! { *position + Vector2D::new(time.sin(), time.cos()) * 10 }) .map(|pos| { - let mut obj = ObjectUnmanaged::new(square.clone()); + let mut obj = + ObjectUnmanaged::new(squares[rng.gen() as usize % squares.len()].clone()); obj.show().set_position(pos.floor()); obj })