mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-16 08:56:04 +01:00
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:
@@ -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()) {
|
||||
|
||||
@@ -2,13 +2,12 @@ package emu.grasscutter.plugin;
|
||||
|
||||
import emu.grasscutter.Grasscutter;
|
||||
import emu.grasscutter.server.event.*;
|
||||
import emu.grasscutter.utils.FileUtils;
|
||||
import emu.grasscutter.utils.JsonUtils;
|
||||
import emu.grasscutter.utils.Utils;
|
||||
import lombok.*;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import static emu.grasscutter.config.Configuration.PLUGIN;
|
||||
import static emu.grasscutter.utils.Language.translate;
|
||||
|
||||
import java.io.*;
|
||||
@@ -43,7 +42,7 @@ public final class PluginManager {
|
||||
* Loads plugins from the config-specified directory.
|
||||
*/
|
||||
private void loadPlugins() {
|
||||
File pluginsDir = new File(Utils.toFilePath(PLUGIN()));
|
||||
File pluginsDir = FileUtils.getPluginPath("").toFile();
|
||||
if (!pluginsDir.exists() && !pluginsDir.mkdirs()) {
|
||||
Grasscutter.getLogger().error(translate("plugin.directory_failed", pluginsDir.getAbsolutePath()));
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user