Skip to content

Commit

Permalink
cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
NonSwag committed Apr 27, 2024
1 parent a3825da commit 192e542
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 25 deletions.
33 changes: 18 additions & 15 deletions plugin/src/main/java/net/thenextlvl/worlds/Worlds.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
import core.annotation.FieldsAreNotNullByDefault;
import core.annotation.ParametersAreNotNullByDefault;
import core.i18n.file.ComponentBundle;
import core.io.IO;
import lombok.Getter;
import lombok.experimental.Accessors;
import net.kyori.adventure.text.minimessage.MiniMessage;
Expand All @@ -12,13 +11,15 @@
import net.thenextlvl.worlds.command.world.WorldCommand;
import net.thenextlvl.worlds.image.Image;
import net.thenextlvl.worlds.image.WorldImage;
import net.thenextlvl.worlds.link.LinkFile;
import net.thenextlvl.worlds.link.CraftLinkRegistry;
import net.thenextlvl.worlds.link.LinkRegistry;
import net.thenextlvl.worlds.listener.PortalListener;
import net.thenextlvl.worlds.listener.WorldListener;
import net.thenextlvl.worlds.preset.Presets;
import org.bstats.bukkit.Metrics;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerKickEvent;
import org.bukkit.plugin.ServicePriority;
import org.bukkit.plugin.java.JavaPlugin;

import java.io.File;
Expand All @@ -30,30 +31,37 @@
@FieldsAreNotNullByDefault
@ParametersAreNotNullByDefault
public class Worlds extends JavaPlugin {
private final LinkFile linkFile = new LinkFile(IO.of(Bukkit.getWorldContainer(), ".links"));
private final CraftLinkRegistry linkRegistry = new CraftLinkRegistry(this);

private final File presetsFolder = new File(getDataFolder(), "presets");
private final Metrics metrics = new Metrics(this, 19652);
private final File translations = new File(getDataFolder(), "translations");

private final ComponentBundle bundle = new ComponentBundle(translations, audience ->
audience instanceof Player player ? player.locale() : Locale.US)
.register("worlds", Locale.US)
.register("worlds_german", Locale.GERMANY)
.fallback(Locale.US);

private final Metrics metrics = new Metrics(this, 19652);

@Override
public void onLoad() {
saveDefaultPresets();
bundle().miniMessage(MiniMessage.builder().tags(TagResolver.resolver(
TagResolver.standard(),
Placeholder.component("prefix", bundle().component(Locale.US, "prefix"))
)).build());

Bukkit.getServicesManager().register(LinkRegistry.class, linkRegistry(), this, ServicePriority.Highest);

saveDefaultPresets();
}

@Override
public void onEnable() {
Image.findImages().stream()
.filter(WorldImage::loadOnStart)
.forEach(Image::load);
linkRegistry.loadLinks();
registerListeners();
registerCommands();
}
Expand All @@ -66,24 +74,19 @@ public void onDisable() {
.forEach(image -> {
var worldImage = image.getWorldImage();
if (worldImage.deletion() != null) {
image.getWorld().getPlayers().forEach(player -> player.kick(
Bukkit.shutdownMessage(),
PlayerKickEvent.Cause.RESTART_COMMAND
));
image.getWorld().getPlayers().forEach(player -> player.kick(Bukkit.shutdownMessage()));
image.deleteImmediately(worldImage.deletion().keepImage(), false);
} else if (!worldImage.autoSave()) {
image.getWorld().getPlayers().forEach(player -> player.kick(
Bukkit.shutdownMessage(),
PlayerKickEvent.Cause.RESTART_COMMAND
));
image.getWorld().getPlayers().forEach(player -> player.kick(Bukkit.shutdownMessage()));
image.unload();
}
});
linkRegistry.saveLinks();
metrics.shutdown();
linkFile().save();
}

private void registerListeners() {
Bukkit.getPluginManager().registerEvents(new PortalListener(this), this);
Bukkit.getPluginManager().registerEvents(new WorldListener(this), this);
}

Expand Down
10 changes: 5 additions & 5 deletions plugin/src/main/resources/worlds.properties
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ world.known=<prefix> <red>A world called <dark_red><world><red> does already exi
world.unknown=<prefix> <red>A world called <dark_red><world><red> does not exist
world.preset.invalid=<prefix> <red>The world preset is not a valid json string
world.preset.flat=<prefix> <red>Presets are only applicable on flat maps
world.copy.success=<prefix> <white>Successfully copied world <green><world>
world.copy.failed=<prefix> <red>Failed to copy world <dark_red><world>
world.clone.success=<prefix> <white>Successfully cloned world <green><world>
world.clone.failed=<prefix> <red>Failed to clone world <dark_red><world>
world.spawn.set.success=<prefix> <white>Set world spawn at <green><x>, <y>, <z> <gray>[<green><angle><gray>]
world.spawn.set.failed=<prefix> <red>Failed to change world spawn
world.info.name=<prefix> <gray>Name<dark_gray>: <white><world>
Expand All @@ -29,10 +29,10 @@ world.delete.nothing=<prefix> <red>There is nothing to delete
world.delete.failed=<prefix> <red>Failed to delete the world <dark_red><world>
world.delete.scheduled=<prefix> <white>The world <green><world> <white>will be deleted on the next restart
image.delete.failed=<prefix> <red>Failed to delete the image <dark_red><image>
link.exists=<prefix> <red>The link <dark_red><type>: <from> -> <to> <red>does already exists
link.exists=<prefix> <red>The link <dark_red><type>: <source> -> <destination> <red>does already exists
link.exists.not=<prefix> <red>The link <dark_red><link> <red>does not exist
link.deleted=<prefix> <white>Deleted the link <green><type>: <first> -> <second>
link.created=<prefix> <white>Created a new link <green><type>: <first> -> <second>
link.deleted=<prefix> <white>Deleted the link <green><type>: <source> -> <destination>
link.created=<prefix> <white>Created a new link <green><type>: <source> -> <destination>
link.list.empty=<prefix> <red>There are no links yet
link.list=<prefix> <gray>Links <dark_gray>(<green><amount><dark_gray>): <white><links>
image.exists.not=<prefix> <red>An image called <dark_red><image> <red>does not exist
Expand Down
10 changes: 5 additions & 5 deletions plugin/src/main/resources/worlds_german.properties
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ world.known=<prefix> <red>Eine Welt mit dem namen <dark_red><world><red> existie
world.unknown=<prefix> <red>Eine Welt mit dem namen <dark_red><world><red> existiert nicht
world.preset.invalid=<prefix> <red>Die Welten Voreinstellung ist kein gültiger json Text
world.preset.flat=<prefix> <red>Voreinstellungen sind nur auf flache Welten anwendbar
world.copy.success=<prefix> <white>Die Welt <green><world> <white>wurde erfolgreich kopiert
world.copy.failed=<prefix> <red>Die Welt <dark_red><world> <red>konnte nicht kopiert werden
world.clone.success=<prefix> <white>Die Welt <green><world> <white>wurde erfolgreich geklont
world.clone.failed=<prefix> <red>Die Welt <dark_red><world> <red>konnte nicht geklont werden
world.spawn.set.success=<prefix> <white>Der spawn ist jetzt bei <green><x>, <y>, <z> <gray>[<green><angle><gray>]
world.spawn.set.failed=<prefix> <red>Der spawn konnte nicht neu gesetzt werden
world.info.name=<prefix> <gray>Name<dark_gray>: <white><world>
Expand All @@ -28,10 +28,10 @@ world.unload.success=<prefix> <white>Die Welt <green><world><white> wurde erfolg
world.delete.failed=<prefix> <red>Die Welt <dark_red><world><red> konnte nicht gelöscht werden
world.delete.scheduled=<prefix> <white>Die Welt <green><world> <white>wird beim nächsten Neustart gelöscht
image.delete.failed=<prefix> <red>Das Abbild <dark_red><image><red> konnte nicht gelöscht werden
link.exists=<prefix> <red>Der Link <dark_red><type>: <from> -> <to> <red>existiert bereits
link.exists=<prefix> <red>Der Link <dark_red><type>: <source> -> <destination> <red>existiert bereits
link.exists.not=<prefix> <red>Der Link <dark_red><link> <red>existiert nicht
link.deleted=<prefix> <white>Der Link <green><type>: <first> -> <second> <white>wurde gelöscht
link.created=<prefix> <white>Der Link <green><type>: <first> -> <second> <white>wurde erstellt
link.deleted=<prefix> <white>Der Link <green><type>: <source> -> <destination> <white>wurde gelöscht
link.created=<prefix> <white>Der Link <green><type>: <source> -> <destination> <white>wurde erstellt
link.list.empty=<prefix> <red>Es existieren noch keine links
link.list=<prefix> <gray>Links <dark_gray>(<green><amount><dark_gray>): <white><links>
image.exists.not=<prefix> <red>Ein Abbild mit dem namen <dark_red><image> <red>existiert nicht
Expand Down

0 comments on commit 192e542

Please sign in to comment.