Fix folia potion effects on players (#197)

* Update FoliaLib to 0.3.1

* Fix potion effects such that they are applied using the entity's scheduler

* Update FoliaLib usages in code for v0.3.1
This commit is contained in:
TechnicallyCoded 2024-02-05 00:03:39 +01:00 committed by GitHub
parent 57b4c0078c
commit dbde32d48d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 16 additions and 15 deletions

View File

@ -345,7 +345,7 @@
<dependency> <dependency>
<groupId>com.tcoded</groupId> <groupId>com.tcoded</groupId>
<artifactId>FoliaLib</artifactId> <artifactId>FoliaLib</artifactId>
<version>0.2.3-legacy-support</version> <version>0.3.1</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<!-- FactionsBridge --> <!-- FactionsBridge -->

View File

@ -1,10 +1,9 @@
package me.SuperRonanCraft.BetterRTP.player.events; package me.SuperRonanCraft.BetterRTP.player.events;
import com.tcoded.folialib.wrapper.WrappedTask; import com.tcoded.folialib.wrapper.task.WrappedTask;
import me.SuperRonanCraft.BetterRTP.BetterRTP; import me.SuperRonanCraft.BetterRTP.BetterRTP;
import me.SuperRonanCraft.BetterRTP.versions.AsyncHandler; import me.SuperRonanCraft.BetterRTP.versions.AsyncHandler;
import org.bukkit.event.world.WorldLoadEvent; import org.bukkit.event.world.WorldLoadEvent;
import org.bukkit.scheduler.BukkitTask;
public class WorldLoad { public class WorldLoad {

View File

@ -1,6 +1,6 @@
package me.SuperRonanCraft.BetterRTP.player.rtp; package me.SuperRonanCraft.BetterRTP.player.rtp;
import com.tcoded.folialib.wrapper.WrappedTask; import com.tcoded.folialib.wrapper.task.WrappedTask;
import me.SuperRonanCraft.BetterRTP.BetterRTP; import me.SuperRonanCraft.BetterRTP.BetterRTP;
import me.SuperRonanCraft.BetterRTP.references.customEvents.RTP_CancelledEvent; import me.SuperRonanCraft.BetterRTP.references.customEvents.RTP_CancelledEvent;
import me.SuperRonanCraft.BetterRTP.versions.AsyncHandler; import me.SuperRonanCraft.BetterRTP.versions.AsyncHandler;

View File

@ -3,7 +3,6 @@ package me.SuperRonanCraft.BetterRTP.player.rtp.effects;
import me.SuperRonanCraft.BetterRTP.BetterRTP; import me.SuperRonanCraft.BetterRTP.BetterRTP;
import me.SuperRonanCraft.BetterRTP.references.file.FileOther; import me.SuperRonanCraft.BetterRTP.references.file.FileOther;
import me.SuperRonanCraft.BetterRTP.versions.AsyncHandler; import me.SuperRonanCraft.BetterRTP.versions.AsyncHandler;
import me.SuperRonanCraft.BetterRTP.versions.FoliaHandler;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffect;
import org.bukkit.potion.PotionEffectType; import org.bukkit.potion.PotionEffectType;
@ -51,7 +50,7 @@ public class RTPEffect_Potions { //Potions AND Invincibility
} }
public void giveEffects(Player p) { public void giveEffects(Player p) {
AsyncHandler.sync(() -> { AsyncHandler.syncAtEntity(p, () -> {
if (invincibleEnabled) if (invincibleEnabled)
p.setNoDamageTicks(invincibleTime * 20); p.setNoDamageTicks(invincibleTime * 20);
if (potionEnabled) { if (potionEnabled) {

View File

@ -1,6 +1,6 @@
package me.SuperRonanCraft.BetterRTP.references.rtpinfo; package me.SuperRonanCraft.BetterRTP.references.rtpinfo;
import com.tcoded.folialib.wrapper.WrappedTask; import com.tcoded.folialib.wrapper.task.WrappedTask;
import io.papermc.lib.PaperLib; import io.papermc.lib.PaperLib;
import me.SuperRonanCraft.BetterRTP.BetterRTP; import me.SuperRonanCraft.BetterRTP.BetterRTP;
import me.SuperRonanCraft.BetterRTP.player.commands.RTP_SETUP_TYPE; import me.SuperRonanCraft.BetterRTP.player.commands.RTP_SETUP_TYPE;
@ -13,7 +13,6 @@ import me.SuperRonanCraft.BetterRTP.versions.AsyncHandler;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.World; import org.bukkit.World;
import org.bukkit.scheduler.BukkitTask;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import java.util.HashMap; import java.util.HashMap;

View File

@ -1,29 +1,33 @@
package me.SuperRonanCraft.BetterRTP.versions; package me.SuperRonanCraft.BetterRTP.versions;
import com.tcoded.folialib.impl.ServerImplementation; import com.tcoded.folialib.impl.ServerImplementation;
import com.tcoded.folialib.wrapper.WrappedTask; import com.tcoded.folialib.wrapper.task.WrappedTask;
import me.SuperRonanCraft.BetterRTP.BetterRTP; import me.SuperRonanCraft.BetterRTP.BetterRTP;
import org.bukkit.entity.Entity;
import java.util.concurrent.TimeUnit;
public class AsyncHandler { public class AsyncHandler {
public static void async(Runnable runnable) { public static void async(Runnable runnable) {
getFolia().runAsync(runnable); getFolia().runAsync(task -> runnable.run());
//Bukkit.getScheduler().runTaskAsynchronously(BetterRTP.getInstance(), runnable); //Bukkit.getScheduler().runTaskAsynchronously(BetterRTP.getInstance(), runnable);
} }
public static void sync(Runnable runnable) { public static void sync(Runnable runnable) {
getFolia().runNextTick(runnable); getFolia().runNextTick(task -> runnable.run());
//Bukkit.getScheduler().runTask(BetterRTP.getInstance(), runnable);
}
public static void syncAtEntity(Entity entity, Runnable runnable) {
getFolia().runAtEntity(entity, task -> runnable.run());
//Bukkit.getScheduler().runTask(BetterRTP.getInstance(), runnable); //Bukkit.getScheduler().runTask(BetterRTP.getInstance(), runnable);
} }
public static WrappedTask asyncLater(Runnable runnable, long ticks) { public static WrappedTask asyncLater(Runnable runnable, long ticks) {
return getFolia().runLaterAsync(runnable, ticks * 50, TimeUnit.MILLISECONDS); return getFolia().runLaterAsync(runnable, ticks);
//return Bukkit.getScheduler().runTaskLaterAsynchronously(BetterRTP.getInstance(), runnable, ticks); //return Bukkit.getScheduler().runTaskLaterAsynchronously(BetterRTP.getInstance(), runnable, ticks);
} }
public static WrappedTask syncLater(Runnable runnable, long ticks) { public static WrappedTask syncLater(Runnable runnable, long ticks) {
return getFolia().runLater(runnable, ticks * 50, TimeUnit.MILLISECONDS); return getFolia().runLater(runnable, ticks);
//return Bukkit.getScheduler().runTaskLater(BetterRTP.getInstance(), runnable, ticks); //return Bukkit.getScheduler().runTaskLater(BetterRTP.getInstance(), runnable, ticks);
} }