- Баллы
- 76
Здравствуйте, форумчане! Никак не могу понять, мне нужно, чтобы когда игрок написал команду /report <сообщение>, оно дошло до игроков с разрешением forever.view. Прошу помощи!
Вот код плагина:
package foreverreports;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;
public class ForeverReports extends JavaPlugin implements Listener {
public String p1 = (Object)ChatColor.DARK_GRAY + "[ ";
public String p2 = (Object)ChatColor.DARK_GRAY + " ] ";
public static String prefix = (Object)ChatColor.AQUA + "FreshWorld";
private String help = (Object)ChatColor.RED + "Ошибка! Правильное использование: /report <сообщение>";
private String offline_player = (Object)ChatColor.RED + "Ошибка! Данный игрок не в сети";
private String no_perm = (Object)ChatColor.RED + "Ошибка! У вас нет прав!";
@Override
public void onEnable(){
Bukkit.getServer().getPluginManager().registerEvents(this, this);
getLogger().info("ForeverReports by Den42 was Enabled!");
}
public void onDisabe(){
getLogger().info("ForeverReports by Den42 was Disabled!");
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String Commandlabel, String[] args) {
if (cmd.getName().equalsIgnoreCase("report")) {
if (sender instanceof Player) {
Player p = (Player)sender;
if (p.hasPermission("forever.user")) {
if (args.length == 0) {
p.sendMessage(p1 + prefix + p2 + (Object)ChatColor.RED + help);
return true;
}
if (args.length == 1) {
Player target = Bukkit.getPlayer((String)args[1]);
Player online = (Player)sender;
if (target != null)
{
p.sendMessage(p1 + prefix + p2 + (Object)ChatColor.WHITE + "Ваше сообщение отправлено!");
if (online.hasPermission("forever.view")) {
online.sendMessage(p1 + prefix + p2 + ChatColor.GREEN + p.getName() + ChatColor.WHITE +
" просит помощи: " + ChatColor.WHITE + args[1] + ".");
}
}
}
}
}
}
return false;
}
}
Вот код плагина:
package foreverreports;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;
public class ForeverReports extends JavaPlugin implements Listener {
public String p1 = (Object)ChatColor.DARK_GRAY + "[ ";
public String p2 = (Object)ChatColor.DARK_GRAY + " ] ";
public static String prefix = (Object)ChatColor.AQUA + "FreshWorld";
private String help = (Object)ChatColor.RED + "Ошибка! Правильное использование: /report <сообщение>";
private String offline_player = (Object)ChatColor.RED + "Ошибка! Данный игрок не в сети";
private String no_perm = (Object)ChatColor.RED + "Ошибка! У вас нет прав!";
@Override
public void onEnable(){
Bukkit.getServer().getPluginManager().registerEvents(this, this);
getLogger().info("ForeverReports by Den42 was Enabled!");
}
public void onDisabe(){
getLogger().info("ForeverReports by Den42 was Disabled!");
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String Commandlabel, String[] args) {
if (cmd.getName().equalsIgnoreCase("report")) {
if (sender instanceof Player) {
Player p = (Player)sender;
if (p.hasPermission("forever.user")) {
if (args.length == 0) {
p.sendMessage(p1 + prefix + p2 + (Object)ChatColor.RED + help);
return true;
}
if (args.length == 1) {
Player target = Bukkit.getPlayer((String)args[1]);
Player online = (Player)sender;
if (target != null)
{
p.sendMessage(p1 + prefix + p2 + (Object)ChatColor.WHITE + "Ваше сообщение отправлено!");
if (online.hasPermission("forever.view")) {
online.sendMessage(p1 + prefix + p2 + ChatColor.GREEN + p.getName() + ChatColor.WHITE +
" просит помощи: " + ChatColor.WHITE + args[1] + ".");
}
}
}
}
}
}
return false;
}
}