Skript

Skript

743k Downloads

Negative remaining air

2002Spiele opened this issue ยท 0 comments

commented

Skript/Server Version

[Skript] Skript's aliases can be found here: https://github.com/SkriptLang/skript-aliases
[Skript] Skript's documentation can be found here: https://docs.skriptlang.org/
[Skript] Skript's tutorials can be found here: https://docs.skriptlang.org/tutorials
[Skript] Server Version: 1.21-99-f1f01a1 (MC: 1.21)
[Skript] Skript Version: 2.9.0 (skriptlang-github)
[Skript] Installed Skript Addons: None
[Skript] Installed dependencies: None

Bug Description

Getting the remaining air of an entity (tested on a player) at the last second before you take damage, Skript isn't able to return the timespan, cause the remaining air is negative.

Expected Behavior

I expected the expression to return a negative timespan, or stay at 0 seconds. Instead, it'll send an error in the console once it goes past 0 seconds.

Steps to Reproduce

  1. Enable effect commands in the config file
  2. Lose air by going under water
  3. Repeatedly say !send player's remaining air, until it eventually reaches 0
  4. The second before and while taking damage, you'll no longer receive a timespan of your remaining air. You'll instead see errors inside the console.

Errors or Screenshots

[20:39:53 ERROR]: #!#! [Skript] Severe Error:
[20:39:53 ERROR]: #!#!
[20:39:53 ERROR]: #!#! Something went horribly wrong with Skript.
[20:39:53 ERROR]: #!#! This issue is NOT your fault! You probably can't fix it yourself, either.
[20:39:53 ERROR]: #!#! You should report it at https://github.com/SkriptLang/Skript/issues. Please copy paste this report there (or use paste service).
[20:39:53 ERROR]: #!#! This ensures that your issue is noticed and will be fixed as soon as possible.
[20:39:53 ERROR]: #!#!
[20:39:53 ERROR]: #!#! Stack trace:
[20:39:53 ERROR]: #!#! java.lang.IllegalArgumentException: millis must be >= 0
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.util.Timespan.<init>(Timespan.java:195)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.util.Timespan.fromTicks(Timespan.java:222)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.expressions.ExprRemainingAir.convert(ExprRemainingAir.java:61)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.expressions.ExprRemainingAir.convert(ExprRemainingAir.java:38)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//org.skriptlang.skript.lang.converter.Converters.convert(Converters.java:501)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//org.skriptlang.skript.lang.converter.Converters.convertUnsafe(Converters.java:565)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.registrations.Converters.convertUnsafe(Converters.java:203)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.expressions.base.PropertyExpression.get(PropertyExpression.java:119)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.expressions.base.SimplePropertyExpression.get(SimplePropertyExpression.java:56)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.expressions.base.PropertyExpression.get(PropertyExpression.java:88)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.lang.util.SimpleExpression.getArray(SimpleExpression.java:97)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.effects.EffMessage.execute(EffMessage.java:123)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.lang.Effect.run(Effect.java:49)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.lang.TriggerItem.walk(TriggerItem.java:61)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.lang.TriggerItem.walk(TriggerItem.java:88)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.command.Commands.handleEffectCommand(Commands.java:210)
[20:39:53 ERROR]: #!#!     at Skript-2.9.0.jar//ch.njol.skript.command.Commands$2.lambda$onPlayerChat$0(Commands.java:309)
[20:39:53 ERROR]: #!#!     at org.bukkit.craftbukkit.scheduler.CraftFuture.run(CraftFuture.java:88)
[20:39:53 ERROR]: #!#!     at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:475)
[20:39:53 ERROR]: #!#!     at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1719)
[20:39:53 ERROR]: #!#!     at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:471)
[20:39:53 ERROR]: #!#!     at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1592)
[20:39:53 ERROR]: #!#!     at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1299)
[20:39:53 ERROR]: #!#!     at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:330)
[20:39:53 ERROR]: #!#!     at java.base/java.lang.Thread.run(Thread.java:1570)
[20:39:53 ERROR]: #!#!
[20:39:53 ERROR]: #!#! Version Information:
[20:39:53 ERROR]: #!#!   Skript: 2.9.0 (latest)
[20:39:53 ERROR]: #!#!     Flavor: skriptlang-github
[20:39:53 ERROR]: #!#!     Date: 16:01:35.354421100
[20:39:53 ERROR]: #!#!   Bukkit: 1.21-R0.1-SNAPSHOT
[20:39:53 ERROR]: #!#!   Minecraft: 1.21
[20:39:53 ERROR]: #!#!   Java: 22.0.1 (Java HotSpot(TM) 64-Bit Server VM 22.0.1+8-16)
[20:39:53 ERROR]: #!#!   OS: Windows 10 amd64 10.0
[20:39:53 ERROR]: #!#!
[20:39:53 ERROR]: #!#! Server platform: Paper
[20:39:53 ERROR]: #!#!
[20:39:53 ERROR]: #!#! Current node: null
[20:39:53 ERROR]: #!#! Current item: send remaining air of the player to event-command sender
[20:39:53 ERROR]: #!#!
[20:39:53 ERROR]: #!#! Thread: Server thread
[20:39:53 ERROR]: #!#!
[20:39:53 ERROR]: #!#! Language: english
[20:39:53 ERROR]: #!#! Link parse mode: DISABLED
[20:39:53 ERROR]: #!#!
[20:39:53 ERROR]: #!#! End of Error.
[20:39:53 ERROR]: #!#!

Other

No response

Agreement

  • I have read the guidelines above and affirm I am following them with this report.