Skip to content

Commit 3bd579f

Browse files
committed
Merge remote-tracking branch 'upstream/main'
2 parents 0358c79 + 9cc07c3 commit 3bd579f

1 file changed

Lines changed: 11 additions & 15 deletions

File tree

src/main/java/com/altnoir/mia/core/event/common/AbyssMobEvent.java

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,15 @@
2020
import net.neoforged.neoforge.common.util.TriState;
2121

2222
import java.util.Collection;
23+
import java.util.List;
2324
import java.util.Objects;
24-
import java.util.UUID;
2525

2626
public class AbyssMobEvent {
2727
private static final short CHUNK_RADIUS = 28;
28+
private static final List<EntityType<? extends Mob>> riderTypes = List.of(
29+
EntityType.SKELETON,
30+
EntityType.BOGGED
31+
);
2832

2933
public static void onCheckSpawn(Mob mob, ServerLevelAccessor level, MobSpawnType type) {
3034
if (!MiaConfig.abyssMobLevelSwitch) return;
@@ -115,21 +119,13 @@ private static int calculateMobLevel(double euclideanDistance, boolean reverse)
115119
}
116120

117121
private static void createRidingSkeleton(ServerLevel serverLevel, Mob mob) {
118-
EntityType<?>[] riderTypes = {EntityType.SKELETON, EntityType.BOGGED};
119-
var random = serverLevel.getRandom().nextInt(riderTypes.length);
122+
var type = riderTypes.get(serverLevel.getRandom().nextInt(riderTypes.size()));
123+
var rider = type.create(serverLevel, null, mob.blockPosition(), MobSpawnType.EVENT, false, false);
120124

121-
EntityType<?> riders = riderTypes[random];
122-
var rider = riders.create(serverLevel);
125+
if (!(rider instanceof LivingEntity entity))
126+
return;
123127

124-
if (rider != null) {
125-
rider.setUUID(UUID.randomUUID());
126-
rider.moveTo(mob.position());
127-
serverLevel.addFreshEntityWithPassengers(rider);
128-
129-
if (rider instanceof LivingEntity entity) {
130-
entity.setItemSlot(EquipmentSlot.MAINHAND, Items.BOW.getDefaultInstance());
131-
}
132-
rider.startRiding(mob);
133-
}
128+
entity.setItemSlot(EquipmentSlot.MAINHAND, Items.BOW.getDefaultInstance());
129+
rider.startRiding(mob, true);
134130
}
135131
}

0 commit comments

Comments
 (0)