From f1e5173b128c3007e77f8b51e47c26af9c28faf8 Mon Sep 17 00:00:00 2001 From: _OfTeN_ Date: Mon, 11 Oct 2021 11:44:35 +0300 Subject: [PATCH 1/2] Added time-to-exempt config option for Tornado enchantment and started exempting players that were hit by Tornado from being detectedf by AntiCheats. --- .../enchantments/ecoenchants/normal/Tornado.java | 10 +++++++++- .../src/main/resources/enchants/normal/tornado.yml | 3 ++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/normal/Tornado.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/normal/Tornado.java index a038668b..c2f83953 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/normal/Tornado.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/normal/Tornado.java @@ -1,9 +1,11 @@ package com.willfp.ecoenchants.enchantments.ecoenchants.normal; +import com.willfp.eco.core.integrations.anticheat.AnticheatManager; import com.willfp.ecoenchants.enchantments.EcoEnchant; import com.willfp.ecoenchants.enchantments.EcoEnchants; import com.willfp.ecoenchants.enchantments.meta.EnchantmentType; import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; import org.bukkit.event.entity.EntityDamageByEntityEvent; import org.bukkit.util.Vector; import org.jetbrains.annotations.NotNull; @@ -25,6 +27,12 @@ public class Tornado extends EcoEnchant { Vector toAdd = new Vector(0, yVelocity, 0); - this.getPlugin().getScheduler().runLater(() -> victim.setVelocity(victim.getVelocity().clone().add(toAdd)), 1); + this.getPlugin().getScheduler().runLater(() -> { + if (victim instanceof Player player) { + AnticheatManager.exemptPlayer(player); + this.getPlugin().getScheduler().runLater(() -> AnticheatManager.unexemptPlayer(player), this.getConfig().getInt("time-to-exempt")); + } + victim.setVelocity(victim.getVelocity().clone().add(toAdd)); + }, 1); } } diff --git a/eco-core/core-plugin/src/main/resources/enchants/normal/tornado.yml b/eco-core/core-plugin/src/main/resources/enchants/normal/tornado.yml index 3dcc58cc..d6383875 100644 --- a/eco-core/core-plugin/src/main/resources/enchants/normal/tornado.yml +++ b/eco-core/core-plugin/src/main/resources/enchants/normal/tornado.yml @@ -29,4 +29,5 @@ general-config: maximum-level: 2 config: - velocity-per-level: 0.25 \ No newline at end of file + velocity-per-level: 0.25 + time-to-exempt: 60 #In ticks. Time to exempt hit player from being detected by your Anti-Cheat for flying (The higher max velocity is - the higher should be this value) \ No newline at end of file From 06e1ebd1e8c7d16759a0e18c6626ba9d5c6015dd Mon Sep 17 00:00:00 2001 From: _OfTeN_ Date: Mon, 11 Oct 2021 14:55:34 +0300 Subject: [PATCH 2/2] Fixed Diurnal enchantment --- .../ecoenchants/enchantments/ecoenchants/normal/Diurnal.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/normal/Diurnal.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/normal/Diurnal.java index 14cf3c6a..7b83df31 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/normal/Diurnal.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/normal/Diurnal.java @@ -20,11 +20,12 @@ public class Diurnal extends EcoEnchant { @NotNull final LivingEntity victim, final int level, @NotNull final EntityDamageByEntityEvent event) { + if (!attacker.getWorld().getEnvironment().equals(World.Environment.NORMAL)) { return; } - if (!(attacker.getWorld().getTime() < 12300 && attacker.getWorld().getTime() > 23850)) { + if (!(attacker.getWorld().getTime() < 12000 && attacker.getWorld().getTime() > 0)) { return; }