Add a code to fly

This commit is contained in:
2025-08-19 11:31:00 +09:00
parent 5097b56aec
commit 8b8cdc2982
2 changed files with 23 additions and 3 deletions

View File

@@ -19,7 +19,7 @@ repositories {
}
dependencies {
compileOnly("io.papermc.paper:paper-api:1.21.3-R0.1-SNAPSHOT")
compileOnly("io.papermc.paper:paper-api:1.21.8-R0.1-SNAPSHOT")
}
tasks {
@@ -27,7 +27,7 @@ tasks {
// Configure the Minecraft version for our task.
// This is the only required configuration besides applying the plugin.
// Your plugin's jar (or shadowJar if present) will be used automatically.
minecraftVersion("1.21.3")
minecraftVersion("1.21.8")
}
}

View File

@@ -5,6 +5,7 @@ import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerSwapHandItemsEvent;
import org.walruslab.fmtm.core.FmtmCore;
public class ClickListener implements Listener {
@@ -25,9 +26,28 @@ public class ClickListener implements Listener {
var player = e.getPlayer();
if (player.getScoreboardTags().contains("fmtm") && item.getType() == Material.DIAMOND_SWORD) {
if (player.isSneaking()) {
var curVel = player.getVelocity();
var dir = player.getEyeLocation().getDirection();
var newVel = curVel.length() < 10.0 ? curVel.add(dir.multiply(30.0)) : dir.multiply(curVel.length() * 3.0);
player.setVelocity(newVel);
} else {
core.launch(player);
}
}
}
}
@EventHandler
public void onHandSwap(PlayerSwapHandItemsEvent e) {
var item = e.getOffHandItem();
var player = e.getPlayer();
if (player.getScoreboardTags().contains("fmtm") && item.getType() == Material.DIAMOND_SWORD) {
player.setVelocity(player.getVelocity().setY(0.2));
e.setCancelled(true);
}
}
}