88 lines
2.3 KiB
JavaScript
88 lines
2.3 KiB
JavaScript
class Manifest {
|
|
static useLib = ["fs", "auth", "mcl"]
|
|
|
|
static id = "hfmc"
|
|
static version = "0.1.0"
|
|
static pkg_name = "Hispano Furs MC"
|
|
static description = "A Minecraft modpack"
|
|
static icon = "https://git.ragestudio.net/srgooglo/hfmc-dev/raw/branch/main/icon.png"
|
|
static license = "unlicensed"
|
|
static author = "HispanoFurs"
|
|
static core_minimum_version = "0.16.0"
|
|
|
|
static git_remote = "https://git.ragestudio.net/srgooglo/hfmc-dev"
|
|
|
|
static mc_version = {
|
|
forge: "1.20.1-forge-47.2.17",
|
|
number: "1.20.1",
|
|
type: "release",
|
|
}
|
|
|
|
configuration = {
|
|
memory: {
|
|
min: 2048,
|
|
default: 4096,
|
|
label: "Assigned Memory",
|
|
type: "number",
|
|
icon: "MdMemory",
|
|
ui_component: "slider",
|
|
ui_component_props: {
|
|
min: 2048,
|
|
max: 8192,
|
|
step: 1024,
|
|
unit: "MB"
|
|
},
|
|
}
|
|
}
|
|
|
|
authService = {
|
|
login: "https://hispanofurs.comty.app/auth",
|
|
fetcher: "https://hispanofurs.comty.app/rsauthorize",
|
|
getter: "https://hispanofurs_api.comty.app/data",
|
|
}
|
|
|
|
installSteps = [
|
|
{
|
|
type: "git_clone",
|
|
url: Manifest.git_remote,
|
|
}
|
|
]
|
|
|
|
updateSteps = [
|
|
{
|
|
type: "git_reset",
|
|
from: "HEAD",
|
|
}
|
|
]
|
|
|
|
async afterInstall() {
|
|
const defaultOptionsPath = `${install_path}/default_options.txt`
|
|
const finalOptionsPath = `${install_path}/options.txt`
|
|
|
|
Lib.fs.copyFileSync(defaultOptionsPath, finalOptionsPath)
|
|
}
|
|
|
|
async execute() {
|
|
let auth = await Lib.auth.get()
|
|
|
|
if (!auth) {
|
|
return await Lib.auth.request()
|
|
}
|
|
|
|
auth = await Lib.mcl.auth(auth.assigned_username)
|
|
|
|
return await Lib.mcl.launch(
|
|
{
|
|
javaPath: Vars.java_jre_bin,
|
|
root: install_path,
|
|
authorization: auth,
|
|
memory: {
|
|
min: this.configuration.memory.min,
|
|
max: Config.get("memory"),
|
|
},
|
|
version: Manifest.mc_version,
|
|
forge: `${install_path}/forge-installer.jar`,
|
|
}
|
|
)
|
|
}
|
|
} |