Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите hidePlayer()

Статус
Закрыто для дальнейших ответов.

jimi_1997

Активный участник
Пользователь
Баллы
61
Имя в Minecraft
jimi_1997
Здравствуйте, пожалуйста помогите разобраться почему hidePlayer не срабатывает.
Код:
Код:
package Eno.Spy;

import java.util.Arrays;
import java.util.List;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerInteractEvent;
import org.*********ventory.ItemStack;
import org.*********ventory.meta.ItemMeta;

public class Spy implements Listener {
    public ItemStack make(Material material, int amount,
            int shrt, String displayName, List<String> lore) {
        ItemStack item = new ItemStack(material, amount, (short) shrt);
        ItemMeta meta = item.getItemMeta();
        meta.setDisplayName(displayName);
        meta.setLore(lore);
        item.setItemMeta(meta);
        return item;
    }

    @EventHandler
    public void onUseSpy(PlayerInteractEvent e) {
        ItemStack item = e.getPlayer().getItemInHand();
        Player player = e.getPlayer();
            
        if(item.getItemMeta().getDisplayName().equalsIgnoreCase(ChatColor.GOLD + "Spy")) {
            player.getInventory().remove(make(Material.NETHER_STAR, 1, 0, ChatColor.GOLD + "Spy", Arrays.asList(ChatColor.WHITE + "Это поможет вам стать невидимым")));
            player.getInventory().addItem(make(Material.NETHER_STAR, 1, 0, ChatColor.GOLD + "Spy ON", Arrays.asList(ChatColor.WHITE + "Вы невидимы")));
            //... Эта часть кода не работает, почему?
            for (Player p : Bukkit.getServer().getOnlinePlayers()) {
                p.hidePlayer(e.getPlayer());
                }
            player.sendMessage("Изчезли");
            //...
        }else if(item.getItemMeta().getDisplayName().equalsIgnoreCase(ChatColor.GOLD + "Spy ON")) {
            player.getInventory().remove(make(Material.NETHER_STAR, 1, 0, ChatColor.GOLD + "Spy ON", Arrays.asList(ChatColor.WHITE + "Вы невидимы")));
            player.getInventory().addItem(make(Material.NETHER_STAR, 1, 0, ChatColor.GOLD + "Spy", Arrays.asList(ChatColor.WHITE + "Это поможет вам стать невидимым")));
            player.sendMessage("Появились");
        }
    }
}
Код:
[08:55:58 ERROR]: Could not pass event PlayerInteractEvent to Eno v1.0

org.bukkit.event.EventException

    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:294) ~[Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:486) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at org.bukkit.craftbukkit.v1_7_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:216) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.PlayerInteractManager.interact(PlayerInteractManager.java:374) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.PlayerConnection.a(PlayerConnection.java:629) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.PacketPlayInBlockPlace.a(SourceFile:60) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.PacketPlayInBlockPlace.handle(SourceFile:9) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.NetworkManager.a(NetworkManager.java:157) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.ServerConnection.c(SourceFile:134) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.MinecraftServer.v(MinecraftServer.java:667) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:260) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:558) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:469) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

Caused by: java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()Ljava/util/Collection;

    at Eno.Spy.Spy.onUseSpy(Spy.java:36) ~[?:?]

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.6.0_65]

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) ~[?:1.6.0_65]

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ~[?:1.6.0_65]

    at java.lang.reflect.Method.invoke(Method.java:597) ~[?:1.6.0_65]

    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:292) ~[Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]

    ... 15 more
 
Последнее редактирование:
public void onUseSpy(PlayerInteractEvent e) {
...
for (Player p : Bukkit.getServer.getOnlinePlayers()) {
p.hidePlayer(event.getPlayer());
}
...
}
 
public void onUseSpy(PlayerInteractEvent e) {
...
for (Player p : Bukkit.getServer.getOnlinePlayers()) {
p.hidePlayer(event.getPlayer());
}
...
}

Я исправил, но всё равно не работает.
Код:
[08:27:42 ERROR]: Could not pass event PlayerInteractEvent to Eno v1.0
org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:294) ~[Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:486) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at org.bukkit.craftbukkit.v1_7_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:216) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at org.bukkit.craftbukkit.v1_7_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:186) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.PlayerConnection.a(PlayerConnection.java:605) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.PacketPlayInBlockPlace.a(SourceFile:60) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.PacketPlayInBlockPlace.handle(SourceFile:9) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.NetworkManager.a(NetworkManager.java:157) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.ServerConnection.c(SourceFile:134) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.MinecraftServer.v(MinecraftServer.java:667) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:260) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:558) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:469) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
Caused by: java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()Ljava/util/Collection;
    at Eno.Spy.Spy.onUseSpy(Spy.java:36) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.6.0_65]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) ~[?:1.6.0_65]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ~[?:1.6.0_65]
    at java.lang.reflect.Method.invoke(Method.java:597) ~[?:1.6.0_65]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:292) ~[Aristi.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    ... 15 more
 
Последнее редактирование:
for (Player p : Bukkit.getServer().getOnlinePlayers()) {
 
Всем спасибо, тема закрыта.
Проблема была в Bukkit API.
 
Статус
Закрыто для дальнейших ответов.

Поделиться этой страницей

Назад
Верх