mirror of
https://github.com/songoda/UltimateTimber.git
synced 2024-12-02 23:03:37 +01:00
Hooks fixes
This commit is contained in:
parent
0e1afcef84
commit
a5b8fab267
@ -2,26 +2,21 @@ package com.songoda.ultimatetimber.hook;
|
|||||||
|
|
||||||
import com.gmail.nossr50.api.AbilityAPI;
|
import com.gmail.nossr50.api.AbilityAPI;
|
||||||
import com.gmail.nossr50.api.ExperienceAPI;
|
import com.gmail.nossr50.api.ExperienceAPI;
|
||||||
import com.gmail.nossr50.config.experience.ExperienceConfig;
|
|
||||||
import com.gmail.nossr50.datatypes.player.McMMOPlayer;
|
|
||||||
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
|
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
|
||||||
import com.gmail.nossr50.datatypes.skills.SubSkillType;
|
import com.gmail.nossr50.datatypes.skills.SubSkillType;
|
||||||
import com.gmail.nossr50.datatypes.skills.SuperAbilityType;
|
|
||||||
import com.gmail.nossr50.mcMMO;
|
|
||||||
import com.gmail.nossr50.util.Permissions;
|
import com.gmail.nossr50.util.Permissions;
|
||||||
import com.gmail.nossr50.util.player.UserManager;
|
import com.gmail.nossr50.util.player.UserManager;
|
||||||
import com.gmail.nossr50.util.random.RandomChanceUtil;
|
import com.gmail.nossr50.util.random.RandomChanceUtil;
|
||||||
import com.gmail.nossr50.util.skills.PerksUtils;
|
|
||||||
import com.gmail.nossr50.util.skills.RankUtils;
|
import com.gmail.nossr50.util.skills.RankUtils;
|
||||||
import com.gmail.nossr50.util.skills.SkillActivationType;
|
import com.gmail.nossr50.util.skills.SkillActivationType;
|
||||||
import com.gmail.nossr50.util.skills.SkillUtils;
|
|
||||||
import com.songoda.ultimatetimber.tree.ITreeBlock;
|
|
||||||
import com.songoda.ultimatetimber.tree.TreeBlockSet;
|
import com.songoda.ultimatetimber.tree.TreeBlockSet;
|
||||||
import org.bukkit.GameMode;
|
import org.bukkit.GameMode;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.block.data.BlockData;
|
import org.bukkit.block.BlockState;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class McMMOHook implements TimberHook {
|
public class McMMOHook implements TimberHook {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -29,14 +24,9 @@ public class McMMOHook implements TimberHook {
|
|||||||
if (player.getGameMode().equals(GameMode.CREATIVE))
|
if (player.getGameMode().equals(GameMode.CREATIVE))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int xp = 0;
|
ArrayList<BlockState> blockStates = new ArrayList<>();
|
||||||
for (ITreeBlock<Block> treeBlock : treeBlocks.getLogBlocks()) {
|
treeBlocks.getLogBlocks().forEach(x -> blockStates.add(x.getBlock().getState()));
|
||||||
Block block = treeBlock.getBlock();
|
ExperienceAPI.addXpFromBlocksBySkill(blockStates, UserManager.getPlayer(player), PrimarySkillType.WOODCUTTING);
|
||||||
BlockData blockData = block.getBlockData();
|
|
||||||
xp += ExperienceConfig.getInstance().getXp(PrimarySkillType.WOODCUTTING, blockData);
|
|
||||||
}
|
|
||||||
|
|
||||||
ExperienceAPI.addXP(player, "woodcutting", xp, "pve");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -7,9 +7,9 @@ import com.songoda.ultimatetimber.hook.McMMOClassic12Hook;
|
|||||||
import com.songoda.ultimatetimber.hook.McMMOClassic13Hook;
|
import com.songoda.ultimatetimber.hook.McMMOClassic13Hook;
|
||||||
import com.songoda.ultimatetimber.hook.McMMOClassic8Hook;
|
import com.songoda.ultimatetimber.hook.McMMOClassic8Hook;
|
||||||
import com.songoda.ultimatetimber.hook.McMMOHook;
|
import com.songoda.ultimatetimber.hook.McMMOHook;
|
||||||
import com.songoda.ultimatetimber.utils.NMSUtil;
|
|
||||||
import com.songoda.ultimatetimber.hook.TimberHook;
|
import com.songoda.ultimatetimber.hook.TimberHook;
|
||||||
import com.songoda.ultimatetimber.tree.TreeBlockSet;
|
import com.songoda.ultimatetimber.tree.TreeBlockSet;
|
||||||
|
import com.songoda.ultimatetimber.utils.NMSUtil;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
@ -110,7 +110,7 @@ public class HookManager extends Manager {
|
|||||||
* @param player The player to check
|
* @param player The player to check
|
||||||
*/
|
*/
|
||||||
public boolean isUsingAbilityHooks(Player player) {
|
public boolean isUsingAbilityHooks(Player player) {
|
||||||
if (!ConfigurationManager.Setting.HOOKS_APPLY_EXTRA_DROPS.getBoolean() || this.hooks.isEmpty())
|
if (!ConfigurationManager.Setting.HOOKS_REQUIRE_ABILITY_ACTIVE.getBoolean() || this.hooks.isEmpty())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
for (TimberHook hook : this.hooks)
|
for (TimberHook hook : this.hooks)
|
||||||
|
@ -118,11 +118,10 @@ public class TreeFallManager extends Manager implements Listener {
|
|||||||
detectedTree.getDetectedTreeBlocks().remove(detectedTree.getDetectedTreeBlocks().getInitialLogBlock());
|
detectedTree.getDetectedTreeBlocks().remove(detectedTree.getDetectedTreeBlocks().getInitialLogBlock());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!player.getGameMode().equals(GameMode.CREATIVE)) {
|
if (!player.getGameMode().equals(GameMode.CREATIVE))
|
||||||
versionAdapter.applyToolDurability(player, toolDamage);
|
versionAdapter.applyToolDurability(player, toolDamage);
|
||||||
hookManager.applyExperienceHooks(player, detectedTree.getDetectedTreeBlocks());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
hookManager.applyExperienceHooks(player, detectedTree.getDetectedTreeBlocks());
|
||||||
treeAnimationManager.runAnimation(detectedTree, player);
|
treeAnimationManager.runAnimation(detectedTree, player);
|
||||||
|
|
||||||
// Trigger fell event
|
// Trigger fell event
|
||||||
|
Loading…
Reference in New Issue
Block a user