Search in sources :

Example 1 with EntityCreature

use of net.minecraft.server.v1_12_R1.EntityCreature in project Ublisk by Derkades.

the class V1_12_R1 method setTarget.

@Override
public void setTarget(Creature creature, LivingEntity target) {
    CraftCreature craftCreature = (CraftCreature) creature;
    EntityCreature nms = craftCreature.getHandle();
    if (target == null) {
        nms.setGoalTarget(null, null, false);
    } else {
        nms.setGoalTarget(((CraftLivingEntity) target).getHandle(), null, false);
    }
}
Also used : CraftCreature(org.bukkit.craftbukkit.v1_12_R1.entity.CraftCreature) EntityCreature(net.minecraft.server.v1_12_R1.EntityCreature)

Example 2 with EntityCreature

use of net.minecraft.server.v1_12_R1.EntityCreature in project solinia3-core by mixxit.

the class SoliniaLivingEntity method targetSelector.

public void targetSelector() throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
    final net.minecraft.server.v1_12_R1.EntityInsentient e = (net.minecraft.server.v1_12_R1.EntityInsentient) ((org.bukkit.craftbukkit.v1_12_R1.entity.CraftLivingEntity) getBukkitLivingEntity()).getHandle();
    if (!(e instanceof net.minecraft.server.v1_12_R1.EntityCreature) && !(e instanceof net.minecraft.server.v1_12_R1.EntityTameableAnimal))
        return;
    final Field goalsField = net.minecraft.server.v1_12_R1.EntityInsentient.class.getDeclaredField("targetSelector");
    goalsField.setAccessible(true);
    final net.minecraft.server.v1_12_R1.PathfinderGoalSelector goals = (net.minecraft.server.v1_12_R1.PathfinderGoalSelector) goalsField.get(e);
    Field listField = net.minecraft.server.v1_12_R1.PathfinderGoalSelector.class.getDeclaredField("b");
    listField.setAccessible(true);
    Set list = (Set) listField.get(goals);
    list.clear();
    listField = net.minecraft.server.v1_12_R1.PathfinderGoalSelector.class.getDeclaredField("c");
    listField.setAccessible(true);
    list = (Set) listField.get(goals);
    list.clear();
    goals.a(1, (net.minecraft.server.v1_12_R1.PathfinderGoalLookAtPlayer) new net.minecraft.server.v1_12_R1.PathfinderGoalLookAtPlayer(e, (Class) net.minecraft.server.v1_12_R1.EntityHuman.class, 5.0f, 1.0f));
    goals.a(2, (net.minecraft.server.v1_12_R1.PathfinderGoalLookAtPlayer) new net.minecraft.server.v1_12_R1.PathfinderGoalLookAtPlayer(e, (Class) net.minecraft.server.v1_12_R1.EntityHuman.class, 5.0f, 1.0f));
    goals.a(10, (net.minecraft.server.v1_12_R1.PathfinderGoalLookAtPlayer) new net.minecraft.server.v1_12_R1.PathfinderGoalLookAtPlayer(e, (Class) net.minecraft.server.v1_12_R1.EntityHuman.class, 5.0f, 1.0f));
    goals.a(1, new PathfinderGoalOwnerHurtByTarget((EntityTameableAnimal) e));
    goals.a(2, new PathfinderGoalOwnerHurtTarget((EntityTameableAnimal) e));
    goals.a(3, new PathfinderGoalHurtByTarget((EntityCreature) e, true, new Class[0]));
}
Also used : Set(java.util.Set) EntityCreature(net.minecraft.server.v1_12_R1.EntityCreature) EntityTameableAnimal(net.minecraft.server.v1_12_R1.EntityTameableAnimal) Field(java.lang.reflect.Field) EntityTameableAnimal(net.minecraft.server.v1_12_R1.EntityTameableAnimal) PathfinderGoalOwnerHurtTarget(net.minecraft.server.v1_12_R1.PathfinderGoalOwnerHurtTarget) PathfinderGoalOwnerHurtByTarget(net.minecraft.server.v1_12_R1.PathfinderGoalOwnerHurtByTarget) PathfinderGoalHurtByTarget(net.minecraft.server.v1_12_R1.PathfinderGoalHurtByTarget) ISoliniaClass(com.solinia.solinia.Interfaces.ISoliniaClass) EntityCreature(net.minecraft.server.v1_12_R1.EntityCreature)

Aggregations

EntityCreature (net.minecraft.server.v1_12_R1.EntityCreature)2 ISoliniaClass (com.solinia.solinia.Interfaces.ISoliniaClass)1 Field (java.lang.reflect.Field)1 Set (java.util.Set)1 EntityTameableAnimal (net.minecraft.server.v1_12_R1.EntityTameableAnimal)1 PathfinderGoalHurtByTarget (net.minecraft.server.v1_12_R1.PathfinderGoalHurtByTarget)1 PathfinderGoalOwnerHurtByTarget (net.minecraft.server.v1_12_R1.PathfinderGoalOwnerHurtByTarget)1 PathfinderGoalOwnerHurtTarget (net.minecraft.server.v1_12_R1.PathfinderGoalOwnerHurtTarget)1 CraftCreature (org.bukkit.craftbukkit.v1_12_R1.entity.CraftCreature)1