Grex 58 Opublikowano 7 maja 2020 Udostępnij Opublikowano 7 maja 2020 (edytowane) Siema! Zgodnie z waszymi propozycjami, zedytowałem mój plugin. Zapraszam do oceny i podpowiedzi co jeszcze można zmienić! ChatManager v 1.1 - KLIKNIJ TUTAJ (GitHUB) Dodane w wersji 1.1 - Pokazywanie czy chat jest wlaczony czy wylaczony w GUI, Wiadomość w konsoli o tym kto wyczyścił chat. Poprawione w wersji 1.1 - Nazwy package'ów i klas, Puste wiadomości czyszczenia chatu nie pojawiają się w konsoli, usunięcie niepotrzebnego onDisable, Edytowane 8 maja 2020 przez Grex AKTUALIZACJA Cytuj Odnośnik do komentarza https://skript.pl/temat/38989-chatmanager-plugin-by-greexowy/ Udostępnij na innych stronach Więcej opcji udostępniania...
Nieaktywny Opublikowano 7 maja 2020 Udostępnij Opublikowano 7 maja 2020 ładnie Cytuj Odnośnik do komentarza https://skript.pl/temat/38989-chatmanager-plugin-by-greexowy/#findComment-245327 Udostępnij na innych stronach Więcej opcji udostępniania...
Peridot 512 Opublikowano 7 maja 2020 Udostępnij Opublikowano 7 maja 2020 (edytowane) Wszystkie package'e nazywamy z małej litery. Ogólnie w głównym package'u lepiej by wyglądało pl zamiast poland Główną klasę powinno się nazywać NazwaPluginu lub NazwaPluginuPlugin a nie Main Zmień nazwę package'a events na listeners, klasy które w nim nazwij najlepiej tak jakie eventy nasłuchujesz w nich, np. jak nasłuchujesz eventu AsyncPlayerChatEvent to nazwij klase AsyncPlayerChatListener W klasie Main wywal to onDisable() bo nie jest potrzebne, i tak nic w niej nie wywołujesz Zamiast wysyłać przy czyszczeniu chatu 100 broadcastów lepiej zloopuj sobie wszystkich graczy online używając Bukkit.getOnlinePlayers() i do nich wyślij wiadomość, raczej nikt nie chce żeby mu wysyłało 100 pustych wiadomości w konsoli Zamiast tworzyć nowe itemy za każdym wywołaniem komendy stwórz je raz i przypisz do zmiennych globalnych Jak masz event to nie nazywaj zmiennej po prostu e tylko najlepiej całe event Nie zagnieżdżaj tak kodu i returnuj jak najwcześniej czyli np. if (!(sender instanceof Player)) { return; } kod będzie wtedy znacznie łatwiejszy do czytania zamiast System.out.println używaj lepiej Bukkitowego loggera, Bukkit.getLogger() i np. Bukkit.getLogger().info("tekst") lub jeśli jest to możliwe do wywołania "z głównej klasy" to plugin.getLogger() Oczywiście jest trochę błędów ale tak to spoko, dorób sobie ten plik konfiguracyjny o którym wspominałeś. Fajnie też, że używasz githuba = ) Również spoko jest to, że używasz ChatColor zamiast paragrafów jak to niektórzy robią. Spoko jest to, że nie robisz tego w głównej klasie jak to niektórzy tylko od razu w oddzielnych klasach = ) Nie jest źle jak na pierwszy plugin Edytowane 7 maja 2020 przez Peridot kerpson i Misio12320 2 Cytuj Odnośnik do komentarza https://skript.pl/temat/38989-chatmanager-plugin-by-greexowy/#findComment-245328 Udostępnij na innych stronach Więcej opcji udostępniania...
Grex 58 Opublikowano 7 maja 2020 Autor Udostępnij Opublikowano 7 maja 2020 (edytowane) 1 godzinę temu, Peridot napisał: Wszystkie package'e nazywamy z dużej litery. Ogólnie w głównym package'u lepiej by wyglądało pl zamiast poland Główną klasę powinno się nazywać NazwaPluginu lub NazwaPluginuPlugin a nie Main Zmień nazwę package'a events na listeners, klasy które w nim nazwij najlepiej tak jakie eventy nasłuchujesz w nich, np. jak nasłuchujesz eventu AsyncPlayerChatEvent to nazwij klase AsyncPlayerChatListener W klasie Main wywal to onDisable() bo nie jest potrzebne, i tak nic w niej nie wywołujesz Zamiast wysyłać przy czyszczeniu chatu 100 broadcastów lepiej zloopuj sobie wszystkich graczy online używając Bukkit.getOnlinePlayers() i do nich wyślij wiadomość, raczej nikt nie chce żeby mu wysyłało 100 pustych wiadomości w konsoli Zamiast tworzyć nowe itemy za każdym wywołaniem komendy stwórz je raz i przypisz do zmiennych globalnych Jak masz event to nie nazywaj zmiennej po prostu e tylko najlepiej całe event Nie zagnieżdżaj tak kodu i returnuj jak najwcześniej czyli np. if (!(sender instanceof Player)) { return; } kod będzie wtedy znacznie łatwiejszy do czytania zamiast System.out.println używaj lepiej Bukkitowego loggera, Bukkit.getLogger() i np. Bukkit.getLogger().info("tekst") lub jeśli jest to możliwe do wywołania "z głównej klasy" to plugin.getLogger() Oczywiście jest trochę błędów ale tak to spoko, dorób sobie ten plik konfiguracyjny o którym wspominałeś. Fajnie też, że używasz githuba = ) Również spoko jest to, że używasz ChatColor zamiast paragrafów jak to niektórzy robią. Spoko jest to, że nie robisz tego w głównej klasie jak to niektórzy tylko od razu w oddzielnych klasach = ) Nie jest źle jak na pierwszy plugin Dzięki, w wolnym czasie poprawie te błędy i dorobię config. Dodatkowo zapytam się: Lepiej używać Eclipse czy IntelliJ ? Jakie są różnice i wady/zalety programów? Edytowane 7 maja 2020 przez Grex Cytuj Odnośnik do komentarza https://skript.pl/temat/38989-chatmanager-plugin-by-greexowy/#findComment-245352 Udostępnij na innych stronach Więcej opcji udostępniania...
kerpson 551 Opublikowano 8 maja 2020 Udostępnij Opublikowano 8 maja 2020 Jak na jeden z pierwszych całkiem spoko. Ułatwieniem dla Ciebie było by używanie jakiegoś ItemBuildera czy coś. Fajnie, że używasz pętli, + Zamiast takiego zabiegu: for(int i = 0; i < 100; i++) { for (Player players : Bukkit.getOnlinePlayers()) { players.sendMessage(" "); } } Możesz na starcie w pluginie stworzyć dużą wiadomość i wysyłać graczom. System.out.println, lepiej użyć Loggera No i ta zmienna "chat" mogła by nie być statyczna Generalnie fajna uwaga, takie inventory możesz stworzyć w innej klasie, załadować w klasie glównej, a potem je tylko otwierać. Zaoszczędzisz na zasobach serwera i po części kod będzie schludniejszy. Toranktto 1 Cytuj Odnośnik do komentarza https://skript.pl/temat/38989-chatmanager-plugin-by-greexowy/#findComment-245468 Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.