package com.atsuishio.superbwarfare.headshot; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.phys.AABB; import javax.annotation.Nullable; /** * Author: MrCrayfish */ public class ChildHeadshotBox extends BasicHeadshotBox { private final double childHeadScale; private final double headYOffsetScale; public ChildHeadshotBox(double headSize, double headYOffset, double childHeadScale, double headYOffsetScale) { super(headSize, headYOffset); this.childHeadScale = childHeadScale; this.headYOffsetScale = headYOffsetScale; } public ChildHeadshotBox(double headWidth, double headHeight, double headYOffset, double childHeadScale, double headYOffsetScale) { super(headWidth, headHeight, headYOffset); this.childHeadScale = childHeadScale; this.headYOffsetScale = headYOffsetScale; } @Nullable @Override public AABB getHeadshotBox(T entity) { AABB headBox = super.getHeadshotBox(entity); if (headBox != null && entity.isBaby()) { return new AABB(headBox.minX * this.childHeadScale, headBox.minY * this.headYOffsetScale, headBox.minZ * this.childHeadScale, headBox.maxX * this.childHeadScale, headBox.maxY * (this.headYOffsetScale + 0.065), headBox.maxZ * this.childHeadScale); } return headBox; } }