Skip to content

Commit e48a01f

Browse files
committed
The improvements suggested by the team have been implemented
1 parent fa7e220 commit e48a01f

5 files changed

Lines changed: 36 additions & 19 deletions

File tree

eternalcombat-plugin/src/main/java/com/eternalcode/combat/fight/pearl/FightPearlController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,9 @@ public void onPearlThrow(ProjectileLaunchEvent event) {
6868
handlePearlCooldown(event, player, playerId);
6969
}
7070

71-
if (this.settings.pearlResetsTimerEnabled) {
71+
if (this.settings.pearlResetsTimer) {
7272
Duration combatTime = this.config.settings.combatTimerDuration;
73-
this.fightManager.tag(playerId, combatTime, CauseOfTag.CUSTOM);
73+
this.fightManager.tag(playerId, combatTime, CauseOfTag.NON_PLAYER);
7474
}
7575
}
7676

eternalcombat-plugin/src/main/java/com/eternalcode/combat/fight/pearl/FightPearlSettings.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public class FightPearlSettings extends OkaeriConfig {
2222
public boolean pearlCooldownEnabled = false;
2323

2424
@Comment("# Set true, If you want to reset timer when player throws ender pearl")
25-
public boolean pearlResetsTimerEnabled = true;
25+
public boolean pearlResetsTimer = true;
2626

2727
@Comment({
2828
"# Block throwing pearls with delay?",

eternalcombat-plugin/src/main/java/com/eternalcode/combat/fight/trident/FightTridentController.java

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,15 @@
77
import com.eternalcode.combat.notification.NoticeService;
88
import com.eternalcode.combat.util.DurationUtil;
99
import org.bukkit.Material;
10+
import org.bukkit.enchantments.Enchantment;
1011
import org.bukkit.entity.Player;
1112
import org.bukkit.event.EventHandler;
1213
import org.bukkit.event.EventPriority;
1314
import org.bukkit.event.Listener;
1415
import org.bukkit.event.player.PlayerInteractEvent;
16+
import org.bukkit.event.player.PlayerRiptideEvent;
1517
import org.bukkit.inventory.ItemStack;
18+
import org.bukkit.inventory.meta.ItemMeta;
1619

1720
import java.time.Duration;
1821
import java.util.UUID;
@@ -39,7 +42,6 @@ public FightTridentController(
3942
this.config = config;
4043
}
4144

42-
4345
@EventHandler(priority = EventPriority.HIGHEST)
4446
public void onTridentInteract(PlayerInteractEvent event) {
4547
ItemStack item = event.getItem();
@@ -48,6 +50,10 @@ public void onTridentInteract(PlayerInteractEvent event) {
4850
return;
4951
}
5052

53+
if (!item.hasItemMeta() || !item.getItemMeta().hasEnchant(Enchantment.RIPTIDE)) {
54+
return;
55+
}
56+
5157
Player player = event.getPlayer();
5258
UUID playerId = player.getUniqueId();
5359

@@ -67,10 +73,20 @@ public void onTridentInteract(PlayerInteractEvent event) {
6773
if (this.settings.tridentCooldownEnabled) {
6874
this.handleTridentCooldown(event, player, playerId);
6975
}
76+
}
77+
78+
@EventHandler(priority = EventPriority.HIGHEST)
79+
public void onTridentRiptide(PlayerRiptideEvent event) {
80+
Player player = event.getPlayer();
81+
UUID playerId = player.getUniqueId();
82+
83+
if (!this.fightManager.isInCombat(playerId)) {
84+
return;
85+
}
7086

71-
if (this.settings.tridentResetsTimerEnabled) {
87+
if (this.settings.tridentResetsTimer) {
7288
Duration combatTime = this.config.settings.combatTimerDuration;
73-
this.fightManager.tag(playerId, combatTime, CauseOfTag.CUSTOM);
89+
this.fightManager.tag(playerId, combatTime, CauseOfTag.NON_PLAYER);
7490
}
7591
}
7692

eternalcombat-plugin/src/main/java/com/eternalcode/combat/fight/trident/FightTridentServiceImpl.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,20 @@
22

33
import com.github.benmanes.caffeine.cache.Cache;
44
import com.github.benmanes.caffeine.cache.Caffeine;
5+
import org.jetbrains.annotations.NotNull;
56

67
import java.time.Duration;
78
import java.time.Instant;
89
import java.util.UUID;
910

1011
public class FightTridentServiceImpl implements FightTridentService {
1112
private final FightTridentSettings tridentSettings;
12-
private final Cache<UUID, Instant> tridentStartTimes;
13+
private final Cache<@NotNull UUID, Instant> tridentStartTimes;
1314

14-
public FightTridentServiceImpl(FightTridentSettings pearlSettings) {
15-
this.tridentSettings = pearlSettings;
15+
public FightTridentServiceImpl(FightTridentSettings tridentSettings) {
16+
this.tridentSettings = tridentSettings;
1617
this.tridentStartTimes = Caffeine.newBuilder()
17-
.expireAfterWrite(pearlSettings.tridentThrowDelay)
18+
.expireAfterWrite(tridentSettings.tridentThrowDelay)
1819
.build();
1920
}
2021

eternalcombat-plugin/src/main/java/com/eternalcode/combat/fight/trident/FightTridentSettings.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,29 +10,29 @@
1010
public class FightTridentSettings extends OkaeriConfig {
1111

1212
@Comment({
13-
"# Set true, If you want to disable throwing trident during combat",
13+
"# Set to true to disable throwing tridents during combat.",
1414
"# This will work globally, but can be overridden by region settings"
1515
})
16-
public boolean tridentThrowDisabledDuringCombat = true;
16+
public boolean tridentThrowDisabledDuringCombat = false;
1717

18-
@Comment("# Set true, If you want add cooldown to trident")
18+
@Comment("# Set to true so throwing trident will result in cooldown - delay between throws")
1919
public boolean tridentCooldownEnabled = false;
2020

21-
@Comment("# Set true, If you want to reset timer when player uses trident")
22-
public boolean tridentResetsTimerEnabled = true;
21+
@Comment("# Set to true, so the users will get combat log when they throw tridents")
22+
public boolean tridentResetsTimer = false;
2323

2424
@Comment({
25-
"# Block throwing trident with delay?",
26-
"# If you set this to for example 3s, player will have to wait 3 seconds before throwing trident"
25+
"# Should throwing trident be on cooldown?",
26+
"# Setting this option to 3s will make players wait 3 seconds between trident throws"
2727
})
2828
public Duration tridentThrowDelay = Duration.ofSeconds(3);
2929

30-
@Comment("# Message sent when player tries to throw trident, but are disabled")
30+
@Comment("# Message sent to the player when throwing trident is disabled")
3131
public Notice tridentThrowBlockedDuringCombat = BukkitNotice.builder()
3232
.chat("<red>Throwing trident is prohibited during combat!")
3333
.build();
3434

35-
@Comment("# Message sent when player tries to throw trident, but has delay")
35+
@Comment("# Message marking delay between trident throws")
3636
public Notice tridentThrowBlockedDelayDuringCombat = BukkitNotice.builder()
3737
.chat("<red>You must wait {TIME} before next throw!")
3838
.build();

0 commit comments

Comments
 (0)