- Баллы
- 173
Java:
public void onEnable() {
SpawnUtils.initialize(this);
DatabaseUtils.initialize(this);
HealListener.initialize(this);
PlayerListener.initialize(this);
EntityListener.initialize(this);
DatabaseUtils.createTables();
Bukkit.getPluginManager().registerEvents(new BlockListener(), this);
Bukkit.getPluginManager().registerEvents(new PlayerListener(), this);
Bukkit.getPluginManager().registerEvents(new EntityListener(), this);
Bukkit.getPluginManager().registerEvents(new HealListener(), this);
Bukkit.getScheduler().runTaskTimer(this, new ThirstTask(this), 0L, 1000L);
Bukkit.getScheduler().runTaskTimer(this, new SyncTask(this), 0L, 20L);
Bukkit.getScheduler().runTaskTimer(this, new Runnable() {
@Override
public void run() {
for (Player p : Bukkit.getOnlinePlayers()) startEffects(p, true);
}
}, 0L, 800L);
getCommand("start").setExecutor(new SpawnCommand());
getCommand("info").setExecutor(new InfoCommand(this)); // На этой строке выдаёт NullPointerException
}
Java:
package ru.onlymc.OnlyMZ.command;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import ru.onlymc.OnlyMZ.OnlyMZ;
public class InfoCommand implements CommandExecutor {
private static OnlyMZ plugin;
public InfoCommand(OnlyMZ p) {
plugin = p;
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if (command.getName().equalsIgnoreCase("info") && sender instanceof Player) {
Player p = (Player) sender;
Player pl = plugin.getServer().getPlayer(args[0]);
if (!pl.isOnline()) {
p.sendMessage("§cИгрок " + pl.getName() + " не найден");
return true;
}
if (args.length == 1) {
if (plugin.isBleeding.get(pl)) {
p.sendMessage("§bКровотечение: §cда");
} else {
p.sendMessage("§bКровотечение: §aнет");
}
if (plugin.isPoisoned.get(pl)) {
p.sendMessage("§bИнфекция: §cда");
} else {
p.sendMessage("§bИнфекция: §aнет");
}
switch (plugin.tagColor.get(pl)) {
case 0: p.sendMessage("§bКласс: §fвыживший"); break;
case 1: p.sendMessage("§bКласс: §cбандит"); break;
case 2: p.sendMessage("§bКласс: §aдоктор"); break;
}
return true;
} else if (args.length == 2 && args[1] == "starve") {
pl.setFoodLevel(1);
pl.setSaturation(20f);
return true;
}
}
return false;
}
}