From 1c78ffdfe5410c6251505e68e6c12da1fc0dfd27 Mon Sep 17 00:00:00 2001
From: Greg <35405919+xicxen@users.noreply.github.com>
Date: Sat, 30 Mar 2024 03:49:03 -0400
Subject: [PATCH 1/3] ProjectKorra Bridge initial commit.
---
pom.xml | 7 ++
.../depenizen/bukkit/Depenizen.java | 1 +
.../bukkit/bridges/ProjectKorraBridge.java | 22 +++++
.../EntityBendingDeathScriptEvent.java | 79 ++++++++++++++++++
.../PlayerAbilityDamageEntityScriptEvent.java | 83 +++++++++++++++++++
.../PlayerAbilityEndScriptEvent.java | 80 ++++++++++++++++++
.../PlayerAbilityProgressScriptEvent.java | 80 ++++++++++++++++++
.../PlayerAbilityStartScriptEvent.java | 80 ++++++++++++++++++
src/main/resources/plugin.yml | 1 +
9 files changed, 433 insertions(+)
create mode 100644 src/main/java/com/denizenscript/depenizen/bukkit/bridges/ProjectKorraBridge.java
create mode 100644 src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java
create mode 100644 src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java
create mode 100644 src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java
create mode 100644 src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java
create mode 100644 src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java
diff --git a/pom.xml b/pom.xml
index b16b75a55..c6833dd7c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -254,6 +254,13 @@
system
${project.basedir}/lib/PlotSquared.jar
+
+ com.github.ProjectKorra
+ ProjectKorra
+ 1.11.2
+ system
+ ${project.basedir}/lib/ProjectKorra.jar
+
net.slipcor
pvparena
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/Depenizen.java b/src/main/java/com/denizenscript/depenizen/bukkit/Depenizen.java
index 37ae8caea..4f81c1abb 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/Depenizen.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/Depenizen.java
@@ -130,6 +130,7 @@ public void registerCoreBridges() {
registerBridge("PlaceholderAPI", () -> new PlaceholderAPIBridge());
registerBridge("PlayerPoints", () -> new PlayerPointsBridge());
registerBridge("PlotSquared", () -> new PlotSquaredBridge());
+ registerBridge("ProjectKorra", () -> new ProjectKorraBridge());
registerBridge("PVPArena", () -> new PVPArenaBridge());
registerBridge("PVPStats", () -> new PVPStatsBridge());
registerBridge("Quests", () -> new QuestsBridge());
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/bridges/ProjectKorraBridge.java b/src/main/java/com/denizenscript/depenizen/bukkit/bridges/ProjectKorraBridge.java
new file mode 100644
index 000000000..ef03e83d5
--- /dev/null
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/bridges/ProjectKorraBridge.java
@@ -0,0 +1,22 @@
+package com.denizenscript.depenizen.bukkit.bridges;
+
+import com.denizenscript.denizencore.events.ScriptEvent;
+import com.denizenscript.denizencore.utilities.debugging.Debug;
+import com.denizenscript.depenizen.bukkit.Bridge;
+import com.denizenscript.depenizen.bukkit.events.projectkorra.*;
+
+public class ProjectKorraBridge extends Bridge {
+
+ @Override
+ public void init() {
+ if (!plugin.isEnabled()) {
+ Debug.log("ProjectKorra plugin is not enabled or not present. ProjectKorra events will not be available.");
+ return;
+ }
+ ScriptEvent.registerScriptEvent(EntityBendingDeathScriptEvent.class);
+ ScriptEvent.registerScriptEvent(PlayerAbilityDamageEntityScriptEvent.class);
+ ScriptEvent.registerScriptEvent(PlayerAbilityEndScriptEvent.class);
+ ScriptEvent.registerScriptEvent(PlayerAbilityProgressScriptEvent.class);
+ ScriptEvent.registerScriptEvent(PlayerAbilityStartScriptEvent.class);
+ }
+}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java
new file mode 100644
index 000000000..a01a711b4
--- /dev/null
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java
@@ -0,0 +1,79 @@
+package com.denizenscript.depenizen.bukkit.events.projectkorra;
+
+import com.denizenscript.denizen.events.BukkitScriptEvent;
+import com.denizenscript.denizen.objects.EntityTag;
+import com.denizenscript.denizen.objects.PlayerTag;
+import com.denizenscript.denizen.utilities.implementation.BukkitScriptEntryData;
+import com.denizenscript.denizencore.objects.ObjectTag;
+import com.denizenscript.denizencore.objects.core.ElementTag;
+import com.denizenscript.denizencore.scripts.ScriptEntryData;
+import com.projectkorra.projectkorra.event.EntityBendingDeathEvent;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.Listener;
+
+public class EntityBendingDeathScriptEvent extends BukkitScriptEvent implements Listener {
+
+ // <--[event]
+ // @Events
+ // projectkorra player|entity dies|death|killed by
+ //
+ // @Triggers when an entity dies from bending.
+ //
+ // @Context
+ // returns ElementTag(String) of the ability's name.
+ // returns PlayerTag of the player who triggered the ability.
+ // returns EntityTag of the target damaged by the ability.
+ // returns ElementTag(Decimal) of the damage dealt to the entity.
+ // returns ElementTag(String) ability's element.
+ // returns ElementTag(Boolean) if the ability is explosive.
+ // returns ElementTag(Boolean) if the ability can ignite.
+ // returns ElementTag(Boolean) if the ability is triggered by sneak.
+ //
+ // @Plugin Depenizen, ProjectKorra
+ //
+ // @Player Always.
+ //
+ // -->
+
+ public EntityBendingDeathScriptEvent() {
+ registerCouldMatcher("projectkorra player|entity dies|death|killed by <'ability'>");
+ }
+
+ public EntityBendingDeathEvent event;
+
+ @Override
+ public boolean matches(ScriptPath path) {
+ String ability = path.eventArgLowerAt(4);
+ // Check if event applies to any ability
+ if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ return false;
+ }
+ return super.matches(path);
+ }
+
+ @Override
+ public ScriptEntryData getScriptEntryData() {
+ return new BukkitScriptEntryData(PlayerTag.mirrorBukkitPlayer(event.getAbility().getPlayer()), null);
+ }
+
+ @Override
+ public ObjectTag getContext(String name) {
+ return switch (name) {
+ case "ability" -> new ElementTag(event.getAbility().getName());
+ case "source" -> new PlayerTag(event.getAttacker());
+ case "target" -> new EntityTag(event.getEntity());
+ case "damage" -> new ElementTag(event.getDamage());
+ case "element" -> new ElementTag(event.getAbility().getElement().getName());
+ case "is_explosive" -> new ElementTag(event.getAbility().isExplosiveAbility());
+ case "is_ignite" -> new ElementTag(event.getAbility().isIgniteAbility());
+ case "is_sneak" -> new ElementTag(event.getAbility().isSneakAbility());
+ default -> super.getContext(name);
+ };
+ }
+
+ @EventHandler
+ public void onAbilityStart(EntityBendingDeathEvent event) {
+ this.event = event;
+ fire(event);
+ }
+}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java
new file mode 100644
index 000000000..fbbe83b59
--- /dev/null
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java
@@ -0,0 +1,83 @@
+package com.denizenscript.depenizen.bukkit.events.projectkorra;
+
+import com.denizenscript.denizen.events.BukkitScriptEvent;
+import com.denizenscript.denizen.objects.EntityTag;
+import com.denizenscript.denizen.objects.PlayerTag;
+import com.denizenscript.denizen.utilities.implementation.BukkitScriptEntryData;
+import com.denizenscript.denizencore.objects.ObjectTag;
+import com.denizenscript.denizencore.objects.core.ElementTag;
+import com.denizenscript.denizencore.scripts.ScriptEntryData;
+import com.projectkorra.projectkorra.event.AbilityDamageEntityEvent;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.Listener;
+
+public class PlayerAbilityDamageEntityScriptEvent extends BukkitScriptEvent implements Listener {
+
+ // <--[event]
+ // @Events
+ // projectkorra player damages player|entity with
+ //
+ // @Triggers when a player damages an entity with a bending ability.
+ //
+ // @Context
+ // returns ElementTag(String) of the ability's name.
+ // returns PlayerTag of the player who triggered the ability.
+ // returns EntityTag of the target damaged by the ability.
+ // returns ElementTag(Decimal) of the damage dealt to the entity.
+ // returns ElementTag(String) ability's element.
+ // returns ElementTag(Number) of the ability's cooldown.
+ // returns ElementTag(Boolean) if the ability is explosive.
+ // returns ElementTag(Boolean) if the ability can ignite.
+ // returns ElementTag(Boolean) if the ability is triggered by sneak.
+ // returns ElementTag(Boolean) if the event ignores armor.
+ //
+ // @Plugin Depenizen, ProjectKorra
+ //
+ // @Player Always.
+ //
+ // -->
+
+ public PlayerAbilityDamageEntityScriptEvent() {
+ registerCouldMatcher("projectkorra player damages player|entity with <'ability'>");
+ }
+
+ public AbilityDamageEntityEvent event;
+
+ @Override
+ public boolean matches(ScriptPath path) {
+ String ability = path.eventArgLowerAt(5);
+ // Check if event applies to any ability
+ if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ return false;
+ }
+ return super.matches(path);
+ }
+
+ @Override
+ public ScriptEntryData getScriptEntryData() {
+ return new BukkitScriptEntryData(PlayerTag.mirrorBukkitPlayer(event.getAbility().getPlayer()), null);
+ }
+
+ @Override
+ public ObjectTag getContext(String name) {
+ return switch (name) {
+ case "ability" -> new ElementTag(event.getAbility().getName());
+ case "source" -> new PlayerTag(event.getSource());
+ case "target" -> new EntityTag(event.getEntity());
+ case "damage" -> new ElementTag(event.getDamage());
+ case "element" -> new ElementTag(event.getAbility().getElement().getName());
+ case "cooldown" -> new ElementTag(event.getAbility().getCooldown());
+ case "is_explosive" -> new ElementTag(event.getAbility().isExplosiveAbility());
+ case "is_ignite" -> new ElementTag(event.getAbility().isIgniteAbility());
+ case "is_sneak" -> new ElementTag(event.getAbility().isSneakAbility());
+ case "ignores_armor" -> new ElementTag(event.doesIgnoreArmor());
+ default -> super.getContext(name);
+ };
+ }
+
+ @EventHandler
+ public void onAbilityStart(AbilityDamageEntityEvent event) {
+ this.event = event;
+ fire(event);
+ }
+}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java
new file mode 100644
index 000000000..da1e06c16
--- /dev/null
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java
@@ -0,0 +1,80 @@
+package com.denizenscript.depenizen.bukkit.events.projectkorra;
+
+import com.denizenscript.denizencore.objects.core.ElementTag;
+import com.denizenscript.denizen.utilities.implementation.BukkitScriptEntryData;
+import com.denizenscript.denizen.events.BukkitScriptEvent;
+import com.denizenscript.denizen.objects.PlayerTag;
+import com.denizenscript.denizencore.objects.ObjectTag;
+import com.denizenscript.denizencore.scripts.ScriptEntryData;
+import com.projectkorra.projectkorra.event.AbilityEndEvent;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.Listener;
+
+public class PlayerAbilityEndScriptEvent extends BukkitScriptEvent implements Listener {
+
+ // <--[event]
+ // @Events
+ // projectkorra player ends ability
+ //
+ // @Triggers when a player ends a bending ability.
+ //
+ // @Context
+ // returns ElementTag(String) of the ability's name.
+ // returns PlayerTag of the player who triggered the ability.
+ // returns ElementTag(String) ability's element.
+ // returns ElementTag(Number) of the ability's cooldown.
+ // returns ElementTag(Boolean) if the ability is explosive.
+ // returns ElementTag(Boolean) if the ability is harmless.
+ // returns ElementTag(Boolean) if the ability is hidden.
+ // returns ElementTag(Boolean) if the ability can ignite.
+ // returns ElementTag(Boolean) if the ability is triggered by sneak.
+ //
+ // @Plugin Depenizen, ProjectKorra
+ //
+ // @Player Always.
+ //
+ // -->
+
+ public PlayerAbilityEndScriptEvent() {
+ registerCouldMatcher("projectkorra player ends <'ability'>");
+ }
+
+ public AbilityEndEvent event;
+
+ @Override
+ public boolean matches(ScriptPath path) {
+ String ability = path.eventArgLowerAt(3);
+ // Check if event applies to any ability
+ if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ return false;
+ }
+ return super.matches(path);
+ }
+
+ @Override
+ public ScriptEntryData getScriptEntryData() {
+ return new BukkitScriptEntryData(PlayerTag.mirrorBukkitPlayer(event.getAbility().getPlayer()), null);
+ }
+
+ @Override
+ public ObjectTag getContext(String name) {
+ return switch (name) {
+ case "ability" -> new ElementTag(event.getAbility().getName());
+ case "source" -> new PlayerTag(event.getAbility().getPlayer());
+ case "element" -> new ElementTag(event.getAbility().getElement().getName());
+ case "cooldown" -> new ElementTag(event.getAbility().getCooldown());
+ case "is_explosive" -> new ElementTag(event.getAbility().isExplosiveAbility());
+ case "is_harmless" -> new ElementTag(event.getAbility().isHarmlessAbility());
+ case "is_hidden" -> new ElementTag(event.getAbility().isHiddenAbility());
+ case "is_ignite" -> new ElementTag(event.getAbility().isIgniteAbility());
+ case "is_sneak" -> new ElementTag(event.getAbility().isSneakAbility());
+ default -> super.getContext(name);
+ };
+ }
+
+ @EventHandler
+ public void onAbilityEnd(AbilityEndEvent event) {
+ this.event = event;
+ fire(event);
+ }
+}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java
new file mode 100644
index 000000000..2a3b05d5b
--- /dev/null
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java
@@ -0,0 +1,80 @@
+package com.denizenscript.depenizen.bukkit.events.projectkorra;
+
+import com.denizenscript.denizen.events.BukkitScriptEvent;
+import com.denizenscript.denizen.objects.PlayerTag;
+import com.denizenscript.denizen.utilities.implementation.BukkitScriptEntryData;
+import com.denizenscript.denizencore.objects.ObjectTag;
+import com.denizenscript.denizencore.objects.core.ElementTag;
+import com.denizenscript.denizencore.scripts.ScriptEntryData;
+import com.projectkorra.projectkorra.event.AbilityProgressEvent;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.Listener;
+
+public class PlayerAbilityProgressScriptEvent extends BukkitScriptEvent implements Listener {
+
+ // <--[event]
+ // @Events
+ // projectkorra player progresses
+ //
+ // @Triggers when a player progresses a bending ability.
+ //
+ // @Context
+ // returns ElementTag(String) of the ability's name.
+ // returns PlayerTag of the player who triggered the ability.
+ // returns ElementTag(String) ability's element.
+ // returns ElementTag(Number) of the ability's cooldown.
+ // returns ElementTag(Boolean) if the ability is explosive.
+ // returns ElementTag(Boolean) if the ability is harmless.
+ // returns ElementTag(Boolean) if the ability is hidden.
+ // returns ElementTag(Boolean) if the ability can ignite.
+ // returns ElementTag(Boolean) if the ability is triggered by sneak.
+ //
+ // @Plugin Depenizen, ProjectKorra
+ //
+ // @Player Always.
+ //
+ // -->
+
+ public PlayerAbilityProgressScriptEvent() {
+ registerCouldMatcher("projectkorra player progresses <'ability'>");
+ }
+
+ public AbilityProgressEvent event;
+
+ @Override
+ public boolean matches(ScriptPath path) {
+ String ability = path.eventArgLowerAt(3);
+ // Check if event applies to any ability
+ if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ return false;
+ }
+ return super.matches(path);
+ }
+
+ @Override
+ public ScriptEntryData getScriptEntryData() {
+ return new BukkitScriptEntryData(PlayerTag.mirrorBukkitPlayer(event.getAbility().getPlayer()), null);
+ }
+
+ @Override
+ public ObjectTag getContext(String name) {
+ return switch (name) {
+ case "ability" -> new ElementTag(event.getAbility().getName());
+ case "source" -> new PlayerTag(event.getAbility().getPlayer());
+ case "element" -> new ElementTag(event.getAbility().getElement().getName());
+ case "cooldown" -> new ElementTag(event.getAbility().getCooldown());
+ case "is_explosive" -> new ElementTag(event.getAbility().isExplosiveAbility());
+ case "is_harmless" -> new ElementTag(event.getAbility().isHarmlessAbility());
+ case "is_hidden" -> new ElementTag(event.getAbility().isHiddenAbility());
+ case "is_ignite" -> new ElementTag(event.getAbility().isIgniteAbility());
+ case "is_sneak" -> new ElementTag(event.getAbility().isSneakAbility());
+ default -> super.getContext(name);
+ };
+ }
+
+ @EventHandler
+ public void onAbilityProgress(AbilityProgressEvent event) {
+ this.event = event;
+ fire(event);
+ }
+}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java
new file mode 100644
index 000000000..d63c4fde1
--- /dev/null
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java
@@ -0,0 +1,80 @@
+package com.denizenscript.depenizen.bukkit.events.projectkorra;
+
+import com.denizenscript.denizen.events.BukkitScriptEvent;
+import com.denizenscript.denizen.utilities.implementation.BukkitScriptEntryData;
+import com.denizenscript.denizen.objects.PlayerTag;
+import com.denizenscript.denizencore.objects.core.ElementTag;
+import com.denizenscript.denizencore.objects.ObjectTag;
+import com.denizenscript.denizencore.scripts.ScriptEntryData;
+import com.projectkorra.projectkorra.event.AbilityStartEvent;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.Listener;
+
+public class PlayerAbilityStartScriptEvent extends BukkitScriptEvent implements Listener {
+
+ // <--[event]
+ // @Events
+ // projectkorra player starts ability
+ //
+ // @Triggers when a player starts a bending ability.
+ //
+ // @Context
+ // returns ElementTag(String) of the ability's name.
+ // returns PlayerTag of the player who triggered the ability.
+ // returns ElementTag(String) ability's element.
+ // returns ElementTag(Number) of the ability's cooldown.
+ // returns ElementTag(Boolean) if the ability is explosive.
+ // returns ElementTag(Boolean) if the ability is harmless.
+ // returns ElementTag(Boolean) if the ability is hidden.
+ // returns ElementTag(Boolean) if the ability can ignite.
+ // returns ElementTag(Boolean) if the ability is triggered by sneak.
+ //
+ // @Plugin Depenizen, ProjectKorra
+ //
+ // @Player Always.
+ //
+ // -->
+
+ public PlayerAbilityStartScriptEvent() {
+ registerCouldMatcher("projectkorra player starts <'ability'>");
+ }
+
+ public AbilityStartEvent event;
+
+ @Override
+ public boolean matches(ScriptPath path) {
+ String ability = path.eventArgLowerAt(3);
+ // Check if event applies to any ability
+ if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ return false;
+ }
+ return super.matches(path);
+ }
+
+ @Override
+ public ScriptEntryData getScriptEntryData() {
+ return new BukkitScriptEntryData(PlayerTag.mirrorBukkitPlayer(event.getAbility().getPlayer()), null);
+ }
+
+ @Override
+ public ObjectTag getContext(String name) {
+ return switch (name) {
+ case "ability" -> new ElementTag(event.getAbility().getName());
+ case "source" -> new PlayerTag(event.getAbility().getPlayer());
+ case "element" -> new ElementTag(event.getAbility().getElement().getName());
+ case "cooldown" -> new ElementTag(event.getAbility().getCooldown());
+ case "is_explosive" -> new ElementTag(event.getAbility().isExplosiveAbility());
+ case "is_harmless" -> new ElementTag(event.getAbility().isHarmlessAbility());
+ case "is_hidden" -> new ElementTag(event.getAbility().isHiddenAbility());
+ case "is_ignite" -> new ElementTag(event.getAbility().isIgniteAbility());
+ case "is_sneak" -> new ElementTag(event.getAbility().isSneakAbility());
+ default -> super.getContext(name);
+ };
+ }
+
+ @EventHandler
+ public void onAbilityStart(AbilityStartEvent event) {
+ this.event = event;
+ fire(event);
+ }
+}
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index 4d231cdae..6e840f09c 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -33,6 +33,7 @@ softdepend:
- PlaceholderAPI
- PlayerPoints
- PlotSquared
+ - ProjectKorra
- PVPArena
- PVPStats
- Quests
From 504e397d8cde5fef0ff7dbfb6566e6e40f19b480 Mon Sep 17 00:00:00 2001
From: Greg <35405919+xicxen@users.noreply.github.com>
Date: Sat, 30 Mar 2024 16:09:41 -0400
Subject: [PATCH 2/3] Added switches to all the events
Removed types in @Context
Removed comments
Fixed method name
---
.../EntityBendingDeathScriptEvent.java | 36 ++++++++++-------
.../PlayerAbilityDamageEntityScriptEvent.java | 40 +++++++++++--------
.../PlayerAbilityEndScriptEvent.java | 36 ++++++++++-------
.../PlayerAbilityProgressScriptEvent.java | 36 ++++++++++-------
.../PlayerAbilityStartScriptEvent.java | 36 ++++++++++-------
5 files changed, 107 insertions(+), 77 deletions(-)
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java
index a01a711b4..66b122b72 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java
@@ -15,19 +15,21 @@ public class EntityBendingDeathScriptEvent extends BukkitScriptEvent implements
// <--[event]
// @Events
- // projectkorra player|entity dies|death|killed by
+ // projectkorra entity dies|death|killed
+ //
+ // @Switch by: to only process the event if the ability matches the specified ability.
//
// @Triggers when an entity dies from bending.
//
// @Context
- // returns ElementTag(String) of the ability's name.
- // returns PlayerTag of the player who triggered the ability.
- // returns EntityTag of the target damaged by the ability.
- // returns ElementTag(Decimal) of the damage dealt to the entity.
- // returns ElementTag(String) ability's element.
- // returns ElementTag(Boolean) if the ability is explosive.
- // returns ElementTag(Boolean) if the ability can ignite.
- // returns ElementTag(Boolean) if the ability is triggered by sneak.
+ // returns the ability's name.
+ // returns the player who triggered the ability.
+ // returns the target damaged by the ability.
+ // returns the damage dealt to the entity as a decimal.
+ // returns the ability's element name.
+ // returns if the ability is explosive.
+ // returns if the ability can ignite.
+ // returns if the ability is triggered by sneak.
//
// @Plugin Depenizen, ProjectKorra
//
@@ -36,16 +38,19 @@ public class EntityBendingDeathScriptEvent extends BukkitScriptEvent implements
// -->
public EntityBendingDeathScriptEvent() {
- registerCouldMatcher("projectkorra player|entity dies|death|killed by <'ability'>");
+ registerCouldMatcher("projectkorra entity dies|death|killed");
+ registerSwitches("by");
}
public EntityBendingDeathEvent event;
+ public ElementTag ability;
@Override
public boolean matches(ScriptPath path) {
- String ability = path.eventArgLowerAt(4);
- // Check if event applies to any ability
- if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ if ((path.eventArgLowerAt(3).equals("by")) && (ability == null || !path.tryArgObject(4, ability))) {
+ return false;
+ }
+ if (!path.tryObjectSwitch("by", ability)) {
return false;
}
return super.matches(path);
@@ -59,7 +64,7 @@ public ScriptEntryData getScriptEntryData() {
@Override
public ObjectTag getContext(String name) {
return switch (name) {
- case "ability" -> new ElementTag(event.getAbility().getName());
+ case "ability" -> ability;
case "source" -> new PlayerTag(event.getAttacker());
case "target" -> new EntityTag(event.getEntity());
case "damage" -> new ElementTag(event.getDamage());
@@ -72,8 +77,9 @@ public ObjectTag getContext(String name) {
}
@EventHandler
- public void onAbilityStart(EntityBendingDeathEvent event) {
+ public void onBendingDeath(EntityBendingDeathEvent event) {
this.event = event;
+ this.ability = new ElementTag(event.getAbility().getName());
fire(event);
}
}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java
index fbbe83b59..3279e4014 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java
@@ -15,21 +15,23 @@ public class PlayerAbilityDamageEntityScriptEvent extends BukkitScriptEvent impl
// <--[event]
// @Events
- // projectkorra player damages player|entity with
+ // projectkorra player damages player|entity
+ //
+ // @Switch by: to only process the event if the ability matches the specified ability.
//
// @Triggers when a player damages an entity with a bending ability.
//
// @Context
- // returns ElementTag(String) of the ability's name.
- // returns PlayerTag of the player who triggered the ability.
- // returns EntityTag of the target damaged by the ability.
- // returns ElementTag(Decimal) of the damage dealt to the entity.
- // returns ElementTag(String) ability's element.
- // returns ElementTag(Number) of the ability's cooldown.
- // returns ElementTag(Boolean) if the ability is explosive.
- // returns ElementTag(Boolean) if the ability can ignite.
- // returns ElementTag(Boolean) if the ability is triggered by sneak.
- // returns ElementTag(Boolean) if the event ignores armor.
+ // returns the ability's name.
+ // returns the player who triggered the ability.
+ // returns the target damaged by the ability.
+ // returns the damage dealt to the entity as a decimal.
+ // returns the ability's element name.
+ // returns the ability's cooldown.
+ // returns if the ability is explosive.
+ // returns if the ability can ignite.
+ // returns if the ability is triggered by sneak.
+ // returns if the event ignores armor.
//
// @Plugin Depenizen, ProjectKorra
//
@@ -38,16 +40,19 @@ public class PlayerAbilityDamageEntityScriptEvent extends BukkitScriptEvent impl
// -->
public PlayerAbilityDamageEntityScriptEvent() {
- registerCouldMatcher("projectkorra player damages player|entity with <'ability'>");
+ registerCouldMatcher("projectkorra player damages player|entity");
+ registerSwitches("by");
}
public AbilityDamageEntityEvent event;
+ public ElementTag ability;
@Override
public boolean matches(ScriptPath path) {
- String ability = path.eventArgLowerAt(5);
- // Check if event applies to any ability
- if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ if ((path.eventArgLowerAt(4).equals("by")) && (ability == null || !path.tryArgObject(5, ability))) {
+ return false;
+ }
+ if (!path.tryObjectSwitch("by", ability)) {
return false;
}
return super.matches(path);
@@ -61,7 +66,7 @@ public ScriptEntryData getScriptEntryData() {
@Override
public ObjectTag getContext(String name) {
return switch (name) {
- case "ability" -> new ElementTag(event.getAbility().getName());
+ case "ability" -> ability;
case "source" -> new PlayerTag(event.getSource());
case "target" -> new EntityTag(event.getEntity());
case "damage" -> new ElementTag(event.getDamage());
@@ -76,8 +81,9 @@ public ObjectTag getContext(String name) {
}
@EventHandler
- public void onAbilityStart(AbilityDamageEntityEvent event) {
+ public void onAbilityDamage(AbilityDamageEntityEvent event) {
this.event = event;
+ this.ability = new ElementTag(event.getAbility().getName());
fire(event);
}
}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java
index da1e06c16..6899155c6 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java
@@ -14,20 +14,22 @@ public class PlayerAbilityEndScriptEvent extends BukkitScriptEvent implements Li
// <--[event]
// @Events
- // projectkorra player ends ability
+ // projectkorra player ends|stops
+ //
+ // @Switch ability: to only process the event if the ability matches the specified ability.
//
// @Triggers when a player ends a bending ability.
//
// @Context
- // returns ElementTag(String) of the ability's name.
- // returns PlayerTag of the player who triggered the ability.
- // returns ElementTag(String) ability's element.
- // returns ElementTag(Number) of the ability's cooldown.
- // returns ElementTag(Boolean) if the ability is explosive.
- // returns ElementTag(Boolean) if the ability is harmless.
- // returns ElementTag(Boolean) if the ability is hidden.
- // returns ElementTag(Boolean) if the ability can ignite.
- // returns ElementTag(Boolean) if the ability is triggered by sneak.
+ // returns the ability's name.
+ // returns the player who triggered the ability.
+ // returns the ability's element name.
+ // returns the ability's cooldown.
+ // returns if the ability is explosive.
+ // returns if the ability is harmless.
+ // returns if the ability is hidden.
+ // returns if the ability can ignite.
+ // returns if the ability is triggered by sneak.
//
// @Plugin Depenizen, ProjectKorra
//
@@ -36,16 +38,19 @@ public class PlayerAbilityEndScriptEvent extends BukkitScriptEvent implements Li
// -->
public PlayerAbilityEndScriptEvent() {
- registerCouldMatcher("projectkorra player ends <'ability'>");
+ registerCouldMatcher("projectkorra player ends|stops");
+ registerSwitches("ability");
}
public AbilityEndEvent event;
+ public ElementTag ability;
@Override
public boolean matches(ScriptPath path) {
- String ability = path.eventArgLowerAt(3);
- // Check if event applies to any ability
- if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ if ((path.eventArgLowerAt(3).equals("ability")) && (ability == null || !path.tryArgObject(4, ability))) {
+ return false;
+ }
+ if (!path.tryObjectSwitch("ability", ability)) {
return false;
}
return super.matches(path);
@@ -59,7 +64,7 @@ public ScriptEntryData getScriptEntryData() {
@Override
public ObjectTag getContext(String name) {
return switch (name) {
- case "ability" -> new ElementTag(event.getAbility().getName());
+ case "ability" -> ability;
case "source" -> new PlayerTag(event.getAbility().getPlayer());
case "element" -> new ElementTag(event.getAbility().getElement().getName());
case "cooldown" -> new ElementTag(event.getAbility().getCooldown());
@@ -75,6 +80,7 @@ public ObjectTag getContext(String name) {
@EventHandler
public void onAbilityEnd(AbilityEndEvent event) {
this.event = event;
+ this.ability = new ElementTag(event.getAbility().getName());
fire(event);
}
}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java
index 2a3b05d5b..a27aaa5b0 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java
@@ -14,20 +14,22 @@ public class PlayerAbilityProgressScriptEvent extends BukkitScriptEvent implemen
// <--[event]
// @Events
- // projectkorra player progresses
+ // projectkorra player progresses|continues
+ //
+ // @Switch ability: to only process the event if the ability matches the specified ability.
//
// @Triggers when a player progresses a bending ability.
//
// @Context
- // returns ElementTag(String) of the ability's name.
- // returns PlayerTag of the player who triggered the ability.
- // returns ElementTag(String) ability's element.
- // returns ElementTag(Number) of the ability's cooldown.
- // returns ElementTag(Boolean) if the ability is explosive.
- // returns ElementTag(Boolean) if the ability is harmless.
- // returns ElementTag(Boolean) if the ability is hidden.
- // returns ElementTag(Boolean) if the ability can ignite.
- // returns ElementTag(Boolean) if the ability is triggered by sneak.
+ // returns the ability's name.
+ // returns the player who triggered the ability.
+ // returns the ability's element name.
+ // returns the ability's cooldown.
+ // returns if the ability is explosive.
+ // returns if the ability is harmless.
+ // returns if the ability is hidden.
+ // returns if the ability can ignite.
+ // returns if the ability is triggered by sneak.
//
// @Plugin Depenizen, ProjectKorra
//
@@ -36,16 +38,19 @@ public class PlayerAbilityProgressScriptEvent extends BukkitScriptEvent implemen
// -->
public PlayerAbilityProgressScriptEvent() {
- registerCouldMatcher("projectkorra player progresses <'ability'>");
+ registerCouldMatcher("projectkorra player progresses|continues");
+ registerSwitches("ability");
}
public AbilityProgressEvent event;
+ public ElementTag ability;
@Override
public boolean matches(ScriptPath path) {
- String ability = path.eventArgLowerAt(3);
- // Check if event applies to any ability
- if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ if ((path.eventArgLowerAt(3).equals("ability")) && (ability == null || !path.tryArgObject(4, ability))) {
+ return false;
+ }
+ if (!path.tryObjectSwitch("ability", ability)) {
return false;
}
return super.matches(path);
@@ -59,7 +64,7 @@ public ScriptEntryData getScriptEntryData() {
@Override
public ObjectTag getContext(String name) {
return switch (name) {
- case "ability" -> new ElementTag(event.getAbility().getName());
+ case "ability" -> ability;
case "source" -> new PlayerTag(event.getAbility().getPlayer());
case "element" -> new ElementTag(event.getAbility().getElement().getName());
case "cooldown" -> new ElementTag(event.getAbility().getCooldown());
@@ -75,6 +80,7 @@ public ObjectTag getContext(String name) {
@EventHandler
public void onAbilityProgress(AbilityProgressEvent event) {
this.event = event;
+ this.ability = new ElementTag(event.getAbility().getName());
fire(event);
}
}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java
index d63c4fde1..d6c75f53b 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java
@@ -14,20 +14,22 @@ public class PlayerAbilityStartScriptEvent extends BukkitScriptEvent implements
// <--[event]
// @Events
- // projectkorra player starts ability
+ // projectkorra player starts|begins
+ //
+ // @Switch ability: to only process the event if the ability matches the specified ability.
//
// @Triggers when a player starts a bending ability.
//
// @Context
- // returns ElementTag(String) of the ability's name.
- // returns PlayerTag of the player who triggered the ability.
- // returns ElementTag(String) ability's element.
- // returns ElementTag(Number) of the ability's cooldown.
- // returns ElementTag(Boolean) if the ability is explosive.
- // returns ElementTag(Boolean) if the ability is harmless.
- // returns ElementTag(Boolean) if the ability is hidden.
- // returns ElementTag(Boolean) if the ability can ignite.
- // returns ElementTag(Boolean) if the ability is triggered by sneak.
+ // returns the ability's name.
+ // returns the player who triggered the ability.
+ // returns the ability's element name.
+ // returns the ability's cooldown.
+ // returns if the ability is explosive.
+ // returns if the ability is harmless.
+ // returns if the ability is hidden.
+ // returns if the ability can ignite.
+ // returns if the ability is triggered by sneak.
//
// @Plugin Depenizen, ProjectKorra
//
@@ -36,16 +38,19 @@ public class PlayerAbilityStartScriptEvent extends BukkitScriptEvent implements
// -->
public PlayerAbilityStartScriptEvent() {
- registerCouldMatcher("projectkorra player starts <'ability'>");
+ registerCouldMatcher("projectkorra player starts|begins");
+ registerSwitches("ability");
}
public AbilityStartEvent event;
+ public ElementTag ability;
@Override
public boolean matches(ScriptPath path) {
- String ability = path.eventArgLowerAt(3);
- // Check if event applies to any ability
- if (!ability.equals("ability") && !ability.equalsIgnoreCase(event.getAbility().getName())) {
+ if ((path.eventArgLowerAt(3).equals("ability")) && (ability == null || !path.tryArgObject(4, ability))) {
+ return false;
+ }
+ if (!path.tryObjectSwitch("ability", ability)) {
return false;
}
return super.matches(path);
@@ -59,7 +64,7 @@ public ScriptEntryData getScriptEntryData() {
@Override
public ObjectTag getContext(String name) {
return switch (name) {
- case "ability" -> new ElementTag(event.getAbility().getName());
+ case "ability" -> ability;
case "source" -> new PlayerTag(event.getAbility().getPlayer());
case "element" -> new ElementTag(event.getAbility().getElement().getName());
case "cooldown" -> new ElementTag(event.getAbility().getCooldown());
@@ -75,6 +80,7 @@ public ObjectTag getContext(String name) {
@EventHandler
public void onAbilityStart(AbilityStartEvent event) {
this.event = event;
+ this.ability = new ElementTag(event.getAbility().getName());
fire(event);
}
}
From 3784d17bb5508ce4675d1d81628d8493eabdbaac Mon Sep 17 00:00:00 2001
From: xicxen
Date: Sat, 30 Mar 2024 20:15:07 -0400
Subject: [PATCH 3/3] dynamically matches the entity
removed variants
removed line 50 (and like from other events)
---
.../events/projectkorra/EntityBendingDeathScriptEvent.java | 7 ++-----
.../projectkorra/PlayerAbilityDamageEntityScriptEvent.java | 7 ++-----
.../events/projectkorra/PlayerAbilityEndScriptEvent.java | 7 ++-----
.../projectkorra/PlayerAbilityProgressScriptEvent.java | 7 ++-----
.../events/projectkorra/PlayerAbilityStartScriptEvent.java | 7 ++-----
5 files changed, 10 insertions(+), 25 deletions(-)
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java
index 66b122b72..c1ac74675 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/EntityBendingDeathScriptEvent.java
@@ -15,7 +15,7 @@ public class EntityBendingDeathScriptEvent extends BukkitScriptEvent implements
// <--[event]
// @Events
- // projectkorra entity dies|death|killed
+ // projectkorra killed
//
// @Switch by: to only process the event if the ability matches the specified ability.
//
@@ -38,7 +38,7 @@ public class EntityBendingDeathScriptEvent extends BukkitScriptEvent implements
// -->
public EntityBendingDeathScriptEvent() {
- registerCouldMatcher("projectkorra entity dies|death|killed");
+ registerCouldMatcher("projectkorra entity killed");
registerSwitches("by");
}
@@ -47,9 +47,6 @@ public EntityBendingDeathScriptEvent() {
@Override
public boolean matches(ScriptPath path) {
- if ((path.eventArgLowerAt(3).equals("by")) && (ability == null || !path.tryArgObject(4, ability))) {
- return false;
- }
if (!path.tryObjectSwitch("by", ability)) {
return false;
}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java
index 3279e4014..1101e42f5 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityDamageEntityScriptEvent.java
@@ -15,7 +15,7 @@ public class PlayerAbilityDamageEntityScriptEvent extends BukkitScriptEvent impl
// <--[event]
// @Events
- // projectkorra player damages player|entity
+ // projectkorra player damages
//
// @Switch by: to only process the event if the ability matches the specified ability.
//
@@ -40,7 +40,7 @@ public class PlayerAbilityDamageEntityScriptEvent extends BukkitScriptEvent impl
// -->
public PlayerAbilityDamageEntityScriptEvent() {
- registerCouldMatcher("projectkorra player damages player|entity");
+ registerCouldMatcher("projectkorra player damages entity");
registerSwitches("by");
}
@@ -49,9 +49,6 @@ public PlayerAbilityDamageEntityScriptEvent() {
@Override
public boolean matches(ScriptPath path) {
- if ((path.eventArgLowerAt(4).equals("by")) && (ability == null || !path.tryArgObject(5, ability))) {
- return false;
- }
if (!path.tryObjectSwitch("by", ability)) {
return false;
}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java
index 6899155c6..c9e211480 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityEndScriptEvent.java
@@ -14,7 +14,7 @@ public class PlayerAbilityEndScriptEvent extends BukkitScriptEvent implements Li
// <--[event]
// @Events
- // projectkorra player ends|stops
+ // projectkorra player ends
//
// @Switch ability: to only process the event if the ability matches the specified ability.
//
@@ -38,7 +38,7 @@ public class PlayerAbilityEndScriptEvent extends BukkitScriptEvent implements Li
// -->
public PlayerAbilityEndScriptEvent() {
- registerCouldMatcher("projectkorra player ends|stops");
+ registerCouldMatcher("projectkorra player ends");
registerSwitches("ability");
}
@@ -47,9 +47,6 @@ public PlayerAbilityEndScriptEvent() {
@Override
public boolean matches(ScriptPath path) {
- if ((path.eventArgLowerAt(3).equals("ability")) && (ability == null || !path.tryArgObject(4, ability))) {
- return false;
- }
if (!path.tryObjectSwitch("ability", ability)) {
return false;
}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java
index a27aaa5b0..a95c21ce8 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityProgressScriptEvent.java
@@ -14,7 +14,7 @@ public class PlayerAbilityProgressScriptEvent extends BukkitScriptEvent implemen
// <--[event]
// @Events
- // projectkorra player progresses|continues
+ // projectkorra player progresses
//
// @Switch ability: to only process the event if the ability matches the specified ability.
//
@@ -38,7 +38,7 @@ public class PlayerAbilityProgressScriptEvent extends BukkitScriptEvent implemen
// -->
public PlayerAbilityProgressScriptEvent() {
- registerCouldMatcher("projectkorra player progresses|continues");
+ registerCouldMatcher("projectkorra player progresses");
registerSwitches("ability");
}
@@ -47,9 +47,6 @@ public PlayerAbilityProgressScriptEvent() {
@Override
public boolean matches(ScriptPath path) {
- if ((path.eventArgLowerAt(3).equals("ability")) && (ability == null || !path.tryArgObject(4, ability))) {
- return false;
- }
if (!path.tryObjectSwitch("ability", ability)) {
return false;
}
diff --git a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java
index d6c75f53b..a034e67c4 100644
--- a/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java
+++ b/src/main/java/com/denizenscript/depenizen/bukkit/events/projectkorra/PlayerAbilityStartScriptEvent.java
@@ -14,7 +14,7 @@ public class PlayerAbilityStartScriptEvent extends BukkitScriptEvent implements
// <--[event]
// @Events
- // projectkorra player starts|begins
+ // projectkorra player starts
//
// @Switch ability: to only process the event if the ability matches the specified ability.
//
@@ -38,7 +38,7 @@ public class PlayerAbilityStartScriptEvent extends BukkitScriptEvent implements
// -->
public PlayerAbilityStartScriptEvent() {
- registerCouldMatcher("projectkorra player starts|begins");
+ registerCouldMatcher("projectkorra player starts");
registerSwitches("ability");
}
@@ -47,9 +47,6 @@ public PlayerAbilityStartScriptEvent() {
@Override
public boolean matches(ScriptPath path) {
- if ((path.eventArgLowerAt(3).equals("ability")) && (ability == null || !path.tryArgObject(4, ability))) {
- return false;
- }
if (!path.tryObjectSwitch("ability", ability)) {
return false;
}