i cant fix it

  • Thread starter /u/AlosiOfficial
  • Start date
U

/u/AlosiOfficial

Guest
Member
package org.impostorgame; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.format.TextColor; import net.kyori.adventure.text.format.TextDecoration; import org.bukkit.Bukkit; import org.bukkit.GameMode; import org.bukkit.World; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.scheduler.BukkitTask; import org.bukkit.util.Vector; import org.jetbrains.annotations.NotNull; import java.util.ArrayList; import java.util.List; import java.util.Objects; import java.util.Random; public class ImpostorGamePlugin extends JavaPlugin { private Player impostor; private final List<Player> innocents = new ArrayList<>(); private BukkitTask countdownTask; private BukkitTask glowingTask; private int timeRemaining = 3600; // 1 hour in seconds @Override public void onEnable() { if (getCommand("startpick") == null) { getLogger().warning("Command 'startpick' not found. Please check plugin.yml."); } else { Objects.requireNonNull(getCommand("startpick")).setExecutor(new StartPickCommand()); } getLogger().info("ImpostorGamePlugin enabled!"); // Start task to check glowing effect glowingTask = new BukkitRunnable() { @Override public void run() { checkForSurroundedPlayers(); } }.runTaskTimer(this, 0L, 20L); // Check every second } @Override public void onDisable() { if (countdownTask != null) { countdownTask.cancel(); } if (glowingTask != null) { glowingTask.cancel(); } } private class StartPickCommand implements CommandExecutor { @Override public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) { if (!(sender instanceof Player)) { sender.sendMessage(Component.text("This command can only be used by players.") .color(TextColor.color(255, 0, 0))); return false; } Player player = (Player) sender; if (!player.isOp()) { player.sendMessage(Component.text("You do not have permission to use this command.") .color(TextColor.color(255, 0, 0))); return false; } // Reset state impostor = null; innocents.clear(); // Start game startGame(); return true; } } private void startGame() { // Select impostor List<Player> players = new ArrayList<>(Bukkit.getOnlinePlayers()); if (players.size() < 2) { Bukkit.getServer().sendMessage(Component.text("Not enough players to start the game!") .color(TextColor.color(255, 0, 0))); return; } Random random = new Random(); impostor = players.get(random.nextInt(players.size())); players.remove(impostor); innocents.addAll(players); // Notify players Bukkit.getServer().sendMessage(Component.text(impostor.getName() + " is the impostor!") .color(TextColor.color(0, 255, 0))); for (Player player : Bukkit.getOnlinePlayers()) { if (player.equals(impostor)) { player.sendMessage(Component.text("You are the impostor!") .color(TextColor.color(255, 0, 0))); } else { player.sendMessage(Component.text("You are innocent.") .color(TextColor.color(0, 255, 0))); } } // Start countdown timer timeRemaining = 3600; // 1 hour in seconds countdownTask = new BukkitRunnable() { @Override public void run() { timeRemaining--; if (timeRemaining <= 0) { endGame(); cancel(); } else { updateActionBar(); } } }.runTaskTimer(this, 0L, 20L); // Run every second updateActionBar(); } private void updateActionBar() { String timeString = String.format("%02d: %02d: %02d", timeRemaining / 3600, (timeRemaining % 3600) / 60, timeRemaining % 60); String actionBarMessage = "Time Remaining: " + timeString; Component actionBarComponent = Component.text(actionBarMessage) .color(TextColor.color(255, 255, 0)) .decorate(TextDecoration.BOLD); for (Player player : Bukkit.getOnlinePlayers()) { player.sendActionBar(actionBarComponent); } } private void endGame() { Bukkit.getServer().sendMessage(Component.text("Time's up!") .color(TextColor.color(255, 0, 0))); if (impostor != null && innocents.stream().allMatch(p -> !p.isOnline())) { Bukkit.getServer().sendMessage(Component.text(impostor.getName() + " has won!") .color(TextColor.color(0, 255, 0))); } else { Bukkit.getServer().sendMessage(Component.text("The innocents have won!") .color(TextColor.color(0, 255, 0))); } // Teleport players to spawn and reset game state World world = Bukkit.getWorld("world"); if (world != null) { for (Player player : Bukkit.getOnlinePlayers()) { player.teleport(world.getSpawnLocation()); if (player.equals(impostor) || !innocents.contains(player)) { player.setGameMode(GameMode.SURVIVAL); } else { player.setGameMode(GameMode.SPECTATOR); } } } else { getLogger().warning("World 'world' not found, cannot teleport players."); } // Cleanup if (countdownTask != null) { countdownTask.cancel(); } } public void playerDied(Player player) { if (impostor != null && impostor.equals(player)) { endGame(); } else { player.setGameMode(GameMode.SPECTATOR); } } private void checkForSurroundedPlayers() { for (Player player : Bukkit.getOnlinePlayers()) { boolean isSurrounded = true; Vector[] directions = { new Vector(1, 0, 0), new Vector(-1, 0, 0), new Vector(0, 0, 1), new Vector(0, 0, -1), new Vector(0, 1, 0), new Vector(0, -1, 0) }; for (Vector direction : directions) { if (player.getLocation().add(direction).getBlock().getType().isAir()) { isSurrounded = false; break; } } if (isSurrounded) { player.addPotionEffect(new PotionEffect(PotionEffectType.GLOWING, 20, 0, true, false)); } else { player.removePotionEffect(PotionEffectType.GLOWING); } } } }
submitted by /u/AlosiOfficial
[link] [comments]

Continue reading...

free plugins
minecraft paid for free
spigotmc
SpigotMC
free minecraft paid plugins
free minecraft plugins
aac free
ewg free
Minecraft Premium Plugins
ewg free download
litebans free
epicworldgenerator free
free schematics
leaked schematics minecraft
schematics
schematics leaked
schematics free
minecraft schematics free
paid minecraft schematics free
paid minecraft schematics for free
free cracked plugins
free cracked minecraft plugins
plugins
featherboard download
featherboard plugin download
antiaura download
minecraft plugins
xenforo leaked
xenforo for free
xenforo addons
 
BlackSpigot General Chat
Rules Help Users
    B @ Bumbinz: yo how do i fixon orbit client the thing that ask me to enter purchase id?
    Top