CreditsScreen.java 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package me.shedaniel.rei.gui.credits;
  2. import me.shedaniel.rei.client.ScreenHelper;
  3. import me.shedaniel.rei.gui.widget.ButtonWidget;
  4. import net.minecraft.client.gui.ContainerScreen;
  5. import net.minecraft.client.gui.Screen;
  6. import net.minecraft.client.resource.language.I18n;
  7. import net.minecraft.text.StringTextComponent;
  8. public class CreditsScreen extends Screen {
  9. private Screen parent;
  10. private ButtonWidget buttonDone;
  11. private CreditsEntryListWidget entryListWidget;
  12. public CreditsScreen(Screen parent) {
  13. super(new StringTextComponent(""));
  14. this.parent = parent;
  15. }
  16. @Override
  17. public boolean keyPressed(int int_1, int int_2, int int_3) {
  18. if (int_1 == 256 && this.shouldCloseOnEsc()) {
  19. this.minecraft.openScreen(parent);
  20. if (parent instanceof ContainerScreen)
  21. ScreenHelper.getLastOverlay().init();
  22. return true;
  23. }
  24. return super.keyPressed(int_1, int_2, int_3);
  25. }
  26. @Override
  27. protected void init() {
  28. children.add(entryListWidget = new CreditsEntryListWidget(minecraft, width, height, 32, height - 32, 12));
  29. entryListWidget.creditsClearEntries();
  30. for(String line : I18n.translate("text.rei.credit.text").split("\n"))
  31. entryListWidget.creditsAddEntry(new CreditsItem(new StringTextComponent(line)));
  32. entryListWidget.creditsAddEntry(new CreditsItem(new StringTextComponent("")));
  33. children.add(buttonDone = new ButtonWidget(width / 2 - 100, height - 26, 200, 20, I18n.translate("gui.done")) {
  34. @Override
  35. public void onPressed() {
  36. CreditsScreen.this.minecraft.openScreen(parent);
  37. ScreenHelper.getLastOverlay().init();
  38. }
  39. });
  40. }
  41. @Override
  42. public boolean mouseScrolled(double double_1, double double_2, double double_3) {
  43. if (entryListWidget.mouseScrolled(double_1, double_2, double_3))
  44. return true;
  45. return super.mouseScrolled(double_1, double_2, double_3);
  46. }
  47. @Override
  48. public void render(int int_1, int int_2, float float_1) {
  49. this.renderDirtBackground(0);
  50. this.entryListWidget.render(int_1, int_2, float_1);
  51. this.drawCenteredString(this.font, I18n.translate("text.rei.credits"), this.width / 2, 16, 16777215);
  52. super.render(int_1, int_2, float_1);
  53. }
  54. }