diff --git a/src/main/java/com/seodisparate/TurnBasedMinecraft/common/Config.java b/src/main/java/com/seodisparate/TurnBasedMinecraft/common/Config.java index 3a752c5..6421888 100644 --- a/src/main/java/com/seodisparate/TurnBasedMinecraft/common/Config.java +++ b/src/main/java/com/seodisparate/TurnBasedMinecraft/common/Config.java @@ -261,118 +261,108 @@ public class Config minimumHitPercentage = 1; } } - else if(xmlReader.getLocalName().equals("EntityStats")) + else if(xmlReader.getLocalName().equals("EntityEntry")) { + EntityInfo eInfo = new EntityInfo(); do { xmlReader.next(); if(xmlReader.isStartElement()) { - if(xmlReader.getLocalName().equals("Entry")) + if(xmlReader.getLocalName().equals("Name")) + { + try + { + eInfo.classType = Class.forName(xmlReader.getElementText()); + } catch (ClassNotFoundException e) + { + logger.error("Failed to get class of name " + xmlReader.getElementText()); + } + } + else if(xmlReader.getLocalName().equals("AttackPower")) + { + for(int i = 0; i < xmlReader.getAttributeCount(); ++i) + { + if(xmlReader.getAttributeLocalName(i).equals("Probability")) + { + eInfo.attackProbability = Integer.parseInt(xmlReader.getAttributeValue(i)); + } + else if(xmlReader.getAttributeLocalName(i).equals("Variance")) + { + eInfo.attackVariance = Integer.parseInt(xmlReader.getAttributeValue(i)); + } + } + eInfo.attackPower = Integer.parseInt(xmlReader.getElementText()); + } + else if(xmlReader.getLocalName().equals("AttackEffect")) + { + for(int i = 0; i < xmlReader.getAttributeCount(); ++i) + { + if(xmlReader.getAttributeLocalName(i).equals("Probability")) + { + eInfo.attackEffectProbability = Integer.parseInt(xmlReader.getAttributeValue(i)); + } + } + eInfo.attackEffect = EntityInfo.Effect.fromString(xmlReader.getElementText()); + } + else if(xmlReader.getLocalName().equals("Evasion")) + { + eInfo.evasion = Integer.parseInt(xmlReader.getElementText()); + } + else if(xmlReader.getLocalName().equals("DefenseDamage")) + { + for(int i = 0; i < xmlReader.getAttributeCount(); ++i) + { + if(xmlReader.getAttributeLocalName(i).equals("Probability")) + { + eInfo.defenseDamageProbability = Integer.parseInt(xmlReader.getAttributeValue(i)); + } + } + eInfo.defenseDamage = Integer.parseInt(xmlReader.getElementText()); + } + else if(xmlReader.getLocalName().equals("Category")) + { + eInfo.category = xmlReader.getElementText().toLowerCase(); + } + else if(xmlReader.getLocalName().equals("IgnoreBattle")) + { + if(xmlReader.getElementText().toLowerCase().equals("true")) + { + eInfo.ignoreBattle = true; + } + } + else if(xmlReader.getLocalName().equals("Speed")) + { + eInfo.speed = Integer.parseInt(xmlReader.getElementText()); + } + else if(xmlReader.getLocalName().equals("Decision")) { - EntityInfo eInfo = new EntityInfo(); do { xmlReader.next(); if(xmlReader.isStartElement()) { - if(xmlReader.getLocalName().equals("Name")) + if(xmlReader.getLocalName().equals("Attack")) { - try - { - eInfo.classType = Class.forName(xmlReader.getElementText()); - } catch (ClassNotFoundException e) - { - logger.error("Failed to get class of name " + xmlReader.getElementText()); - } + eInfo.decisionAttack = Integer.parseInt(xmlReader.getElementText()); } - else if(xmlReader.getLocalName().equals("AttackPower")) + else if(xmlReader.getLocalName().equals("Defend")) { - for(int i = 0; i < xmlReader.getAttributeCount(); ++i) - { - if(xmlReader.getAttributeLocalName(i).equals("Probability")) - { - eInfo.attackProbability = Integer.parseInt(xmlReader.getAttributeValue(i)); - } - else if(xmlReader.getAttributeLocalName(i).equals("Variance")) - { - eInfo.attackVariance = Integer.parseInt(xmlReader.getAttributeValue(i)); - } - } - eInfo.attackPower = Integer.parseInt(xmlReader.getElementText()); + eInfo.decisionDefend = Integer.parseInt(xmlReader.getElementText()); } - else if(xmlReader.getLocalName().equals("AttackEffect")) + else if(xmlReader.getLocalName().equals("Flee")) { - for(int i = 0; i < xmlReader.getAttributeCount(); ++i) - { - if(xmlReader.getAttributeLocalName(i).equals("Probability")) - { - eInfo.attackEffectProbability = Integer.parseInt(xmlReader.getAttributeValue(i)); - } - } - eInfo.attackEffect = EntityInfo.Effect.fromString(xmlReader.getElementText()); - } - else if(xmlReader.getLocalName().equals("Evasion")) - { - eInfo.evasion = Integer.parseInt(xmlReader.getElementText()); - } - else if(xmlReader.getLocalName().equals("DefenseDamage")) - { - for(int i = 0; i < xmlReader.getAttributeCount(); ++i) - { - if(xmlReader.getAttributeLocalName(i).equals("Probability")) - { - eInfo.defenseDamageProbability = Integer.parseInt(xmlReader.getAttributeValue(i)); - } - } - eInfo.defenseDamage = Integer.parseInt(xmlReader.getElementText()); - } - else if(xmlReader.getLocalName().equals("Category")) - { - eInfo.category = xmlReader.getElementText().toLowerCase(); - } - else if(xmlReader.getLocalName().equals("IgnoreBattle")) - { - if(xmlReader.getElementText().toLowerCase().equals("true")) - { - eInfo.ignoreBattle = true; - } - } - else if(xmlReader.getLocalName().equals("Speed")) - { - eInfo.speed = Integer.parseInt(xmlReader.getElementText()); - } - else if(xmlReader.getLocalName().equals("Decision")) - { - do - { - xmlReader.next(); - if(xmlReader.isStartElement()) - { - if(xmlReader.getLocalName().equals("Attack")) - { - eInfo.decisionAttack = Integer.parseInt(xmlReader.getElementText()); - } - else if(xmlReader.getLocalName().equals("Defend")) - { - eInfo.decisionDefend = Integer.parseInt(xmlReader.getElementText()); - } - else if(xmlReader.getLocalName().equals("Flee")) - { - eInfo.decisionFlee = Integer.parseInt(xmlReader.getElementText()); - } - } - } while(!(xmlReader.isEndElement() && xmlReader.getLocalName().equals("Decision"))); + eInfo.decisionFlee = Integer.parseInt(xmlReader.getElementText()); } } - } while(!(xmlReader.isEndElement() && xmlReader.getLocalName().equals("Entry"))); - if(eInfo.classType != null) - { - entityInfoMap.put(eInfo.classType.getName(), eInfo); - } + } while(!(xmlReader.isEndElement() && xmlReader.getLocalName().equals("Decision"))); } } - } while(!(xmlReader.isEndElement() && xmlReader.getLocalName().equals("EntityStats"))); + } while(!(xmlReader.isEndElement() && xmlReader.getLocalName().equals("EntityEntry"))); + if(eInfo.classType != null) + { + entityInfoMap.put(eInfo.classType.getName(), eInfo); + } } } } diff --git a/src/main/resources/assets/TurnBasedMinecraft/TBM_Config.xml b/src/main/resources/assets/TurnBasedMinecraft/TBM_Config.xml index 294cff4..37b0eda 100644 --- a/src/main/resources/assets/TurnBasedMinecraft/TBM_Config.xml +++ b/src/main/resources/assets/TurnBasedMinecraft/TBM_Config.xml @@ -37,603 +37,602 @@ 40 4 + - - - - - - - - - - - - - net.minecraft.entity.monster.EntityBlaze - 5 - fire - 5 - monster - 45 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityCaveSpider - 2 - poison - 35 - monster - 75 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityCreeper - true - 15 - 5 - monster - 25 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityElderGuardian - 8 - 2 - 25 - monster - 45 - - 80 - 20 - 0 - - - - net.minecraft.entity.monster.EntityEnderman - 7 - 40 - monster - 70 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityEndermite - 2 - 40 - monster - 35 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityEvoker - 6 - 35 - monster - 35 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityGhast - true - 13 - 35 - monster - 60 - - 75 - 0 - 25 - - - - net.minecraft.entity.monster.EntityGiantZombie - 11 - 2 - monster - 45 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityGuardian - 6 - 2 - 25 - monster - 50 - - 80 - 20 - 0 - - - - net.minecraft.entity.monster.EntityHusk - 3 - hunger - 5 - monster - 25 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityIronGolem - 14 - 5 - monster - 45 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityMagmaCube - 3 - 12 - monster - 35 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityPigZombie - 8 - 10 - monster - 50 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityPolarBear - 6 - 5 - animal - 35 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityShulker - 4 - 15 - monster - 10 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntitySilverfish - 1 - 37 - monster - 35 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntitySkeleton - 3 - 13 - monster - 30 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntitySlime - 2 - 10 - monster - 30 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntitySnowman - 0 - 5 - passive - 60 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntitySpider - 2 - 25 - monster - 70 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityStray - 3 - slow - 13 - monster - 30 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityVex - 9 - 30 - monster - 80 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityVindicator - 13 - 10 - monster - 35 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityWitch - 5 - 8 - monster - 35 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityWitherSkeleton - 8 - wither - 7 - monster - 65 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityZombie - 3 - 5 - monster - 25 - - 100 - 0 - 0 - - - - net.minecraft.entity.monster.EntityZombieVillager - 3 - 5 - monster - 25 - - 100 - 0 - 0 - - - - net.minecraft.entity.passive.EntityBat - 0 - 35 - passive - 75 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntityChicken - 0 - 10 - passive - 35 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntityCow - 0 - 1 - passive - 20 - - 0 - 10 - 80 - - - - net.minecraft.entity.passive.EntityDonkey - 0 - 10 - passive - 65 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntityHorse - 0 - 10 - passive - 65 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntityLlama - 1 - 10 - passive - 50 - - 65 - 0 - 25 - - - - net.minecraft.entity.passive.EntityMooshroom - 0 - 1 - passive - 20 - - 0 - 10 - 80 - - - - net.minecraft.entity.passive.EntityMule - 0 - 10 - passive - 50 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntityOcelot - 1 - 10 - passive - 75 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntityParrot - 0 - 35 - passive - 70 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntityPig - 0 - 10 - passive - 30 - - 0 - 5 - 85 - - - - net.minecraft.entity.passive.EntityRabbit - 0 - 40 - passive - 75 - - 0 - 0 - 100 - - - - net.minecraft.entity.passive.EntitySheep - 0 - 5 - passive - 30 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntitySkeletonHorse - 0 - 5 - passive - 65 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntitySquid - 0 - 15 - passive - 40 - - 0 - 0 - 90 - - - - net.minecraft.entity.passive.EntityVillager - 0 - 5 - passive - 35 - - 0 - 10 - 80 - - - - net.minecraft.entity.passive.EntityWolf - 4 - 20 - animal - 70 - - 80 - 15 - 5 - - - - net.minecraft.entity.passive.EntityZombieHorse - 0 - 8 - passive - 65 - - 0 - 0 - 90 - - - - net.minecraft.entity.boss.EntityDragon - 10 - 27 - boss - 63 - - 100 - 0 - 0 - - - - net.minecraft.entity.boss.EntityWither - 8 - 20 - wither - boss - 68 - - 100 - 0 - 0 - - - + + + + + + + + + + + + net.minecraft.entity.monster.EntityBlaze + 5 + fire + 5 + monster + 45 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityCaveSpider + 2 + poison + 35 + monster + 75 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityCreeper + true + 15 + 5 + monster + 25 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityElderGuardian + 8 + 2 + 25 + monster + 45 + + 80 + 20 + 0 + + + + net.minecraft.entity.monster.EntityEnderman + 7 + 40 + monster + 70 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityEndermite + 2 + 40 + monster + 35 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityEvoker + 6 + 35 + monster + 35 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityGhast + true + 13 + 35 + monster + 60 + + 75 + 0 + 25 + + + + net.minecraft.entity.monster.EntityGiantZombie + 11 + 2 + monster + 45 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityGuardian + 6 + 2 + 25 + monster + 50 + + 80 + 20 + 0 + + + + net.minecraft.entity.monster.EntityHusk + 3 + hunger + 5 + monster + 25 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityIronGolem + 14 + 5 + monster + 45 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityMagmaCube + 3 + 12 + monster + 35 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityPigZombie + 8 + 10 + monster + 50 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityPolarBear + 6 + 5 + animal + 35 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityShulker + 4 + 15 + monster + 10 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntitySilverfish + 1 + 37 + monster + 35 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntitySkeleton + 3 + 13 + monster + 30 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntitySlime + 2 + 10 + monster + 30 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntitySnowman + 0 + 5 + passive + 60 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntitySpider + 2 + 25 + monster + 70 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityStray + 3 + slow + 13 + monster + 30 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityVex + 9 + 30 + monster + 80 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityVindicator + 13 + 10 + monster + 35 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityWitch + 5 + 8 + monster + 35 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityWitherSkeleton + 8 + wither + 7 + monster + 65 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityZombie + 3 + 5 + monster + 25 + + 100 + 0 + 0 + + + + net.minecraft.entity.monster.EntityZombieVillager + 3 + 5 + monster + 25 + + 100 + 0 + 0 + + + + net.minecraft.entity.passive.EntityBat + 0 + 35 + passive + 75 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntityChicken + 0 + 10 + passive + 35 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntityCow + 0 + 1 + passive + 20 + + 0 + 10 + 80 + + + + net.minecraft.entity.passive.EntityDonkey + 0 + 10 + passive + 65 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntityHorse + 0 + 10 + passive + 65 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntityLlama + 1 + 10 + passive + 50 + + 65 + 0 + 25 + + + + net.minecraft.entity.passive.EntityMooshroom + 0 + 1 + passive + 20 + + 0 + 10 + 80 + + + + net.minecraft.entity.passive.EntityMule + 0 + 10 + passive + 50 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntityOcelot + 1 + 10 + passive + 75 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntityParrot + 0 + 35 + passive + 70 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntityPig + 0 + 10 + passive + 30 + + 0 + 5 + 85 + + + + net.minecraft.entity.passive.EntityRabbit + 0 + 40 + passive + 75 + + 0 + 0 + 100 + + + + net.minecraft.entity.passive.EntitySheep + 0 + 5 + passive + 30 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntitySkeletonHorse + 0 + 5 + passive + 65 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntitySquid + 0 + 15 + passive + 40 + + 0 + 0 + 90 + + + + net.minecraft.entity.passive.EntityVillager + 0 + 5 + passive + 35 + + 0 + 10 + 80 + + + + net.minecraft.entity.passive.EntityWolf + 4 + 20 + animal + 70 + + 80 + 15 + 5 + + + + net.minecraft.entity.passive.EntityZombieHorse + 0 + 8 + passive + 65 + + 0 + 0 + 90 + + + + net.minecraft.entity.boss.EntityDragon + 10 + 27 + boss + 63 + + 100 + 0 + 0 + + + + net.minecraft.entity.boss.EntityWither + 8 + 20 + wither + boss + 68 + + 100 + 0 + 0 + + \ No newline at end of file