개인 자료란 (JE)

  서버 커뮤니티

Profile airL 대표칭호 없음
Profile

질문하기 플러그인

마인크래프트 플러그인 질문

2020.10.13 조회 수 232 추천 수 0

혹시 JAVA에서  getItemInHand가 뭐로 데체되었는지 알수있을까요?

제가 우클릭 감지 플러그인을 만들고 있는데 getItemInHand가 없어져서요

도와주세요ㅠㅠ

6개의 댓글

허두
2020.10.13

이벤트 명을 알려주셔야 정확한 답이 가능할걸로 보입니다.

대부분 getHand(), getMainHand(), getMainHandItem(), getItem(), getMaterial() 등으로 바뀌었습니다!

JavaDocs를 참고해보세요! https://hub.spigotmc.org/javadocs/spigot/ 


PlayerInteractEvent의 경우, getHand()와 getItem(), getMaterial()이 사용 가능합니다 :)

airL
2020.10.13
@허두

PlayerInteractEvent가 맞습니다

그러면 getItemInHand()대신으로 무엇을 사용하면 되나요?

허두
2020.10.13
@airL

getItem()을 사용하시면 될듯 합니다!

제가 전에 짰던 코드입니다:

b2f256e91a5591ebbcbde6ab21b5b8e5.png


airL
2020.10.13
@허두

감사합니다 참고하겠습니다

airL
2020.10.13
@허두

혹시 소스코드를 볼수있을까요?

 

허두
2020.10.13
@airL

어... 코드가 도움될지는 모르겠지만... (단순히 색 지정해서 함수로 연결해주는 쪽이라)

// code licensed to Minecraft User: _HURDOO_
@EventHandler
    public void itemUse(PlayerInteractEvent e)
    {
        p = e.getPlayer();
        
        if( e.getAction().equals(Action.RIGHT_CLICK_AIR)
           && Material.HEART_OF_THE_SEA.equals(e.getItem().getType())
           && e.getItem().getItemMeta().hasLore())
        {
         if(e.getItem().getItemMeta().getLore().get(0).contains("red"))
         {
            e.setCancelled(true);
             ChatColor color = ChatColor.RED;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.RED);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("yellow"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.YELLOW;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.YELLOW);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("green"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.GREEN;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.LIME);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("aqua"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.AQUA;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.AQUA);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("blue"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.BLUE;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.BLUE);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("light_purple"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.LIGHT_PURPLE;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.FUCHSIA);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("gray"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.GRAY;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.SILVER);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("white"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.WHITE;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.WHITE);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("dark_red"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.DARK_RED;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.MAROON);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("gold"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.GOLD;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.ORANGE);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("dark_green"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.DARK_GREEN;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.GREEN);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("dark_aqua"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.DARK_AQUA;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.BLUE);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("dark_blue"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.DARK_BLUE;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.NAVY);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("dark_purple"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.DARK_PURPLE;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.PURPLE);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("dark_gray"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.DARK_GRAY;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.GRAY);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
         else if(e.getItem().getItemMeta().getLore().get(0).contains("black"))
         {
                e.setCancelled(true);
             ChatColor color = ChatColor.BLACK;
             LeatherArmorMeta armormeta = (LeatherArmorMeta) chestplate.getItemMeta();
             armormeta.setColor(Color.BLACK);
             summonMinipet(color, armormeta);
             p.getInventory().setItem(p.getInventory().getHeldItemSlot(), new ItemStack(Material.AIR));
         }
        }
    }

어라 나 왜 switch case 안썼지..

뉴스 및 창작물
/files/thumbnails/841/773/003/262x150.crop.jpg?20240526120908

레드스톤

마인크래프트 노트블록버전 『 봄을 고하다 (春を告げる) 』 [더블옥타브 버전]

노트블럭전문가

2024-05-26

0

/files/thumbnails/712/796/003/262x150.crop.jpg?20240525085438

레드스톤

마인크래프트 노트블록으로 만든 『 봄을 고하다 (春を告げる) 』 1

Sonttukk

2024-05-25

0

/files/thumbnails/268/789/003/262x150.crop.jpg?20240515192032

레드스톤

벌레먹은 돌 빠르게 제거하는 법

GlassesFilm

2024-05-15

0

/files/thumbnails/797/788/003/262x150.crop.jpg?20240515090924

건축

마인크래프트로 구현한 카르카손 보드게임

Warak

2024-05-15

1

/files/thumbnails/487/784/003/262x150.crop.jpg?20240508233607

모드

Windows Borderless 모드에서 악성코드 발견 3

학교가기싫다

2024-05-08

1