From 189133c1fe81996a0047746d31663488298599a0 Mon Sep 17 00:00:00 2001 From: James Lambert Date: Wed, 22 Nov 2023 15:38:02 -0700 Subject: [PATCH] Finish up credits screen --- assets/images/credits_icons.png | Bin 0 -> 802 bytes assets/images/patreon_qr.png | Bin 0 -> 929 bytes assets/images/youtube_qr.png | Bin 0 -> 929 bytes assets/materials/ui.skm.yaml | 30 ++++++++++++++++++++++++++ src/levels/credits.c | 37 ++++++++++++++++++++++++++++++-- 5 files changed, 65 insertions(+), 2 deletions(-) create mode 100644 assets/images/credits_icons.png create mode 100644 assets/images/patreon_qr.png create mode 100644 assets/images/youtube_qr.png diff --git a/assets/images/credits_icons.png b/assets/images/credits_icons.png new file mode 100644 index 0000000000000000000000000000000000000000..bf1e90a3ea3e360004b9f9661b24ee04426f8165 GIT binary patch literal 802 zcmV+-1Ks?IP)EX>4Tx02q~xP_aq_K@fclVgxNLObW3`k;1}&29iD)ID`miR7kAc>|POadpYhd zX#T*D@l(oAamjo(X;uL0g1qxmq{1!v$@F1xP5w%LY+b^h zdLwUGXNA9$_gp+Tzn-$qQItI1OP_g$05`Zrh&slYV}ck3n#6>i9y(|f`(+(LBV!ft z)mR{hA;yS2{->pXNY^n{6RO2=2FEG!gWU6HY;{*os@gKunf|)~dmitD?cF_^^HTHA zKWqR%JxK6B7h-z=0007FOGiWi|A&vvzW@LL32;bRa{vG?BLDy{BLR4&KXw2B00(qQ zO+^Ri3lWa!$1&y8(E1#SmXqJ1V}&&3e*%XsVE}22@(~ALm(2?+5hAjrl$V{b4@foGewW_IU!=ks=PKC;^lJ{y6|I`Dx$*7)RA&+QSQg zx5Dd|gHdOjdE}InMCR}rvc(Qb@|aBqlI37hql;8k=Z2wWO;ZQZa00NR0%!@V)-1N) zNfZWgNE~b5ROwieoqZuAcw$SAa|H^ z49=LM>*C415xwIQJ`M}1_^n|(A<-+q{W@;6Mr6wY5Ug;+DF*_JZNw#dQqE|Y4Q6qL znP2^P7t5B&TS5?7YW)oNg8L(J!=KI;RQE9ew<*;=HpOL+%9baw`40Md$;ho0uPTi= z&I4XHZ4F08HI<4wUshob)=bdxc`oN|)-$O%BDqbI1As~1FFr3MK7328Uh(_~7ZOuG gOiBPHfKdbZ0Jsqe6^D&GR{#J207*qoM6N<$g4{<(J^%m! literal 0 HcmV?d00001 diff --git a/assets/images/patreon_qr.png b/assets/images/patreon_qr.png new file mode 100644 index 0000000000000000000000000000000000000000..66eb51eb80bf63da793420c15c3ffb71fa452b96 GIT binary patch literal 929 zcmV;S177@zP)EX>4Tx04R}tkvmAkKpe)uri!nMgH=QvGE^rEz7R*PLJ=y2TA@`3lS^OFq#;Rh zaTHt&4n7vE4ld5RI=Bjg-~+_f#YxdcO8j41Xc6PVaX-Gh@8j+}K&TX$X0?m~nr@r% zXhck=R>ihgbfF)8=)kzlEMrcRV(=Va_we!cF3hvM&;2>N)wIO`pGZ8*4AUmwAfDc| z4bJ<-L6(zM;&b9rlP*a7$aSU0Z=AC(3p_JuCgStNL1Ho6#7YyhoT(8{5rmKiJZ|?2iGxh#{0Ewn@uqx?NUH||924YJ`L;(K){{a7>y{D4^000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2j>eG76}^hJS8~*000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0004aNklj>M%bm5;;(Y z91CbUc~S<{p0h6JP(`3VD>^Fokc8b0vcdZuaRLR_A+wMZh62iY{a%CV>`u22xI8%J z0__8+)X+E96C89P2UN4EDL{3f_fUD#DnJBcKO)BGcScHhsfY;25em#DnzDDHHi`__ z`o3>jzp);Hdd8y)kZ}dwFK8fcUDW}D8s%CIAcg1y+021jW@_r8s!%0cgMb`ha5DH= zuTZE~#FjFeiKfc4%RehmI1N!cD&tk>Q>;g1Uhd#gsZm^DGHv64YPpJ_NUkxP2tjKa zcF;5N$`IH{=%`ng4wVK4{lR7{00000NkvXXu0mjf DAh?)p literal 0 HcmV?d00001 diff --git a/assets/images/youtube_qr.png b/assets/images/youtube_qr.png new file mode 100644 index 0000000000000000000000000000000000000000..f3c0d06f67abfbd71e9635e5c2c0b4c805988860 GIT binary patch literal 929 zcmV;S177@zP)EX>4Tx04R}tkvmAkKpe)uri!nMgH=QvGE^rEz7R*PLJ=y2TA@`3lS^OFq#;Rh zaTHt&4n7vE4ld5RI=Bjg-~+_f#YxdcO8j41Xc6PVaX-Gh@8j+}K&TX$X0?m~nr@r% zXhck=R>ihgbfF)8=)kzlEMrcRV(=Va_we!cF3hvM&;2>N)wIO`pGZ8*4AUmwAfDc| z4bJ<-L6(zM;&b9rlP*a7$aSU0Z=AC(3p_JuCgStNL1Ho6#7YyhoT(8{5rmKiJZ|?2iGxh#{0Ewn@uqx?NUH||924YJ`L;(K){{a7>y{D4^000SaNLh0L z04^f{04^f|c%?sf00007bV*G`2j>eG76}{}Uw{k%000?uMObu0Z*6U5Zgc=ca%Ew3 zWn>_CX>@2HM@dakSAh-}0004aNkl?aSx}n?G_h#n*+TFYN{#jSJhh5Y!Lzf^UI@W}H*bn_+{k|UdbL_mr z4JS`3lod2H*IP;*cVqRMrNJ>)8o;b);p`mf22Qv?1}MubtKYnxi0n5ypen)jxIb}$ zI@n#S3|EzK35e<+;XkUNdUe4Ot68X-I3X>mYk?Gu)o)EfkBstCYD#7%lFq5r9I16= zJ5;%$5Hn7&bk%i)ca-HQ&x{ku5w`wFfePyc<|-(~opgXHpVEb1DJ+^)2`7TNMC%43 zU!#VJk*bmjmE2T*YQO9S>`*t9g_#KzOaUslNuW@!(OE^>aP#ZrT2)Q$E!CKC=YVO> zn?$I-9~^L};_fNx2`Y^U)1HbM$s9#w4a}a3>&5Qn=o^WVJ(Ma#rx8q*Vz`&0R?4)V zjpxWXYbsXZXRX?uA*`vG={h16N{6hJum2s#`uO<+`WX{Ih*Ei!00000NkvXXu0mjf D_6DF$ literal 0 HcmV?d00001 diff --git a/assets/materials/ui.skm.yaml b/assets/materials/ui.skm.yaml index f045862..b508be8 100644 --- a/assets/materials/ui.skm.yaml +++ b/assets/materials/ui.skm.yaml @@ -100,6 +100,36 @@ materials: b: 255 a: 255 + patreon_qr: + gDPSetTile: + filename: "../images/patreon_qr.png" + siz: G_IM_SIZ_4b + fmt: G_IM_FMT_I + gDPSetCombineMode: + color: ["0", "0", "0", ENVIRONMENT] + alpha: [TEXEL0, "0", ENVIRONMENT, "0"] + gDPSetRenderMode: G_RM_XLU_SURF + + youtube_qr: + gDPSetTile: + filename: "../images/youtube_qr.png" + siz: G_IM_SIZ_4b + fmt: G_IM_FMT_I + gDPSetCombineMode: + color: ["0", "0", "0", ENVIRONMENT] + alpha: [TEXEL0, "0", ENVIRONMENT, "0"] + gDPSetRenderMode: G_RM_XLU_SURF + + credits_icons: + gDPSetTile: + filename: "../images/credits_icons.png" + siz: G_IM_SIZ_4b + fmt: G_IM_FMT_I + gDPSetCombineMode: + color: ["0", "0", "0", ENVIRONMENT] + alpha: [TEXEL0, "0", ENVIRONMENT, "0"] + gDPSetRenderMode: G_RM_XLU_SURF + button_icons: gDPSetTile: filename: "../images/button_icons.png" diff --git a/src/levels/credits.c b/src/levels/credits.c index a9eee32..03ccad4 100644 --- a/src/levels/credits.c +++ b/src/levels/credits.c @@ -53,12 +53,12 @@ void creditsRender(void* data, struct RenderState* renderState, struct GraphicsT gSPDisplayList(renderState->dl++, ui_material_list[DEFAULT_UI_INDEX]); struct FontRenderer* renderer = stackMalloc(sizeof(struct FontRenderer)); - fontRendererLayout(renderer, &gLiberationMonoFont, "THANK YOU FOR PARTICIPATING\nIN THIS\nENRICHMENT CENTER ACTIVITY!!\n\nIt is still in development.\nFollow the project on YouTube.\nSupport the project on Patreon.", SCREEN_WD); + fontRendererLayout(renderer, &gLiberationMonoFont, "THANK YOU FOR PARTICIPATING\nIN THIS\nENRICHMENT CENTER ACTIVITY!!\n\nIt is still in development.", SCREEN_WD); renderState->dl = fontRendererBuildGfx( renderer, gLiberationMonoImages, 35, - 48, + 36, &color, renderState->dl ); @@ -99,5 +99,38 @@ void creditsRender(void* data, struct RenderState* renderState, struct GraphicsT renderState->dl ); + fontRendererLayout(renderer, &gLiberationMonoFont, "Subscribe", SCREEN_WD); + renderState->dl = fontRendererBuildGfx( + renderer, + gLiberationMonoImages, + 70, + 120, + &color, + renderState->dl + ); + + + fontRendererLayout(renderer, &gLiberationMonoFont, "Support", SCREEN_WD); + renderState->dl = fontRendererBuildGfx( + renderer, + gLiberationMonoImages, + 182, + 120, + &color, + renderState->dl + ); + + gSPDisplayList(renderState->dl++, ui_material_list[YOUTUBE_QR_INDEX]); + gSPTextureRectangle(renderState->dl++, 70 << 2, 138 << 2, (70 + 64) << 2, (138 + 64) << 2, G_TX_RENDERTILE, 0, 0, 1 << 9, 1 << 9); + + gSPDisplayList(renderState->dl++, ui_material_list[PATREON_QR_INDEX]); + gSPTextureRectangle(renderState->dl++, 182 << 2, 138 << 2, (182 + 64) << 2, (138 + 64) << 2, G_TX_RENDERTILE, 0, 0, 1 << 9, 1 << 9); + + gSPDisplayList(renderState->dl++, ui_material_list[CREDITS_ICONS_INDEX]); + gSPTextureRectangle(renderState->dl++, 30 << 2, 130 << 2, (30 + 32) << 2, (130 + 32) << 2, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10); + + gSPDisplayList(renderState->dl++, ui_material_list[CREDITS_ICONS_INDEX]); + gSPTextureRectangle(renderState->dl++, 148 << 2, 130 << 2, (148 + 32) << 2, (130 + 32) << 2, G_TX_RENDERTILE, 32 << 5, 0, 1 << 10, 1 << 10); + stackMallocFree(renderer); }