9
0
mirror of https://github.com/Auxilor/EcoMobs.git synced 2025-12-21 16:09:24 +00:00

Updated to eco 5.0.0

This commit is contained in:
Auxilor
2021-04-04 15:07:57 +01:00
parent 05907d5876
commit 316d460585
23 changed files with 77 additions and 152 deletions

View File

@@ -47,7 +47,7 @@ allprojects {
}
dependencies {
compileOnly 'com.willfp:eco:4.3.1'
compileOnly 'com.willfp:eco:5.0.0'
compileOnly 'org.jetbrains:annotations:19.0.0'

View File

@@ -1,6 +0,0 @@
group 'com.willfp'
version rootProject.version
dependencies {
compileOnly 'org.spigotmc:spigot:1.15.2-R0.1-SNAPSHOT'
}

View File

@@ -1,22 +0,0 @@
package com.willfp.ecobosses.proxy.v1_15_R1;
import com.willfp.ecobosses.proxy.proxies.CustomEntitySpawnerProxy;
import com.willfp.ecobosses.proxy.proxies.CustomIllusionerProxy;
import com.willfp.ecobosses.proxy.util.CustomEntity;
import org.bukkit.Location;
import org.bukkit.entity.LivingEntity;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@SuppressWarnings("unchecked")
public class CustomEntitySpawner implements CustomEntitySpawnerProxy {
@Override
public <T extends LivingEntity> @Nullable T spawnCustomEntity(final Class<? extends CustomEntity<? extends LivingEntity>> entityClass,
@NotNull final Location location) {
if (entityClass.equals(CustomIllusionerProxy.class)) {
return (T) CustomIllusioner.spawn(location);
}
return null;
}
}

View File

@@ -1,62 +0,0 @@
package com.willfp.ecobosses.proxy.v1_15_R1;
import com.willfp.ecobosses.proxy.proxies.CustomIllusionerProxy;
import net.minecraft.server.v1_15_R1.EntityHuman;
import net.minecraft.server.v1_15_R1.EntityIllagerIllusioner;
import net.minecraft.server.v1_15_R1.EntityIllagerWizard;
import net.minecraft.server.v1_15_R1.EntityInsentient;
import net.minecraft.server.v1_15_R1.EntityIronGolem;
import net.minecraft.server.v1_15_R1.EntityRaider;
import net.minecraft.server.v1_15_R1.EntityTypes;
import net.minecraft.server.v1_15_R1.EntityVillagerAbstract;
import net.minecraft.server.v1_15_R1.PathfinderGoalBowShoot;
import net.minecraft.server.v1_15_R1.PathfinderGoalFloat;
import net.minecraft.server.v1_15_R1.PathfinderGoalHurtByTarget;
import net.minecraft.server.v1_15_R1.PathfinderGoalLookAtPlayer;
import net.minecraft.server.v1_15_R1.PathfinderGoalMeleeAttack;
import net.minecraft.server.v1_15_R1.PathfinderGoalNearestAttackableTarget;
import net.minecraft.server.v1_15_R1.PathfinderGoalRandomStroll;
import org.bukkit.Location;
import org.bukkit.craftbukkit.v1_15_R1.CraftWorld;
import org.bukkit.entity.Illusioner;
import org.jetbrains.annotations.NotNull;
public class CustomIllusioner extends EntityIllagerIllusioner implements CustomIllusionerProxy {
/**
* Instantiate a new custom illusioner entity.
*
* @param location The location to spawn it at.
*/
public CustomIllusioner(@NotNull final Location location) {
super(EntityTypes.ILLUSIONER, ((CraftWorld) location.getWorld()).getHandle());
this.setPosition(location.getX(), location.getY(), location.getZ());
this.goalSelector.a(0, new PathfinderGoalFloat(this));
this.goalSelector.a(1, new EntityIllagerWizard.b());
this.goalSelector.a(2, new PathfinderGoalMeleeAttack(this, 1.0D, false));
this.goalSelector.a(2, new PathfinderGoalBowShoot<>(this, 1.0D, 20, 15.0F));
this.goalSelector.a(8, new PathfinderGoalRandomStroll(this, 0.6D));
this.goalSelector.a(0, new PathfinderGoalFloat(this));
this.goalSelector.a(6, new PathfinderGoalBowShoot<>(this, 0.5D, 20, 15.0F));
this.goalSelector.a(8, new PathfinderGoalRandomStroll(this, 0.6D));
this.goalSelector.a(9, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 3.0F, 1.0F));
this.goalSelector.a(10, new PathfinderGoalLookAtPlayer(this, EntityInsentient.class, 8.0F));
this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, new Class[]{EntityRaider.class})).a(new Class[0]));
this.targetSelector.a(2, (new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)).a(300));
this.targetSelector.a(3, (new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, false)).a(300));
this.targetSelector.a(3, (new PathfinderGoalNearestAttackableTarget<>(this, EntityIronGolem.class, false)).a(300));
}
/**
* Spawn illusioner.
*
* @param location The location.
* @return The illusioner.
*/
public static Illusioner spawn(@NotNull final Location location) {
CustomIllusioner illusioner = new CustomIllusioner(location);
((CraftWorld) location.getWorld()).getHandle().addEntity(illusioner);
return (Illusioner) illusioner.getBukkitEntity();
}
}

View File

@@ -1,10 +1,9 @@
package com.willfp.ecobosses;
import com.willfp.eco.util.command.AbstractCommand;
import com.willfp.eco.util.display.DisplayModule;
import com.willfp.eco.util.integrations.IntegrationLoader;
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
import com.willfp.eco.util.protocollib.AbstractPacketAdapter;
import com.willfp.eco.core.AbstractPacketAdapter;
import com.willfp.eco.core.EcoPlugin;
import com.willfp.eco.core.command.AbstractCommand;
import com.willfp.eco.core.integrations.IntegrationLoader;
import com.willfp.ecobosses.bosses.EcoBosses;
import com.willfp.ecobosses.bosses.listeners.AttackListeners;
import com.willfp.ecobosses.bosses.listeners.DeathListeners;
@@ -15,14 +14,13 @@ import com.willfp.ecobosses.commands.CommandEbspawn;
import com.willfp.ecobosses.commands.TabCompleterEbspawn;
import lombok.Getter;
import org.bukkit.event.Listener;
import org.jetbrains.annotations.Nullable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@SuppressWarnings("unused")
public class EcoBossesPlugin extends AbstractEcoPlugin {
public class EcoBossesPlugin extends EcoPlugin {
/**
* Instance of the plugin.
*/
@@ -132,10 +130,4 @@ public class EcoBossesPlugin extends AbstractEcoPlugin {
TabCompleterEbspawn.class
);
}
@Override
@Nullable
protected DisplayModule createDisplayModule() {
return null;
}
}

View File

@@ -1,17 +1,23 @@
package com.willfp.ecobosses.bosses;
import com.willfp.eco.core.EcoPlugin;
import com.willfp.eco.core.PluginDependent;
import com.willfp.eco.core.config.Config;
import com.willfp.eco.core.tuples.Pair;
import com.willfp.eco.util.StringUtils;
import com.willfp.eco.util.config.Config;
import com.willfp.eco.util.internal.PluginDependent;
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
import com.willfp.eco.util.tuples.Pair;
import com.willfp.ecobosses.bosses.effects.Effect;
import com.willfp.ecobosses.bosses.effects.Effects;
import com.willfp.ecobosses.bosses.util.bosstype.BossEntityUtils;
import com.willfp.ecobosses.bosses.util.bosstype.BossType;
import com.willfp.ecobosses.bosses.util.obj.*;
import com.willfp.ecobosses.bosses.util.obj.BossbarProperties;
import com.willfp.ecobosses.bosses.util.obj.EffectOption;
import com.willfp.ecobosses.bosses.util.obj.ExperienceOptions;
import com.willfp.ecobosses.bosses.util.obj.ImmunityOptions;
import com.willfp.ecobosses.bosses.util.obj.OptionedSound;
import com.willfp.ecobosses.bosses.util.obj.SpawnTotem;
import com.willfp.ecobosses.bosses.util.obj.SummonsOption;
import com.willfp.ecobosses.bosses.util.obj.TargetMode;
import com.willfp.ecobosses.bosses.util.obj.TeleportOptions;
import lombok.AccessLevel;
import lombok.Getter;
import org.bukkit.Bukkit;
@@ -22,13 +28,22 @@ import org.bukkit.boss.BarColor;
import org.bukkit.boss.BarStyle;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.*;
import org.bukkit.entity.LivingEntity;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.potion.PotionEffectType;
import org.jetbrains.annotations.NotNull;
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Base64;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.UUID;
import java.util.stream.Collectors;
public class EcoBoss extends PluginDependent {
@@ -255,7 +270,7 @@ public class EcoBoss extends PluginDependent {
*/
public EcoBoss(@NotNull final String name,
@NotNull final Config config,
@NotNull final AbstractEcoPlugin plugin) {
@NotNull final EcoPlugin plugin) {
super(plugin);
this.config = config;
this.name = name;

View File

@@ -3,7 +3,7 @@ package com.willfp.ecobosses.bosses;
import com.google.common.collect.BiMap;
import com.google.common.collect.HashBiMap;
import com.google.common.collect.ImmutableList;
import com.willfp.eco.util.config.updating.annotations.ConfigUpdater;
import com.willfp.eco.internal.config.updating.annotations.ConfigUpdater;
import com.willfp.ecobosses.EcoBossesPlugin;
import com.willfp.ecobosses.config.BaseBossConfig;
import com.willfp.ecobosses.config.CustomConfig;

View File

@@ -1,16 +1,16 @@
package com.willfp.ecobosses.bosses;
import com.willfp.eco.core.EcoPlugin;
import com.willfp.eco.core.PluginDependent;
import com.willfp.eco.core.scheduling.RunnableTask;
import com.willfp.eco.util.NumberUtils;
import com.willfp.eco.util.StringUtils;
import com.willfp.eco.util.bukkit.scheduling.EcoBukkitRunnable;
import com.willfp.eco.util.internal.PluginDependent;
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
import com.willfp.ecobosses.bosses.tick.BossTicker;
import com.willfp.ecobosses.bosses.tick.tickers.BossBarTicker;
import com.willfp.ecobosses.bosses.tick.tickers.HealthPlaceholderTicker;
import com.willfp.ecobosses.bosses.tick.tickers.TargetTicker;
import com.willfp.ecobosses.bosses.util.obj.OptionedSound;
import com.willfp.ecobosses.bosses.util.obj.EffectOption;
import com.willfp.ecobosses.bosses.util.obj.OptionedSound;
import com.willfp.ecobosses.bosses.util.obj.SummonsOption;
import org.bukkit.Bukkit;
import org.bukkit.Location;
@@ -59,7 +59,7 @@ public class LivingEcoBoss extends PluginDependent {
* @param entity The entity.
* @param boss The boss.
*/
public LivingEcoBoss(@NotNull final AbstractEcoPlugin plugin,
public LivingEcoBoss(@NotNull final EcoPlugin plugin,
@NotNull final LivingEntity entity,
@NotNull final EcoBoss boss) {
super(plugin);
@@ -133,7 +133,7 @@ public class LivingEcoBoss extends PluginDependent {
}
private void tick(final long tick,
@NotNull final EcoBukkitRunnable runnable) {
@NotNull final RunnableTask runnable) {
for (BossTicker ticker : tickers) {
ticker.tick(boss, entity, tick);
}

View File

@@ -1,8 +1,8 @@
package com.willfp.ecobosses.bosses.listeners;
import com.willfp.eco.core.EcoPlugin;
import com.willfp.eco.core.PluginDependent;
import com.willfp.eco.util.NumberUtils;
import com.willfp.eco.util.internal.PluginDependent;
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
import com.willfp.ecobosses.bosses.EcoBoss;
import com.willfp.ecobosses.bosses.LivingEcoBoss;
import com.willfp.ecobosses.bosses.util.BossUtils;
@@ -34,7 +34,7 @@ public class AttackListeners extends PluginDependent implements Listener {
*
* @param plugin Instance of EcoBosses.
*/
public AttackListeners(@NotNull final AbstractEcoPlugin plugin) {
public AttackListeners(@NotNull final EcoPlugin plugin) {
super(plugin);
}

View File

@@ -1,12 +1,12 @@
package com.willfp.ecobosses.bosses.listeners;
import com.willfp.eco.core.EcoPlugin;
import com.willfp.eco.core.PluginDependent;
import com.willfp.eco.core.events.EntityDeathByEntityEvent;
import com.willfp.eco.core.tuples.Pair;
import com.willfp.eco.util.NumberUtils;
import com.willfp.eco.util.StringUtils;
import com.willfp.eco.util.events.entitydeathbyentity.EntityDeathByEntityEvent;
import com.willfp.eco.util.internal.PluginDependent;
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
import com.willfp.eco.util.tuples.Pair;
import com.willfp.ecobosses.bosses.EcoBoss;
import com.willfp.ecobosses.bosses.util.BossUtils;
import com.willfp.ecobosses.bosses.util.obj.DamagerProperty;
@@ -32,7 +32,7 @@ public class DeathListeners extends PluginDependent implements Listener {
*
* @param plugin Instance of EcoBosses.
*/
public DeathListeners(@NotNull final AbstractEcoPlugin plugin) {
public DeathListeners(@NotNull final EcoPlugin plugin) {
super(plugin);
}

View File

@@ -1,6 +1,7 @@
package com.willfp.ecobosses.bosses.listeners;
import com.willfp.eco.util.internal.PluginDependent;
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
import com.willfp.eco.core.EcoPlugin;
import com.willfp.eco.core.PluginDependent;
import com.willfp.ecobosses.bosses.EcoBoss;
import com.willfp.ecobosses.bosses.EcoBosses;
import com.willfp.ecobosses.bosses.util.obj.SpawnTotem;
@@ -17,7 +18,7 @@ public class SpawnListeners extends PluginDependent implements Listener {
*
* @param plugin The plugin to link to.
*/
public SpawnListeners(@NotNull final AbstractEcoPlugin plugin) {
public SpawnListeners(@NotNull final EcoPlugin plugin) {
super(plugin);
}

View File

@@ -23,6 +23,6 @@ class VanillaBossType extends BossType {
@Override
public LivingEntity spawnBossEntity(@NotNull final Location location) {
return (LivingEntity) Objects.requireNonNull(location.getWorld()).spawn(location, entityClass);
return Objects.requireNonNull(location.getWorld()).spawn(location, entityClass);
}
}

View File

@@ -1,6 +1,6 @@
package com.willfp.ecobosses.commands;
import com.willfp.eco.util.command.AbstractCommand;
import com.willfp.eco.core.command.AbstractCommand;
import com.willfp.ecobosses.EcoBossesPlugin;
import org.bukkit.Bukkit;
import org.bukkit.command.CommandSender;

View File

@@ -1,6 +1,6 @@
package com.willfp.ecobosses.commands;
import com.willfp.eco.util.command.AbstractCommand;
import com.willfp.eco.core.command.AbstractCommand;
import com.willfp.ecobosses.EcoBossesPlugin;
import org.bukkit.command.CommandSender;
import org.jetbrains.annotations.NotNull;

View File

@@ -1,7 +1,7 @@
package com.willfp.ecobosses.commands;
import com.willfp.eco.util.command.AbstractCommand;
import com.willfp.eco.util.command.AbstractTabCompleter;
import com.willfp.eco.core.command.AbstractCommand;
import com.willfp.eco.core.command.AbstractTabCompleter;
import com.willfp.ecobosses.EcoBossesPlugin;
import com.willfp.ecobosses.bosses.EcoBoss;
import com.willfp.ecobosses.bosses.EcoBosses;

View File

@@ -1,7 +1,7 @@
package com.willfp.ecobosses.commands;
import com.willfp.eco.util.command.AbstractTabCompleter;
import com.willfp.eco.util.config.updating.annotations.ConfigUpdater;
import com.willfp.eco.core.command.AbstractTabCompleter;
import com.willfp.eco.internal.config.updating.annotations.ConfigUpdater;
import com.willfp.ecobosses.bosses.EcoBoss;
import com.willfp.ecobosses.bosses.EcoBosses;
import org.bukkit.Bukkit;

View File

@@ -1,6 +1,6 @@
package com.willfp.ecobosses.config;
import com.willfp.eco.util.config.ExtendableConfig;
import com.willfp.eco.core.config.ExtendableConfig;
import com.willfp.ecobosses.EcoBossesPlugin;
import org.jetbrains.annotations.NotNull;

View File

@@ -1,11 +1,17 @@
package com.willfp.ecobosses.config;
import com.willfp.eco.util.config.StaticOptionalConfig;
import com.willfp.ecobosses.EcoBossesPlugin;
import com.willfp.eco.core.config.YamlConfig;
import lombok.Getter;
import org.bukkit.configuration.file.YamlConfiguration;
import org.jetbrains.annotations.NotNull;
public class CustomConfig extends StaticOptionalConfig {
public class CustomConfig extends YamlConfig {
/**
* The name of the config.
*/
@Getter
private final String configName;
/**
* Create new custom config.
*
@@ -14,6 +20,7 @@ public class CustomConfig extends StaticOptionalConfig {
*/
public CustomConfig(@NotNull final String configName,
@NotNull final YamlConfiguration config) {
super(configName, config);
super(config);
this.configName = configName;
}
}

View File

@@ -1,6 +1,6 @@
package com.willfp.ecobosses.util;
import com.willfp.eco.util.proxy.AbstractProxy;
import com.willfp.eco.core.proxy.AbstractProxy;
import com.willfp.ecobosses.EcoBossesPlugin;
import com.willfp.ecobosses.proxy.util.ProxyFactory;
import lombok.experimental.UtilityClass;

View File

@@ -1,7 +1,7 @@
name: EcoBosses
version: ${projectVersion}
main: com.willfp.ecobosses.EcoBossesPlugin
api-version: 1.15
api-version: 1.16
authors: [Auxilor]
website: willfp.com
load: STARTUP

View File

@@ -1,6 +1,6 @@
package com.willfp.ecobosses.proxy.proxies;
import com.willfp.eco.util.proxy.AbstractProxy;
import com.willfp.eco.core.proxy.AbstractProxy;
import com.willfp.ecobosses.proxy.util.CustomEntity;
import org.bukkit.Location;
import org.bukkit.entity.LivingEntity;

View File

@@ -1,6 +1,6 @@
package com.willfp.ecobosses.proxy.proxies;
import com.willfp.eco.util.proxy.AbstractProxy;
import com.willfp.eco.core.proxy.AbstractProxy;
import com.willfp.ecobosses.proxy.util.CustomEntity;
import org.bukkit.entity.Illusioner;

View File

@@ -1,10 +1,10 @@
package com.willfp.ecobosses.proxy.util;
import com.willfp.eco.util.internal.PluginDependent;
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
import com.willfp.eco.util.proxy.AbstractProxy;
import com.willfp.eco.util.proxy.ProxyConstants;
import com.willfp.eco.util.proxy.UnsupportedVersionException;
import com.willfp.eco.core.EcoPlugin;
import com.willfp.eco.core.PluginDependent;
import com.willfp.eco.core.proxy.AbstractProxy;
import com.willfp.eco.core.proxy.ProxyConstants;
import com.willfp.eco.core.proxy.UnsupportedVersionException;
import org.jetbrains.annotations.NotNull;
import java.util.IdentityHashMap;
@@ -27,7 +27,7 @@ public class ProxyFactory<T extends AbstractProxy> extends PluginDependent {
* @param plugin The plugin to create proxies for.
* @param proxyClass The class of the proxy interface.
*/
public ProxyFactory(@NotNull final AbstractEcoPlugin plugin,
public ProxyFactory(@NotNull final EcoPlugin plugin,
@NotNull final Class<T> proxyClass) {
super(plugin);
this.proxyClass = proxyClass;