mirror of
https://github.com/SunNetservers/MiniGames.git
synced 2025-12-04 01:48:46 +01:00
Implements #37 and improves material tab-completion
This commit is contained in:
@@ -7,6 +7,7 @@ import net.knarcraft.minigames.arena.dropper.DropperArenaEditableProperty;
|
||||
import net.knarcraft.minigames.command.EditArenaCommand;
|
||||
import net.knarcraft.minigames.config.DropperConfiguration;
|
||||
import net.knarcraft.minigames.config.MiniGameMessage;
|
||||
import net.knarcraft.minigames.util.InputValidationHelper;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
@@ -90,6 +91,10 @@ public class EditDropperArenaCommand extends EditArenaCommand {
|
||||
case NAME -> arena.setName(value);
|
||||
case EXIT_LOCATION -> arena.setExitLocation(parseLocation(player, value));
|
||||
case MAX_PLAYERS -> arena.setMaxPlayers(parseMaxPlayers(value));
|
||||
case ALLOWED_DAMAGE_CAUSES ->
|
||||
arena.setAllowedDamageCauses(InputValidationHelper.parseDamageCauses(asSet(value)));
|
||||
case LOSS_TRIGGER_DAMAGE_CAUSES ->
|
||||
arena.setLossTriggerDamageCauses(InputValidationHelper.parseDamageCauses(asSet(value)));
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package net.knarcraft.minigames.command.dropper;
|
||||
|
||||
import net.knarcraft.minigames.arena.EditablePropertyType;
|
||||
import net.knarcraft.minigames.arena.dropper.DropperArenaEditableProperty;
|
||||
import net.knarcraft.minigames.util.TabCompleteHelper;
|
||||
import org.bukkit.command.Command;
|
||||
@@ -30,8 +31,14 @@ public class EditDropperArenaTabCompleter implements TabCompleter {
|
||||
if (property == null) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
return filterMatchingContains(TabCompleteHelper.getTabCompleteSuggestions(property.getPropertyType()),
|
||||
arguments[2]);
|
||||
EditablePropertyType propertyType = property.getPropertyType();
|
||||
|
||||
if (propertyType == EditablePropertyType.MATERIAL_LIST ||
|
||||
propertyType == EditablePropertyType.DAMAGE_CAUSE_LIST) {
|
||||
return TabCompleteHelper.getListCompleteSuggestions(propertyType, arguments[2]);
|
||||
} else {
|
||||
return filterMatchingContains(TabCompleteHelper.getTabCompleteSuggestions(propertyType), arguments[2]);
|
||||
}
|
||||
} else {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user