From 3e131988ff53060066479550f720053cd1bd5f99 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Thu, 16 Jun 2022 21:36:00 +0000 Subject: [PATCH] Letter Collector event adjustments. Thanks to Sero. --- .../LetterCollector/LetterCollector.java | 22 ++++++------- .../scripts/events/LetterCollector/config.xml | 27 ++++++++-------- .../events/LetterCollector/rewards.xml | 31 ++++++++++--------- .../game/data/stats/items/82000-82099.xml | 5 +++ .../game/data/stats/items/82100-82199.xml | 8 +++++ .../LetterCollector/LetterCollector.java | 22 ++++++------- .../scripts/events/LetterCollector/config.xml | 1 + .../events/LetterCollector/rewards.xml | 1 + .../game/data/stats/items/82000-82099.xml | 5 +++ .../game/data/stats/items/82100-82199.xml | 8 +++++ .../LetterCollector/LetterCollector.java | 22 ++++++------- .../LetterCollector/LetterCollector.java | 22 ++++++------- .../LetterCollector/LetterCollector.java | 22 ++++++------- .../LetterCollector/LetterCollector.java | 22 ++++++------- 14 files changed, 124 insertions(+), 94 deletions(-) diff --git a/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/LetterCollector.java b/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/LetterCollector.java index a181a33a0f..ca5bac9228 100644 --- a/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/LetterCollector.java +++ b/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/LetterCollector.java @@ -88,26 +88,26 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader forEach(listNode, "reward", rewardNode -> { final int id = new StatSet(parseAttributes(rewardNode)).getInt("id"); - final AtomicReference> word = new AtomicReference<>(new ArrayList<>()); - final AtomicReference> rewards = new AtomicReference<>(new ArrayList<>()); - AtomicBoolean needToSumAllChance = new AtomicBoolean(false); - AtomicReference chanceSum = new AtomicReference<>(0.0); + final List word = new ArrayList<>(); + final List rewards = new ArrayList<>(); + final AtomicBoolean needToSumAllChance = new AtomicBoolean(false); + final AtomicReference chanceSum = new AtomicReference<>(0d); forEach(rewardNode, "word", wordNode -> { String[] letter = wordNode.getTextContent().trim().split(";"); for (String token : letter) { int count = 1; - for (ItemHolder check : word.get()) + for (ItemHolder check : word) { if (check.getId() == letters.get(token)) { count = Math.toIntExact(check.getCount() + 1); - word.get().remove(check); + word.remove(check); break; } } - word.get().add(new ItemHolder(letters.get(token), count)); + word.add(new ItemHolder(letters.get(token), count)); } }); forEach(rewardNode, "rewards", rewardsNode -> @@ -121,12 +121,12 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader { chanceSum.set(chanceSum.get() + chance); } - rewards.get().add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); + rewards.add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); }); }); - LetterCollectorManager lcm = LetterCollectorManager.getInstance(); - lcm.addWords(id, word.get()); - lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards.get(), chanceSum.get() == 0d ? 100d : chanceSum.get())); + final LetterCollectorManager lcm = LetterCollectorManager.getInstance(); + lcm.addWords(id, word); + lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards, chanceSum.get() == 0d ? 100d : chanceSum.get())); lcm.setLetters(letters); lcm.setMinLevel(minimumLevel.get()); lcm.setMaxLevel(maximumLevel.get()); diff --git a/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/config.xml b/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/config.xml index fb0bdb5a6b..454394dea9 100644 --- a/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/config.xml +++ b/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/config.xml @@ -1,19 +1,20 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/rewards.xml b/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/rewards.xml index 5069a9668e..fb454cc28c 100644 --- a/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/rewards.xml +++ b/L2J_Mobius_10.1_MasterClass/dist/game/data/scripts/events/LetterCollector/rewards.xml @@ -6,19 +6,20 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -62,7 +63,7 @@ - D;E;A;T;H + N;E;W;L;E;G;E;N;D @@ -91,7 +92,7 @@ - K;N;I;G;H;T + T;O;T;H;E;T;O;P diff --git a/L2J_Mobius_10.1_MasterClass/dist/game/data/stats/items/82000-82099.xml b/L2J_Mobius_10.1_MasterClass/dist/game/data/stats/items/82000-82099.xml index e8b401edfb..efb05d21dd 100644 --- a/L2J_Mobius_10.1_MasterClass/dist/game/data/stats/items/82000-82099.xml +++ b/L2J_Mobius_10.1_MasterClass/dist/game/data/stats/items/82000-82099.xml @@ -1156,6 +1156,7 @@ + @@ -1167,6 +1168,7 @@ + @@ -1178,6 +1180,7 @@ + @@ -1189,6 +1192,7 @@ + @@ -1200,5 +1204,6 @@ + diff --git a/L2J_Mobius_10.1_MasterClass/dist/game/data/stats/items/82100-82199.xml b/L2J_Mobius_10.1_MasterClass/dist/game/data/stats/items/82100-82199.xml index b525780e0e..caed6e0bcf 100644 --- a/L2J_Mobius_10.1_MasterClass/dist/game/data/stats/items/82100-82199.xml +++ b/L2J_Mobius_10.1_MasterClass/dist/game/data/stats/items/82100-82199.xml @@ -10,6 +10,7 @@ + @@ -21,6 +22,7 @@ + @@ -32,6 +34,7 @@ + @@ -43,6 +46,7 @@ + @@ -54,6 +58,7 @@ + @@ -65,6 +70,7 @@ + @@ -76,6 +82,7 @@ + @@ -87,6 +94,7 @@ + diff --git a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/LetterCollector.java b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/LetterCollector.java index a181a33a0f..ca5bac9228 100644 --- a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/LetterCollector.java +++ b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/LetterCollector.java @@ -88,26 +88,26 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader forEach(listNode, "reward", rewardNode -> { final int id = new StatSet(parseAttributes(rewardNode)).getInt("id"); - final AtomicReference> word = new AtomicReference<>(new ArrayList<>()); - final AtomicReference> rewards = new AtomicReference<>(new ArrayList<>()); - AtomicBoolean needToSumAllChance = new AtomicBoolean(false); - AtomicReference chanceSum = new AtomicReference<>(0.0); + final List word = new ArrayList<>(); + final List rewards = new ArrayList<>(); + final AtomicBoolean needToSumAllChance = new AtomicBoolean(false); + final AtomicReference chanceSum = new AtomicReference<>(0d); forEach(rewardNode, "word", wordNode -> { String[] letter = wordNode.getTextContent().trim().split(";"); for (String token : letter) { int count = 1; - for (ItemHolder check : word.get()) + for (ItemHolder check : word) { if (check.getId() == letters.get(token)) { count = Math.toIntExact(check.getCount() + 1); - word.get().remove(check); + word.remove(check); break; } } - word.get().add(new ItemHolder(letters.get(token), count)); + word.add(new ItemHolder(letters.get(token), count)); } }); forEach(rewardNode, "rewards", rewardsNode -> @@ -121,12 +121,12 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader { chanceSum.set(chanceSum.get() + chance); } - rewards.get().add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); + rewards.add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); }); }); - LetterCollectorManager lcm = LetterCollectorManager.getInstance(); - lcm.addWords(id, word.get()); - lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards.get(), chanceSum.get() == 0d ? 100d : chanceSum.get())); + final LetterCollectorManager lcm = LetterCollectorManager.getInstance(); + lcm.addWords(id, word); + lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards, chanceSum.get() == 0d ? 100d : chanceSum.get())); lcm.setLetters(letters); lcm.setMinLevel(minimumLevel.get()); lcm.setMaxLevel(maximumLevel.get()); diff --git a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/config.xml b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/config.xml index fb0bdb5a6b..96e293ddd8 100644 --- a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/config.xml +++ b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/config.xml @@ -14,6 +14,7 @@ + diff --git a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/rewards.xml b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/rewards.xml index becbe65c1c..8919104106 100644 --- a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/rewards.xml +++ b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/events/LetterCollector/rewards.xml @@ -19,6 +19,7 @@ + diff --git a/L2J_Mobius_10.2_MasterClass/dist/game/data/stats/items/82000-82099.xml b/L2J_Mobius_10.2_MasterClass/dist/game/data/stats/items/82000-82099.xml index 63c0860ac6..9d90e67b66 100644 --- a/L2J_Mobius_10.2_MasterClass/dist/game/data/stats/items/82000-82099.xml +++ b/L2J_Mobius_10.2_MasterClass/dist/game/data/stats/items/82000-82099.xml @@ -1157,6 +1157,7 @@ + @@ -1168,6 +1169,7 @@ + @@ -1179,6 +1181,7 @@ + @@ -1190,6 +1193,7 @@ + @@ -1201,5 +1205,6 @@ + diff --git a/L2J_Mobius_10.2_MasterClass/dist/game/data/stats/items/82100-82199.xml b/L2J_Mobius_10.2_MasterClass/dist/game/data/stats/items/82100-82199.xml index 5890777105..c525339e96 100644 --- a/L2J_Mobius_10.2_MasterClass/dist/game/data/stats/items/82100-82199.xml +++ b/L2J_Mobius_10.2_MasterClass/dist/game/data/stats/items/82100-82199.xml @@ -10,6 +10,7 @@ + @@ -21,6 +22,7 @@ + @@ -32,6 +34,7 @@ + @@ -43,6 +46,7 @@ + @@ -54,6 +58,7 @@ + @@ -65,6 +70,7 @@ + @@ -76,6 +82,7 @@ + @@ -87,6 +94,7 @@ + diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/events/LetterCollector/LetterCollector.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/events/LetterCollector/LetterCollector.java index a181a33a0f..ca5bac9228 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/events/LetterCollector/LetterCollector.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/events/LetterCollector/LetterCollector.java @@ -88,26 +88,26 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader forEach(listNode, "reward", rewardNode -> { final int id = new StatSet(parseAttributes(rewardNode)).getInt("id"); - final AtomicReference> word = new AtomicReference<>(new ArrayList<>()); - final AtomicReference> rewards = new AtomicReference<>(new ArrayList<>()); - AtomicBoolean needToSumAllChance = new AtomicBoolean(false); - AtomicReference chanceSum = new AtomicReference<>(0.0); + final List word = new ArrayList<>(); + final List rewards = new ArrayList<>(); + final AtomicBoolean needToSumAllChance = new AtomicBoolean(false); + final AtomicReference chanceSum = new AtomicReference<>(0d); forEach(rewardNode, "word", wordNode -> { String[] letter = wordNode.getTextContent().trim().split(";"); for (String token : letter) { int count = 1; - for (ItemHolder check : word.get()) + for (ItemHolder check : word) { if (check.getId() == letters.get(token)) { count = Math.toIntExact(check.getCount() + 1); - word.get().remove(check); + word.remove(check); break; } } - word.get().add(new ItemHolder(letters.get(token), count)); + word.add(new ItemHolder(letters.get(token), count)); } }); forEach(rewardNode, "rewards", rewardsNode -> @@ -121,12 +121,12 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader { chanceSum.set(chanceSum.get() + chance); } - rewards.get().add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); + rewards.add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); }); }); - LetterCollectorManager lcm = LetterCollectorManager.getInstance(); - lcm.addWords(id, word.get()); - lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards.get(), chanceSum.get() == 0d ? 100d : chanceSum.get())); + final LetterCollectorManager lcm = LetterCollectorManager.getInstance(); + lcm.addWords(id, word); + lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards, chanceSum.get() == 0d ? 100d : chanceSum.get())); lcm.setLetters(letters); lcm.setMinLevel(minimumLevel.get()); lcm.setMaxLevel(maximumLevel.get()); diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/events/LetterCollector/LetterCollector.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/events/LetterCollector/LetterCollector.java index a181a33a0f..ca5bac9228 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/events/LetterCollector/LetterCollector.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/events/LetterCollector/LetterCollector.java @@ -88,26 +88,26 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader forEach(listNode, "reward", rewardNode -> { final int id = new StatSet(parseAttributes(rewardNode)).getInt("id"); - final AtomicReference> word = new AtomicReference<>(new ArrayList<>()); - final AtomicReference> rewards = new AtomicReference<>(new ArrayList<>()); - AtomicBoolean needToSumAllChance = new AtomicBoolean(false); - AtomicReference chanceSum = new AtomicReference<>(0.0); + final List word = new ArrayList<>(); + final List rewards = new ArrayList<>(); + final AtomicBoolean needToSumAllChance = new AtomicBoolean(false); + final AtomicReference chanceSum = new AtomicReference<>(0d); forEach(rewardNode, "word", wordNode -> { String[] letter = wordNode.getTextContent().trim().split(";"); for (String token : letter) { int count = 1; - for (ItemHolder check : word.get()) + for (ItemHolder check : word) { if (check.getId() == letters.get(token)) { count = Math.toIntExact(check.getCount() + 1); - word.get().remove(check); + word.remove(check); break; } } - word.get().add(new ItemHolder(letters.get(token), count)); + word.add(new ItemHolder(letters.get(token), count)); } }); forEach(rewardNode, "rewards", rewardsNode -> @@ -121,12 +121,12 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader { chanceSum.set(chanceSum.get() + chance); } - rewards.get().add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); + rewards.add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); }); }); - LetterCollectorManager lcm = LetterCollectorManager.getInstance(); - lcm.addWords(id, word.get()); - lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards.get(), chanceSum.get() == 0d ? 100d : chanceSum.get())); + final LetterCollectorManager lcm = LetterCollectorManager.getInstance(); + lcm.addWords(id, word); + lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards, chanceSum.get() == 0d ? 100d : chanceSum.get())); lcm.setLetters(letters); lcm.setMinLevel(minimumLevel.get()); lcm.setMaxLevel(maximumLevel.get()); diff --git a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/scripts/events/LetterCollector/LetterCollector.java b/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/scripts/events/LetterCollector/LetterCollector.java index a181a33a0f..ca5bac9228 100644 --- a/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/scripts/events/LetterCollector/LetterCollector.java +++ b/L2J_Mobius_Essence_6.1_BattleChronicle/dist/game/data/scripts/events/LetterCollector/LetterCollector.java @@ -88,26 +88,26 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader forEach(listNode, "reward", rewardNode -> { final int id = new StatSet(parseAttributes(rewardNode)).getInt("id"); - final AtomicReference> word = new AtomicReference<>(new ArrayList<>()); - final AtomicReference> rewards = new AtomicReference<>(new ArrayList<>()); - AtomicBoolean needToSumAllChance = new AtomicBoolean(false); - AtomicReference chanceSum = new AtomicReference<>(0.0); + final List word = new ArrayList<>(); + final List rewards = new ArrayList<>(); + final AtomicBoolean needToSumAllChance = new AtomicBoolean(false); + final AtomicReference chanceSum = new AtomicReference<>(0d); forEach(rewardNode, "word", wordNode -> { String[] letter = wordNode.getTextContent().trim().split(";"); for (String token : letter) { int count = 1; - for (ItemHolder check : word.get()) + for (ItemHolder check : word) { if (check.getId() == letters.get(token)) { count = Math.toIntExact(check.getCount() + 1); - word.get().remove(check); + word.remove(check); break; } } - word.get().add(new ItemHolder(letters.get(token), count)); + word.add(new ItemHolder(letters.get(token), count)); } }); forEach(rewardNode, "rewards", rewardsNode -> @@ -121,12 +121,12 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader { chanceSum.set(chanceSum.get() + chance); } - rewards.get().add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); + rewards.add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); }); }); - LetterCollectorManager lcm = LetterCollectorManager.getInstance(); - lcm.addWords(id, word.get()); - lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards.get(), chanceSum.get() == 0d ? 100d : chanceSum.get())); + final LetterCollectorManager lcm = LetterCollectorManager.getInstance(); + lcm.addWords(id, word); + lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards, chanceSum.get() == 0d ? 100d : chanceSum.get())); lcm.setLetters(letters); lcm.setMinLevel(minimumLevel.get()); lcm.setMaxLevel(maximumLevel.get()); diff --git a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/events/LetterCollector/LetterCollector.java b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/events/LetterCollector/LetterCollector.java index a181a33a0f..ca5bac9228 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/events/LetterCollector/LetterCollector.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/events/LetterCollector/LetterCollector.java @@ -88,26 +88,26 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader forEach(listNode, "reward", rewardNode -> { final int id = new StatSet(parseAttributes(rewardNode)).getInt("id"); - final AtomicReference> word = new AtomicReference<>(new ArrayList<>()); - final AtomicReference> rewards = new AtomicReference<>(new ArrayList<>()); - AtomicBoolean needToSumAllChance = new AtomicBoolean(false); - AtomicReference chanceSum = new AtomicReference<>(0.0); + final List word = new ArrayList<>(); + final List rewards = new ArrayList<>(); + final AtomicBoolean needToSumAllChance = new AtomicBoolean(false); + final AtomicReference chanceSum = new AtomicReference<>(0d); forEach(rewardNode, "word", wordNode -> { String[] letter = wordNode.getTextContent().trim().split(";"); for (String token : letter) { int count = 1; - for (ItemHolder check : word.get()) + for (ItemHolder check : word) { if (check.getId() == letters.get(token)) { count = Math.toIntExact(check.getCount() + 1); - word.get().remove(check); + word.remove(check); break; } } - word.get().add(new ItemHolder(letters.get(token), count)); + word.add(new ItemHolder(letters.get(token), count)); } }); forEach(rewardNode, "rewards", rewardsNode -> @@ -121,12 +121,12 @@ public class LetterCollector extends LongTimeEvent implements IXmlReader { chanceSum.set(chanceSum.get() + chance); } - rewards.get().add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); + rewards.add(new ItemChanceHolder(itemSet.getInt("id"), chance, itemSet.getLong("count"), (byte) itemSet.getInt("enchantLevel", 0))); }); }); - LetterCollectorManager lcm = LetterCollectorManager.getInstance(); - lcm.addWords(id, word.get()); - lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards.get(), chanceSum.get() == 0d ? 100d : chanceSum.get())); + final LetterCollectorManager lcm = LetterCollectorManager.getInstance(); + lcm.addWords(id, word); + lcm.addRewards(id, new LetterCollectorManager.LetterCollectorRewardHolder(rewards, chanceSum.get() == 0d ? 100d : chanceSum.get())); lcm.setLetters(letters); lcm.setMinLevel(minimumLevel.get()); lcm.setMaxLevel(maximumLevel.get());