| 
					
				 | 
			
			
				@@ -15,11 +15,13 @@ public class FishingCommand extends SkillCommand { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private String shakeChance; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private String shakeChanceLucky; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private int fishermansDietRank; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private String biteChance; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private boolean canTreasureHunt; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private boolean canMagicHunt; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private boolean canShake; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private boolean canFishermansDiet; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private boolean canMasterAngler; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public FishingCommand() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         super(SkillType.FISHING); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -27,12 +29,14 @@ public class FishingCommand extends SkillCommand { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     protected void dataCalculations() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        boolean isStorming = player.getWorld().hasStorm(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // TREASURE HUNTER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (canTreasureHunt) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             lootTier = mcMMOPlayer.getFishingManager().getLootTier(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             double enchantChance = lootTier * AdvancedConfig.getInstance().getFishingMagicMultiplier(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (player.getWorld().hasStorm()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (isStorming) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 chanceRaining = LocaleLoader.getString("Fishing.Chance.Raining"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 enchantChance *= 1.1D; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -53,6 +57,11 @@ public class FishingCommand extends SkillCommand { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (canFishermansDiet) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             fishermansDietRank = calculateRank(Fishing.fishermansDietMaxLevel, Fishing.fishermansDietRankLevel1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // MASTER ANGLER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (canMasterAngler) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            biteChance = calculateAbilityDisplayValues((skillValue / 4) / (isStorming ? 300 : 500))[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -61,11 +70,12 @@ public class FishingCommand extends SkillCommand { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         canMagicHunt = Permissions.magicHunter(player); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         canShake = Permissions.shake(player); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         canFishermansDiet = Permissions.fishermansDiet(player); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        canMasterAngler = Permissions.masterAngler(player); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     protected boolean effectsHeaderPermissions() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return canTreasureHunt || canMagicHunt || canShake; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return canTreasureHunt || canMagicHunt || canShake || canMasterAngler; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -87,15 +97,23 @@ public class FishingCommand extends SkillCommand { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (canFishermansDiet) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             player.sendMessage(LocaleLoader.getString("Effects.Template", LocaleLoader.getString("Fishing.Effect.6"), LocaleLoader.getString("Fishing.Effect.7"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (canMasterAngler) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            player.sendMessage(LocaleLoader.getString("Effects.Template", LocaleLoader.getString("Fishing.Effect.8"), LocaleLoader.getString("Fishing.Effect.9"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     protected boolean statsHeaderPermissions() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return canTreasureHunt || canMagicHunt || canShake; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return canTreasureHunt || canMagicHunt || canShake || canMasterAngler; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     protected void statsDisplay() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (canMasterAngler) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            player.sendMessage(LocaleLoader.getString("Fishing.Ability.Chance", biteChance)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (canTreasureHunt) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             player.sendMessage(LocaleLoader.getString("Fishing.Ability.Rank", lootTier)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 |