我使用的是Spigot API 1.8.6,我在標題中放了bukkit,因爲它們幾乎完全一樣。Bukkit API爲什麼不能識別這些塊
我有一個配置選項,可以從配置中獲取項目id以及它們的值。項目id被轉換成材料。然而,鐵塊和煤塊中的173個和42個正在被跳過。這是我有:
for(String key : plugin.getConfig().getConfigurationSection("sellall"+ranks).getKeys(false))
{
int id = Integer.valueOf(key);
Material material = Material.getMaterial(id);
}
我再檢查玩家的庫存材料,這些材料被發現每一個項目編號除了 42和173,鐵塊和煤炭塊。我的問題是爲什麼他們跳過他們,我如何解決它。
這是我曾經嘗試過,因爲他們被跳過我嘗試這樣做:
String f = key;
Material mat = Material.getMaterial(f.toUpperCase());
if(mat == Material.IRON_BLOCK||mat == Material.COAL_BLOCK)
{
// continue with code like the else
}
else
{
// same code as if they are iron block or coal block
}
然而,這不相同,並跳過他們。
注:我已經嘗試了多個版本插口
最後一個問題:爲什麼Bukkit /插口API跳過鐵塊和煤塊,而不是跳過一切,我將如何解決?
我試圖掃描玩家的庫存煤和鐵礦石塊(總是檢測/發現他們)和'Material.getMaterial(41)'和'Material.getMaterial(173)'返回正確的材料。我使用Craftbukkit以及Spigot版本1.8.3和1.8.7。你的代碼中的其他內容可能會導致此問題嗎? –