Skocz do zawartości

Problem z arrayList ( chyba )


Rekomendowane odpowiedzi

Zamień

ArrayList<UUID> channel = new ArrayList<UUID>(); => Set<String> channel = new HashSet<>();

channel.add(p.getUniqueId()); => channel.add(p.getUniqueId().toString());

channel.remove(p.getUniqueId()); => channel.remove(p.getUniqueId().toString());

if (channel.contains(player.getUniqueId())) { => if (channel.contains(player.getUniqueId().toString())) {

i powinno działać :]

Odnośnik do komentarza
https://skript.pl/temat/12390-problem-z-arraylist-chyba/#findComment-87054
Udostępnij na innych stronach

1 minutę temu, tomecki1 napisał:

Mój błąd, powinno być

 Set<String> channel = new HashSet<>();

a nie HashMap.

Odnośnik do komentarza
https://skript.pl/temat/12390-problem-z-arraylist-chyba/#findComment-87056
Udostępnij na innych stronach

Dalej nie działa xD

Nie dodaje mnie do tego, bo w eventchat sprawdzam rozmiar tego i pisze 0

A logów niestety brak...

 

@Edit:

Sprawdziłem dodaje, ale jak już coś robię po za public boolean to nie widzi.

Edytowane przez tomecki1
Odnośnik do komentarza
https://skript.pl/temat/12390-problem-z-arraylist-chyba/#findComment-87057
Udostępnij na innych stronach

2 minuty temu, tomecki1 napisał:

Dalej nie działa xD

Nie dodaje mnie do tego, bo w eventchat sprawdzam rozmiar tego i pisze 0

A logów niestety brak...

Wstaw klasę główną pluginu. Czy zarejestrowałeś poprawnie komendę?

Odnośnik do komentarza
https://skript.pl/temat/12390-problem-z-arraylist-chyba/#findComment-87058
Udostępnij na innych stronach

2 minuty temu, Libter napisał:

Ten temat został przeniesiony do innego działu.

Dopiero teraz? :D Nie wiedziałem jaki dział...

3 minuty temu, Libter napisał:

Wstaw klasę główną pluginu. Czy zarejestrowałeś poprawnie komendę?

Muszę całą?

Dam onEnable

	public void onEnable() {
        Chat = true;
	        System.out.println("[EChat]Wlaczanie...");
        System.out.println("|---------------------");
        System.out.println("|");
        System.out.println("|Copyright by tomecki1");
        System.out.println("|");
        System.out.println("|---------------------");
        System.out.println("EpicChat -> Ty kontrolujesz czat!");
        getCommand("Chat").setExecutor(new ListeneryPL());
        getCommand("Channel").setExecutor(new ChannelPL());
        msgs = getConfig().getStringList("AutoMsg.listMsg");
        prefixmsg = getConfig().getString("AutoMsg.prefix").replace("&", "§");
        prefix = getConfig().getString("Prefix").replace("&", "§");
        censureList = getConfig().getStringList("censure.List");
        OrtoList = getConfig().getStringList("Orto.List");
        chatoff = getConfig().getString("Chat.msgoff").replace("&", "§");
        chaton = getConfig().getString("Chat.msgon").replace("&", "§");
        ortolist = getConfig().getStringList("Orto.List");
        advertisementList = getConfig().getStringList("advertisement.List");
        Messagep = getConfig().getString("censure.Messagep").replace("&", "§");
        Messagep2 = getConfig().getString("advertisement.Messagep").replace("&", "§");
        Messagep3 = getConfig().getString("Orto.messagep").replace("&", "§");
        Messagecooldown = getConfig().getString("cooldown.message").replace("&", "§");
        minLength = getConfig().getInt("CapsLock.min-length");
        upperCase = getConfig().getString("CapsLock.uppercase").replace("&", "§");
        saveDefaultConfig();
        Bukkit.getPluginManager().registerEvents(new ChannelPL(), this);
        Bukkit.getPluginManager().registerEvents(new ListeneryPL(), this);
        Bukkit.getPluginManager().registerEvents(this, this);
        autoMsg();
	    }
	

Edytowane przez tomecki1
Odnośnik do komentarza
https://skript.pl/temat/12390-problem-z-arraylist-chyba/#findComment-87060
Udostępnij na innych stronach

5 minut temu, Libter napisał:

Komenda wygląda na poprawnie zarejestrowaną. Podaj jeszcze logi konsoli na których wpisujesz /Channel join.

Nic się nie wyświetla:

 [Essentials] Loading Essentials vPre2.14.1.3
[14:00:29 INFO]: [Vault] Loading Vault v1.4.1-b436
[14:00:29 INFO]: [Vault] Enabling Vault v1.4.1-b436
[14:00:29 INFO]: [Vault] [Economy] Essentials Economy found: Waiting
[14:00:29 INFO]: [Vault] [Permission] SuperPermissions loaded as backup permission system.
[14:00:29 INFO]: [Vault] Enabled Version 1.4.1-b436
[14:00:29 INFO]: [EpicChatPL] Enabling EpicChatPL v_2.2
[14:00:29 INFO]: [EChat]Wlaczanie...
[14:00:29 INFO]: |---------------------
[14:00:29 INFO]: |
[14:00:29 INFO]: |Copyright by tomecki1
[14:00:29 INFO]: |
[14:00:29 INFO]: |---------------------
[14:00:29 INFO]: EpicChat -> Ty kontrolujesz czat!
[14:00:30 INFO]: [Essentials] Enabling Essentials vPre2.14.1.3
[14:00:30 INFO]: Using locale pl_PL
[14:00:30 INFO]: Using locale pl_PL
[14:00:30 INFO]: [Vault][Economy] Essentials Economy hooked.
[14:00:30 INFO]: Essentials: Using config file enhanced permissions.
[14:00:30 INFO]: Permissions listed in as player-commands will be given to all users.
[14:00:30 INFO]: Server permissions file permissions.yml is empty, ignoring it
[14:00:30 INFO]: tomecki1: Reload complete.
[14:00:30 INFO]: EChat-> Proszŕ o zg│aszanie b│ŕdˇw mojego pluginu!
[14:00:31 INFO]: [Vault] Checking for Updates:
[14:00:31 WARN]: [Vault] Stable Version: 1.5.6 is out! You are still running version: 1.4.1
[14:00:31 WARN]: [Vault] Update at: http://dev.bukkit.org/server-mods/vault
[14:00:32 INFO]: tomecki1 issued server command: /channel join
[14:00:34 INFO]: <tomecki1> sadsfsdf
>

Tutaj:

if (args[0].equalsIgnoreCase("join")) {
            channel.add(p.getDisplayName());
            sender.sendMessage(EpicChatPL.prefix +ChatColor.GOLD + "Gratulacje! Dołączyłeś do kanału administracji!");
            sender.sendMessage("" + channel.size());
            return true;
        }

        if (args[0].equalsIgnoreCase("leave")) {
            sender.sendMessage("" + channel.size());
            channel.remove(p.getDisplayName());
            sender.sendMessage(EpicChatPL.prefix +ChatColor.RED + "Opuściłeś kanał administracji!");
            sender.sendMessage("" + channel.size());
            return true;
        }

Działa, bo sprawdzam channel.size, ale tutaj:

@EventHandler
    public void onPlayerChat(AsyncPlayerChatEvent e) {
        String msg = e.getMessage();
        Player player = e.getPlayer();
        if (channel.contains(player.getDisplayName())) {
            for (Player online : Bukkit.getOnlinePlayers()) {
                if (online.hasPermission("EpicCat.channel.admin")) {
            online.sendMessage("§8[§4§lAdminChat§8] " +"&6"+ e.getPlayer().getDisplayName() + " §8: §f" + msg);
            e.setCancelled(true);
                }
            }
        }
    }

Nie działa XD

Odnośnik do komentarza
https://skript.pl/temat/12390-problem-z-arraylist-chyba/#findComment-87062
Udostępnij na innych stronach

34 minuty temu, Libter napisał:

Na początku metody onCommand dodaj linijkę


sender.sendMessage("test");

i napisz czy wiadomość się wyświetla.

Jeśli nie - komenda nie została prawidłowo zarejestrowana.

Że tak:

	public boolean onCommand(CommandSender sender, Command cmd, String Label, String[] args) {
        sender.sendMessage("test");
        Player p = (Player) sender;
        if (!sender.hasPermission("EChat.channel")) {
            sender.sendMessage(ChatColor.RED + "Nie posiadasz uprawnień!");
            return true;
        }
        if (args[0].equalsIgnoreCase("join")) {
            channel.add(p.getDisplayName());
            sender.sendMessage(EpicChatPL.prefix +ChatColor.GOLD + "Gratulacje! Dołączyłeś do kanału administracji!");
            sender.sendMessage("" + channel.size());
            return true;
        }
	

 

Wyświetla się, gdy napiszę /channel join

@Edit:

Jak samo /channel to też

Edytowane przez tomecki1
Odnośnik do komentarza
https://skript.pl/temat/12390-problem-z-arraylist-chyba/#findComment-87064
Udostępnij na innych stronach

3 minuty temu, Libter napisał:

To nie ma prawa nie działać :v

Pewnie nic się nie zmieni, ale możesz usunąć jeszcze sprawdzanie uprawnień.

Nie...

Jeżeli to coś pomoże to mam inny plugin i w nim też nie działa chatevent... xd

Odnośnik do komentarza
https://skript.pl/temat/12390-problem-z-arraylist-chyba/#findComment-87073
Udostępnij na innych stronach

 

 

55 minut temu, steel napisał:

@tomecki1

Główna klasa: http://pastebin.com/iGHMcej8

Poboczna klasa: http://pastebin.com/SYdfUH3Y

Plugin.yml: http://pastebin.com/CFkRVd6U

Nie testowałem, pisałęm z pamięci. Hope it will help u, m8.

nie działa i:

To jest w pobocznej:

@EventHandler
    public void chatEvent(AsyncPlayerChatEvent e) {
        e.getPlayer().sendMessage("" +channel.size());
      if(channel.contains(e.getPlayer().getUniqueId())) {
        e.setCancelled(true);
        for(Player player : Bukkit.getServer().getOnlinePlayers()) {
          if(player.hasPermission("echat.channel.admin")) {
            player.sendMessage("§8[§4§lAdminChat§8]"+"§3 -> §f" + e.getMessage());
          } else {
            if(channel.contains(player.getUniqueId())) {
              player.sendMessage("§8[§4§lAdminChat§8]"+"§3 -> §f" + e.getMessage());
            }
          }
        }
      }
    }

i

 e.getPlayer().sendMessage("" +channel.size());

wyświetla 0 chociaż ja jestem.

e.setCancelled(true);

nie anuluje pisania...

 

 

@Edit:

Nie uwierzycie !!!!!!!!

Naprawiłem! Dałem ArrayList do głównej i z głównej wszystko pobierałem xD

Do zamknięcia! Dziękuję wszystkim, ale sam na to wpadłem ;) @Libter  @steel

Edytowane przez tomecki1
Odnośnik do komentarza
https://skript.pl/temat/12390-problem-z-arraylist-chyba/#findComment-87077
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...