Change view effect event again

This commit is contained in:
PikaMug 2023-01-07 18:00:49 -05:00
parent 328aba4bc3
commit 2b2fdc69b0
2 changed files with 13 additions and 14 deletions

View File

@ -13,31 +13,30 @@
package me.blackvein.quests.events.quester; package me.blackvein.quests.events.quester;
import me.blackvein.quests.Quester; import me.blackvein.quests.Quester;
import org.bukkit.entity.Entity;
import org.bukkit.event.HandlerList; import org.bukkit.event.HandlerList;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.UUID;
public class QuesterPostViewEffectEvent extends QuesterEvent { public class QuesterPostViewEffectEvent extends QuesterEvent {
private static final HandlerList HANDLERS = new HandlerList(); private static final HandlerList HANDLERS = new HandlerList();
private final UUID id; private final Entity entity;
private final String effect; private final String effect;
private final boolean redoable; private final boolean redoable;
public QuesterPostViewEffectEvent(final Quester quester, UUID id, String effect, boolean redoable) { public QuesterPostViewEffectEvent(final Quester quester, Entity entity, String effect, boolean redoable) {
super(quester); super(quester);
this.id = id; this.entity = entity;
this.effect = effect; this.effect = effect;
this.redoable = redoable; this.redoable = redoable;
} }
/** /**
* Returns the UUID of the entity involved in this event * Returns the entity involved in this event
* *
* @return UUID of entity who is involved in this event * @return entity who is involved in this event
*/ */
public UUID getEntityId() { public Entity getEntity() {
return id; return entity;
} }
/** /**

View File

@ -37,22 +37,22 @@ public class NpcEffectThread implements Runnable {
final List<Entity> nearby = player.getNearbyEntities(32.0, 16.0, 32.0); final List<Entity> nearby = player.getNearbyEntities(32.0, 16.0, 32.0);
if (!nearby.isEmpty()) { if (!nearby.isEmpty()) {
final Quester quester = plugin.getQuester(player.getUniqueId()); final Quester quester = plugin.getQuester(player.getUniqueId());
for (final Entity e : nearby) { for (final Entity entity : nearby) {
if (plugin.getDependencies().getCitizens() != null if (plugin.getDependencies().getCitizens() != null
&& plugin.getDependencies().getCitizens().getNPCRegistry() != null) { && plugin.getDependencies().getCitizens().getNPCRegistry() != null) {
if (plugin.getDependencies().getCitizens().getNPCRegistry().isNPC(e)) { if (plugin.getDependencies().getCitizens().getNPCRegistry().isNPC(entity)) {
final NPC npc = plugin.getDependencies().getCitizens().getNPCRegistry().getNPC(e); final NPC npc = plugin.getDependencies().getCitizens().getNPCRegistry().getNPC(entity);
final QuesterPostViewEffectEvent event; final QuesterPostViewEffectEvent event;
if (plugin.hasQuest(npc, quester)) { if (plugin.hasQuest(npc, quester)) {
showEffect(player, npc.getEntity(), plugin.getSettings().getEffect()); showEffect(player, npc.getEntity(), plugin.getSettings().getEffect());
event = new QuesterPostViewEffectEvent(quester, npc.getUniqueId(), event = new QuesterPostViewEffectEvent(quester, entity,
plugin.getSettings().getEffect(), false); plugin.getSettings().getEffect(), false);
plugin.getServer().getPluginManager().callEvent(event); plugin.getServer().getPluginManager().callEvent(event);
} else if (plugin.hasCompletedRedoableQuest(npc, quester)) { } else if (plugin.hasCompletedRedoableQuest(npc, quester)) {
showEffect(player, npc.getEntity(), plugin.getSettings().getRedoEffect()); showEffect(player, npc.getEntity(), plugin.getSettings().getRedoEffect());
event = new QuesterPostViewEffectEvent(quester, npc.getUniqueId(), event = new QuesterPostViewEffectEvent(quester, entity,
plugin.getSettings().getEffect(), true); plugin.getSettings().getEffect(), true);
plugin.getServer().getPluginManager().callEvent(event); plugin.getServer().getPluginManager().callEvent(event);
} }