mirror of
https://github.com/Multiverse/Multiverse-Core.git
synced 2024-11-26 04:25:37 +01:00
Add i18n
This commit is contained in:
parent
b42b77b0bf
commit
1ac54b7e1d
@ -1,6 +1,8 @@
|
||||
package com.onarandombox.MultiverseCore.commands;
|
||||
|
||||
import co.aikar.commands.BukkitCommandIssuer;
|
||||
import co.aikar.commands.CommandIssuer;
|
||||
import co.aikar.commands.MessageType;
|
||||
import co.aikar.commands.annotation.CommandAlias;
|
||||
import co.aikar.commands.annotation.CommandCompletion;
|
||||
import co.aikar.commands.annotation.CommandPermission;
|
||||
@ -14,6 +16,7 @@ import com.onarandombox.MultiverseCore.api.MVWorld;
|
||||
import com.onarandombox.MultiverseCore.api.MVWorldManager;
|
||||
import com.onarandombox.MultiverseCore.commandtools.MVCommandManager;
|
||||
import com.onarandombox.MultiverseCore.commandtools.MultiverseCommand;
|
||||
import com.onarandombox.MultiverseCore.utils.MVCorei18n;
|
||||
import jakarta.inject.Inject;
|
||||
import org.bukkit.GameRule;
|
||||
import org.bukkit.World;
|
||||
@ -43,31 +46,29 @@ public class GamerulesCommand extends MultiverseCommand {
|
||||
@CommandPermission("multiverse.core.gamerules.list")
|
||||
@CommandCompletion("@mvworlds")
|
||||
@Syntax("[World]")
|
||||
@Description("{@@mv-core.gamerules.description}") //TODO i18n
|
||||
@Description("{@@mv-core.gamerules.description}")
|
||||
public void onGamerulesCommand(@NotNull BukkitCommandIssuer issuer,
|
||||
|
||||
@Flags("resolve=issuerOnly")
|
||||
Player player,
|
||||
|
||||
@Single
|
||||
@Syntax("<world>")
|
||||
@Description("{@@mv-core.gamerules.world.description}") //TODO i18n
|
||||
@Description("{@@mv-core.gamerules.description.world}")
|
||||
MVWorld world
|
||||
) {
|
||||
if (!issuer.isPlayer()) {
|
||||
if (world == null) {
|
||||
issuer.sendMessage("You must specify a world from the command line");
|
||||
if (!issuer.isPlayer() && world == null) {
|
||||
issuer.sendInfo(MVCorei18n.GAMERULES_ERROR_SPECIFYWORLD);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Get the players world if none is specified
|
||||
if (world == null) {
|
||||
Player player = issuer.getPlayer(); // Need to do it here so the command can be run from console
|
||||
Logging.finer("Getting the player's current world to list gamerules for");
|
||||
world = worldManager.getMVWorld(player.getWorld());
|
||||
}
|
||||
|
||||
issuer.sendMessage("--- Gamerules for " + world.getName() + " ---\n" + encodeMap(getGameRuleMap(world.getCBWorld())));
|
||||
// Finally, send the list
|
||||
issuer.sendInfo(MVCorei18n.GAMERULES_TITLE, "{world}", world.getName());
|
||||
issuer.sendMessage("\n" + encodeMap(issuer, getGameRuleMap(world.getCBWorld())));
|
||||
|
||||
|
||||
|
||||
@ -92,16 +93,16 @@ public class GamerulesCommand extends MultiverseCommand {
|
||||
return gameRuleMap;
|
||||
}
|
||||
|
||||
private String encodeMap(Map<String, String> inMap) { //TODO i18n
|
||||
private String encodeMap(CommandIssuer issuer, Map<String, String> inMap) {
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
for (String key : inMap.keySet()) {
|
||||
String value = inMap.get(key);
|
||||
|
||||
stringBuilder
|
||||
.append("&l")
|
||||
.append(key)
|
||||
.append("&f : &6")
|
||||
.append(value)
|
||||
stringBuilder.append(this.commandManager.formatMessage(
|
||||
issuer,
|
||||
MessageType.INFO,
|
||||
MVCorei18n.GAMERULES_RULE,
|
||||
"{gamerule}", key, "{value}", value))
|
||||
.append("\n");
|
||||
}
|
||||
return stringBuilder.toString();
|
||||
|
@ -42,6 +42,13 @@ public enum MVCorei18n implements MessageKeyProvider {
|
||||
GAMERULE_SUCCESS_SINGLE,
|
||||
GAMERULE_SUCCESS_MULTIPLE,
|
||||
|
||||
// Gamerules command
|
||||
GAMERULES_DESCRIPTION,
|
||||
GAMERULES_DESCRIPTION_WORLD,
|
||||
GAMERULES_ERROR_SPECIFYWORLD,
|
||||
GAMERULES_TITLE,
|
||||
GAMERULES_RULE,
|
||||
|
||||
// import command
|
||||
IMPORT_IMPORTING,
|
||||
IMPORT_FAILED,
|
||||
|
@ -59,6 +59,13 @@ mv-core.gamerule.failed=Failed to set gamerule {gamerule} to {value} in {world}.
|
||||
mv-core.gamerule.success.single=&aSuccessfully set {gamerule} to {value} in {world}.
|
||||
mv-core.gamerule.success.multiple=&aSuccessfully set {gamerule} to {value} in {count} worlds.
|
||||
|
||||
# /mv gamerules
|
||||
mv-core.gamerules.description=Lists gamerules for the specified world
|
||||
mv-core.gamerules.description.world=The world to list gamerules in
|
||||
mv-core.gamerules.error.specifyworld=You must specify a world from the command line
|
||||
mv-core.gamerules.title= --- Gamerules for {world} ---
|
||||
mv-core.gamerules.rule=&l{gamerule}&f : &6{value}
|
||||
|
||||
# /mv import
|
||||
mv-core.import.description=Imports an existing world folder.
|
||||
mv-core.import.name.description=Name of the world folder.
|
||||
|
Loading…
Reference in New Issue
Block a user