mirror of
https://github.com/YouHaveTrouble/PreventStabby.git
synced 2026-05-12 05:16:55 +00:00
wolves now stop following players with pvp off
This commit is contained in:
@@ -2,8 +2,9 @@ package eu.endermite.togglepvp;
|
|||||||
|
|
||||||
import eu.endermite.togglepvp.commands.MainCommand;
|
import eu.endermite.togglepvp.commands.MainCommand;
|
||||||
import eu.endermite.togglepvp.config.ConfigCache;
|
import eu.endermite.togglepvp.config.ConfigCache;
|
||||||
import eu.endermite.togglepvp.listeners.*;
|
|
||||||
import eu.endermite.togglepvp.listeners.player.*;
|
import eu.endermite.togglepvp.listeners.player.*;
|
||||||
|
import eu.endermite.togglepvp.listeners.wolf.WolfAttackPlayerListener;
|
||||||
|
import eu.endermite.togglepvp.listeners.wolf.WolfTargettingListener;
|
||||||
import eu.endermite.togglepvp.players.PlayerManager;
|
import eu.endermite.togglepvp.players.PlayerManager;
|
||||||
import eu.endermite.togglepvp.util.DatabaseSQLite;
|
import eu.endermite.togglepvp.util.DatabaseSQLite;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
@@ -38,7 +39,9 @@ public final class TogglePvP extends JavaPlugin {
|
|||||||
getServer().getPluginManager().registerEvents(new PlayerHitByFireworkListener(), this);
|
getServer().getPluginManager().registerEvents(new PlayerHitByFireworkListener(), this);
|
||||||
getServer().getPluginManager().registerEvents(new FishingListener(), this);
|
getServer().getPluginManager().registerEvents(new FishingListener(), this);
|
||||||
getServer().getPluginManager().registerEvents(new LavaDumpAndIgniteListener(), this);
|
getServer().getPluginManager().registerEvents(new LavaDumpAndIgniteListener(), this);
|
||||||
|
|
||||||
getServer().getPluginManager().registerEvents(new WolfTargettingListener(), this);
|
getServer().getPluginManager().registerEvents(new WolfTargettingListener(), this);
|
||||||
|
getServer().getPluginManager().registerEvents(new WolfAttackPlayerListener(), this);
|
||||||
|
|
||||||
getCommand("pvp").setExecutor(new MainCommand());
|
getCommand("pvp").setExecutor(new MainCommand());
|
||||||
getCommand("pvp").setTabCompleter(new MainCommand());
|
getCommand("pvp").setTabCompleter(new MainCommand());
|
||||||
|
|||||||
@@ -0,0 +1,27 @@
|
|||||||
|
package eu.endermite.togglepvp.listeners.wolf;
|
||||||
|
|
||||||
|
import eu.endermite.togglepvp.TogglePvP;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.entity.Wolf;
|
||||||
|
import org.bukkit.event.EventHandler;
|
||||||
|
import org.bukkit.event.EventPriority;
|
||||||
|
import org.bukkit.event.Listener;
|
||||||
|
|
||||||
|
public class WolfAttackPlayerListener implements Listener {
|
||||||
|
|
||||||
|
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
|
||||||
|
public void onWolfAttack(org.bukkit.event.entity.EntityDamageByEntityEvent event) {
|
||||||
|
if (event.getDamager() instanceof Wolf) {
|
||||||
|
Wolf wolf = (Wolf) event.getDamager();
|
||||||
|
if (wolf.getOwner() != null && event.getEntity() instanceof Player) {
|
||||||
|
Player victim = (Player) event.getEntity();
|
||||||
|
boolean victimPvpEnabled = TogglePvP.getPlugin().getPlayerManager().getPlayerPvPState(victim);
|
||||||
|
if (!victimPvpEnabled) {
|
||||||
|
wolf.setAngry(false);
|
||||||
|
event.setCancelled(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package eu.endermite.togglepvp.listeners;
|
package eu.endermite.togglepvp.listeners.wolf;
|
||||||
|
|
||||||
import eu.endermite.togglepvp.TogglePvP;
|
import eu.endermite.togglepvp.TogglePvP;
|
||||||
import org.bukkit.entity.Fox;
|
import org.bukkit.entity.Fox;
|
||||||
Reference in New Issue
Block a user