-
Ilość zawartości
987 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
13
Treść opublikowana przez yooniks
-
simpleregionmarket
-
Ostatnio robilem magazyny: https://www.spigotmc.org/resources/✍-75-sale-magazines-markets-an-advanced-plugin-for-magazines-markets-warehouses-1-7-x-1-14-x.69117/ Kupujesz magazyn, mozesz go ulepszac itp. Tylko ze nie kladziesz go nigdzie tylko jest "przenosny". Pod komenda /magazyny wyswietl - otwiera sie gui z magazynami (tymi do ktorych masz dostep - kupione albo te do ktorych ktos cie dodal) w kazdym magazynie masz okreslona ilosc stron ktora mozesz zwiekszac itp. Testowalem i dziala fajnie ;d No i bedzie rozwijany. Tutaj filmik: no i nie mysl ze za darmo dostaniesz takie cos hah, przeciez nawet ich programista na pewno sie nameczyl i za darmo tego nie zrobil. najlepiej to kazdy by chcial gotowa paczke z jakiegos serwera za darmo ;d
-
Uwierz ze nikt ci za darmo PLUGINU nie napisze, to nie to samo co skrypt Plugin pisze sie dluzej i trudniej. Jak chcesz plugin to ogarnij sobie budżet i poszukaj programisty.
-
Mozesz loopowac wszystkie itemy w inventory i sprawdzac ich itemmete itp, a wtedy uzyc removeItem z danym elementem z petli Do tego containsAtLeast chyba nie dziala tak ja kchcesz z tego co pamietam bo jak masz np. w 1 slocie trzy enderperły, a w 2 slocie dwie to nie wykrywa tego tak jakbys mial pięć. Masz 3 i 2, nie 5, warunek sie nie sprawdzi (bynajmniej ja pamietam ze mialem podobny problem)
-
Naucz się podstaw javy Gdybyś je znał to uzylbys else if (no ale to też byłoby źle) Najlepiej użyj eventu PlayerCommandPreProcessEvent. Poczytaj o nim gdzieś.
-
Bo przecież ustawiasz Y na 256..
-
http://en.njol.ch/projects/skript/doc/classes#date wyswietlic możesz to normalnie i będzie podana data
-
Jeżeli używasz pluginu na wyspy i chcesz dodać alias to w plugin.yml powinna być sekcja commands i tam możesz dodać aliases
-
tak jak up, zmień na player z offlineplayer i używaj player-arg if player-arg's name is "bdb"..
-
EnchantsHelper - Pomoc w wykrywaniu nazw enchantów
yooniks odpowiedział(a) na JanekMaSkrypta_ temat w Poradniki
Moim zdaniem naogladales się za dużo kguildsow;/ Zero kreatywnosci. Zamiast helpera i tylu statycznych rzeczy mógłbyś zrobić to jako normalny obiekt i dodać możliwość dodawania własnych aliasow w configu (byłby to plus dla rozwiązania Sewera które jest o niebo lepsze) -
A więc pozwolę sobie troche ocenić :c Main - field inst (instacja) zawsze będzie nullem bo go nie inicjujesz nigdzie, i niepotrzebnie wykonujesz metodę getInst która zwraca nulla (i nic z tym nie robisz) , po co printujesz ENABLING po zarejestrowaniu listenerow? bukkit już sam po włączeniu pluginu o tym informuje. Paczek nie powinno nazywać się w liczbie mnogiej, czemu klasa ChatUtil ma fielda którego robi allatori? Coś wydaje mi się że ukradłeś większość kodu Używasz String#replace zamiast bukkitowych kolorkow. Brak wsparcia dla wersji innych niż. 1.8.8,uzywasz nms więc na innych wersjach będzie rzucać błędami. W evencie cały czas dodajesz efekt a nie patrzysz czy gracz już go ma, i wtedy da mu go na dłuższy czas (tak mi się wydaje) do tego item w glownej ręce może być nullem i rzucać błędami.
-
oj tam do szczegółów się czepiasz zagraniczne poradniki polecają robić klasę główną jako finalną, nawet plugin do intellij minecraft development sam robi ów klasę finalną.
-
poczytaj o protocolversion i jak je pobrac z gracza.
-
w pliku plugin.yml jak otworzysz plugin islandworld winrarem masz sekcje commands. tam do aliases (skrotow) możesz dodać wyspa.
-
a Google nie gryzie, na spigotmc jest setki takich samych pytań. EntityExplodeEvent, sprawdzasz czy entity to tnt, i z eventu możesz pobrac blockList, jak nie da się zwiększyć inaczej eksplozji to dodaj po prostu więcej blokow do tej listy
-
A jaki blad mozna wiedziec? Sprawdzaj czy Block targetBlock nie jest nullem.
-
Różni się. Jedyne czego nie mam to zapis ekwipunkow do yaml. Też mógłbyś coś dodać do swoich toolsow bo niczym się nie różnią. W opengui nie zrobisz różnych itemow w gui dla każdego gracza. Gui są stałe i nie możesz później zmieniać itemow dla jednego gracza, typu lore w itemie "Drop: włączony". To też przyczyniło się do stworzenia tego api, chciałem mieć właśnie taka możliwość aktualizowania itemow dla każdego gracza, ale żadne api mi tego nie oferowało. Fajnie byłoby jakbyś uzasadnił czemu jest 'o wiele lepsze'. I tutaj cię zaskocze bo pomysł na te api wziął się właśnie z tego smartinvs. Używałem go ale nie miał wielu funkcji które chciałem, więc zrobiłem własne api. Smartinvs trzyma trochę niepotrzebnych rzeczy i nie ma wielu funkcji fajnych, jakbyś kiedyś tego użył na większym projekcie to sam byś się przekonał
-
mogłoby mieć nawet jedną klasę, ale fajnie byłoby jakby pokazał kod=(
-
czemu nikt nie wrzuca juz kodu na githuba xd z intellij mozna wrzucic na githuba caly projekt w ciagu minuty jak nie mniej =<
-
no akurat tobie jako poczatkujacemu by się przydało pierw za darmo pisac
-
https://hub.spigotmc.org/javadocs/spigot/org/bukkit/inventory/meta/BookMeta.html wszystko co ci potrzebne. tworzysz item z materialem writable book lub written book, castujesz do bookmeta jego itemmete i robisz co chcesz z nią.
-
no niby tak, ale zakladam ze robisz cos takiego: for (Player player : players) { packetSender.sendPacket(player); } i zamiast tego mozesz zrobic packetSender.sendPacket(players); private void sendPacket(List<Player> players) { Scoreboard board = new Scoreboard(); ScoreboardObjective obj = board.registerObjective(MessageUtil.colored("&9SAVE&FHC&8.EU"), IScoreboardCriteria.b); PacketPlayOutScoreboardObjective removepacket = new PacketPlayOutScoreboardObjective(obj, 1); PacketPlayOutScoreboardObjective createpacket = new PacketPlayOutScoreboardObjective(obj, 0); PacketPlayOutScoreboardDisplayObjective display = new PacketPlayOutScoreboardDisplayObjective(1, obj); Server s = Server.get("megahc"); obj.setDisplayName(MessageUtil.colored("&9SAVE&FHC&8.EU")); ScoreboardScore s1 = new ScoreboardScore(board, obj, " "); ScoreboardScore s2 = new ScoreboardScore(board, obj, MessageUtil.colored(" &7Serwer: &eMegaHC")); ScoreboardScore s3 = new ScoreboardScore(board, obj, MessageUtil.colored(" &7Online graczy: &e" + s.getCount())); ScoreboardScore s4 = new ScoreboardScore(board, obj, MessageUtil.colored(" &7Status serwera: " + (s.getStatus() ? "&aWlaczony" : "&cWylaczony"))); ScoreboardScore s5 = new ScoreboardScore(board, obj, " "); s2.setScore(-2); s3.setScore(-3); s4.setScore(-4); PacketPlayOutScoreboardScore p1 = new PacketPlayOutScoreboardScore(s1); PacketPlayOutScoreboardScore p2 = new PacketPlayOutScoreboardScore(s2); PacketPlayOutScoreboardScore p3 = new PacketPlayOutScoreboardScore(s3); PacketPlayOutScoreboardScore p4 = new PacketPlayOutScoreboardScore(s4); PacketPlayOutScoreboardScore p5 = new PacketPlayOutScoreboardScore(s5); players.forEach(p -> { ((CraftPlayer) p).getHandle().playerConnection.sendPacket(removepacket); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(createpacket); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(display); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(p1); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(p2); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(p3); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(p4); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(p5); } } i juz unikasz zbednego tworzenia obiektow dla kazdego oddzielnie skoro i tak wysylasz to samo
-
Wysyłaj to asynchronicznie, zastanów sie czy zmiennej server nie lepiej dostarczyc w parametrze i czy nie da rady jakos niektorych zmiennych zainicjalizowac tylko raz, a nie tworzyc nowe za kazdym razem gdy wywołujesz komende, np. to: Scoreboard board = new Scoreboard(); ScoreboardObjective obj = board.registerObjective(MessageUtil.colored("&9SAVE&FHC&8.EU"), IScoreboardCriteria.b); i nie widze aby bylo tutaj cos unikalnego jak uzywanie nicku gracza w danym scoreboardzie, wiec ten caly scoreboard i pakiety moglbys tworzyc tylko raz i wysylac do kazdego gracza, zamiast za kazdym razem tworzyc aby wyslac do jednego gracza tak samo remove i create (nw czy da sie to jakos zastapic bo nigdy nie uzywalem sidebara na pakietach) ale wydaje mi sie ze powinno jakos inaczej sie to update'owac, bo przez to moze skakac jakos dziwnie ten sidebar (bynajmniej ja tak podobnie mialem w proxy)
-
niektóre funkcje po prostu tak jakby są wyłączone pewnie, czyli np. ten kolor nawet sprawdzany nie jest co podajesz w parametrach tylko daje od razu red, defaultowy, też kiedyś próbowałem na 1.8 kolorowe zrobić i nie dzialalo
