Skocz do zawartości
  • 0

End crystal - klikanie prawym


krvzk

Pytanie

18 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
12 minut temu, Zbucki napisał:
@EventHandler
public void onInteract(PlayerInteractEntityEvent e) {
  if(!(e.getRightClicked() instanceof EnderCrystal)) {
    return;
  }
  e.setCancelled(true);
  //Twój dalszy kod
}

 

niestety nie dziala

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310358
Udostępnij na innych stronach

  • 0
1 minutę temu, krvzk napisał:

niestety nie dziala

Co dokładnie nie działa? Nic się nie pokazuje, czy jak?

Wklep ten kod, kliknij PPM na endercrystala i daj ss co ci wypisze:

@EventHandler
public void onInteract(PlayerInteractEntityEvent e) {
  e.getPlayer().sendMessage("CLICK ENTITY");
  if(!(e.getRightClicked() instanceof EnderCrystal)) {
    return;
  }
  e.getPlayer().sendMessage("CLICK ENDERCRYSTAL");
  e.setCancelled(true);
  //Twój dalszy kod
}

 

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310361
Udostępnij na innych stronach

  • 0
4 minuty temu, Zbucki napisał:

Co dokładnie nie działa? Nic się nie pokazuje, czy jak?

Wklep ten kod, kliknij PPM na endercrystala i daj ss co ci wypisze:

@EventHandler
public void onInteract(PlayerInteractEntityEvent e) {
  e.getPlayer().sendMessage("CLICK ENTITY");
  if(!(e.getRightClicked() instanceof EnderCrystal)) {
    return;
  }
  e.getPlayer().sendMessage("CLICK ENDERCRYSTAL");
  e.setCancelled(true);
  //Twój dalszy kod
}

 

problem jest w tym ze nic nie sie wyswietla, juz sprawdzalem to z wiadomosciami, ale twoje tez przetestowalem i nic

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310362
Udostępnij na innych stronach

  • 0
1 minutę temu, krvzk napisał:

problem jest w tym ze nic nie sie wyswietla, juz sprawdzalem to z wiadomosciami, ale twoje tez przetestowalem i nic

Zarejestrowałeś event w onEnable? Pod jaką wersje piszesz plugin? 

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310363
Udostępnij na innych stronach

  • 0
1 minutę temu, krvzk napisał:

zarejestrowalem,  1.8.8 

@EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR)
public void onInteract(PlayerInteractEntityEvent e) {
  e.getPlayer().sendMessage("CLICK ENTITY");
  if (!(e.getRightClicked() instanceof EnderCrystal)) {
    return;
  }
  e.getPlayer().sendMessage("CLICK ENDERCRYSTAL");
  // Twój dalszy kod
}

Zobacz ten kod.

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310365
Udostępnij na innych stronach

  • 0
7 minut temu, Zbucki napisał:
@EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR)
public void onInteract(PlayerInteractEntityEvent e) {
  e.getPlayer().sendMessage("CLICK ENTITY");
  if (!(e.getRightClicked() instanceof EnderCrystal)) {
    return;
  }
  e.getPlayer().sendMessage("CLICK ENDERCRYSTAL");
  // Twój dalszy kod
}

Zobacz ten kod.

no nic sie nie wyswietla

 

cos jest nie tak z end crystalem, jakby nie traktuje tego jako entity, bo jak klikam zombie czy cos to dostaje wiadomosc CLICK ENTITY

Zbucki

Łączę posty

Notatka dodana przez Zbucki

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310366
Udostępnij na innych stronach

  • 0
5 minut temu, krvzk napisał:

no nic sie nie wyswietla

 

cos jest nie tak z end crystalem, jakby nie traktuje tego jako entity, bo jak klikam zombie czy cos to dostaje wiadomosc CLICK ENTITY

@EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR)
public void onInteract(PlayerInteractEntityEvent e) {
	e.getPlayer().sendMessage("CLICK ENTITY");
	if (e.getRightClicked().getType() != EntityType.ENDER_CRYSTAL) {
		return;
	}
	e.getPlayer().sendMessage("CLICK ENDERCRYSTAL");
	// Twój dalszy kod
}

A coś takiego?

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310369
Udostępnij na innych stronach

  • 0
2 minuty temu, Zbucki napisał:
@EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR)
	public void onInteract(EntityDamageByEntityEvent e) {
		e.getDamager().sendMessage("damage entity "+e.getEntity().getType().toString());
		if(!(e.getDamager() instanceof Player)) {
			return;
		}
		e.getDamager().sendMessage("damager is player");
		if (!(e.getEntity() instanceof EnderCrystal)) {
			return;
		}
		e.getDamager().sendMessage("damage ender crystal");
		// Twój dalszy kod
	}

Wstaw ten kod i spróbuj uderzyć ender crystala. Wtedy podaj ss z chatu

nie dzieje sie nic, ale juz wiem czego to jest wina, bo generalnie uzywam funnyguilds, i jak robie cokolwiek z end crystalem ktory spawnuje funnyguilds to to nie dziala, jak zrobie sobie summon end crystal to dziala normalnie.

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310370
Udostępnij na innych stronach

  • 0
Teraz, krvzk napisał:

nie dzieje sie nic, ale juz wiem czego to jest wina, bo generalnie uzywam funnyguilds, i jak robie cokolwiek z end crystalem ktory spawnuje funnyguilds to to nie dziala, jak zrobie sobie summon end crystal to dziala normalnie.

Czyli musisz użyć pakietów.

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310371
Udostępnij na innych stronach

  • 0

czyli cos jest nie tak z end crystalem z funnyguilds, lub funnyguilds blokuje jakos interakcje z nim

 

2 minuty temu, Zbucki napisał:

Czyli musisz użyć pakietów.

how? bo juz mania mi siada, od 1h probuje wszystkiego co wiem

Zbucki

Łączę dwa posty

Notatka dodana przez Zbucki

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310372
Udostępnij na innych stronach

  • 0
1 godzinę temu, krvzk napisał:

czyli cos jest nie tak z end crystalem z funnyguilds, lub funnyguilds blokuje jakos interakcje z nim

 

how? bo juz mania mi siada, od 1h probuje wszystkiego co wiem

 

	@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
	public void onInteract(PlayerInteractEvent event) {
		PluginConfiguration config = FunnyGuilds.getInstance().getPluginConfiguration();
		Action eventAction = event.getAction();
		Player player = event.getPlayer();
		Block clicked = event.getClickedBlock();

		if (eventAction != Action.RIGHT_CLICK_BLOCK) {
			return;
		}

		if (clicked == null) {
			return;
		}

		Region region = RegionUtils.getAt(clicked.getLocation());

		if (region == null) {
			return;
		}

		Block heart = region.getCenter().getBlock().getRelative(BlockFace.DOWN);

		if (clicked.equals(heart)) {
			if (heart.getType() == Material.DRAGON_EGG) {
				event.setCancelled(true);
			}

			Guild guild = region.getGuild();

			if (!SecuritySystem.onHitCrystal(player, guild)) {
				return;
			}
			event.setCancelled(true);
			// Twój kod
		}
	}

Kod zapożyczony z samego FunnyGuilds.

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310375
Udostępnij na innych stronach

  • 0
Teraz, Zbucki napisał:
	@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
	public void onInteract(PlayerInteractEvent event) {
		PluginConfiguration config = FunnyGuilds.getInstance().getPluginConfiguration();
		Action eventAction = event.getAction();
		Player player = event.getPlayer();
		Block clicked = event.getClickedBlock();

		if (eventAction != Action.RIGHT_CLICK_BLOCK) {
			return;
		}

		if (clicked == null) {
			return;
		}

		Region region = RegionUtils.getAt(clicked.getLocation());

		if (region == null) {
			return;
		}

		Block heart = region.getCenter().getBlock().getRelative(BlockFace.DOWN);

		if (clicked.equals(heart)) {
			if (heart.getType() == Material.DRAGON_EGG) {
				event.setCancelled(true);
			}

			Guild guild = region.getGuild();

			if (!SecuritySystem.onHitCrystal(player, guild)) {
				return;
			}
			event.setCancelled(true);
			// Twój kod
		}
	}

Kod zapożyczony z samego FunnyGuilds.

dobra czyli mam sprawdzac klikniecie serca zamiast samego end crystala?

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310376
Udostępnij na innych stronach

  • 0
21 minut temu, Zbucki napisał:

Tak będzie najprościej.

nadal mi nie dziala... nie wiem juz co zle robie

 

wklepałem kod na otwieranie skarbca i nie dziala, pare innych sposobow tez probowalem i nic

Zbucki

Łącze dwa posty

Notatka dodana przez Zbucki

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310379
Udostępnij na innych stronach

  • 0

To nie wiem, próbuj z pakietami. A jak nie to zrób to inaczej - pobieraj lokacje środka gildii i sprawdzaj odległość między nimi, jeśli jest np. < 3 kratek to otwieraj sejf

Albo spróbuj zmienić w configu funnyguilds tego endercrystala na coś innego. Zauważyłem, że nawet FunnyGuilds ma problem z poprawnym odczytaniem interakcji endercrystala(Dopiero w konkretnym punkcie kryształu pojawiają się informacje o gildii)

 

PS. Nie dodawaj nowych postów gdy twój jest ostatni. Użyj opcji "Edytuj".

Odnośnik do komentarza
https://skript.pl/temat/50082-end-crystal-klikanie-prawym/#findComment-310400
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...