Advertisement
TNT_Block

loginscreen

Sep 10th, 2019
468
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.98 KB | None | 0 0
  1. package de.cryptonicdev.atommod.gui;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.BufferedWriter;
  5. import java.io.File;
  6. import java.io.FileNotFoundException;
  7. import java.io.FileReader;
  8. import java.io.FileWriter;
  9. import java.io.IOException;
  10.  
  11. import org.apache.commons.codec.digest.DigestUtils;
  12. import org.lwjgl.input.Keyboard;
  13.  
  14. import com.sun.jna.platform.win32.Advapi32Util.Account;
  15.  
  16. import de.cryptonicdev.atommod.main.AtomMod;
  17. import de.cryptonicdev.atommod.network.NetworkClient;
  18. import de.cryptonicdev.atommod.network.login.C00PacketLoginStart;
  19. import de.cryptonicdev.atommod.utils.StaticLoginInfos;
  20. import de.cryptonicdev.atommod.utils.StaticRegisterUtils;
  21. import net.minecraft.client.gui.GuiButton;
  22. import net.minecraft.client.gui.GuiScreen;
  23. import net.minecraft.client.gui.GuiTextField;
  24.  
  25. public class GuiScreenLogin extends GuiProgramm {
  26. private GuiScreen prevGui;
  27. private GuiTextField textField1;
  28. private GuiPasswordField textField2;
  29.  
  30. public GuiScreenLogin() {
  31. super("LoginScreen", 0.1);
  32. }
  33.  
  34. public void initGui() {
  35. if (!AtomMod.INSTANCE.getDirectory().exists()) {
  36. AtomMod.INSTANCE.getDirectory().mkdirs();
  37. }
  38.  
  39. Keyboard.enableRepeatEvents(true);
  40. buttonList.add(new GuiButton(1, width / 2 - 100, height / 4 + 108, "Login"));
  41. textField1 = new GuiTextField(2, fontRendererObj, width / 2 - 100, 60, 200, 20);
  42. textField1.setFocused(true);
  43. textField2 = new GuiPasswordField(3, fontRendererObj, width / 2 - 100, 85, 200, 20);
  44. buttonList.add(new GuiButton(2, width / 2 - 100, 110, "Einfügen"));
  45. File latest = new File(AtomMod.INSTANCE.getDirectory(), "latestlogin.file");
  46. if (latest.exists()) {
  47. try {
  48. BufferedReader reader = new BufferedReader(new FileReader(latest));
  49. textField1.setText(reader.readLine().split("USERNAME: ")[1]);
  50. textField2.setText(reader.readLine().split("PASSWORD: ")[1]);
  51. reader.close();
  52. } catch (FileNotFoundException e) {
  53. e.printStackTrace();
  54. } catch (IOException e) {
  55. e.printStackTrace();
  56. } catch (ArrayIndexOutOfBoundsException e) {}
  57. }
  58. }
  59.  
  60. public void drawScreen(int mouseX, int mouseY, float partialTicks) {
  61. drawDefaultBackground();
  62. drawCenteredString(mc.fontRendererObj, "AtomMod-Login", width / 2, 24, 16777215);
  63. drawCenteredString(mc.fontRendererObj, StaticRegisterUtils.registerScreenDisplayString, width / 2, 34,
  64. 16777215);
  65. textField1.drawTextBox();
  66. textField2.drawTextBox();
  67. super.drawScreen(mouseX, mouseY, partialTicks);
  68. }
  69.  
  70. protected void actionPerformed(GuiButton button) throws IOException {
  71.  
  72. switch (button.id) {
  73.  
  74. case 1: {
  75. System.out.println(textField1.getText());
  76. System.out.println(DigestUtils.sha512Hex(textField2.getText()));
  77. StaticLoginInfos.username = textField1.getText();
  78. File latest = new File(AtomMod.INSTANCE.getDirectory(), "latestlogin.file");
  79. BufferedWriter writer = new BufferedWriter(new FileWriter(latest));
  80. writer.write("USERNAME: " + textField1.getText());
  81. writer.newLine();
  82. writer.write("PASSWORD: " + textField2.getText());
  83. writer.flush();
  84. writer.close();
  85.  
  86. NetworkClient.INSTANCE.session.send(new C00PacketLoginStart(textField1.getText(), textField2.getText()));
  87.  
  88. break;
  89. }
  90.  
  91. case 2: {
  92. textField2.setText(getClipboardString());
  93. break;
  94. }
  95.  
  96. }
  97.  
  98. super.actionPerformed(button);
  99. }
  100.  
  101. protected void keyTyped(char typedChar, int keyCode) throws IOException {
  102. if (keyCode == 1) {
  103. mc.displayGuiScreen(prevGui);
  104. return;
  105. }
  106. if (textField1.isFocused()) {
  107. textField1.textboxKeyTyped(typedChar, keyCode);
  108. }
  109. if (textField2.isFocused()) {
  110. textField2.textboxKeyTyped(typedChar, keyCode);
  111. }
  112. }
  113.  
  114. protected void mouseClicked(int mouseX, int mouseY, int mouseButton) throws IOException {
  115. textField1.mouseClicked(mouseX, mouseY, mouseButton);
  116. textField2.mouseClicked(mouseX, mouseY, mouseButton);
  117. super.mouseClicked(mouseX, mouseY, mouseButton);
  118. }
  119.  
  120. public void onGuiClosed() {
  121. Keyboard.enableRepeatEvents(false);
  122. super.onGuiClosed();
  123. }
  124. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement