mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-04-07 00:06:12 +00:00
Migrate logging to SLF4J
Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
This commit is contained in:
@@ -17,6 +17,8 @@ val purpurURL = "https://ci.pl3x.net/job/Purpur/lastSuccessfulBuild/artifact/fin
|
||||
dependencies {
|
||||
"shadedApi"(project(":common:implementation"))
|
||||
|
||||
"shadedImplementation"("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1")
|
||||
|
||||
"compileOnly"("io.papermc.paper:paper-api:1.17-R0.1-SNAPSHOT")
|
||||
"shadedImplementation"("io.papermc:paperlib:1.0.5")
|
||||
|
||||
|
||||
@@ -8,6 +8,8 @@ import org.bukkit.generator.ChunkGenerator;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
@@ -31,6 +33,7 @@ import com.dfsek.terra.commands.TerraCommandManager;
|
||||
|
||||
public class TerraBukkitPlugin extends JavaPlugin {
|
||||
public static final BukkitVersion BUKKIT_VERSION;
|
||||
private static final Logger logger = LoggerFactory.getLogger(TerraBukkitPlugin.class);
|
||||
|
||||
static {
|
||||
String ver = Bukkit.getServer().getClass().getPackage().getName();
|
||||
@@ -53,9 +56,9 @@ public class TerraBukkitPlugin extends JavaPlugin {
|
||||
|
||||
@Override
|
||||
public void onEnable() {
|
||||
getLogger().info("Running on version " + BUKKIT_VERSION);
|
||||
logger.info("Running on version {}", BUKKIT_VERSION);
|
||||
if(BUKKIT_VERSION == BukkitVersion.UNKNOWN) {
|
||||
getLogger().warning("Terra is running on an unknown Bukkit version. Proceed with caution.");
|
||||
logger.warn("Terra is running on an unknown Bukkit version. Proceed with caution.");
|
||||
}
|
||||
|
||||
terraPlugin.getEventManager().callEvent(new PlatformInitializationEvent());
|
||||
@@ -72,9 +75,12 @@ public class TerraBukkitPlugin extends JavaPlugin {
|
||||
manager.register("save-data", SaveDataCommand.class);
|
||||
manager.register("fix-chunk", FixChunkCommand.class);
|
||||
} catch(MalformedCommandException e) { // This should never happen.
|
||||
terraPlugin.logger().severe("Errors occurred while registering commands.");
|
||||
e.printStackTrace();
|
||||
terraPlugin.logger().severe("Please report this to Terra.");
|
||||
logger.error("""
|
||||
TERRA HAS BEEN DISABLED
|
||||
|
||||
Errors occurred while registering commands.
|
||||
Please report this to Terra.
|
||||
""", e);
|
||||
Bukkit.getPluginManager().disablePlugin(this);
|
||||
return;
|
||||
}
|
||||
@@ -115,21 +121,21 @@ public class TerraBukkitPlugin extends JavaPlugin {
|
||||
|
||||
private void registerSpigotEvents(boolean outdated) {
|
||||
if(outdated) {
|
||||
getLogger().severe("You are using an outdated version of Paper.");
|
||||
getLogger().severe("This version does not contain StructureLocateEvent.");
|
||||
getLogger().severe("Terra will now fall back to Spigot events.");
|
||||
getLogger().severe("This will prevent cartographer villagers from spawning,");
|
||||
getLogger().severe("and cause structure location to not function.");
|
||||
getLogger().severe("If you want these functionalities, update to the latest build of Paper.");
|
||||
getLogger().severe("If you use a fork, update to the latest version, then if you still");
|
||||
getLogger().severe("receive this message, ask the fork developer to update upstream.");
|
||||
logger.error("You are using an outdated version of Paper.");
|
||||
logger.error("This version does not contain StructureLocateEvent.");
|
||||
logger.error("Terra will now fall back to Spigot events.");
|
||||
logger.error("This will prevent cartographer villagers from spawning,");
|
||||
logger.error("and cause structure location to not function.");
|
||||
logger.error("If you want these functionalities, update to the latest build of Paper.");
|
||||
logger.error("If you use a fork, update to the latest version, then if you still");
|
||||
logger.error("receive this message, ask the fork developer to update upstream.");
|
||||
} else {
|
||||
getLogger().severe("Paper is not in use. Falling back to Spigot events.");
|
||||
getLogger().severe("This will prevent cartographer villagers from spawning,");
|
||||
getLogger().severe("and cause structure location to not function.");
|
||||
getLogger().severe("If you want these functionalities (and all the other");
|
||||
getLogger().severe("benefits that Paper offers), upgrade your server to Paper.");
|
||||
getLogger().severe("Find out more at https://papermc.io/");
|
||||
logger.error("Paper is not in use. Falling back to Spigot events.");
|
||||
logger.error("This will prevent cartographer villagers from spawning,");
|
||||
logger.error("and cause structure location to not function.");
|
||||
logger.error("If you want these functionalities (and all the other");
|
||||
logger.error("benefits that Paper offers), upgrade your server to Paper.");
|
||||
logger.error("Find out more at https://papermc.io/");
|
||||
}
|
||||
|
||||
Bukkit.getPluginManager().registerEvents(new SpigotListener(terraPlugin), this); // Register Spigot event listener
|
||||
|
||||
@@ -10,7 +10,6 @@ import java.util.Locale;
|
||||
import java.util.Optional;
|
||||
|
||||
import com.dfsek.terra.AbstractTerraPlugin;
|
||||
import com.dfsek.terra.api.Logger;
|
||||
import com.dfsek.terra.api.addon.TerraAddon;
|
||||
import com.dfsek.terra.api.block.state.BlockState;
|
||||
import com.dfsek.terra.api.handle.ItemHandle;
|
||||
@@ -19,7 +18,6 @@ import com.dfsek.terra.api.world.biome.Biome;
|
||||
import com.dfsek.terra.bukkit.handles.BukkitItemHandle;
|
||||
import com.dfsek.terra.bukkit.handles.BukkitWorldHandle;
|
||||
import com.dfsek.terra.bukkit.world.BukkitBiome;
|
||||
import com.dfsek.terra.util.logging.JavaLogger;
|
||||
|
||||
|
||||
public class TerraPluginImpl extends AbstractTerraPlugin {
|
||||
@@ -78,11 +76,6 @@ public class TerraPluginImpl extends AbstractTerraPlugin {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Logger createLogger() {
|
||||
return new JavaLogger(plugin.getLogger());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Optional<TerraAddon> getPlatformAddon() {
|
||||
return Optional.of(new BukkitAddon(this));
|
||||
|
||||
@@ -6,6 +6,8 @@ import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.command.TabCompleter;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
@@ -20,6 +22,8 @@ import com.dfsek.terra.bukkit.world.BukkitAdapter;
|
||||
|
||||
|
||||
public class BukkitCommandAdapter implements CommandExecutor, TabCompleter {
|
||||
private static final Logger logger = LoggerFactory.getLogger(BukkitCommandAdapter.class);
|
||||
|
||||
private final CommandManager manager;
|
||||
|
||||
public BukkitCommandAdapter(CommandManager manager) {
|
||||
@@ -51,7 +55,7 @@ public class BukkitCommandAdapter implements CommandExecutor, TabCompleter {
|
||||
.filter(s -> s.toLowerCase(Locale.ROOT).startsWith(args[args.length - 1].toLowerCase(Locale.ROOT))).sorted(
|
||||
String::compareTo).collect(Collectors.toList());
|
||||
} catch(CommandException e) {
|
||||
e.printStackTrace();
|
||||
logger.warn("Exception occurred during tab completion", e);
|
||||
return Collections.emptyList();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,8 @@ package com.dfsek.terra.bukkit.generator;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.generator.BlockPopulator;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
@@ -23,6 +25,7 @@ import com.dfsek.terra.bukkit.world.BukkitBiomeGrid;
|
||||
|
||||
|
||||
public class BukkitChunkGeneratorWrapper extends org.bukkit.generator.ChunkGenerator implements GeneratorWrapper {
|
||||
private static final Logger logger = LoggerFactory.getLogger(BukkitChunkGeneratorWrapper.class);
|
||||
|
||||
private static final Map<com.dfsek.terra.api.world.World, PopulationManager> popMap = new HashMap<>();
|
||||
|
||||
@@ -44,17 +47,17 @@ public class BukkitChunkGeneratorWrapper extends org.bukkit.generator.ChunkGener
|
||||
|
||||
|
||||
public static synchronized void saveAll() {
|
||||
for(Map.Entry<com.dfsek.terra.api.world.World, PopulationManager> e : popMap.entrySet()) {
|
||||
for(Map.Entry<com.dfsek.terra.api.world.World, PopulationManager> entry : popMap.entrySet()) {
|
||||
try {
|
||||
e.getValue().saveBlocks(e.getKey());
|
||||
} catch(IOException ioException) {
|
||||
ioException.printStackTrace();
|
||||
entry.getValue().saveBlocks(entry.getKey());
|
||||
} catch(IOException e) {
|
||||
logger.error("Error occurred while saving population manager", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static synchronized void fixChunk(Chunk c) {
|
||||
popMap.get(c.getWorld()).checkNeighbors(c.getX(), c.getZ(), c.getWorld());
|
||||
public static synchronized void fixChunk(Chunk chunk) {
|
||||
popMap.get(chunk.getWorld()).checkNeighbors(chunk.getX(), chunk.getZ(), chunk.getWorld());
|
||||
}
|
||||
|
||||
private void load(com.dfsek.terra.api.world.World w) {
|
||||
@@ -63,7 +66,7 @@ public class BukkitChunkGeneratorWrapper extends org.bukkit.generator.ChunkGener
|
||||
} catch(FileNotFoundException ignore) {
|
||||
|
||||
} catch(IOException | ClassNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
logger.error("Error occurred while loading terra world", e);
|
||||
}
|
||||
popMap.put(w, popMan);
|
||||
needsLoad = false;
|
||||
|
||||
@@ -7,6 +7,8 @@ import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.EntitySpawnEvent;
|
||||
import org.bukkit.event.entity.VillagerAcquireTradeEvent;
|
||||
import org.bukkit.event.entity.VillagerCareerChangeEvent;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import com.dfsek.terra.api.TerraPlugin;
|
||||
|
||||
@@ -18,6 +20,8 @@ import com.dfsek.terra.api.TerraPlugin;
|
||||
* StructureLocateEvent).
|
||||
*/
|
||||
public class SpigotListener implements Listener {
|
||||
private static final Logger logger = LoggerFactory.getLogger(SpigotListener.class);
|
||||
|
||||
private final TerraPlugin main;
|
||||
|
||||
public SpigotListener(TerraPlugin main) {
|
||||
@@ -26,46 +30,57 @@ public class SpigotListener implements Listener {
|
||||
|
||||
@EventHandler(priority = EventPriority.NORMAL)
|
||||
public void onEnderEye(EntitySpawnEvent e) {
|
||||
/*
|
||||
/*
|
||||
Entity entity = e.getEntity();
|
||||
if(e.getEntityType().equals(EntityType.ENDER_SIGNAL)) {
|
||||
main.getDebugLogger().info("Detected Ender Signal...");
|
||||
if(e.getEntityType() == EntityType.ENDER_SIGNAL) {
|
||||
logger.info("Detected Ender Signal...");
|
||||
World w = BukkitAdapter.adapt(e.getEntity().getWorld());
|
||||
EnderSignal signal = (EnderSignal) entity;
|
||||
ConfiguredStructure config = tw.getConfig().getRegistry(TerraStructure.class).get(w.getConfig().getLocatable().get
|
||||
("STRONGHOLD"));
|
||||
if(config != null) {
|
||||
main.getDebugLogger().info("Overriding Ender Signal...");
|
||||
logger.info("Overriding Ender Signal...");
|
||||
AsyncStructureFinder finder = new AsyncStructureFinder(tw.getBiomeProvider(), config, BukkitAdapter.adapt(e.getLocation()
|
||||
.toVector()), tw.getWorld(), 0, 500, location -> {
|
||||
if(location != null)
|
||||
signal.setTargetLocation(BukkitAdapter.adapt(location).toLocation(e.getLocation().getWorld()));
|
||||
main.getDebugLogger().info("Location: " + location);
|
||||
logger.info("Location: {}", location);
|
||||
}, main);
|
||||
finder.run(); // Do this synchronously so eye doesn't change direction several ticks after spawning.
|
||||
} else
|
||||
main.logger().warning("No overrides are defined for Strongholds. Ender Signals will not work correctly.");
|
||||
logger.warn("No overrides are defined for Strongholds. Ender Signals will not work correctly.");
|
||||
}
|
||||
*/
|
||||
*/
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onCartographerChange(VillagerAcquireTradeEvent e) {
|
||||
if(!(e.getEntity() instanceof Villager)) return;
|
||||
if(((Villager) e.getEntity()).getProfession().equals(Villager.Profession.CARTOGRAPHER)) {
|
||||
main.logger().severe("Prevented server crash by stopping Cartographer villager from spawning.");
|
||||
main.logger().severe("Please upgrade to Paper, which has a StructureLocateEvent that fixes this issue");
|
||||
main.logger().severe("at the source, and doesn't require us to do stupid band-aids.");
|
||||
if(!(e.getEntity() instanceof Villager))
|
||||
return;
|
||||
if(((Villager) e.getEntity()).getProfession() == Villager.Profession.CARTOGRAPHER) {
|
||||
logger.error("""
|
||||
.------------------------------------------------------------------------.
|
||||
| Prevented server crash by stopping Cartographer villager from |
|
||||
| spawning. Please upgrade to Paper, which has a StructureLocateEvent |
|
||||
| that fixes this issue at the source, and doesn't require us to do |
|
||||
| stupid band-aids. |
|
||||
|------------------------------------------------------------------------|
|
||||
""");
|
||||
e.setCancelled(true); // Cancel leveling if the villager is a Cartographer, to prevent crashing server.
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onCartographerLevel(VillagerCareerChangeEvent e) {
|
||||
if(e.getProfession().equals(Villager.Profession.CARTOGRAPHER)) {
|
||||
main.logger().severe("Prevented server crash by stopping Cartographer villager from spawning.");
|
||||
main.logger().severe("Please upgrade to Paper, which has a StructureLocateEvent that fixes this issue");
|
||||
main.logger().severe("at the source, and doesn't require us to do stupid band-aids.");
|
||||
if(e.getProfession() == Villager.Profession.CARTOGRAPHER) {
|
||||
logger.error("""
|
||||
.------------------------------------------------------------------------.
|
||||
| Prevented server crash by stopping Cartographer villager from leveling |
|
||||
| up. Please upgrade to Paper, which has a StructureLocateEvent that |
|
||||
| fixes this issue at the source, and doesn't require us to do stupid |
|
||||
| band-aids. |
|
||||
|------------------------------------------------------------------------|
|
||||
""");
|
||||
e.getEntity().setProfession(Villager.Profession.NITWIT); // Give villager new profession to prevent server crash.
|
||||
e.setCancelled(true);
|
||||
}
|
||||
|
||||
@@ -21,6 +21,8 @@ tasks.named<ShadowJar>("shadowJar") {
|
||||
dependencies {
|
||||
"shadedApi"(project(":common:implementation"))
|
||||
|
||||
"shadedImplementation"("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1")
|
||||
|
||||
"minecraft"("com.mojang:minecraft:1.17.1")
|
||||
"mappings"("net.fabricmc:yarn:1.17.1+build.1:v2")
|
||||
"modImplementation"("net.fabricmc:fabric-loader:0.11.3")
|
||||
|
||||
@@ -6,6 +6,8 @@ import net.minecraft.util.registry.BuiltinRegistries;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import net.minecraft.world.gen.feature.ConfiguredFeature;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
@@ -33,6 +35,8 @@ import com.dfsek.terra.fabric.util.FabricUtil;
|
||||
@Author("Terra")
|
||||
@Version("1.0.0")
|
||||
public final class FabricAddon extends TerraAddon {
|
||||
private static final Logger logger = LoggerFactory.getLogger(FabricAddon.class);
|
||||
|
||||
private final TerraPluginImpl terraFabricPlugin;
|
||||
private final Map<ConfigPack, Pair<PreLoadCompatibilityOptions, PostLoadCompatibilityOptions>> templates = new HashMap<>();
|
||||
|
||||
@@ -50,7 +54,7 @@ public final class FabricAddon extends TerraAddon {
|
||||
try {
|
||||
event.loadTemplate(template);
|
||||
} catch(ConfigException e) {
|
||||
e.printStackTrace();
|
||||
logger.error("Error loading config template", e);
|
||||
}
|
||||
|
||||
if(template.doRegistryInjection()) {
|
||||
@@ -59,8 +63,7 @@ public final class FabricAddon extends TerraAddon {
|
||||
try {
|
||||
event.getPack().getCheckedRegistry(Tree.class).register(entry.getKey().getValue().toString(),
|
||||
(Tree) entry.getValue());
|
||||
terraFabricPlugin.getDebugLogger().info(
|
||||
"Injected ConfiguredFeature " + entry.getKey().getValue() + " as Tree.");
|
||||
logger.info("Injected ConfiguredFeature {} as Tree.", entry.getKey().getValue());
|
||||
} catch(DuplicateEntryException ignored) {
|
||||
}
|
||||
}
|
||||
@@ -79,7 +82,7 @@ public final class FabricAddon extends TerraAddon {
|
||||
try {
|
||||
event.loadTemplate(template);
|
||||
} catch(ConfigException e) {
|
||||
e.printStackTrace();
|
||||
logger.error("Error loading config templatE", e);
|
||||
}
|
||||
|
||||
templates.get(event.getPack()).setRight(template);
|
||||
@@ -91,7 +94,7 @@ public final class FabricAddon extends TerraAddon {
|
||||
.getHandler(FunctionalEventHandler.class)
|
||||
.register(this, BiomeRegistrationEvent.class)
|
||||
.then(event -> {
|
||||
terraFabricPlugin.logger().info("Registering biomes...");
|
||||
logger.info("Registering biomes...");
|
||||
Registry<Biome> biomeRegistry = event.getRegistryManager().get(Registry.BIOME_KEY);
|
||||
terraFabricPlugin.getConfigRegistry().forEach(pack -> pack.getCheckedRegistry(TerraBiome.class)
|
||||
.forEach(
|
||||
@@ -102,7 +105,7 @@ public final class FabricAddon extends TerraAddon {
|
||||
pack, id)),
|
||||
FabricUtil.createBiome(biome, pack,
|
||||
event.getRegistryManager())))); // Register all Terra biomes.
|
||||
terraFabricPlugin.logger().info("Biomes registered.");
|
||||
logger.info("Biomes registered.");
|
||||
})
|
||||
.global();
|
||||
}
|
||||
|
||||
@@ -5,13 +5,11 @@ import com.dfsek.tectonic.loading.TypeRegistry;
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.registry.BuiltinRegistries;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.Optional;
|
||||
|
||||
import com.dfsek.terra.AbstractTerraPlugin;
|
||||
import com.dfsek.terra.api.Logger;
|
||||
import com.dfsek.terra.api.addon.TerraAddon;
|
||||
import com.dfsek.terra.api.handle.ItemHandle;
|
||||
import com.dfsek.terra.api.handle.WorldHandle;
|
||||
@@ -72,27 +70,6 @@ public class TerraPluginImpl extends AbstractTerraPlugin {
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Logger createLogger() {
|
||||
final org.apache.logging.log4j.Logger log4jLogger = LogManager.getLogger();
|
||||
return new Logger() {
|
||||
@Override
|
||||
public void info(String message) {
|
||||
log4jLogger.info(message);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void warning(String message) {
|
||||
log4jLogger.warn(message);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void severe(String message) {
|
||||
log4jLogger.error(message);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Optional<TerraAddon> getPlatformAddon() {
|
||||
return Optional.of(new FabricAddon(this));
|
||||
|
||||
@@ -25,6 +25,8 @@ import net.minecraft.world.gen.chunk.StructuresConfig;
|
||||
import net.minecraft.world.gen.chunk.VerticalBlockSample;
|
||||
import net.minecraft.world.gen.feature.StructureFeature;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.Executor;
|
||||
@@ -42,6 +44,8 @@ import com.dfsek.terra.util.FastRandom;
|
||||
|
||||
|
||||
public class FabricChunkGeneratorWrapper extends net.minecraft.world.gen.chunk.ChunkGenerator implements GeneratorWrapper {
|
||||
private static final Logger logger = LoggerFactory.getLogger(FabricChunkGeneratorWrapper.class);
|
||||
|
||||
public static final Codec<ConfigPack> PACK_CODEC = RecordCodecBuilder.create(
|
||||
config -> config.group(
|
||||
Codec.STRING.fieldOf("pack")
|
||||
@@ -71,7 +75,7 @@ public class FabricChunkGeneratorWrapper extends net.minecraft.world.gen.chunk.C
|
||||
this.pack = configPack;
|
||||
|
||||
this.delegate = pack.getGeneratorProvider().newInstance(pack);
|
||||
delegate.getMain().logger().info("Loading world with config pack " + pack.getID());
|
||||
logger.info("Loading world with config pack {}", pack.getID());
|
||||
this.biomeSource = biomeSource;
|
||||
|
||||
this.seed = seed;
|
||||
|
||||
@@ -10,6 +10,8 @@ import net.minecraft.world.gen.Spawner;
|
||||
import net.minecraft.world.gen.chunk.ChunkGenerator;
|
||||
import net.minecraft.world.level.ServerWorldProperties;
|
||||
import net.minecraft.world.level.storage.LevelStorage;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
@@ -18,12 +20,13 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.Executor;
|
||||
|
||||
import com.dfsek.terra.fabric.FabricEntryPoint;
|
||||
import com.dfsek.terra.fabric.generation.FabricChunkGeneratorWrapper;
|
||||
|
||||
|
||||
@Mixin(ServerWorld.class)
|
||||
public abstract class ServerWorldMixin {
|
||||
private static final Logger logger = LoggerFactory.getLogger(ServerWorldMixin.class);
|
||||
|
||||
@Inject(method = "<init>", at = @At("RETURN"))
|
||||
public void injectConstructor(MinecraftServer server, Executor workerExecutor, LevelStorage.Session session,
|
||||
ServerWorldProperties properties, RegistryKey<World> registryKey, DimensionType dimensionType,
|
||||
@@ -31,7 +34,7 @@ public abstract class ServerWorldMixin {
|
||||
boolean debugWorld, long l, List<Spawner> list, boolean bl, CallbackInfo ci) {
|
||||
if(chunkGenerator instanceof FabricChunkGeneratorWrapper) {
|
||||
((FabricChunkGeneratorWrapper) chunkGenerator).setWorld((ServerWorld) (Object) this);
|
||||
FabricEntryPoint.getTerraPlugin().logger().info("Registered world " + this);
|
||||
logger.info("Registered world {}", this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,6 +15,9 @@ java {
|
||||
|
||||
dependencies {
|
||||
"shadedApi"(project(":common:implementation"))
|
||||
|
||||
"shadedImplementation"("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1")
|
||||
|
||||
"annotationProcessor"("org.spongepowered:spongeapi:9.0.0-SNAPSHOT")
|
||||
"shadedImplementation"("org.spongepowered:spongeapi:9.0.0-SNAPSHOT")
|
||||
"annotationProcessor"("org.spongepowered:mixin:0.8.2:processor")
|
||||
|
||||
@@ -5,7 +5,6 @@ import org.spongepowered.api.Sponge;
|
||||
import java.io.File;
|
||||
|
||||
import com.dfsek.terra.AbstractTerraPlugin;
|
||||
import com.dfsek.terra.api.Logger;
|
||||
import com.dfsek.terra.api.handle.ItemHandle;
|
||||
import com.dfsek.terra.api.handle.WorldHandle;
|
||||
import com.dfsek.terra.sponge.handle.SpongeWorldHandle;
|
||||
@@ -44,24 +43,4 @@ public class TerraPluginImpl extends AbstractTerraPlugin {
|
||||
public ItemHandle getItemHandle() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Logger createLogger() {
|
||||
return new Logger() {
|
||||
@Override
|
||||
public void info(String message) {
|
||||
plugin.getPluginContainer().logger().info(message);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void warning(String message) {
|
||||
plugin.getPluginContainer().logger().warn(message);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void severe(String message) {
|
||||
plugin.getPluginContainer().logger().error(message);
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user