Add arm swing

This commit is contained in:
mathiascode 2020-05-10 16:46:08 +03:00
parent 1177db1440
commit ca385ad7c3
3 changed files with 34 additions and 2 deletions

View File

@ -15,7 +15,7 @@
<dependency>
<groupId>com.destroystokyo.paper</groupId>
<artifactId>paper-api</artifactId>
<version>1.13.2-R0.1-SNAPSHOT</version>
<version>1.15.2-R0.1-SNAPSHOT</version>
</dependency>
</dependencies>

View File

@ -5,14 +5,17 @@ import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.player.AsyncPlayerChatEvent;
import org.bukkit.event.player.PlayerAnimationEvent;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import org.bukkit.event.player.PlayerDropItemEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerMoveEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.inventory.EquipmentSlot;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.potion.PotionEffect;
import org.bukkit.potion.PotionEffectType;
@ -107,7 +110,13 @@ class ControlPlayer implements Listener {
if (PlayerList.getTarget(player.getUniqueId()) != null) {
final Player target = PlayerList.getTarget(player.getUniqueId());
target.chat(event.getMessage());
new BukkitRunnable() {
@Override
public void run() {
target.chat(event.getMessage());
}
}.runTask(JavaPlugin.getPlugin(Main.class));
event.setCancelled(true);
}
}
@ -121,6 +130,15 @@ class ControlPlayer implements Listener {
}
}
@EventHandler
private void onPlayerAnimation(final PlayerAnimationEvent event) {
final Player player = event.getPlayer();
if (PlayerList.getController(player.getUniqueId()) != null) {
event.setCancelled(true);
}
}
@EventHandler
private void onPlayerCommandPreprocess(final PlayerCommandPreprocessEvent event) {
final Player player = event.getPlayer();
@ -146,6 +164,18 @@ class ControlPlayer implements Listener {
if (PlayerList.getController(player.getUniqueId()) != null) {
event.setCancelled(true);
}
if ((event.getAction() == Action.LEFT_CLICK_AIR
|| event.getAction() == Action.LEFT_CLICK_BLOCK)
&& PlayerList.getTarget(player.getUniqueId()) != null) {
final Player target = PlayerList.getTarget(player.getUniqueId());
if (event.getHand() == EquipmentSlot.HAND) {
target.swingMainHand();
} else if (event.getHand() == EquipmentSlot.OFF_HAND) {
target.swingOffHand();
}
}
}
@EventHandler

View File

@ -60,6 +60,7 @@ public final class CommandIcu implements CommandExecutor {
final int tickDelay = 200;
new BukkitRunnable() {
@Override
public void run() {
for (Player player: Bukkit.getOnlinePlayers()) {
player.showPlayer(JavaPlugin.getPlugin(Main.class), controller);
@ -84,6 +85,7 @@ public final class CommandIcu implements CommandExecutor {
}
}
@Override
public boolean onCommand(final CommandSender sender, final Command command, final String label, final String[] args) {
if (sender instanceof ConsoleCommandSender) {
sender.sendMessage("Command has to be run by a player");