Skocz do zawartości
  • 0

Problem z EntityDamageEvent


Pytanie

Witam, podczas pisania pluginu napotkałem problem związany z zadawaniem obrażeń, kod ma po prostu działać tak, że gdy atakowany i atakujący są graczami, nie mogą się bić, nie otrzymują obrażeń, ostateczny cel jest taki, aby podczas minigierki osoby w tej samej drużynie nie mogły się ze sobą bić, ale póki co nawet ten kod nie działa.

https://code.skript.pl/fvjWnmSv

Edytowane przez LjayPL789
bludis

Wstawiam kod na code.skript.
§2.2.2.4

Notatka dodana przez bludis

Odnośnik do komentarza
https://skript.pl/temat/37388-problem-z-entitydamageevent/
Udostępnij na innych stronach

3 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Skorzystaj z tego eventu: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/EntityDamageByEntityEvent.html

W twoim kodzie przypisujesz zabójcę tamtego gracza jako attackera, a skoro jest to DamageEvent to getKiller jest ostatnim graczem, który zabił tamtego gracza, a nie uderzył. Więc jest to logiczne, że nie będzie blokowało tego ataku.

W powyższym evencie możesz skorzystać z
EntityDamageByEntityEvent#getDamager(), aby otrzymać Entity, który zadał obrażenia
oraz EntityEvent#getEntity(), aby otrzymać Entity, które otrzymało obrażenia. Wystarczy sprawdzić czy obaj są graczami, jeśli tak zablokować event.

Odnośnik do komentarza
https://skript.pl/temat/37388-problem-z-entitydamageevent/#findComment-237920
Udostępnij na innych stronach

  • 0

Teraz kodzik wygląda tak: https://code.skript.pl/8P5XraGP

Nie działa, po prostu można się bić, przy założonych if-ach, bez nich tez testowałem dodając tylko "e.setCancelled(true);" do eventu, tez mozna sie normalnie bić, probowalem tez e.setDamage(0.0), nic nie dało.

//EDIT, poradziłem sobie i sam naprawiłem znaleziony wcześniej przeze mnie błąd, aczkolwiek to co napisałeś mi pomogło, więc dziękuje, a temat można zamknąć

Edytowane przez LjayPL789
bludis

Wstawiam kod na code.skript.
§2.2.2.4

Notatka dodana przez bludis

Odnośnik do komentarza
https://skript.pl/temat/37388-problem-z-entitydamageevent/#findComment-237921
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ę...