Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Problem] Plugin długość argumentów


Rekomendowane odpowiedzi

Opublikowano

Mam taki kod:

I nie mogę znaleźć jak sprawdzić długość argumentów 1 i 2 bo w aktualnym kodzie mi nie działa,a sprawdzałem to na wszystkie sposoby.

package pl.kaw.Gildie;
 
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
 
public class Main extends JavaPlugin implements CommandExecutor {
 
@Override
public void onEnable() {
System.out.println("[" + this.getName() + "] §6Plugin zostal zalaczony!");
}
 
@Override
public void onDisable() {
System.out.println("[" + this.getName() + "] §6Plugin zostal wylaczony!");
}
 
 
@Override
public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args) {
if( !(sender instanceof Player)){
sender.sendMessage("Konsola nie moze uzywac tej komendy.");
return false;
}
Player player = (Player) sender;
if(cmdlabel.equalsIgnoreCase("gildia")){
if(args.length == 0){
        sender.sendMessage("/gildia zaloz <skrot> <nazwa> - Tworzy gildie.");
           return true;
}
if((args.length == 1) && args[0].equalsIgnoreCase("zaloz")){
        if (args[1].length() > 5) {
        sender.sendMessage("Zbyt duzo znakow.");
               return false;
           }
           if (args[1].length() < 1) {
            sender.sendMessage("Zbyt malo znakow.");
               return false;
           }
            Bukkit.broadcastMessage("Gildia " + args[1] + "[" + args[2] + "]" + " zostala zalozona przez " + player.getName());
            return true;
        }
       }
return false;
}
 
}

logo_head.png

Opublikowano

kiedy używasz args.length dostajesz ilość argumentów czyli jeżeli nie ma argumentów to masz 0 jeżeli masz 2 argumenty to otrzymujesz 2.

Według mnie możesz zamienić te linijke

if((args.length == 2) && args[1].equalsIgnoreCase("zaloz")){

na

id((args.length == 1) && args[1].equalsIgnoreCase("zaloz")){

pozatym znalazłem błąd w linijce

Bukkit.broadcastMessage("Gildia " + args[1] + "[" + args[2] + "]" + " zostala zalozona przez " + player.getName());

args[1] zamien na args[0] oraz args[2] zamien na args[1]

chcesz kupić tanio grę przez internet?

Zerknij tutaj: https://www.g2a.com/r/vakus

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...