Skocz do zawartości
  • 0

Nie działająca komenda


TheVloryn6336

Pytanie

mam o taki skrypt

package vloryn.chest.command;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Chest;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;

public class evcheststart implements CommandExecutor{

	@Override
	public boolean onCommand(CommandSender sender, Command cmd, String w, String[] arg3) {
		Player p = (Player) sender;
		int x = 1000;
		int z = 1000;
		ItemStack Item1 = new ItemStack(Material.DIAMOND);
		Location locChest = new Location(Bukkit.getWorld(w), x, 50, z);
		locChest.getBlock().setType(Material.CHEST);
		Chest chest = (Chest) locChest.getBlock().getState();
		Inventory chestInv = chest.getInventory();
		chestInv.addItem(Item1);
		p.sendMessage(ChatColor.GREEN + "Pomyślnie dodano skrzynke w " + ChatColor.GOLD + arg3 + ChatColor.GREEN + " na kordynatach "+ ChatColor.GOLD + x + " "+ z);
		return false;
	}
	
}

i jak próbuje wywołać komendę (do główne klasy dodałem taką linijkę getCommand("eChestStart").setExecutor(new evcheststart()); ) to wypisuje "An internal error occurred while attempting to perform this commend" wie ktoś jak to naprawić?

Odnośnik do komentarza
Udostępnij na innych stronach

6 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
12 minut temu, TheVloryn6336 napisał:

i jak próbuje wywołać komendę (do główne klasy dodałem taką linijkę getCommand("eChestStart").setExecutor(new evcheststart()); ) to wypisuje "An internal error occurred while attempting to perform this commend" wie ktoś jak to naprawić?

Jeśli możesz, pokaż ten błąd.

Pokaż również główną klasę.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
1 minutę temu, Kormic napisał:

Jeśli możesz, pokaż ten błąd.

Pokaż również główną klasę.

gowna klasa -

package vloryn.chest.main;

import org.bukkit.Bukkit;
import org.bukkit.plugin.java.JavaPlugin;

import vloryn.chest.command.evcheststart;

public class Main extends JavaPlugin{
	
	public void onEnable() {
		Bukkit.getConsoleSender().sendMessage("[ChestEvent] włączanie...");
		 getCommand("eChestStart").setExecutor(new evcheststart());
	}
	
}

logi serwera po wpisaniu komendy 

> 
[K[22:26:25 INFO]: TheVloryn6336 issued server command: /chestevent:echeststart
> 
[K[31;1m[22:26:25 ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'chestevent:echeststart' in plugin ChestEvent v1.0
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[patched_1.15.2.jar:git-Paper-391]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:159) ~[patched_1.15.2.jar:git-Paper-391]
        at org.bukkit.craftbukkit.v1_15_R1.CraftServer.dispatchCommand(CraftServer.java:761) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.PlayerConnection.handleCommand(PlayerConnection.java:1869) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.PlayerConnection.a(PlayerConnection.java:1677) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.PacketPlayInChat.a(PacketPlayInChat.java:47) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.PacketPlayInChat.a(PacketPlayInChat.java:5) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.PlayerConnectionUtils.lambda$ensureMainThread$1(PlayerConnectionUtils.java:23) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.TickTask.run(SourceFile:18) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.MinecraftServer.ba(MinecraftServer.java:1106) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.MinecraftServer.executeNext(MinecraftServer.java:1099) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:1173) ~[patched_1.15.2.jar:git-Paper-391]
        at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:971) ~[patched_1.15.2.jar:git-Paper-391]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_275]
Caused by: java.lang.NullPointerException
        at org.bukkit.Location.getBlock(Location.java:133) ~[patched_1.15.2.jar:git-Paper-391]
        at vloryn.chest.command.evcheststart.onCommand(evcheststart.java:24) ~[?:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[patched_1.15.2.jar:git-Paper-391]
        ... 17 more
[m> 

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
11 godzin temu, kerpson napisał:

coś mi mówi, że tutaj jest błąd 



Bukkit.getWorld(w)

zobacze

 

11 godzin temu, kerpson napisał:

Przecież String w; to jest nazwa komendy a nie świata 😛

Musisz zrobić Bukkit.getWorld("world"); lub p.getWorld();

działa, dzięki

Glicz

Łączę posty.

Notatka dodana przez Glicz

Odnośnik do komentarza
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...