2016-11-10 19:50:01 +01:00
|
|
|
package de.ellpeck.actuallyadditions.api.booklet;
|
|
|
|
|
2016-11-10 21:07:15 +01:00
|
|
|
import de.ellpeck.actuallyadditions.api.booklet.internal.GuiBookletBase;
|
2016-11-10 19:50:01 +01:00
|
|
|
import net.minecraft.item.ItemStack;
|
2020-09-07 16:24:04 +02:00
|
|
|
import net.minecraftforge.api.distmarker.Dist;
|
|
|
|
import net.minecraftforge.api.distmarker.OnlyIn;
|
2016-11-10 19:50:01 +01:00
|
|
|
import net.minecraftforge.fluids.FluidStack;
|
2020-09-07 16:24:04 +02:00
|
|
|
|
|
|
|
import java.awt.*;
|
|
|
|
import java.util.List;
|
2016-11-10 19:50:01 +01:00
|
|
|
|
2019-05-02 09:10:29 +02:00
|
|
|
public interface IBookletPage {
|
2016-11-10 19:50:01 +01:00
|
|
|
|
2016-11-11 18:55:32 +01:00
|
|
|
void getItemStacksForPage(List<ItemStack> list);
|
2016-11-10 19:50:01 +01:00
|
|
|
|
2016-11-11 18:55:32 +01:00
|
|
|
void getFluidStacksForPage(List<FluidStack> list);
|
2016-11-10 19:50:01 +01:00
|
|
|
|
|
|
|
IBookletChapter getChapter();
|
|
|
|
|
|
|
|
void setChapter(IBookletChapter chapter);
|
|
|
|
|
2020-09-07 16:24:04 +02:00
|
|
|
@OnlyIn(Dist.CLIENT)
|
2016-11-10 19:50:01 +01:00
|
|
|
String getInfoText();
|
2016-11-10 21:07:15 +01:00
|
|
|
|
2020-09-07 16:24:04 +02:00
|
|
|
@OnlyIn(Dist.CLIENT)
|
2016-11-10 21:07:15 +01:00
|
|
|
void mouseClicked(GuiBookletBase gui, int mouseX, int mouseY, int mouseButton);
|
|
|
|
|
2020-09-07 16:24:04 +02:00
|
|
|
@OnlyIn(Dist.CLIENT)
|
2016-11-10 21:07:15 +01:00
|
|
|
void mouseReleased(GuiBookletBase gui, int mouseX, int mouseY, int state);
|
|
|
|
|
2020-09-07 16:24:04 +02:00
|
|
|
@OnlyIn(Dist.CLIENT)
|
2016-11-10 21:07:15 +01:00
|
|
|
void mouseClickMove(GuiBookletBase gui, int mouseX, int mouseY, int clickedMouseButton, long timeSinceLastClick);
|
|
|
|
|
2020-09-07 16:24:04 +02:00
|
|
|
// todo: this won't be needed anymore
|
|
|
|
@OnlyIn(Dist.CLIENT)
|
|
|
|
void actionPerformed(GuiBookletBase gui, Button button);
|
2016-11-10 21:07:15 +01:00
|
|
|
|
2020-09-07 16:24:04 +02:00
|
|
|
@OnlyIn(Dist.CLIENT)
|
2016-11-10 23:37:40 +01:00
|
|
|
void initGui(GuiBookletBase gui, int startX, int startY);
|
2016-11-10 21:07:15 +01:00
|
|
|
|
2020-09-07 16:24:04 +02:00
|
|
|
@OnlyIn(Dist.CLIENT)
|
2016-11-11 18:55:32 +01:00
|
|
|
void updateScreen(GuiBookletBase gui, int startX, int startY, int pageTimer);
|
2016-11-10 21:07:15 +01:00
|
|
|
|
2020-09-07 16:24:04 +02:00
|
|
|
@OnlyIn(Dist.CLIENT)
|
2016-11-10 22:06:58 +01:00
|
|
|
void drawScreenPre(GuiBookletBase gui, int startX, int startY, int mouseX, int mouseY, float partialTicks);
|
|
|
|
|
2020-09-07 16:24:04 +02:00
|
|
|
@OnlyIn(Dist.CLIENT)
|
2016-11-10 22:06:58 +01:00
|
|
|
void drawScreenPost(GuiBookletBase gui, int startX, int startY, int mouseX, int mouseY, float partialTicks);
|
|
|
|
|
|
|
|
boolean shouldBeOnLeftSide();
|
2016-11-12 13:54:49 +01:00
|
|
|
|
|
|
|
String getIdentifier();
|
2016-11-12 22:55:07 +01:00
|
|
|
|
2016-11-17 17:36:00 +01:00
|
|
|
String getWebLink();
|
|
|
|
|
2016-11-12 22:55:07 +01:00
|
|
|
IBookletPage addTextReplacement(String key, String value);
|
|
|
|
|
|
|
|
IBookletPage addTextReplacement(String key, float value);
|
2016-11-12 23:10:41 +01:00
|
|
|
|
|
|
|
IBookletPage addTextReplacement(String key, int value);
|
2016-11-22 22:54:35 +01:00
|
|
|
|
|
|
|
int getSortingPriority();
|
2016-11-10 19:50:01 +01:00
|
|
|
}
|