Texture compress & entity mixin

This commit is contained in:
paulevsGitch 2020-10-22 16:28:51 +03:00
parent dcfc3fc4a9
commit b429eb604a
81 changed files with 31 additions and 0 deletions

View file

@ -0,0 +1,30 @@
package ru.betterend.mixin.common;
import java.util.List;
import java.util.Random;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import net.minecraft.entity.EntityType;
import net.minecraft.entity.SpawnReason;
import net.minecraft.entity.mob.EndermanEntity;
import net.minecraft.entity.mob.HostileEntity;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Box;
import net.minecraft.world.ServerWorldAccess;
@Mixin(HostileEntity.class)
public class HostileEntityMixin {
@Inject(method = "canSpawnInDark", at = @At(value = "RETURN"))
private static void endermenCheck(EntityType<? extends HostileEntity> type, ServerWorldAccess serverWorldAccess, SpawnReason spawnReason, BlockPos pos, Random random, CallbackInfoReturnable<Boolean> info) {
boolean canSpawn = info.getReturnValue();
if (canSpawn && spawnReason == SpawnReason.NATURAL) {
Box box = new Box(pos).expand(16);
List<EndermanEntity> entities = serverWorldAccess.getEntitiesByClass(EndermanEntity.class, box, (entity) -> { return true; });
info.setReturnValue(entities.size() < 6);
}
}
}