diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/ClaymoreEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/ClaymoreEntity.java index 32f9f72ae..681cea56b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/ClaymoreEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/ClaymoreEntity.java @@ -52,7 +52,7 @@ public class ClaymoreEntity extends Entity implements GeoEntity, OwnableEntity { } public ClaymoreEntity(LivingEntity owner, Level level) { - super(ModEntities.CLAYMORE.get(), level); + this(ModEntities.CLAYMORE.get(), level); if (owner != null) { this.setOwnerUUID(owner.getUUID()); } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/Agm65Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/Agm65Entity.java index fb9792b2e..bd2dd5900 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/Agm65Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/Agm65Entity.java @@ -62,6 +62,8 @@ public class Agm65Entity extends FastThrowableProjectile implements GeoEntity, E public Agm65Entity(LivingEntity entity, Level level) { super(ModEntities.AGM_65.get(), entity, level); + this.noCulling = true; + this.durability = 25; } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/CannonShellEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/CannonShellEntity.java index 6c20f92e2..14b1f3596 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/CannonShellEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/CannonShellEntity.java @@ -61,6 +61,8 @@ public class CannonShellEntity extends FastThrowableProjectile implements GeoEnt public CannonShellEntity(LivingEntity entity, Level world, float damage, float radius, float explosionDamage, float fireProbability, int fireTime, float gravity) { super(ModEntities.CANNON_SHELL.get(), entity, world); + this.noCulling = true; + this.damage = damage; this.radius = radius; this.explosionDamage = explosionDamage; diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/GunGrenadeEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/GunGrenadeEntity.java index 40044b054..3670c099f 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/GunGrenadeEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/GunGrenadeEntity.java @@ -46,6 +46,8 @@ public class GunGrenadeEntity extends FastThrowableProjectile implements GeoEnti public GunGrenadeEntity(LivingEntity entity, Level level, float damage, float explosionDamage, float explosionRadius) { super(ModEntities.GUN_GRENADE.get(), entity, level); + this.noCulling = true; + this.damage = damage; this.explosionDamage = explosionDamage; this.explosionRadius = explosionRadius; diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HandGrenadeEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HandGrenadeEntity.java index 94abd4bd0..2a5fc3389 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HandGrenadeEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HandGrenadeEntity.java @@ -52,6 +52,8 @@ public class HandGrenadeEntity extends FastThrowableProjectile implements GeoEnt public HandGrenadeEntity(LivingEntity entity, Level level, int fuse) { super(ModEntities.HAND_GRENADE.get(), entity, level); + this.noCulling = true; + this.fuse = fuse; } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HeliRocketEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HeliRocketEntity.java index 448231e02..04235b96c 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HeliRocketEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HeliRocketEntity.java @@ -52,6 +52,7 @@ public class HeliRocketEntity extends FastThrowableProjectile implements GeoEnti public HeliRocketEntity(EntityType pEntityType, double pX, double pY, double pZ, Level pLevel) { super(pEntityType, pX, pY, pZ, pLevel); this.noCulling = true; + this.durability = 20; } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/JavelinMissileEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/JavelinMissileEntity.java index 6a4b144d7..5efe1b4c8 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/JavelinMissileEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/JavelinMissileEntity.java @@ -65,6 +65,8 @@ public class JavelinMissileEntity extends FastThrowableProjectile implements Geo public JavelinMissileEntity(LivingEntity entity, Level level, float damage, float explosionDamage, float explosionRadius, int guideType, Vec3 targetPos) { super(ModEntities.JAVELIN_MISSILE.get(), entity, level); + this.noCulling = true; + this.damage = damage; this.explosionDamage = explosionDamage; this.explosionRadius = explosionRadius; diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MelonBombEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MelonBombEntity.java index 8cf5430bb..c9aa20265 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MelonBombEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MelonBombEntity.java @@ -35,6 +35,7 @@ public class MelonBombEntity extends FastThrowableProjectile implements Explosiv public MelonBombEntity(LivingEntity entity, Level level) { super(ModEntities.MELON_BOMB.get(), entity, level); + this.noCulling = true; } protected @NotNull Item getDefaultItem() { diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/Mk82Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/Mk82Entity.java index 2eb6131aa..d9158a80e 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/Mk82Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/Mk82Entity.java @@ -42,6 +42,7 @@ public class Mk82Entity extends FastThrowableProjectile implements GeoEntity, Ex public Mk82Entity(LivingEntity entity, Level level) { super(ModEntities.MK_82.get(), entity, level); + this.noCulling = true; } public Mk82Entity(EntityType pEntityType, double pX, double pY, double pZ, Level pLevel) { diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MortarShellEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MortarShellEntity.java index 07553350e..7bd3bdae8 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MortarShellEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MortarShellEntity.java @@ -70,15 +70,20 @@ public class MortarShellEntity extends FastThrowableProjectile implements GeoEnt public MortarShellEntity(LivingEntity entity, Level level) { super(ModEntities.MORTAR_SHELL.get(), entity, level); + this.noCulling = true; } public MortarShellEntity(LivingEntity entity, Level world, float explosionDamage) { super(ModEntities.MORTAR_SHELL.get(), entity, world); + this.noCulling = true; + this.explosionDamage = explosionDamage; } public MortarShellEntity(LivingEntity entity, Level world, float explosionDamage, float radius) { super(ModEntities.MORTAR_SHELL.get(), entity, world); + this.noCulling = true; + this.explosionDamage = explosionDamage; this.radius = radius; } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/ProjectileEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/ProjectileEntity.java index 48fa6f5f4..297261a48 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/ProjectileEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/ProjectileEntity.java @@ -116,7 +116,7 @@ public class ProjectileEntity extends Projectile implements GeoEntity, CustomSyn } public ProjectileEntity(Level level) { - super(ModEntities.PROJECTILE.get(), level); + this(ModEntities.PROJECTILE.get(), level); } @Nullable diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/RpgRocketEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/RpgRocketEntity.java index 38d179d85..02d406a23 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/RpgRocketEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/RpgRocketEntity.java @@ -50,17 +50,21 @@ public class RpgRocketEntity extends FastThrowableProjectile implements GeoEntit public RpgRocketEntity(EntityType type, Level world) { super(type, world); this.noCulling = true; + this.durability = 20; } public RpgRocketEntity(EntityType pEntityType, double pX, double pY, double pZ, Level pLevel) { super(pEntityType, pX, pY, pZ, pLevel); this.noCulling = true; + this.durability = 20; } public RpgRocketEntity(LivingEntity entity, Level level) { super(ModEntities.RPG_ROCKET.get(), entity, level); + this.noCulling = true; + this.durability = 2; } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SmallCannonShellEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SmallCannonShellEntity.java index 50cfdb6a1..e7273f00e 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SmallCannonShellEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SmallCannonShellEntity.java @@ -51,6 +51,8 @@ public class SmallCannonShellEntity extends FastThrowableProjectile implements G public SmallCannonShellEntity(LivingEntity entity, Level level, float damage, float explosionDamage, float explosionRadius, boolean aa) { super(ModEntities.SMALL_CANNON_SHELL.get(), entity, level); + this.noCulling = true; + this.damage = damage; this.explosionDamage = explosionDamage; this.explosionRadius = explosionRadius; diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SwarmDroneEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SwarmDroneEntity.java index 65df77bed..055de12f7 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SwarmDroneEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SwarmDroneEntity.java @@ -62,10 +62,13 @@ public class SwarmDroneEntity extends FastThrowableProjectile implements GeoEnti public SwarmDroneEntity(double x, double y, double z, Level level) { super(ModEntities.SWARM_DRONE.get(), x, y, z, level); + this.noCulling = true; } public SwarmDroneEntity(LivingEntity entity, Level level, float explosionDamage, float explosionRadius) { super(ModEntities.SWARM_DRONE.get(), entity, level); + this.noCulling = true; + this.explosionDamage = explosionDamage; this.explosionRadius = explosionRadius; } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/TaserBulletEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/TaserBulletEntity.java index 8a67ca26f..8cd213436 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/TaserBulletEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/TaserBulletEntity.java @@ -54,6 +54,8 @@ public class TaserBulletEntity extends AbstractArrow implements GeoEntity { public TaserBulletEntity(LivingEntity entity, Level level, float damage) { super(ModEntities.TASER_BULLET.get(), level); + this.noCulling = true; + this.damage = damage; } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/WgMissileEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/WgMissileEntity.java index ab0540ead..f0722cfbe 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/WgMissileEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/WgMissileEntity.java @@ -57,6 +57,8 @@ public class WgMissileEntity extends FastThrowableProjectile implements GeoEntit public WgMissileEntity(LivingEntity entity, Level level, float damage, float explosionDamage, float explosionRadius) { super(ModEntities.WG_MISSILE.get(), entity, level); + this.noCulling = true; + this.damage = damage; this.explosionDamage = explosionDamage; this.explosionRadius = explosionRadius; diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/AnnihilatorEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/AnnihilatorEntity.java index 8e3cc36a4..97b46c453 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/AnnihilatorEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/AnnihilatorEntity.java @@ -79,12 +79,13 @@ public class AnnihilatorEntity extends EnergyVehicleEntity implements GeoEntity, public AnnihilatorEntity(EntityType type, Level world) { super(type, world); + this.noCulling = true; + this.obb = new OBB(this.position().toVector3f(), new Vector3f(6.4375f, 1.84375f, 4.125f), new Quaternionf(), OBB.Part.BODY); this.obb2 = new OBB(this.position().toVector3f(), new Vector3f(5.0625f, 1.40625f, 1.5f), new Quaternionf(), OBB.Part.BODY); this.obb3 = new OBB(this.position().toVector3f(), new Vector3f(5.1875f, 1.84375f, 1.96875f), new Quaternionf(), OBB.Part.BODY); this.obb4 = new OBB(this.position().toVector3f(), new Vector3f(4.125f, 1.84375f, 0.75f), new Quaternionf(), OBB.Part.BODY); this.obb5 = new OBB(this.position().toVector3f(), new Vector3f(7.75f, 0.71875f, 1.46875f), new Quaternionf(), OBB.Part.BODY); - this.noCulling = true; } @Override diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/PrismTankEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/PrismTankEntity.java index dacb13b44..76945127f 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/PrismTankEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/PrismTankEntity.java @@ -88,6 +88,7 @@ public class PrismTankEntity extends ContainerMobileVehicleEntity implements Geo public PrismTankEntity(EntityType type, Level world) { super(type, world); this.noCulling = true; + this.obb = new OBB(this.position().toVector3f(), new Vector3f(2.4f, 0.8125f, 3.71875f), new Quaternionf(), OBB.Part.BODY); this.obb2 = new OBB(this.position().toVector3f(), new Vector3f(2.4f, 0.5f, 0.375f), new Quaternionf(), OBB.Part.BODY); this.obb3 = new OBB(this.position().toVector3f(), new Vector3f(0.46875f, 0.78125f, 3.3125f), new Quaternionf(), OBB.Part.WHEEL_LEFT);