일단 함수부터 문제네요. onCommand라고 해줘야 CommandExecutor안에 있는 메소드가 작동되구요 그리고 저 함수는 불타입이므로 마지막에 return false;같은 코드로 반환 해줘야 되요. 그리고 Item을 불러오면 안되구요 ItemStack을 불러 오셔야 됩니다. ItemStack(Material.대충_사용할_아이템) 이런식으로 아이템을 만들어 주시고 인벤토리 슬롯에 i.setItem(index, item);을 넣어 주시고 여는 코드에 return true;로 반환 해주셔야 작동 합니다.
프로젝트
2022.06.04일단 함수부터 문제네요. onCommand라고 해줘야 CommandExecutor안에 있는 메소드가 작동되구요 그리고 저 함수는 불타입이므로 마지막에 return false;같은 코드로 반환 해줘야 되요. 그리고 Item을 불러오면 안되구요 ItemStack을 불러 오셔야 됩니다. ItemStack(Material.대충_사용할_아이템) 이런식으로 아이템을 만들어 주시고 인벤토리 슬롯에 i.setItem(index, item);을 넣어 주시고 여는 코드에 return true;로 반환 해주셔야 작동 합니다.
슈슈일기
2022.06.04슈슈일기
2022.06.04이렇게 하는건가요..?
qsef1256
2022.06.04ItemStack
qsef1256
2022.06.04new 를 안하고 ItemStack() 써버리면 ItemStack 이라는 메서드를 찾는겁니다, 될 리가 없어요
Vencodor
2022.06.04ItemStack()가 아닌 new ItemStack() 형식으로 앞에 new를 붙여서 객체를 할당 해주셔야 합니다
윈초
2022.06.04if (args.length == 0){ return true;
i.setItem(ItemStack(Material.STAINED_GLASS_PANE, 1, 4));
p.openInventory(i);
}
return true;가 } 앞에 있어야할듯합니다.
if (args.length == 0){
i.setItem(new ItemStack(Material.STAINED_GLASS_PANE, 1, 4));
p.openInventory(i);
return true;
}
return이 호출되면 그 뒤에 있는 코드는 무시하고 함수 실행을 끝냅니다. return은 모든 작업이 끝난 후 이뤄져야합니다.