Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/main/java/kamkeel/npcs/command/CommandKamkeel.java
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ public CommandKamkeel() {
registerCommand(new EffectCommand());
registerCommand(new AbilityCommand());
registerCommand(new MoneyCommand());
registerCommand(new TestCommand());
if (ConfigMarket.AuctionEnabled)
registerCommand(new AuctionCommand());
if (ConfigMain.AttributesEnabled)
Expand Down Expand Up @@ -181,4 +182,3 @@ public static boolean canSendCommand(ICommandSender sender, CommandKamkeelBase c
}

}

27 changes: 27 additions & 0 deletions src/main/java/kamkeel/npcs/command/TestCommand.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package kamkeel.npcs.command;

import kamkeel.npcs.network.packets.data.gui.GuiFontTestPacket;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayerMP;

public class TestCommand extends CommandKamkeelBase {

@Override
public String getCommandName() {
return "testfont";
}

@Override
public String getDescription() {
return "Open the client-side font test GUI";
}

@Override
public void processCommand(ICommandSender sender, String[] args) throws CommandException {
if (!(sender instanceof EntityPlayerMP)) {
throw new CommandException("This command can only be used by a player");
}
GuiFontTestPacket.open((EntityPlayerMP) sender);
}
}
2 changes: 2 additions & 0 deletions src/main/java/kamkeel/npcs/network/PacketHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import kamkeel.npcs.network.packets.data.telegraph.TelegraphSpawnPacket;
import kamkeel.npcs.network.packets.data.gui.GuiClosePacket;
import kamkeel.npcs.network.packets.data.gui.GuiErrorPacket;
import kamkeel.npcs.network.packets.data.gui.GuiFontTestPacket;
import kamkeel.npcs.network.packets.data.gui.GuiOpenBookPacket;
import kamkeel.npcs.network.packets.data.gui.GuiOpenPacket;
import kamkeel.npcs.network.packets.data.gui.GuiRedstonePacket;
Expand Down Expand Up @@ -559,6 +560,7 @@ public void registerDataPackets() {
DATA_PACKET.registerPacket(new GuiWaypointPacket());
DATA_PACKET.registerPacket(new IsGuiOpenPacket());
DATA_PACKET.registerPacket(new GuiOpenBookPacket());
DATA_PACKET.registerPacket(new GuiFontTestPacket());

// Data | NPC Packets
DATA_PACKET.registerPacket(new DeleteNpcPacket());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ public enum EnumDataPacket {
GUI_ERROR,
GUI_CLOSE,
ISGUIOPEN,
GUI_FONT_TEST,

// Visual
SCRIPTED_PARTICLE,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package kamkeel.npcs.network.packets.data.gui;

import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumDataPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.client.gui.GuiFontTest;

import java.io.IOException;

public final class GuiFontTestPacket extends AbstractPacket {

public static void open(EntityPlayerMP player) {
PacketHandler.Instance.sendToPlayer(new GuiFontTestPacket(), player);
}

@Override
public Enum getType() {
return EnumDataPacket.GUI_FONT_TEST;
}

@Override
public PacketChannel getChannel() {
return PacketHandler.DATA_PACKET;
}

@Override
public void sendData(ByteBuf out) throws IOException {
}

@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
GuiFontTest.open();
}
}
73 changes: 73 additions & 0 deletions src/main/java/noppes/npcs/client/gui/GuiFontTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
package noppes.npcs.client.gui;

import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.gui.ScaledResolution;
import noppes.npcs.client.gui.font.ScalableFontRenderer;

@SideOnly(Side.CLIENT)
public class GuiFontTest extends GuiScreen {
private static final int[] SIZES = new int[]{8, 12, 16, 24, 32, 48, 64};
private static final String FONT_PATH = "assets/customnpcs/OpenSans.ttf";

private ScalableFontRenderer font;

@Override
public void initGui() {
if (font == null) {
font = ScalableFontRenderer.create(FONT_PATH);
}
}

@Override
public void drawScreen(int mouseX, int mouseY, float partialTicks) {
drawDefaultBackground();

ScaledResolution sr = new ScaledResolution(mc, mc.displayWidth, mc.displayHeight);
int left = Math.round(30f);
int right = Math.round(width - 30f);
int baseline = Math.round(34f);

font.drawString("CustomNPC+ Font Test", left, baseline, 24, 0xFFFFFFFF);
baseline += font.getLineHeight(24) + 6;

for (int size : SIZES) {
drawHorizontalLine(left - 8, right, baseline, 0x55FFFFFF);
String text = "OpenSans " + size + "px Sphinx of black quartz, judge my vow 0123456789";
font.drawString(text, left, baseline, size, 0xFFE6F2FF);
baseline += font.getLineHeight(size) + 8;
}

baseline += 8;
drawHorizontalLine(left - 8, right, baseline, 0x66AAFFAA);
baseline += 16;

font.drawString("Renderer: " + font.getRendererPath(), left, baseline, 12, 0xFFB5FFC9);
baseline += 16;
font.drawString("Font resource: " + font.getSourcePath(), left, baseline, 12, 0xFFB5FFC9);
baseline += 16;
font.drawString("Tier atlases: " + font.getCachedAtlasSummary(), left, baseline, 12, 0xFFB5FFC9);
baseline += 16;
font.drawString("Mipmaps: " + (font.isMipmapsEnabled() ? "enabled" : "disabled"), left, baseline, 12, 0xFFB5FFC9);
baseline += 16;
font.drawString("GUI scale (settings): " + mc.gameSettings.guiScale + " | active scale factor: " + sr.getScaleFactor(), left, baseline, 12, 0xFFB5FFC9);

for (int size : SIZES) {
baseline += 16;
font.drawString(font.getDebugLineForSize(size), left, baseline, 12, 0xFFB5FFC9);
}

super.drawScreen(mouseX, mouseY, partialTicks);
}

@Override
public boolean doesGuiPauseGame() {
return false;
}

public static void open() {
Minecraft.getMinecraft().displayGuiScreen(new GuiFontTest());
}
}
Loading
Loading