mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-26 15:16:45 +01:00
Merge branch 'master' of https://github.com/Oaksworth/mcMMO
This commit is contained in:
commit
fd1a0db696
@ -46,6 +46,11 @@ public class AcrobaticsCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
|
if (canDodge) {
|
||||||
|
messages.add(getStatMessage(SubSkillType.ACROBATICS_DODGE, dodgeChance)
|
||||||
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", dodgeChanceLucky) : ""));
|
||||||
|
}
|
||||||
|
|
||||||
if (canRoll) {
|
if (canRoll) {
|
||||||
|
|
||||||
AbstractSubSkill abstractSubSkill = InteractionManager.getAbstractByName("Roll");
|
AbstractSubSkill abstractSubSkill = InteractionManager.getAbstractByName("Roll");
|
||||||
@ -68,11 +73,6 @@ public class AcrobaticsCommand extends SkillCommand {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canDodge) {
|
|
||||||
messages.add(getStatMessage(SubSkillType.ACROBATICS_DODGE, dodgeChance)
|
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", dodgeChanceLucky) : ""));
|
|
||||||
}
|
|
||||||
|
|
||||||
return messages;
|
return messages;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -28,10 +28,11 @@ public class ArcheryCommand extends SkillCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
||||||
// SKILL SHOT
|
// ARCHERY_ARROW_RETRIEVAL
|
||||||
if (canSkillShot) {
|
if (canRetrieve) {
|
||||||
double bonus = (skillValue / Archery.skillShotIncreaseLevel) * Archery.skillShotIncreasePercentage;
|
String[] retrieveStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.ARCHERY_ARROW_RETRIEVAL, isLucky);
|
||||||
skillShotBonus = percent.format(Archery.getSkillShotBonusDamage(player, 0));
|
retrieveChance = retrieveStrings[0];
|
||||||
|
retrieveChanceLucky = retrieveStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
// ARCHERY_DAZE
|
// ARCHERY_DAZE
|
||||||
@ -41,11 +42,10 @@ public class ArcheryCommand extends SkillCommand {
|
|||||||
dazeChanceLucky = dazeStrings[1];
|
dazeChanceLucky = dazeStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
// ARCHERY_ARROW_RETRIEVAL
|
// SKILL SHOT
|
||||||
if (canRetrieve) {
|
if (canSkillShot) {
|
||||||
String[] retrieveStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.ARCHERY_ARROW_RETRIEVAL, isLucky);
|
double bonus = (skillValue / Archery.skillShotIncreaseLevel) * Archery.skillShotIncreasePercentage;
|
||||||
retrieveChance = retrieveStrings[0];
|
skillShotBonus = percent.format(Archery.getSkillShotBonusDamage(player, 0));
|
||||||
retrieveChanceLucky = retrieveStrings[1];
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -60,8 +60,9 @@ public class ArcheryCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
if (canSkillShot) {
|
if (canRetrieve) {
|
||||||
messages.add(getStatMessage(SubSkillType.ARCHERY_SKILL_SHOT, skillShotBonus));
|
messages.add(getStatMessage(SubSkillType.ARCHERY_ARROW_RETRIEVAL, retrieveChance)
|
||||||
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", retrieveChanceLucky) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canDaze) {
|
if (canDaze) {
|
||||||
@ -69,9 +70,8 @@ public class ArcheryCommand extends SkillCommand {
|
|||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", dazeChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", dazeChanceLucky) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canRetrieve) {
|
if (canSkillShot) {
|
||||||
messages.add(getStatMessage(SubSkillType.ARCHERY_ARROW_RETRIEVAL, retrieveChance)
|
messages.add(getStatMessage(SubSkillType.ARCHERY_SKILL_SHOT, skillShotBonus));
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", retrieveChanceLucky) : ""));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return messages;
|
return messages;
|
||||||
|
@ -38,11 +38,9 @@ public class AxesCommand extends SkillCommand {
|
|||||||
impactDamage = 1 + (skillValue / Axes.impactIncreaseLevel);
|
impactDamage = 1 + (skillValue / Axes.impactIncreaseLevel);
|
||||||
}
|
}
|
||||||
|
|
||||||
// SKULL SPLITTER
|
// AXE MASTERY
|
||||||
if (canSkullSplitter) {
|
if (canAxeMastery) {
|
||||||
String[] skullSplitterStrings = calculateLengthDisplayValues(player, skillValue);
|
axeMasteryDamage = Axes.getAxeMasteryBonusDamage(player);
|
||||||
skullSplitterLength = skullSplitterStrings[0];
|
|
||||||
skullSplitterLengthEndurance = skullSplitterStrings[1];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// CRITICAL HIT
|
// CRITICAL HIT
|
||||||
@ -52,9 +50,11 @@ public class AxesCommand extends SkillCommand {
|
|||||||
critChanceLucky = criticalHitStrings[1];
|
critChanceLucky = criticalHitStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
// AXE MASTERY
|
// SKULL SPLITTER
|
||||||
if (canAxeMastery) {
|
if (canSkullSplitter) {
|
||||||
axeMasteryDamage = Axes.getAxeMasteryBonusDamage(player);
|
String[] skullSplitterStrings = calculateLengthDisplayValues(player, skillValue);
|
||||||
|
skullSplitterLength = skullSplitterStrings[0];
|
||||||
|
skullSplitterLengthEndurance = skullSplitterStrings[1];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -71,16 +71,12 @@ public class AxesCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
if (canAxeMastery) {
|
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Axes.Ability.Bonus.0"), LocaleLoader.getString("Axes.Ability.Bonus.1", axeMasteryDamage)));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canImpact) {
|
if (canImpact) {
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Axes.Ability.Bonus.2"), LocaleLoader.getString("Axes.Ability.Bonus.3", impactDamage)));
|
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Axes.Ability.Bonus.2"), LocaleLoader.getString("Axes.Ability.Bonus.3", impactDamage)));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canGreaterImpact) {
|
if (canAxeMastery) {
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Axes.Ability.Bonus.4"), LocaleLoader.getString("Axes.Ability.Bonus.5", Axes.greaterImpactBonusDamage)));
|
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Axes.Ability.Bonus.0"), LocaleLoader.getString("Axes.Ability.Bonus.1", axeMasteryDamage)));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canCritical) {
|
if (canCritical) {
|
||||||
@ -88,6 +84,10 @@ public class AxesCommand extends SkillCommand {
|
|||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", critChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", critChanceLucky) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (canGreaterImpact) {
|
||||||
|
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Axes.Ability.Bonus.4"), LocaleLoader.getString("Axes.Ability.Bonus.5", Axes.greaterImpactBonusDamage)));
|
||||||
|
}
|
||||||
|
|
||||||
if (canSkullSplitter) {
|
if (canSkullSplitter) {
|
||||||
messages.add(getStatMessage(SubSkillType.AXES_SKULL_SPLITTER, skullSplitterLength)
|
messages.add(getStatMessage(SubSkillType.AXES_SKULL_SPLITTER, skullSplitterLength)
|
||||||
+ (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", skullSplitterLengthEndurance) : ""));
|
+ (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", skullSplitterLengthEndurance) : ""));
|
||||||
|
@ -123,26 +123,18 @@ public class FishingCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
if (canTreasureHunt) {
|
if (canFishermansDiet) {
|
||||||
messages.add(getStatMessage(false, true, SubSkillType.FISHING_TREASURE_HUNTER, String.valueOf(lootTier), String.valueOf(RankUtils.getHighestRank(SubSkillType.FISHING_TREASURE_HUNTER))));
|
messages.add(getStatMessage(false, true, SubSkillType.FISHING_FISHERMANS_DIET, String.valueOf(fishermansDietRank)));
|
||||||
messages.add(getStatMessage(true, true, SubSkillType.FISHING_TREASURE_HUNTER,
|
|
||||||
String.valueOf(trapTreasure),
|
|
||||||
String.valueOf(commonTreasure),
|
|
||||||
String.valueOf(uncommonTreasure),
|
|
||||||
String.valueOf(rareTreasure),
|
|
||||||
String.valueOf(epicTreasure),
|
|
||||||
String.valueOf(legendaryTreasure),
|
|
||||||
String.valueOf(recordTreasure)));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canMagicHunt) {
|
|
||||||
messages.add(getStatMessage(SubSkillType.FISHING_MAGIC_HUNTER, magicChance));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canIceFish) {
|
if (canIceFish) {
|
||||||
messages.add(getStatMessage(SubSkillType.FISHING_ICE_FISHING, SubSkillType.FISHING_ICE_FISHING.getLocaleStatDescription()));
|
messages.add(getStatMessage(SubSkillType.FISHING_ICE_FISHING, SubSkillType.FISHING_ICE_FISHING.getLocaleStatDescription()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (canMagicHunt) {
|
||||||
|
messages.add(getStatMessage(SubSkillType.FISHING_MAGIC_HUNTER, magicChance));
|
||||||
|
}
|
||||||
|
|
||||||
if (canMasterAngler) {
|
if (canMasterAngler) {
|
||||||
//TODO: Update this with more details
|
//TODO: Update this with more details
|
||||||
messages.add(getStatMessage(SubSkillType.FISHING_MASTER_ANGLER, biteChance));
|
messages.add(getStatMessage(SubSkillType.FISHING_MASTER_ANGLER, biteChance));
|
||||||
@ -153,8 +145,16 @@ public class FishingCommand extends SkillCommand {
|
|||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", shakeChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", shakeChanceLucky) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canFishermansDiet) {
|
if (canTreasureHunt) {
|
||||||
messages.add(getStatMessage(false, true, SubSkillType.FISHING_FISHERMANS_DIET, String.valueOf(fishermansDietRank)));
|
messages.add(getStatMessage(false, true, SubSkillType.FISHING_TREASURE_HUNTER, String.valueOf(lootTier), String.valueOf(RankUtils.getHighestRank(SubSkillType.FISHING_TREASURE_HUNTER))));
|
||||||
|
messages.add(getStatMessage(true, true, SubSkillType.FISHING_TREASURE_HUNTER,
|
||||||
|
String.valueOf(trapTreasure),
|
||||||
|
String.valueOf(commonTreasure),
|
||||||
|
String.valueOf(uncommonTreasure),
|
||||||
|
String.valueOf(rareTreasure),
|
||||||
|
String.valueOf(epicTreasure),
|
||||||
|
String.valueOf(legendaryTreasure),
|
||||||
|
String.valueOf(recordTreasure)));
|
||||||
}
|
}
|
||||||
|
|
||||||
return messages;
|
return messages;
|
||||||
|
@ -41,11 +41,12 @@ public class HerbalismCommand extends SkillCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
||||||
// GREEN TERRA
|
|
||||||
if (canGreenTerra) {
|
// DOUBLE DROPS
|
||||||
String[] greenTerraStrings = calculateLengthDisplayValues(player, skillValue);
|
if (canDoubleDrop) {
|
||||||
greenTerraLength = greenTerraStrings[0];
|
String[] doubleDropStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.HERBALISM_DOUBLE_DROPS, isLucky);
|
||||||
greenTerraLengthEndurance = greenTerraStrings[1];
|
doubleDropChance = doubleDropStrings[0];
|
||||||
|
doubleDropChanceLucky = doubleDropStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
// FARMERS DIET
|
// FARMERS DIET
|
||||||
@ -53,6 +54,13 @@ public class HerbalismCommand extends SkillCommand {
|
|||||||
farmersDietRank = RankUtils.getRank(player, SubSkillType.HERBALISM_FARMERS_DIET);
|
farmersDietRank = RankUtils.getRank(player, SubSkillType.HERBALISM_FARMERS_DIET);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GREEN TERRA
|
||||||
|
if (canGreenTerra) {
|
||||||
|
String[] greenTerraStrings = calculateLengthDisplayValues(player, skillValue);
|
||||||
|
greenTerraLength = greenTerraStrings[0];
|
||||||
|
greenTerraLengthEndurance = greenTerraStrings[1];
|
||||||
|
}
|
||||||
|
|
||||||
// GREEN THUMB
|
// GREEN THUMB
|
||||||
if (canGreenThumbBlocks || canGreenThumbPlants) {
|
if (canGreenThumbBlocks || canGreenThumbPlants) {
|
||||||
greenThumbStage = RankUtils.getRank(player, SubSkillType.HERBALISM_GREEN_THUMB);
|
greenThumbStage = RankUtils.getRank(player, SubSkillType.HERBALISM_GREEN_THUMB);
|
||||||
@ -62,13 +70,6 @@ public class HerbalismCommand extends SkillCommand {
|
|||||||
greenThumbChanceLucky = greenThumbStrings[1];
|
greenThumbChanceLucky = greenThumbStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
// DOUBLE DROPS
|
|
||||||
if (canDoubleDrop) {
|
|
||||||
String[] doubleDropStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.HERBALISM_DOUBLE_DROPS, isLucky);
|
|
||||||
doubleDropChance = doubleDropStrings[0];
|
|
||||||
doubleDropChanceLucky = doubleDropStrings[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
// HYLIAN LUCK
|
// HYLIAN LUCK
|
||||||
if (hasHylianLuck) {
|
if (hasHylianLuck) {
|
||||||
String[] hylianLuckStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.HERBALISM_HYLIAN_LUCK, isLucky);
|
String[] hylianLuckStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.HERBALISM_HYLIAN_LUCK, isLucky);
|
||||||
@ -99,6 +100,15 @@ public class HerbalismCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
|
if (canDoubleDrop) {
|
||||||
|
messages.add(getStatMessage(SubSkillType.HERBALISM_DOUBLE_DROPS, doubleDropChance)
|
||||||
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", doubleDropChanceLucky) : ""));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (canFarmersDiet) {
|
||||||
|
messages.add(getStatMessage(false, true, SubSkillType.HERBALISM_FARMERS_DIET, String.valueOf(farmersDietRank)));
|
||||||
|
}
|
||||||
|
|
||||||
if (canGreenTerra) {
|
if (canGreenTerra) {
|
||||||
messages.add(getStatMessage(SubSkillType.HERBALISM_GREEN_TERRA, greenTerraLength)
|
messages.add(getStatMessage(SubSkillType.HERBALISM_GREEN_TERRA, greenTerraLength)
|
||||||
+ (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", greenTerraLengthEndurance) : ""));
|
+ (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", greenTerraLengthEndurance) : ""));
|
||||||
@ -116,10 +126,6 @@ public class HerbalismCommand extends SkillCommand {
|
|||||||
messages.add(getStatMessage(true, true,SubSkillType.HERBALISM_GREEN_THUMB, String.valueOf(greenThumbStage)));
|
messages.add(getStatMessage(true, true,SubSkillType.HERBALISM_GREEN_THUMB, String.valueOf(greenThumbStage)));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canFarmersDiet) {
|
|
||||||
messages.add(getStatMessage(false, true, SubSkillType.HERBALISM_FARMERS_DIET, String.valueOf(farmersDietRank)));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (hasHylianLuck) {
|
if (hasHylianLuck) {
|
||||||
messages.add(getStatMessage(SubSkillType.HERBALISM_HYLIAN_LUCK, hylianLuckChance)
|
messages.add(getStatMessage(SubSkillType.HERBALISM_HYLIAN_LUCK, hylianLuckChance)
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", hylianLuckChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", hylianLuckChanceLucky) : ""));
|
||||||
@ -130,11 +136,6 @@ public class HerbalismCommand extends SkillCommand {
|
|||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", shroomThumbChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", shroomThumbChanceLucky) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canDoubleDrop) {
|
|
||||||
messages.add(getStatMessage(SubSkillType.HERBALISM_DOUBLE_DROPS, doubleDropChance)
|
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", doubleDropChanceLucky) : ""));
|
|
||||||
}
|
|
||||||
|
|
||||||
return messages;
|
return messages;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,20 +39,6 @@ public class MiningCommand extends SkillCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
||||||
// SUPER BREAKER
|
|
||||||
if (canSuperBreaker) {
|
|
||||||
String[] superBreakerStrings = calculateLengthDisplayValues(player, skillValue);
|
|
||||||
superBreakerLength = superBreakerStrings[0];
|
|
||||||
superBreakerLengthEndurance = superBreakerStrings[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
// DOUBLE DROPS
|
|
||||||
if (canDoubleDrop) {
|
|
||||||
String[] doubleDropStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.MINING_DOUBLE_DROPS, isLucky);
|
|
||||||
doubleDropChance = doubleDropStrings[0];
|
|
||||||
doubleDropChanceLucky = doubleDropStrings[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
// BLAST MINING
|
// BLAST MINING
|
||||||
if (canBlast || canDemoExpert || canBiggerBombs) {
|
if (canBlast || canDemoExpert || canBiggerBombs) {
|
||||||
MiningManager miningManager = UserManager.getPlayer(player).getMiningManager();
|
MiningManager miningManager = UserManager.getPlayer(player).getMiningManager();
|
||||||
@ -64,6 +50,20 @@ public class MiningCommand extends SkillCommand {
|
|||||||
blastDamageDecrease = percent.format(miningManager.getBlastDamageModifier() / 100.0D);
|
blastDamageDecrease = percent.format(miningManager.getBlastDamageModifier() / 100.0D);
|
||||||
blastRadiusIncrease = miningManager.getBlastRadiusModifier();
|
blastRadiusIncrease = miningManager.getBlastRadiusModifier();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// DOUBLE DROPS
|
||||||
|
if (canDoubleDrop) {
|
||||||
|
String[] doubleDropStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.MINING_DOUBLE_DROPS, isLucky);
|
||||||
|
doubleDropChance = doubleDropStrings[0];
|
||||||
|
doubleDropChanceLucky = doubleDropStrings[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
// SUPER BREAKER
|
||||||
|
if (canSuperBreaker) {
|
||||||
|
String[] superBreakerStrings = calculateLengthDisplayValues(player, skillValue);
|
||||||
|
superBreakerLength = superBreakerStrings[0];
|
||||||
|
superBreakerLengthEndurance = superBreakerStrings[1];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -79,6 +79,21 @@ public class MiningCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
|
if (canBiggerBombs) {
|
||||||
|
messages.add(getStatMessage(true, true, SubSkillType.MINING_BLAST_MINING, String.valueOf(blastRadiusIncrease)));
|
||||||
|
//messages.add(LocaleLoader.getString("Mining.Blast.Radius.Increase", blastRadiusIncrease));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (canBlast) {
|
||||||
|
messages.add(getStatMessage(false, true, SubSkillType.MINING_BLAST_MINING, String.valueOf(blastMiningRank), String.valueOf(RankUtils.getHighestRank(SubSkillType.MINING_BLAST_MINING)), LocaleLoader.getString("Mining.Blast.Effect", oreBonus, debrisReduction, bonusTNTDrops)));
|
||||||
|
//messages.add(LocaleLoader.getString("Mining.Blast.Rank", blastMiningRank, RankUtils.getHighestRank(SubSkillType.MINING_BLAST_MINING), LocaleLoader.getString("Mining.Blast.Effect", oreBonus, debrisReduction, bonusTNTDrops)));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (canDemoExpert) {
|
||||||
|
messages.add(getStatMessage(SubSkillType.MINING_DEMOLITIONS_EXPERTISE, blastDamageDecrease));
|
||||||
|
//messages.add(LocaleLoader.getString("Mining.Effect.Decrease", blastDamageDecrease));
|
||||||
|
}
|
||||||
|
|
||||||
if (canDoubleDrop) {
|
if (canDoubleDrop) {
|
||||||
messages.add(getStatMessage(SubSkillType.HERBALISM_DOUBLE_DROPS, doubleDropChance)
|
messages.add(getStatMessage(SubSkillType.HERBALISM_DOUBLE_DROPS, doubleDropChance)
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", doubleDropChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", doubleDropChanceLucky) : ""));
|
||||||
@ -91,21 +106,6 @@ public class MiningCommand extends SkillCommand {
|
|||||||
//messages.add(LocaleLoader.getString("Mining.Ability.Length", superBreakerLength) + (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", superBreakerLengthEndurance) : ""));
|
//messages.add(LocaleLoader.getString("Mining.Ability.Length", superBreakerLength) + (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", superBreakerLengthEndurance) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canBlast) {
|
|
||||||
messages.add(getStatMessage(false, true, SubSkillType.MINING_BLAST_MINING, String.valueOf(blastMiningRank), String.valueOf(RankUtils.getHighestRank(SubSkillType.MINING_BLAST_MINING)), LocaleLoader.getString("Mining.Blast.Effect", oreBonus, debrisReduction, bonusTNTDrops)));
|
|
||||||
//messages.add(LocaleLoader.getString("Mining.Blast.Rank", blastMiningRank, RankUtils.getHighestRank(SubSkillType.MINING_BLAST_MINING), LocaleLoader.getString("Mining.Blast.Effect", oreBonus, debrisReduction, bonusTNTDrops)));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canBiggerBombs) {
|
|
||||||
messages.add(getStatMessage(true, true, SubSkillType.MINING_BLAST_MINING, String.valueOf(blastRadiusIncrease)));
|
|
||||||
//messages.add(LocaleLoader.getString("Mining.Blast.Radius.Increase", blastRadiusIncrease));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canDemoExpert) {
|
|
||||||
messages.add(getStatMessage(SubSkillType.MINING_DEMOLITIONS_EXPERTISE, blastDamageDecrease));
|
|
||||||
//messages.add(LocaleLoader.getString("Mining.Effect.Decrease", blastDamageDecrease));
|
|
||||||
}
|
|
||||||
|
|
||||||
return messages;
|
return messages;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -92,15 +92,6 @@ public class RepairCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
if (canMasterRepair) {
|
|
||||||
messages.add(getStatMessage(false, true, SubSkillType.REPAIR_REPAIR_MASTERY, repairMasteryBonus));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canSuperRepair) {
|
|
||||||
messages.add(getStatMessage(SubSkillType.REPAIR_SUPER_REPAIR, superRepairChance)
|
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", superRepairChanceLucky) : ""));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canArcaneForge) {
|
if (canArcaneForge) {
|
||||||
RepairManager repairManager = UserManager.getPlayer(player).getRepairManager();
|
RepairManager repairManager = UserManager.getPlayer(player).getRepairManager();
|
||||||
|
|
||||||
@ -113,6 +104,15 @@ public class RepairCommand extends SkillCommand {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (canMasterRepair) {
|
||||||
|
messages.add(getStatMessage(false, true, SubSkillType.REPAIR_REPAIR_MASTERY, repairMasteryBonus));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (canSuperRepair) {
|
||||||
|
messages.add(getStatMessage(SubSkillType.REPAIR_SUPER_REPAIR, superRepairChance)
|
||||||
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", superRepairChanceLucky) : ""));
|
||||||
|
}
|
||||||
|
|
||||||
return messages;
|
return messages;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -37,19 +37,19 @@ public class SmeltingCommand extends SkillCommand {
|
|||||||
burnTimeModifier = decimal.format(1 + ((skillValue / Smelting.burnModifierMaxLevel) * Smelting.burnTimeMultiplier));
|
burnTimeModifier = decimal.format(1 + ((skillValue / Smelting.burnModifierMaxLevel) * Smelting.burnTimeMultiplier));
|
||||||
}
|
}
|
||||||
|
|
||||||
// SECOND SMELT
|
|
||||||
if (canSecondSmelt) {
|
|
||||||
String[] secondSmeltStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.SMELTING_SECOND_SMELT, isLucky);
|
|
||||||
secondSmeltChance = secondSmeltStrings[0];
|
|
||||||
secondSmeltChanceLucky = secondSmeltStrings[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
// FLUX MINING
|
// FLUX MINING
|
||||||
if (canFluxMine) {
|
if (canFluxMine) {
|
||||||
String[] fluxMiningStrings = calculateAbilityDisplayValues(Smelting.fluxMiningChance, isLucky);
|
String[] fluxMiningStrings = calculateAbilityDisplayValues(Smelting.fluxMiningChance, isLucky);
|
||||||
fluxMiningChance = fluxMiningStrings[0];
|
fluxMiningChance = fluxMiningStrings[0];
|
||||||
fluxMiningChanceLucky = fluxMiningStrings[1];
|
fluxMiningChanceLucky = fluxMiningStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SECOND SMELT
|
||||||
|
if (canSecondSmelt) {
|
||||||
|
String[] secondSmeltStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.SMELTING_SECOND_SMELT, isLucky);
|
||||||
|
secondSmeltChance = secondSmeltStrings[0];
|
||||||
|
secondSmeltChanceLucky = secondSmeltStrings[1];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -64,6 +64,10 @@ public class SmeltingCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
|
if (canFluxMine) {
|
||||||
|
messages.add(LocaleLoader.getString("Smelting.Ability.FluxMining", fluxMiningChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", fluxMiningChanceLucky) : ""));
|
||||||
|
}
|
||||||
|
|
||||||
if (canFuelEfficiency) {
|
if (canFuelEfficiency) {
|
||||||
messages.add(LocaleLoader.getString("Smelting.Ability.FuelEfficiency", burnTimeModifier));
|
messages.add(LocaleLoader.getString("Smelting.Ability.FuelEfficiency", burnTimeModifier));
|
||||||
}
|
}
|
||||||
@ -76,10 +80,6 @@ public class SmeltingCommand extends SkillCommand {
|
|||||||
messages.add(LocaleLoader.getString("Smelting.Ability.VanillaXPBoost", UserManager.getPlayer(player).getSmeltingManager().getVanillaXpMultiplier()));
|
messages.add(LocaleLoader.getString("Smelting.Ability.VanillaXPBoost", UserManager.getPlayer(player).getSmeltingManager().getVanillaXpMultiplier()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canFluxMine) {
|
|
||||||
messages.add(LocaleLoader.getString("Smelting.Ability.FluxMining", fluxMiningChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", fluxMiningChanceLucky) : ""));
|
|
||||||
}
|
|
||||||
|
|
||||||
return messages;
|
return messages;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -34,11 +34,11 @@ public class SwordsCommand extends SkillCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
||||||
// SERRATED STRIKES
|
// SWORDS_COUNTER_ATTACK
|
||||||
if (canSerratedStrike) {
|
if (canCounter) {
|
||||||
String[] serratedStrikesStrings = calculateLengthDisplayValues(player, skillValue);
|
String[] counterStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.SWORDS_COUNTER_ATTACK, isLucky);
|
||||||
serratedStrikesLength = serratedStrikesStrings[0];
|
counterChance = counterStrings[0];
|
||||||
serratedStrikesLengthEndurance = serratedStrikesStrings[1];
|
counterChanceLucky = counterStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
// SWORDS_RUPTURE
|
// SWORDS_RUPTURE
|
||||||
@ -50,11 +50,11 @@ public class SwordsCommand extends SkillCommand {
|
|||||||
bleedChanceLucky = bleedStrings[1];
|
bleedChanceLucky = bleedStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
// SWORDS_COUNTER_ATTACK
|
// SERRATED STRIKES
|
||||||
if (canCounter) {
|
if (canSerratedStrike) {
|
||||||
String[] counterStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.SWORDS_COUNTER_ATTACK, isLucky);
|
String[] serratedStrikesStrings = calculateLengthDisplayValues(player, skillValue);
|
||||||
counterChance = counterStrings[0];
|
serratedStrikesLength = serratedStrikesStrings[0];
|
||||||
counterChanceLucky = counterStrings[1];
|
serratedStrikesLengthEndurance = serratedStrikesStrings[1];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,15 +59,6 @@ public class TamingCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
if (canFastFood) {
|
|
||||||
if (skillValue < Taming.fastFoodServiceUnlockLevel) {
|
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.4", Taming.fastFoodServiceUnlockLevel)));
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Taming.Ability.Bonus.8"), LocaleLoader.getString("Taming.Ability.Bonus.9", percent.format(Taming.fastFoodServiceActivationChance / 100D))));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canEnvironmentallyAware) {
|
if (canEnvironmentallyAware) {
|
||||||
if (skillValue < Taming.environmentallyAwareUnlockLevel) {
|
if (skillValue < Taming.environmentallyAwareUnlockLevel) {
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.0", Taming.environmentallyAwareUnlockLevel)));
|
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.0", Taming.environmentallyAwareUnlockLevel)));
|
||||||
@ -77,15 +68,21 @@ public class TamingCommand extends SkillCommand {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canThickFur) {
|
if (canFastFood) {
|
||||||
if (skillValue < Taming.thickFurUnlockLevel) {
|
if (skillValue < Taming.fastFoodServiceUnlockLevel) {
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.1", Taming.thickFurUnlockLevel)));
|
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.4", Taming.fastFoodServiceUnlockLevel)));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Taming.Ability.Bonus.2"), LocaleLoader.getString("Taming.Ability.Bonus.3", Taming.thickFurModifier)));
|
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Taming.Ability.Bonus.8"), LocaleLoader.getString("Taming.Ability.Bonus.9", percent.format(Taming.fastFoodServiceActivationChance / 100D))));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (canGore) {
|
||||||
|
messages.add(LocaleLoader.getString("Ability.Generic.Template",
|
||||||
|
LocaleLoader.getString("Taming.Combat.Chance.Gore"),
|
||||||
|
goreChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", goreChanceLucky) : ""));
|
||||||
|
}
|
||||||
|
|
||||||
if (canHolyHound) {
|
if (canHolyHound) {
|
||||||
if (skillValue < Taming.holyHoundUnlockLevel) {
|
if (skillValue < Taming.holyHoundUnlockLevel) {
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.5", Taming.holyHoundUnlockLevel)));
|
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.5", Taming.holyHoundUnlockLevel)));
|
||||||
@ -95,15 +92,6 @@ public class TamingCommand extends SkillCommand {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canShockProof) {
|
|
||||||
if (skillValue < Taming.shockProofUnlockLevel) {
|
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.2", Taming.shockProofUnlockLevel)));
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Taming.Ability.Bonus.4"), LocaleLoader.getString("Taming.Ability.Bonus.5", Taming.shockProofModifier)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canSharpenedClaws) {
|
if (canSharpenedClaws) {
|
||||||
if (skillValue < Taming.sharpenedClawsUnlockLevel) {
|
if (skillValue < Taming.sharpenedClawsUnlockLevel) {
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.3", Taming.sharpenedClawsUnlockLevel)));
|
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.3", Taming.sharpenedClawsUnlockLevel)));
|
||||||
@ -113,10 +101,22 @@ public class TamingCommand extends SkillCommand {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canGore) {
|
if (canShockProof) {
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template",
|
if (skillValue < Taming.shockProofUnlockLevel) {
|
||||||
LocaleLoader.getString("Taming.Combat.Chance.Gore"),
|
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.2", Taming.shockProofUnlockLevel)));
|
||||||
goreChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", goreChanceLucky) : ""));
|
}
|
||||||
|
else {
|
||||||
|
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Taming.Ability.Bonus.4"), LocaleLoader.getString("Taming.Ability.Bonus.5", Taming.shockProofModifier)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (canThickFur) {
|
||||||
|
if (skillValue < Taming.thickFurUnlockLevel) {
|
||||||
|
messages.add(LocaleLoader.getString("Ability.Generic.Template.Lock", LocaleLoader.getString("Taming.Ability.Locked.1", Taming.thickFurUnlockLevel)));
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Taming.Ability.Bonus.2"), LocaleLoader.getString("Taming.Ability.Bonus.3", Taming.thickFurModifier)));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return messages;
|
return messages;
|
||||||
|
@ -36,6 +36,13 @@ public class UnarmedCommand extends SkillCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
||||||
|
// UNARMED_ARROW_DEFLECT
|
||||||
|
if (canDeflect) {
|
||||||
|
String[] deflectStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.UNARMED_ARROW_DEFLECT, isLucky);
|
||||||
|
deflectChance = deflectStrings[0];
|
||||||
|
deflectChanceLucky = deflectStrings[1];
|
||||||
|
}
|
||||||
|
|
||||||
// BERSERK
|
// BERSERK
|
||||||
if (canBerserk) {
|
if (canBerserk) {
|
||||||
String[] berserkStrings = calculateLengthDisplayValues(player, skillValue);
|
String[] berserkStrings = calculateLengthDisplayValues(player, skillValue);
|
||||||
@ -50,13 +57,6 @@ public class UnarmedCommand extends SkillCommand {
|
|||||||
disarmChanceLucky = disarmStrings[1];
|
disarmChanceLucky = disarmStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
// UNARMED_ARROW_DEFLECT
|
|
||||||
if (canDeflect) {
|
|
||||||
String[] deflectStrings = calculateAbilityDisplayValues(skillValue, SubSkillType.UNARMED_ARROW_DEFLECT, isLucky);
|
|
||||||
deflectChance = deflectStrings[0];
|
|
||||||
deflectChanceLucky = deflectStrings[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
// IRON ARM
|
// IRON ARM
|
||||||
if (canIronArm) {
|
if (canIronArm) {
|
||||||
ironArmBonus = Math.min(Unarmed.ironArmMinBonusDamage + ((int) skillValue / Unarmed.ironArmIncreaseLevel), Unarmed.ironArmMaxBonusDamage);
|
ironArmBonus = Math.min(Unarmed.ironArmMinBonusDamage + ((int) skillValue / Unarmed.ironArmIncreaseLevel), Unarmed.ironArmMaxBonusDamage);
|
||||||
@ -84,34 +84,34 @@ public class UnarmedCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
if (canIronArm) {
|
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Unarmed.Ability.Bonus.0"), LocaleLoader.getString("Unarmed.Ability.Bonus.1", ironArmBonus)));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canDeflect) {
|
if (canDeflect) {
|
||||||
messages.add(getStatMessage(SubSkillType.UNARMED_ARROW_DEFLECT, deflectChance)
|
messages.add(getStatMessage(SubSkillType.UNARMED_ARROW_DEFLECT, deflectChance)
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", deflectChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", deflectChanceLucky) : ""));
|
||||||
//messages.add(LocaleLoader.getString("Unarmed.Ability.Chance.ArrowDeflect", deflectChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", deflectChanceLucky) : ""));
|
//messages.add(LocaleLoader.getString("Unarmed.Ability.Chance.ArrowDeflect", deflectChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", deflectChanceLucky) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (canBerserk) {
|
||||||
|
messages.add(getStatMessage(SubSkillType.UNARMED_BERSERK, berserkLength)
|
||||||
|
+ (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", berserkLengthEndurance) : ""));
|
||||||
|
//messages.add(LocaleLoader.getString("Unarmed.Ability.Berserk.Length", berserkLength) + (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", berserkLengthEndurance) : ""));
|
||||||
|
}
|
||||||
|
|
||||||
if (canDisarm) {
|
if (canDisarm) {
|
||||||
messages.add(getStatMessage(SubSkillType.UNARMED_DISARM, disarmChance)
|
messages.add(getStatMessage(SubSkillType.UNARMED_DISARM, disarmChance)
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", disarmChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", disarmChanceLucky) : ""));
|
||||||
//messages.add(LocaleLoader.getString("Unarmed.Ability.Chance.Disarm", disarmChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", disarmChanceLucky) : ""));
|
//messages.add(LocaleLoader.getString("Unarmed.Ability.Chance.Disarm", disarmChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", disarmChanceLucky) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (canIronArm) {
|
||||||
|
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Unarmed.Ability.Bonus.0"), LocaleLoader.getString("Unarmed.Ability.Bonus.1", ironArmBonus)));
|
||||||
|
}
|
||||||
|
|
||||||
if (canIronGrip) {
|
if (canIronGrip) {
|
||||||
messages.add(getStatMessage(SubSkillType.UNARMED_IRON_GRIP, ironGripChance)
|
messages.add(getStatMessage(SubSkillType.UNARMED_IRON_GRIP, ironGripChance)
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", ironGripChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", ironGripChanceLucky) : ""));
|
||||||
//messages.add(LocaleLoader.getString("Unarmed.Ability.Chance.IronGrip", ironGripChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", ironGripChanceLucky) : ""));
|
//messages.add(LocaleLoader.getString("Unarmed.Ability.Chance.IronGrip", ironGripChance) + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", ironGripChanceLucky) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (canBerserk) {
|
|
||||||
messages.add(getStatMessage(SubSkillType.UNARMED_BERSERK, berserkLength)
|
|
||||||
+ (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", berserkLengthEndurance) : ""));
|
|
||||||
//messages.add(LocaleLoader.getString("Unarmed.Ability.Berserk.Length", berserkLength) + (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", berserkLengthEndurance) : ""));
|
|
||||||
}
|
|
||||||
|
|
||||||
return messages;
|
return messages;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,17 +31,17 @@ public class WoodcuttingCommand extends SkillCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
protected void dataCalculations(Player player, float skillValue, boolean isLucky) {
|
||||||
|
// DOUBLE DROPS
|
||||||
|
if (canDoubleDrop) {
|
||||||
|
setDoubleDropClassicChanceStrings(skillValue, isLucky);
|
||||||
|
}
|
||||||
|
|
||||||
// TREE FELLER
|
// TREE FELLER
|
||||||
if (canTreeFell) {
|
if (canTreeFell) {
|
||||||
String[] treeFellerStrings = calculateLengthDisplayValues(player, skillValue);
|
String[] treeFellerStrings = calculateLengthDisplayValues(player, skillValue);
|
||||||
treeFellerLength = treeFellerStrings[0];
|
treeFellerLength = treeFellerStrings[0];
|
||||||
treeFellerLengthEndurance = treeFellerStrings[1];
|
treeFellerLengthEndurance = treeFellerStrings[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
// DOUBLE DROPS
|
|
||||||
if (canDoubleDrop) {
|
|
||||||
setDoubleDropClassicChanceStrings(skillValue, isLucky);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setDoubleDropClassicChanceStrings(float skillValue, boolean isLucky) {
|
private void setDoubleDropClassicChanceStrings(float skillValue, boolean isLucky) {
|
||||||
@ -64,15 +64,15 @@ public class WoodcuttingCommand extends SkillCommand {
|
|||||||
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
protected List<String> statsDisplay(Player player, float skillValue, boolean hasEndurance, boolean isLucky) {
|
||||||
List<String> messages = new ArrayList<String>();
|
List<String> messages = new ArrayList<String>();
|
||||||
|
|
||||||
if (canLeafBlow) {
|
|
||||||
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Woodcutting.Ability.0"), LocaleLoader.getString("Woodcutting.Ability.1")));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (canDoubleDrop) {
|
if (canDoubleDrop) {
|
||||||
messages.add(getStatMessage(SubSkillType.WOODCUTTING_HARVEST_LUMBER, doubleDropChance)
|
messages.add(getStatMessage(SubSkillType.WOODCUTTING_HARVEST_LUMBER, doubleDropChance)
|
||||||
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", doubleDropChanceLucky) : ""));
|
+ (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", doubleDropChanceLucky) : ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (canLeafBlow) {
|
||||||
|
messages.add(LocaleLoader.getString("Ability.Generic.Template", LocaleLoader.getString("Woodcutting.Ability.0"), LocaleLoader.getString("Woodcutting.Ability.1")));
|
||||||
|
}
|
||||||
|
|
||||||
if (canTreeFell) {
|
if (canTreeFell) {
|
||||||
messages.add(getStatMessage(SubSkillType.WOODCUTTING_TREE_FELLER, treeFellerLength)
|
messages.add(getStatMessage(SubSkillType.WOODCUTTING_TREE_FELLER, treeFellerLength)
|
||||||
+ (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", treeFellerLengthEndurance) : ""));
|
+ (hasEndurance ? LocaleLoader.getString("Perks.ActivationTime.Bonus", treeFellerLengthEndurance) : ""));
|
||||||
|
@ -15,8 +15,8 @@ public enum SubSkillType {
|
|||||||
ALCHEMY_CONCOCTIONS(8),
|
ALCHEMY_CONCOCTIONS(8),
|
||||||
|
|
||||||
/* ARCHERY */
|
/* ARCHERY */
|
||||||
ARCHERY_DAZE,
|
|
||||||
ARCHERY_ARROW_RETRIEVAL,
|
ARCHERY_ARROW_RETRIEVAL,
|
||||||
|
ARCHERY_DAZE,
|
||||||
ARCHERY_SKILL_SHOT(20),
|
ARCHERY_SKILL_SHOT(20),
|
||||||
|
|
||||||
/* Axes */
|
/* Axes */
|
||||||
@ -32,26 +32,26 @@ public enum SubSkillType {
|
|||||||
|
|
||||||
/* Fishing */
|
/* Fishing */
|
||||||
FISHING_FISHERMANS_DIET(5),
|
FISHING_FISHERMANS_DIET(5),
|
||||||
FISHING_TREASURE_HUNTER(8),
|
|
||||||
FISHING_ICE_FISHING(1),
|
FISHING_ICE_FISHING(1),
|
||||||
FISHING_MAGIC_HUNTER,
|
FISHING_MAGIC_HUNTER,
|
||||||
FISHING_MASTER_ANGLER(1),
|
FISHING_MASTER_ANGLER(1),
|
||||||
|
FISHING_TREASURE_HUNTER(8),
|
||||||
FISHING_SHAKE(1),
|
FISHING_SHAKE(1),
|
||||||
|
|
||||||
/* Herbalism */
|
/* Herbalism */
|
||||||
HERBALISM_FARMERS_DIET(5),
|
|
||||||
HERBALISM_GREEN_THUMB(4),
|
|
||||||
HERBALISM_DOUBLE_DROPS,
|
HERBALISM_DOUBLE_DROPS,
|
||||||
|
HERBALISM_FARMERS_DIET(5),
|
||||||
|
HERBALISM_GREEN_TERRA(1),
|
||||||
|
HERBALISM_GREEN_THUMB(4),
|
||||||
HERBALISM_HYLIAN_LUCK,
|
HERBALISM_HYLIAN_LUCK,
|
||||||
HERBALISM_SHROOM_THUMB,
|
HERBALISM_SHROOM_THUMB,
|
||||||
HERBALISM_GREEN_TERRA(1),
|
|
||||||
|
|
||||||
/* Mining */
|
/* Mining */
|
||||||
|
MINING_BIGGER_BOMBS(1),
|
||||||
|
MINING_BLAST_MINING(8),
|
||||||
|
MINING_DEMOLITIONS_EXPERTISE(1),
|
||||||
MINING_DOUBLE_DROPS,
|
MINING_DOUBLE_DROPS,
|
||||||
MINING_SUPER_BREAKER(1),
|
MINING_SUPER_BREAKER(1),
|
||||||
MINING_BLAST_MINING(8),
|
|
||||||
MINING_BIGGER_BOMBS(1),
|
|
||||||
MINING_DEMOLITIONS_EXPERTISE(1),
|
|
||||||
|
|
||||||
/* Repair */
|
/* Repair */
|
||||||
REPAIR_ARCANE_FORGING(8),
|
REPAIR_ARCANE_FORGING(8),
|
||||||
@ -69,8 +69,8 @@ public enum SubSkillType {
|
|||||||
SMELTING_UNDERSTANDING_THE_ART(8),
|
SMELTING_UNDERSTANDING_THE_ART(8),
|
||||||
|
|
||||||
/* Swords */
|
/* Swords */
|
||||||
SWORDS_RUPTURE(4),
|
|
||||||
SWORDS_COUNTER_ATTACK,
|
SWORDS_COUNTER_ATTACK,
|
||||||
|
SWORDS_RUPTURE(4),
|
||||||
SWORDS_SERRATED_STRIKES(1),
|
SWORDS_SERRATED_STRIKES(1),
|
||||||
|
|
||||||
/* Taming */
|
/* Taming */
|
||||||
@ -80,26 +80,26 @@ public enum SubSkillType {
|
|||||||
TAMING_FAST_FOOD_SERVICE(1),
|
TAMING_FAST_FOOD_SERVICE(1),
|
||||||
TAMING_GORE,
|
TAMING_GORE,
|
||||||
TAMING_HOLY_HOUND(1),
|
TAMING_HOLY_HOUND(1),
|
||||||
|
TAMING_PUMMEL,
|
||||||
TAMING_SHARPENED_CLAWS(1),
|
TAMING_SHARPENED_CLAWS(1),
|
||||||
TAMING_SHOCK_PROOF(1),
|
TAMING_SHOCK_PROOF(1),
|
||||||
TAMING_THICK_FUR(1),
|
TAMING_THICK_FUR(1),
|
||||||
TAMING_PUMMEL,
|
|
||||||
|
|
||||||
/* Unarmed */
|
/* Unarmed */
|
||||||
UNARMED_BLOCK_CRACKER,
|
|
||||||
UNARMED_ARROW_DEFLECT,
|
UNARMED_ARROW_DEFLECT,
|
||||||
|
UNARMED_BERSERK(1),
|
||||||
|
UNARMED_BLOCK_CRACKER,
|
||||||
UNARMED_DISARM,
|
UNARMED_DISARM,
|
||||||
UNARMED_IRON_ARM_STYLE,
|
UNARMED_IRON_ARM_STYLE,
|
||||||
UNARMED_IRON_GRIP,
|
UNARMED_IRON_GRIP,
|
||||||
UNARMED_BERSERK(1),
|
|
||||||
|
|
||||||
/* Woodcutting */
|
/* Woodcutting */
|
||||||
WOODCUTTING_TREE_FELLER(5),
|
|
||||||
WOODCUTTING_LEAF_BLOWER(3),
|
|
||||||
WOODCUTTING_BARK_SURGEON(3),
|
WOODCUTTING_BARK_SURGEON(3),
|
||||||
|
WOODCUTTING_HARVEST_LUMBER(1);
|
||||||
|
WOODCUTTING_LEAF_BLOWER(3),
|
||||||
WOODCUTTING_NATURES_BOUNTY(3),
|
WOODCUTTING_NATURES_BOUNTY(3),
|
||||||
WOODCUTTING_SPLINTER(3),
|
WOODCUTTING_SPLINTER(3),
|
||||||
WOODCUTTING_HARVEST_LUMBER(1);
|
WOODCUTTING_TREE_FELLER(5),
|
||||||
|
|
||||||
private final int numRanks;
|
private final int numRanks;
|
||||||
//TODO: SuperAbilityType should also contain flags for active by default? Not sure if it should work that way.
|
//TODO: SuperAbilityType should also contain flags for active by default? Not sure if it should work that way.
|
||||||
|
Loading…
Reference in New Issue
Block a user