Начинающий
- Статус
- Оффлайн
- Регистрация
- 19 Май 2025
- Сообщения
- 171
- Реакции
- 0
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Всем салам!
Делаю для вас гайд на MainMenu и AltManager
приступаем
1:нажимаем CTRL + SHIFT + R и в 1 поле пишем
new MainScreen
и во 2
new MainMenuScreen
от так как на фото
шаг
2: Ищем класс MainMenuScreen по пути net.minecraft.client.gui.screen.MainMenuScreen или
тап тут
на за лупу
и надо написать в поле MainMenuScreen от так
и тапаем на класс MainMenuScreen.java
и я знаю што щяс начнете а ет куда а у меня такого нету от вам код если че пишите (код у MainMenuScreen вставлять)
так запастили и захотели писать там ошибка дай то и то
он вам то что надо вам в сурс закинуть от например
src im.expensive или как у вас там
качаем архив с альт менеджером и пастим куда я сказал више архив:
если что то нету пишите
ет имба вариант альт менеджер он не виснет как в многих читах тот маленький от например у харуке (noad) зависает
скрин альт менеджера
администрация я вас люблю особенно lustman или как его там ток не делитай тему я ее 10 мин писал
Делаю для вас гайд на MainMenu и AltManager
приступаем
1:нажимаем CTRL + SHIFT + R и в 1 поле пишем
new MainScreen
и во 2
new MainMenuScreen
от так как на фото
шаг
2: Ищем класс MainMenuScreen по пути net.minecraft.client.gui.screen.MainMenuScreen или
тап тут
и надо написать в поле MainMenuScreen от так
и тапаем на класс MainMenuScreen.java
и я знаю што щяс начнете а ет куда а у меня такого нету от вам код если че пишите (код у MainMenuScreen вставлять)
Java:
package net.minecraft.client.gui.screen;
import com.google.common.util.concurrent.Runnables;
import com.mojang.blaze3d.matrix.MatrixStack;
import com.mojang.blaze3d.platform.GlStateManager;
import com.mojang.blaze3d.systems.RenderSystem;
import wtf.star.altmanager.AccountManagement;
import wtf.star.utils.render.DisplayUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.AccessibilityScreen;
import net.minecraft.client.gui.DialogTexts;
import net.minecraft.client.gui.toasts.SystemToast;
import net.minecraft.client.gui.widget.Widget;
import net.minecraft.client.gui.widget.button.Button;
import net.minecraft.client.renderer.RenderSkybox;
import net.minecraft.client.renderer.RenderSkyboxCube;
import net.minecraft.client.renderer.texture.TextureManager;
import net.minecraft.client.resources.I18n;
import net.minecraft.realms.RealmsBridgeScreen;
import net.minecraft.server.MinecraftServer;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.SharedConstants;
import net.minecraft.util.Util;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.registry.DynamicRegistries;
import net.minecraft.util.text.TranslationTextComponent;
import net.minecraft.world.gen.settings.DimensionGeneratorSettings;
import net.minecraft.world.storage.SaveFormat;
import net.minecraft.world.storage.WorldSummary;
import net.optifine.reflect.Reflector;
import net.optifine.reflect.ReflectorForge;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import javax.annotation.Nullable;
import java.io.IOException;
import java.util.Random;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Executor;
import java.util.function.BiConsumer;
public class MainMenuScreen extends Screen {
private static final Logger field_238656_b_ = LogManager.getLogger();
public static final RenderSkyboxCube PANORAMA_RESOURCES = new RenderSkyboxCube(new ResourceLocation("textures/gui/title/background/panorama"));
private static final ResourceLocation PANORAMA_OVERLAY_TEXTURES = new ResourceLocation("textures/gui/title/background/backmenu.png");
private static final ResourceLocation CUSTOM_LOGO = new ResourceLocation("minecraft", "textures/gui/title/edition.png");
// Дорога к лого для тебя пастерок написал (щяс начнете што я тож пастер а мне пох " Я просто делаю свой клиент, я свободный человек, пасщю что хочу"
private static final ResourceLocation MINECRAFT_TITLE_EDITION = new ResourceLocation("textures/gui/title/edition.png");
private final boolean showTitleWronglySpelled;
@Nullable
private String splashText;
private Button buttonResetDemo;
private boolean hasCheckedForRealmsNotification;
private Screen realmsNotification;
private int widthCopyright;
private int widthCopyrightRest;
private final RenderSkybox panorama = new RenderSkybox(PANORAMA_RESOURCES);
private final boolean showFadeInAnimation;
private long firstRenderTime;
private Screen modUpdateNotification;
public MainMenuScreen() {
this(false);
}
public MainMenuScreen(boolean fadeIn) {
super(new TranslationTextComponent("narrator.screen.title"));
this.showFadeInAnimation = fadeIn;
this.showTitleWronglySpelled = (double) (new Random()).nextFloat() < 1.0E-4D;
}
private boolean areRealmsNotificationsEnabled() {
return this.minecraft.gameSettings.realmsNotifications && this.realmsNotification != null;
}
public void tick() {
if (this.areRealmsNotificationsEnabled()) {
this.realmsNotification.tick();
}
}
public static CompletableFuture<Void> loadAsync(TextureManager texMngr, Executor backgroundExecutor) {
return CompletableFuture.allOf(
texMngr.loadAsync(CUSTOM_LOGO, backgroundExecutor),
texMngr.loadAsync(MINECRAFT_TITLE_EDITION, backgroundExecutor),
texMngr.loadAsync(PANORAMA_OVERLAY_TEXTURES, backgroundExecutor),
PANORAMA_RESOURCES.loadAsync(texMngr, backgroundExecutor)
);
}
public boolean isPauseScreen() {
return false;
}
public boolean shouldCloseOnEsc() {
return false;
}
protected void init() {
this.widthCopyright = this.font.getStringWidth("Copyright Mojang AB. Do not distribute!");
this.widthCopyrightRest = this.width - this.widthCopyright - 2;
int i = 24;
int j = this.height / 4 + 48;
Button button = null;
if (this.minecraft.isDemo()) {
this.addDemoButtons(j, 24);
} else {
this.addSingleplayerMultiplayerButtons(j, 24);
if (Reflector.ModListScreen_Constructor.exists()) {
button = ReflectorForge.makeButtonMods(this, j, 24);
this.addButton(button);
}
}
this.addButton(new Button(this.width / 2 - 100, j + 72 + 2, 98, 20, new TranslationTextComponent("menu.options"), (p_lambda$init$1_1_) -> {
this.minecraft.displayGuiScreen(new OptionsScreen(this, this.minecraft.gameSettings));
}));
this.addButton(new Button(this.width / 2 - 100, j + 72 + 12 - 35, 200, 20, new TranslationTextComponent("AltManager"), (p_lambda$init$3_1_) -> {
this.minecraft.displayGuiScreen(new AccountManagement());
}));
this.addButton(new Button(this.width / 2 + 2, j + 72 + 2, 98, 20, new TranslationTextComponent("menu.quit"), (p_lambda$init$2_1_) -> {
this.minecraft.shutdown();
}));
this.minecraft.setConnectedToRealms(false);
if (this.areRealmsNotificationsEnabled()) {
this.realmsNotification.init(this.minecraft, this.width, this.height);
}
if (Reflector.NotificationModUpdateScreen_init.exists()) {
this.modUpdateNotification = (Screen) Reflector.call(Reflector.NotificationModUpdateScreen_init, this, button);
}
}
private void addSingleplayerMultiplayerButtons(int yIn, int rowHeightIn) {
this.addButton(new Button(this.width / 2 - 100, yIn, 200, 20, new TranslationTextComponent("menu.singleplayer"), (p_lambda$addSingleplayerMultiplayerButtons$4_1_) -> {
this.minecraft.displayGuiScreen(new WorldSelectionScreen(this));
}));
boolean flag = this.minecraft.isMultiplayerEnabled();
Button.ITooltip button$itooltip = flag ? Button.field_238486_s_ : (p_lambda$addSingleplayerMultiplayerButtons$5_1_, p_lambda$addSingleplayerMultiplayerButtons$5_2_, p_lambda$addSingleplayerMultiplayerButtons$5_3_, p_lambda$addSingleplayerMultiplayerButtons$5_4_) -> {
if (!p_lambda$addSingleplayerMultiplayerButtons$5_1_.active) {
this.renderTooltip(p_lambda$addSingleplayerMultiplayerButtons$5_2_, this.minecraft.fontRenderer.trimStringToWidth(new TranslationTextComponent("title.multiplayer.disabled"), Math.max(this.width / 2 - 43, 170)), p_lambda$addSingleplayerMultiplayerButtons$5_3_, p_lambda$addSingleplayerMultiplayerButtons$5_4_);
}
};
(this.addButton(new Button(this.width / 2 - 100, yIn + rowHeightIn * 1, 200, 20, new TranslationTextComponent("menu.multiplayer"), (p_lambda$addSingleplayerMultiplayerButtons$6_1_) -> {
Screen screen = (Screen) (this.minecraft.gameSettings.skipMultiplayerWarning ? new MultiplayerScreen(this) : new MultiplayerWarningScreen(this));
this.minecraft.displayGuiScreen(screen);
}, button$itooltip))).active = flag;
if (Reflector.ModListScreen_Constructor.exists() && this.buttons.size() > 0) {
Widget widget = this.buttons.get(this.buttons.size() - 1);
widget.x = this.width / 2 + 2;
widget.setWidth(98);
}
float width = Minecraft.getInstance().getMainWindow().getScaledWidth();
float height = Minecraft.getInstance().getMainWindow().getScaledHeight();
DisplayUtils.drawImage(new ResourceLocation("star/images/panorama.png"), 0 - 1 , 0 - 1, width + 2, height + 2, -1);
}
private void addDemoButtons(int yIn, int rowHeightIn) {
boolean flag = this.func_243319_k();
this.addButton(new Button(this.width / 2 - 100, yIn, 200, 20, new TranslationTextComponent("menu.playdemo"), (p_lambda$addDemoButtons$8_2_) -> {
if (flag) {
this.minecraft.loadWorld("Demo_World");
} else {
DynamicRegistries.Impl dynamicregistries$impl = DynamicRegistries.func_239770_b_();
this.minecraft.createWorld("Demo_World", MinecraftServer.DEMO_WORLD_SETTINGS, dynamicregistries$impl, DimensionGeneratorSettings.func_242752_a(dynamicregistries$impl));
}
}));
this.buttonResetDemo = this.addButton(new Button(this.width / 2 - 100, yIn + rowHeightIn * 1, 200, 20, new TranslationTextComponent("menu.resetdemo"), (p_lambda$addDemoButtons$9_1_) -> {
SaveFormat saveformat = this.minecraft.getSaveLoader();
try (SaveFormat.LevelSave saveformat$levelsave = saveformat.getLevelSave("Demo_World")) {
WorldSummary worldsummary = saveformat$levelsave.readWorldSummary();
if (worldsummary != null) {
this.minecraft.displayGuiScreen(new ConfirmScreen(this::deleteDemoWorld, new TranslationTextComponent("selectWorld.deleteQuestion"), new TranslationTextComponent("selectWorld.deleteWarning", worldsummary.getDisplayName()), new TranslationTextComponent("selectWorld.deleteButton"), DialogTexts.GUI_CANCEL));
}
} catch (IOException ioexception1) {
SystemToast.func_238535_a_(this.minecraft, "Demo_World");
field_238656_b_.warn("Failed to access demo world", (Throwable) ioexception1);
}
}));
this.buttonResetDemo.active = flag;
}
private boolean func_243319_k() {
try (SaveFormat.LevelSave saveformat$levelsave = this.minecraft.getSaveLoader().getLevelSave("Demo_World")) {
return saveformat$levelsave.readWorldSummary() != null;
} catch (IOException ioexception1) {
SystemToast.func_238535_a_(this.minecraft, "Demo_World");
field_238656_b_.warn("Failed to read demo world data", (Throwable) ioexception1);
return false;
}
}
private void switchToRealms() {
RealmsBridgeScreen realmsbridgescreen = new RealmsBridgeScreen();
realmsbridgescreen.func_231394_a_(this);
}
public void render(MatrixStack matrixStack, int mouseX, int mouseY, float partialTicks) {
if (this.firstRenderTime == 0L && this.showFadeInAnimation) {
this.firstRenderTime = Util.milliTime();
}
float f = this.showFadeInAnimation ? (float) (Util.milliTime() - this.firstRenderTime) / 1000.0F : 1.0F;
this.panorama.render(partialTicks, 1.0F);
GlStateManager.disableDepthTest();
fill(matrixStack, 0, 0, this.width, this.height, -1);
this.minecraft.getTextureManager().bindTexture(PANORAMA_OVERLAY_TEXTURES);
RenderSystem.enableBlend();
RenderSystem.blendFunc(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA);
RenderSystem.color4f(1.0F, 1.0F, 1.0F, this.showFadeInAnimation ? (float) MathHelper.ceil(MathHelper.clamp(f, 0.0F, 1.0F)) : 1.0F);
blit(matrixStack, 0, 0, this.width, this.height, 0.0F, 0.0F, 16, 128, 16, 128);
float f1 = this.showFadeInAnimation ? MathHelper.clamp(f - 1.0F, 0.0F, 1.0F) : 1.0F;
int l = MathHelper.ceil(f1 * 255.0F) << 24;
if ((l & -67108864) != 0) {
this.minecraft.getTextureManager().bindTexture(CUSTOM_LOGO);
RenderSystem.color4f(1.0F, 1.0F, 1.0F, f1);
int logoWidth = 275;
int logoHeight = 44;
blit(matrixStack, this.width / 2 - logoWidth/2, 30, 0, 0, logoWidth, logoHeight, logoWidth, logoHeight);
String s = "https://t.me/StarClientMinecraft";
if (Reflector.ForgeHooksClient_renderMainMenu.exists()) {
Reflector.callVoid(Reflector.ForgeHooksClient_renderMainMenu, this, matrixStack, this.font, this.width, this.height, l);
}
if (Reflector.BrandingControl.exists()) {
if (Reflector.BrandingControl_forEachLine.exists()) {
BiConsumer<Integer, String> biconsumer = (p_lambda$render$12_3_, p_lambda$render$12_4_) -> {
drawString(matrixStack, this.font, p_lambda$render$12_4_, 2, this.height - (10 + p_lambda$render$12_3_ * (9 + 1)), 16777215 | l);
};
Reflector.call(Reflector.BrandingControl_forEachLine, true, true, biconsumer);
}
if (Reflector.BrandingControl_forEachAboveCopyrightLine.exists()) {
BiConsumer<Integer, String> biconsumer1 = (p_lambda$render$13_3_, p_lambda$render$13_4_) -> {
drawString(matrixStack, this.font, p_lambda$render$13_4_, this.width - this.font.getStringWidth(p_lambda$render$13_4_), this.height - (10 + (p_lambda$render$13_3_ + 1) * (9 + 1)), 16777215 | l);
};
Reflector.call(Reflector.BrandingControl_forEachAboveCopyrightLine, biconsumer1);
}
} else {
drawString(matrixStack, this.font, s, 2, this.height - 10, 16777215 | l);
}
if (mouseX > this.widthCopyrightRest && mouseX < this.widthCopyrightRest + this.widthCopyright && mouseY > this.height - 10 && mouseY < this.height) {
fill(matrixStack, this.widthCopyrightRest, this.height - 1, this.widthCopyrightRest + this.widthCopyright, this.height, 16777215 | l);
}
for (Widget widget : this.buttons) {
widget.setAlpha(f1);
}
super.render(matrixStack, mouseX, mouseY, partialTicks);
if (this.areRealmsNotificationsEnabled() && f1 >= 1.0F) {
this.realmsNotification.render(matrixStack, mouseX, mouseY, partialTicks);
}
}
if (this.modUpdateNotification != null) {
this.modUpdateNotification.render(matrixStack, mouseX, mouseY, partialTicks);
}
}
public boolean mouseClicked(double mouseX, double mouseY, int button) {
if (super.mouseClicked(mouseX, mouseY, button)) {
return true;
} else if (this.areRealmsNotificationsEnabled() && this.realmsNotification.mouseClicked(mouseX, mouseY, button)) {
return true;
} else {
if (mouseX > (double) this.widthCopyrightRest && mouseX < (double) (this.widthCopyrightRest + this.widthCopyright) && mouseY > (double) (this.height - 10) && mouseY < (double) this.height) {
this.minecraft.displayGuiScreen(new WinGameScreen(false, Runnables.doNothing()));
}
return false;
}
}
public void onClose() {
if (this.realmsNotification != null) {
this.realmsNotification.onClose();
}
}
private void deleteDemoWorld(boolean p_213087_1_) {
if (p_213087_1_) {
try (SaveFormat.LevelSave saveformat$levelsave = this.minecraft.getSaveLoader().getLevelSave("Demo_World")) {
saveformat$levelsave.deleteSave();
} catch (IOException ioexception1) {
SystemToast.func_238538_b_(this.minecraft, "Demo_World");
field_238656_b_.warn("Failed to delete demo world", (Throwable) ioexception1);
}
}
this.minecraft.displayGuiScreen(this);
}
}
так запастили и захотели писать там ошибка дай то и то
он вам то что надо вам в сурс закинуть от например
src im.expensive или как у вас там
качаем архив с альт менеджером и пастим куда я сказал више архив:
Пожалуйста, авторизуйтесь для просмотра ссылки.
(как всегда noad) и пароль SuckS1deесли что то нету пишите
ет имба вариант альт менеджер он не виснет как в многих читах тот маленький от например у харуке (noad) зависает
скрин альт менеджера
администрация я вас люблю особенно lustman или как его там ток не делитай тему я ее 10 мин писал
Вложения
Последнее редактирование: