Search in sources :

Example 26 with EntitySize

use of de.Keyle.MyPet.api.entity.EntitySize in project MyPet by xXKeyleXx.

the class EntityMyMagmaCube method getDimensions.

@Override
public net.minecraft.world.entity.EntityDimensions getDimensions(Pose entitypose) {
    EntitySize es = this.getClass().getAnnotation(EntitySize.class);
    if (es != null) {
        int size = Math.max(1, getMyPet().getSize());
        float width = es.width();
        float height = Float.isNaN(es.height()) ? width : es.height();
        return new net.minecraft.world.entity.EntityDimensions(width * size, height * size, false);
    }
    return super.getDimensions(entitypose);
}
Also used : EntitySize(de.Keyle.MyPet.api.entity.EntitySize)

Example 27 with EntitySize

use of de.Keyle.MyPet.api.entity.EntitySize in project MyPet by xXKeyleXx.

the class EntityMyPet method a.

// Obfuscated Methods -------------------------------------------------------------------------------------------
@Override
public net.minecraft.server.v1_16_R3.EntitySize a(EntityPose entitypose) {
    EntitySize es = this.getClass().getAnnotation(EntitySize.class);
    if (es != null) {
        float width = es.width();
        float height = java.lang.Float.isNaN(es.height()) ? width : es.height();
        return new net.minecraft.server.v1_16_R3.EntitySize(width, height, false);
    }
    return super.a(entitypose);
}
Also used : EntitySize(de.Keyle.MyPet.api.entity.EntitySize)

Example 28 with EntitySize

use of de.Keyle.MyPet.api.entity.EntitySize in project MyPet by xXKeyleXx.

the class EntityMySlime method a.

@Override
public net.minecraft.server.v1_16_R1.EntitySize a(EntityPose entitypose) {
    EntitySize es = this.getClass().getAnnotation(EntitySize.class);
    if (es != null) {
        int size = Math.max(1, getMyPet().getSize());
        float width = es.width();
        float height = java.lang.Float.isNaN(es.height()) ? width : es.height();
        return new net.minecraft.server.v1_16_R1.EntitySize(width * size, height * size, false);
    }
    return super.a(entitypose);
}
Also used : EntitySize(de.Keyle.MyPet.api.entity.EntitySize)

Example 29 with EntitySize

use of de.Keyle.MyPet.api.entity.EntitySize in project MyPet by xXKeyleXx.

the class EntityMySlime method updateVisuals.

@Override
public void updateVisuals() {
    int size = Math.max(1, getMyPet().getSize());
    this.datawatcher.watch(16, (byte) size);
    EntitySize es = EntityMySlime.class.getAnnotation(EntitySize.class);
    if (es != null) {
        this.setSize(es.width() * size, es.width() * size);
    }
    if (petPathfinderSelector != null && petPathfinderSelector.hasGoal("MeleeAttack")) {
        petPathfinderSelector.replaceGoal("MeleeAttack", new MeleeAttack(this, 0.1F, 3 + (getMyPet().getSize() * 0.51), 20));
    }
}
Also used : EntitySize(de.Keyle.MyPet.api.entity.EntitySize) MeleeAttack(de.Keyle.MyPet.compat.v1_8_R3.entity.ai.attack.MeleeAttack)

Example 30 with EntitySize

use of de.Keyle.MyPet.api.entity.EntitySize in project MyPet by xXKeyleXx.

the class EntityMyMagmaCube method updateVisuals.

@Override
public void updateVisuals() {
    int size = Math.max(1, getMyPet().getSize());
    this.datawatcher.watch(16, (byte) size);
    EntitySize es = EntityMyMagmaCube.class.getAnnotation(EntitySize.class);
    if (es != null) {
        this.setSize(es.width() * size, es.width() * size);
    }
    if (petPathfinderSelector != null && petPathfinderSelector.hasGoal("MeleeAttack")) {
        petPathfinderSelector.replaceGoal("MeleeAttack", new MeleeAttack(this, 0.1F, 3 + (getMyPet().getSize() * 0.51), 20));
    }
}
Also used : EntitySize(de.Keyle.MyPet.api.entity.EntitySize) MeleeAttack(de.Keyle.MyPet.compat.v1_8_R3.entity.ai.attack.MeleeAttack)

Aggregations

EntitySize (de.Keyle.MyPet.api.entity.EntitySize)32 MeleeAttack (de.Keyle.MyPet.compat.v1_10_R1.entity.ai.attack.MeleeAttack)2 MeleeAttack (de.Keyle.MyPet.compat.v1_11_R1.entity.ai.attack.MeleeAttack)2 MeleeAttack (de.Keyle.MyPet.compat.v1_12_R1.entity.ai.attack.MeleeAttack)2 MeleeAttack (de.Keyle.MyPet.compat.v1_7_R4.entity.ai.attack.MeleeAttack)2 MeleeAttack (de.Keyle.MyPet.compat.v1_8_R1.entity.ai.attack.MeleeAttack)2 MeleeAttack (de.Keyle.MyPet.compat.v1_8_R2.entity.ai.attack.MeleeAttack)2 MeleeAttack (de.Keyle.MyPet.compat.v1_8_R3.entity.ai.attack.MeleeAttack)2 MeleeAttack (de.Keyle.MyPet.compat.v1_9_R1.entity.ai.attack.MeleeAttack)2 MeleeAttack (de.Keyle.MyPet.compat.v1_9_R2.entity.ai.attack.MeleeAttack)2