TabCompleter

Wenn ihr bei eurem Plugin nicht weiter kommt, könnt ihr hier euer Problem beschreiben und um Hilfe bitten.

TabCompleter

Beitragvon PranKeD_ » Sa 18. Jun 2016, 21:46

Hallo,
Angenommen der Spieler PranKeD_ befindet sich auf dem Server.
Wenn man in den Chat die Nachricht : !P schreibt und Tab drückt soll dort dann : !PranKeD_ stehen.
Ich habe das mal probiert um zu setzen... Es kommt aber dann nicht !PranKeD_ raus sondern nur PranKeD_ , also ohne das ! .
Könnte mir jemand sagen wie das ! davor nicht gelöscht werden würde ?

Mein Code:

Code: Alles auswählen
  1.    @EventHandler
  2.    public void PlayerChatComplete(PlayerChatTabCompleteEvent e){
  3.       String msg = e.getChatMessage();
  4.       Player p = e.getPlayer();
  5.       if(msg.charAt(0) == '!'){
  6.          msg = msg.substring(1, msg.length());
  7.          
  8.          ArrayList arraylist = new ArrayList();
  9.          
  10.          for(Player i : Bukkit.getServer().getOnlinePlayers()){
  11.             String s = i.getName();
  12.             String name = s.substring(0,msg.length());
  13.             if(name.equals(msg)){
  14.                arraylist.add(s);
  15.             }
  16.           }
  17.          
  18.            if(arraylist != null){
  19.               ((CraftPlayer) p).getHandle().playerConnection.sendPacket(new PacketPlayOutTabComplete((String[]) arraylist.toArray(new String[arraylist.size()])));
  20.            }
  21.          
  22.       }
  23.    }
Benutzeravatar
PranKeD_
 
Beiträge: 4
Registriert: Sa 18. Jun 2016, 21:45

Re: TabCompleter

Beitragvon Letsplaybar » Sa 18. Jun 2016, 23:35

das hat was damit zu tuen das du darmit den String auf den namen setzt und alles andere ersetzt im wort wenn du vor dem namen noch das ! hinzufügst sollte es wieder da stehen
Code: Alles auswählen
  1. @EventHandler
  2.    public void PlayerChatComplete(PlayerChatTabCompleteEvent e){
  3.       String msg = e.getChatMessage();
  4.       Player p = e.getPlayer();
  5.       if(msg.charAt(0) == '!'){
  6.          msg = msg.substring(1, msg.length());
  7.          
  8.          ArrayList arraylist = new ArrayList();
  9.          
  10.          for(Player i : Bukkit.getServer().getOnlinePlayers()){
  11.             String s = i.getName();
  12.             String name = s.substring(0,msg.length());
  13.             if(name.equals(msg)){
  14.                s = "!"+s;
  15.                arraylist.add(s);
  16.             }
  17.           }
  18.          
  19.            if(arraylist != null){
  20.               ((CraftPlayer) p).getHandle().playerConnection.sendPacket(new PacketPlayOutTabComplete((String[]) arraylist.toArray(new String[arraylist.size()])));
  21.            }
  22.          
  23.       }
  24.    }
Bild
Helfe Wo ich kann.
Mein MinecraftServer: Letsplaybaro.de - Suchen Developer/Bilder

I hacked 127.0.0.1!!! :)
Benutzeravatar
Letsplaybar
 
Beiträge: 195
Registriert: Mo 1. Feb 2016, 17:21
Wohnort: Berlin

Re: TabCompleter

Beitragvon PranKeD_ » So 19. Jun 2016, 11:58

Danke :)
Die Lösung war eigentlich so einfach..
Benutzeravatar
PranKeD_
 
Beiträge: 4
Registriert: Sa 18. Jun 2016, 21:45


Zurück zu Hilfe und Support

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 19 Gäste