DungeonsXL/addon/core/src/main/java/de/erethon/dungeonsxxl/DungeonsXXL.java

95 lines
2.5 KiB
Java
Raw Normal View History

2020-06-19 00:46:03 +02:00
/*
2023-09-28 19:16:23 +02:00
* Copyright (C) 2020-2023 Daniel Saukel
2020-06-19 00:46:03 +02:00
*
* All rights reserved.
*/
package de.erethon.dungeonsxxl;
import de.erethon.dungeonsxl.DungeonsXL;
import de.erethon.dungeonsxl.api.DungeonModule;
import de.erethon.dungeonsxl.api.Requirement;
import de.erethon.dungeonsxl.api.Reward;
import de.erethon.dungeonsxl.api.dungeon.GameRule;
import de.erethon.dungeonsxl.api.sign.DungeonSign;
2022-04-03 18:09:12 +02:00
import de.erethon.bedrock.compatibility.Internals;
import de.erethon.bedrock.plugin.EPlugin;
import de.erethon.bedrock.plugin.EPluginSettings;
import de.erethon.bedrock.misc.Registry;
2020-06-19 00:46:03 +02:00
import de.erethon.dungeonsxxl.requirement.*;
import de.erethon.dungeonsxxl.sign.*;
import de.erethon.dungeonsxxl.util.GlowUtil;
/**
* @author Daniel Saukel
*/
2022-04-03 18:09:12 +02:00
public class DungeonsXXL extends EPlugin implements DungeonModule {
2020-06-19 00:46:03 +02:00
2022-04-04 20:30:27 +02:00
private static DungeonsXXL instance;
2020-06-19 00:46:03 +02:00
private DungeonsXL dxl;
private GlowUtil glowUtil;
public DungeonsXXL() {
2022-04-03 18:09:12 +02:00
settings = EPluginSettings.builder()
.internals(Internals.v1_16_R3)
2020-06-19 00:46:03 +02:00
.metrics(false)
.spigotMCResourceId(-1)
.build();
}
@Override
public void onEnable() {
2022-04-04 20:30:27 +02:00
instance = this;
2020-06-19 00:46:03 +02:00
dxl = DungeonsXL.getInstance();
glowUtil = new GlowUtil(this);
}
/**
* Returns the instance of this plugin.
*
* @return the instance of this plugin
*/
public static DungeonsXXL getInstance() {
2022-04-04 20:30:27 +02:00
return instance;
2020-06-19 00:46:03 +02:00
}
/**
* Returns the current {@link de.erethon.dungeonsxl.DungeonsXL} singleton.
*
* @return the current {@link de.erethon.dungeonsxl.DungeonsXL} singleton
*/
public DungeonsXL getDXL() {
return dxl;
}
/**
* The loaded instance of GlowUtil.
*
* @return the loaded instance of GlowUtil
*/
public GlowUtil getGlowUtil() {
return glowUtil;
}
@Override
public void initRequirements(Registry<String, Class<? extends Requirement>> registry) {
registry.add("feeItems", FeeItemsRequirement.class);
}
@Override
public void initRewards(Registry<String, Class<? extends Reward>> registry) {
}
@Override
public void initSigns(Registry<String, Class<? extends DungeonSign>> registry) {
registry.add("FIREWORK", FireworkSign.class);
registry.add("GLOWINGBLOCK", GlowingBlockSign.class);
registry.add("INTERACTWALL", InteractWallSign.class);
registry.add("PARTICLE", ParticleSign.class);
}
@Override
public void initGameRules(Registry<String, GameRule> registry) {
}
2020-06-19 00:46:03 +02:00
}