init python: #don't do a halo infinite moment #hard code the header & footer #then iterate the list_credits list_credits = { _('Coded By:'): [ '/dev/non', "[[Untitled]] Anon", 'Schizodev Anon', 'Starmanon', 'Nutbuster Anon', 'Inhumanon', 'Spigot the Bear Anon' ], _('Written by:'): [ 'AVGN Anon', 'Coomer Anon', '/trash/ Anon', 'FreemAnon', 'Ccp Anon', 'Kokichi Anon', 'Alex Anon', 'Punished Anon', 'Finn Anon' ], _('Story by:'): [ 'AVGN Anon', 'Coomer Anon', 'Alex Anon', 'Singularity Anon', 'Tombstone Anon' ], _('Production Designer'): [ 'Alex Anon' ], _('Artwork by:'): [ 'Alex Anon', 'Mormon Anon', 'Ccp Anon', 'Aome Anon', '/trash/ Anon', 'Skeleton Anon', 'eyeh Xinnix Anon', 'Brit Anon', 'Dark-N-Wolf Anon', 'Hotel Anon', 'Multi Anon', 'Ionanon' ], _('Additional Artwork by:'): [ 'Backup Anon 1', 'Backup Anon 2', 'Backup Anon 3', 'Backup Anon 4', 'Backup Anon 5', 'Backup Anon 6', ], _("\"Love theme\" by:"): [ 'Only Person In The Team With A\nPortfolio/Experience Anon', ], _('Music By'): [ 'Shampoo Anon', 'Melo Anon' ], _('Egg Hunt Contest\nWinner:'): [ 'Olivia Anon' ], _('Character Design\nContest Winner:'): [ 'Mono Anon', ], _('Translators (Spanish):'): [ 'Queso2033 Anon', 'TheShadowTrAnon' ], _('Proofreader (Spanish):'): [ 'ElBan AnĂ³n', 'GMAnon' ], _('Asset help (Spanish):'): [ 'Arkiangelo Anon' ] } textlist = [] alignargs = {'xalign': 0.5, 'yalign': 0.5, 'text_align': 0.5} #sizes in px SIZE_SNOT_GAMES = 68*3+10 SIZE_TITLE = 32*3+10 SIZE_ENTRY = 26*3+10 SIZE_ENDER = 52*3+10 #there is line_spacing but don't usei t textlist.append(Text(_("Snoot Game"), size=SIZE_SNOT_GAMES, **alignargs)) textlist.append(Null(1, 16*1)) textlist.append(Text(_("By CaveManon"), size=SIZE_TITLE, **alignargs)) textlist.append(Null(1, 16*12)) textlist.append(Text(_("developed in Ren'py"), size=SIZE_ENTRY, **alignargs)) textlist.append(Null(1, 16*12)) for key, arr in list_credits.items(): textlist.append(Text(key, size=SIZE_TITLE, **alignargs)) textlist.append(Null(1, 16*6)) concatstr = "" for item in arr: concatstr += item + '\n' textlist.append(Text(concatstr, size=SIZE_ENTRY, **alignargs)) textlist.append(Null(1, 16*2)) textlist.append(Text(_("T H E E N D"), size=SIZE_ENDER, **alignargs)) textlist.append(Null(1, 16*18)) textlist.append(Text(_("Snoot game started development\n on June 19 2020"), size=SIZE_ENTRY, **alignargs)) credits_hbox = Fixed(VBox(*textlist, xalign=0.5), xalign=0.5) renpy.image('credits_hbox', credits_hbox) # #slack: 2000 image s_credits = Composite( (1920, 11000+1000), (0, 0), "credits_base", (0, 0), "credits_hbox", (0, 10060+1000), "d_sketch" ) label test_credits: "test" show s_credits at Pan((0, -500),(0, 9850+1000), 65) with fade #show credits_hbox at Pan((0, -500),(0, 9850), 65) with fade pause scene black with Dissolve(3)