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 6b7ae0f8b..c4f55aa62 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/AnnihilatorEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/AnnihilatorEntity.java @@ -361,7 +361,7 @@ public class AnnihilatorEntity extends EnergyVehicleEntity implements GeoEntity, hitResult = entityhitresult; } if (hitResult.getType() == HitResult.Type.ENTITY) { - Entity passenger = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger = this.getFirstPassenger(); Entity target = ((EntityHitResult) hitResult).getEntity(); if (passenger != null) { @@ -384,7 +384,7 @@ public class AnnihilatorEntity extends EnergyVehicleEntity implements GeoEntity, } private void laserExplosion(Vec3 pos) { - Entity passenger = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger = this.getFirstPassenger(); if (passenger != null) { CustomExplosion explosion = new CustomExplosion(this.level(), passenger, @@ -474,7 +474,7 @@ public class AnnihilatorEntity extends EnergyVehicleEntity implements GeoEntity, @Override public void travel() { - Entity passenger = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger = this.getFirstPassenger(); if (this.getEnergy() <= 0) return; if (passenger instanceof LivingEntity entity) { diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Bmp2Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Bmp2Entity.java index 92c3bd401..f1fb64484 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Bmp2Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Bmp2Entity.java @@ -437,8 +437,8 @@ public class Bmp2Entity extends ContainerMobileVehicleEntity implements GeoEntit @Override public void travel() { - Entity passenger0 = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); - + Entity passenger0 = this.getFirstPassenger(); + if (this.getEnergy() <= 0) return; if (passenger0 == null) { @@ -590,7 +590,7 @@ public class Bmp2Entity extends ContainerMobileVehicleEntity implements GeoEntit float z = 0.75f; y += (float) passenger.getMyRidingOffset(); - int i = this.getPassengers().indexOf(passenger); + int i = this.getSeatIndex(passenger); Vector4f worldPosition; if (i == 0) { diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Lav150Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Lav150Entity.java index 02077acd5..a4b0d3a08 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Lav150Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Lav150Entity.java @@ -387,7 +387,7 @@ public class Lav150Entity extends ContainerMobileVehicleEntity implements GeoEnt @Override public void travel() { - Entity passenger0 = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger0 = this.getFirstPassenger(); if (this.getEnergy() <= 0) return; @@ -542,7 +542,7 @@ public class Lav150Entity extends ContainerMobileVehicleEntity implements GeoEnt float z = 0.56f; y += (float) passenger.getMyRidingOffset(); - int i = this.getPassengers().indexOf(passenger); + int i = this.getSeatIndex(passenger); Vector4f worldPosition; if (i == 0) { diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Mk42Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Mk42Entity.java index 3d0c91a9b..547b39863 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Mk42Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Mk42Entity.java @@ -349,7 +349,7 @@ public class Mk42Entity extends VehicleEntity implements GeoEntity, CannonEntity @Override public void travel() { - Entity passenger = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger = this.getFirstPassenger(); if (passenger != null) { entityData.set(YAW, passenger.getYHeadRot()); entityData.set(PITCH, passenger.getXRot() - 1.3f); diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Mle1934Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Mle1934Entity.java index 8cb2da975..7e534c0dc 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Mle1934Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Mle1934Entity.java @@ -439,7 +439,7 @@ public class Mle1934Entity extends VehicleEntity implements GeoEntity, CannonEnt @Override public void travel() { - Entity passenger = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger = this.getFirstPassenger(); if (passenger != null) { entityData.set(YAW, passenger.getYHeadRot()); entityData.set(PITCH, passenger.getXRot() - 1.2f); diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/SpeedboatEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/SpeedboatEntity.java index 6ffa4c7eb..0e1e85650 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/SpeedboatEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/SpeedboatEntity.java @@ -281,7 +281,7 @@ public class SpeedboatEntity extends ContainerMobileVehicleEntity implements Geo @Override public void travel() { - Entity passenger0 = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger0 = this.getFirstPassenger(); if (this.getEnergy() <= 0) return; @@ -388,8 +388,8 @@ public class SpeedboatEntity extends ContainerMobileVehicleEntity implements Geo pPassenger.setYHeadRot((float) (pPassenger.getYHeadRot() - Math.max(5 * this.getDeltaMovement().length(), 0.3) * this.entityData.get(DELTA_ROT))); } - if (this.getPassengers().size() > 1) { - int i = this.getPassengers().indexOf(pPassenger); + if (this.getOrderedPassengers().size() > 1) { + int i = this.getSeatIndex(pPassenger); if (i == 0) { pCallback.accept(pPassenger, this.getX(), posY, this.getZ()); return; diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Tom6Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Tom6Entity.java index 5197f4894..d9fedb1fd 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Tom6Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Tom6Entity.java @@ -147,7 +147,7 @@ public class Tom6Entity extends MobileVehicleEntity implements GeoEntity { @Override public void travel() { - Entity passenger = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger = this.getFirstPassenger(); // if (this.getEnergy() <= 0) return; @@ -265,7 +265,7 @@ public class Tom6Entity extends MobileVehicleEntity implements GeoEntity { float z = -0.4f; y += (float) passenger.getMyRidingOffset(); - int i = this.getPassengers().indexOf(passenger); + int i = this.getSeatIndex(passenger); if (i == 0) { Vector4f worldPosition = transformPosition(transform, x, y, z); diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/WheelChairEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/WheelChairEntity.java index 5d0657e05..bf656ee2f 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/WheelChairEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/WheelChairEntity.java @@ -150,7 +150,7 @@ public class WheelChairEntity extends MobileVehicleEntity implements GeoEntity { @Override public void travel() { - Entity passenger = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger = this.getFirstPassenger(); float diffY = 0; diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Yx100Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Yx100Entity.java index b0312954e..0f68c69cb 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Yx100Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Yx100Entity.java @@ -407,7 +407,7 @@ public class Yx100Entity extends ContainerMobileVehicleEntity implements GeoEnti @Override public void travel() { - Entity passenger0 = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger0 = this.getFirstPassenger(); if (this.getEnergy() <= 0) return; @@ -569,7 +569,7 @@ public class Yx100Entity extends ContainerMobileVehicleEntity implements GeoEnti float z = 0.6076875f; y += (float) passenger.getMyRidingOffset(); - int i = this.getPassengers().indexOf(passenger); + int i = this.getSeatIndex(passenger); Vector4f worldPosition = transformPosition(transform, x, y, z); diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Yx100GunEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Yx100GunEntity.java index 36a0c3ea0..b7678b7a1 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Yx100GunEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Yx100GunEntity.java @@ -117,7 +117,7 @@ public class Yx100GunEntity extends VehicleEntity implements GeoEntity, CannonEn @Override public void travel() { - Entity passenger = this.getPassengers().isEmpty() ? null : this.getPassengers().get(0); + Entity passenger = this.getFirstPassenger(); float diffY = 0; float diffX = 0;