From 2760c794d6785430f14da249eb980086486573f6 Mon Sep 17 00:00:00 2001 From: Ellpeck Date: Fri, 11 Nov 2016 15:21:57 +0100 Subject: [PATCH] Made the all items chapter use all chapters on its own --- .../api/ActuallyAdditionsAPI.java | 1 + .../mod/booklet/chapter/BookletChapter.java | 2 -- .../mod/booklet/entry/BookletEntry.java | 4 ++-- .../mod/booklet/entry/BookletEntryAllItems.java | 15 +++++++++++++++ .../mod/booklet/page/ItemDisplay.java | 4 ++++ .../actuallyadditions/mod/proxy/ClientProxy.java | 3 ++- 6 files changed, 24 insertions(+), 5 deletions(-) diff --git a/src/main/java/de/ellpeck/actuallyadditions/api/ActuallyAdditionsAPI.java b/src/main/java/de/ellpeck/actuallyadditions/api/ActuallyAdditionsAPI.java index f06cccdb3..79be8d6a2 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/api/ActuallyAdditionsAPI.java +++ b/src/main/java/de/ellpeck/actuallyadditions/api/ActuallyAdditionsAPI.java @@ -77,6 +77,7 @@ public final class ActuallyAdditionsAPI{ public static IBookletEntry entryItemsNonRF; public static IBookletEntry entryItemsRF; public static IBookletEntry entryMisc; + //This is added to automatically, you don't need to add anything to this entry public static IBookletEntry allAndSearch; //These are getting initialized in Actually Additions' PreInit phase diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/chapter/BookletChapter.java b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/chapter/BookletChapter.java index 36b3b2e8a..b727e5f24 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/chapter/BookletChapter.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/chapter/BookletChapter.java @@ -35,8 +35,6 @@ public class BookletChapter implements IBookletChapter{ this.color = TextFormatting.RESET; this.entry.addChapter(this); - ActuallyAdditionsAPI.allAndSearch.addChapter(this); - for(IBookletPage page : this.pages){ page.setChapter(this); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/entry/BookletEntry.java b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/entry/BookletEntry.java index ff6388f84..591f675f2 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/entry/BookletEntry.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/entry/BookletEntry.java @@ -24,7 +24,7 @@ import java.util.List; public class BookletEntry implements IBookletEntry{ private final String identifier; - public List chapters = new ArrayList(); + private final List chapters = new ArrayList(); private TextFormatting color; public BookletEntry(String identifier){ @@ -61,7 +61,7 @@ public class BookletEntry implements IBookletEntry{ @Override public List getChaptersForGuiDisplaying(GuiBookletBase gui, String searchBarText){ - return this.chapters; + return this.getAllChapters(); } public BookletEntry setImportant(){ diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/entry/BookletEntryAllItems.java b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/entry/BookletEntryAllItems.java index 950180a6d..15c5a262c 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/entry/BookletEntryAllItems.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/entry/BookletEntryAllItems.java @@ -10,9 +10,24 @@ package de.ellpeck.actuallyadditions.mod.booklet.entry; +import de.ellpeck.actuallyadditions.api.ActuallyAdditionsAPI; +import de.ellpeck.actuallyadditions.api.booklet.IBookletChapter; + +import java.util.List; + public class BookletEntryAllItems extends BookletEntry{ public BookletEntryAllItems(String identifier){ super(identifier); } + + @Override + public void addChapter(IBookletChapter chapter){ + + } + + @Override + public List getAllChapters(){ + return ActuallyAdditionsAPI.ALL_CHAPTERS; + } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/page/ItemDisplay.java b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/page/ItemDisplay.java index 11475462a..50c4ea1b7 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/page/ItemDisplay.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/booklet/page/ItemDisplay.java @@ -18,6 +18,8 @@ import de.ellpeck.actuallyadditions.mod.util.AssetUtil; import de.ellpeck.actuallyadditions.mod.util.ModUtil; import de.ellpeck.actuallyadditions.mod.util.StringUtil; import net.minecraft.client.Minecraft; +import net.minecraft.client.audio.PositionedSoundRecord; +import net.minecraft.init.SoundEvents; import net.minecraft.item.ItemStack; import net.minecraft.util.text.TextFormatting; import net.minecraftforge.fml.client.config.GuiUtils; @@ -77,6 +79,8 @@ public class ItemDisplay{ public void onMousePress(int button, int mouseX, int mouseY){ if(button == 0 && this.isHovered(mouseX, mouseY)){ if(this.page != null && this.page != this.gui.pages[0] && this.page != this.gui.pages[1]){ + this.gui.mc.getSoundHandler().playSound(PositionedSoundRecord.getMasterRecord(SoundEvents.UI_BUTTON_CLICK, 1.0F)); + GuiBooklet gui = BookletUtils.createPageGui(this.gui.previousScreen, this.gui, this.page); this.gui.mc.displayGuiScreen(gui); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/proxy/ClientProxy.java b/src/main/java/de/ellpeck/actuallyadditions/mod/proxy/ClientProxy.java index f6f598db4..316fccbcf 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/proxy/ClientProxy.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/proxy/ClientProxy.java @@ -16,6 +16,7 @@ import de.ellpeck.actuallyadditions.api.booklet.IBookletChapter; import de.ellpeck.actuallyadditions.api.booklet.IBookletEntry; import de.ellpeck.actuallyadditions.api.booklet.IBookletPage; import de.ellpeck.actuallyadditions.mod.blocks.render.*; +import de.ellpeck.actuallyadditions.mod.booklet.entry.BookletEntryAllItems; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.entity.InitEntities; import de.ellpeck.actuallyadditions.mod.event.ClientEvents; @@ -65,7 +66,7 @@ public class ClientProxy implements IProxy{ String bookletText = ""; for(IBookletEntry entry : ActuallyAdditionsAPI.BOOKLET_ENTRIES){ - if(entry != ActuallyAdditionsAPI.allAndSearch){ + if(!(entry instanceof BookletEntryAllItems)){ bookletWordCount += entry.getLocalizedName().split(" ").length; bookletCharCount += entry.getLocalizedName().length(); bookletText += entry.getLocalizedName()+"\n\n";