mirror of
https://github.com/GTNewHorizons/Botania.git
synced 2026-11-13 16:54:06 +00:00
Editions for the lexica, also a cool render for the cover.
This commit is contained in:
1 parent
caa3d45e02
commit
fdc83024e1
5 files changed
+74
-4
No files matched your search
@@ -13,6 +13,7 @@ package vazkii.botania.client.gui;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.GuiButton;
|
||||
import net.minecraft.client.gui.GuiScreen;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
@@ -25,6 +26,7 @@ import vazkii.botania.api.lexicon.LexiconCategory;
|
||||
import vazkii.botania.client.core.handler.ClientTickHandler;
|
||||
import vazkii.botania.client.gui.button.GuiButtonInvisible;
|
||||
import vazkii.botania.client.lib.LibResources;
|
||||
import vazkii.botania.common.item.ItemLexicon;
|
||||
import vazkii.botania.common.item.ModItems;
|
||||
|
||||
public class GuiLexicon extends GuiScreen {
|
||||
@@ -33,6 +35,7 @@ public class GuiLexicon extends GuiScreen {
|
||||
|
||||
public static final ResourceLocation texture = new ResourceLocation(LibResources.GUI_LEXICON);
|
||||
|
||||
String title;
|
||||
int guiWidth = 146;
|
||||
int guiHeight = 180;
|
||||
int left, top;
|
||||
@@ -40,6 +43,7 @@ public class GuiLexicon extends GuiScreen {
|
||||
@Override
|
||||
public void initGui() {
|
||||
super.initGui();
|
||||
title = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem().getDisplayName();
|
||||
currentOpenLexicon = this;
|
||||
|
||||
left = width / 2 - guiWidth / 2;
|
||||
@@ -77,7 +81,7 @@ public class GuiLexicon extends GuiScreen {
|
||||
void drawHeader() {
|
||||
boolean unicode = fontRendererObj.getUnicodeFlag();
|
||||
fontRendererObj.setUnicodeFlag(true);
|
||||
fontRendererObj.drawSplitString(StatCollector.translateToLocal("botania.gui.lexicon.header"), left + 15, top + 20, 110, 0);
|
||||
fontRendererObj.drawSplitString(String.format(StatCollector.translateToLocal("botania.gui.lexicon.header"), ItemLexicon.getEdition()), left + 18, top + 14, 110, 0);
|
||||
fontRendererObj.setUnicodeFlag(unicode);
|
||||
}
|
||||
|
||||
@@ -102,7 +106,7 @@ public class GuiLexicon extends GuiScreen {
|
||||
}
|
||||
|
||||
String getTitle() {
|
||||
return ModItems.lexicon.getItemStackDisplayName(null);
|
||||
return title;
|
||||
}
|
||||
|
||||
String getSubtitle() {
|
||||
|
||||
@@ -12,15 +12,20 @@
|
||||
package vazkii.botania.client.render.item;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.FontRenderer;
|
||||
import net.minecraft.client.model.ModelBook;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.EnumChatFormatting;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraftforge.client.IItemRenderer;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import vazkii.botania.client.core.handler.ClientTickHandler;
|
||||
import vazkii.botania.client.lib.LibResources;
|
||||
import vazkii.botania.common.item.ItemLexicon;
|
||||
import vazkii.botania.common.item.ModItems;
|
||||
|
||||
public class RenderLexicon implements IItemRenderer {
|
||||
|
||||
@@ -47,13 +52,44 @@ public class RenderLexicon implements IItemRenderer {
|
||||
|
||||
int ticks = ClientTickHandler.ticksWithLexicaOpen;
|
||||
GL11.glTranslatef(0.3F + 0.02F * ticks, 0.475F + 0.01F * ticks, -0.2F - 0.01F * ticks);
|
||||
GL11.glRotatef(95F + ticks * 5, 0F, 1F, 0F);
|
||||
GL11.glRotatef(87.5F + ticks * 5, 0F, 1F, 0F);
|
||||
GL11.glRotatef(ticks * 2.5F, 0F, 0F, 1F);
|
||||
GL11.glScalef(0.9F, 0.9F, 0.9F);
|
||||
opening = ticks / 12F;
|
||||
pageFlip = ClientTickHandler.pageFlipTicks / 5F;
|
||||
|
||||
model.render(null, 0F, 0F, pageFlip, opening, 0F, 1F / 16F);
|
||||
if(ticks < 3) {
|
||||
FontRenderer font = Minecraft.getMinecraft().fontRenderer;
|
||||
GL11.glRotatef(180F, 0F, 0F, 0F);
|
||||
GL11.glTranslatef(-0.3F, -0.2F, 0.07F);
|
||||
GL11.glScalef(0.0035F, 0.0035F, 0.0035F);
|
||||
String title = ModItems.lexicon.getItemStackDisplayName(null);
|
||||
if(Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem() != null)
|
||||
title = Minecraft.getMinecraft().thePlayer.getCurrentEquippedItem().getDisplayName();
|
||||
font.drawString(title, 0, 0, 0xD69700);
|
||||
GL11.glTranslatef(0F, 10F, 0F);
|
||||
GL11.glScalef(0.6F, 0.6F, 0.6F);
|
||||
font.drawString(EnumChatFormatting.ITALIC + "" + EnumChatFormatting.BOLD + String.format(StatCollector.translateToLocal("botaniamisc.edition"), ItemLexicon.getEdition()), 0, 0, 0xA07100);
|
||||
|
||||
GL11.glTranslatef(0F, 15F, 0F);
|
||||
font.drawString(StatCollector.translateToLocal("botaniamisc.lexiconcover0"), 0, 0, 0x79ff92);
|
||||
|
||||
GL11.glTranslatef(0F, 10F, 0F);
|
||||
font.drawString(EnumChatFormatting.UNDERLINE + StatCollector.translateToLocal("botaniamisc.lexiconcover1"), 0, 0, 0x79ff92);
|
||||
|
||||
GL11.glTranslatef(0F, 25F, 0F);
|
||||
GL11.glPushMatrix();
|
||||
GL11.glScalef(6F, 6F, 6F);
|
||||
GL11.glTranslatef(5F, -0.3F, 0F);
|
||||
font.drawString(EnumChatFormatting.BOLD + "~", 0, 0, 0x002206);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
GL11.glTranslatef(0F, 25F, 0F);
|
||||
font.drawString(StatCollector.translateToLocal("botaniamisc.lexiconcover2"), 0, 0, 0x79ff92);
|
||||
GL11.glTranslatef(0F, 10F, 0F);
|
||||
font.drawString(EnumChatFormatting.ITALIC + StatCollector.translateToLocal("botaniamisc.lexiconcover3"), 0, 0, 0x79ff92);
|
||||
}
|
||||
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
@@ -30,5 +30,10 @@ public final class MathHelper {
|
||||
entity.motionY = finalVector.y * modifier;
|
||||
entity.motionZ = finalVector.z * modifier;
|
||||
}
|
||||
|
||||
private static final String[] ORDINAL_SUFFIXES = new String[]{ "th", "st", "nd", "rd", "th", "th", "th", "th", "th", "th" };
|
||||
public static String numberToOrdinal(int i) {
|
||||
return i % 100 == 11 || i % 100 == 12 || i % 100 == 13 ? i + "th" : i + ORDINAL_SUFFIXES[i % 10];
|
||||
}
|
||||
|
||||
}
|
||||
@@ -11,16 +11,21 @@
|
||||
*/
|
||||
package vazkii.botania.common.item;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.EnumRarity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.StatCollector;
|
||||
import net.minecraft.world.World;
|
||||
import vazkii.botania.api.lexicon.ILexiconable;
|
||||
import vazkii.botania.api.lexicon.LexiconEntry;
|
||||
import vazkii.botania.common.Botania;
|
||||
import vazkii.botania.common.core.helper.MathHelper;
|
||||
import vazkii.botania.common.lib.LibGuiIDs;
|
||||
import vazkii.botania.common.lib.LibItemNames;
|
||||
import vazkii.botania.common.lib.LibMisc;
|
||||
|
||||
public class ItemLexicon extends ItemMod {
|
||||
|
||||
@@ -48,6 +53,19 @@ public class ItemLexicon extends ItemMod {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4) {
|
||||
String edition = String.format(StatCollector.translateToLocal("botaniamisc.edition"), getEdition());
|
||||
if(!edition.isEmpty())
|
||||
par3List.add(edition);
|
||||
}
|
||||
|
||||
public static String getEdition() {
|
||||
String version = LibMisc.BUILD;
|
||||
int build = version.contains("ANT") ? 0 : Integer.parseInt(version);
|
||||
return build == 0 ? StatCollector.translateToLocal("botaniamisc.devEdition") : MathHelper.numberToOrdinal(build);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) {
|
||||
par3EntityPlayer.openGui(Botania.instance, LibGuiIDs.LEXICON, par2World, 0, 0, 0);
|
||||
|
||||
@@ -25,6 +25,13 @@ botaniamisc.creativePool0=Creative Mana Pool, has infinite Mana
|
||||
botaniamisc.creativePool1=Worthy of an Egoist
|
||||
botaniamisc.savedByLaurel=Your Golden Laurel Crown shatters, as it saves you from death.
|
||||
botaniamisc.toolRank=%s&7 Rank
|
||||
botaniamisc.edition=%s Edition
|
||||
# ^ Leave this empty for no edition display
|
||||
botaniamisc.devEdition=Writer's
|
||||
botaniamisc.lexiconcover0=Your guide to all
|
||||
botaniamisc.lexiconcover1=Botanical needs
|
||||
botaniamisc.lexiconcover2=From Bestselling author
|
||||
botaniamisc.lexiconcover3=Lizbeth "Vazkii" Rika
|
||||
|
||||
# COLORS
|
||||
botania.color0=White
|
||||
@@ -426,7 +433,7 @@ item.botania:quartz3.name=Lavender Quartz
|
||||
item.botania:quartz4.name=Redquartz
|
||||
|
||||
# GUI TEXT
|
||||
botania.gui.lexicon.header=Lexica Botania Index - Pick which category you would like to study:
|
||||
botania.gui.lexicon.header=Lexica Botania, %s Edition's Index - Pick which category you would like to study:
|
||||
botania.gui.lexicon.wip=(This entry is a Work In Progress. It's not even it's final form)
|
||||
|
||||
# LEXICON CATEGORIES
|
||||
|
||||
Reference in new issue
Block a user