Move Data, Plugin, Script, Packet access from Strings to Paths (#1839)

* Move Data, Plugin, Script, Packet access from Strings to Paths
- No longer dump default Data files to folder on launch
- Allow Scripts to be loaded from Resources zip
- Lay groundwork for Plugins to be loaded from zip
This commit is contained in:
Luke H-W
2022-10-07 23:01:08 +10:30
committed by GitHub
parent f6ce7e349d
commit dd6e1bb8a3
21 changed files with 242 additions and 244 deletions

View File

@@ -3,11 +3,11 @@ package emu.grasscutter.plugin;
import emu.grasscutter.Grasscutter;
import emu.grasscutter.plugin.api.ServerHook;
import emu.grasscutter.server.game.GameServer;
import emu.grasscutter.utils.FileUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import static emu.grasscutter.config.Configuration.*;
import java.io.File;
import java.io.InputStream;
import java.net.URLClassLoader;
@@ -37,7 +37,7 @@ public abstract class Plugin {
this.identifier = identifier;
this.classLoader = classLoader;
this.dataFolder = new File(PLUGIN(), identifier.name);
this.dataFolder = FileUtils.getPluginPath(identifier.name).toFile();
this.logger = LoggerFactory.getLogger(identifier.name);
if (!this.dataFolder.exists() && !this.dataFolder.mkdirs()) {