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 minecraft


Gość BrykietPL

Rekomendowane odpowiedzi

Opublikowano

Siema. Szukam, szukam i nigdzie nie mogę znaleźć.

 

Mam taki problem otóż nie ukrywa, ani pokazuje graczy.

 

wb5zso.jpg

 

Kod jest dobry nie wywala błędu.

 

Gdy wpisze /ukryj na grze wyświetla się sam tekst a graczy nie ukrywa. Tak samo /pokaz.

 

 

Szukam kogoś obeznanego co mi pomoże.

 

Opublikowano

Nigdy nie developowałem bukkita, ale wydaje mi się, że hidePlayer działa na jednego playera i powinieneś zrobić pętle, aczkolwiek nie jestem pewny.

O błędach w C++ powie Ci kompilator, a o błędach w PHP klient..

 

Opublikowano

Tutaj w Twoim kodzie ukrywasz jednego gracza, a zeby wszystkich ukryc to musisz pobrac liste graczy online nastepnie ukryc/pokazac graczy

logo.png


Opublikowano

@UP Dziwna logika o.O.

 

Teraz Ci to wytłumaczę: Jest gracz A i gracz B. Pisząc 'A.hidePlayer( B);' Ukrywasz gracza B przed graczem A.

Czyli prawdiłowo byłoby jakoś tak:

 







Player a = (Player) sender;

for(Player b : Bukkit.getServer().getOnlinePlayers()){

a.hidePlayer(;

}

708121422388637873334.png

Opublikowano

A jak zrobić teraz, że wejdzie nowy gracz i on też jest ukryty?

Opublikowano

A jak zrobić teraz, że wejdzie nowy gracz i on też jest ukryty?

 

Używasz eventu PlayerJoinEvent, i ukrywasz gracza który wszedł na serwer u wszystkich.

 

@EventHandler
public void onPlayerJoin(PlayerJoinEvent e)
{
 Player connectedPlayer = e.getPlayer();

 for(Player p : Bukkit.getServer().getOnlinePlayers())
 {
  p.hidePlayer(connectedPlayer);
 }
}

 

Oczywiście, aby wykryło event musisz go "włączyć" w funkcji onEnable.

public PluginManager pm;

public void onEnable()
{
 pm = Bukkit.getServer().getPluginManager();

 pm.registerEvents(...);
} 

 

Pisane z głowy, więc mogą być drobne błędy.

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...