| 
					
				 | 
			
			
				@@ -0,0 +1,53 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package com.gmail.nossr50.config.hocon.playerleveling; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.gmail.nossr50.datatypes.experience.FormulaType; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import ninja.leaping.configurate.objectmapping.Setting; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import ninja.leaping.configurate.objectmapping.serialize.ConfigSerializable; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@ConfigSerializable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+public class ConfigExperienceFormula { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Setting(value = "Player-XP-Formula-Type", comment = "Determines which formula is used to determine XP needed to level" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            "\nDefault value: LINEAR") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private FormulaType formulaType = FormulaType.LINEAR; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Setting(value = "Linear-Formula-Settings", comment = "These settings are only used if you have your formula type set to Linear" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            "LINEAR Formula: base + (level * multiplier)") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private ConfigExperienceFormulaLinear configExperienceFormulaLinear = new ConfigExperienceFormulaLinear(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Setting(value = "Exponential-Formula-Settings", comment = "These settings are only used if you have your formula type set to Exponential" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            "\nEXPONENTIAL Formula: multiplier * level ^ exponent + base") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private ConfigExperienceFormulaExponential configExperienceFormulaExponential = new ConfigExperienceFormulaExponential(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public FormulaType getFormulaType() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return formulaType; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public ConfigExperienceFormulaLinear getConfigExperienceFormulaLinear() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return configExperienceFormulaLinear; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public ConfigExperienceFormulaExponential getConfigExperienceFormulaExponential() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return configExperienceFormulaExponential; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public int getExponentialBaseModifier() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return configExperienceFormulaExponential.getExponentialBaseModifier(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public double getExponentialMultiplier() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return configExperienceFormulaExponential.getExponentialMultiplier(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public double getExponentialExponent() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return configExperienceFormulaExponential.getExponentialExponent(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public int getLinearBaseModifier() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return configExperienceFormulaLinear.getLinearBaseModifier(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public double getLinearMultiplier() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return configExperienceFormulaLinear.getLinearMultiplier(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |