diff --git a/core/src/mindustry/core/FileTree.java b/core/src/mindustry/core/FileTree.java index d9ca5694c1..6ef93d7f5b 100644 --- a/core/src/mindustry/core/FileTree.java +++ b/core/src/mindustry/core/FileTree.java @@ -1,9 +1,14 @@ package mindustry.core; import arc.*; +import arc.assets.*; import arc.assets.loaders.*; +import arc.assets.loaders.MusicLoader.*; +import arc.assets.loaders.SoundLoader.*; +import arc.audio.*; import arc.files.*; import arc.struct.*; +import mindustry.*; /** Handles files in a modded context. */ public class FileTree implements FileHandleResolver{ @@ -40,4 +45,30 @@ public class FileTree implements FileHandleResolver{ public Fi resolve(String fileName){ return get(fileName); } + + public Sound loadSound(String soundName){ + if(Vars.headless) return new Sound(); + + String name = "sounds/" + soundName; + String path = Vars.tree.get(name + ".ogg").exists() ? name + ".ogg" : name + ".mp3"; + + var sound = new Sound(); + AssetDescriptor desc = Core.assets.load(path, Sound.class, new SoundParameter(sound)); + desc.errored = Throwable::printStackTrace; + + return sound; + } + + public Music loadMusic(String soundName){ + if(Vars.headless) return new Music(); + + String name = "music/" + soundName; + String path = Vars.tree.get(name + ".ogg").exists() ? name + ".ogg" : name + ".mp3"; + + var music = new Music(); + AssetDescriptor desc = Core.assets.load(path, Music.class, new MusicParameter(music)); + desc.errored = Throwable::printStackTrace; + + return music; + } } diff --git a/core/src/mindustry/mod/Scripts.java b/core/src/mindustry/mod/Scripts.java index 4b206567a7..50ee4cfc39 100644 --- a/core/src/mindustry/mod/Scripts.java +++ b/core/src/mindustry/mod/Scripts.java @@ -1,9 +1,6 @@ package mindustry.mod; import arc.*; -import arc.assets.*; -import arc.assets.loaders.MusicLoader.*; -import arc.assets.loaders.SoundLoader.*; import arc.audio.*; import arc.files.*; import arc.func.*; @@ -85,30 +82,14 @@ public class Scripts implements Disposable{ return Vars.tree.get(path, true).readBytes(); } + //kept for backwards compatibility public Sound loadSound(String soundName){ - if(Vars.headless) return new Sound(); - - String name = "sounds/" + soundName; - String path = Vars.tree.get(name + ".ogg").exists() ? name + ".ogg" : name + ".mp3"; - - var sound = new Sound(); - AssetDescriptor desc = Core.assets.load(path, Sound.class, new SoundParameter(sound)); - desc.errored = Throwable::printStackTrace; - - return sound; + return Vars.tree.loadSound(soundName); } + //kept for backwards compatibility public Music loadMusic(String soundName){ - if(Vars.headless) return new Music(); - - String name = "music/" + soundName; - String path = Vars.tree.get(name + ".ogg").exists() ? name + ".ogg" : name + ".mp3"; - - var music = new Music(); - AssetDescriptor desc = Core.assets.load(path, Music.class, new MusicParameter(music)); - desc.errored = Throwable::printStackTrace; - - return music; + return Vars.tree.loadMusic(soundName); } /** Ask the user to select a file to read for a certain purpose like "Please upload a sprite" */