• Trong thời gian này, bạn không thể tạo bài mới, đăng comment, hay tạo tài nguyên mới để diễn đàn dọn dẹp nội dung.
    Diễn đàn sẽ sớm mở trở lại, chi tiết hãy theo dõi tại Discord
Cam Chua

Hỏi đáp Ai rảnh java vào đây giúp?

  • Người tạo chủ đề Người tạo chủ đề Cam Chua
  • Ngày gửi Ngày gửi
Trạng thái
Không mở trả lời sau này.

Cam Chua

DEVELOPER
Phần Code
Mã:
package anlun2.worldcup.inventory;

import java.util.ArrayList;
import java.util.List;

import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;

import anlun2.worldcup.Main;
import net.md_5.bungee.api.ChatColor;

public class WorldCup {
    
    private static Main main;
    
    public WorldCup(Main worldcup) {
        this.main = worldcup;
    }
    
    public static Inventory get() {
        Inventory inv = Bukkit.createInventory(null, main.getWorldCup().getInt("Rows") * 9, main.getWorldCup().getString("Name"));
        
        ItemStack aqua = new ItemStack(Material.getMaterial(main.getWorldCup().getInt("BlankAqua.ID")), 1, (byte) main.getWorldCup().getInt("BlankAqua.Data"));
        ItemMeta maqua = aqua.getItemMeta();
        maqua.setDisplayName("");
        aqua.setItemMeta(maqua);
        
        ItemStack yellow = new ItemStack(Material.getMaterial(main.getWorldCup().getInt("BlankYellow.ID")), 1, (byte) main.getWorldCup().getInt("BlankYellow.Data"));
        ItemMeta myellow = yellow.getItemMeta();
        myellow.setDisplayName("");
        yellow.setItemMeta(myellow);
        
        ItemStack uoc = new ItemStack(Material.getMaterial(main.getWorldCup().getInt("Uoc.ID")), 1, (byte) main.getWorldCup().getInt("Uoc.Data"));
        ItemMeta muoc = uoc.getItemMeta();
        muoc.setDisplayName(ChatColor.translateAlternateColorCodes('&', main.getWorldCup().getString("Uoc.Name")));
        List<String> ulores = new ArrayList<String>();
        for(String ulore : main.getWorldCup().getStringList("Uoc.Lore")) {
            ulores.add(ChatColor.translateAlternateColorCodes('&', ulore));
        }
        muoc.setLore(ulores);
        uoc.setItemMeta(muoc);
        
        ItemStack air = new ItemStack(Material.AIR, 1);
        ItemMeta mair = air.getItemMeta();
        mair.setDisplayName("");
        air.setItemMeta(mair);
        
        for(int i = 0; i <= 53; i++) {
            if(i % 2 == 0) {
                inv.setItem(i, aqua);
            } else {
                inv.setItem(i, yellow);
            }
        }
        inv.setItem(main.getWorldCup().getInt("Ball.Slot"), air);
        inv.setItem(main.getWorldCup().getInt("Uoc.Slot"), uoc);
        return inv;
    }
    
    public static void open(Player p) {
        p.openInventory(get());
    }

}
Phần Lỗi:
Mã:
[21:47:31] [Server thread/INFO]: anlun2 issued server command: /worldcup
[21:47:31] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'worldcup' in plugin WorldCup v1.0
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    at org.bukkit.craftbukkit.v1_9_R2.CraftServer.dispatchCommand(CraftServer.java:646) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PlayerConnection.handleCommand(PlayerConnection.java:1349) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PlayerConnection.a(PlayerConnection.java:1184) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PacketPlayInChat.a(PacketPlayInChat.java:45) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PacketPlayInChat.a(PacketPlayInChat.java:1) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PlayerConnectionUtils$1.run(SourceFile:13) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_172]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_172]
    at net.minecraft.server.v1_9_R2.SystemUtils.a(SourceFile:45) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.MinecraftServer.D(MinecraftServer.java:726) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.DedicatedServer.D(DedicatedServer.java:399) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.MinecraftServer.C(MinecraftServer.java:665) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.MinecraftServer.run(MinecraftServer.java:564) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_172]
Caused by: java.lang.NullPointerException
    at anlun2.worldcup.inventory.WorldCup.get(WorldCup.java:25) ~[?:?]
    at anlun2.worldcup.inventory.WorldCup.open(WorldCup.java:64) ~[?:?]
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    ... 15 more
 
DisplayName null bác ơi
*****Nội dung được bổ sung thêm*****
getWorldCup() ở đâu thế, thiếu nên nó báo null
 
Mã:
package anlun2.worldcup;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.bukkit.Bukkit;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;

import anlun2.worldcup.commands.CommandWorldcup;
import anlun2.worldcup.listener.InventoryClick;
import anlun2.worldcup.listener.InventoryClose;
import anlun2.worldcup.listener.PlayerJoin;

public class Main extends JavaPlugin {
    
    public Main() {
        
    }
    
    File configf, worldcupf;
    FileConfiguration config, worldcup;
    
    public List<String> uoc = new ArrayList<String>();
    
    @Override
    public void onEnable() {
        registerCommand();
        registerEvent();
        fileConfig();
    }
    
    @Override
    public void onDisable() {
        
    }
    
    public void registerCommand() {
        getCommand("worldcup").setExecutor(new CommandWorldcup(this));
    }
    
    public void registerEvent() {
        PluginManager pm = Bukkit.getPluginManager();
        pm.registerEvents(new InventoryClick(this), this);
        pm.registerEvents(new InventoryClose(this), this);
        pm.registerEvents(new PlayerJoin(this), this);
    }
    
    public void fileConfig() {
        configf = new File(getDataFolder(), "config.yml");
        worldcupf = new File(getDataFolder(), "worldcup.yml");
        if(!configf.exists()) {
            configf.getParentFile().mkdirs();
            saveResource("config.yml", false);
        }
        if(!worldcupf.exists()) {
            worldcupf.getParentFile().mkdirs();
            saveResource("worldcup.yml", false);
        }
        config = new YamlConfiguration();
        worldcup = new YamlConfiguration();
        try {
            config.load(configf);
            worldcup.load(worldcupf);
        } catch(IOException | InvalidConfigurationException ex) {
            ex.printStackTrace();
        }
    }
    
    public FileConfiguration getConfig() {
        return this.config;
    }
    
    public FileConfiguration getWorldCup() {
        return this.worldcup;
    }

}
 
xoá 2 cái này thử:

if(!configf.exists()) {
configf.getParentFile().mkdirs();
saveResource("config.yml", false);
}
if(!worldcupf.exists()) {
worldcupf.getParentFile().mkdirs();
saveResource("worldcup.yml", false);
}
 
xoá 2 cái này thử:

if(!configf.exists()) {
configf.getParentFile().mkdirs();
saveResource("config.yml", false);
}
if(!worldcupf.exists()) {
worldcupf.getParentFile().mkdirs();
saveResource("worldcup.yml", false);
}
xóa r thì file config ko load và vẫn còn lỗi đó
 
if(!configf.exists()) {
configf.createNewFile()
}
if(!worldcupf.exists()) {
worldcupf.createNewFile()
}
 
Mã:
package anlun2.worldcup;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.bukkit.Bukkit;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;

import anlun2.worldcup.commands.CommandWorldcup;
import anlun2.worldcup.listener.InventoryClick;
import anlun2.worldcup.listener.InventoryClose;
import anlun2.worldcup.listener.PlayerJoin;

public class Main extends JavaPlugin {
   
    public Main() {
       
    }
   
    File configf, worldcupf;
    FileConfiguration config, worldcup;
   
    public List<String> uoc = new ArrayList<String>();
   
    @Override
    public void onEnable() {
        registerCommand();
        registerEvent();
        fileConfig();
    }
   
    @Override
    public void onDisable() {
       
    }
   
    public void registerCommand() {
        getCommand("worldcup").setExecutor(new CommandWorldcup(this));
    }
   
    public void registerEvent() {
        PluginManager pm = Bukkit.getPluginManager();
        pm.registerEvents(new InventoryClick(this), this);
        pm.registerEvents(new InventoryClose(this), this);
        pm.registerEvents(new PlayerJoin(this), this);
    }
   
    public void fileConfig() {
        configf = new File(getDataFolder(), "config.yml");
        worldcupf = new File(getDataFolder(), "worldcup.yml");
        if(!configf.exists()) {
            configf.getParentFile().mkdirs();
            saveResource("config.yml", false);
        }
        if(!worldcupf.exists()) {
            worldcupf.getParentFile().mkdirs();
            saveResource("worldcup.yml", false);
        }
        config = new YamlConfiguration();
        worldcup = new YamlConfiguration();
        try {
            config.load(configf);
            worldcup.load(worldcupf);
        } catch(IOException | InvalidConfigurationException ex) {
            ex.printStackTrace();
        }
    }
   
    public FileConfiguration getConfig() {
        return this.config;
    }
   
    public FileConfiguration getWorldCup() {
        return this.worldcup;
    }

}
Bác thử làm thể này coi: bác static cho các file config + fileconfiguaration, không nên dùng return
 
Fix dc lỗi này tới lỗi khác
Mã:
[21:22:38] [Server thread/INFO]: anlun2 issued server command: /worldcup
[21:22:38] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'worldcup' in plugin WorldCup v1.0
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    at org.bukkit.craftbukkit.v1_9_R2.CraftServer.dispatchCommand(CraftServer.java:646) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PlayerConnection.handleCommand(PlayerConnection.java:1349) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PlayerConnection.a(PlayerConnection.java:1184) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PacketPlayInChat.a(PacketPlayInChat.java:45) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PacketPlayInChat.a(PacketPlayInChat.java:1) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PlayerConnectionUtils$1.run(SourceFile:13) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_172]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_172]
    at net.minecraft.server.v1_9_R2.SystemUtils.a(SourceFile:45) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.MinecraftServer.D(MinecraftServer.java:726) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.DedicatedServer.D(DedicatedServer.java:399) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.MinecraftServer.C(MinecraftServer.java:665) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.MinecraftServer.run(MinecraftServer.java:564) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_172]
Caused by: java.lang.ArrayIndexOutOfBoundsException
 
Fix dc lỗi này tới lỗi khác
Mã:
[21:22:38] [Server thread/INFO]: anlun2 issued server command: /worldcup
[21:22:38] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'worldcup' in plugin WorldCup v1.0
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    at org.bukkit.craftbukkit.v1_9_R2.CraftServer.dispatchCommand(CraftServer.java:646) ~[spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PlayerConnection.handleCommand(PlayerConnection.java:1349) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PlayerConnection.a(PlayerConnection.java:1184) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PacketPlayInChat.a(PacketPlayInChat.java:45) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PacketPlayInChat.a(PacketPlayInChat.java:1) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.PlayerConnectionUtils$1.run(SourceFile:13) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_172]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_172]
    at net.minecraft.server.v1_9_R2.SystemUtils.a(SourceFile:45) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.MinecraftServer.D(MinecraftServer.java:726) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.DedicatedServer.D(DedicatedServer.java:399) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.MinecraftServer.C(MinecraftServer.java:665) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at net.minecraft.server.v1_9_R2.MinecraftServer.run(MinecraftServer.java:564) [spigot.jar:git-Spigot-c6871e2-0cd0397]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_172]
Caused by: java.lang.ArrayIndexOutOfBoundsException
thử đưa hết log coi
 
Trạng thái
Không mở trả lời sau này.
Nội dung tương tự Xem nhiều nhất Xem thêm

Thống kê nội dung

Tạo
Cam Chua,
Trả lời lần cuối từ
Cam Chua,
Trả lời
13
Lượt xem
796
Quay lại
Trên cùng