mirror of
https://github.com/WorldEditAxe/eaglerproxy.git
synced 2024-09-20 17:36:00 -07:00
26 lines
1.0 KiB
JavaScript
26 lines
1.0 KiB
JavaScript
|
import * as dotenv from "dotenv";
|
||
|
import { Proxy } from "./proxy/Proxy.js";
|
||
|
import { config } from "./config.js";
|
||
|
dotenv.config();
|
||
|
import { Logger } from "./logger.js";
|
||
|
import { PROXY_BRANDING } from "./meta.js";
|
||
|
import { PluginManager } from "./proxy/pluginLoader/PluginManager.js";
|
||
|
import { dirname, join } from "path";
|
||
|
import { fileURLToPath } from "url";
|
||
|
import { ImageEditor } from "./proxy/skins/ImageEditor.js";
|
||
|
const logger = new Logger("Launcher");
|
||
|
let proxy;
|
||
|
global.CONFIG = config;
|
||
|
config.adapter.useNatives = config.adapter.useNatives ?? true;
|
||
|
logger.info("Loading libraries...");
|
||
|
await ImageEditor.loadLibraries(config.adapter.useNatives);
|
||
|
logger.info("Loading plugins...");
|
||
|
const pluginManager = new PluginManager(join(dirname(fileURLToPath(import.meta.url)), "plugins"));
|
||
|
global.PLUGIN_MANAGER = pluginManager;
|
||
|
await pluginManager.loadPlugins();
|
||
|
proxy = new Proxy(config.adapter, pluginManager);
|
||
|
pluginManager.proxy = proxy;
|
||
|
logger.info(`Launching ${PROXY_BRANDING}...`);
|
||
|
await proxy.init();
|
||
|
global.PROXY = proxy;
|