Necekez1 2 Opublikowano 21 maja 2023 Udostępnij Opublikowano 21 maja 2023 nGen - 1.0 Witam, przedstawiam wam mój pierwszy udostępniony publicznie plugin - nGen Jest to generator itemów niczym z serwerów SkyGen KOMENDY Spoiler /addgen <nazwa> - Tworzy generator - /remgen <nazwa> - Usuwa generator - /gen <nazwa> <slot1/slot2> <1-100(Szansa na drop)> - Dodaje item który ma dropić! SHOWCASE Spoiler Jestem otwarty na opinie Śmiało piszcie co dodać/usunąć/zmienić Pobieranie Kliknij tu, aby pobrać plugin! Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
MatmezYT 0 Opublikowano 8 listopada 2023 Udostępnij Opublikowano 8 listopada 2023 Dodaj genboosty z skygen Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LeviBoyPL 161 Opublikowano 8 listopada 2023 Udostępnij Opublikowano 8 listopada 2023 (edytowane) Kilka uwag: Przede wszystkim, powinieneś stworzyć jedną komendę, np ngen i tam dodać subkomendy add remove i edit Sprawdź konwencja nazewnictwa w javie. Przede wszystkim jak poprawnie nazywać package. Czemu połowa zmiennych i metod jest nazwana po polsku, a drugie pół po angielsku? Zamiast wrzucać isInt i kolor do maina mógłbyś stworzyć klasę ze statycznymi metodami, np Utils i tam wrzucić pomocnicze metody. Pusta klasa GeneratosEvent. Zamiast zmiany wrzucać do configa i czytać ten config co sekundę (co jeśli ktoś chciałby custom czas?), zapisuj obiekty generatora w ramie. Stwórz sobie jakiś GeneratorStorage i tam przechowuj wszystkie generatory, a w tasku zrób foreacha na listę czy mapkę. Akurat w tym przypadku jest to trochę pierdółka, ale ogólnie jest to dość ważny temat. Kod nie jest thread-safe. Jest to dość obszerne pojęcie, dlatego odsyłam do google, ale mogę w skrócie napisać, że chodzi o to, że masz na przykład kod x, y, z = player.getLocation().getDanyBlok(). W tym momencie pobierasz lokalizację gracza za każdym razem od nowa. Kod wykonywany jest synchronicznie, tzn leci linijka po linijce i następuje egzekucja danego fragmentu. Alee w czasie kiedy wykonywany jest Twój kod, dzieje się bardzo wiele wokół. Może na przykład dość do sytuacji, w czasie powiedzmy laga, że gracz zmienił pozycję, a Twój kod jest akurat wykonywany, tzn pobrałeś x, pobrałeś y, nagle jest lag, gracz zmienia pozycję i jest już w innym z, więc ma gena przesuniętego o jedną kratkę. Zapobieganie temu jest bardzo proste. Wystarczy, że pobierzesz raz do zmiennej player.getLocation() i będziesz operował na tej zmiennej. Możesz zrobić sobie klasę Messages, w której statycznie będziesz przetrzymywał wszystkie wiadomości, a wysyłać za pomocą player.sendMessage(Messages.USAGE_REM_GEN), w ten sposób będziesz miał łatwy dostęp do wszystkich wiadomości. Nie używaj & w wiadomościach, bardzo przestarzałe podejście. Zamiast tego powinieneś dodawać kolory przy użyciu ChatColor: player.sendMessage(ChatColor.GRAY + "»..."); albo jeszcze lepiej player.sendMessage(String.format("%s»...", ChatColor.GRAY) Fajny plugin do poćwiczenia, na początek, ale brakuje tutaj trochę elementarnej wiedzy nt programowania jak i programowania w javie. Jeśli wprowadzisz chociaż część zaproponowanych poprawek, to zobaczysz, że zacznie Ci się kodzić lepiej Edytowane 8 listopada 2023 przez LeviBoyPL kerpson 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Necekez1 2 Opublikowano 5 marca 2024 Autor Udostępnij Opublikowano 5 marca 2024 Siema, dawno nie wbijałem wogóle na forum, jak tak teraz czytam to 99% z tego już robię po za tym 1% czyli & w wiadomosciach, często używam też hexa i po prostu mam funkcje która zamienia mi hex oraz & na kolory. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
piotrek090 0 Opublikowano 2 czerwca 2024 Udostępnij Opublikowano 2 czerwca 2024 będzie do pobrania bo bym potrzebował? jak tak to na dc możemy pogadać dc Piotrek090 Cytuj Odnośnik do komentarza 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ą.