ScoreBoard Opublikowano 23 Lutego 2017 Udostępnij Opublikowano 23 Lutego 2017 Czesc , szybka sprawa . Jak to przerobić , komenda /chat cc/off/on . Za każdym razem gdy użyję /chat on lub /chat off muszę napisać /chat toogle , inaczej nic się nie stanie . Kod niżej main https://hastebin.com/ohewazaked.java listenery https://hastebin.com/fagunopehu.java Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
dekros123 Opublikowano 23 Lutego 2017 Udostępnij Opublikowano 23 Lutego 2017 https://hastebin.com/sesowakebu.java powinno działać teraz jest tak że if(!chat){ Bukkit.broadcastMessage("§a§lChat zostal wlaczony!"); Bukkit.broadcastMessage("§9§lPlugin na chat by JesteCzlowieke"); chat = true; return true; } jeśli chat jest off to go włączy ale jak zrobisz /chat on /chat on to drugie /chat on nic nie pokaze, mogą być gdzies literówki bo na telefonie to robiłem Co ja tutaj robie... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
AdamGrzegorz Opublikowano 23 Lutego 2017 Udostępnij Opublikowano 23 Lutego 2017 Popierdolony ten kod twój jakiś. https://hastebin.com/uboyapobef.java i życie staje się prostsze. Moja oficjalna strona! http://socketbyte.pl/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ScoreBoard Opublikowano 23 Lutego 2017 Autor Udostępnij Opublikowano 23 Lutego 2017 jestem na fonie , później sprawdze Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
dekros123 Opublikowano 23 Lutego 2017 Udostępnij Opublikowano 23 Lutego 2017 Popierdolony ten kod twój jakiś. https://hastebin.com/ivakayipot.java i życie staje się prostsze. hmm zamiast tego: private static char[] chars; static { chars = new char[7680]; Arrays.fill(chars, ' '); } i Bukkit.broadcastMessage(String.valueOf(chars)); nie łatwiej for(int i=0;i<100;i++){ Bukkit.broadcastMessage(" "); } ? Co ja tutaj robie... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
AdamGrzegorz Opublikowano 23 Lutego 2017 Udostępnij Opublikowano 23 Lutego 2017 Popierdolony ten kod twój jakiś. https://hastebin.com/ivakayipot.java i życie staje się prostsze. hmm zamiast tego: private static char[] chars; static { chars = new char[7680]; Arrays.fill(chars, ' '); } i Bukkit.broadcastMessage(String.valueOf(chars)); nie łatwiej for(int i=0;i<100;i++){ Bukkit.broadcastMessage(" "); } ? Moje rozwiązanie jest dokładnie 100x szybsze (c**j że małe ilości! Bądźmy jak goto!). Wysyłasz 100 razy pakiet od czatu do wszystkich graczy na serwerze, ugh. Dużo optymalniejsze jest tworzenie na początku listy pustych charów o wielkości 7680 (mniej więcej zapełnia cały czat) i wysyłanie już później gotowej listy, jednym pakietem. Może dla poczatkującego troche dziwne, i oczywiście broadcast 100 razy też może być, ale ja wolę używać tej metody ;P @Edit @dekros123 + broadcastMessage wysyła wiadomość również do konsoli, a chyba nie chcesz mieć czyszczenia konsoli?;P Moja oficjalna strona! http://socketbyte.pl/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ScoreBoard Opublikowano 24 Lutego 2017 Autor Udostępnij Opublikowano 24 Lutego 2017 Nadal nikt nie odpowiedział @up & @2xUp Dzięki Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Thardess Opublikowano 24 Lutego 2017 Udostępnij Opublikowano 24 Lutego 2017 Co to za kod lol I wgl po co wszedzie przy wykonaniu komendy "plugin by ..", jesli bedziesz gdzies go udostepnial to napewno nikt go nie wezmie, jesli na wlasny serwer, to graczy takie cos wku*wia.. ❤ MC.PROPACRAFT.PL ❤ ★ SKRYPTY ★ ★ TECHNIK SERWERÓW MINECRAFT ★ ✮ Pomogłem? Strzej lajka! ✮ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
__AHA__ Opublikowano 24 Lutego 2017 Udostępnij Opublikowano 24 Lutego 2017 Co to za kod lol I wgl po co wszedzie przy wykonaniu komendy "plugin by ..", jesli bedziesz gdzies go udostepnial to napewno nikt go nie wezmie, jesli na wlasny serwer, to graczy takie cos wku*wia.. Czemu oceniasz kod innych skoro Twoj ledwo łapie się pod podstawy javy? Dodatkowo nie odpowiedziales na jego pytanie. @topic Trudno zeby dzialalo skoro sprawdzasz czy chat jest on zeby go wlaczyc . if(args[0].equalsIgnoreCase("on")){ if(chat){ Bukkit.broadcastMessage("§a§lChat zostal wlaczony!"); Bukkit.broadcastMessage("§9§lPlugin na chat by JesteCzlowieke"); return true; } chat = true; } Zobacz sobie to, chociaż Adam podał lepsze rozwiązanie. https://hastebin.com/hekomexuza.java Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ScoreBoard Opublikowano 24 Lutego 2017 Autor Udostępnij Opublikowano 24 Lutego 2017 Thardess , g8wno się znasz a znów komentujesz . Zapewne to co umiesz to public void onEnable i onDisable ... Ty mnie nie ucz . Plugin będzie udostępniony , ponieważ mało jest takich pluginów w internecie , wincyj skryptów . Zauważ że nawet w paczkach pluginów jest informacja o autorze ... Thardess ... , może Qubusiek , hę ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ScoreBoard Opublikowano 25 Lutego 2017 Autor Udostępnij Opublikowano 25 Lutego 2017 li fleś Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
AdamGrzegorz Opublikowano 25 Lutego 2017 Udostępnij Opublikowano 25 Lutego 2017 Po co refreshujesz? Ten kod jest lepszy niż to Twoje coś, użyj po prostu tego. + jeżeli trzymasz się swojego to @dekros123 czy @__AHA__ podali ci już rozwiązania. Ty mnie nie ucz . Plugin będzie udostępniony , ponieważ mało jest takich pluginów w internecie , wincyj skryptów Mało? Gdzie ty żyjesz? W dziurze na końcu wszechświata? Moja oficjalna strona! http://socketbyte.pl/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Thardess Opublikowano 25 Lutego 2017 Udostępnij Opublikowano 25 Lutego 2017 @scoreboard, serio ku*wa myslisz ze nie znam takich podstaw? Widziales wgl moj kod? ponad 100+ linijek w jednej klasie, twoje ok. 20-30. Moj kod ledwo lapie sie pod podstawy javy? Np; klasa z pluginu ecore: package me.entify.ecore.command.cmd; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import me.entify.ecore.command.Command; import me.entify.ecore.lang.Config; import me.entify.ecore.lang.Lang; import me.entify.ecore.managers.ChatManager; import me.entify.ecore.utils.Util; public class ChatCommand extends Command { public ChatCommand() { super("chat", "zarzadzanie chatem", "/chat <cc|on|off|lvl>", "ecore.chat.admin", new String[] { "czat" }); } public boolean onExecute(CommandSender sender, String[] args) { if (args.length < 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } if ((args[0].equalsIgnoreCase("cc")) || (args[0].equalsIgnoreCase("clear")) || (args[0].equalsIgnoreCase("wyczysc"))) { if (args.length != 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } ChatManager.clearChat(); String msg = Lang.MSG_CHAT_CC; msg = msg.replace("{PLAYER}", sender.getName()); Bukkit.broadcastMessage(Util.fixColor(msg)); } else { if (args[0].equalsIgnoreCase("lvl")) { if (args.length < 2) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } if (!Util.isInteger(args[1])) { return Util.sendMsg(sender, "&4Blad: &c" + args[1] + " to nie liczba!"); } Config.setLVL(Integer.parseInt(args[1])); Bukkit.broadcastMessage(String.valueOf(Util.fixColor(new StringBuilder("&8� &7Administrator &3").append(sender.getName()).append(" &7ustawil poziom pisania od &3").append(args[1]).toString())) + " �7lvla"); return Util.sendMsg(sender, "&8� &7Ustawiles lvl pisania od &6" + args[1]); } if ((args[0].equalsIgnoreCase("on")) || (args[0].equalsIgnoreCase("wlacz"))) { if (args.length != 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } ChatManager.setChat(true); String msg = Lang.MSG_CHAT_ON; msg = msg.replace("{PLAYER}", sender.getName()); Bukkit.broadcastMessage(Util.fixColor(msg)); } else { if ((!args[0].equalsIgnoreCase("off")) && (!args[0].equalsIgnoreCase("wylacz"))) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } if (args.length != 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } ChatManager.setChat(false); String msg = Lang.MSG_CHAT_OFF; msg = msg.replace("{PLAYER}", sender.getName()); Bukkit.broadcastMessage(Util.fixColor(msg)); } } return true; } } Jeden plik z klasy, na /chat. @edit, znajac zycie to pewnie teraz podpierdolisz mi polowe kodu. A co do onEnable i onDisable; public void onLoad() { plugin = this; } public void onEnable() { instance = this; if (!setupChat()) { Logger.warning(new String[] {"NIE ZNALEZIONO VAULT!" }); } // onEnable public void onDisable() { Bukkit.getScheduler().cancelTasks(this); Player[] arrayOfPlayer; int j = (arrayOfPlayer = Bukkit.getOnlinePlayers()).length; for (int i = 0; i < j; i++) { Player p = arrayOfPlayer[i]; CombatManager.removePlayer(p); UserManager.leaveFromGame(p); } Bukkit.savePlayers(); for (World w : Bukkit.getWorlds()) { w.save(); } // onDisable // Randomowe wycinanie tekstu z klas, ponad 60+ klas w pluginie, kazdy po ok. 100+ linijek. // Sam package me.entify.ecore.command.cmd - ma ponad 30 klas. ❤ MC.PROPACRAFT.PL ❤ ★ SKRYPTY ★ ★ TECHNIK SERWERÓW MINECRAFT ★ ✮ Pomogłem? Strzej lajka! ✮ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
__AHA__ Opublikowano 25 Lutego 2017 Udostępnij Opublikowano 25 Lutego 2017 @scoreboard, serio ku*wa myslisz ze nie znam takich podstaw? Widziales wgl moj kod? ponad 100+ linijek w jednej klasie, twoje ok. 20-30. Moj kod ledwo lapie sie pod podstawy javy? Np; klasa z pluginu ecore: package me.entify.ecore.command.cmd; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import me.entify.ecore.command.Command; import me.entify.ecore.lang.Config; import me.entify.ecore.lang.Lang; import me.entify.ecore.managers.ChatManager; import me.entify.ecore.utils.Util; public class ChatCommand extends Command { public ChatCommand() { super("chat", "zarzadzanie chatem", "/chat <cc|on|off|lvl>", "ecore.chat.admin", new String[] { "czat" }); } public boolean onExecute(CommandSender sender, String[] args) { if (args.length < 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } if ((args[0].equalsIgnoreCase("cc")) || (args[0].equalsIgnoreCase("clear")) || (args[0].equalsIgnoreCase("wyczysc"))) { if (args.length != 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } ChatManager.clearChat(); String msg = Lang.MSG_CHAT_CC; msg = msg.replace("{PLAYER}", sender.getName()); Bukkit.broadcastMessage(Util.fixColor(msg)); } else { if (args[0].equalsIgnoreCase("lvl")) { if (args.length < 2) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } if (!Util.isInteger(args[1])) { return Util.sendMsg(sender, "&4Blad: &c" + args[1] + " to nie liczba!"); } Config.setLVL(Integer.parseInt(args[1])); Bukkit.broadcastMessage(String.valueOf(Util.fixColor(new StringBuilder("&8� &7Administrator &3").append(sender.getName()).append(" &7ustawil poziom pisania od &3").append(args[1]).toString())) + " �7lvla"); return Util.sendMsg(sender, "&8� &7Ustawiles lvl pisania od &6" + args[1]); } if ((args[0].equalsIgnoreCase("on")) || (args[0].equalsIgnoreCase("wlacz"))) { if (args.length != 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } ChatManager.setChat(true); String msg = Lang.MSG_CHAT_ON; msg = msg.replace("{PLAYER}", sender.getName()); Bukkit.broadcastMessage(Util.fixColor(msg)); } else { if ((!args[0].equalsIgnoreCase("off")) && (!args[0].equalsIgnoreCase("wylacz"))) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } if (args.length != 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } ChatManager.setChat(false); String msg = Lang.MSG_CHAT_OFF; msg = msg.replace("{PLAYER}", sender.getName()); Bukkit.broadcastMessage(Util.fixColor(msg)); } } return true; } } Jeden plik z klasy, na /chat. @edit, znajac zycie to pewnie teraz podpierdolisz mi polowe kodu. A co do onEnable i onDisable; public void onLoad() { plugin = this; } public void onEnable() { instance = this; if (!setupChat()) { Logger.warning(new String[] {"NIE ZNALEZIONO VAULT!" }); } // onEnable public void onDisable() { Bukkit.getScheduler().cancelTasks(this); Player[] arrayOfPlayer; int j = (arrayOfPlayer = Bukkit.getOnlinePlayers()).length; for (int i = 0; i < j; i++) { Player p = arrayOfPlayer[i]; CombatManager.removePlayer(p); UserManager.leaveFromGame(p); } Bukkit.savePlayers(); for (World w : Bukkit.getWorlds()) { w.save(); } // onDisable // Randomowe wycinanie tekstu z klas, ponad 60+ klas w pluginie, kazdy po ok. 100+ linijek. // Sam package me.entify.ecore.command.cmd - ma ponad 30 klas. Ja bym się tym kodem nie chwalił XDDDDDDD Dodatkowo ciekawe od kiedy długość kodu i ilość klas oznacza Twoje umiejętności Coś Ci dekompiler szwankuje return Util.sendMsg(sender, "&8� &7Ustawiles lvl pisania od &6" + args[1]); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
YashePL Opublikowano 25 Lutego 2017 Udostępnij Opublikowano 25 Lutego 2017 @Thardess nie ma to jak udostępniać kod z Kopary pluginu Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
dekros123 Opublikowano 25 Lutego 2017 Udostępnij Opublikowano 25 Lutego 2017 Player[] arrayOfPlayer; int j = (arrayOfPlayer = Bukkit.getOnlinePlayers()).length; for (int i = 0; i < j; i++) { Player p = arrayOfPlayer; CombatManager.removePlayer(p); UserManager.leaveFromGame(p); } na 99% to dekompilator bo wątpie że "normalnie" ktoś coś takiego zrobi Edit:"Normalna" osoba zrobi to tak: for(Player player : Bukkit.getOnlinePlayers()){ CombatManager.removePlayer(p); UserManager.leaveFromGame(p); } ew możesz iteratora użyć Co ja tutaj robie... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
TheMajster Opublikowano 25 Lutego 2017 Udostępnij Opublikowano 25 Lutego 2017 @scoreboard, serio ku*wa myslisz ze nie znam takich podstaw? Widziales wgl moj kod? ponad 100+ linijek w jednej klasie, twoje ok. 20-30. Moj kod ledwo lapie sie pod podstawy javy? Np; klasa z pluginu ecore: package me.entify.ecore.command.cmd; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import me.entify.ecore.command.Command; import me.entify.ecore.lang.Config; import me.entify.ecore.lang.Lang; import me.entify.ecore.managers.ChatManager; import me.entify.ecore.utils.Util; public class ChatCommand extends Command { public ChatCommand() { super("chat", "zarzadzanie chatem", "/chat <cc|on|off|lvl>", "ecore.chat.admin", new String[] { "czat" }); } public boolean onExecute(CommandSender sender, String[] args) { if (args.length < 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } if ((args[0].equalsIgnoreCase("cc")) || (args[0].equalsIgnoreCase("clear")) || (args[0].equalsIgnoreCase("wyczysc"))) { if (args.length != 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } ChatManager.clearChat(); String msg = Lang.MSG_CHAT_CC; msg = msg.replace("{PLAYER}", sender.getName()); Bukkit.broadcastMessage(Util.fixColor(msg)); } else { if (args[0].equalsIgnoreCase("lvl")) { if (args.length < 2) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } if (!Util.isInteger(args[1])) { return Util.sendMsg(sender, "&4Blad: &c" + args[1] + " to nie liczba!"); } Config.setLVL(Integer.parseInt(args[1])); Bukkit.broadcastMessage(String.valueOf(Util.fixColor(new StringBuilder("&8� &7Administrator &3").append(sender.getName()).append(" &7ustawil poziom pisania od &3").append(args[1]).toString())) + " �7lvla"); return Util.sendMsg(sender, "&8� &7Ustawiles lvl pisania od &6" + args[1]); } if ((args[0].equalsIgnoreCase("on")) || (args[0].equalsIgnoreCase("wlacz"))) { if (args.length != 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } ChatManager.setChat(true); String msg = Lang.MSG_CHAT_ON; msg = msg.replace("{PLAYER}", sender.getName()); Bukkit.broadcastMessage(Util.fixColor(msg)); } else { if ((!args[0].equalsIgnoreCase("off")) && (!args[0].equalsIgnoreCase("wylacz"))) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } if (args.length != 1) { String msg = Lang.MSG_USAGE; msg = msg.replace("{USAGE}", getUsage()); return Util.sendMsg(sender, msg); } ChatManager.setChat(false); String msg = Lang.MSG_CHAT_OFF; msg = msg.replace("{PLAYER}", sender.getName()); Bukkit.broadcastMessage(Util.fixColor(msg)); } } return true; } } Jeden plik z klasy, na /chat. @edit, znajac zycie to pewnie teraz podpierdolisz mi polowe kodu. A co do onEnable i onDisable; public void onLoad() { plugin = this; } public void onEnable() { instance = this; if (!setupChat()) { Logger.warning(new String[] {"NIE ZNALEZIONO VAULT!" }); } // onEnable public void onDisable() { Bukkit.getScheduler().cancelTasks(this); Player[] arrayOfPlayer; int j = (arrayOfPlayer = Bukkit.getOnlinePlayers()).length; for (int i = 0; i < j; i++) { Player p = arrayOfPlayer[i]; CombatManager.removePlayer(p); UserManager.leaveFromGame(p); } Bukkit.savePlayers(); for (World w : Bukkit.getWorlds()) { w.save(); } // onDisable // Randomowe wycinanie tekstu z klas, ponad 60+ klas w pluginie, kazdy po ok. 100+ linijek. // Sam package me.entify.ecore.command.cmd - ma ponad 30 klas. Co ja tu widze, kolejne myhardy przerobione (Zdecompilowane) . Ta pętla przy onDisable jest typowa, jaka sie tworzy w decompilatorach, nie rozumiem po co taki kod dałeś, mogleś chociaż zamienic na for(Player p : Bukkit.getOn....()). Znaczki w klasie to samo "�7", decomp.. Chwalisz sie nie swoim kodem, brawo Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ScoreBoard Opublikowano 26 Lutego 2017 Autor Udostępnij Opublikowano 26 Lutego 2017 @Thardess Hahah gratulacje "programisto" ps. plugin na gildie kopary ma backdory , idź przerób FG i powiedz że jesteś autorem , haha Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
AdamGrzegorz Opublikowano 26 Lutego 2017 Udostępnij Opublikowano 26 Lutego 2017 @Thardess bardziej się upokorzyć już chyba nie można. Dekompilator aż w oczy jebie. Najlepsze jeszcze jest te twoje chwalenie się ilością linijek i klas, jakie to ma za znaczenie? Robiłem projekty 20,000 linijek+ i co z tego? Nie liczy się wielkość kodu, a jakość kodu i funkcjonalność. A ten kod który podałeś nawet bez dekompilatora byłby c*****y, poza tym - to jest biedna komenda... @AntyRayso Podałem już chyba najlepsze rozwiązanie z tych wyżej wymienionych, jest krótkie, przejrzyste i wydajne. https://hastebin.com/ivakayipot.java Jeżeli masz jeszcze jakieś pytania to wal śmiało, coś pomogę. Moja oficjalna strona! http://socketbyte.pl/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ScoreBoard Opublikowano 26 Lutego 2017 Autor Udostępnij Opublikowano 26 Lutego 2017 @AdamGrzegorz - dzięki za pomoc Jestem na telefonie , później sprawdzę . @Thardess Haha brak słów Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Zarchiwizowany
Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.