Remove legacy code and fix saturation effect when applied to an ender elf in the end dimension.
This commit is contained in:
@@ -19,8 +19,6 @@ public interface MineClass {
|
|||||||
|
|
||||||
Map<Material, List<Pair<Enchantment, Integer>>> getClassEnchantments();
|
Map<Material, List<Pair<Enchantment, Integer>>> getClassEnchantments();
|
||||||
|
|
||||||
boolean is(Player player);
|
|
||||||
|
|
||||||
void reapplyEffects(Player player);
|
void reapplyEffects(Player player);
|
||||||
|
|
||||||
boolean isItemForbidden(Material type);
|
boolean isItemForbidden(Material type);
|
||||||
|
|||||||
@@ -77,8 +77,7 @@ public class MineClassFactory {
|
|||||||
public synchronized Optional<MineClass> getRightClass(Player player) {
|
public synchronized Optional<MineClass> getRightClass(Player player) {
|
||||||
for (Map.Entry<String, MineClass> stringMineClassEntry : availableClasses.entrySet()) {
|
for (Map.Entry<String, MineClass> stringMineClassEntry : availableClasses.entrySet()) {
|
||||||
if (getClassCode(player) != null
|
if (getClassCode(player) != null
|
||||||
&& getClassCode(player).equals(stringMineClassEntry.getKey())
|
&& getClassCode(player).equals(stringMineClassEntry.getKey())) {
|
||||||
|| stringMineClassEntry.getValue().is(player)) {
|
|
||||||
return Optional.of(stringMineClassEntry.getValue());
|
return Optional.of(stringMineClassEntry.getValue());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,14 +10,6 @@ import java.util.stream.Collectors;
|
|||||||
|
|
||||||
public abstract class MineClassImpl implements MineClass {
|
public abstract class MineClassImpl implements MineClass {
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean is(Player player) {
|
|
||||||
return player.getActivePotionEffects().stream()
|
|
||||||
.map(PotionEffect::getType)
|
|
||||||
.collect(Collectors.toList())
|
|
||||||
.containsAll(getPotionEffects().keySet());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void reapplyEffects(Player player) {
|
public void reapplyEffects(Player player) {
|
||||||
MineClassFactory.clearAllClassEffects(player);
|
MineClassFactory.clearAllClassEffects(player);
|
||||||
|
|||||||
@@ -38,7 +38,9 @@ public class CommandClass implements CommandExecutor {
|
|||||||
MineClassFactory.getInstance().giveItemsForClassByCode(args[0], player);
|
MineClassFactory.getInstance().giveItemsForClassByCode(args[0], player);
|
||||||
MineClassFactory.getInstance().dropForbiddenItemsForClassByCode(args[0], player);
|
MineClassFactory.getInstance().dropForbiddenItemsForClassByCode(args[0], player);
|
||||||
MineClassFactory.getInstance().setClassCode(player, args[0]);
|
MineClassFactory.getInstance().setClassCode(player, args[0]);
|
||||||
player.addPotionEffect(new PotionEffect(PotionEffectType.SATURATION,200, 9));
|
if (!player.hasPotionEffect(PotionEffectType.SATURATION)) {
|
||||||
|
player.addPotionEffect(new PotionEffect(PotionEffectType.SATURATION,200, 9));
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (args[0].equals("steve")) {
|
if (args[0].equals("steve")) {
|
||||||
|
|||||||
Reference in New Issue
Block a user