• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

JavaPlugin Kity w GUI

Object Storage Arubacloud
+1 głos
326 wizyt
pytanie zadane 24 kwietnia 2022 w Java przez RybaYT23 Początkujący (250 p.)

Czesc chcialem zrobic kity w gui w JavaPlugin ale mam maly problem poniewaz ciagle pokazuje mi blad i podkresla na czerwono .getName() i nwm co zrobic prosze o pomoc. Gdy jest linijka (e.getInventory().getName()).equalsIgnoreCase to podkresla mi getName i equalesIgnoreCase pls help

import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.inventory.InventoryClickEvent;


public class Events implements Listener {
	
	Main plugin;
	
	public Events(Main M) {
		plugin = M;
	}
	
	@EventHandler
	public void onInventoryClick(InventoryClickEvent e) {
		if(!ChatColor.stripColor(e.getInventory().getName()).equalsIgnoreCase("Menu kitow"));
			return;
		Player p = (Player) e.getWhoClicked();
		if(e.getCurrentItem() == null || e.getCurrentItem().getType() == Material.AIR || !e.getCurrentItem().hasItemMeta()) {
			p.closeInventory();
			return;
			
		}
		
		
		switch(e.getCurrentItem().getType()) {
		case GOLD_INGOT:
			if(p.hasPermission(plugin.getConfig().getString("vip.permission")) || p.isOp()) {
				KitVip.vipItems(p);
				p.sendMessage(plugin.getConfig().getString("vip.recive"));
			} else {
				p.sendMessage(plugin.getConfig().getString("nonpermissions"));
			}
			break;
		case AIR:
			p.closeInventory();
			break;
		default:
			p.closeInventory();
			break;
		}
		
	}
	
	

}

 

1 odpowiedź

0 głosów
odpowiedź 24 kwietnia 2022 przez Wiciorny Ekspert (273,810 p.)

Podkreśla Ci dlatego, że : 
 

return - > Inventory method:
getClickedInventory() description: (Gets the inventory corresponding to the clicked slot.)

analogicznie jak twoje getInventory() zwraca Ci obiekt typu Inventory, natomiast ta klasa nie posiada takiej metody jak getName...
https://hub.spigotmc.org/javadocs/spigot/org/bukkit/inventory/Inventory.html
jeśli z czegoś korzystasz, zapoznawaj się z biblioteką i dokumentacją. 
Jeśli chcesz coś na zasadzie nazwy powinieneś skorzystać z 

e.getView().getTitle()

Inventory nie posiada takich metod, powinieneś pobrać najpierw widok, potem tytuł.

Metoda getView jest metoda:  dziedziczoną po InventoryEvent
https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/inventory/InventoryEvent.html#getView()
A to jest link do Inventory. https://hub.spigotmc.org/javadocs/spigot/org/bukkit/inventory/Inventory.html
Przy okazji samo Title aktualnie jest depricated 
[​IMG]

Podobne pytania

0 głosów
0 odpowiedzi 222 wizyt
pytanie zadane 16 października 2016 w Java przez robertwe Gaduła (4,620 p.)
0 głosów
1 odpowiedź 134 wizyt
pytanie zadane 16 marca 2021 w Java przez MateuszSikorski Obywatel (1,070 p.)
0 głosów
1 odpowiedź 132 wizyt
pytanie zadane 28 czerwca 2020 w Java przez manager96 Bywalec (2,050 p.)

92,760 zapytań

141,684 odpowiedzi

320,468 komentarzy

62,104 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...