Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

frontlisterd

Members
  • Joined

  • Last visited

Everything posted by frontlisterd

  1. So I was told that "only one string" needed to change for this 1.8.9 mod to become a 1.16.5 mod. Im not very sure what this line is as I am new to this coding thing, so I thought I might ask around. Thanks in advance. Here is pt.1 of the code: package studio.dreamys.gui; import com.google.gson.JsonObject; import com.google.gson.JsonParser; import java.awt.Color; import java.io.IOException; import java.net.HttpURLConnection; import java.net.URL; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiTextField; import net.minecraft.client.gui.ScaledResolution; import net.minecraft.util.Session; import org.apache.commons.io.IOUtils; import org.lwjgl.input.Keyboard; import studio.dreamys.TokenAuth; public class SessionGui extends GuiScreen { private GuiScreen previousScreen; private String status = "Session:"; private GuiTextField sessionField; private ScaledResolution sr; public SessionGui(GuiScreen previousScreen) { this.previousScreen = previousScreen; } public void func_73866_w_() { Keyboard.enableRepeatEvents(true); this.sr = new ScaledResolution(this.field_146297_k); this.sessionField = new GuiTextField(1, this.field_146297_k.field_71466_p, this.sr.func_78326_a() / 2 - 100, this.sr.func_78328_b() / 2, 200, 20); this.sessionField.func_146203_f(32767); this.sessionField.func_146195_b(true); this.field_146292_n.add(new GuiButton(998, this.sr.func_78326_a() / 2 - 100, this.sr.func_78328_b() / 2 + 30, 200, 20, "Login")); this.field_146292_n.add(new GuiButton(999, this.sr.func_78326_a() / 2 - 100, this.sr.func_78328_b() / 2 + 60, 200, 20, "Restore")); super.func_73866_w_(); } public void func_146281_b() { Keyboard.enableRepeatEvents(false); super.func_146281_b(); } public void func_73863_a(int mouseX, int mouseY, float partialTicks) { this.func_146276_q_(); this.field_146297_k.field_71466_p.func_78276_b(this.status, this.sr.func_78326_a() / 2 - this.field_146297_k.field_71466_p.func_78256_a(this.status) / 2, this.sr.func_78328_b() / 2 - 30, Color.WHITE.getRGB()); this.sessionField.func_146194_f(); super.func_73863_a(mouseX, mouseY, partialTicks); } protected void func_146284_a(GuiButton button) throws IOException { if (button.field_146127_k == 998) { try { String session = this.sessionField.func_146179_b(); String username; String uuid; String token; if (session.contains(":")) { username = session.split(":")[0]; uuid = session.split(":")[1]; token = session.split(":")[2]; } else { HttpURLConnection c = (HttpURLConnection)(new URL("https://api.minecraftservices.com/minecraft/profile/")).openConnection(); c.setRequestProperty("Content-type", "application/json"); c.setRequestProperty("Authorization", "Bearer " + this.sessionField.func_146179_b()); c.setDoOutput(true); JsonObject json = (new JsonParser()).parse(IOUtils.toString(c.getInputStream())).getAsJsonObject(); username = json.get("name").getAsString(); uuid = json.get("id").getAsString(); token = session; } this.field_146297_k.field_71449_j = new Session(username, uuid, token, "mojang"); this.field_146297_k.func_147108_a(this.previousScreen); } catch (Exception var9) { this.status = "§cError: Couldn't set session (check mc logs)"; var9.printStackTrace(); } } if (button.field_146127_k == 999) { try { this.field_146297_k.field_71449_j = TokenAuth.originalSession; this.field_146297_k.func_147108_a(this.previousScreen); } catch (Exception var8) { this.status = "§cError: Couldn't restore session (check mc logs)"; var8.printStackTrace(); } } super.func_146284_a(button); } protected void func_73869_a(char typedChar, int keyCode) throws IOException { this.sessionField.func_146201_a(typedChar, keyCode); if (1 == keyCode) { this.field_146297_k.func_147108_a(this.previousScreen); } else { super.func_73869_a(typedChar, keyCode); } } } and heres pt.2 : package studio.dreamys; import java.awt.Color; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiMultiplayer; import net.minecraft.util.Session; import net.minecraftforge.client.event.GuiScreenEvent; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod.EventHandler; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import studio.dreamys.gui.SessionGui; @Mod( modid = "ta", name = "TokenAuth", version = "1.1.0" ) public class TokenAuth { public static Minecraft mc = Minecraft.func_71410_x(); public static Session originalSession; public TokenAuth() { } @EventHandler public void preInit(FMLPreInitializationEvent e) { MinecraftForge.EVENT_BUS.register(this); } @SubscribeEvent public void onInitGuiPost(GuiScreenEvent.InitGuiEvent.Post e) { if (e.gui instanceof GuiMultiplayer) { e.buttonList.add(new GuiButton(999, 5, 5, 100, 20, "TokenAuth")); } } @SubscribeEvent public void onDrawScreenPost(GuiScreenEvent.DrawScreenEvent.Post e) { if (e.gui instanceof GuiMultiplayer) { String status = String.format("User: §a%s §rUUID: §a%s", mc.field_71449_j.func_111285_a(), mc.field_71449_j.func_148255_b()); Minecraft.func_71410_x().field_71466_p.func_78276_b(status, 115, 10, Color.WHITE.getRGB()); } } @SubscribeEvent public void onActionPerformedPre(GuiScreenEvent.ActionPerformedEvent.Pre e) { if (e.gui instanceof GuiMultiplayer && e.button.field_146127_k == 999) { Minecraft.func_71410_x().func_147108_a(new SessionGui(e.gui)); } } static { originalSession = mc.field_71449_j; } }

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.