mirror of
				https://github.com/mcMMO-Dev/mcMMO.git
				synced 2025-11-04 11:03:43 +01:00 
			
		
		
		
	Merge pull request #52 from gmcferrin/master
Arcane Forging Configuration
This commit is contained in:
		@@ -28,7 +28,7 @@ public class LoadProperties
 | 
			
		||||
	whoisEnable, statsEnable, addxpEnable, ptpEnable, mmoeditEnable, clearmyspawnEnable, mcgodEnable, mcabilityEnable, mctopEnable, 
 | 
			
		||||
	mcrefreshEnable, enableMotd, enableMySpawn, enableRegen, enableCobbleToMossy, useMySQL, cocoabeans, mushrooms, 
 | 
			
		||||
	toolsLoseDurabilityFromAbilities, pvpxp, miningrequirespickaxe, excavationRequiresShovel, woodcuttingrequiresaxe, eggs, apples, cake, music, diamond, glowstone, 
 | 
			
		||||
	slowsand, sulphur, netherrack, bones, coal, clay, anvilmessages;
 | 
			
		||||
	slowsand, sulphur, netherrack, bones, coal, clay, anvilmessages, mayDowngradeEnchants, mayLoseEnchants;
 | 
			
		||||
	
 | 
			
		||||
	public static String xplock, MySQLtablePrefix, MySQLuserName, MySQLserverName, MySQLdbName, MySQLdbPass, mctop, addxp,
 | 
			
		||||
	xprate, mcability, mcmmo, mcc, mcrefresh, mcgod, stats, mmoedit, ptp, party, myspawn, whois, invite, accept, clearmyspawn, nWood,
 | 
			
		||||
@@ -40,7 +40,8 @@ public class LoadProperties
 | 
			
		||||
	msugar, mpumpkin, mwheat, mgold, mdiamond, miron, mredstone, mlapis, mobsidian, mnetherrack, mglowstone, mcoal, mstone, MySQLport,
 | 
			
		||||
	xpGainMultiplier, superBreakerCooldown, greenTerraCooldown, gigaDrillBreakerCooldown, treeFellerCooldown,
 | 
			
		||||
	berserkCooldown, serratedStrikeCooldown, skullSplitterCooldown, abilityDurabilityLoss,
 | 
			
		||||
	feathersConsumedByChimaeraWing, bonesConsumedByCOTW, repairdiamondlevel, rWood, rStone, rIron, rGold, rDiamond, rString, rLeather;
 | 
			
		||||
	feathersConsumedByChimaeraWing, bonesConsumedByCOTW, repairdiamondlevel, rWood, rStone, rIron, rGold, rDiamond, rString, rLeather,
 | 
			
		||||
	downgradeRank1, downgradeRank2, downgradeRank3, downgradeRank4, keepEnchantsRank1, keepEnchantsRank2, keepEnchantsRank3, keepEnchantsRank4;
 | 
			
		||||
	
 | 
			
		||||
	public static double xpbackground_r, xpbackground_g, xpbackground_b, xpborder_r, xpborder_g, xpborder_b, fishing_r, fishing_g, fishing_b, acrobatics_r, acrobatics_g, acrobatics_b, archery_r, archery_g, archery_b, axes_r, axes_g, axes_b,
 | 
			
		||||
	excavation_r, excavation_g, excavation_b, herbalism_r, herbalism_g, herbalism_b, mining_r, mining_g, mining_b,
 | 
			
		||||
@@ -221,7 +222,7 @@ public class LoadProperties
 | 
			
		||||
	    	write("Experience.Mining.Diamond", 750);
 | 
			
		||||
	    	write("Experience.Mining.Iron", 250);
 | 
			
		||||
	    	write("Experience.Mining.Redstone", 150);
 | 
			
		||||
	    	write("Experience.Mining.lapis", 400);
 | 
			
		||||
	    	write("Experience.Mining.Lapis", 400);
 | 
			
		||||
	    	write("Experience.Mining.Obsidian", 150);
 | 
			
		||||
	    	write("Experience.Mining.Netherrack", 30);
 | 
			
		||||
	    	write("Experience.Mining.Glowstone", 30);
 | 
			
		||||
@@ -352,6 +353,16 @@ public class LoadProperties
 | 
			
		||||
	    	write("Skills.Woodcutting.Requires_Axe", true);
 | 
			
		||||
	    	write("Skills.Taming.Call_Of_The_Wild.Bones_Required", 10);
 | 
			
		||||
	    	
 | 
			
		||||
		write("Arcane_Forging.Downgrades.Enabled", true);
 | 
			
		||||
	        write("Arcane_Forging.Downgrades.Chance.Rank_1", 75);
 | 
			
		||||
	        write("Arcane_Forging.Downgrades.Chance.Rank_2", 50);
 | 
			
		||||
	        write("Arcane_Forging.Downgrades.Chance.Rank_3", 25);
 | 
			
		||||
	        write("Arcane_Forging.Downgrades.Chance.Rank_4", 15);
 | 
			
		||||
	        write("Arcane_Forging.May_Lose_Enchants.Enabled", true);
 | 
			
		||||
	    	write("Arcane_Forging.Keep_Enchants.Chance.Rank_1", 10);
 | 
			
		||||
	        write("Arcane_Forging.Keep_Enchants.Chance.Rank_2", 20);
 | 
			
		||||
	        write("Arcane_Forging.Keep_Enchants.Chance.Rank_3", 30);
 | 
			
		||||
	        write("Arcane_Forging.Keep_Enchants.Chance.Rank_4", 40);
 | 
			
		||||
	    	loadkeys();
 | 
			
		||||
	    }
 | 
			
		||||
	    private void loadkeys()
 | 
			
		||||
@@ -550,6 +561,17 @@ public class LoadProperties
 | 
			
		||||
	        rLeather = readInteger("Skills.Repair.Leather.ID", 334);
 | 
			
		||||
	        nLeather = readString("Skills.Repair.String.Name", "Leather");
 | 
			
		||||
 | 
			
		||||
		mayDowngradeEnchants = readBoolean("Arcane_Forging.Downgrades.Enabled", true);
 | 
			
		||||
	        downgradeRank1 = readInteger("Arcane_Forging.Downgrades.Chance.Rank_1", 75);
 | 
			
		||||
	        downgradeRank2 = readInteger("Arcane_Forging.Downgrades.Chance.Rank_2", 50);
 | 
			
		||||
	        downgradeRank3 = readInteger("Arcane_Forging.Downgrades.Chance.Rank_3", 25);
 | 
			
		||||
	        downgradeRank4 = readInteger("Arcane_Forging.Downgrades.Chance.Rank_4", 15);
 | 
			
		||||
	        mayLoseEnchants = readBoolean("Arcane_Forging.May_Lose_Enchants.Enabled", true);
 | 
			
		||||
	    	keepEnchantsRank1 = readInteger("Arcane_Forging.Keep_Enchants.Chance.Rank_1", 10);
 | 
			
		||||
	        keepEnchantsRank2 = readInteger("Arcane_Forging.Keep_Enchants.Chance.Rank_2", 20);
 | 
			
		||||
	        keepEnchantsRank3 = readInteger("Arcane_Forging.Keep_Enchants.Chance.Rank_3", 30);
 | 
			
		||||
	        keepEnchantsRank4 = readInteger("Arcane_Forging.Keep_Enchants.Chance.Rank_4", 40);
 | 
			
		||||
	        
 | 
			
		||||
	    	cocoabeans = readBoolean("Excavation.Drops.Cocoa_Beans", true);
 | 
			
		||||
	    	mushrooms = readBoolean("Excavation.Drops.Mushrooms", true);
 | 
			
		||||
	    	glowstone = readBoolean("Excavation.Drops.Glowstone", true);
 | 
			
		||||
 
 | 
			
		||||
@@ -315,44 +315,53 @@ public class Repair {
 | 
			
		||||
 | 
			
		||||
		if(rank == 0)
 | 
			
		||||
		{
 | 
			
		||||
			player.sendMessage(mcLocale.getString("Repair.LostEnchants"));
 | 
			
		||||
			for(Enchantment x : enchants)
 | 
			
		||||
			if(LoadProperties.mayLoseEnchants())
 | 
			
		||||
			{
 | 
			
		||||
				is.removeEnchantment(x);
 | 
			
		||||
				player.sendMessage(mcLocale.getString("Repair.LostEnchants"));
 | 
			
		||||
				for(Enchantment x : enchants)
 | 
			
		||||
				{
 | 
			
		||||
					is.removeEnchantment(x);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		boolean failure = false, downgrade = false;
 | 
			
		||||
 | 
			
		||||
		for(Enchantment x : enchants)
 | 
			
		||||
		if(LoadProperties.mayLoseEnchants())
 | 
			
		||||
		{
 | 
			
		||||
			//Remove enchant
 | 
			
		||||
			is.removeEnchantment(x);
 | 
			
		||||
 | 
			
		||||
			if(x.canEnchantItem(is))
 | 
			
		||||
			for(Enchantment x : enchants)
 | 
			
		||||
			{
 | 
			
		||||
				if(Math.random() * 100 <= getEnchantChance(rank))
 | 
			
		||||
				//Remove enchant
 | 
			
		||||
				is.removeEnchantment(x);
 | 
			
		||||
	
 | 
			
		||||
				if(x.canEnchantItem(is))
 | 
			
		||||
				{
 | 
			
		||||
					if(enchantsLvl[pos] > 1)
 | 
			
		||||
					if(Math.random() * 100 <= getEnchantChance(rank))
 | 
			
		||||
					{
 | 
			
		||||
						if(Math.random() * 100 <= getDowngradeChance(rank))
 | 
			
		||||
						{
 | 
			
		||||
							is.addEnchantment(x, enchantsLvl[pos]-1);
 | 
			
		||||
							downgrade = true;
 | 
			
		||||
						} else
 | 
			
		||||
						if(enchantsLvl[pos] > 1)
 | 
			
		||||
						{
 | 
			
		||||
							if(LoadProperties.mayDowngradeEnchants())
 | 
			
		||||
							{
 | 
			
		||||
								if(Math.random() * 100 <= getDowngradeChance(rank))
 | 
			
		||||
								{
 | 
			
		||||
									is.addEnchantment(x, enchantsLvl[pos]-1);
 | 
			
		||||
									downgrade = true;
 | 
			
		||||
								} else
 | 
			
		||||
								{
 | 
			
		||||
									is.addEnchantment(x, enchantsLvl[pos]);
 | 
			
		||||
								}
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
						else {
 | 
			
		||||
							is.addEnchantment(x, enchantsLvl[pos]);
 | 
			
		||||
						}
 | 
			
		||||
					} else {
 | 
			
		||||
						failure = true;	
 | 
			
		||||
					}
 | 
			
		||||
					else {
 | 
			
		||||
						is.addEnchantment(x, enchantsLvl[pos]);
 | 
			
		||||
					}
 | 
			
		||||
				} else {
 | 
			
		||||
					failure = true;	
 | 
			
		||||
				}
 | 
			
		||||
				pos++;
 | 
			
		||||
			}
 | 
			
		||||
			pos++;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		if(failure == false && downgrade == false)
 | 
			
		||||
@@ -369,13 +378,13 @@ public class Repair {
 | 
			
		||||
		switch(rank)
 | 
			
		||||
		{
 | 
			
		||||
		case 4:
 | 
			
		||||
			return 40;
 | 
			
		||||
			return LoadProperties.keepEnchantsRank4;
 | 
			
		||||
		case 3:
 | 
			
		||||
			return 30;
 | 
			
		||||
			return LoadProperties.keepEnchantsRank3;
 | 
			
		||||
		case 2:
 | 
			
		||||
			return 20;
 | 
			
		||||
			return LoadProperties.keepEnchantsRank2;
 | 
			
		||||
		case 1:
 | 
			
		||||
			return 10;
 | 
			
		||||
			return LoadProperties.keepEnchantsRank1;
 | 
			
		||||
		default:
 | 
			
		||||
			return 0;
 | 
			
		||||
		}
 | 
			
		||||
@@ -385,13 +394,13 @@ public class Repair {
 | 
			
		||||
		switch(rank)
 | 
			
		||||
		{
 | 
			
		||||
		case 4:
 | 
			
		||||
			return 15;
 | 
			
		||||
			return LoadProperties.downgradeRank4;
 | 
			
		||||
		case 3:
 | 
			
		||||
			return 25;
 | 
			
		||||
			return LoadProperties.downgradeRank3;
 | 
			
		||||
		case 2:
 | 
			
		||||
			return 50;
 | 
			
		||||
			return LoadProperties.downgradeRank2;
 | 
			
		||||
		case 1:
 | 
			
		||||
			return 75;
 | 
			
		||||
			return LoadProperties.downgradeRank1;
 | 
			
		||||
		default:
 | 
			
		||||
			return 100;
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user