mirror of
https://github.com/Auxilor/Reforges.git
synced 2025-12-30 12:29:10 +00:00
Internal changes
This commit is contained in:
@@ -1,49 +1,36 @@
|
||||
package com.willfp.reforges.reforges.util;
|
||||
package com.willfp.reforges.reforges.util
|
||||
|
||||
import com.willfp.eco.core.items.args.LookupArgParser;
|
||||
import com.willfp.reforges.reforges.Reforge;
|
||||
import com.willfp.reforges.reforges.Reforges;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import com.willfp.eco.core.items.args.LookupArgParser
|
||||
import com.willfp.reforges.reforges.Reforge
|
||||
import com.willfp.reforges.reforges.Reforges
|
||||
import org.bukkit.inventory.ItemStack
|
||||
import org.bukkit.inventory.meta.ItemMeta
|
||||
import java.util.function.Predicate
|
||||
|
||||
import java.util.function.Predicate;
|
||||
class ReforgeArgParser : LookupArgParser {
|
||||
override fun parseArguments(
|
||||
args: Array<String>,
|
||||
meta: ItemMeta
|
||||
): Predicate<ItemStack>? {
|
||||
var reforge: Reforge? = null
|
||||
|
||||
public class ReforgeArgParser implements LookupArgParser {
|
||||
@Override
|
||||
public @Nullable Predicate<ItemStack> parseArguments(@NotNull final String[] args,
|
||||
@NotNull final ItemMeta meta) {
|
||||
Reforge reforge = null;
|
||||
for (String arg : args) {
|
||||
String[] split = arg.split(":");
|
||||
if (split.length == 1 || !split[0].equalsIgnoreCase("reforge")) {
|
||||
continue;
|
||||
for (arg in args) {
|
||||
val split = arg.split(":").toTypedArray()
|
||||
if (split.size == 1 || !split[0].equals("reforge", ignoreCase = true)) {
|
||||
continue
|
||||
}
|
||||
|
||||
Reforge match = Reforges.getByKey(split[1].toLowerCase());
|
||||
if (match == null) {
|
||||
continue;
|
||||
}
|
||||
|
||||
reforge = match;
|
||||
break;
|
||||
val match = Reforges.getByKey(split[1].lowercase()) ?: continue
|
||||
reforge = match
|
||||
break
|
||||
}
|
||||
|
||||
if (reforge == null) {
|
||||
return null;
|
||||
reforge ?: return null
|
||||
|
||||
ReforgeUtils.setReforge(meta, reforge)
|
||||
|
||||
return Predicate { test ->
|
||||
val testMeta = test.itemMeta ?: return@Predicate false
|
||||
reforge == ReforgeUtils.getReforge(testMeta)
|
||||
}
|
||||
|
||||
ReforgeUtils.setReforge(meta, reforge);
|
||||
|
||||
Reforge finalReforge = reforge;
|
||||
return test -> {
|
||||
ItemMeta testMeta = test.getItemMeta();
|
||||
if (testMeta == null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return finalReforge.equals(ReforgeUtils.getReforge(testMeta));
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,25 +1,18 @@
|
||||
package com.willfp.reforges.reforges.util;
|
||||
package com.willfp.reforges.reforges.util
|
||||
|
||||
import com.willfp.eco.core.config.interfaces.JSONConfig;
|
||||
import com.willfp.eco.core.events.EntityDeathByEntityEvent;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.entity.Arrow;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.entity.Projectile;
|
||||
import org.bukkit.entity.Trident;
|
||||
import org.bukkit.event.block.BlockBreakEvent;
|
||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||
import org.bukkit.event.entity.EntityDamageEvent;
|
||||
import org.bukkit.event.entity.ProjectileHitEvent;
|
||||
import org.bukkit.event.entity.ProjectileLaunchEvent;
|
||||
import org.bukkit.event.player.PlayerItemDamageEvent;
|
||||
import org.bukkit.event.player.PlayerMoveEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
public interface Watcher {
|
||||
import com.willfp.eco.core.config.interfaces.JSONConfig
|
||||
import com.willfp.eco.core.events.EntityDeathByEntityEvent
|
||||
import org.bukkit.block.Block
|
||||
import org.bukkit.entity.*
|
||||
import org.bukkit.event.block.BlockBreakEvent
|
||||
import org.bukkit.event.entity.EntityDamageByEntityEvent
|
||||
import org.bukkit.event.entity.EntityDamageEvent
|
||||
import org.bukkit.event.entity.ProjectileHitEvent
|
||||
import org.bukkit.event.entity.ProjectileLaunchEvent
|
||||
import org.bukkit.event.player.PlayerItemDamageEvent
|
||||
import org.bukkit.event.player.PlayerMoveEvent
|
||||
|
||||
interface Watcher {
|
||||
/**
|
||||
* Called when a player breaks a block.
|
||||
*
|
||||
@@ -28,10 +21,12 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onBlockBreak(@NotNull final Player player,
|
||||
@NotNull final Block block,
|
||||
@NotNull final BlockBreakEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onBlockBreak(
|
||||
player: Player,
|
||||
block: Block,
|
||||
event: BlockBreakEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -43,10 +38,12 @@ public interface Watcher {
|
||||
* @param event The event.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onAnyDamage(@NotNull final Player attacker,
|
||||
@NotNull final LivingEntity victim,
|
||||
@NotNull final EntityDamageByEntityEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onAnyDamage(
|
||||
attacker: Player,
|
||||
victim: LivingEntity,
|
||||
event: EntityDamageByEntityEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -59,11 +56,13 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onArrowDamage(@NotNull final Player attacker,
|
||||
@NotNull final LivingEntity victim,
|
||||
@NotNull final Arrow arrow,
|
||||
@NotNull final EntityDamageByEntityEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onArrowDamage(
|
||||
attacker: Player,
|
||||
victim: LivingEntity,
|
||||
arrow: Arrow,
|
||||
event: EntityDamageByEntityEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -76,11 +75,13 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onTridentDamage(@NotNull final Player attacker,
|
||||
@NotNull final LivingEntity victim,
|
||||
@NotNull final Trident trident,
|
||||
@NotNull final EntityDamageByEntityEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onTridentDamage(
|
||||
attacker: Player,
|
||||
victim: LivingEntity,
|
||||
trident: Trident,
|
||||
event: EntityDamageByEntityEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -91,9 +92,11 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onJump(@NotNull final Player player,
|
||||
@NotNull final PlayerMoveEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onJump(
|
||||
player: Player,
|
||||
event: PlayerMoveEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -105,10 +108,12 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onMeleeAttack(@NotNull final Player attacker,
|
||||
@NotNull final LivingEntity victim,
|
||||
@NotNull final EntityDamageByEntityEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onMeleeAttack(
|
||||
attacker: Player,
|
||||
victim: LivingEntity,
|
||||
event: EntityDamageByEntityEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -120,10 +125,12 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onProjectileLaunch(@NotNull final Player shooter,
|
||||
@NotNull final Projectile projectile,
|
||||
@NotNull final ProjectileLaunchEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onProjectileLaunch(
|
||||
shooter: Player,
|
||||
projectile: Projectile,
|
||||
event: ProjectileLaunchEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -134,9 +141,11 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onFallDamage(@NotNull final Player faller,
|
||||
@NotNull final EntityDamageEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onFallDamage(
|
||||
faller: Player,
|
||||
event: EntityDamageEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -147,9 +156,11 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onProjectileHit(@NotNull final Player shooter,
|
||||
@NotNull final ProjectileHitEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onProjectileHit(
|
||||
shooter: Player,
|
||||
event: ProjectileHitEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -161,10 +172,12 @@ public interface Watcher {
|
||||
* @param event The event.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onKill(@NotNull final Player killer,
|
||||
@NotNull final LivingEntity victim,
|
||||
@NotNull final EntityDeathByEntityEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onKill(
|
||||
killer: Player,
|
||||
victim: LivingEntity,
|
||||
event: EntityDeathByEntityEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -175,9 +188,11 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onDamageWearingArmor(@NotNull final Player victim,
|
||||
@NotNull final EntityDamageEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onDamageWearingArmor(
|
||||
victim: Player,
|
||||
event: EntityDamageEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -189,10 +204,12 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onTridentLaunch(@NotNull final Player shooter,
|
||||
@NotNull final Trident trident,
|
||||
@NotNull final ProjectileLaunchEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onTridentLaunch(
|
||||
shooter: Player,
|
||||
trident: Trident,
|
||||
event: ProjectileLaunchEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
|
||||
@@ -202,8 +219,10 @@ public interface Watcher {
|
||||
* @param event The event that called this watcher.
|
||||
* @param config The effect config.
|
||||
*/
|
||||
default void onDurabilityDamage(@NotNull final PlayerItemDamageEvent event,
|
||||
@NotNull final JSONConfig config) {
|
||||
fun onDurabilityDamage(
|
||||
event: PlayerItemDamageEvent,
|
||||
config: JSONConfig
|
||||
) {
|
||||
// Empty default as effects only override required watchers.
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user