diff options
Diffstat (limited to 'src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java')
| -rw-r--r-- | src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java | 129 |
1 files changed, 101 insertions, 28 deletions
diff --git a/src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java b/src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java index 993a9bd..8be46e6 100644 --- a/src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java +++ b/src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java @@ -27,23 +27,7 @@ public class AffixMods { private static List<WeightedRandomAffix> earringsSuffixGen; public static void initializeAffixes(FMLPreInitializationEvent fpie) { - prefixes = new HashMap<String, ModifierEffect>(); - suffixes = new HashMap<String, ModifierEffect>(); - - generalPrefixGen = new LinkedList<WeightedRandomAffix>(); - generalSuffixGen = new LinkedList<WeightedRandomAffix>(); - - ringPrefixGen = new LinkedList<WeightedRandomAffix>(); - ringSuffixGen = new LinkedList<WeightedRandomAffix>(); - - braceletPrefixGen = new LinkedList<WeightedRandomAffix>(); - braceletSuffixGen = new LinkedList<WeightedRandomAffix>(); - - necklacePrefixGen = new LinkedList<WeightedRandomAffix>(); - necklaceSuffixGen = new LinkedList<WeightedRandomAffix>(); - - earringsPrefixGen = new LinkedList<WeightedRandomAffix>(); - earringsSuffixGen = new LinkedList<WeightedRandomAffix>(); + initFields(); ModifierEffect health1 = new HealthAffix(1); ModifierEffect health2 = new HealthAffix(2); @@ -62,13 +46,29 @@ public class AffixMods { ModifierEffect flatDMG4 = new DamageAffix(4, 0, 1); ModifierEffect flatDMG5 = new DamageAffix(5, 0, 1); ModifierEffect flatDMG6 = new DamageAffix(6, 0, 1); - + ModifierEffect flatarm1 = new ArmorAffix(1, 0, 1); ModifierEffect flatarm2 = new ArmorAffix(2, 0, 1); ModifierEffect flatarm3 = new ArmorAffix(3, 0, 1); ModifierEffect flatarm4 = new ArmorAffix(4, 0, 1); ModifierEffect flatarm5 = new ArmorAffix(5, 0, 1); ModifierEffect flatarm6 = new ArmorAffix(6, 0, 1); + + ModifierEffect flatarmlife1 = new ComboAffix(new HealthAffix(1), new ArmorAffix(1, 0, 1)); + ModifierEffect flatarmlife2 = new ComboAffix(new HealthAffix(2), new ArmorAffix(2, 0, 1)); + ModifierEffect flatarmlife3 = new ComboAffix(new HealthAffix(3), new ArmorAffix(3, 0, 1)); + + ModifierEffect coward1 = new ComboAffix(new HealthAffix(2), new ArmorAffix(0, 0, 1.1f)); + ModifierEffect coward2 = new ComboAffix(new HealthAffix(4), new ArmorAffix(0, 0, 1.2f)); + ModifierEffect coward3 = new ComboAffix(new HealthAffix(6), new ArmorAffix(0, 0, 1.3f)); + + ModifierEffect gambler1 = new ComboAffix(new DamageAffix(0, 0, 1.25f), new ArmorAffix(0, 0, 1.25f)); + ModifierEffect gambler2 = new ComboAffix(new DamageAffix(0, 0, 1.5f), new ArmorAffix(0, 0, 1.5f)); + ModifierEffect gambler3 = new ComboAffix(new DamageAffix(0, 0, 1.75f), new ArmorAffix(0, 0, 1.75f)); + + ModifierEffect looter1 = new LootingAffix(1); + ModifierEffect looter2 = new LootingAffix(2); + ModifierEffect looter3 = new LootingAffix(3); prefixes.put("health1", health1); prefixes.put("health2", health2); @@ -76,7 +76,7 @@ public class AffixMods { prefixes.put("health4", health4); prefixes.put("health5", health5); prefixes.put("health6", health6); - + prefixes.put("flatdmg1", flatDMG1); prefixes.put("flatdmg2", flatDMG2); prefixes.put("flatdmg3", flatDMG3); @@ -84,14 +84,22 @@ public class AffixMods { prefixes.put("flatdmg5", flatDMG5); prefixes.put("flatdmg6", flatDMG6); + prefixes.put("flatarmlife1", flatarmlife1); + prefixes.put("flatarmlife2", flatarmlife2); + prefixes.put("flatarmlife3", flatarmlife3); + + prefixes.put("gambler1", gambler1); + prefixes.put("gambler2", gambler2); + prefixes.put("gambler3", gambler3); + suffixes.put("health1", health1); suffixes.put("health2", health2); suffixes.put("health3", health3); - + suffixes.put("hitheal1", hitheal1); suffixes.put("hitheal2", hitheal2); suffixes.put("hitheal3", hitheal3); - + suffixes.put("flatarm1", flatarm1); suffixes.put("flatarm2", flatarm2); suffixes.put("flatarm3", flatarm3); @@ -99,6 +107,14 @@ public class AffixMods { suffixes.put("flatarm5", flatarm5); suffixes.put("flatarm6", flatarm6); + suffixes.put("coward1", coward1); + suffixes.put("coward2", coward2); + suffixes.put("coward3", coward3); + + suffixes.put("looter1", looter1); + suffixes.put("looter2", looter2); + suffixes.put("looter3", looter3); + /* * Affix generation */ @@ -119,13 +135,29 @@ public class AffixMods { WeightedRandomAffix wraflatDMG4 = new WeightedRandomAffix("flatdmg4", 4); WeightedRandomAffix wraflatDMG5 = new WeightedRandomAffix("flatdmg5", 2); WeightedRandomAffix wraflatDMG6 = new WeightedRandomAffix("flatdmg6", 1); - + WeightedRandomAffix wraflatarm1 = new WeightedRandomAffix("flatarm1", 9); WeightedRandomAffix wraflatarm2 = new WeightedRandomAffix("flatarm2", 8); WeightedRandomAffix wraflatarm3 = new WeightedRandomAffix("flatarm3", 6); WeightedRandomAffix wraflatarm4 = new WeightedRandomAffix("flatarm4", 4); WeightedRandomAffix wraflatarm5 = new WeightedRandomAffix("flatarm5", 2); WeightedRandomAffix wraflatarm6 = new WeightedRandomAffix("flatarm6", 1); + + WeightedRandomAffix wraflatarmlife1 = new WeightedRandomAffix("flatarmlife1", 8); + WeightedRandomAffix wraflatarmlife2 = new WeightedRandomAffix("flatarmlife2", 6); + WeightedRandomAffix wraflatarmlife3 = new WeightedRandomAffix("flatarmlife3", 4); + + WeightedRandomAffix wracoward1 = new WeightedRandomAffix("coward1", 9); + WeightedRandomAffix wracoward2 = new WeightedRandomAffix("coward1", 7); + WeightedRandomAffix wracoward3 = new WeightedRandomAffix("coward1", 5); + + WeightedRandomAffix wragambler1 = new WeightedRandomAffix("gambler1", 6); + WeightedRandomAffix wragambler2 = new WeightedRandomAffix("gambler2", 4); + WeightedRandomAffix wragambler3 = new WeightedRandomAffix("gambler3", 2); + + WeightedRandomAffix wralooter1 = new WeightedRandomAffix("looter1", 6); + WeightedRandomAffix wralooter2 = new WeightedRandomAffix("looter2", 4); + WeightedRandomAffix wralooter3 = new WeightedRandomAffix("looter3", 2); /* * Prefixes @@ -152,11 +184,25 @@ public class AffixMods { necklacePrefixGen.add(wraflatDMG5); earringsPrefixGen.add(wraflatDMG5); earringsPrefixGen.add(wraflatDMG6); + + generalPrefixGen.add(wraflatarmlife1); + braceletPrefixGen.add(wraflatarmlife1); + necklacePrefixGen.add(wraflatarmlife2); + earringsPrefixGen.add(wraflatarmlife3); + + necklacePrefixGen.add(wragambler1); + earringsPrefixGen.add(wragambler2); + earringsPrefixGen.add(wragambler3); + + generalPrefixGen.add(wralooter1); + ringPrefixGen.add(wralooter1); + braceletPrefixGen.add(wralooter2); + necklacePrefixGen.add(wralooter3); /* * Suffixes */ - + generalSuffixGen.add(wraHealth1); generalSuffixGen.add(wraHealth2); generalSuffixGen.add(wraHealth3); @@ -170,7 +216,7 @@ public class AffixMods { braceletSuffixGen.add(wraHitheal2); necklaceSuffixGen.add(wraHitheal2); necklaceSuffixGen.add(wraHitheal3); - + generalSuffixGen.add(wraflatarm1); generalSuffixGen.add(wraflatarm2); generalSuffixGen.add(wraflatarm3); @@ -183,6 +229,31 @@ public class AffixMods { necklaceSuffixGen.add(wraflatarm5); earringsSuffixGen.add(wraflatarm5); earringsSuffixGen.add(wraflatarm6); + + generalSuffixGen.add(wracoward1); + ringSuffixGen.add(wracoward1); + braceletSuffixGen.add(wracoward2); + necklaceSuffixGen.add(wracoward3); + } + + private static void initFields() { + prefixes = new HashMap<String, ModifierEffect>(); + suffixes = new HashMap<String, ModifierEffect>(); + + generalPrefixGen = new LinkedList<WeightedRandomAffix>(); + generalSuffixGen = new LinkedList<WeightedRandomAffix>(); + + ringPrefixGen = new LinkedList<WeightedRandomAffix>(); + ringSuffixGen = new LinkedList<WeightedRandomAffix>(); + + braceletPrefixGen = new LinkedList<WeightedRandomAffix>(); + braceletSuffixGen = new LinkedList<WeightedRandomAffix>(); + + necklacePrefixGen = new LinkedList<WeightedRandomAffix>(); + necklaceSuffixGen = new LinkedList<WeightedRandomAffix>(); + + earringsPrefixGen = new LinkedList<WeightedRandomAffix>(); + earringsSuffixGen = new LinkedList<WeightedRandomAffix>(); } public static ModifierEffect getPrefix(String prefix) { @@ -216,8 +287,9 @@ public class AffixMods { } } - if (pickList.size() <= 0) pickList = generalPrefixGen; - + if (pickList.size() <= 0) + pickList = generalPrefixGen; + WeightedRandomAffix wra = ((WeightedRandomAffix) WeightedRandom.getRandomItem(random, pickList)); return wra.getAffix(random); @@ -246,8 +318,9 @@ public class AffixMods { } } - if (pickList.size() <= 0) pickList = generalSuffixGen; - + if (pickList.size() <= 0) + pickList = generalSuffixGen; + WeightedRandomAffix wra = ((WeightedRandomAffix) WeightedRandom.getRandomItem(random, pickList)); return wra.getAffix(random); |
