Skip to content

Commit 6152522

Browse files
committed
Requested changes
1 parent c25611b commit 6152522

1 file changed

Lines changed: 5 additions & 4 deletions

File tree

src/main/java/ch/njol/skript/expressions/ExprDustedStage.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import ch.njol.skript.lang.Expression;
88
import ch.njol.skript.lang.SkriptParser.ParseResult;
99
import ch.njol.util.Kleenean;
10+
import ch.njol.util.Math2;
1011
import ch.njol.util.coll.CollectionUtils;
1112
import org.bukkit.block.Block;
1213
import org.bukkit.block.data.BlockData;
@@ -79,7 +80,7 @@ public boolean init(Expression<?>[] exprs, int matchedPattern, Kleenean isDelaye
7980
@Override
8081
public void change(Event event, Object @Nullable [] delta, ChangeMode mode) {
8182
if (isMax) return;
82-
int value = (delta != null && delta.length > 0) ? (Integer) delta[0] : 0;
83+
int value = delta == null ? 0 : (Integer) delta[0];
8384

8485
for (Object obj : getExpr().getArray(event)) {
8586
Brushable brushable = getBrushable(obj);
@@ -88,10 +89,10 @@ public void change(Event event, Object @Nullable [] delta, ChangeMode mode) {
8889

8990
int currentValue = brushable.getDusted();
9091
int maxValue = brushable.getMaximumDusted();
91-
int newValue = switch (mode) {
92+
long newValue = switch (mode) {
9293
case SET, RESET -> value;
93-
case ADD -> currentValue + value;
94-
case REMOVE -> currentValue - value;
94+
case ADD -> Math2.addClamped(currentValue, value);
95+
case REMOVE -> Math2.addClamped(currentValue, -value);
9596
default -> throw new IllegalArgumentException("Change mode " + mode + " is not valid for ExprDustedStage!");
9697
};
9798
brushable.setDusted( Math.clamp(newValue, 0, maxValue));

0 commit comments

Comments
 (0)