Skip to content

Commit 3f3f440

Browse files
authored
GH-1218 Add error message for incorrect stack number and update validation logic (#1218)
* Add error message for incorrect stack number and update validation logic * Remove `<bold>` to use follow other messages' layout.
1 parent 07874e7 commit 3f3f440

File tree

5 files changed

+7
-5
lines changed

5 files changed

+7
-5
lines changed

eternalcore-core/src/main/java/com/eternalcode/core/feature/item/ItemCommand.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
import dev.rollczi.litecommands.annotations.command.Command;
1111
import dev.rollczi.litecommands.annotations.context.Context;
1212
import dev.rollczi.litecommands.annotations.execute.Execute;
13-
import dev.rollczi.litecommands.annotations.optional.OptionalArg;
1413
import dev.rollczi.litecommands.annotations.permission.Permission;
1514
import org.bukkit.Material;
1615
import org.bukkit.entity.Player;
@@ -38,7 +37,7 @@ void execute(@Context Player player, @Arg Material material) {
3837

3938
@Execute
4039
@DescriptionDocs(description = "Gives an item with a custom amount", arguments = "<item> [amount]")
41-
void execute(@Context Player player, @Arg Material material, @OptionalArg(StackAmountArgument.KEY) int amount) {
40+
void execute(@Context Player player, @Arg Material material, @Arg(StackAmountArgument.KEY) int amount) {
4241
boolean isSuccess = this.giveService.giveItem(player, player, material, amount);
4342

4443
if (isSuccess) {

eternalcore-core/src/main/java/com/eternalcode/core/litecommand/argument/StackAmountArgument.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,14 @@ public ParseResult<Integer> parse(Invocation<CommandSender> invocation, String a
2929
try {
3030
int value = Integer.parseInt(argument);
3131

32-
if (value < 0) {
33-
return ParseResult.failure(translation.argument().numberBiggerThanOrEqualZero());
32+
if (value <= 0) {
33+
return ParseResult.failure(translation.argument().numberBiggerThanZero());
3434
}
3535

3636
return ParseResult.success(value);
3737
}
3838
catch (NumberFormatException exception) {
39-
return ParseResult.failure(translation.argument().numberBiggerThanOrEqualZero());
39+
return ParseResult.failure(translation.argument().stackNumberIncorrect());
4040
}
4141
}
4242

eternalcore-core/src/main/java/com/eternalcode/core/litecommand/argument/messages/ArgumentMessages.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ public interface ArgumentMessages {
1212
Notice onlyPlayer();
1313
Notice numberBiggerThanZero();
1414
Notice numberBiggerThanOrEqualZero();
15+
Notice stackNumberIncorrect();
1516
Notice noItem();
1617
Notice noMaterial();
1718
Notice noArgument();

eternalcore-core/src/main/java/com/eternalcode/core/litecommand/argument/messages/ENArgumentMessages.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ public class ENArgumentMessages extends OkaeriConfig implements ArgumentMessages
2323
Notice onlyPlayer = Notice.chat("<red>✘ <dark_red>Command is only for players!");
2424
Notice numberBiggerThanZero = Notice.chat("<red>✘ <dark_red>The number must be greater than 0!");
2525
Notice numberBiggerThanOrEqualZero = Notice.chat("<red>✘ <dark_red>The number must be greater than or equal to 0!");
26+
Notice stackNumberIncorrect = Notice.chat("<red>✘ <dark_red>Incorrect number!");
2627
Notice noItem = Notice.chat("<red>✘ <dark_red>You need item to use this command!");
2728
Notice noMaterial = Notice.chat("<red>✘ <dark_red>This item doesn't exist");
2829
Notice noArgument = Notice.chat("<red>✘ <dark_red>This argument doesn't exist");

eternalcore-core/src/main/java/com/eternalcode/core/litecommand/argument/messages/PLArgumentMessages.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ public class PLArgumentMessages extends OkaeriConfig implements ArgumentMessages
2424
Notice onlyPlayer = Notice.chat("<red>✘ <dark_red>Ta komenda jest dostępna tylko dla graczy!");
2525
Notice numberBiggerThanZero = Notice.chat("<red>✘ <dark_red>Liczba musi być większa od 0!");
2626
Notice numberBiggerThanOrEqualZero = Notice.chat("<red>✘ <dark_red>Liczba musi być równa lub większa od 0!");
27+
Notice stackNumberIncorrect = Notice.chat("<red>✘ <dark_red><Niepoprawna liczba!");
2728
Notice noItem = Notice.chat("<red>✘ <dark_red>Musisz trzymać przedmiot w dłoni!");
2829
Notice noMaterial = Notice.chat("<red>✘ <dark_red>Taki materiał nie istnieje!");
2930
Notice noArgument = Notice.chat("<red>✘ <dark_red>Taki argument nie istnieje!");

0 commit comments

Comments
 (0)