• Я зарабатываю 100 000 RUB / месяц на этом сайте!

    А знаешь как? Я всего-лишь публикую (создаю темы), а админ мне платит. Трачу деньги на мороженое, робуксы и сервера в Minecraft. А ещё на паль из Китая. 

    Хочешь так же? Пиши и узнавай условия: https://t.me/alex_redact
    Реклама: https://t.me/yougame_official

Обход античита ReallyWorld HP FIX | Fabric 1.20.x

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
18 Авг 2023
Сообщения
480
Реакции
9
code:
Expand Collapse Copy
package net.evaware.mixin;

import net.evaware.module.impl.combat.AntiBot;
import net.evaware.utils.client.ClientUtil;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.AbstractClientPlayerEntity;
import net.minecraft.client.render.VertexConsumerProvider;
import net.minecraft.client.render.entity.EntityRendererFactory;
import net.minecraft.client.render.entity.LivingEntityRenderer;
import net.minecraft.client.render.entity.PlayerEntityRenderer;
import net.minecraft.client.render.entity.model.PlayerEntityModel;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.scoreboard.*;
import net.minecraft.text.Text;
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.CallbackInfo;

@Mixin(PlayerEntityRenderer.class)
public abstract class MixinPlayerEntityRenderer extends LivingEntityRenderer<AbstractClientPlayerEntity, PlayerEntityModel<AbstractClientPlayerEntity>> {

    public MixinPlayerEntityRenderer(EntityRendererFactory.Context ctx, PlayerEntityModel<AbstractClientPlayerEntity> model, float shadowRadius) {
        super(ctx, model, shadowRadius);
    }

    @Inject(method = "renderLabelIfPresent*", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/util/math/MatrixStack;translate(FFF)V", shift = At.Shift.AFTER))
    private void onRenderLabelIfPresent(AbstractClientPlayerEntity abstractClientPlayerEntity, Text text, MatrixStack matrixStack, VertexConsumerProvider vertexConsumerProvider, int i, CallbackInfo ci) {
        MinecraftClient client = MinecraftClient.getInstance();

        if (client.world == null || client.player == null) return;

        if (!ClientUtil.serverIPConstains("reallyworld")) return;

        Scoreboard scoreboard = abstractClientPlayerEntity.getScoreboard();
        ScoreboardObjective scoreboardObjective = scoreboard.getObjectiveForSlot(ScoreboardDisplaySlot.BELOW_NAME);

        if (scoreboardObjective != null) {
            for (PlayerEntity player : client.world.getPlayers()) {
                if (player == null || player.equals(client.player) || AntiBot.isBot(player)) continue;

                try {
                    ScoreAccess score = scoreboard.getOrCreateScore(player, scoreboardObjective);
                    String scoreText = (score == null ? 20 : score.getScore()) + " " + scoreboardObjective.getDisplayName().getString();
                    String scoreNumber = scoreText.replaceAll("[^0-9]", "");
                    int hp = Integer.parseInt(scoreNumber);

                    if (hp >= 0 && hp <= player.getMaxHealth()) {
                        player.setHealth((float) hp);
                    }
                } catch (NumberFormatException e) {
                    System.err.println("Failed to parse scoreboard data for player: " + player.getName().getString());
                    e.printStackTrace();
                }
            }
        }
    }
}
простенький фикс хп, ничего такого
 
ну блин я хотел на евочку посмотреть
 
code:
Expand Collapse Copy
package net.evaware.mixin;

import net.evaware.module.impl.combat.AntiBot;
import net.evaware.utils.client.ClientUtil;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.AbstractClientPlayerEntity;
import net.minecraft.client.render.VertexConsumerProvider;
import net.minecraft.client.render.entity.EntityRendererFactory;
import net.minecraft.client.render.entity.LivingEntityRenderer;
import net.minecraft.client.render.entity.PlayerEntityRenderer;
import net.minecraft.client.render.entity.model.PlayerEntityModel;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.scoreboard.*;
import net.minecraft.text.Text;
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.CallbackInfo;

@Mixin(PlayerEntityRenderer.class)
public abstract class MixinPlayerEntityRenderer extends LivingEntityRenderer<AbstractClientPlayerEntity, PlayerEntityModel<AbstractClientPlayerEntity>> {

    public MixinPlayerEntityRenderer(EntityRendererFactory.Context ctx, PlayerEntityModel<AbstractClientPlayerEntity> model, float shadowRadius) {
        super(ctx, model, shadowRadius);
    }

    @Inject(method = "renderLabelIfPresent*", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/util/math/MatrixStack;translate(FFF)V", shift = At.Shift.AFTER))
    private void onRenderLabelIfPresent(AbstractClientPlayerEntity abstractClientPlayerEntity, Text text, MatrixStack matrixStack, VertexConsumerProvider vertexConsumerProvider, int i, CallbackInfo ci) {
        MinecraftClient client = MinecraftClient.getInstance();

        if (client.world == null || client.player == null) return;

        if (!ClientUtil.serverIPConstains("reallyworld")) return;

        Scoreboard scoreboard = abstractClientPlayerEntity.getScoreboard();
        ScoreboardObjective scoreboardObjective = scoreboard.getObjectiveForSlot(ScoreboardDisplaySlot.BELOW_NAME);

        if (scoreboardObjective != null) {
            for (PlayerEntity player : client.world.getPlayers()) {
                if (player == null || player.equals(client.player) || AntiBot.isBot(player)) continue;

                try {
                    ScoreAccess score = scoreboard.getOrCreateScore(player, scoreboardObjective);
                    String scoreText = (score == null ? 20 : score.getScore()) + " " + scoreboardObjective.getDisplayName().getString();
                    String scoreNumber = scoreText.replaceAll("[^0-9]", "");
                    int hp = Integer.parseInt(scoreNumber);

                    if (hp >= 0 && hp <= player.getMaxHealth()) {
                        player.setHealth((float) hp);
                    }
                } catch (NumberFormatException e) {
                    System.err.println("Failed to parse scoreboard data for player: " + player.getName().getString());
                    e.printStackTrace();
                }
            }
        }
    }
}
простенький фикс хп, ничего такого
бля сделай под 3.1 а так годно :seemsgood:
 
code:
Expand Collapse Copy
package net.evaware.mixin;

import net.evaware.module.impl.combat.AntiBot;
import net.evaware.utils.client.ClientUtil;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.AbstractClientPlayerEntity;
import net.minecraft.client.render.VertexConsumerProvider;
import net.minecraft.client.render.entity.EntityRendererFactory;
import net.minecraft.client.render.entity.LivingEntityRenderer;
import net.minecraft.client.render.entity.PlayerEntityRenderer;
import net.minecraft.client.render.entity.model.PlayerEntityModel;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.scoreboard.*;
import net.minecraft.text.Text;
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.CallbackInfo;

@Mixin(PlayerEntityRenderer.class)
public abstract class MixinPlayerEntityRenderer extends LivingEntityRenderer<AbstractClientPlayerEntity, PlayerEntityModel<AbstractClientPlayerEntity>> {

    public MixinPlayerEntityRenderer(EntityRendererFactory.Context ctx, PlayerEntityModel<AbstractClientPlayerEntity> model, float shadowRadius) {
        super(ctx, model, shadowRadius);
    }

    @Inject(method = "renderLabelIfPresent*", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/util/math/MatrixStack;translate(FFF)V", shift = At.Shift.AFTER))
    private void onRenderLabelIfPresent(AbstractClientPlayerEntity abstractClientPlayerEntity, Text text, MatrixStack matrixStack, VertexConsumerProvider vertexConsumerProvider, int i, CallbackInfo ci) {
        MinecraftClient client = MinecraftClient.getInstance();

        if (client.world == null || client.player == null) return;

        if (!ClientUtil.serverIPConstains("reallyworld")) return;

        Scoreboard scoreboard = abstractClientPlayerEntity.getScoreboard();
        ScoreboardObjective scoreboardObjective = scoreboard.getObjectiveForSlot(ScoreboardDisplaySlot.BELOW_NAME);

        if (scoreboardObjective != null) {
            for (PlayerEntity player : client.world.getPlayers()) {
                if (player == null || player.equals(client.player) || AntiBot.isBot(player)) continue;

                try {
                    ScoreAccess score = scoreboard.getOrCreateScore(player, scoreboardObjective);
                    String scoreText = (score == null ? 20 : score.getScore()) + " " + scoreboardObjective.getDisplayName().getString();
                    String scoreNumber = scoreText.replaceAll("[^0-9]", "");
                    int hp = Integer.parseInt(scoreNumber);

                    if (hp >= 0 && hp <= player.getMaxHealth()) {
                        player.setHealth((float) hp);
                    }
                } catch (NumberFormatException e) {
                    System.err.println("Failed to parse scoreboard data for player: " + player.getName().getString());
                    e.printStackTrace();
                }
            }
        }
    }
}
простенький фикс хп, ничего такого
дай базу нам или килку лучше
 
code:
Expand Collapse Copy
package net.evaware.mixin;

import net.evaware.module.impl.combat.AntiBot;
import net.evaware.utils.client.ClientUtil;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.AbstractClientPlayerEntity;
import net.minecraft.client.render.VertexConsumerProvider;
import net.minecraft.client.render.entity.EntityRendererFactory;
import net.minecraft.client.render.entity.LivingEntityRenderer;
import net.minecraft.client.render.entity.PlayerEntityRenderer;
import net.minecraft.client.render.entity.model.PlayerEntityModel;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.scoreboard.*;
import net.minecraft.text.Text;
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.CallbackInfo;

@Mixin(PlayerEntityRenderer.class)
public abstract class MixinPlayerEntityRenderer extends LivingEntityRenderer<AbstractClientPlayerEntity, PlayerEntityModel<AbstractClientPlayerEntity>> {

    public MixinPlayerEntityRenderer(EntityRendererFactory.Context ctx, PlayerEntityModel<AbstractClientPlayerEntity> model, float shadowRadius) {
        super(ctx, model, shadowRadius);
    }

    @Inject(method = "renderLabelIfPresent*", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/util/math/MatrixStack;translate(FFF)V", shift = At.Shift.AFTER))
    private void onRenderLabelIfPresent(AbstractClientPlayerEntity abstractClientPlayerEntity, Text text, MatrixStack matrixStack, VertexConsumerProvider vertexConsumerProvider, int i, CallbackInfo ci) {
        MinecraftClient client = MinecraftClient.getInstance();

        if (client.world == null || client.player == null) return;

        if (!ClientUtil.serverIPConstains("reallyworld")) return;

        Scoreboard scoreboard = abstractClientPlayerEntity.getScoreboard();
        ScoreboardObjective scoreboardObjective = scoreboard.getObjectiveForSlot(ScoreboardDisplaySlot.BELOW_NAME);

        if (scoreboardObjective != null) {
            for (PlayerEntity player : client.world.getPlayers()) {
                if (player == null || player.equals(client.player) || AntiBot.isBot(player)) continue;

                try {
                    ScoreAccess score = scoreboard.getOrCreateScore(player, scoreboardObjective);
                    String scoreText = (score == null ? 20 : score.getScore()) + " " + scoreboardObjective.getDisplayName().getString();
                    String scoreNumber = scoreText.replaceAll("[^0-9]", "");
                    int hp = Integer.parseInt(scoreNumber);

                    if (hp >= 0 && hp <= player.getMaxHealth()) {
                        player.setHealth((float) hp);
                    }
                } catch (NumberFormatException e) {
                    System.err.println("Failed to parse scoreboard data for player: " + player.getName().getString());
                    e.printStackTrace();
                }
            }
        }
    }
}
простенький фикс хп, ничего такого
Чат гпт напишы паже фикс хп рв
 
code:
Expand Collapse Copy
package net.evaware.mixin;

import net.evaware.module.impl.combat.AntiBot;
import net.evaware.utils.client.ClientUtil;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.AbstractClientPlayerEntity;
import net.minecraft.client.render.VertexConsumerProvider;
import net.minecraft.client.render.entity.EntityRendererFactory;
import net.minecraft.client.render.entity.LivingEntityRenderer;
import net.minecraft.client.render.entity.PlayerEntityRenderer;
import net.minecraft.client.render.entity.model.PlayerEntityModel;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.scoreboard.*;
import net.minecraft.text.Text;
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.CallbackInfo;

@Mixin(PlayerEntityRenderer.class)
public abstract class MixinPlayerEntityRenderer extends LivingEntityRenderer<AbstractClientPlayerEntity, PlayerEntityModel<AbstractClientPlayerEntity>> {

    public MixinPlayerEntityRenderer(EntityRendererFactory.Context ctx, PlayerEntityModel<AbstractClientPlayerEntity> model, float shadowRadius) {
        super(ctx, model, shadowRadius);
    }

    @Inject(method = "renderLabelIfPresent*", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/util/math/MatrixStack;translate(FFF)V", shift = At.Shift.AFTER))
    private void onRenderLabelIfPresent(AbstractClientPlayerEntity abstractClientPlayerEntity, Text text, MatrixStack matrixStack, VertexConsumerProvider vertexConsumerProvider, int i, CallbackInfo ci) {
        MinecraftClient client = MinecraftClient.getInstance();

        if (client.world == null || client.player == null) return;

        if (!ClientUtil.serverIPConstains("reallyworld")) return;

        Scoreboard scoreboard = abstractClientPlayerEntity.getScoreboard();
        ScoreboardObjective scoreboardObjective = scoreboard.getObjectiveForSlot(ScoreboardDisplaySlot.BELOW_NAME);

        if (scoreboardObjective != null) {
            for (PlayerEntity player : client.world.getPlayers()) {
                if (player == null || player.equals(client.player) || AntiBot.isBot(player)) continue;

                try {
                    ScoreAccess score = scoreboard.getOrCreateScore(player, scoreboardObjective);
                    String scoreText = (score == null ? 20 : score.getScore()) + " " + scoreboardObjective.getDisplayName().getString();
                    String scoreNumber = scoreText.replaceAll("[^0-9]", "");
                    int hp = Integer.parseInt(scoreNumber);

                    if (hp >= 0 && hp <= player.getMaxHealth()) {
                        player.setHealth((float) hp);
                    }
                } catch (NumberFormatException e) {
                    System.err.println("Failed to parse scoreboard data for player: " + player.getName().getString());
                    e.printStackTrace();
                }
            }
        }
    }
}
простенький фикс хп, ничего такого
/del
 
Назад
Сверху Снизу