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