Revisions for ⁨Post/Pre Shoot Events⁩

View the changes made to this paste.

unlisted ⁨1⁩ ⁨file⁩ 2022-02-09 16:18:11 UTC

GunFireEvent.java

@@ -0,0 +1,58 @@

+/**
+ * <p>Fired when a player shoots a gun.</p>
+ *
+ * @author Ocelot
+ */
+public class GunFireEvent extends PlayerEvent
+{
+    private final ItemStack stack;
+
+    public GunFireEvent(Player player, ItemStack stack)
+    {
+        super(player);
+        this.stack = stack;
+    }
+
+    /**
+     * @return The stack the player was holding when firing the gun
+     */
+    public ItemStack getStack()
+    {
+        return stack;
+    }
+
+    /**
+     * @return Whether or not this event was fired on the client side
+     */
+    public boolean isClient()
+    {
+        return this.getPlayer().getCommandSenderWorld().isClientSide();
+    }
+
+    /**
+     * <p>Fired when a player is about to shoot a bullet.</p>
+     *
+     * @author Ocelot
+     */
+    @Cancelable
+    public static class Pre extends GunFireEvent
+    {
+        public Pre(Player player, ItemStack stack)
+        {
+            super(player, stack);
+        }
+    }
+
+    /**
+     * <p>Fired after a player has shot a bullet.</p>
+     *
+     * @author Ocelot
+     */
+    public static class Post extends GunFireEvent
+    {
+        public Post(Player player, ItemStack stack)
+        {
+            super(player, stack);
+        }
+    }
+}
\ No newline at end of file