mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-12-13 20:48:46 +01:00
Merge branch 'master' of github.com:mcMMO-Dev/mcMMO into tridentsxbows
This commit is contained in:
@@ -25,8 +25,6 @@ import com.gmail.nossr50.util.random.RandomChanceUtil;
|
||||
import com.gmail.nossr50.util.skills.CombatUtils;
|
||||
import com.gmail.nossr50.util.skills.RankUtils;
|
||||
import com.gmail.nossr50.util.skills.SkillUtils;
|
||||
import com.gmail.nossr50.util.sounds.SoundManager;
|
||||
import com.gmail.nossr50.util.sounds.SoundType;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
@@ -72,36 +70,36 @@ public class FishingManager extends SkillManager {
|
||||
return mcMMO.getCompatibilityManager().getMasterAnglerCompatibilityLayer() != null && getSkillLevel() >= RankUtils.getUnlockLevel(SubSkillType.FISHING_MASTER_ANGLER) && Permissions.isSubSkillEnabled(getPlayer(), SubSkillType.FISHING_MASTER_ANGLER);
|
||||
}
|
||||
|
||||
public void setFishingRodCastTimestamp()
|
||||
{
|
||||
long currentTime = System.currentTimeMillis();
|
||||
//Only track spam casting if the fishing hook is fresh
|
||||
if(currentTime > fishHookSpawnTimestamp + 1000)
|
||||
return;
|
||||
|
||||
if(currentTime < fishingRodCastTimestamp + FISHING_ROD_CAST_CD_MILLISECONDS)
|
||||
{
|
||||
ItemStack fishingRod = getPlayer().getInventory().getItemInMainHand();
|
||||
|
||||
//Ensure correct hand item is damaged
|
||||
if(fishingRod.getType() != Material.FISHING_ROD) {
|
||||
fishingRod = getPlayer().getInventory().getItemInOffHand();
|
||||
}
|
||||
|
||||
getPlayer().setFoodLevel(Math.max(getPlayer().getFoodLevel() - 1, 0));
|
||||
fishingRod.setDurability((short) (fishingRod.getDurability() + 5));
|
||||
getPlayer().updateInventory();
|
||||
|
||||
if(lastWarnedExhaust + (1000) < currentTime)
|
||||
{
|
||||
getPlayer().sendMessage(LocaleLoader.getString("Fishing.Exhausting"));
|
||||
lastWarnedExhaust = currentTime;
|
||||
SoundManager.sendSound(getPlayer(), getPlayer().getLocation(), SoundType.TIRED);
|
||||
}
|
||||
}
|
||||
|
||||
fishingRodCastTimestamp = System.currentTimeMillis();
|
||||
}
|
||||
// public void setFishingRodCastTimestamp()
|
||||
// {
|
||||
// long currentTime = System.currentTimeMillis();
|
||||
// //Only track spam casting if the fishing hook is fresh
|
||||
// if(currentTime > fishHookSpawnTimestamp + 1000)
|
||||
// return;
|
||||
//
|
||||
// if(currentTime < fishingRodCastTimestamp + FISHING_ROD_CAST_CD_MILLISECONDS)
|
||||
// {
|
||||
// ItemStack fishingRod = getPlayer().getInventory().getItemInMainHand();
|
||||
//
|
||||
// //Ensure correct hand item is damaged
|
||||
// if(fishingRod.getType() != Material.FISHING_ROD) {
|
||||
// fishingRod = getPlayer().getInventory().getItemInOffHand();
|
||||
// }
|
||||
//
|
||||
// getPlayer().setFoodLevel(Math.max(getPlayer().getFoodLevel() - 1, 0));
|
||||
// fishingRod.setDurability((short) (fishingRod.getDurability() + 5));
|
||||
// getPlayer().updateInventory();
|
||||
//
|
||||
// if(lastWarnedExhaust + (1000) < currentTime)
|
||||
// {
|
||||
// getPlayer().sendMessage(LocaleLoader.getString("Fishing.Exhausting"));
|
||||
// lastWarnedExhaust = currentTime;
|
||||
// SoundManager.sendSound(getPlayer(), getPlayer().getLocation(), SoundType.TIRED);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// fishingRodCastTimestamp = System.currentTimeMillis();
|
||||
// }
|
||||
|
||||
public void setFishHookReference(FishHook fishHook)
|
||||
{
|
||||
|
||||
@@ -752,11 +752,16 @@ public class HerbalismManager extends SkillManager {
|
||||
return false;
|
||||
}
|
||||
|
||||
playerInventory.removeItem(seedStack);
|
||||
player.updateInventory(); // Needed until replacement available
|
||||
//Play sound
|
||||
SoundManager.sendSound(player, player.getLocation(), SoundType.ITEM_CONSUMED);
|
||||
return true;
|
||||
if(EventUtils.callSubSkillBlockEvent(player, SubSkillType.HERBALISM_GREEN_THUMB, blockState.getBlock()).isCancelled()) {
|
||||
return false;
|
||||
} else {
|
||||
playerInventory.removeItem(seedStack);
|
||||
player.updateInventory(); // Needed until replacement available
|
||||
//Play sound
|
||||
SoundManager.sendSound(player, player.getLocation(), SoundType.ITEM_CONSUMED);
|
||||
return true;
|
||||
}
|
||||
|
||||
// new HerbalismBlockUpdaterTask(blockState).runTaskLater(mcMMO.p, 0);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.gmail.nossr50.skills.woodcutting;
|
||||
|
||||
import com.gmail.nossr50.api.ItemSpawnReason;
|
||||
import com.gmail.nossr50.config.AdvancedConfig;
|
||||
import com.gmail.nossr50.config.Config;
|
||||
import com.gmail.nossr50.config.experience.ExperienceConfig;
|
||||
import com.gmail.nossr50.datatypes.interactions.NotificationType;
|
||||
@@ -305,9 +306,11 @@ public class WoodcuttingManager extends SkillManager {
|
||||
Misc.spawnItemsFromCollection(Misc.getBlockCenter(blockState), block.getDrops(), ItemSpawnReason.TREE_FELLER_DISPLACED_BLOCK);
|
||||
|
||||
if(RankUtils.hasReachedRank(2, mmoPlayer, SubSkillType.WOODCUTTING_KNOCK_ON_WOOD)) {
|
||||
if(RandomChanceUtil.rollDice(75, 100)) {
|
||||
int randOrbCount = Math.max(1, Misc.getRandom().nextInt(20));
|
||||
Misc.spawnExperienceOrb(blockState.getLocation(), randOrbCount);
|
||||
if(AdvancedConfig.getInstance().isKnockOnWoodXPOrbEnabled()) {
|
||||
if(RandomChanceUtil.rollDice(10, 100)) {
|
||||
int randOrbCount = Math.max(1, Misc.getRandom().nextInt(100));
|
||||
Misc.spawnExperienceOrb(blockState.getLocation(), randOrbCount);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user