Sie sind nicht angemeldet.

  • Anmelden
Bitte besucht unser neues Forum unter https://forum.nitrado.net | Please visit our new Forum at https://forum.nitrado.net

Lieber Besucher, herzlich willkommen bei: Nitrado.net Prepaid Gameserver Community-Support - Archiv. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

MadeByProxxy

User / Kunde

  • »MadeByProxxy« ist männlich
  • »MadeByProxxy« ist der Autor dieses Themas

Beiträge: 23

  • Nachricht senden

1

Montag, 18. Februar 2019, 10:35

ArmorStand Location bekommen und abfragen

Hallo.
Ich weiß, es ist eigentlich super einfach zu machen, aber irgendwie will es nicht gehen.
Ich will abfragen, ob man einen Rüstungsständer rechtsklickt. Wenn das der Fall ist, soll noch die Position abgefragt werden. Wenn auch die richtig ist, soll eine Nachricht gesendet werden.
Hier mein bisheriger Code:

Quellcode

1
@EventHandler	public void onRüstClick(PlayerInteractEntityEvent e) {		if(e.getRightClicked() instanceof ArmorStand) {			e.setCancelled(true);			Location Rust1 = new Location(e.getPlayer().getWorld(), 67.5, 122, 57.5);			if(e.getRightClicked().getLocation().equals(Rust1)) {				e.getPlayer().sendMessage("§7[§1LobbyRätsel§7] §7Du bist nicht im §cLobbyRätsel §7eingetragen...");			}		}	}



Ich habs auch schon mit dem PlayerInteractAtEntityEvent probiert. Es kommt bei beiden gar nichts und auch kein Error in der Konsole. Die Location ist 100%ig richtig.
Hoffe ihr könnt mir helfen.

sam_messen

User / Kunde

  • »sam_messen« ist männlich

Beiträge: 199

Wohnort: Schweiz

Beruf: Elektroniker

  • Nachricht senden

2

Montag, 18. Februar 2019, 16:54

Hey,

Grundsätzlich sieht das schon nicht schlecht aus, du machst aber den Fehler mit der genauen Location zu vergleichen. Die Koordinaten werden als Doubles gespeichert und somit ist es extrem schwer genau an der Stelle zu stehen.
Vergleiche stattdessen die Location des Blockes der Location, in etwa so:
(ungetestet)

Java-Quelltext

1
2
3
	//Nebenbei: Ich würde nicht die Block-Instanz vergleichen, da ich mir nicht sicher bin ob die Location oder nur das Material geprüft wird.
	Location Rust1 = new Location(e.getPlayer().getWorld(), 67.5, 122, 57.5).getBlock().getLocation();
	if(e.getRightClicked().getLocation().getBlock().getLocation().equals(Rust1)) {


LG
Sam


do(); fail(); learn(); repeat();
Developer @ Iluminary Network



MadeByProxxy

User / Kunde

  • »MadeByProxxy« ist männlich
  • »MadeByProxxy« ist der Autor dieses Themas

Beiträge: 23

  • Nachricht senden

3

Dienstag, 19. Februar 2019, 14:27

Danke. habs auch schon heraus gefunden. Hab jetzt das .5 dahinter weg gemacht und schon gings c: Zusätzlich hab ich dann noch mit paar Regionen gearbeitet, falls das doch nicht ganz geht

Bitte besucht unser neues Forum unter https://forum.nitrado.net| Please visit our new Forum at https://forum.nitrado.net