boleknowak 957 Opublikowano 15 lutego 2016 Udostępnij Opublikowano 15 lutego 2016 Hi! 1. Opis: Co to FreezePlayers (dawniej bnFreeze)? Jest to plugin zrobiony przez moją osobę, który dodaje zamrażanie/odmrażanie graczy. Jeśli gracz wyjdzie z serwera i wejdzie to zamrożenie zostanie, ale gdy serwer zostanie wyłączony to zamrożenie "znika". 2. Wymagania: - plugin był tworzony na wersje 1.10 - skript 2.2 3. Changelog (zmiany): 1.0 wydanie pluginu 1.1: usunięcie bossbara, poprawienie kilku wiadomości 1.2: przepisanie pluginu na nowo 4. Pobieranie: Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! | Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść!Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! | Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść!Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść!Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! 5. Komendy, uprawnienia: /freeze [nick] - freeze.admin 6. Skript API: freeze the %player% unfreeze the %player% Dzięki za przeczytanie i korzystanie. Dawajcie swoje propozycje co mogę dodać do pluginu. Jeśli coś nie działa to też napiszcie. Norbi 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Skynets 57 Opublikowano 15 lutego 2016 Udostępnij Opublikowano 15 lutego 2016 Wykorzystanie BarAPI na 1.8 jest bardzo złym pomysłem z racji tego ze widać smoka. Już dać możliwość opcjonalnego używania BarApi boleknowak 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
boleknowak 957 Opublikowano 15 lutego 2016 Autor Udostępnij Opublikowano 15 lutego 2016 @Skynets pomyślę nad tym jak zrobię config. Dzięki. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Skynets 57 Opublikowano 15 lutego 2016 Udostępnij Opublikowano 15 lutego 2016 Do tego nie potrzeba Cfg. Wystarczy dodać if w onEnable który bedzie sprawdzał czy dany plugin jest. Jak jest to bedzie zwracało true a jak nie to false. Potem tam gdzie wykorzystujesz BarApi dajesz ifa w którym pobierasz wartość sprawdzenia z onEnable(true lub false) i przyrównujesz do wartości True. Jeśli jest True=True to wykonuje sie ten if:) boleknowak 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
boleknowak 957 Opublikowano 15 lutego 2016 Autor Udostępnij Opublikowano 15 lutego 2016 Aktualizacja! 1.1 - poprawiłem wiadomości - usunąłem bossbara Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość DonFallingCookie Opublikowano 15 lutego 2016 Udostępnij Opublikowano 15 lutego 2016 Ale po co? Jakie jest zadanie tego pluginu? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
boleknowak 957 Opublikowano 15 lutego 2016 Autor Udostępnij Opublikowano 15 lutego 2016 @kebabking1337 dokładnie to co zaraz powiem może nie jest odpowiednie, ale np. możesz to stosować do trollowania, łapania haxów, tzw. "banowania" w sensie, zamiast bana to freeza, ale bolek przecież po wyłączeniu serwera on może się ruszać, tak on może się ruszać, ale to nie o to chodzi. Ludzie mądrzy znajdą zastosowanie. Nie że kogoś obrażam tym tylko chodzi mi że taki administrator znajdzie rozwiązanie dla tego pluginu, a po za tym to jest mój pierwszy plugin i ja się dopiero uczę i nie mam takich fajnych pomysłów jakby. Trzeba poprostu znaleźć zastosowanie, bo inaczej jest on tak jak powiedziałeś bez sensu. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Skynets 57 Opublikowano 15 lutego 2016 Udostępnij Opublikowano 15 lutego 2016 Tak jak ja wpisałem w swój Essentials komende Troll która wyrzuca co x sekund gracza kilkadziesiąt kratek w góre i non stop słyszy ghasta:) Po co. W sumie tylko do denerwowania upierdliwych graczy na których normalne upomnienia nie działaja:) Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Nieaktywny Opublikowano 28 lutego 2016 Udostępnij Opublikowano 28 lutego 2016 (edytowane) Mógł byś zmienić Opis pluginu Ponieważ niedużo jest wytłumaczone Edytowane 15 lipca 2016 przez Nieaktywny Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Nieaktywny Opublikowano 3 marca 2016 Udostępnij Opublikowano 3 marca 2016 O Sunday, February 28, 2016 at 15:22, ivall napisał: Mógł byś zmienić Opis pluginu Ponieważ to nie jest mega wytłumaczone... I nie musi. Natomiast twoja wypowiedz tez jest niezrozumiała "Ponieważ Piszesz Takim Stylem". #antyNorbi Plugin bardzo fajny Dodaj możliwość zamrażanie czasowe. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
BestSky 2 Opublikowano 10 maja 2016 Udostępnij Opublikowano 10 maja 2016 Fajny plugin. Dodaj ze np po rzuceniu kogoś śnieżką o nazwie lód zamraża się i może się poruszyć po 5 sec. Fajne by było takie PVP. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
boleknowak 957 Opublikowano 13 lipca 2016 Autor Udostępnij Opublikowano 13 lipca 2016 Aktualizacja 1.2! - przepisałem cały plugin na nowo - dodałem githuba Link do pobrania w 1. poście. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
jahumen 293 Opublikowano 13 lipca 2016 Udostępnij Opublikowano 13 lipca 2016 Świetny plugin, jestem z Ciebie dumny. Dodaj zapisywanie zamrożenia (zwykły plik .yml albo zaszalej i baza danych) oraz dodaj /tempfreeze. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Mine1998 21 Opublikowano 13 lipca 2016 Udostępnij Opublikowano 13 lipca 2016 fajne a zrobisz wsparcie dla 1.9 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
boleknowak 957 Opublikowano 30 lipca 2016 Autor Udostępnij Opublikowano 30 lipca 2016 Aktualizacja 1.3!Co nowego?: - przepisałem plugin na nowo - dodałem wsparcie dla Skript Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
bartzzDev 2 Opublikowano 30 lipca 2016 Udostępnij Opublikowano 30 lipca 2016 (edytowane) Wklej kod na githuba, by ktoś kto ogarnia mógł go poprawić. //Jest na Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! ~bvcz W dodatku nie słuchaj się, że na 1.8 widać smoka bo można bardzo łatwo to ominąć, z tego co się orientuję, a jeśli chcesz zrobić opcjonalne używanie tego API, to dodaj do plugin.yml linijkę z dependem, bo API może się włączyć po twoim pluginie. Nie słuchaj się użytkownika @jahumen, który każe ci zapisywać zamrożonych graczy graczy w plikach yml.. albo co gorsza do bazy danych. Baza danych ma zastosowanie wymiany danych pomiędzy serwerami, a yaml? Służy do niczego innego jak konfiguracji, na zapis czegoś takiego możesz wykorzystać spokojnie gson. Ogółem kod bez szału, duzo rzeczy bym poprawił, ale na telefonie jest niewygodnie. Edytowane 30 lipca 2016 przez bartzzDev Zwrócenie uwagi na błędy. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Nieaktywny Opublikowano 2 sierpnia 2016 Udostępnij Opublikowano 2 sierpnia 2016 Ocenie twój plugin: Wady: 1. ArrayListy: tym więcej graczy będziesz zamrażał, tym więcej ramu będzie twój serwer zużywał. A po restarcie serwera każdy gracz zostanie odmrożony, ponieważ ArrayListy się nie zapisują. To znaczy, że plugin jest prawie bezużyteczny. 2. Kod: tu i tam są funkcje w pluginie które są totalnie zbędne. Tu i tam można też zauważyć, że nie wytabowałeś dobrze. 3. Język: jeżeli piszesz angielski plugin i go publikujesz na polskim forum, to dodaj możliwość zmiany wiadomości w cfg. Plusy: 1. Wspiera Skrypta: Genialne! Bardzo dobrze działa! Ocena: 7.5/10 ___ offtop: Zrobilem własny plugin, który działa na tej zasadzie. Plugin zapisuje zamrożonych graczy w plikach gracza! (nudzilem sie...) Kod: Spoiler package de.adamandrzej02.Main; import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerMoveEvent; import org.bukkit.plugin.java.JavaPlugin; public class Freeze extends JavaPlugin implements CommandExecutor, Listener{ @Override public void onEnable() { getCommand("freeze").setExecutor(this); Bukkit.getServer().getPluginManager().registerEvents(this, this); } public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { Player p = Bukkit.getPlayer(args[0]); if (args.length == 1) { if (sender.hasPermission("andrzej.freeze")) { try { if(p.getWalkSpeed() == (float) 0.2) { p.setWalkSpeed(0); sender.sendMessage("§bZamroziles gracza " + p.getName()); p.sendMessage("§bZostales zamrozony!"); } else { p.setWalkSpeed((float) 0.2); sender.sendMessage("§bOdmroziles gracza " + p.getName()); p.sendMessage("§bZostales odmrozony!"); } } catch (NullPointerException e) { sender.sendMessage("Nie ma takiego gracza!"); } } } return false; } @EventHandler public void onMove(PlayerMoveEvent e) { Player p = e.getPlayer(); if(p.getWalkSpeed() < (float) 0.2) { e.setCancelled(true); } } @EventHandler public void onJoin(PlayerJoinEvent e) { Player p = e.getPlayer(); if(p.getWalkSpeed() < (float) 0.2) { p.sendMessage("§4Uwaga: §cPamietaj ze jestes zamrozony! Nie mozesz sie ruszac!"); } } } Jar: Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! Moja wersja pluginu posiada mniej kodu niż twoja klasa Main w twoim pluginie kieppa Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
bartzzDev 2 Opublikowano 2 sierpnia 2016 Udostępnij Opublikowano 2 sierpnia 2016 1 godzinę temu, adamandrzej02 napisał: Ocenie twój plugin: Wady: 1. ArrayListy: tym więcej graczy będziesz zamrażał, tym więcej ramu będzie twój serwer zużywał. A po restarcie serwera każdy gracz zostanie odmrożony, ponieważ ArrayListy się nie zapisują. To znaczy, że plugin jest prawie bezużyteczny. 2. Kod: tu i tam są funkcje w pluginie które są totalnie zbędne. Tu i tam można też zauważyć, że nie wytabowałeś dobrze. 3. Język: jeżeli piszesz angielski plugin i go publikujesz na polskim forum, to dodaj możliwość zmiany wiadomości w cfg. Plusy: 1. Wspiera Skrypta: Genialne! Bardzo dobrze działa! Ocena: 7.5/10 ___ offtop: Zrobilem własny plugin, który działa na tej zasadzie. Plugin zapisuje zamrożonych graczy w plikach gracza! (nudzilem sie...) Kod: Spoiler package de.adamandrzej02.Main; import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerMoveEvent; import org.bukkit.plugin.java.JavaPlugin; public class Freeze extends JavaPlugin implements CommandExecutor, Listener{ @Override public void onEnable() { getCommand("freeze").setExecutor(this); Bukkit.getServer().getPluginManager().registerEvents(this, this); } public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { Player p = Bukkit.getPlayer(args[0]); if (args.length == 1) { if (sender.hasPermission("andrzej.freeze")) { try { if(p.getWalkSpeed() == (float) 0.2) { p.setWalkSpeed(0); sender.sendMessage("§bZamroziles gracza " + p.getName()); p.sendMessage("§bZostales zamrozony!"); } else { p.setWalkSpeed((float) 0.2); sender.sendMessage("§bOdmroziles gracza " + p.getName()); p.sendMessage("§bZostales odmrozony!"); } } catch (NullPointerException e) { sender.sendMessage("Nie ma takiego gracza!"); } } } return false; } @EventHandler public void onMove(PlayerMoveEvent e) { Player p = e.getPlayer(); if(p.getWalkSpeed() < (float) 0.2) { e.setCancelled(true); } } @EventHandler public void onJoin(PlayerJoinEvent e) { Player p = e.getPlayer(); if(p.getWalkSpeed() < (float) 0.2) { p.sendMessage("§4Uwaga: §cPamietaj ze jestes zamrozony! Nie mozesz sie ruszac!"); } } } Jar: Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! Moja wersja pluginu posiada mniej kodu niż twoja klasa Main w twoim pluginie kieppa Lapiesz NullPointerException zabij sie Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Nieaktywny Opublikowano 2 sierpnia 2016 Udostępnij Opublikowano 2 sierpnia 2016 12 minut temu, bartzzDev napisał: Lapiesz NullPointerException zabij sie Jak bym nie dal, to by byl error w konsoli zamiast pieknej wiadomosci. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
bartzzDev 2 Opublikowano 2 sierpnia 2016 Udostępnij Opublikowano 2 sierpnia 2016 26 minut temu, adamandrzej02 napisał: Jak bym nie dal, to by byl error w konsoli zamiast pieknej wiadomosci. Hymm, nie wiem czy wiesz ale wyjątki się łapie tylko wtedy gdy lepszego wyjścia nie ma, takie coś to najgorsze i najwolniejsze rozwiązanie, exception żre ostro.. if (player == null) { sender.sendMessage("ten gracz jest offline"); return true; } Polecam doedukowac się. DαrϰVεnuς 1 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ą.