From 0e434e8d61d499493003c376a00f4b7d91b47a71 Mon Sep 17 00:00:00 2001 From: Yoshman29 <81191621+YoshiCrafter29@users.noreply.github.com> Date: Sat, 19 Nov 2022 03:13:09 +0100 Subject: [PATCH] not working yet!! --- buildnumber.txt | 2 +- latest/windows/bin/CodenameEngine.exe | Bin 39962624 -> 39962624 bytes source/funkin/system/CoolUtil.hx | 26 +++++++++++++++++++++++++- source/funkin/system/Paths.hx | 5 ++++- 4 files changed, 30 insertions(+), 3 deletions(-) diff --git a/buildnumber.txt b/buildnumber.txt index 04602d5d..6f6edaee 100644 --- a/buildnumber.txt +++ b/buildnumber.txt @@ -1 +1 @@ -1296 \ No newline at end of file +1307 \ No newline at end of file diff --git a/latest/windows/bin/CodenameEngine.exe b/latest/windows/bin/CodenameEngine.exe index a332f71cad9378aa64f92bd08a437d7b509630d0..675fb8205fed5a8e6b92e0aca6813a22192f15d7 100644 GIT binary patch delta 8807 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 Snm|28O_Z+kOF1(4$o~QIq6jbm diff --git a/source/funkin/system/CoolUtil.hx b/source/funkin/system/CoolUtil.hx index 15fde62e..6d2f3153 100644 --- a/source/funkin/system/CoolUtil.hx +++ b/source/funkin/system/CoolUtil.hx @@ -269,7 +269,31 @@ class CoolUtil public static function loadFrames(path:String, Unique:Bool = false, Key:String = null):FlxFramesCollection { var noExt = Path.withoutExtension(path); - if (Assets.exists('$noExt/Animation.json') + if (Assets.exists('$noExt/1.png')) { + // MULTIPLE SPRITESHEETS!! + + var graphic = FlxG.bitmap.add("flixel/images/logo/default.png", false, '$noExt/mult'); + var frames = FlxAtlasFrames.findFrame(graphic); + if (frames != null) + return frames; + + trace("no frames yet for multiple atlases!!"); + var spritesheets = []; + var cur = 1; + var finalFrames = new FlxFramesCollection(graphic, ATLAS); + while(Assets.exists('$noExt/$cur.png')) { + spritesheets.push(loadFrames('$noExt/$cur.png')); + cur++; + } + for(frames in spritesheets) + if (frames != null && frames.frames != null) + for(f in frames.frames) + if (f != null) { + finalFrames.frames.push(f); + f.parent = frames.parent; + } + return finalFrames; + } else if (Assets.exists('$noExt/Animation.json') && Assets.exists('$noExt/spritemap.json') && Assets.exists('$noExt/spritemap.png')) { // TODO: Credit Smokey555!! diff --git a/source/funkin/system/Paths.hx b/source/funkin/system/Paths.hx index 41df4535..9da1e09f 100644 --- a/source/funkin/system/Paths.hx +++ b/source/funkin/system/Paths.hx @@ -115,7 +115,10 @@ class Paths inline static public function image(key:String, ?library:String, checkForAtlas:Bool = false) { var atlasPath = checkForAtlas ? getPath('images/$key/spritemap.png', IMAGE, library) : null; - return (checkForAtlas && OpenFlAssets.exists(atlasPath)) ? atlasPath.substr(0, atlasPath.length - 14) : getPath('images/$key.png', IMAGE, library); + var multiplePath = checkForAtlas ? getPath('images/$key/1.png', IMAGE, library) : null; + if (atlasPath != null && OpenFlAssets.exists(atlasPath)) return atlasPath.substr(0, atlasPath.length - 14); + if (multiplePath != null && OpenFlAssets.exists(multiplePath)) return multiplePath.substr(0, multiplePath.length - 6); + return getPath('images/$key.png', IMAGE, library); } inline static public function script(key:String, ?library:String, isAssetsPath:Bool = false) {