KrejzolekPRO 600 Opublikowano 28 marca 2017 Udostępnij Opublikowano 28 marca 2017 (edytowane) Witam mam kod: Main: Spoiler package me.krejzolekpro.krejzchat; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.bukkit.event.Listener; import org.bukkit.event.player.AsyncPlayerChatEvent; import org.bukkit.plugin.java.JavaPlugin; public class Main extends JavaPlugin implements Listener{ public static boolean chat; private static Main inst; public Main(){ inst = this; } public void onEnable(){ chat = true; getServer().getPluginManager().registerEvents(this, this); FileManager.checkFiles(); } public static Main getInst(){ return inst; } @Override public boolean onCommand(CommandSender s, Command cmd, String label, String[] args) { if(cmd.getName().equalsIgnoreCase("chat")){ if(args.length == 1){ if(args[0].equalsIgnoreCase("switch")){ if(s.hasPermission("KrejzChat.switch") && s.hasPermission("Krejz.*")){ if(chat){ chat = false; Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("chatoff"))); } else{ chat = true; Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("chaton"))); } } else{ s.sendMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("noperm"))); } } else if(args[0].equalsIgnoreCase("clear")){ int i = 0; while(i < 101){ Bukkit.broadcastMessage(""); i++; } Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("chatclear"))); } } } return false; } public void onChat(AsyncPlayerChatEvent e){ if(!chat){ if(!e.getPlayer().hasPermission("KrejzChat.write")){ e.getPlayer().sendMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("chatoffnow"))); e.setCancelled(true); } } } } FileManager: Spoiler package me.krejzolekpro.krejzchat; import java.io.File; import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.entity.Player; public class FileManager { private static YamlConfiguration msg; private static File users = new File(Main.getInst().getDataFolder(), "users"); public static void checkFiles(){ if(!Main.getInst().getDataFolder().exists()){ Main.getInst().getDataFolder().mkdir(); } if(new File(Main.getInst().getDataFolder(), "config.yml").exists()){ Main.getInst().saveDefaultConfig(); } File m = new File(Main.getInst().getDataFolder(), "messages.yml"); if(!m.exists()){ Main.getInst().saveResource("messages.yml", true); } if(!users.exists()){ users.mkdir(); } msg = YamlConfiguration.loadConfiguration(m); } public static YamlConfiguration getMsg(){ return msg; } public static File getPFile(Player p){ File f = new File(users, p.getName() + ".yml"); if(!f.exists()) return null; return f; } public static File getUsersFolder(){ return users; } } Plugin nie dokończony, ale gdy chat jest wylaczony, można pisać na chacie. Dlaczego? Brak errorów. Od razu mówię, nie nie ma OP. Edytowane 28 marca 2017 przez KrejzolekPRO Odnośnik do komentarza https://skript.pl/temat/17341-asyncplayerchatevent/ Udostępnij na innych stronach Więcej opcji udostępniania...
0 XBeTeRR 63 Opublikowano 28 marca 2017 Udostępnij Opublikowano 28 marca 2017 Moze dlatego ze w pl nie ma blodkady na to hm? Lepiej se skrypt zrob bo w javie to ty nic nie zrobiszWysłane z mojego GT-I9505 przy użyciu Tapatalka Odnośnik do komentarza https://skript.pl/temat/17341-asyncplayerchatevent/#findComment-118668 Udostępnij na innych stronach Więcej opcji udostępniania...
0 KrejzolekPRO 600 Opublikowano 29 marca 2017 Autor Udostępnij Opublikowano 29 marca 2017 8 godzin temu, XBeTeRR napisał: Moze dlatego ze w pl nie ma blodkady na to hm? Lepiej se skrypt zrob bo w javie to ty nic nie zrobisz Wysłane z mojego GT-I9505 przy użyciu Tapatalka Zdajesz sobje sprawę, ze Skript "konwertuje" kod skryptu na Java Plugin, wiec to musi byc możliwe. Odnośnik do komentarza https://skript.pl/temat/17341-asyncplayerchatevent/#findComment-118673 Udostępnij na innych stronach Więcej opcji udostępniania...
0 TheMolkaPL 345 Opublikowano 29 marca 2017 Udostępnij Opublikowano 29 marca 2017 Nie dałeś @EventHandler nad metodą listenera. ;) KrejzolekPRO 1 Odnośnik do komentarza https://skript.pl/temat/17341-asyncplayerchatevent/#findComment-118679 Udostępnij na innych stronach Więcej opcji udostępniania...
0 KrejzolekPRO 600 Opublikowano 29 marca 2017 Autor Udostępnij Opublikowano 29 marca 2017 2 godziny temu, TheMolkaPL napisał: Nie dałeś @EventHandler nad metodą listenera. ;) Eh..., dzięki bardzo Odnośnik do komentarza https://skript.pl/temat/17341-asyncplayerchatevent/#findComment-118702 Udostępnij na innych stronach Więcej opcji udostępniania...
0 Impression 139 Opublikowano 29 marca 2017 Udostępnij Opublikowano 29 marca 2017 Problem został rozwiązany. Odnośnik do komentarza https://skript.pl/temat/17341-asyncplayerchatevent/#findComment-118719 Udostępnij na innych stronach Więcej opcji udostępniania...
Pytanie
KrejzolekPRO 600
Witam mam kod:
Main:
package me.krejzolekpro.krejzchat; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.bukkit.event.Listener; import org.bukkit.event.player.AsyncPlayerChatEvent; import org.bukkit.plugin.java.JavaPlugin; public class Main extends JavaPlugin implements Listener{ public static boolean chat; private static Main inst; public Main(){ inst = this; } public void onEnable(){ chat = true; getServer().getPluginManager().registerEvents(this, this); FileManager.checkFiles(); } public static Main getInst(){ return inst; } @Override public boolean onCommand(CommandSender s, Command cmd, String label, String[] args) { if(cmd.getName().equalsIgnoreCase("chat")){ if(args.length == 1){ if(args[0].equalsIgnoreCase("switch")){ if(s.hasPermission("KrejzChat.switch") && s.hasPermission("Krejz.*")){ if(chat){ chat = false; Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("chatoff"))); } else{ chat = true; Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("chaton"))); } } else{ s.sendMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("noperm"))); } } else if(args[0].equalsIgnoreCase("clear")){ int i = 0; while(i < 101){ Bukkit.broadcastMessage(""); i++; } Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("chatclear"))); } } } return false; } public void onChat(AsyncPlayerChatEvent e){ if(!chat){ if(!e.getPlayer().hasPermission("KrejzChat.write")){ e.getPlayer().sendMessage(ChatColor.translateAlternateColorCodes('&', FileManager.getMsg().getString("chatoffnow"))); e.setCancelled(true); } } } }FileManager:
package me.krejzolekpro.krejzchat; import java.io.File; import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.entity.Player; public class FileManager { private static YamlConfiguration msg; private static File users = new File(Main.getInst().getDataFolder(), "users"); public static void checkFiles(){ if(!Main.getInst().getDataFolder().exists()){ Main.getInst().getDataFolder().mkdir(); } if(new File(Main.getInst().getDataFolder(), "config.yml").exists()){ Main.getInst().saveDefaultConfig(); } File m = new File(Main.getInst().getDataFolder(), "messages.yml"); if(!m.exists()){ Main.getInst().saveResource("messages.yml", true); } if(!users.exists()){ users.mkdir(); } msg = YamlConfiguration.loadConfiguration(m); } public static YamlConfiguration getMsg(){ return msg; } public static File getPFile(Player p){ File f = new File(users, p.getName() + ".yml"); if(!f.exists()) return null; return f; } public static File getUsersFolder(){ return users; } }Plugin nie dokończony, ale gdy chat jest wylaczony, można pisać na chacie. Dlaczego? Brak errorów.
Od razu mówię, nie nie ma OP.
Edytowane przez KrejzolekPROOdnośnik do komentarza
https://skript.pl/temat/17341-asyncplayerchatevent/Udostępnij na innych stronach
5 odpowiedzi na to pytanie
Rekomendowane odpowiedzi