1.15.2-R0.1
Minecraft(JE)です
アイテムをドロップしたことを検知して、その数秒後にアイテムの名前を変更するコードを書きたいのですが、上手くいきません。
Bメソッドまで呼ばれていることを確認しましたが、Bメソッド内のitemStackの更新が上手くいかないようです。
Aメソッド内では問題なく名前の変更ができました。
回答お待ちしています
下記コード
Java
1 2 //省略// 3 @EventHandler 4 public void onPlayerDrop(PlayerDropItemEvent e) { 5 ItemStack itemStack = e.getItemDrop().getItemStack(); 6 Test test = new Test(itemStack); 7 test.A(); 8 e.setCancelled(true); 9 } 10 } 11 12 public Test { 13 java.lang.System.out.println("Test"); 14 JavaPlugin javaPlugin; 15 ItemStack itemStack; 16 public Test (ItemStack itemStack) { 17 this.itemStack = itemStack; 18 } 19 20 public void A () { 21 java.lang.System.out.println("A"); 22 itemStack.setDisplayName("testA"); 23 itemStack.setItemMeta(itemMeta); 24 new BukkitRunnable() { 25 @Override 26 public void run() { 27 B(); 28 } 29 }.runTaskLater(javaPlugin, 5); 30 } 31 32 public void B () { 33 java.lang.System.out.println("B"); 34 itemStack.setDisplayName("testB"); 35 itemStack.setItemMeta(itemMeta); 36 } 37 }
あなたの回答
tips
プレビュー