nossr50 14 лет назад
Родитель
Сommit
2caa7bfbb0

+ 11 - 0
mcMMO/Changelog.txt

@@ -1,5 +1,16 @@
 Changelog:
 #Versions without changelogs probably had very small misc fixes, like tweaks to the source code#
+Version 0.8.14
+	Mining, Woodcutting, Herbalism, and Acrobatics proc rates now are based on your skill level directly rather than tiers you unlock via skill levels
+	Archery's ability to retrieve arrows from corpses now is based on your skill level directly rather than tiers you unlock via skill levels
+	Mining, Woodcutting, Herbalism, Archery, and Acrobatics now show their proc % relative to your skill if you type /<skillname>
+	You can now adjust what level is required to repair diamond in the configuration file
+	Changed mining XP rates to be a tad higher for some things
+	You can now get XP from sandstone
+	XP rates increased for gathering glowstone with excavation
+	XP rates increased a bit for excavation
+	Skill info is now a bit more detailed for certain skills
+	Added info about arrow retrieval to /archery
 Version 0.8.13
 	Enemies no longer look like they have frozen when they die
 	Item duping fix

+ 3 - 38
mcMMO/com/gmail/nossr50/mcAcrobatics.java

@@ -14,53 +14,18 @@ public class mcAcrobatics {
     	return instance;
     	}
 	public void acrobaticsCheck(Player player, EntityDamageEvent event, Location loc, int xx, int y, int z){
-    	if(player != null && mcUsers.getProfile(player).getAcrobaticsInt() >= 50 
-				&& mcUsers.getProfile(player).getAcrobaticsInt() < 250
-				&& mcPermissions.getInstance().acrobatics(player)){
-			if(Math.random() * 10 > 8){
-				event.setCancelled(true);
-				player.sendMessage("**ROLLED**");
-				return;
-			}
-		}
-		if(player != null && mcUsers.getProfile(player).getAcrobaticsInt() >= 250 
-				&& mcUsers.getProfile(player).getAcrobaticsInt() < 450 
-				&& mcPermissions.getInstance().acrobatics(player)){
-			if(Math.random() * 10 > 6){
-				event.setCancelled(true);
-				player.sendMessage("**ROLLED**");
-				return;
-			}
-		}
-		if(player != null && mcUsers.getProfile(player).getAcrobaticsInt() >= 450 
-				&& mcUsers.getProfile(player).getAcrobaticsInt() < 750 
-				&& mcPermissions.getInstance().acrobatics(player)){
-			if(Math.random() * 10 > 4){
+    	if(player != null){
+			if(Math.random() * 1000 <= mcUsers.getProfile(player).getAcrobaticsInt()){
 				event.setCancelled(true);
 				player.sendMessage("**ROLLED**");
 				return;
 			}
 		}
-		if(player != null && mcUsers.getProfile(player).getAcrobaticsInt() >= 750 
-				&& mcUsers.getProfile(player).getAcrobaticsInt() < 950 
-				&& mcPermissions.getInstance().acrobatics(player)){
-			if(Math.random() * 10 > 2){
-				event.setCancelled(true);
-				player.sendMessage("**BARREL ROLLED**");
-				return;
-			}
-		}
-		if(player != null && mcUsers.getProfile(player).getAcrobaticsInt() >= 950
-				&& mcPermissions.getInstance().acrobatics(player)){
-				event.setCancelled(true);
-				player.sendMessage("**ROLLED... LIKE A BOSS**");
-				return;
-			}
 		if(player != null && player.getHealth() - event.getDamage() <= 0)
 			return;
 		if(!mcConfig.getInstance().isBlockWatched(loc.getWorld().getBlockAt(xx, y, z)) 
 				&& mcPermissions.getInstance().acrobatics(player)){
-		mcUsers.getProfile(player).addAcrobaticsGather(event.getDamage() * 3);
+		mcUsers.getProfile(player).addAcrobaticsGather(event.getDamage() * 8);
 		if(player != null && mcUsers.getProfile(player).getAcrobaticsGatherInt() >= mcUsers.getProfile(player).getXpToLevel("acrobatics")){
 			int skillups = 0;
 			while(mcUsers.getProfile(player).getAcrobaticsGatherInt() >= mcUsers.getProfile(player).getXpToLevel("acrobatics")){

+ 0 - 1
mcMMO/com/gmail/nossr50/mcBlockListener.java

@@ -65,7 +65,6 @@ public class mcBlockListener extends BlockListener {
     				mcWoodCutting.getInstance().woodCuttingProcCheck(player, block, loc);
     				mcUsers.getProfile(player).addWoodcuttingGather(7);
     				if(mcPermissions.getInstance().woodcuttingability(player)){
-    					
     				}
     		}
     		/*

+ 7 - 35
mcMMO/com/gmail/nossr50/mcCombat.java

@@ -335,46 +335,18 @@ public class mcCombat {
     		if(event.getProjectile().toString().equals("CraftArrow") && mcPermissions.getInstance().archery(attacker)){
     			if(!mcConfig.getInstance().isTracked(x) && event.getDamage() > 0){
     				mcConfig.getInstance().addArrowTrack(x, 0);
-    				if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 200){
-    					if(Math.random() * 10 > 8){
+    				if(attacker != null){
+    					if(Math.random() * 1000 <= mcUsers.getProfile(attacker).getArcheryInt()){
     						mcConfig.getInstance().addArrowCount(x, 1);
     					}
-    				} else if(mcUsers.getProfile(attacker).getArcheryInt() >= 200 && mcUsers.getProfile(attacker).getArcheryInt() < 400){
-    					if(Math.random() * 10 > 6){
-    						mcConfig.getInstance().addArrowCount(x, 1);
-    					}
-    				} else if(mcUsers.getProfile(attacker).getArcheryInt() >= 400 && mcUsers.getProfile(attacker).getArcheryInt() < 600){
-    					if(Math.random() * 10 > 4){
-    						mcConfig.getInstance().addArrowCount(x, 1);
-    					}
-    				} else if(mcUsers.getProfile(attacker).getArcheryInt() >= 600 && mcUsers.getProfile(attacker).getArcheryInt() < 800){
-    					if(Math.random() * 10 > 2){
-    						mcConfig.getInstance().addArrowCount(x, 1);
-    					}
-    				} else if(mcUsers.getProfile(attacker).getArcheryInt() >= 800){
-    						mcConfig.getInstance().addArrowCount(x, 1);
     				}
     			} else {
     				if(event.getDamage() > 0){
-    				if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 200){
-    					if(Math.random() * 10 > 8){
-    						mcConfig.getInstance().addArrowCount(x, 1);
-    					}
-    				} else if(mcUsers.getProfile(attacker).getArcheryInt() >= 200 && mcUsers.getProfile(attacker).getArcheryInt() < 400){
-    					if(Math.random() * 10 > 6){
-    						mcConfig.getInstance().addArrowCount(x, 1);
-    					}
-    				} else if(mcUsers.getProfile(attacker).getArcheryInt() >= 400 && mcUsers.getProfile(attacker).getArcheryInt() < 600){
-    					if(Math.random() * 10 > 4){
-    						mcConfig.getInstance().addArrowCount(x, 1);
-    					}
-    				} else if(mcUsers.getProfile(attacker).getArcheryInt() >= 600 && mcUsers.getProfile(attacker).getArcheryInt() < 800){
-    					if(Math.random() * 10 > 2){
-    						mcConfig.getInstance().addArrowCount(x, 1);
-    					}
-    				} else if(mcUsers.getProfile(attacker).getArcheryInt() >= 800){
-    						mcConfig.getInstance().addArrowCount(x, 1);
-    				}
+    					if(attacker != null){
+        					if(Math.random() * 1000 <= mcUsers.getProfile(attacker).getArcheryInt()){
+        						mcConfig.getInstance().addArrowCount(x, 1);
+        					}
+        				}
     				}
     			}
     		/*

+ 4 - 4
mcMMO/com/gmail/nossr50/mcExcavation.java

@@ -43,7 +43,7 @@ public class mcExcavation {
     	}
     	//DIRT SAND OR GRAVEL
     	if(type == 3 || type == 13 || type == 2 || type == 12){
-    			mcUsers.getProfile(player).addExcavationGather(3);
+    			mcUsers.getProfile(player).addExcavationGather(4);
     		if(mcUsers.getProfile(player).getExcavationInt() > 750){
     			//CHANCE TO GET CAKE
     			if(mcLoadProperties.cake == true && Math.random() * 2000 > 1999){
@@ -86,14 +86,14 @@ public class mcExcavation {
     	if(type == 12){
     		//CHANCE TO GET GLOWSTONE
     		if(mcLoadProperties.glowstone == true && mcUsers.getProfile(player).getExcavationInt() > 50 && Math.random() * 100 > 95){
-    			mcUsers.getProfile(player).addExcavationGather(3);
+    			mcUsers.getProfile(player).addExcavationGather(8);
 				mat = Material.getMaterial(348);
 				is = new ItemStack(mat, 1, (byte)0, (byte)0);
 				loc.getWorld().dropItemNaturally(loc, is);
     		}
     		//CHANCE TO GET SLOWSAND
     		if(mcLoadProperties.slowsand == true && mcUsers.getProfile(player).getExcavationInt() > 650 && Math.random() * 200 > 199){
-    			mcUsers.getProfile(player).addExcavationGather(5);
+    			mcUsers.getProfile(player).addExcavationGather(8);
 				mat = Material.getMaterial(88);
 				is = new ItemStack(mat, 1, (byte)0, (byte)0);
 				loc.getWorld().dropItemNaturally(loc, is);
@@ -110,7 +110,7 @@ public class mcExcavation {
     	if((type == 2 || type == 3) && mcUsers.getProfile(player).getExcavationInt() > 25){
     		//CHANCE TO GET GLOWSTONE
     		if(mcLoadProperties.glowstone == true && Math.random() * 100 > 95){
-    			mcUsers.getProfile(player).addExcavationGather(5);
+    			mcUsers.getProfile(player).addExcavationGather(8);
     			mat = Material.getMaterial(348);
 				is = new ItemStack(mat, 1, (byte)0, (byte)0);
 				loc.getWorld().dropItemNaturally(loc, is);

+ 4 - 17
mcMMO/com/gmail/nossr50/mcHerbalism.java

@@ -24,33 +24,20 @@ public class mcHerbalism {
     	Location loc = block.getLocation();
     	ItemStack is = null;
     	Material mat = null;
-    	//player.sendMessage("mcMMO DEBUG: Data ("+block.getData()+")"+" TYPEID ("+block.getTypeId()+")");
     	if(type == 59 && block.getData() == (byte) 0x7){
     		mat = Material.getMaterial(296);
 			is = new ItemStack(mat, 1, (byte)0, (byte)0);
     		mcUsers.getProfile(player).addHerbalismGather(5);
-    		if(mcUsers.getProfile(player).getHerbalismInt() >= 50 && mcUsers.getProfile(player).getHerbalismInt() < 150){
-    		if(Math.random() * 10 > 8)
-			loc.getWorld().dropItemNaturally(loc, is);
-    		}
-    		if(mcUsers.getProfile(player).getHerbalismInt() >= 150 && mcUsers.getProfile(player).getHerbalismInt() < 350 ){
-    			if(Math.random() * 10 > 6)
-    				loc.getWorld().dropItemNaturally(loc, is);
-    		}
-    		if(mcUsers.getProfile(player).getHerbalismInt() >= 350 && mcUsers.getProfile(player).getHerbalismInt() < 500 ){
-    			if(Math.random() * 10 > 4)
-    				loc.getWorld().dropItemNaturally(loc, is);
-    		}
-    		if(mcUsers.getProfile(player).getHerbalismInt() >= 500 && mcUsers.getProfile(player).getHerbalismInt() < 750 ){
-    			if(Math.random() * 10 > 2)
-    				loc.getWorld().dropItemNaturally(loc, is);
+    		if(player != null){
+	    		if(Math.random() * 1000 <= mcUsers.getProfile(player).getHerbalismInt()){
+	    			loc.getWorld().dropItemNaturally(loc, is);
+	    		}
     		}
     	}
     	/*
     	 * We need to check not-wheat stuff for if it was placed by the player or not
     	 */
     	if(!mcConfig.getInstance().isBlockWatched(block)){
-    		//player.sendMessage("DEBUG CODE 2");
     	if(type == 39 || type == 40){
     			mcUsers.getProfile(player).addHerbalismGather(10);
     		}

+ 2 - 1
mcMMO/com/gmail/nossr50/mcLoadProperties.java

@@ -3,13 +3,14 @@ package com.gmail.nossr50;
 public class mcLoadProperties {
 	public static Boolean pvp, eggs, apples, myspawnclearsinventory, cake, music, diamond, glowstone, slowsand, sulphur, netherrack, bones, coal, clay, anvilmessages;
 	public static String mcmmo, mcc, mcgod, stats, mmoedit, ptp, party, myspawn, setmyspawn, whois, invite, accept, clearmyspawn;
-	public static int globalxpmodifier, miningxpmodifier, repairxpmodifier, woodcuttingxpmodifier, unarmedxpmodifier, herbalismxpmodifier, excavationxpmodifier, archeryxpmodifier, swordsxpmodifier, axesxpmodifier, acrobaticsxpmodifier;
+	public static int repairdiamondlevel, globalxpmodifier, miningxpmodifier, repairxpmodifier, woodcuttingxpmodifier, unarmedxpmodifier, herbalismxpmodifier, excavationxpmodifier, archeryxpmodifier, swordsxpmodifier, axesxpmodifier, acrobaticsxpmodifier;
 	
 	public static void loadMain(){
     	String propertiesFile = mcMMO.maindirectory + "mcmmo.properties";
     	mcProperties properties = new mcProperties(propertiesFile);
     	properties.load();
     	
+    	repairdiamondlevel = properties.getInteger("repairdiamondlevel", 50);
     	/*
     	 * EXPERIENCE RATE MODIFIER
     	 */

+ 6 - 28
mcMMO/com/gmail/nossr50/mcMining.java

@@ -62,43 +62,21 @@ public class mcMining {
 			}
     }
     public void blockProcCheck(Block block, Player player){
-    	if(mcUsers.getProfile(player).getMiningInt() > 2000){
-    		blockProcSimulate(block);
-			return;
-    	}
-    	if(mcUsers.getProfile(player).getMiningInt() > 1250){
-    		if((Math.random() * 10) > 2){
-    		blockProcSimulate(block);
-    		return;
-    		}
-    	}
-    	if(mcUsers.getProfile(player).getMiningInt() > 750){
-    		if((Math.random() * 10) > 4){
-    		blockProcSimulate(block);
-			return;
-    		}
-    	}
-    	if(mcUsers.getProfile(player).getMiningInt() > 150){
-    		if((Math.random() * 10) > 6){
-    		blockProcSimulate(block);
-			return;
-    		}
-    	}
-    	if(mcUsers.getProfile(player).getMiningInt() > 25){
-    		if((Math.random() * 10) > 8){
+    	if(player != null){
+    		if(Math.random() * 1000 >= mcUsers.getProfile(player).getMiningInt()){
     		blockProcSimulate(block);
 			return;
     		}
     	}		
 	}
     public void miningBlockCheck(Player player, Block block){
-    	if(block.getTypeId() == 1){
-    		mcUsers.getProfile(player).addMiningGather(1);
+    	if(block.getTypeId() == 1 || block.getTypeId() == 24){
+    		mcUsers.getProfile(player).addMiningGather(3);
     		blockProcCheck(block, player);
     		}
     		//COAL
     		if(block.getTypeId() == 16){
-    		mcUsers.getProfile(player).addMiningGather(5);
+    		mcUsers.getProfile(player).addMiningGather(10);
     		blockProcCheck(block, player);
     		}
     		//GOLD
@@ -113,7 +91,7 @@ public class mcMining {
     		}
     		//IRON
     		if(block.getTypeId() == 15){
-    		mcUsers.getProfile(player).addMiningGather(20);
+    		mcUsers.getProfile(player).addMiningGather(25);
     		blockProcCheck(block, player);
     		}
     		//REDSTONE

+ 6 - 21
mcMMO/com/gmail/nossr50/mcRepair.java

@@ -28,7 +28,7 @@ public class mcRepair {
         			/*
         			 * DIAMOND ARMOR
         			 */
-        			if(isDiamondArmor(is) && hasDiamond(player) && mcUsers.getProfile(player).getRepairInt() >= 50){
+        			if(isDiamondArmor(is) && hasDiamond(player) && mcUsers.getProfile(player).getRepairInt() >= mcLoadProperties.repairdiamondlevel){
 	        			removeDiamond(player);
 	        			player.getItemInHand().setDurability(getArmorRepairAmount(is, player));
 	        			mcUsers.getProfile(player).addRepairGather(75);
@@ -59,7 +59,7 @@ public class mcRepair {
             			is.setDurability(getToolRepairAmount(is, player));
             			removeIron(player);
             			mcUsers.getProfile(player).addRepairGather(20);
-            		} else if (isDiamondTools(is) && hasDiamond(player) && mcUsers.getProfile(player).getRepairInt() >= 50){ //Check if its diamond and the player has diamonds
+            		} else if (isDiamondTools(is) && hasDiamond(player) && mcUsers.getProfile(player).getRepairInt() >= mcLoadProperties.repairdiamondlevel){ //Check if its diamond and the player has diamonds
             			/*
             			 * DIAMOND TOOLS
             			 */
@@ -327,7 +327,7 @@ public class mcRepair {
 			return durability;
     }
     public void needMoreVespeneGas(ItemStack is, Player player){
-    	if ((isDiamondTools(is) || isDiamondArmor(is)) && mcUsers.getProfile(player).getRepairInt() < 50){
+    	if ((isDiamondTools(is) || isDiamondArmor(is)) && mcUsers.getProfile(player).getRepairInt() < mcLoadProperties.repairdiamondlevel){
 			player.sendMessage(ChatColor.DARK_RED +"You're not adept enough to repair Diamond");
 		} else if (isDiamondTools(is) && !hasDiamond(player) || isIronTools(is) && !hasIron(player) || isGoldTools(is) && !hasGold(player)){
 			if(isDiamondTools(is) && !hasDiamond(player))
@@ -345,27 +345,12 @@ public class mcRepair {
 			player.sendMessage(ChatColor.DARK_RED+"You need more "+ChatColor.GOLD+"Gold");
 		}
     public boolean checkPlayerProcRepair(Player player){
-		if(mcUsers.getProfile(player).getRepairInt() >= 750){
-			if(Math.random() * 10 > 2){
-				player.sendMessage(ChatColor.GRAY + "That took no effort.");
-				return true;
-			}
-		} else if (mcUsers.getProfile(player).getRepairInt() >= 450 && mcUsers.getProfile(player).getRepairInt() < 750){
-			if(Math.random() * 10 > 4){
-				player.sendMessage(ChatColor.GRAY + "That felt really easy.");
-				return true;
-			}
-		} else if (mcUsers.getProfile(player).getRepairInt() >= 150 && mcUsers.getProfile(player).getRepairInt() < 450){
-			if(Math.random() * 10 > 6){
-				player.sendMessage(ChatColor.GRAY + "That felt pretty easy.");
-				return true;
-			}
-		} else if (mcUsers.getProfile(player).getRepairInt() >= 50  && mcUsers.getProfile(player).getRepairInt() < 150){
-			if(Math.random() * 10 > 8){
+		if(player != null){
+			if(Math.random() * 1000 <= mcUsers.getProfile(player).getRepairInt()){
 				player.sendMessage(ChatColor.GRAY + "That felt easy.");
 				return true;
 			}
 		}
 		return false;
-}
+    }
 }

+ 3 - 29
mcMMO/com/gmail/nossr50/mcWoodCutting.java

@@ -22,39 +22,13 @@ public class mcWoodCutting {
     	byte type = block.getData();
     	Material mat = Material.getMaterial(block.getTypeId());
     	byte damage = 0;
-    	if(mcUsers.getProfile(player).getWoodCuttingInt() > 1000){
+    	if(player != null){
+    		if(Math.random() * 1000 <= mcUsers.getProfile(player).getWoodCuttingInt()){
 			ItemStack item = new ItemStack(mat, 1, type, damage);
 			loc.getWorld().dropItemNaturally(loc, item);
 			return;
+    		}
     	}
-    	if(mcUsers.getProfile(player).getWoodCuttingInt() > 750){
-			if((Math.random() * 10) > 2){
-				ItemStack item = new ItemStack(mat, 1, type, damage);
-				loc.getWorld().dropItemNaturally(loc, item);
-				return;
-			}
-    	}
-	if(mcUsers.getProfile(player).getWoodCuttingInt() > 300){
-		if((Math.random() * 10) > 4){
-			ItemStack item = new ItemStack(mat, 1, type, damage);
-			loc.getWorld().dropItemNaturally(loc, item);
-			return;
-		}
-	}
-	if(mcUsers.getProfile(player).getWoodCuttingInt() > 100){
-		if((Math.random() * 10) > 6){
-			ItemStack item = new ItemStack(mat, 1, type, damage);
-			loc.getWorld().dropItemNaturally(loc, item);
-			return;
-		}
-	}
-	if(mcUsers.getProfile(player).getWoodCuttingInt() > 10){
-		if((Math.random() * 10) > 8){
-			ItemStack item = new ItemStack(mat, 1, type, damage);
-			loc.getWorld().dropItemNaturally(loc, item);
-			return;
-		}
-	}
     }
     public void treeFeller(Block block){
     	Location loc = block.getLocation();

+ 26 - 1
mcMMO/com/gmail/nossr50/mcm.java

@@ -220,19 +220,28 @@ public class mcm {
     public void mcmmoHelpCheck(String[] split, Player player, PlayerChatEvent event){
     	if(split[0].equalsIgnoreCase("/woodcutting")){
 			event.setCancelled(true);
+			float skillvalue = (float)mcUsers.getProfile(player).getWoodCuttingInt();
+    		String percentage = String.valueOf((skillvalue / 1000) * 100);
 			player.sendMessage(ChatColor.RED+"-----[]"+ChatColor.GREEN+"WOODCUTTING"+ChatColor.RED+"[]-----");
 			player.sendMessage(ChatColor.DARK_GRAY+"XP GAIN: "+ChatColor.WHITE+"Chopping down trees");
 			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"EFFECTS"+ChatColor.RED+"[]---");
-			player.sendMessage(ChatColor.DARK_AQUA+"Double Drops: "+ChatColor.GREEN+"Double the normal loot");
+			player.sendMessage(ChatColor.DARK_AQUA+"Double Drops: "+ChatColor.YELLOW+ChatColor.GREEN+"Double the normal loot");
+			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"YOUR STATS"+ChatColor.RED+"[]---");
+			player.sendMessage(ChatColor.RED+"Double Drop Chance: "+ChatColor.YELLOW+percentage+"%");
     	}
     	if(split[0].equalsIgnoreCase("/archery")){
 			event.setCancelled(true);
+			float skillvalue = (float)mcUsers.getProfile(player).getArcheryInt();
+    		String percentage = String.valueOf((skillvalue / 1000) * 100);
 			player.sendMessage(ChatColor.RED+"-----[]"+ChatColor.GREEN+"ARCHERY"+ChatColor.RED+"[]-----");
 			player.sendMessage(ChatColor.DARK_GRAY+"XP GAIN: "+ChatColor.WHITE+"Attacking Monsters");
 			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"EFFECTS"+ChatColor.RED+"[]---");
 			//player.sendMessage(ChatColor.DARK_AQUA+"Daze (Monsters): "+ChatColor.GREEN+"Enemies lose interest for 1 second");
 			player.sendMessage(ChatColor.DARK_AQUA+"Daze (Players): "+ChatColor.GREEN+"Disorients foes");
 			player.sendMessage(ChatColor.DARK_AQUA+"Damage+: "+ChatColor.GREEN+"Modifies Damage");
+			player.sendMessage(ChatColor.DARK_AQUA+"Arrow Retrieval: "+ChatColor.GREEN+"Chance to retrieve arrows from corpses");
+			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"YOUR STATS"+ChatColor.RED+"[]---");
+			player.sendMessage(ChatColor.RED+"Chance to Retrieve Arrows: "+ChatColor.YELLOW+percentage+"%");
     	}
     	if(split[0].equalsIgnoreCase("/axes")){
 			event.setCancelled(true);
@@ -253,25 +262,37 @@ public class mcm {
     	}
     	if(split[0].equalsIgnoreCase("/acrobatics")){
 			event.setCancelled(true);
+			float skillvalue = (float)mcUsers.getProfile(player).getAcrobaticsInt();
+    		String percentage = String.valueOf((skillvalue / 1000) * 100);
 			player.sendMessage(ChatColor.RED+"-----[]"+ChatColor.GREEN+"ACROBATICS"+ChatColor.RED+"[]-----");
 			player.sendMessage(ChatColor.DARK_GRAY+"XP GAIN: "+ChatColor.WHITE+"Falling");
 			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"EFFECTS"+ChatColor.RED+"[]---");
 			player.sendMessage(ChatColor.DARK_AQUA+"Roll: "+ChatColor.GREEN+"Negates Damage");
+			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"YOUR STATS"+ChatColor.RED+"[]---");
+			player.sendMessage(ChatColor.RED+"Roll Chance: "+ChatColor.YELLOW+percentage+"%");
     	}
     	if(split[0].equalsIgnoreCase("/mining")){
+    		float skillvalue = (float)mcUsers.getProfile(player).getMiningInt();
+    		String percentage = String.valueOf((skillvalue / 1000) * 100);
 			event.setCancelled(true);
 			player.sendMessage(ChatColor.RED+"-----[]"+ChatColor.GREEN+"MINING"+ChatColor.RED+"[]-----");
 			player.sendMessage(ChatColor.DARK_GRAY+"XP GAIN: "+ChatColor.WHITE+"Mining Stone & Ore");
 			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"EFFECTS"+ChatColor.RED+"[]---");
 			player.sendMessage(ChatColor.DARK_AQUA+"Double Drops: "+ChatColor.GREEN+"Double the normal loot");
+			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"YOUR STATS"+ChatColor.RED+"[]---");
+			player.sendMessage(ChatColor.RED+"Double Drop Chance: "+ChatColor.YELLOW+percentage+"%");
     	}
     	if(split[0].equalsIgnoreCase("/repair")){
+    		float skillvalue = (float)mcUsers.getProfile(player).getRepairInt();
+    		String percentage = String.valueOf((skillvalue / 1000) * 100);
 			event.setCancelled(true);
 			player.sendMessage(ChatColor.RED+"-----[]"+ChatColor.GREEN+"REPAIR"+ChatColor.RED+"[]-----");
 			player.sendMessage(ChatColor.DARK_GRAY+"XP GAIN: "+ChatColor.WHITE+"Repairing");
 			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"EFFECTS"+ChatColor.RED+"[]---");
 			player.sendMessage(ChatColor.DARK_AQUA+"Repair: "+ChatColor.GREEN+"Repair Iron Tools & Armor");
 			player.sendMessage(ChatColor.DARK_AQUA+"Diamond Repair (50+ SKILL): "+ChatColor.GREEN+"Repair Diamond Tools & Armor");
+			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"YOUR STATS"+ChatColor.RED+"[]---");
+			player.sendMessage(ChatColor.RED+"Super Repair Chance: "+ChatColor.YELLOW+percentage+"%");
     	}
     	if(split[0].equalsIgnoreCase("/unarmed")){
 			event.setCancelled(true);
@@ -283,11 +304,15 @@ public class mcm {
     	}
     	if(split[0].equalsIgnoreCase("/herbalism")){
 			event.setCancelled(true);
+			float skillvalue = (float)mcUsers.getProfile(player).getHerbalismInt();
+    		String percentage = String.valueOf((skillvalue / 1000) * 100);
 			player.sendMessage(ChatColor.RED+"-----[]"+ChatColor.GREEN+"HERBALISM"+ChatColor.RED+"[]-----");
 			player.sendMessage(ChatColor.DARK_GRAY+"XP GAIN: "+ChatColor.WHITE+"Harvesting Herbs");
 			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"EFFECTS"+ChatColor.RED+"[]---");
 			player.sendMessage(ChatColor.DARK_AQUA+"Food+: "+ChatColor.GREEN+"Modifies health received from bread/stew");
 			player.sendMessage(ChatColor.DARK_AQUA+"Double Drops (Wheat): "+ChatColor.GREEN+"Double the normal loot");
+			player.sendMessage(ChatColor.RED+"---[]"+ChatColor.GREEN+"YOUR STATS"+ChatColor.RED+"[]---");
+			player.sendMessage(ChatColor.RED+"Double Drop Chance: "+percentage+"%");
     	}
     	if(split[0].equalsIgnoreCase("/excavation")){
 

+ 1 - 1
mcMMO/plugin.yml

@@ -1,3 +1,3 @@
 name: mcMMO
 main: com.gmail.nossr50.mcMMO
-version: 0.8.13
+version: 0.8.14