Update to Commons 6.1.1; fixed broken API module references

This commit is contained in:
Daniel Saukel 2020-02-02 03:03:29 +01:00
parent d8b4b4e64e
commit ea8da5f2e3
238 changed files with 778 additions and 609 deletions

View File

@ -45,7 +45,7 @@ If you want to learn how to use DungeonsXL step by step, please have a look at t
## Compatibility
### Server
DungeonsXL works with Spigot 1.8 and higher. However, support for 1.14 / 1.13 has a higher priority than support for 1.8-1.12. Old builds that support older versions are unusable for production environments. See [here](../../wiki/legacy-support) for detailed information. DungeonsXL only works with Spigot and does not support CraftBukkit builds.
DungeonsXL works with Spigot 1.8 and higher. However, support for 1.15 / 1.14 / 1.13 has a higher priority than support for 1.8-1.12. Old builds that support older versions are unusable for production environments. See [here](../../wiki/legacy-support) for detailed information. DungeonsXL only works with Spigot and does not support CraftBukkit builds.
### Building information and dependencies
Building DungeonsXL from source requires [Apache Maven](https://maven.apache.org/).
@ -67,7 +67,6 @@ Make sure that your server uses Java 8 or higher.
Supported.
### Known incompatibilities
* Towny
* Corpses
* PerWorldInventory

View File

@ -17,6 +17,7 @@
<directory>src/main/resources/</directory>
<includes>
<include>plugin.yml</include>
<include>languages/*</include>
</includes>
</resource>
</resources>

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -20,7 +20,6 @@ import de.erethon.caliburn.CaliburnAPI;
import de.erethon.caliburn.loottable.LootTable;
import de.erethon.commons.compatibility.Internals;
import de.erethon.commons.compatibility.Version;
import de.erethon.commons.config.MessageConfig;
import de.erethon.commons.javaplugin.DREPlugin;
import de.erethon.commons.javaplugin.DREPluginSettings;
import de.erethon.commons.misc.FileUtil;
@ -30,7 +29,6 @@ import de.erethon.dungeonsxl.adapter.block.BlockAdapterBlockData;
import de.erethon.dungeonsxl.adapter.block.BlockAdapterMagicValues;
import de.erethon.dungeonsxl.announcer.AnnouncerCache;
import de.erethon.dungeonsxl.command.DCommandCache;
import de.erethon.dungeonsxl.config.DMessage;
import de.erethon.dungeonsxl.config.MainConfig;
import de.erethon.dungeonsxl.dungeon.DungeonCache;
import de.erethon.dungeonsxl.game.Game;
@ -78,7 +76,6 @@ public class DungeonsXL extends DREPlugin {
public static final String[] EXCLUDED_FILES = {"config.yml", "uid.dat", "DXLData.data", "data"};
public static File BACKUPS;
public static File LANGUAGES;
public static File MAPS;
public static File PLAYERS;
public static File SCRIPTS;
@ -143,7 +140,6 @@ public class DungeonsXL extends DREPlugin {
@Override
public void onDisable() {
saveData();
messageConfig.save();
dGroups.clear();
dWorlds.deleteAllInstances();
HandlerList.unregisterAll(this);
@ -161,11 +157,6 @@ public class DungeonsXL extends DREPlugin {
BACKUPS.mkdir();
}
LANGUAGES = new File(getDataFolder(), "languages");
if (!LANGUAGES.exists()) {
LANGUAGES.mkdir();
}
MAPS = new File(getDataFolder(), "maps");
if (!MAPS.exists()) {
MAPS.mkdir();
@ -213,9 +204,7 @@ public class DungeonsXL extends DREPlugin {
}
public void loadConfig() {
messageConfig = new MessageConfig(DMessage.class, new File(LANGUAGES, "english.yml"));
mainConfig = new MainConfig(this, new File(getDataFolder(), "config.yml"));
messageConfig = new MessageConfig(DMessage.class, new File(LANGUAGES, mainConfig.getLanguage() + ".yml"));
}
public void createCaches() {

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -19,11 +19,11 @@ package de.erethon.dungeonsxl.announcer;
import de.erethon.commons.chat.DefaultFontInfo;
import de.erethon.commons.chat.MessageUtil;
import de.erethon.dungeonsxl.DungeonsXL;
import de.erethon.dungeonsxl.api.player.PlayerGroup.Color;
import de.erethon.dungeonsxl.config.DMessage;
import de.erethon.dungeonsxl.dungeon.Dungeon;
import de.erethon.dungeonsxl.event.dgroup.DGroupCreateEvent;
import de.erethon.dungeonsxl.player.DGroup;
import de.erethon.dungeonsxl.util.DColor;
import de.erethon.dungeonsxl.util.GUIUtil;
import java.io.File;
import java.util.ArrayList;
@ -350,7 +350,7 @@ public class Announcer {
public void clickGroupButton(Player player, ItemStack button) {
DGroup dGroup = getDGroupByButton(button);
DGroup pGroup = DGroup.getByPlayer(player);
DColor color = DColor.getByWoolType(plugin.getCaliburn().getExItem(button));
Color color = Color.getByWoolType(plugin.getCaliburn().getExItem(button));
for (DGroup group : dGroups) {
if (dGroups.contains(pGroup) && pGroup != null && pGroup.isCustom() && pGroup.getCaptain() == player) {
@ -422,7 +422,7 @@ public class Announcer {
boolean full = playerCount >= maxPlayersPerGroup;
DColor color = plugin.getMainConfig().getGroupColorPriority(groupCount);
Color color = plugin.getMainConfig().getGroupColorPriority(groupCount);
ItemStack button = color.getWoolMaterial().toItemStack();
ItemMeta meta = button.getItemMeta();
meta.setDisplayName(name + (full ? ChatColor.DARK_RED : ChatColor.GREEN) + " [" + playerCount + "/" + maxPlayersPerGroup + "]");

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -34,7 +34,7 @@ public class BreakCommand extends DCommand {
setCommand("break");
setMinArgs(0);
setMaxArgs(0);
setHelp(DMessage.HELP_CMD_BREAK.getMessage());
setHelp(DMessage.CMD_BREAK_HELP.getMessage());
setPermission(DPermission.BREAK.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -36,7 +36,7 @@ public class ChatCommand extends DCommand {
setCommand("chat");
setMinArgs(0);
setMaxArgs(0);
setHelp(DMessage.HELP_CMD_CHAT.getMessage());
setHelp(DMessage.CMD_CHAT_HELP.getMessage());
setPermission(DPermission.CHAT.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -34,7 +34,7 @@ public class ChatSpyCommand extends DCommand {
setCommand("chatSpy");
setMinArgs(0);
setMaxArgs(0);
setHelp(DMessage.HELP_CMD_CHATSPY.getMessage());
setHelp(DMessage.CMD_CHATSPY_HELP.getMessage());
setPermission(DPermission.CHAT_SPY.getNode());
setPlayerCommand(true);
}
@ -45,7 +45,7 @@ public class ChatSpyCommand extends DCommand {
DGlobalPlayer dPlayer = dPlayers.getByPlayer(player);
dPlayer.setInChatSpyMode(!dPlayer.isInChatSpyMode());
MessageUtil.sendMessage(player, (dPlayer.isInChatSpyMode() ? DMessage.CMD_CHATSPY_START : DMessage.CMD_CHATSPY_STOPPED).getMessage());
MessageUtil.sendMessage(player, (dPlayer.isInChatSpyMode() ? DMessage.CMD_CHATSPY_STARTED : DMessage.CMD_CHATSPY_STOPPED).getMessage());
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -39,7 +39,7 @@ public class CreateCommand extends DCommand {
setMinArgs(1);
setMaxArgs(1);
setCommand("create");
setHelp(DMessage.HELP_CMD_CREATE.getMessage());
setHelp(DMessage.CMD_CREATE_HELP.getMessage());
setPermission(DPermission.CREATE.getNode());
setPlayerCommand(true);
setConsoleCommand(true);
@ -55,14 +55,14 @@ public class CreateCommand extends DCommand {
}
if (name.length() > 15) {
MessageUtil.sendMessage(sender, DMessage.ERROR_NAME_TO_LONG.getMessage());
MessageUtil.sendMessage(sender, DMessage.ERROR_NAME_TOO_LONG.getMessage());
return;
}
if (sender instanceof ConsoleCommandSender) {
// Msg create
MessageUtil.log(plugin, DMessage.LOG_NEW_MAP.getMessage());
MessageUtil.log(plugin, DMessage.LOG_GENERATE_NEW_WORLD.getMessage());
MessageUtil.log(plugin, "&6Creating new map.");
MessageUtil.log(plugin, "&6Generating new world...");
// Create World
DResourceWorld resource = new DResourceWorld(plugin, name);
@ -72,7 +72,7 @@ public class CreateCommand extends DCommand {
editWorld.delete();
// MSG Done
MessageUtil.log(plugin, DMessage.LOG_WORLD_GENERATION_FINISHED.getMessage());
MessageUtil.log(plugin, "&6World generation finished.");
} else if (sender instanceof Player) {
Player player = (Player) sender;
@ -83,8 +83,8 @@ public class CreateCommand extends DCommand {
}
// Msg create
MessageUtil.log(plugin, DMessage.LOG_NEW_MAP.getMessage());
MessageUtil.log(plugin, DMessage.LOG_GENERATE_NEW_WORLD.getMessage());
MessageUtil.log(plugin, "&6Creating new map.");
MessageUtil.log(plugin, "&6Generating new world...");
// Create World
DResourceWorld resource = new DResourceWorld(plugin, name);
@ -92,7 +92,7 @@ public class CreateCommand extends DCommand {
DEditWorld editWorld = resource.generate();
// MSG Done
MessageUtil.log(plugin, DMessage.LOG_WORLD_GENERATION_FINISHED.getMessage());
MessageUtil.log(plugin, "&6World generation finished.");
// Tp Player
new DEditPlayer(plugin, player, editWorld);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -39,7 +39,7 @@ public class DeleteCommand extends DCommand {
setCommand("delete");
setMinArgs(1);
setMaxArgs(2);
setHelp(DMessage.HELP_CMD_DELETE.getMessage());
setHelp(DMessage.CMD_DELETE_HELP.getMessage());
setPermission(DPermission.DELETE.getNode());
setPlayerCommand(true);
setConsoleCommand(true);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -37,7 +37,7 @@ public class DungeonItemCommand extends DCommand {
setAliases("di");
setMinArgs(0);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_DUNGEON_ITEM.getMessage());
setHelp(DMessage.CMD_DUNGEON_ITEM_HELP.getMessage());
setPermission(DPermission.DUNGEON_ITEM.getNode());
setPlayerCommand(true);
setConsoleCommand(false);
@ -63,7 +63,7 @@ public class DungeonItemCommand extends DCommand {
NBTUtil.addBoolean(tag, NBTUtil.DUNGEON_ITEM_KEY, true);
inv.setItemInHand(NBTUtil.setTag(bukkitStack, tag));
MessageUtil.sendMessage(sender, DMessage.CMD_DUNGEON_ITEM_SET_DUNGEON.getMessage());
MessageUtil.sendMessage(sender, DMessage.HELP_DUNGEON_ITEM.getMessage());
MessageUtil.sendMessage(sender, DMessage.CMD_DUNGEON_ITEM_DUNGEON_ITEM_HELP.getMessage());
} else if (action.equalsIgnoreCase("false")) {
if (tag != null) {
@ -71,15 +71,15 @@ public class DungeonItemCommand extends DCommand {
inv.setItemInHand(NBTUtil.setTag(bukkitStack, tag));
}
MessageUtil.sendMessage(sender, DMessage.CMD_DUNGEON_ITEM_SET_GLOBAL.getMessage());
MessageUtil.sendMessage(sender, DMessage.HELP_GLOBAL_ITEM.getMessage());
MessageUtil.sendMessage(sender, DMessage.CMD_DUNGEON_ITEM_GLOBAL_ITEM_HELP.getMessage());
} else {
if (tag != null && NBTUtil.hasKey(tag, NBTUtil.DUNGEON_ITEM_KEY)) {
MessageUtil.sendMessage(sender, DMessage.CMD_DUNGEON_ITEM_INFO_DUNGEON.getMessage());
MessageUtil.sendMessage(sender, DMessage.HELP_DUNGEON_ITEM.getMessage());
MessageUtil.sendMessage(sender, DMessage.CMD_DUNGEON_ITEM_DUNGEON_ITEM_HELP.getMessage());
} else {
MessageUtil.sendMessage(sender, DMessage.CMD_DUNGEON_ITEM_INFO_GLOBAL.getMessage());
MessageUtil.sendMessage(sender, DMessage.HELP_GLOBAL_ITEM.getMessage());
MessageUtil.sendMessage(sender, DMessage.CMD_DUNGEON_ITEM_GLOBAL_ITEM_HELP.getMessage());
}
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -17,6 +17,7 @@
package de.erethon.dungeonsxl.command;
import de.erethon.commons.chat.MessageUtil;
import de.erethon.commons.config.CommonMessage;
import de.erethon.dungeonsxl.DungeonsXL;
import de.erethon.dungeonsxl.config.DMessage;
import de.erethon.dungeonsxl.player.DEditPlayer;
@ -39,7 +40,7 @@ public class EditCommand extends DCommand {
setCommand("edit");
setMinArgs(1);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_EDIT.getMessage());
setHelp(DMessage.CMD_EDIT_HELP.getMessage());
setPlayerCommand(true);
}
@ -49,7 +50,7 @@ public class EditCommand extends DCommand {
String mapName = args[1];
if (!instances.exists(mapName)) {
MessageUtil.sendMessage(player, DMessage.ERROR_DUNGEON_NOT_EXIST.getMessage(mapName));
MessageUtil.sendMessage(player, DMessage.ERROR_NO_SUCH_DUNGEON.getMessage(mapName));
return;
}
@ -60,7 +61,7 @@ public class EditCommand extends DCommand {
}
if (!resource.isInvitedPlayer(player) && !DPermission.hasPermission(player, DPermission.EDIT)) {
MessageUtil.sendMessage(player, DMessage.ERROR_NO_PERMISSIONS.getMessage());
MessageUtil.sendMessage(player, CommonMessage.CMD_NO_PERMISSION.getMessage());
return;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -37,7 +37,7 @@ public class EnterCommand extends DCommand {
setMinArgs(1);
setMaxArgs(2);
setCommand("enter");
setHelp(DMessage.HELP_CMD_ENTER.getMessage());
setHelp(DMessage.CMD_ENTER_HELP.getMessage());
setPermission(DPermission.ENTER.getNode());
setPlayerCommand(true);
}
@ -78,7 +78,7 @@ public class EnterCommand extends DCommand {
}
if (joining.getCaptain() != captain && !DPermission.hasPermission(sender, DPermission.BYPASS)) {
MessageUtil.sendMessage(sender, DMessage.ERROR_NOT_CAPTAIN.getMessage());
MessageUtil.sendMessage(sender, DMessage.ERROR_NOT_LEADER.getMessage());
return;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -37,7 +37,7 @@ public class EscapeCommand extends DCommand {
setCommand("escape");
setMinArgs(0);
setMaxArgs(0);
setHelp(DMessage.HELP_CMD_ESCAPE.getMessage());
setHelp(DMessage.CMD_ESCAPE_HELP.getMessage());
setPermission(DPermission.ESCAPE.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -36,7 +36,7 @@ public class GameCommand extends DCommand {
setCommand("game");
setMinArgs(0);
setMaxArgs(0);
setHelp(DMessage.HELP_CMD_GAME.getMessage());
setHelp(DMessage.CMD_GAME_HELP.getMessage());
setPermission(DPermission.GAME.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -39,7 +39,7 @@ public class GroupCommand extends DCommand {
setCommand("group");
setMinArgs(0);
setMaxArgs(2);
setHelp(DMessage.HELP_CMD_GROUP.getMessage());
setHelp(DMessage.CMD_GROUP_HELP_MAIN.getMessage());
setPermission(DPermission.GROUP.getNode());
setPlayerCommand(true);
}
@ -272,19 +272,18 @@ public class GroupCommand extends DCommand {
switch (page) {
default:
MessageUtil.sendCenteredMessage(sender, "&4&l[ &61-5 &4/ &67 &4| &61 &4&l]");
MessageUtil.sendMessage(sender, "&bcreate" + "&7 - " + DMessage.HELP_CMD_GROUP_CREATE.getMessage());
MessageUtil.sendMessage(sender, "&bdisband" + "&7 - " + DMessage.HELP_CMD_GROUP_DISBAND.getMessage());
MessageUtil.sendMessage(sender, "&binvite" + "&7 - " + DMessage.HELP_CMD_GROUP_INVITE.getMessage());
MessageUtil.sendMessage(sender, "&buninvite" + "&7 - " + DMessage.HELP_CMD_GROUP_UNINVITE.getMessage());
MessageUtil.sendMessage(sender, "&bjoin" + "&7 - " + DMessage.HELP_CMD_GROUP_JOIN.getMessage());
MessageUtil.sendMessage(sender, "&bcreate" + "&7 - " + DMessage.CMD_GROUP_HELP_CREATE.getMessage());
MessageUtil.sendMessage(sender, "&bdisband" + "&7 - " + DMessage.CMD_GROUP_HELP_DISBAND.getMessage());
MessageUtil.sendMessage(sender, "&binvite" + "&7 - " + DMessage.CMD_GROUP_HELP_INVITE.getMessage());
MessageUtil.sendMessage(sender, "&buninvite" + "&7 - " + DMessage.CMD_GROUP_HELP_UNINVITE.getMessage());
MessageUtil.sendMessage(sender, "&bjoin" + "&7 - " + DMessage.CMD_GROUP_HELP_JOIN.getMessage());
break;
case "2":
MessageUtil.sendCenteredMessage(sender, "&4&l[ &66-10 &4/ &67 &4| &62 &4&l]");
MessageUtil.sendMessage(sender, "&bkick" + "&7 - " + DMessage.HELP_CMD_GROUP_KICK.getMessage());
MessageUtil.sendMessage(sender, "&bshow" + "&7 - " + DMessage.HELP_CMD_GROUP_SHOW.getMessage());
MessageUtil.sendMessage(sender, "&bkick" + "&7 - " + DMessage.CMD_GROUP_HELP_KICK.getMessage());
MessageUtil.sendMessage(sender, "&bshow" + "&7 - " + DMessage.CMD_GROUP_HELP_SHOW.getMessage());
break;
}
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -36,7 +36,7 @@ public class HelpCommand extends DCommand {
setCommand("help");
setMinArgs(0);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_HELP.getMessage());
setHelp(DMessage.CMD_HELP_HELP.getMessage());
setPermission(DPermission.HELP.getNode());
setPlayerCommand(true);
setConsoleCommand(true);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -38,7 +38,7 @@ public class ImportCommand extends DCommand {
setMinArgs(1);
setMaxArgs(1);
setCommand("import");
setHelp(DMessage.HELP_CMD_IMPORT.getMessage());
setHelp(DMessage.CMD_IMPORT_HELP.getMessage());
setPermission(DPermission.IMPORT.getNode());
setPlayerCommand(true);
setConsoleCommand(true);
@ -64,8 +64,8 @@ public class ImportCommand extends DCommand {
world.save();
}
MessageUtil.log(plugin, DMessage.LOG_NEW_MAP.getMessage());
MessageUtil.log(plugin, DMessage.LOG_IMPORT_WORLD.getMessage());
MessageUtil.log(plugin, "&6Creating new map.");
MessageUtil.log(plugin, "&6Importing world...");
FileUtil.copyDir(source, target, "playerdata", "stats");

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -35,7 +35,7 @@ public class InviteCommand extends DCommand {
setMinArgs(2);
setMaxArgs(2);
setCommand("invite");
setHelp(DMessage.HELP_CMD_INVITE.getMessage());
setHelp(DMessage.CMD_INVITE_HELP.getMessage());
setPermission(DPermission.INVITE.getNode());
setPlayerCommand(true);
setConsoleCommand(true);
@ -56,7 +56,7 @@ public class InviteCommand extends DCommand {
}
} else {
MessageUtil.sendMessage(sender, DMessage.ERROR_DUNGEON_NOT_EXIST.getMessage(args[2]));
MessageUtil.sendMessage(sender, DMessage.ERROR_NO_SUCH_MAP.getMessage(args[2]));
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -36,7 +36,7 @@ public class JoinCommand extends DCommand {
setCommand("join");
setMinArgs(1);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_JOIN.getMessage());
setHelp(DMessage.CMD_JOIN_HELP.getMessage());
setPermission(DPermission.JOIN.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -34,7 +34,7 @@ public class KickCommand extends DCommand {
setCommand("kick");
setMinArgs(1);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_KICK.getMessage());
setHelp(DMessage.CMD_KICK_HELP.getMessage());
setPermission(DPermission.KICK.getNode());
setPlayerCommand(true);
setConsoleCommand(true);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -42,7 +42,7 @@ public class LeaveCommand extends DCommand {
setCommand("leave");
setMinArgs(0);
setMaxArgs(0);
setHelp(DMessage.HELP_CMD_LEAVE.getMessage());
setHelp(DMessage.CMD_LEAVE_HELP.getMessage());
setPermission(DPermission.LEAVE.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -42,7 +42,7 @@ public class ListCommand extends DCommand {
setCommand("list");
setMinArgs(0);
setMaxArgs(3);
setHelp(DMessage.HELP_CMD_LIST.getMessage());
setHelp(DMessage.CMD_LIST_HELP.getMessage());
setPermission(DPermission.LIST.getNode());
setPlayerCommand(true);
setConsoleCommand(true);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -38,7 +38,7 @@ public class LivesCommand extends DCommand {
setCommand("lives");
setMinArgs(0);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_LIVES.getMessage());
setHelp(DMessage.CMD_LIVES_HELP.getMessage());
setPermission(DPermission.LIVES.getNode());
setPlayerCommand(true);
setConsoleCommand(true);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -35,7 +35,7 @@ public class MainCommand extends DCommand {
public MainCommand(DungeonsXL plugin) {
super(plugin);
setCommand("main");
setHelp(DMessage.HELP_CMD_MAIN.getMessage());
setHelp(DMessage.CMD_MAIN_HELP.getMessage());
setPermission(DPermission.MAIN.getNode());
setPlayerCommand(true);
setConsoleCommand(true);
@ -68,7 +68,7 @@ public class MainCommand extends DCommand {
MessageUtil.sendCenteredMessage(sender, DMessage.CMD_MAIN_LOADED.getMessage(String.valueOf(maps), String.valueOf(dungeons), String.valueOf(loaded), String.valueOf(players)));
MessageUtil.sendCenteredMessage(sender, DMessage.CMD_MAIN_COMPATIBILITY.getMessage(String.valueOf(internals), vault, itemsxl));
MessageUtil.sendCenteredMessage(sender, DMessage.CMD_MAIN_HELP.getMessage());
MessageUtil.sendCenteredMessage(sender, "&7\u00a92012-2019 Frank Baumann & contributors; lcsd. under GPLv3.");
MessageUtil.sendCenteredMessage(sender, "&7\u00a92012-2020 Frank Baumann & contributors; lcsd. under GPLv3.");
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -36,7 +36,7 @@ public class MsgCommand extends DCommand {
setMinArgs(-1);
setMaxArgs(-1);
setCommand("msg");
setHelp(DMessage.HELP_CMD_MSG.getMessage());
setHelp(DMessage.CMD_MSG_HELP.getMessage());
setPermission(DPermission.MESSAGE.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -43,7 +43,7 @@ public class PlayCommand extends DCommand {
setCommand("play");
setMinArgs(1);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_PLAY.getMessage());
setHelp(DMessage.CMD_PLAY_HELP.getMessage());
setPermission(DPermission.PLAY.getNode());
setPlayerCommand(true);
setConsoleCommand(false);
@ -64,7 +64,7 @@ public class PlayCommand extends DCommand {
if (resource != null) {
dungeon = new Dungeon(plugin, resource);
} else {
MessageUtil.sendMessage(player, DMessage.ERROR_DUNGEON_NOT_EXIST.getMessage(args[1]));
MessageUtil.sendMessage(player, DMessage.ERROR_NO_SUCH_DUNGEON.getMessage(args[1]));
return;
}
}
@ -83,7 +83,7 @@ public class PlayCommand extends DCommand {
}
}
if (!dGroup.getCaptain().equals(player) && !DPermission.hasPermission(player, DPermission.BYPASS)) {
MessageUtil.sendMessage(player, DMessage.ERROR_NOT_CAPTAIN.getMessage());
MessageUtil.sendMessage(player, DMessage.ERROR_NOT_LEADER.getMessage());
return;
}
dGroup.setDungeon(dungeon);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -41,7 +41,7 @@ public class PortalCommand extends DCommand {
setCommand("portal");
setMinArgs(0);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_PORTAL.getMessage());
setHelp(DMessage.CMD_PORTAL_HELP.getMessage());
setPermission(DPermission.PORTAL.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -43,7 +43,7 @@ public class ReloadCommand extends DCommand {
setCommand("reload");
setMinArgs(0);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_RELOAD.getMessage());
setHelp(DMessage.CMD_RELOAD_HELP.getMessage());
setPermission(DPermission.RELOAD.getNode());
setPlayerCommand(true);
setConsoleCommand(true);
@ -96,7 +96,7 @@ public class ReloadCommand extends DCommand {
plugin.loadData();
MessageUtil.sendPluginTag(sender, plugin);
MessageUtil.sendCenteredMessage(sender, DMessage.CMD_RELOAD_DONE.getMessage());
MessageUtil.sendCenteredMessage(sender, DMessage.CMD_RELOAD_SUCCESS.getMessage());
MessageUtil.sendCenteredMessage(sender, DMessage.CMD_MAIN_LOADED.getMessage(String.valueOf(maps), String.valueOf(dungeons), String.valueOf(loaded), String.valueOf(players)));
MessageUtil.sendCenteredMessage(sender, DMessage.CMD_MAIN_COMPATIBILITY.getMessage(String.valueOf(internals), vault, ixl));
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -42,7 +42,7 @@ public class RenameCommand extends DCommand {
setCommand("rename");
setMinArgs(2);
setMaxArgs(2);
setHelp(DMessage.HELP_CMD_RENAME.getMessage());
setHelp(DMessage.CMD_RENAME_HELP.getMessage());
setPermission(DPermission.RENAME.getNode());
setPlayerCommand(true);
setConsoleCommand(true);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -33,7 +33,7 @@ public class ResourcePackCommand extends DCommand {
setCommand("resourcepack");
setMinArgs(1);
setMaxArgs(1);
setHelp(DMessage.HELP_CMD_RESOURCE_PACK.getMessage());
setHelp(DMessage.CMD_RESOURCE_PACK_HELP.getMessage());
setPermission(DPermission.RESOURCE_PACK.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -35,7 +35,7 @@ public class SaveCommand extends DCommand {
setCommand("save");
setMinArgs(0);
setMaxArgs(0);
setHelp(DMessage.HELP_CMD_SAVE.getMessage());
setHelp(DMessage.CMD_SAVE_HELP.getMessage());
setPermission(DPermission.SAVE.getNode());
setPlayerCommand(true);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -43,7 +43,7 @@ public class StatusCommand extends DCommand {
setCommand("status");
setMinArgs(0);
setMaxArgs(0);
setHelp(DMessage.HELP_CMD_STATUS.getMessage());
setHelp(DMessage.CMD_STATUS_HELP.getMessage());
setPermission(DPermission.STATUS.getNode());
setPlayerCommand(true);
setConsoleCommand(true);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -42,7 +42,7 @@ public class TestCommand extends DCommand {
setCommand("test");
setMinArgs(0);
setMaxArgs(0);
setHelp(DMessage.HELP_CMD_TEST.getMessage());
setHelp(DMessage.CMD_TEST_HELP.getMessage());
setPermission(DPermission.TEST.getNode());
setPlayerCommand(true);
setConsoleCommand(false);
@ -61,7 +61,7 @@ public class TestCommand extends DCommand {
}
if (!dGroup.getCaptain().equals(player) && !DPermission.hasPermission(player, DPermission.BYPASS)) {
MessageUtil.sendMessage(sender, DMessage.ERROR_NOT_CAPTAIN.getMessage());
MessageUtil.sendMessage(sender, DMessage.ERROR_NOT_LEADER.getMessage());
return;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -35,7 +35,7 @@ public class UninviteCommand extends DCommand {
setCommand("uninvite");
setMinArgs(2);
setMaxArgs(2);
setHelp(DMessage.HELP_CMD_UNINVITE.getMessage());
setHelp(DMessage.CMD_UNINVITE_HELP.getMessage());
setPermission(DPermission.UNINVITE.getNode());
setPlayerCommand(true);
setConsoleCommand(true);
@ -45,7 +45,7 @@ public class UninviteCommand extends DCommand {
public void onExecute(String[] args, CommandSender sender) {
DResourceWorld resource = instances.getResourceByName(args[2]);
if (resource == null) {
MessageUtil.sendMessage(sender, DMessage.ERROR_DUNGEON_NOT_EXIST.getMessage(args[2]));
MessageUtil.sendMessage(sender, DMessage.ERROR_NO_SUCH_MAP.getMessage(args[2]));
return;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -17,8 +17,6 @@
package de.erethon.dungeonsxl.config;
import de.erethon.commons.config.Message;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
/**
* An enumeration of all messages. The values are fetched from the language file.
@ -27,271 +25,203 @@ import org.bukkit.configuration.file.YamlConfiguration;
*/
public enum DMessage implements Message {
ANNOUNCER_CLICK("Announcer_Click", "&4&l=> &6CLICK HERE TO JOIN &4&l<="),
CMD_BREAK_PROTECTED_MODE("Cmd_Break_ProtectedMode", "&6You may not break blocks protected by DungeonsXL anymore."),
CMD_BREAK_BREAK_MODE("Cmd_Break_BreakMode", "&6You may break a block protected by DungeonsXL."),
CMD_CHAT_DUNGEON_CHAT("Cmd_Chat_DungeonChat", "&6You have entered the dungeon chat"),
CMD_CHAT_NORMAL_CHAT("Cmd_Chat_NormalChat", "&6You are now in the public chat"),
CMD_CHATSPY_STOPPED("Cmd_Chatspy_Stopped", "&6You stopped to spy the dungeon chat."),
CMD_CHATSPY_START("Cmd_Chatspy_Start", "&6You started to spy the dungeon chat."),
CMD_DELETE_BACKUPS("Cmd_Delete_Backups", "&6Do you wish to delete all saved backups as well?"),
CMD_DELETE_SUCCESS("Cmd_Delete_Success", "&6Successfully deleted the map &4&v1&6."),
CMD_DUNGEON_ITEM_INFO_DUNGEON("Cmd_DungeonItem_Info_Dungeon", "&6This item is a &4dungeon item&6."),
CMD_DUNGEON_ITEM_INFO_GLOBAL("Cmd_DungeonItem_Info_Global", "&6This item is a &4global item&6."),
CMD_DUNGEON_ITEM_SET_DUNGEON("Cmd_DungeonItem_Set_Dungeon", "&6Successfully made this item a &4dungeon item&6."),
CMD_DUNGEON_ITEM_SET_GLOBAL("Cmd_DungeonItem_Set_Global", "&6Successfully made this item a &4global item&6."),
CMD_ENTER_SUCCESS("Cmd_Enter", "&6The group &4&v1 &6successfully entered the game of the group &4&v2&6."),
CMD_IMPORT_SUCCESS("Cmd_Import", "&6Successfully imported the world &4&v1&6."),
CMD_INVITE_SUCCESS("Cmd_Invite_Success", "&6Player &4&v1&6 was successfully invited to edit the map &4&v2&6."),
CMD_KICK_SUCCESS("Cmd_Kick_Success", "&6Successfully attempted to kick &4&v1&6."),
CMD_LEAVE_SUCCESS("Cmd_Leave_Success", "&6You have successfully left your group!"),
CMD_LIVES_GROUP("Cmd_Lives_Group", "&4&v1 &6have &4&v2 &6lives left."),
CMD_LIVES_PLAYER("Cmd_Lives_Player", "&4&v1 &6has &4&v2 &6lives left."),
CMD_MAIN_WELCOME("Cmd_Main_Welcome", "&7Welcome to &4Dungeons&fXL"),
CMD_MAIN_LOADED("Cmd_Main_Loaded", "&eMaps: &o[&v1] &eDungeons: &o[&v2] &eLoaded: &o[&v3] &ePlayers: &o[&v4]"),
CMD_MAIN_COMPATIBILITY("Cmd_Main_Compatibility", "&eInternals: &o[&v1] &eVault: &o[&v2] &eItemsXL: &o[&v3]"),
CMD_MAIN_HELP("Cmd_Main_Help", "&7Type in &o/dxl help&r&7 for further information."),
CMD_MSG_ADDED("Cmd_Msg_Added", "&6New Messages (&4&v1&6) added!"),
CMD_MSG_UPDATED("Cmd_Msg_Updated", "&6Messages (&4&v1&6) updated!"),
CMD_RELOAD_DONE("Cmd_Reload_Done", "&7Successfully reloaded DungeonsXL."),
CMD_RELOAD_PLAYERS("Cmd_Reload_Players", "&4Warning: If you reload the plugin, all players will get kicked out of their game."),
CMD_RENAME_SUCCESS("Cmd_Rename_Success", "&6Successfully renamed the map &4&v1&6 to &4&v2&6."),
CMD_SAVE_SUCCESS("Cmd_Save_Success", "&6Map saved!"),
CMD_UNINVITE_SUCCESS("Cmd_Uninvite_Success", "&4&v1&6's permission to edit the map &4&v2&6 has been removed successfully."),
ERROR_BED("Error_Bed", "&4You cannot use a bed while in a dungeon!"),
ERROR_CHEST_IS_OPENED("Error_ChestIsOpened", "&4This chest has already been opened."),
ERROR_CMD("Error_Cmd", "&4Commands are not allowed while in a dungeon!"),
ERROR_CMD_NOT_EXIST_1("Error_CmdNotExist1", "&4Command &6&v1&4 does not exist!"),
ERROR_CMD_NOT_EXIST_2("Error_CmdNotExist2", "&4Please enter &6/dxl help&4 for help!"),
ERROR_COOLDOWN("Error_Cooldown", "&4You can only enter this dungeon every &6&v1&4 hours!"),
ERROR_DISPENSER("Error_Dispenser", "&4You cannot access this dispenser!"),
ERROR_DROP("Error_Drop", "&4You cannot drop safe items"),
ERROR_DUNGEON_NOT_EXIST("Error_DungeonNotExist", "&4This dungeon does not exist."),
ERROR_ENDERCHEST("Error_Enderchest", "&4You cannot use an enderchest while in a dungeon!"),
ERROR_IN_GROUP("Error_InGroup", "&4The player &6&v1&4 is already member of a group."),
ERROR_JOIN_GROUP("Error_JoinGroup", "&4You have to join a group first!"),
ERROR_LEAVE_DUNGEON("Error_LeaveDungeon", "&4You have to leave your current dungeon first!"),
ERROR_LEAVE_GAME("Error_LeaveGame", "&4You have to leave your current game first!"),
ERROR_LEAVE_GROUP("Error_LeaveGroup", "&4You have to leave your group first!"),
ERROR_MSG_ID_NOT_EXIST("Error_MsgIdNotExist", "&4Messages with Id &6&v1&4 does not exist!"),
ERROR_MSG_FORMAT("Error_MsgFormat", "&4Please use &6\" &4to mark the beginning and the end of the message!"),
ERROR_MSG_NO_INT("Error_MsgNoInt", "&4The argument [id] has to include a number!"),
ERROR_NAME_IN_USE("Error_NameInUse", "&4The name &6&v1 &4is already in use."),
ERROR_NAME_TO_LONG("Error_NameToLong", "&4The name may not be longer than 15 characters!"),
ERROR_NO_CONSOLE_COMMAND("Error_NoConsoleCommand", "&6/dxl &v1&4 cannot be executed as console!"),
ERROR_NO_GAME("Error_NoGame", "&4You currently do not take part in a game."),
ERROR_NO_ITEM_IN_MAIN_HAND("Error_NoItemInMainHand", "&4You do not have an item in your main hand."),
ERROR_NO_LEAVE_IN_TUTORIAL("Error_NoLeaveInTutorial", "&4You cannot use this command in the tutorial!"),
ERROR_NO_PERMISSIONS("Error_NoPermissions", "&4You do not have permission to do this!"),
ERROR_NO_PLAYER_COMMAND("Error_NoPlayerCommand", "&6/dxl &v1&4 cannot be executed as player!"),
ERROR_NO_PROTECTED_BLOCK("Error_NoDXLBlock", "&4This is not a block protected by DungeonsXL!"),
ERROR_NO_REWARDS_LEFT("Error_NoRewardsLeft", "&4You do not have any item rewards left."),
ERROR_NO_REWARDS_TIME("error.noRewardsTime", "&4You cannot receive rewards before &6&v1&4."),
ERROR_SELF_NOT_IN_GROUP("Error_SelfNoGroup", "&4You are not in any group."),
ERROR_NO_SUCH_GROUP("Error_NoSuchGroup", "&4The group &6&v1&4 does not exist!"),
ERROR_NO_SUCH_MAP("Error_NoSuchMap", "&4The world &6&v1&4 does not exist!"),
ERROR_NO_SUCH_PLAYER("Error_NoSuchPlayer", "&4The player &6&v1&4 does not exist!"),
ERROR_NO_SUCH_RESOURCE_PACK("Error_NoSuchResourcePack", "&4The resource pack &6&v1 &4is not registered in the main configuration file!"),
ERROR_NO_SUCH_SHOP("Error_NoSuchShop", "&4Shop &v1 &4not found..."),
ERROR_NOT_CAPTAIN("Error_NotCaptain", "&4You are not the captain of your group!"),
ERROR_NOT_IN_DUNGEON("Error_NotInDungeon", "&4You are not in a dungeon!"),
ERROR_NOT_IN_GAME("Error_NotInGame", "&4The group &6&v1&4 is not member of a game."),
ERROR_NOT_IN_GROUP("Error_NotInGroup", "&4The player &6&v1&4 is not member of the group &6&v2&v4."),
ERROR_NOT_INVITED("Error_NotInvited", "&4You are not invited to the group &6&v1&4."),
ERROR_NOT_SAVED("Error_NotSaved", "&4The map &6&v1&4 has not been saved to the &6DungeonsXL/maps/ &4folder yet!"),
ERROR_BLOCK_OWN_TEAM("Error_BlockOwnTeam", "&4This block belongs to your own group."),
ERROR_READY("Error_Ready", "&4Choose your class first!"),
ERROR_REQUIREMENTS("Error_Requirements", "&4You don't fulfill the requirements for this dungeon!"),
ERROR_SIGN_WRONG_FORMAT("Error_SignWrongFormat", "&4The sign is not written correctly!"),
ERROR_TOO_MANY_INSTANCES("Error_TooManyInstances", "&4There are currently too many maps instantiated. Try it again in a few minutes!"),
ERROR_TOO_MANY_TUTORIALS("Error_TooManyTutorials", "&4There are currently too many tutorials running. Try it again in a few minutes!"),
ERROR_TUTORIAL_NOT_EXIST("Error_TutorialNotExist", "&4Tutorial dungeon does not exist!"),
HELP_CMD_BREAK("Help_Cmd_Break", "/dxl break - Break a block protected by DungeonsXL"),
HELP_CMD_CHAT("Help_Cmd_Chat", "/dxl chat - Change the chat mode"),
HELP_CMD_CHATSPY("Help_Cmd_Chatspy", "/dxl chatspy - Dis/enables the spymode"),
HELP_CMD_CREATE("Help_Cmd_Create", "/dxl create [name] - Creates a new dungeon map"),
HELP_CMD_DELETE("Help_Cmd_Delete", "/dxl delete [name] - Deletes a dungeon map"),
HELP_CMD_DUNGEON_ITEM("Help_Cmd_DungeonItem", "/dxl dungeonItem [true|false|info] - Sets the item stack in the player's hand to be one that cannot be taken out of a dungeon"),
HELP_CMD_EDIT("Help_Cmd_Edit", "/dxl edit [map] - Edit an existing dungeon map"),
HELP_CMD_ENTER("Help_Cmd_Enter", "/dxl enter ([joining group]) [target group] - Let the joining group enter the game of the target group"),
HELP_CMD_ESCAPE("Help_Cmd_Escape", "/dxl escape - Leaves the current edit world without saving"),
HELP_CMD_GAME("Help_Cmd_Game", "/dxl game - Shows information about the current game session"),
HELP_CMD_GROUP("Help_Cmd_Group", "/dxl group - Shows group command help"),
HELP_CMD_GROUP_CREATE("Help_Cmd_GroupCreate", "/dxl group create [group] - Creates a new group"),
HELP_CMD_GROUP_DISBAND("Help_Cmd_GroupDisband", "/dxl group disband ([group]) - Disbands a group"),
HELP_CMD_GROUP_INVITE("Help_Cmd_GroupInvite", "/dxl group invite [player]- Invites someone to your group"),
HELP_CMD_GROUP_UNINVITE("Help_Cmd_GroupUninvite", "/dxl group uninvite [player] - Takes back an invitation to your group"),
HELP_CMD_GROUP_JOIN("Help_Cmd_GroupJoin", "/dxl group join [group]- Join a group"),
HELP_CMD_GROUP_KICK("Help_Cmd_GroupKick", "/dxl group kick [player] - Kicks a player"),
HELP_CMD_GROUP_SHOW("Help_Cmd_GroupShow", "/dxl group show [group] - Shows a group"),
HELP_CMD_HELP("Help_Cmd_Help", "/dxl help [page] - Shows the help page"),
HELP_CMD_IMPORT("Help_Cmd_Import", "/dxl import [world] - Imports a world from the world container as a dungeon map"),
HELP_CMD_INVITE("Help_Cmd_Invite", "/dxl invite [player] [dungeon] - Invite a player to edit a dungeon"),
HELP_CMD_JOIN("Help_Cmd_Join", "/dxl join [announcement] - Opens the GUI to join a group in an upcoming game"),
HELP_CMD_KICK("Help_Cmd_Kick", "/dxl kick [player] - Kicks the player out of his group and dungeon"),
HELP_CMD_LEAVE("Help_Cmd_Leave", "/dxl leave - Leaves the current group and dungeon or edit world"),
HELP_CMD_LIST("Help_Cmd_List", "/dxl list ([dungeon|map|loaded]) ([dungeon]) - Lists all dungeons"),
HELP_CMD_LIVES("Help_Cmd_Lives", "/dxl lives [player] - Shows the lives a player has left"),
HELP_CMD_MAIN("Help_Cmd_Main", "/dxl - General status information"),
HELP_CMD_MSG("Help_Cmd_Msg", "/dxl msg [id] '[msg]' - Show or edit a message"),
HELP_CMD_PLAY("Help_Cmd_Play", "/dxl play [name] - Allows the player to play a dungeon without a portal"),
HELP_CMD_PORTAL("Help_Cmd_Portal", "/dxl portal ([material=portal])- Creates a portal that leads into a dungeon"),
HELP_CMD_RELOAD("Help_Cmd_Reload", "/dxl reload - Reloads the plugin"),
HELP_CMD_RENAME("Help_Cmd_Rename", "/dxl rename [old name] [new name] - Changes the name of a map to the new one. This command does NOT break dungeons that include this map."),
HELP_CMD_REWARDS("Help_Cmd_Rewards", "/dxl rewards - Gives all left item rewards to the player"),
HELP_CMD_RESOURCE_PACK("Help_Cmd_ResourcePack", "/dxl resourcepack [ID] - Downloads a resourcepack registered in the main configuration file; use 'reset' to reset"),
HELP_CMD_SAVE("Help_Cmd_Save", "/dxl save - Saves the current dungeon"),
HELP_CMD_STATUS("Help_Cmd_Status", "/dxl status - Shows the technical status of DungeonsXL"),
HELP_CMD_SETTINGS("Help_Cmd_Settings", "/dxl settings ([edit|global|player])- Opens the settings menu"),
HELP_CMD_TEST("Help_Cmd_Test", "/dxl test - Starts the game in test mode"),
HELP_CMD_UNINVITE("Help_Cmd_Uninvite", "/dxl uninvite [player] [dungeon] - Uninvite a player to edit a dungeon"),
HELP_DUNGEON_ITEM("Help_DungeonItem", "&6After finishing a game, &4dungeon items &6are removed from the player's inventory even if the respective dungeon setup in general allows to keep it."),
HELP_GLOBAL_ITEM("Help_GlobalItem", "&6After finishing a game, &4global items &6can be taken out of dungeons if the respective dungeon setup in general allows to keep the inventory."),
GROUP_BED_DESTROYED("Group_BedDestroyed", "&6The bed of the group &4&v1 &6has been destroyed by &4&v2&6!"),
GROUP_CONGRATS("Group_Congrats", "&6Congratulations!"),
GROUP_CONGRATS_SUB("Group_CongratsSub", "&l&4Your group &v1 &4won the match!"),
GROUP_CREATED("Group_Created", "&4&v1&6 created the group &4&v2&6!"),
GROUP_DEATH("Group_Death", "&4&v1 &6died. &4&v2 &6have &4&v3 &6lives left."),
GROUP_DEATH_KICK("Group_DeathKick", "&4&v1 &6was kicked because &4&v2 &6have no lives left."),
GROUP_DEFEATED("Group_Defeated", "&4The group &4v1 &6is defeated because it lost its last score point."),
GROUP_DISBANDED("Group_Disbanded", "&4&v1&6 disbanded the group &4&v2&6."),
GROUP_FLAG_CAPTURED("Group_FlagCaptured", "&4&v1&6 has captured the flag of the group &4&v2&6!"),
GROUP_FLAG_LOST("Group_FlagLost", "&4&v1&6 died and lost &4&v2&6's flag."),
GROUP_FLAG_STEALING("Group_FlagStealing", "&4&v1&6 is stealing the flag of the group &4&v2&6!"),
GROUP_INVITED_PLAYER("Group_InvitedPlayer", "&4&v1&6 invited the player &4&v2&6 to the group &4&v3&6."),
GROUP_JOINED_GAME("Group_JoinedGame", "&6Your group successfully joined the game."),
GROUP_KILLED("Group_Killed", "&4&v1 &6was killed by &4&v2&6. &4&v3&6 have &4&v4 &6lives left."),
GROUP_KILLED_KICK("Group_KilledKick", "&4&v1&6 was killed by &4&v2&6. &4&v3 have no lives left."),
GROUP_LIVES_ADDED("Group_LivesAdded", "&6Your group received a bonus of &4&v1&6 lives."),
GROUP_LIVES_REMOVED("Group_LivesRemoved", "&6Your group lost &4&v1&6 lives!"),
GROUP_UNINVITED_PLAYER("Group_UninvitedPlayer", "&4&v1&6 took back the invitation for &4&v2&6 to the group &4&v3&6."),
GROUP_KICKED_PLAYER("Group_KickedPlayer", "&4&v1&6 kicked the player &4&v2&6 from the group &4&v3&6."),
GROUP_PLAYER_JOINED("Group_PlayerJoined", "&6Player &4&v1&6 has joined the group!"),
GROUP_REWARD_CHEST("group.rewardChest", "&6Your group has found a reward chest."),
GROUP_WAVE_FINISHED("Group_WaveFinished", "&6Your group finished wave no. &4&v1&6. The next one is going to start in &4&v2&6 seconds."),
LOG_ERROR_DUNGEON_SETUP("Log_Error_DungeonSetup", "&4The setup of dungeon &6&v1&4 is incorrect. See https://github.com/DRE2N/DungeonsXL/wiki/dungeon-configuration for reference."),
LOG_ERROR_MOB_ENCHANTMENT("Log_Error_MobEnchantment", "&4An error occurred while loading mob.yml: Enchantment &6&v1&4 doesn't exist!"),
LOG_ERROR_MOBTYPE("Log_Error_MobType", "&4Error at loading mob.yml: Mob &6&v1&4 doesn't exist!"),
LOG_ERROR_NO_CONSOLE_COMMAND("Log_Error_NoConsoleCommand", "&6/dxl &v1&4 can not be executed as console!"),
LOG_ERROR_SIGN_SETUP("Log_Error_SignSetup", "&4A sign at &6&v1&4 is erroneous!"),
LOG_GENERATE_NEW_WORLD("Log_GenerateNewWorld", "&6Generating new world..."),
LOG_IMPORT_WORLD("Log_ImportWorld", "&6Importing world..."),
LOG_KILLED_CORRUPTED_PLAYER("Log_KilledCorruptedPlayer", "&4Killed player &6&v1 &4because the data to restore his main inventory is corrupted :("),
LOG_NEW_MAP("Log_NewDungeon", "&6Creating new map."),
LOG_NEW_PLAYER_DATA("Log_NewPlayerData", "&6A new player data file has been created and saved as &v1."),
LOG_WORLD_GENERATION_FINISHED("Log_WorldGenerationFinished", "&6World generation finished!"),
MISC_NEXT_PAGE("Misc_NextPage", "&6&lNEXT PAGE"),
MISC_NO("Misc_No", "&4[ NO ]"),
MISC_OKAY("Misc_Okay", "&a[ OK ]"),
MISC_PREVIOUS_PAGE("Misc_PreviousPage", "&6&lPREVIOUS PAGE"),
MISC_UNLIMITED("Misc_Unlimited", "unlimited"),
MISC_YES("Misc_Yes", "&a[ YES ]"),
PLAYER_BLOCK_INFO("Player_BlockInfo", "&6Block ID: &2&v1"),
PLAYER_CHECKPOINT_REACHED("Player_CheckpointReached", "&6Checkpoint reached!"),
PLAYER_DEATH("Player_Death", "&4&v1 &6died and has &4&v2 &6lives left."),
PLAYER_DEATH_KICK("Player_DeathKick", "&2&v1 &6lost his last life and was kicked."),
PLAYER_FINISHED_DUNGEON("Player_FinishedDungeon", "&6You successfully finished the dungeon!"),
PLAYER_FINISHED_FLOOR("Player_Finished_Floor", "&6You successfully finished the floor."),
PLAYER_INVITED("Player_Invited", "&4&v1&6 invited you to the group &4&v2&6."),
PLAYER_UNINVITED("Player_Uninvited", "&4&v1&6 took back your invitation to the group &4&v2&6."),
PLAYER_JOIN_GROUP("Player_JoinGroup", "&6You successfully joined the group!"),
PLAYER_KICKED("Player_Kicked", "&4You have been kicked out of the group &6&v1&4."),
PLAYER_KILLED("Player_Killed", "&4&v1 &6was killed by &4&v2 &6and has &4&v3 &6lives left."),
PLAYER_KILLED_KICK("Player_KilledKick", "&4&v1&6 was killed by &4&v2 &6and lost his last life."),
PLAYER_LEAVE_GROUP("Player_LeaveGroup", "&6You have successfully left your group!"),
PLAYER_LEFT_GROUP("Player_LeftGroup", "&6Player &4&v1&6 has left the Group!"),
PLAYER_LIVES_ADDED("Player_LivesAdded", "&6Received a bonus of &4&v1&6 lives."),
PLAYER_LIVES_REMOVED("Player_LivesRemoved", "&6You lost &4&v1&6 lives!"),
PLAYER_LOOT_ADDED("Player_LootAdded", "&4&v1&6 have been added to your reward inventory!"),
PLAYER_NEW_CAPTAIN("Player_NewCaptain", "&6You are now the new captain of your group."),
PLAYER_OFFLINE("Player_Offline", "&Player &4&v1&6 went offline. In &4&v2&6 seconds he will autmatically be kicked from the dungeon!"),
PLAYER_OFFLINE_NEVER("Player_OfflineNever", "&6The player &4&v1&6 went offline. He will &4not&6 be kicked from the dungeon automatically!"),
PLAYER_PORTAL_ABORT("Player_PortalAbort", "&6Portal creation cancelled!"),
PLAYER_PORTAL_INTRODUCTION("Player_PortalIntroduction", "&6Click the two edges of the portal with the wooden sword!"),
PLAYER_PORTAL_CREATED("Player_PortalCreated", "&6Portal created!"),
PLAYER_PORTAL_PROGRESS("Player_PortalProgress", "&6First edge successfully marked. You may now click at the other edge."),
PLAYER_PROTECTED_BLOCK_DELETED("Player_ProtectedBlockDeleted", "&6Successfully removed the protection."),
PLAYER_READY("Player_Ready", "&6You are now ready to start the dungeon."),
PLAYER_SIGN_CREATED("Player_SignCreated", "&6Successfully created a dungeon sign."),
PLAYER_SIGN_COPIED("Player_SignCopied", "&6Sign data copied."),
PLAYER_TIME_LEFT("Player_TimeLeft", "&v1You have &6&v2 &v1seconds left to finish the dungeon!"),
PLAYER_TIME_KICK("Player_TimeKick", "&2&v1&6's time expired."),
PLAYER_TREASURES("Player_Treasures", "&1Treasures"),
PLAYER_WAIT_FOR_OTHER_PLAYERS("Player_WaitForOtherPlayers", "&6Waiting for team members..."),
REQUIREMENT_FEE("Requirement_Fee", "&6You have been charged &4&v1 &6for entering the dungeon."),
REWARD_GENERAL("Reward_General", "&6You received &4&v1 &6for finishing the dungeon."),
SETTINGS_ANNOUNCEMENTS_1("Settings_Announcements1", "&fToggles personal"),
SETTINGS_ANNOUNCEMENTS_2("Settings_Announcements2", "&fgame announcements."),
SETTINGS_BREAK_1("Settings_Break1", "&fAllows you to break blocks"),
SETTINGS_BREAK_2("Settings_Break2", "&fprotected by DungeonsXL."),
SETTINGS_CHAT_SPY1("Settings_ChatSpy1", "&fAllows you to receive"),
SETTINGS_CHAT_SPY2("Settings_ChatSpy2", "&fall dungeon chat messages."),
SETTINGS_TITLE("Settings_Title", "&4Settings: &o"),
SETTINGS_TITLE_EDIT("Settings_Title_Edit", "Dungeon Setup"),
SETTINGS_TITLE_GLOBAL("Settings_Title_Global", "Global Configuration"),
SETTINGS_TITLE_PLAYER("Settings_Title_Player", "Player"),
SIGN_END("sign.end", "&2END"),
SIGN_FLOOR_1("sign.floor.1", "&2ENTER"),
SIGN_FLOOR_2("sign.floor.2", "&2NEXT FLOOR"),
SIGN_GLOBAL_FULL("sign.global.full", "&4FULL"),
SIGN_GLOBAL_IS_PLAYING("sign.global.isPlaying", "&4IS PLAYING"),
SIGN_GLOBAL_JOIN_GAME("sign.global.joinGame", "&2JOIN GAME"),
SIGN_GLOBAL_JOIN_GROUP("sign.global.joinGroup", "&2JOIN GROUP"),
SIGN_GLOBAL_NEW_GAME("sign.global.newGame", "&2NEW GAME"),
SIGN_GLOBAL_NEW_GROUP("sign.global.newGroup", "&2NEW GROUP"),
SIGN_LEAVE("sign.leave", "&2LEAVE"),
SIGN_READY("sign.ready", "&2READY"),
SIGN_RESOURCE_PACK("sign.resourcePack", "&2DOWNLOAD"),
SIGN_WAVE_1("sign.wave.1", "&2START"),
SIGN_WAVE_2("sign.wave.2", "&2NEXT WAVE");
ANNOUNCER_CLICK("announcer.click"),
CMD_BREAK_BREAK_MODE("cmd.break.breakMode"),
CMD_BREAK_HELP("cmd.break.help"),
CMD_BREAK_PROTECTED_MODE("cmd.break.protectedMode"),
CMD_CHAT_HELP("cmd.chat.help"),
CMD_CHAT_DUNGEON_CHAT("cmd.chat.dungeonChat"),
CMD_CHAT_NORMAL_CHAT("cmd.chat.normalChat"),
CMD_CHATSPY_HELP("cmd.chatspy.help"),
CMD_CHATSPY_STOPPED("cmd.chatspy.stopped"),
CMD_CHATSPY_STARTED("cmd.chatspy.started"),
CMD_CREATE_HELP("cmd.create.help"),
CMD_DELETE_BACKUPS("cmd.delete.backups"),
CMD_DELETE_HELP("cmd.delete.help"),
CMD_DELETE_SUCCESS("cmd.delete.success"),
CMD_DUNGEON_ITEM_HELP("cmd.dungeonItem.help"),
CMD_DUNGEON_ITEM_DUNGEON_ITEM_HELP("cmd.dungeonItem.dungeonItemHelp"),
CMD_DUNGEON_ITEM_GLOBAL_ITEM_HELP("cmd.dungeonItem.globalItemHelp"),
CMD_DUNGEON_ITEM_INFO_DUNGEON("cmd.dungeonItem.info.dungeon"),
CMD_DUNGEON_ITEM_INFO_GLOBAL("cmd.dungeonItem.info.global"),
CMD_DUNGEON_ITEM_SET_DUNGEON("cmd.dungeonItem.set.dungeon"),
CMD_DUNGEON_ITEM_SET_GLOBAL("cmd.dungeonItem.set.global"),
CMD_EDIT_HELP("cmd.edit.help"),
CMD_ENTER_HELP("cmd.enter.help"),
CMD_ENTER_SUCCESS("cmd.enter.success"),
CMD_ESCAPE_HELP("cmd.escape.help"),
CMD_GAME_HELP("cmd.game.help"),
CMD_GROUP_HELP_MAIN("cmd.group.help.main"),
CMD_GROUP_HELP_CREATE("cmd.group.help.create"),
CMD_GROUP_HELP_DISBAND("cmd.group.help.disband"),
CMD_GROUP_HELP_INVITE("cmd.group.help.invite"),
CMD_GROUP_HELP_JOIN("cmd.group.help.join"),
CMD_GROUP_HELP_KICK("cmd.group.help.kick"),
CMD_GROUP_HELP_SHOW("cmd.group.help.show"),
CMD_GROUP_HELP_UNINVITE("cmd.group.help.uninvite"),
CMD_HELP_HELP("cmd.help.help"),
CMD_IMPORT_HELP("cmd.import.help"),
CMD_IMPORT_SUCCESS("cmd.import.success"),
CMD_INVITE_HELP("cmd.invite.help"),
CMD_INVITE_SUCCESS("cmd.invite.success"),
CMD_JOIN_HELP("cmd.join.help"),
CMD_KICK_HELP("cmd.kick.help"),
CMD_KICK_SUCCESS("cmd.kick.success"),
CMD_LEAVE_HELP("cmd.leave.help"),
CMD_LEAVE_SUCCESS("cmd.leave.success"),
CMD_LIST_HELP("cmd.list.help"),
CMD_LIVES_GROUP("cmd.lives.group"),
CMD_LIVES_HELP("cmd.lives.help"),
CMD_LIVES_PLAYER("cmd.lives.player"),
CMD_MAIN_WELCOME("cmd.main.welcome"),
CMD_MAIN_LOADED("cmd.main.loaded"),
CMD_MAIN_COMPATIBILITY("cmd.main.compatibility"),
CMD_MAIN_HELP("cmd.main.help"),
CMD_MAIN_HELP_INFO("cmd.main.helpInfo"),
CMD_MSG_ADDED("cmd.msg.added"),
CMD_MSG_HELP("cmd.msg.help"),
CMD_MSG_UPDATED("cmd.msg.updated"),
CMD_PORTAL_HELP("cmd.portal.help"),
CMD_PLAY_HELP("cmd.play.help"),
CMD_RELOAD_HELP("cmd.reload.help"),
CMD_RELOAD_SUCCESS("cmd.reload.success"),
CMD_RELOAD_PLAYERS("cmd.reload.players"),
CMD_RENAME_HELP("cmd.rename.help"),
CMD_RENAME_SUCCESS("cmd.rename.success"),
CMD_RESOURCE_PACK_HELP("cmd.resourcePack.help"),
CMD_SAVE_HELP("cmd.save.help"),
CMD_SAVE_SUCCESS("cmd.save.success"),
CMD_STATUS_HELP("cmd.status.help"),
CMD_TEST_HELP("cmd.test.help"),
CMD_UNINVITE_HELP("cmd.uninvite.help"),
CMD_UNINVITE_SUCCESS("cmd.uninvite.success"),
ERROR_BED("error.bed"),
ERROR_CHEST_IS_OPENED("error.chestIsOpened"),
ERROR_CMD("error.cmd"),
ERROR_COOLDOWN("error.cooldown"),
ERROR_DISPENSER("error.dispenser"),
ERROR_DROP("error.drop"),
ERROR_ENDERCHEST("error.enderchest"),
ERROR_IN_GROUP("error.inGroup"),
ERROR_JOIN_GROUP("error.joinGroup"),
ERROR_LEAVE_DUNGEON("error.leaveDungeon"),
ERROR_LEAVE_GAME("error.leaveGame"),
ERROR_LEAVE_GROUP("error.leaveGroup"),
ERROR_MSG_ID_NOT_EXIST("error.msgIdDoesNotExist"),
ERROR_MSG_FORMAT("error.msgFormat"),
ERROR_MSG_NO_INT("error.msgNoInt"),
ERROR_NAME_IN_USE("error.nameInUse"),
ERROR_NAME_TOO_LONG("error.nameTooLong"),
ERROR_NO_GAME("error.noGame"),
ERROR_NO_ITEM_IN_MAIN_HAND("error.noItemInMainHand"),
ERROR_NO_LEAVE_IN_TUTORIAL("error.noLeaveInTutorial"),
ERROR_NO_PERMISSIONS("error.noPermissions"),
ERROR_NO_PROTECTED_BLOCK("error.noProtectedBlock"),
ERROR_NO_REWARDS_TIME("error.noRewardsTime"),
ERROR_NO_SUCH_DUNGEON("error.noSuchDungeon"),
ERROR_NO_SUCH_GROUP("error.noSuchGroup"),
ERROR_NO_SUCH_MAP("error.noSuchMap"),
ERROR_NO_SUCH_PLAYER("error.noSuchPlayer"),
ERROR_NO_SUCH_RESOURCE_PACK("error.noSuchResourcePack"),
ERROR_NO_SUCH_SHOP("error.noSuchShop"),
ERROR_NOT_IN_DUNGEON("error.notInDungeon"),
ERROR_NOT_IN_GAME("error.notInGame"),
ERROR_NOT_IN_GROUP("error.notInGroup"),
ERROR_NOT_INVITED("error.notInvited"),
ERROR_NOT_LEADER("error.notLeader"),
ERROR_NOT_SAVED("error.notSaved"),
ERROR_BLOCK_OWN_TEAM("error.blockOwnTeam"),
ERROR_READY("error.ready"),
ERROR_REQUIREMENTS("error.requirements"),
ERROR_SELF_NOT_IN_GROUP("error.selfNotInGroup"),
ERROR_SIGN_WRONG_FORMAT("error.signWrongFormat"),
ERROR_TOO_MANY_INSTANCES("error.tooManyInstances"),
ERROR_TOO_MANY_TUTORIALS("error.tooManyTutorials"),
ERROR_TUTORIAL_DOES_NOT_EXIST("error.tutorialDoesNotExist"),
GROUP_BED_DESTROYED("group.bedDestroyed"),
GROUP_CONGRATS("group.congrats"),
GROUP_CONGRATS_SUB("group.congratsSub"),
GROUP_CREATED("group.create"),
GROUP_DEATH("group.death"),
GROUP_DEATH_KICK("group.deathKick"),
GROUP_DEFEATED("group.defeated"),
GROUP_DISBANDED("group.disbanded"),
GROUP_FLAG_CAPTURED("group.flagCaptured"),
GROUP_FLAG_LOST("group.flagLost"),
GROUP_FLAG_STEALING("group.flagStealing"),
GROUP_INVITED_PLAYER("group.invitedPlayer"),
GROUP_JOINED_GAME("group.joinedGame"),
GROUP_KILLED("group.killed"),
GROUP_KILLED_KICK("group.killedKick"),
GROUP_LIVES_ADDED("group.livesAdded"),
GROUP_LIVES_REMOVED("group.livesRemoved"),
GROUP_KICKED_PLAYER("group.kickedPlayer"),
GROUP_PLAYER_JOINED("group.playerJoined"),
GROUP_REWARD_CHEST("group.rewardChest"),
GROUP_UNINVITED_PLAYER("group.uninvitedPlayer"),
GROUP_WAVE_FINISHED("group.waveFinished"),
MISC_NO("misc.no"),
MISC_OKAY("misc.okay"),
MISC_UNLIMITED("misc.unlimited"),
MISC_YES("misc.yes"),
PLAYER_BLOCK_INFO("player.blockInfo"),
PLAYER_CHECKPOINT_REACHED("player.checkpointReached"),
PLAYER_DEATH("player.death"),
PLAYER_DEATH_KICK("player.deathKick"),
PLAYER_FINISHED_DUNGEON("player.finishedDungeon"),
PLAYER_FINISHED_FLOOR("player.finished_Floor"),
PLAYER_INVITED("player.invited"),
PLAYER_UNINVITED("player.uninvited"),
PLAYER_JOIN_GROUP("player.joinGroup"),
PLAYER_KICKED("player.kicked"),
PLAYER_KILLED("player.killed"),
PLAYER_KILLED_KICK("player.killedKick"),
PLAYER_LEAVE_GROUP("player.leaveGroup"),
PLAYER_LEFT_GROUP("player.leftGroup"),
PLAYER_LIVES_ADDED("player.livesAdded"),
PLAYER_LIVES_REMOVED("player.livesRemoved"),
PLAYER_LOOT_ADDED("player.lootAdded"),
PLAYER_NEW_LEADER("player.newLeader"),
PLAYER_OFFLINE("player.offline"),
PLAYER_OFFLINE_NEVER("player.offlineNever"),
PLAYER_PORTAL_ABORT("player.portalAbort"),
PLAYER_PORTAL_INTRODUCTION("player.portalIntroduction"),
PLAYER_PORTAL_CREATED("player.portalCreated"),
PLAYER_PORTAL_PROGRESS("player.portalProgress"),
PLAYER_PROTECTED_BLOCK_DELETED("player.protectedBlockDeleted"),
PLAYER_READY("player.ready"),
PLAYER_SIGN_CREATED("player.signCreated"),
PLAYER_SIGN_COPIED("player.signCopied"),
PLAYER_TIME_LEFT("player.timeLeft"),
PLAYER_TIME_KICK("player.timeKick"),
PLAYER_TREASURES("player.treasures"),
PLAYER_WAIT_FOR_OTHER_PLAYERS("player.waitForOtherPlayers"),
REQUIREMENT_FEE("requirement.fee"),
REWARD_GENERAL("reward.general"),
SIGN_END("sign.end"),
SIGN_FLOOR_1("sign.floor.1"),
SIGN_FLOOR_2("sign.floor.2"),
SIGN_GLOBAL_FULL("sign.global.full"),
SIGN_GLOBAL_IS_PLAYING("sign.global.isPlaying"),
SIGN_GLOBAL_JOIN_GAME("sign.global.joinGame"),
SIGN_GLOBAL_JOIN_GROUP("sign.global.joinGroup"),
SIGN_GLOBAL_NEW_GAME("sign.global.newGame"),
SIGN_GLOBAL_NEW_GROUP("sign.global.newGroup"),
SIGN_LEAVE("sign.leave"),
SIGN_READY("sign.ready"),
SIGN_RESOURCE_PACK("sign.resourcePack"),
SIGN_WAVE_1("sign.wave.1"),
SIGN_WAVE_2("sign.wave.2");
private String identifier;
private String message;
private String path;
DMessage(String identifier, String message) {
this.identifier = identifier;
this.message = message;
}
/* Getters and setters */
@Override
public String getIdentifier() {
return identifier;
DMessage(String path) {
this.path = path;
}
@Override
public String getRaw() {
return message;
}
@Override
public void setMessage(String message) {
this.message = message;
}
/* Statics */
/**
* @param identifier the identifier to set
* @return the message
*/
public static Message getByIdentifier(String identifier) {
for (Message message : values()) {
if (message.getIdentifier().equals(identifier)) {
return message;
}
}
return null;
}
/**
* @return a FileConfiguration containing all messages
*/
public static FileConfiguration toConfig() {
FileConfiguration config = new YamlConfiguration();
for (DMessage message : values()) {
config.set(message.getIdentifier(), message.message);
}
return config;
public String getPath() {
return path;
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -19,9 +19,9 @@ package de.erethon.dungeonsxl.config;
import de.erethon.commons.config.DREConfig;
import de.erethon.commons.misc.EnumUtil;
import de.erethon.dungeonsxl.DungeonsXL;
import de.erethon.dungeonsxl.api.player.PlayerGroup.Color;
import static de.erethon.dungeonsxl.api.player.PlayerGroup.Color.*;
import de.erethon.dungeonsxl.dungeon.Dungeon;
import de.erethon.dungeonsxl.util.DColor;
import static de.erethon.dungeonsxl.util.DColor.*;
import de.erethon.dungeonsxl.world.WorldConfig;
import java.io.File;
import java.io.IOException;
@ -68,7 +68,7 @@ public class MainConfig extends DREConfig {
private String tutorialEndGroup = "player";
/* Announcers */
private List<DColor> groupColorPriority = new ArrayList<>(Arrays.asList(
private List<Color> groupColorPriority = new ArrayList<>(Arrays.asList(
DARK_BLUE,
LIGHT_RED,
YELLOW,
@ -281,7 +281,7 @@ public class MainConfig extends DREConfig {
/**
* @return the group colors
*/
public List<DColor> getGroupColorPriority() {
public List<Color> getGroupColorPriority() {
return groupColorPriority;
}
@ -289,14 +289,14 @@ public class MainConfig extends DREConfig {
* @param count the group count
* @return the group color for the count
*/
public DColor getGroupColorPriority(int count) {
return (count < groupColorPriority.size() && count >= 0) ? groupColorPriority.get(count) : DColor.WHITE;
public Color getGroupColorPriority(int count) {
return (count < groupColorPriority.size() && count >= 0) ? groupColorPriority.get(count) : Color.WHITE;
}
/**
* @param colors the colors to set
*/
public void setGroupColorPriority(List<DColor> colors) {
public void setGroupColorPriority(List<Color> colors) {
groupColorPriority = colors;
}
@ -510,7 +510,7 @@ public class MainConfig extends DREConfig {
if (!config.contains("groupColorPriority")) {
ArrayList<String> strings = new ArrayList<>();
for (DColor color : groupColorPriority) {
for (Color color : groupColorPriority) {
strings.add(color.toString());
}
config.set("groupColorPriority", strings);
@ -579,6 +579,7 @@ public class MainConfig extends DREConfig {
@Override
public void load() {
language = config.getString("language", language);
plugin.getMessageHandler().setDefaultLanguage(language);
enableEconomy = config.getBoolean("enableEconomy", enableEconomy);
chatEnabled = config.getBoolean("chatEnabled", chatEnabled);
chatFormatEdit = config.getString("chatFormat.edit", chatFormatEdit);
@ -593,7 +594,7 @@ public class MainConfig extends DREConfig {
if (config.getStringList("groupColorPriority").size() < 14) {
ArrayList<String> strings = new ArrayList<>();
for (DColor color : groupColorPriority) {
for (Color color : groupColorPriority) {
strings.add(color.toString());
}
config.set("groupColorPriority", strings);
@ -605,8 +606,8 @@ public class MainConfig extends DREConfig {
} else {
groupColorPriority.clear();
for (String color : config.getStringList("groupColorPriority")) {
DColor dColor = EnumUtil.getEnum(DColor.class, color);
if (dColor != null && dColor != DColor.WHITE) {
Color dColor = EnumUtil.getEnum(Color.class, color);
if (dColor != null && dColor != Color.WHITE) {
groupColorPriority.add(dColor);
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -18,7 +18,6 @@ package de.erethon.dungeonsxl.dungeon;
import de.erethon.commons.chat.MessageUtil;
import de.erethon.dungeonsxl.DungeonsXL;
import de.erethon.dungeonsxl.config.DMessage;
import de.erethon.dungeonsxl.world.DResourceWorld;
import java.io.File;
import java.util.ArrayList;
@ -51,7 +50,8 @@ public class DungeonCache {
dungeons.add(dungeon);
} else {
MessageUtil.log(DMessage.LOG_ERROR_DUNGEON_SETUP.getMessage(file.getName()));
MessageUtil.log(plugin, "&4The setup of dungeon &6" + file.getName()
+ "&4 is incorrect. See https://github.com/DRE2N/DungeonsXL/wiki/dungeon-configuration for reference.");
}
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -246,7 +246,7 @@ public class DPortal extends GlobalProtection {
}
if (target == null) {
MessageUtil.sendMessage(player, DMessage.ERROR_DUNGEON_NOT_EXIST.getMessage());
MessageUtil.sendMessage(player, DMessage.ERROR_NO_SUCH_DUNGEON.getMessage());
return;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -129,7 +129,7 @@ public class GameSign extends JoinSign {
return;
}
if (!dGroup.getCaptain().equals(player)) {
MessageUtil.sendMessage(player, DMessage.ERROR_NOT_CAPTAIN.getMessage());
MessageUtil.sendMessage(player, DMessage.ERROR_NOT_LEADER.getMessage());
return;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2012-2019 Frank Baumann
* Copyright (C) 2012-2020 Frank Baumann
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

Some files were not shown because too many files have changed in this diff Show More