mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-25 14:46:46 +01:00
Taming XP values are now converted to an enum mpa and managed by ExperienceMapManager
This commit is contained in:
parent
06016f4ada
commit
e5441f2a96
@ -4,6 +4,7 @@ import com.gmail.nossr50.config.Unload;
|
|||||||
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
|
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
|
||||||
import com.gmail.nossr50.mcMMO;
|
import com.gmail.nossr50.mcMMO;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
|
import org.bukkit.entity.EntityType;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
||||||
@ -16,6 +17,7 @@ public class ExperienceMapManager implements Unload {
|
|||||||
private HashMap<String, Integer> herbalismFullyQualifiedBlockXpMap;
|
private HashMap<String, Integer> herbalismFullyQualifiedBlockXpMap;
|
||||||
private HashMap<String, Integer> woodcuttingFullyQualifiedBlockXpMap;
|
private HashMap<String, Integer> woodcuttingFullyQualifiedBlockXpMap;
|
||||||
private HashMap<String, Integer> excavationFullyQualifiedBlockXpMap;
|
private HashMap<String, Integer> excavationFullyQualifiedBlockXpMap;
|
||||||
|
private HashMap<EntityType, Integer> tamingExperienceMap;
|
||||||
|
|
||||||
private double globalXpMult;
|
private double globalXpMult;
|
||||||
|
|
||||||
@ -24,6 +26,7 @@ public class ExperienceMapManager implements Unload {
|
|||||||
herbalismFullyQualifiedBlockXpMap = new HashMap<>();
|
herbalismFullyQualifiedBlockXpMap = new HashMap<>();
|
||||||
woodcuttingFullyQualifiedBlockXpMap = new HashMap<>();
|
woodcuttingFullyQualifiedBlockXpMap = new HashMap<>();
|
||||||
excavationFullyQualifiedBlockXpMap = new HashMap<>();
|
excavationFullyQualifiedBlockXpMap = new HashMap<>();
|
||||||
|
tamingExperienceMap = new HashMap<>();
|
||||||
|
|
||||||
//Register with unloader
|
//Register with unloader
|
||||||
mcMMO.getConfigManager().registerUnloadable(this);
|
mcMMO.getConfigManager().registerUnloadable(this);
|
||||||
@ -43,6 +46,34 @@ public class ExperienceMapManager implements Unload {
|
|||||||
buildHerbalismBlockXPMap();
|
buildHerbalismBlockXPMap();
|
||||||
buildWoodcuttingBlockXPMap();
|
buildWoodcuttingBlockXPMap();
|
||||||
buildExcavationBlockXPMap();
|
buildExcavationBlockXPMap();
|
||||||
|
buildTamingXPMap();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Taming entries in the config are case insensitive, but for faster lookups we convert them to ENUMs
|
||||||
|
*/
|
||||||
|
private void buildTamingXPMap()
|
||||||
|
{
|
||||||
|
mcMMO.p.getLogger().info("Building Taming XP list...");
|
||||||
|
HashMap<String, Integer> userTamingConfigMap = mcMMO.getConfigManager().getConfigExperience().getTamingExperienceMap();
|
||||||
|
|
||||||
|
for(String s : userTamingConfigMap.keySet())
|
||||||
|
{
|
||||||
|
boolean matchFound = false;
|
||||||
|
for(EntityType entityType : EntityType.values())
|
||||||
|
{
|
||||||
|
if(entityType.toString().equalsIgnoreCase(s))
|
||||||
|
{
|
||||||
|
//Match!
|
||||||
|
matchFound = true;
|
||||||
|
tamingExperienceMap.put(entityType, userTamingConfigMap.get(s));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(!matchFound)
|
||||||
|
{
|
||||||
|
mcMMO.p.getLogger().info("Unable to find entity with matching name - "+s);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void fillBlockXPMap(HashMap<String, Integer> userConfigMap, HashMap<String, Integer> fullyQualifiedBlockXPMap)
|
private void fillBlockXPMap(HashMap<String, Integer> userConfigMap, HashMap<String, Integer> fullyQualifiedBlockXPMap)
|
||||||
|
Loading…
Reference in New Issue
Block a user