Начинающий
- Статус
- Оффлайн
- Регистрация
- 20 Авг 2024
- Сообщения
- 6
- Реакции
- 0
- Выберите загрузчик игры
- Vanilla
- OptiFine
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
короче делал я MineInfo и подумад слить пастерам ведь ни в какой пасте нету такой хуйни только в никсе есть так что подумал с своего софта слить его, у моего софта база евы кто хочет перенесет думаю завтра будет в всех пастах мира по типу шипучки клиент HudasClient может еще в какихто пастах но чисто с моей доброты сливаю эту херню
ss -
Java:
package fox.client.modules.impl.visual;
import com.google.common.eventbus.Subscribe;
import fox.client.events.EventUpdate;
import fox.client.modules.api.Category;
import fox.client.modules.api.Module;
import fox.client.modules.api.ModuleRegister;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.item.ArmorStandEntity;
import net.minecraft.util.text.StringTextComponent;
import net.minecraft.util.text.TextFormatting;
import net.minecraft.util.text.ITextComponent;
//foxclient
import java.util.regex.Pattern;
//foxclient
@ModuleRegister(name = "MineInfo", category = Category.Visual)
public class MineInfo extends Module {
private static final Minecraft mc = Minecraft.getInstance();
private String lastFoundText = "";
private long lastTextUpdateTime = 0;
//foxclient
//foxclient
private static final Pattern TIME_FORMAT_PATTERN = Pattern.compile("^\\d{2}:\\d+.*$");
//foxclient
@Subscribe
public void onUpdate(EventUpdate event) {
if (mc.world == null || mc.player == null) {
return;
}
findAndDisplayNearestTimeText();
}
//foxclient
//foxclient
private void findAndDisplayNearestTimeText() {
Entity nearestEntity = null;
double minDistance = Double.MAX_VALUE;
//foxclient
//foxclient
for (Entity entity : mc.world.getAllEntities()) {
if (!(entity instanceof ArmorStandEntity)) {
continue;
}
//foxclient
//foxclient
if (!entity.hasCustomName()) {
continue;
}
//foxclient
//foxclient
ITextComponent customNameComponent = entity.getCustomName();
if (customNameComponent == null) {
continue;
}
String customName = customNameComponent.getString();
if (!isValidTimeText(customName)) {
continue;
}
//foxclient
//foxclient
double distance = entity.getDistanceSq(
mc.player.getPosX(),
mc.player.getPosY(),
mc.player.getPosZ()
);
if (distance < minDistance) {
minDistance = distance;
nearestEntity = entity;
}
}
//foxclient
if (nearestEntity != null) {
String text = nearestEntity.getCustomName().getString();
if (!text.equals(lastFoundText) || System.currentTimeMillis() - lastTextUpdateTime > 1000) {
displayTextAboveHotbar(text);
lastFoundText = text;
lastTextUpdateTime = System.currentTimeMillis();
}
}
}
//foxclient
//foxclient
private boolean isValidTimeText(String text) {
if (text == null || text.isEmpty()) {
return false;
}
//foxclient
//foxclient
if (!TIME_FORMAT_PATTERN.matcher(text).matches()) {
return false;
}
//foxclient
//foxclient
for (char c : text.toCharArray()) {
if (c != ':' && Character.isLetter(c)) {
return false;
}
}
//foxclient
return true;
}
//foxclient
//foxclient
private void displayTextAboveHotbar(String text) {
if (mc.player != null) {
mc.ingameGUI.setOverlayMessage(
new StringTextComponent(TextFormatting.GOLD + "[MineInfo] " +
TextFormatting.WHITE + text),
false
);
}
}
}
ss -