Files
BlockHunt/src/main/java/net/knarcraft/blockhunt/command/CreateCommand.java

61 lines
2.8 KiB
Java

package net.knarcraft.blockhunt.command;
import net.knarcraft.blockhunt.MemoryStorage;
import net.knarcraft.blockhunt.arena.Arena;
import net.knarcraft.blockhunt.arena.ArenaGameState;
import net.knarcraft.blockhunt.arena.ArenaLocations;
import net.knarcraft.blockhunt.arena.ArenaOptions;
import net.knarcraft.blockhunt.config.MessageKey;
import net.knarcraft.blockhunt.manager.CommandManager;
import net.knarcraft.blockhunt.util.MessageHelper;
import net.knarcraft.blockhunt.util.ScoreboardHelper;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import java.util.ArrayList;
public class CreateCommand extends DefaultCommand {
@Override
public boolean execute(Player player, String[] args) {
if (player == null) {
MessageHelper.sendMessage(null, MessageKey.ERROR_ONLY_IN_GAME);
return true;
}
if (args.length <= 1) {
MessageHelper.sendMessage(player, MessageKey.ERROR_NOT_ENOUGH_ARGUMENTS, "syntax-" +
CommandManager.getCreateCommand().usage());
} else {
if (MemoryStorage.pos1.get(player) != null && MemoryStorage.pos2.get(player) != null) {
if (MemoryStorage.pos1.get(player).getWorld().equals(MemoryStorage.pos2.get(player).getWorld())) {
ArenaOptions arenaOptions = new ArenaOptions(args[1], false,
false, false, false,
false, new ArrayList<>(), new ArrayList<>(), new ArrayList<>());
ArenaLocations arenaLocations = new ArenaLocations(MemoryStorage.pos1.get(player),
MemoryStorage.pos2.get(player), null, null, null, null);
Arena arena = new Arena(arenaOptions, arenaLocations,
12, 3, 1, 50, 20,
300, 30, 45,
new ArrayList<>(), 10, 50,
8, new ArrayList<>(), ArenaGameState.WAITING, 0, new ArrayList<>(),
Bukkit.getScoreboardManager().getNewScoreboard());
MemoryStorage.arenas.getFileConfiguration().set(args[1], arena);
MemoryStorage.arenas.save();
MemoryStorage.signs.load();
MemoryStorage.arenaMap.put(args[1].toLowerCase(), arena);
ScoreboardHelper.createScoreboard(arena);
MessageHelper.sendMessage(player, MessageKey.NORMAL_CREATE_CREATED_ARENA, "name-" + args[1]);
} else {
MessageHelper.sendMessage(player, MessageKey.ERROR_CREATE_NOT_SAME_WORLD);
}
} else {
MessageHelper.sendMessage(player, MessageKey.ERROR_CREATE_SELECTION_FIRST);
}
}
return true;
}
}