- Баллы
- 78
- Имя в Minecraft
- _Rufu5_
Как зарегистрировать event right-click по слоту с предметом с названием "plugin" в быстром доступе?
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
@EventHandler
public void onImventoryClick (InventoryClickEvent event) {
if (event.isRightClick()) && (event.getCurrentItem().getType()==Material.ТУТ_НАЗВАНИЕ_ПРЕДМЕТА){
ТУТ_НАШ_БЫДЛОКОД
}
}
мб он хотел проверить имя "plugin" , а не тип предмета ?Код:@EventHandler public void onImventoryClick (InventoryClickEvent event) { if (event.isRightClick()) && (event.getCurrentItem().getType()==Material.ТУТ_НАЗВАНИЕ_ПРЕДМЕТА){ ТУТ_НАШ_БЫДЛОКОД } }
@EventHandler
public void onImventoryClick(InventoryClickEvent event) {
if ((event.isRightClick()) && (event.getCurrentItem().getItemMeta().getDisplayName() == "ТУТ ИМЯ ПРЕДМАТА")) {
ТУТ_НАШ_БЫДЛОКОД
}
}
@BeYkeR, ну если имя (т.н. отображаемое название предмета, то тогда так:
Код:@EventHandler public void onImventoryClick(InventoryClickEvent event) { if ((event.isRightClick()) && (event.getCurrentItem().getItemMeta().getDisplayName().equals("Тут_Ваша_Имя"){ ТУТ_НАШ_БЫДЛОКОД } }
@EventHandler
public void onImventoryClick(InventoryClickEvent event) {
if ((event.isRightClick()) && (event.getCurrentItem().getItemMeta().getDisplayName().equals("Тут_Ваша_Имя"){
ТУТ_НАШ_БЫДЛОКОД
}
}

А где взять игрока?Имя проверяем только так.
Код:@EventHandler public void onImventoryClick(InventoryClickEvent event) { if ((event.isRightClick()) && (event.getCurrentItem().getItemMeta().getDisplayName().equals("Тут_Ваша_Имя"){ ТУТ_НАШ_БЫДЛОКОД } }
А вот так event.getWhoClicked()А где взять игрока?
Кто сравнивает строки через ==?event.getCurrentItem().getItemMeta().getDisplayName() == "ТУТ ИМЯ ПРЕДМАТА" {
я...Кто сравнивает строки через ==?
Это не дело, через == сравниваются указатели на объекты, а не их содержимое
А кто наличие дисплейнейма проверять будет? и самой итемметы?Имя проверяем только так.
Код:@EventHandler public void onImventoryClick(InventoryClickEvent event) { if ((event.isRightClick()) && (event.getCurrentItem().getItemMeta().getDisplayName().equals("Тут_Ваша_Имя"){ ТУТ_НАШ_БЫДЛОКОД } }
Ну ладно:А кто на
личие дисплейнейма проверять будет? и самой итемметы?
@EventHandler
public void onImventoryClick(InventoryClickEvent event) {
if(event.getCurrentItem().getItemMeta() != null){
if(event.getCurrentItem().getItemMeta().getDisplayName() !=null){
if ((event.isRightClick()) && (event.getCurrentItem().getItemMeta().getDisplayName().equals("Тут_Ваша_Имя"){
ТУТ_НАШ_БЫДЛОКОД
}
}
}
}
Вот так норм@EventHandler
public void onImventoryClick(InventoryClickEvent event) {
if(event.getCurrentItem().hasItemMeta()){
if(event.getCurrentItem().getItemMeta().hasDisplayName()){
if ((event.isRightClick()) && (event.getCurrentItem().getItemMeta().getDisplayName().equals("Тут_Ваша_Имя"){
ТУТ_НАШ_БЫДЛОКОД
}
}
}
}
Не имеет смысла в этом случае.А кто наличие дисплейнейма проверять будет?
"Тут_Ваше_Имя".equals(event.getCurrentItem().getItemMeta().getDisplayName())
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = count;
if (n == anotherString.count) {
char v1[] = value;
char v2[] = anotherString.value;
int i = offset;
int j = anotherString.offset;
while (n-- != 0) {
if (v1[i++] != v2[j++])
return false;
}
return true;
}
}
return false;
}
и самой итемметы?
Теперь доволен ?