Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Хм, странно, раньше не работало, ну ладно.. У меня ещё один вопрос есть, он не по теме но вторую тему не охотно создавать. Почему выскакивает ошибка что типа у снежка нету customname хотя я задаю его????Код:@EventHandler private void handle(ProjectileLaunchEvent e){ if (e.getEntity() instanceof Snowball){ Player p = (Player) e.getEntity().getShooter(); }
Snowball ball = p.launchProjectile(Snowball.class);
ball.setCustomName("§c§l" + getName());
ball.setCustomNameVisible(true);
if (snowball.getCustomName().equalsIgnoreCase("§c§l" + new SnowballSkill().getName()))
{
//TODO
}
Вы меня не поняли, я задал вопрос почему? Если я так сделаю то ничего не произойдет так как он не видет его customname хотя я его задаю.Код:if (snowball.getCustomName() != null) { // Todo: check name. }
Так ты выполни проверку, и посмотри. Ты создаёшь новый объект класса SnowBallSkill, и я не вижу чтобы в его аргументах было имя.
@Override
public void execute(Player p)
{
boolean check = check(p);
if (!check) return;
Snowball ball = p.launchProjectile(Snowball.class);
ball.setCustomName("§c§l" + getName());
ball.setCustomNameVisible(true);
}
@Override
public String getName()
{
return "Кошачий мячик";
}
@EventHandler
public void onProjectileLaunch(ProjectileLaunchEvent e)
{
if (e.getEntity().getType() == EntityType.SNOWBALL)
{
Snowball snowball = (Snowball) e.getEntity();
if (snowball.getCustomName() != null
&& snowball.getCustomName().equalsIgnoreCase("§c§l" + new SnowballSkill().getName()))
{
Player p = (Player) snowball.getShooter();
playersSnowball.put(p, snowball);
new BukkitRunnable()
{
@Override
public void run()
{
if (playersSnowball.containsKey(p))
{
Location loc = snowball.getLocation();
loc.getWorld().spawnParticle(Particle.DRIP_LAVA, loc, 200);
loc.getWorld().spawnParticle(Particle.DRIP_WATER, loc, 200);
loc.getWorld().spawnParticle(Particle.CLOUD, loc, 200);
} else {
this.cancel();
}
}
}.runTaskTimer(mini, 0, 1);
}
}
}
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:500) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:485) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.craftbukkit.v1_12_R1.event.CraftEventFactory.callProjectileLaunchEvent(CraftEventFactory.java:791) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.World.addEntity(World.java:1047) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.WorldServer.addEntity(WorldServer.java:1112) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.World.addEntity(World.java:1013) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.craftbukkit.v1_12_R1.entity.CraftLivingEntity.launchProjectile(CraftLivingEntity.java:379) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.craftbukkit.v1_12_R1.entity.CraftLivingEntity.launchProjectile(CraftLivingEntity.java:302) [Spigot.jar:git-Spigot-3d850ec-809c399]
at com.minigames.artuf.skill.SnowballSkill.execute(SnowballSkill.java:33) [MiniGame.jar:?]
at com.minigames.artuf.listener.Click.onPlayerInteract(Click.java:119) [MiniGame.jar:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:564) ~[?:?]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:500) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:485) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.craftbukkit.v1_12_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:235) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.craftbukkit.v1_12_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:202) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.craftbukkit.v1_12_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:198) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.PlayerConnection.a(PlayerConnection.java:989) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:26) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:1) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.PlayerConnectionUtils$1.run(SourceFile:13) [Spigot.jar:git-Spigot-3d850ec-809c399]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:514) [?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
at net.minecraft.server.v1_12_R1.SystemUtils.a(SourceFile:46) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:748) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:406) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [Spigot.jar:git-Spigot-3d850ec-809c399]
at java.lang.Thread.run(Thread.java:844) [?:?]
Caused by: java.lang.NullPointerException
at com.minigames.artuf.listener.Drop.onProjectileLaunch(Drop.java:84) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:564) ~[?:?]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[Spigot.jar:git-Spigot-3d850ec-809c399]
... 34 more
и? Оно и без этого ошибку выбивает (без runnable)Ты запускаешь раннейбл при вызове ивента.... хотя у тебя есть мапа с игроками.
Можно, но когда снежок приземляется я игрока из мапы удаляю и раннейбл уничтожается.Я о том что ты запускаешь каждый раз новый раннейбл при бросании снежка, можно запустить один при запуске плагина.
Спасибо за ответы)Вообщем, на этом мои полномочия всё.
Очередь остальных =D