Начинающий
- Статус
- Оффлайн
- Регистрация
- 26 Июн 2025
- Сообщения
- 42
- Реакции
- 0
- Выберите загрузчик игры
- Vanilla
- Forge
- Fabric
- NeoForge
- OptiFine
- ForgeOptiFine
- Прочие моды
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Простой ShulkerVisible exp 3.1
ShulkerVisible 1.16.5:
public class ShulkerVisible extends Module {
@Subscribe
public void onRender(EventDisplay event) {
RenderSystem.enableBlend();
RenderSystem.blendFunc(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA);
for (Entity entity : mc.world.getAllEntities()) {
double x = 0, y = 0, z = 0;
ItemStack stack = null;
if (entity instanceof PlayerEntity) {
PlayerEntity player = (PlayerEntity) entity;
if (player.getUniqueID().equals(mc.player.getUniqueID()) ) continue;
stack = player.inventory.getCurrentItem();
x = player.getPosX();
y = player.getPosY() + player.getHeight() + 1.5f;
z = player.getPosZ();
}
if (entity instanceof ItemEntity) {
ItemStack s = ((ItemEntity) entity).getItem();
if (Block.getBlockFromItem(s.getItem()) instanceof ShulkerBoxBlock) {
stack = s;
x = entity.getPosX();
y = entity.getPosY() + 0.75f;
z = entity.getPosZ();
}
}
if (stack == null || ! (Block.getBlockFromItem(stack.getItem()) instanceof ShulkerBoxBlock)) continue;
CompoundNBT tag = stack.getTag();
if (tag == null || !tag.contains("BlockEntityTag", 10)) continue;
CompoundNBT blocksTag = tag.getCompound("BlockEntityTag");
if (!blocksTag.contains("Items", 9)) continue;
NonNullList<ItemStack> items = NonNullList.withSize(27, ItemStack.EMPTY);
ItemStackHelper.loadAllItems(blocksTag, items);
if (items.isEmpty() ) continue;
Vector2f vec = ProjectionUtil.project((float) x, (float) y, (float) z);
if (vec == null) continue;
double dx = mc.player.getPosX() - x;
double dy = mc.player.getPosY() - y;
double dz = mc.player.getPosZ() - z;
double distance = Math.sqrt(dx * dx + dy * dy + dz * dz);
double scale = MathUtil.lerp(0.5, 1.75, 2.5 / distance);
GlStateManager.pushMatrix();
GlStateManager.translatef(vec.x, vec.y, 0);
GlStateManager.scalef((float) scale, (float) scale, 1.0f);
float slotSize = 18.0f;
float slotSpacing = 2.0f;
float padding = 4.0f;
float width = (slotSize * 9) + (slotSpacing * 8) + (padding * 2);
float height = (slotSize * 3) + (slotSpacing * 2) + (padding * 2);
float shadowOffset = 2.0f ;
RenderUtility.drawRect(shadowOffset, shadowOffset, width, height, ColorUtils.rgba(0, 0, 0, 0));
RenderUtility.drawRoundedRect(0, 0, width, height,
ColorUtils.rgba(30, 30, 30, 100),
ColorUtils.rgba(50, 50, 50, 200));
RenderUtility.drawRoundedRect(0, 0, width, height, 3.0f, ColorUtils.rgba(100, 100, 100, 50));
float posX = padding ;
float posY = padding;
for (int i = 0; i < 27; i++) {
RenderUtility.drawRoundedRect(posX, posY, slotSize, slotSize, 1.0f, ColorUtils.rgba(80, 80, 80, 80));
posX += slotSize + slotSpacing;
if ((i + 1) % 9 == 0) {
posX = padding;
posY += slotSize + slotSpacing;
}
}
posX = padding;
posY = padding;
for (int i = 0; i < items.size(); i++) {
ItemStack item = items.get(i);
if (!item.isEmpty()) {
mc.getItemRenderer().renderItemAndEffectIntoGUI(item, (int) posX, (int) posY);
mc.getItemRenderer().renderItemOverlayIntoGUI(mc.fontRenderer, item, (int) posX, (int) posY, null);
}
posX += slotSize + slotSpacing;
if ((i + 1) % 9 == 0) {
posX = padding;
posY += slotSize + slotSpacing;
}
}
String title = stack.getDisplayName().getString();
float titleX = (width - mc.fontRenderer.getStringWidth(title)) / 2;
GlStateManager.popMatrix();
}
RenderSystem.disableBlend();
}
}