Armor GUI, CPS, Potion Effects GUI
This commit is contained in:
parent
0dfb8cf3cc
commit
4703cac0e9
|
@ -2338,4 +2338,8 @@ public class Minecraft implements IThreadListener {
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public float getPartialTicks() {
|
||||||
|
return this.timer.renderPartialTicks;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -5,6 +5,7 @@ import static net.lax1dude.eaglercraft.v1_8.opengl.RealOpenGLEnums.*;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
|
import net.PeytonPlayz585.shadow.ArmorGui;
|
||||||
import net.PeytonPlayz585.shadow.Config;
|
import net.PeytonPlayz585.shadow.Config;
|
||||||
import net.PeytonPlayz585.shadow.CustomColors;
|
import net.PeytonPlayz585.shadow.CustomColors;
|
||||||
import net.lax1dude.eaglercraft.v1_8.EaglercraftRandom;
|
import net.lax1dude.eaglercraft.v1_8.EaglercraftRandom;
|
||||||
|
@ -77,7 +78,7 @@ public class GuiIngame extends Gui {
|
||||||
private static final ResourceLocation pumpkinBlurTexPath = new ResourceLocation("textures/misc/pumpkinblur.png");
|
private static final ResourceLocation pumpkinBlurTexPath = new ResourceLocation("textures/misc/pumpkinblur.png");
|
||||||
private final EaglercraftRandom rand = new EaglercraftRandom();
|
private final EaglercraftRandom rand = new EaglercraftRandom();
|
||||||
private final Minecraft mc;
|
private final Minecraft mc;
|
||||||
private final RenderItem itemRenderer;
|
public final RenderItem itemRenderer;
|
||||||
private final GuiNewChat persistantChatGUI;
|
private final GuiNewChat persistantChatGUI;
|
||||||
private int updateCounter;
|
private int updateCounter;
|
||||||
/**+
|
/**+
|
||||||
|
@ -312,6 +313,8 @@ public class GuiIngame extends Gui {
|
||||||
this.overlayPlayerList.updatePlayerList(true);
|
this.overlayPlayerList.updatePlayerList(true);
|
||||||
this.overlayPlayerList.renderPlayerlist(i, scoreboard, scoreobjective1);
|
this.overlayPlayerList.renderPlayerlist(i, scoreboard, scoreobjective1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ArmorGui.draw();
|
||||||
|
|
||||||
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
|
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
|
||||||
GlStateManager.disableLighting();
|
GlStateManager.disableLighting();
|
||||||
|
|
|
@ -269,6 +269,12 @@ public class GameSettings {
|
||||||
public boolean hidePassword = true;
|
public boolean hidePassword = true;
|
||||||
public boolean fullBright = false;
|
public boolean fullBright = false;
|
||||||
public boolean leftHand = false;
|
public boolean leftHand = false;
|
||||||
|
public boolean entityCulling = true;
|
||||||
|
public boolean particleCulling = true;
|
||||||
|
public boolean armorgui = false;
|
||||||
|
public boolean cps = false;
|
||||||
|
public boolean keyStrokes = false;
|
||||||
|
public boolean potionGUI = false;
|
||||||
|
|
||||||
public boolean enableFNAWSkins = true;
|
public boolean enableFNAWSkins = true;
|
||||||
public int voiceListenRadius = 16;
|
public int voiceListenRadius = 16;
|
||||||
|
@ -928,6 +934,30 @@ public class GameSettings {
|
||||||
this.leftHand = !this.leftHand;
|
this.leftHand = !this.leftHand;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.ENTITY_CULLING) {
|
||||||
|
this.entityCulling = !this.entityCulling;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.PARTICLE_CULLING) {
|
||||||
|
this.particleCulling = !this.particleCulling;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.ARMOR_GUI) {
|
||||||
|
this.armorgui = !this.armorgui;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.CPS) {
|
||||||
|
this.cps = !this.cps;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.KEYSTROKES) {
|
||||||
|
this.keyStrokes = !this.keyStrokes;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.POTION_GUI) {
|
||||||
|
this.potionGUI = !this.potionGUI;
|
||||||
|
}
|
||||||
|
|
||||||
this.saveOptions();
|
this.saveOptions();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1058,6 +1088,16 @@ public class GameSettings {
|
||||||
return this.fullBright;
|
return this.fullBright;
|
||||||
case LEFT_HAND:
|
case LEFT_HAND:
|
||||||
return this.leftHand;
|
return this.leftHand;
|
||||||
|
case ENTITY_CULLING:
|
||||||
|
return this.entityCulling;
|
||||||
|
case PARTICLE_CULLING:
|
||||||
|
return this.particleCulling;
|
||||||
|
case ARMOR_GUI:
|
||||||
|
return this.armorgui;
|
||||||
|
case CPS:
|
||||||
|
return this.cps;
|
||||||
|
case POTION_GUI:
|
||||||
|
return this.potionGUI;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -1935,6 +1975,30 @@ public class GameSettings {
|
||||||
if (astring[0].equals("leftHand") && astring.length >= 2) {
|
if (astring[0].equals("leftHand") && astring.length >= 2) {
|
||||||
leftHand = Boolean.valueOf(astring[1]).booleanValue();
|
leftHand = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("particleCulling") && astring.length >= 2) {
|
||||||
|
particleCulling = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("entityCulling") && astring.length >= 2) {
|
||||||
|
entityCulling = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("armorgui") && astring.length >= 2) {
|
||||||
|
armorgui = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("cps") && astring.length >= 2) {
|
||||||
|
cps = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("keyStrokes") && astring.length >= 2) {
|
||||||
|
keyStrokes = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("potionGUI") && astring.length >= 2) {
|
||||||
|
potionGUI = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
for (SoundCategory soundcategory : SoundCategory._VALUES) {
|
for (SoundCategory soundcategory : SoundCategory._VALUES) {
|
||||||
if (astring[0].equals("soundCategory_" + soundcategory.getCategoryName())) {
|
if (astring[0].equals("soundCategory_" + soundcategory.getCategoryName())) {
|
||||||
|
@ -2131,6 +2195,12 @@ public class GameSettings {
|
||||||
printwriter.println("enableFNAWSkins:" + this.enableFNAWSkins);
|
printwriter.println("enableFNAWSkins:" + this.enableFNAWSkins);
|
||||||
printwriter.println("fullbright:" + this.fullBright);
|
printwriter.println("fullbright:" + this.fullBright);
|
||||||
printwriter.println("leftHand:" + this.leftHand);
|
printwriter.println("leftHand:" + this.leftHand);
|
||||||
|
printwriter.println("entityCulling:" + this.entityCulling);
|
||||||
|
printwriter.println("particleCulling:" + this.particleCulling);
|
||||||
|
printwriter.println("armorgui:" + this.armorgui);
|
||||||
|
printwriter.println("cps:" + this.cps);
|
||||||
|
printwriter.println("keyStrokes:" + this.keyStrokes);
|
||||||
|
printwriter.println("potionGUI:" + this.potionGUI);
|
||||||
|
|
||||||
for (KeyBinding keybinding : this.keyBindings) {
|
for (KeyBinding keybinding : this.keyBindings) {
|
||||||
printwriter.println("key_" + keybinding.getKeyDescription() + ":" + keybinding.getKeyCode());
|
printwriter.println("key_" + keybinding.getKeyDescription() + ":" + keybinding.getKeyCode());
|
||||||
|
@ -2344,7 +2414,13 @@ public class GameSettings {
|
||||||
FNAW_SKINS("options.skinCustomisation.enableFNAWSkins", false, true),
|
FNAW_SKINS("options.skinCustomisation.enableFNAWSkins", false, true),
|
||||||
EAGLER_VSYNC("options.vsync", false, true),
|
EAGLER_VSYNC("options.vsync", false, true),
|
||||||
FULLBRIGHT("Fullbright", false, true),
|
FULLBRIGHT("Fullbright", false, true),
|
||||||
LEFT_HAND("Main Hand", false, true);
|
LEFT_HAND("Main Hand", false, true),
|
||||||
|
ENTITY_CULLING("Entity Culling", false, true),
|
||||||
|
PARTICLE_CULLING("Particle Culling", false, true),
|
||||||
|
ARMOR_GUI("Armor GUI", false, true),
|
||||||
|
CPS("CPS", false, true),
|
||||||
|
KEYSTROKES("Keystrokes", false, true),
|
||||||
|
POTION_GUI("Potion Effects GUI", false, true);
|
||||||
|
|
||||||
private final boolean enumFloat;
|
private final boolean enumFloat;
|
||||||
private final boolean enumBoolean;
|
private final boolean enumBoolean;
|
||||||
|
|
|
@ -36,8 +36,8 @@ public class KeyBinding implements Comparable<KeyBinding> {
|
||||||
private final String keyDescription;
|
private final String keyDescription;
|
||||||
private final int keyCodeDefault;
|
private final int keyCodeDefault;
|
||||||
private final String keyCategory;
|
private final String keyCategory;
|
||||||
private int keyCode;
|
public int keyCode;
|
||||||
private boolean pressed;
|
public boolean pressed;
|
||||||
private int pressTime;
|
private int pressTime;
|
||||||
|
|
||||||
public static void onTick(int keyCode) {
|
public static void onTick(int keyCode) {
|
||||||
|
|
178
src/main/java/net/PeytonPlayz585/shadow/ArmorGui.java
Normal file
178
src/main/java/net/PeytonPlayz585/shadow/ArmorGui.java
Normal file
|
@ -0,0 +1,178 @@
|
||||||
|
package net.PeytonPlayz585.shadow;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import net.lax1dude.eaglercraft.v1_8.Mouse;
|
||||||
|
import net.lax1dude.eaglercraft.v1_8.opengl.GlStateManager;
|
||||||
|
import net.minecraft.client.Minecraft;
|
||||||
|
import net.minecraft.client.gui.Gui;
|
||||||
|
import net.minecraft.client.gui.GuiIngame;
|
||||||
|
import net.minecraft.client.gui.ScaledResolution;
|
||||||
|
import net.minecraft.client.renderer.RenderHelper;
|
||||||
|
import net.minecraft.client.resources.I18n;
|
||||||
|
import net.minecraft.client.settings.GameSettings;
|
||||||
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.potion.Potion;
|
||||||
|
import net.minecraft.potion.PotionEffect;
|
||||||
|
import net.minecraft.util.ResourceLocation;
|
||||||
|
|
||||||
|
public class ArmorGui {
|
||||||
|
public static void draw() {
|
||||||
|
if(Minecraft.getMinecraft().gameSettings.potionGUI) {
|
||||||
|
renderPotEffects();
|
||||||
|
}
|
||||||
|
if(Minecraft.getMinecraft().gameSettings.armorgui) {
|
||||||
|
renderArmorDura();
|
||||||
|
}
|
||||||
|
if(Minecraft.getMinecraft().gameSettings.cps) {
|
||||||
|
renderCPS();
|
||||||
|
}
|
||||||
|
if(Minecraft.getMinecraft().gameSettings.keyStrokes) {
|
||||||
|
renderKeyStrokes();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void renderArmorDura() {
|
||||||
|
GlStateManager.enableLighting();
|
||||||
|
ItemStack boots = Minecraft.getMinecraft().thePlayer.inventory.armorInventory[0];
|
||||||
|
ItemStack legs = Minecraft.getMinecraft().thePlayer.inventory.armorInventory[1];
|
||||||
|
ItemStack chest = Minecraft.getMinecraft().thePlayer.inventory.armorInventory[2];
|
||||||
|
ItemStack helmet = Minecraft.getMinecraft().thePlayer.inventory.armorInventory[3];
|
||||||
|
ItemStack hand = Minecraft.getMinecraft().thePlayer.inventory.getCurrentItem();
|
||||||
|
|
||||||
|
if (helmet != null) {
|
||||||
|
ItemStack displayhelmet = helmet.copy();
|
||||||
|
displayhelmet.stackSize = 1;
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemAndEffectIntoGUI(displayhelmet, 5 + 3, 15 + 2);
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemOverlayIntoGUI(Minecraft.getMinecraft().fontRendererObj, displayhelmet, 5 + 3, 15 + 2, "");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (chest != null) {
|
||||||
|
ItemStack displaychest = chest.copy();
|
||||||
|
displaychest.stackSize = 1;
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemAndEffectIntoGUI(displaychest, 5 + 3, 15 + 18);
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemOverlayIntoGUI(Minecraft.getMinecraft().fontRendererObj, displaychest, 5 + 3, 15 + 18, "");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (legs != null) {
|
||||||
|
ItemStack displaylegs = legs.copy();
|
||||||
|
displaylegs.stackSize = 1;
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemAndEffectIntoGUI(displaylegs, 5 + 3, 10 + 38);
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemOverlayIntoGUI(Minecraft.getMinecraft().fontRendererObj, displaylegs, 5 + 3, 15 + 38, "");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (boots != null) {
|
||||||
|
ItemStack displayboots = boots.copy();
|
||||||
|
displayboots.stackSize = 1;
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemAndEffectIntoGUI(displayboots, 5 + 3, 15 + 50);
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemOverlayIntoGUI(Minecraft.getMinecraft().fontRendererObj, displayboots, 5 + 3, 15 + 50, "");
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderHelper.enableGUIStandardItemLighting();
|
||||||
|
|
||||||
|
if (hand != null) {
|
||||||
|
ItemStack displayhand = hand.copy();
|
||||||
|
float f = (float) displayhand.animationsToGo - Minecraft.getMinecraft().getPartialTicks();
|
||||||
|
if (f > 0.0F) {
|
||||||
|
GlStateManager.pushMatrix();
|
||||||
|
float f1 = 1.0F + f / 5.0F;
|
||||||
|
GlStateManager.translate((float) ((5 + 3) + 8), (float) ((15 + 66) + 12), 0.0F);
|
||||||
|
GlStateManager.scale(1.0F / f1, (f1 + 1.0F) / 2.0F, 1.0F);
|
||||||
|
GlStateManager.translate((float) (-((5 + 3) + 8)), (float) (-((15 + 66) + 12)), 0.0F);
|
||||||
|
}
|
||||||
|
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemAndEffectIntoGUI(displayhand, 5 + 3, 15 + 66);
|
||||||
|
if (f > 0.0F) {
|
||||||
|
GlStateManager.popMatrix();
|
||||||
|
}
|
||||||
|
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemOverlays(Minecraft.getMinecraft().fontRendererObj, displayhand, 5 + 3, 15 + 66);
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderHelper.disableStandardItemLighting();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void renderPotEffects() {
|
||||||
|
int i = 80;
|
||||||
|
int i2 = 16;
|
||||||
|
Collection <PotionEffect> collection = Minecraft.getMinecraft().thePlayer.getActivePotionEffects();
|
||||||
|
if (!collection.isEmpty()) {
|
||||||
|
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
|
||||||
|
GlStateManager.disableLighting();
|
||||||
|
GlStateManager.enableAlpha();
|
||||||
|
int l = 33;
|
||||||
|
if (collection.size() > 5) l = 132 / (collection.size() - 1);
|
||||||
|
for (PotionEffect potioneffect: Minecraft.getMinecraft().thePlayer.getActivePotionEffects()) {
|
||||||
|
Potion potion = Potion.potionTypes[potioneffect.getPotionID()];
|
||||||
|
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
|
||||||
|
if (potion.hasStatusIcon()) {
|
||||||
|
Minecraft.getMinecraft().getTextureManager().bindTexture(new ResourceLocation("textures/gui/container/inventory.png"));
|
||||||
|
int i3 = potion.getStatusIconIndex();
|
||||||
|
GuiIngame guiIngame = new GuiIngame(Minecraft.getMinecraft());
|
||||||
|
guiIngame.drawTexturedModalRect(4 + 21 - 20, 110 + i2 - 14, 0 + i3 % 8 * 18, 198 + i3 / 8 * 18, 18, 18);
|
||||||
|
}
|
||||||
|
String s1 = I18n.format(potion.getName(), new Object[0]);
|
||||||
|
if (potioneffect.getAmplifier() == 1) {
|
||||||
|
s1 = String.valueOf(String.valueOf(s1)) + " " + I18n.format("enchantment.level.2", new Object[0]);
|
||||||
|
} else if (potioneffect.getAmplifier() == 2) {
|
||||||
|
s1 = String.valueOf(String.valueOf(s1)) + " " + I18n.format("enchantment.level.3", new Object[0]);
|
||||||
|
} else if (potioneffect.getAmplifier() == 3) {
|
||||||
|
s1 = String.valueOf(String.valueOf(s1)) + " " + I18n.format("enchantment.level.4", new Object[0]);
|
||||||
|
}
|
||||||
|
Minecraft.getMinecraft().fontRendererObj.drawString(s1, (4 + 21), (110 + i2 - 14), -1);
|
||||||
|
String s2 = Potion.getDurationString(potioneffect);
|
||||||
|
Minecraft.getMinecraft().fontRendererObj.drawString(s2, (4 + 21), (110 + i2 + 10 - 14), -1);
|
||||||
|
i2 += l;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static boolean wasPressed;
|
||||||
|
public static long lastPressed;
|
||||||
|
private static List <Long> clicks = new ArrayList < > ();
|
||||||
|
|
||||||
|
public static void renderCPS() {
|
||||||
|
boolean pressed = Mouse.isButtonDown(0) || Mouse.isButtonDown(1);
|
||||||
|
|
||||||
|
if (pressed != wasPressed) {
|
||||||
|
lastPressed = System.currentTimeMillis();
|
||||||
|
wasPressed = pressed;
|
||||||
|
if (pressed) {
|
||||||
|
clicks.add(lastPressed);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
final long time = System.currentTimeMillis();
|
||||||
|
FuncUtils.removeIf(clicks, sinceLast -> sinceLast + 1000 < time);
|
||||||
|
|
||||||
|
ScaledResolution res = new ScaledResolution(Minecraft.getMinecraft());
|
||||||
|
Minecraft.getMinecraft().fontRendererObj.drawString("[CPS: " + clicks.size() + "]", res.getScaledWidth() / 2 - 17, 5 + 2, -1);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void renderKeyStrokes() {
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void renderHotbarItem(int xPos, int yPos, float partialTicks, ItemStack stack) {
|
||||||
|
ItemStack itemstack = stack;
|
||||||
|
if (itemstack != null) {
|
||||||
|
float f = (float) itemstack.animationsToGo - partialTicks;
|
||||||
|
if (f > 0.0F) {
|
||||||
|
GlStateManager.pushMatrix();
|
||||||
|
float f1 = 1.0F + f / 5.0F;
|
||||||
|
GlStateManager.translate((float) (xPos + 8), (float) (yPos + 12), 0.0F);
|
||||||
|
GlStateManager.scale(1.0F / f1, (f1 + 1.0F) / 2.0F, 1.0F);
|
||||||
|
GlStateManager.translate((float) (-(xPos + 8)), (float) (-(yPos + 12)), 0.0F);
|
||||||
|
}
|
||||||
|
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemAndEffectIntoGUI(itemstack, xPos, yPos);
|
||||||
|
if (f > 0.0F) {
|
||||||
|
GlStateManager.popMatrix();
|
||||||
|
}
|
||||||
|
|
||||||
|
Minecraft.getMinecraft().ingameGUI.itemRenderer.renderItemOverlays(Minecraft.getMinecraft().fontRendererObj, itemstack, xPos, yPos);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
34
src/main/java/net/PeytonPlayz585/shadow/FuncUtils.java
Normal file
34
src/main/java/net/PeytonPlayz585/shadow/FuncUtils.java
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
package net.PeytonPlayz585.shadow;
|
||||||
|
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.function.Predicate;
|
||||||
|
import net.lax1dude.eaglercraft.v1_8.opengl.GlStateManager;
|
||||||
|
|
||||||
|
public class FuncUtils {
|
||||||
|
|
||||||
|
public static <T> boolean removeIf(Collection<T> collection, Predicate<T> pre) {
|
||||||
|
boolean ret = false;
|
||||||
|
Iterator<T> itr = collection.iterator();
|
||||||
|
while (itr.hasNext()) {
|
||||||
|
if (pre.test(itr.next())) {
|
||||||
|
itr.remove();
|
||||||
|
ret = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static boolean isInside(int mouseX, int mouseY, double x, double y, double width, double height) {
|
||||||
|
return (mouseX > x && mouseX < (x + width)) && (mouseY > y && mouseY < (y + height));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void setColor(int color) {
|
||||||
|
float f3 = (float) (color >> 24 & 255) / 255.0F;
|
||||||
|
float f = (float) (color >> 16 & 255) / 255.0F;
|
||||||
|
float f1 = (float) (color >> 8 & 255) / 255.0F;
|
||||||
|
float f2 = (float) (color & 255) / 255.0F;
|
||||||
|
|
||||||
|
GlStateManager.color(f, f1, f2, f3);
|
||||||
|
}
|
||||||
|
}
|
|
@ -9,7 +9,7 @@ import net.minecraft.client.settings.GameSettings;
|
||||||
|
|
||||||
public class GuiShadow extends GuiScreen {
|
public class GuiShadow extends GuiScreen {
|
||||||
|
|
||||||
private static GameSettings.Options[] enumOptions = new GameSettings.Options[] {GameSettings.Options.TOGGLE_SPRINT, GameSettings.Options.CHUNK_BORDERS, GameSettings.Options.HIDE_PASSWORD, GameSettings.Options.FULLBRIGHT, GameSettings.Options.LEFT_HAND};
|
private static GameSettings.Options[] enumOptions = new GameSettings.Options[] {GameSettings.Options.TOGGLE_SPRINT, GameSettings.Options.CHUNK_BORDERS, GameSettings.Options.HIDE_PASSWORD, GameSettings.Options.FULLBRIGHT, GameSettings.Options.LEFT_HAND, GameSettings.Options.ENTITY_CULLING, GameSettings.Options.PARTICLE_CULLING, GameSettings.Options.ARMOR_GUI, GameSettings.Options.CPS, GameSettings.Options.POTION_GUI};
|
||||||
|
|
||||||
private GuiScreen parentScreen;
|
private GuiScreen parentScreen;
|
||||||
protected String title;
|
protected String title;
|
||||||
|
|
|
@ -43,109 +43,86 @@ public class ImageData {
|
||||||
|
|
||||||
public ImageData fillAlpha() {
|
public ImageData fillAlpha() {
|
||||||
for(int i = 0; i < pixels.length; ++i) {
|
for(int i = 0; i < pixels.length; ++i) {
|
||||||
pixels[i] = pixels[i] | 0xFF000000;
|
pixels[i] |= 0xFF000000;
|
||||||
}
|
}
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ImageData getSubImage(int x, int y, int pw, int ph) {
|
public ImageData getSubImage(int x, int y, int pw, int ph) {
|
||||||
int[] img = new int[pw * ph];
|
int[] img = new int[pw * ph];
|
||||||
for(int i = 0; i < ph; ++i) {
|
for (int i = 0; i < ph; ++i) {
|
||||||
System.arraycopy(pixels, (i + y) * this.width + x, img, i * pw, pw);
|
System.arraycopy(pixels, (i + y) * this.width + x, img, i * pw, pw);
|
||||||
}
|
}
|
||||||
return new ImageData(pw, ph, img, alpha);
|
return new ImageData(pw, ph, img, alpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final ImageData loadImageFile(String path) {
|
public static final ImageData loadImageFile(String path) {
|
||||||
byte[] fileData = EagRuntime.getResourceBytes(path);
|
byte[] fileData = EagRuntime.getResourceBytes(path);
|
||||||
if(fileData != null) {
|
return (fileData != null) ? loadImageFile(fileData) : null;
|
||||||
return loadImageFile(fileData);
|
}
|
||||||
}else {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static final ImageData loadImageFile(InputStream data) {
|
public static final ImageData loadImageFile(InputStream data) {
|
||||||
return PlatformAssets.loadImageFile(data);
|
return PlatformAssets.loadImageFile(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final ImageData loadImageFile(byte[] data) {
|
public static final ImageData loadImageFile(byte[] data) {
|
||||||
return PlatformAssets.loadImageFile(data);
|
return PlatformAssets.loadImageFile(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void getRGB(int startX, int startY, int w, int h,
|
public void getRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize) {
|
||||||
int[] rgbArray, int offset, int scansize) {
|
for (int y = 0; y < h; ++y) {
|
||||||
for(int y = 0; y < h; ++y) {
|
System.arraycopy(pixels, offset + (y + startY) * scansize + startX, rgbArray, y * w, w);
|
||||||
System.arraycopy(pixels, offset + (y + startY) * scansize + startX, rgbArray, y * w, w);
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
public void copyPixelsFrom(ImageData input, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2) {
|
||||||
public void copyPixelsFrom(ImageData input, int dx1, int dy1, int dx2, int dy2,
|
int cw = sx2 - sx1;
|
||||||
int sx1, int sy1, int sx2, int sy2) {
|
int ch = sy2 - sy1;
|
||||||
if(sx2 - sx1 != dx2 - dx1) {
|
for (int y = 0; y < ch; ++y) {
|
||||||
throw new IllegalArgumentException("Width of the copied region must match the"
|
System.arraycopy(input.pixels, sx1 + (sy1 + y) * cw, pixels, dx1 + (dy1 + y) * cw, cw);
|
||||||
+ "width of the pasted region");
|
}
|
||||||
}
|
}
|
||||||
int cw = sx2 - sx1;
|
|
||||||
if(sy2 - sy1 != dy2 - dy1) {
|
public void drawLayer(ImageData input, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2) {
|
||||||
throw new IllegalArgumentException("Height of the copied region must match the"
|
int cw = sx2 - sx1;
|
||||||
+ "height of the pasted region");
|
int ch = sy2 - sy1;
|
||||||
}
|
for (int y = 0; y < ch; ++y) {
|
||||||
int ch = sy2 - sy1;
|
for (int x = 0; x < cw; ++x) {
|
||||||
for(int y = 0; y < ch; ++y) {
|
int si = (sy1 + y) * cw + sx1 + x;
|
||||||
System.arraycopy(input.pixels, sx1 + (sy1 + y) * cw, pixels, dx1 + (dy1 + y) * cw, cw);
|
int di = (dy1 + y) * cw + dx1 + x;
|
||||||
}
|
int spx = input.pixels[si];
|
||||||
}
|
int dpx = pixels[di];
|
||||||
|
|
||||||
public void drawLayer(ImageData input, int dx1, int dy1, int dx2, int dy2,
|
if ((spx & 0xFF000000) == 0xFF000000 || (dpx & 0xFF000000) == 0) {
|
||||||
int sx1, int sy1, int sx2, int sy2) {
|
pixels[di] = spx;
|
||||||
if(sx2 - sx1 != dx2 - dx1) {
|
} else {
|
||||||
throw new IllegalArgumentException("Width of the copied region must match the"
|
int sa = (spx >> 24) & 0xFF;
|
||||||
+ "width of the pasted region");
|
int da = (dpx >> 24) & 0xFF;
|
||||||
}
|
int r = ((spx >> 16) & 0xFF) * sa >> 8;
|
||||||
int cw = sx2 - sx1;
|
int g = ((spx >> 8) & 0xFF) * sa >> 8;
|
||||||
if(sy2 - sy1 != dy2 - dy1) {
|
int b = (spx & 0xFF) * sa >> 8;
|
||||||
throw new IllegalArgumentException("Height of the copied region must match the"
|
int aa = (255 - sa) * da >> 8;
|
||||||
+ "height of the pasted region");
|
r += ((dpx >> 16) & 0xFF) * aa >> 8;
|
||||||
}
|
g += ((dpx >> 8) & 0xFF) * aa >> 8;
|
||||||
int ch = sy2 - sy1;
|
b += (dpx & 0xFF) * aa >> 8;
|
||||||
for(int y = 0; y < ch; ++y) {
|
sa += da;
|
||||||
for(int x = 0; x < cw; ++x) {
|
if (sa > 0xFF) sa = 0xFF;
|
||||||
int si = (sy1 + y) * cw + sx1 + x;
|
pixels[di] = (sa << 24) | (r << 16) | (g << 8) | b;
|
||||||
int di = (dy1 + y) * cw + dx1 + x;
|
}
|
||||||
int spx = input.pixels[si];
|
}
|
||||||
int dpx = pixels[di];
|
}
|
||||||
if((spx & 0xFF000000) == 0xFF000000 || (dpx & 0xFF000000) == 0) {
|
}
|
||||||
pixels[di] = spx;
|
|
||||||
}else {
|
public ImageData swapRB() {
|
||||||
int sa = (spx >> 24) & 0xFF;
|
for (int i = 0; i < pixels.length; ++i) {
|
||||||
int da = (dpx >> 24) & 0xFF;
|
int j = pixels[i];
|
||||||
int r = ((spx >> 16) & 0xFF) * sa / 255;
|
pixels[i] = (j & 0xFF00FF00) | ((j & 0x00FF0000) >> 16) | ((j & 0x000000FF) << 16);
|
||||||
int g = ((spx >> 8) & 0xFF) * sa / 255;
|
}
|
||||||
int b = (spx & 0xFF) * sa / 255;
|
return this;
|
||||||
int aa = (255 - sa) * da;
|
}
|
||||||
r += ((dpx >> 16) & 0xFF) * aa / 65025;
|
|
||||||
g += ((dpx >> 8) & 0xFF) * aa / 65025;
|
public static int swapRB(int c) {
|
||||||
b += (dpx & 0xFF) * aa / 65025;
|
return (c & 0xFF00FF00) | ((c & 0x00FF0000) >> 16) | ((c & 0x000000FF) << 16);
|
||||||
sa += da;
|
}
|
||||||
if(sa > 0xFF) sa = 0xFF;
|
|
||||||
pixels[di] = ((sa) << 24) | (r << 16) | (g << 8) | b;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public ImageData swapRB() {
|
|
||||||
for(int i = 0; i < pixels.length; ++i) {
|
|
||||||
int j = pixels[i];
|
|
||||||
pixels[i] = (j & 0xFF00FF00) | ((j & 0x00FF0000) >> 16) |
|
|
||||||
((j & 0x000000FF) << 16);
|
|
||||||
}
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static int swapRB(int c) {
|
|
||||||
return (c & 0xFF00FF00) | ((c & 0x00FF0000) >> 16) | ((c & 0x000000FF) << 16);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,22 +64,21 @@ public class EaglerIntegratedServerWorker {
|
||||||
List<IPCPacketData> pktList = ServerPlatformSingleplayer.recieveAllPacket();
|
List<IPCPacketData> pktList = ServerPlatformSingleplayer.recieveAllPacket();
|
||||||
if(pktList != null) {
|
if(pktList != null) {
|
||||||
IPCPacketData packetData;
|
IPCPacketData packetData;
|
||||||
for(int i = 0, l = pktList.size(); i < l; ++i) {
|
for(IPCPacketData pkt : pktList) {
|
||||||
packetData = pktList.get(i);
|
if(pkt.channel.equals(SingleplayerServerController.IPC_CHANNEL)) {
|
||||||
if(packetData.channel.equals(SingleplayerServerController.IPC_CHANNEL)) {
|
|
||||||
IPCPacketBase ipc;
|
IPCPacketBase ipc;
|
||||||
try {
|
try {
|
||||||
ipc = IPCPacketManager.IPCDeserialize(packetData.contents);
|
ipc = IPCPacketManager.IPCDeserialize(pkt.contents);
|
||||||
}catch(IOException ex) {
|
}catch(IOException ex) {
|
||||||
throw new RuntimeException("Failed to deserialize IPC packet", ex);
|
throw new RuntimeException("Failed to deserialize IPC packet", ex);
|
||||||
}
|
}
|
||||||
handleIPCPacket(ipc);
|
handleIPCPacket(ipc);
|
||||||
}else {
|
}else {
|
||||||
IntegratedServerPlayerNetworkManager netHandler = openChannels.get(packetData.channel);
|
IntegratedServerPlayerNetworkManager netHandler = openChannels.get(pkt.channel);
|
||||||
if(netHandler != null) {
|
if(netHandler != null) {
|
||||||
netHandler.addRecievedPacket(packetData.contents);
|
netHandler.addRecievedPacket(pkt.contents);
|
||||||
}else {
|
}else {
|
||||||
logger.error("Recieved packet on channel that does not exist: \"{}\"", packetData.channel);
|
logger.error("Recieved packet on channel that does not exist: \"{}\"", pkt.channel);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -88,8 +87,8 @@ public class EaglerIntegratedServerWorker {
|
||||||
|
|
||||||
public static void tick() {
|
public static void tick() {
|
||||||
List<IntegratedServerPlayerNetworkManager> ocs = new ArrayList<>(openChannels.values());
|
List<IntegratedServerPlayerNetworkManager> ocs = new ArrayList<>(openChannels.values());
|
||||||
for(int i = 0, l = ocs.size(); i < l; ++i) {
|
for(IntegratedServerPlayerNetworkManager netHandler : ocs) {
|
||||||
ocs.get(i).tick();
|
netHandler.tick();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -506,7 +506,7 @@ public class RenderGlobal implements IWorldAccess, IResourceManagerReloadListene
|
||||||
|
|
||||||
public void renderEntities(Entity renderViewEntity, ICamera camera, float partialTicks) {
|
public void renderEntities(Entity renderViewEntity, ICamera camera, float partialTicks) {
|
||||||
boolean b = true;
|
boolean b = true;
|
||||||
if(entityCantBeSeen(renderViewEntity)) {
|
if(this.mc.gameSettings.entityCulling && entityCantBeSeen(renderViewEntity)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (this.renderEntitiesStartupCounter > 0) {
|
if (this.renderEntitiesStartupCounter > 0) {
|
||||||
|
@ -2293,7 +2293,7 @@ public class RenderGlobal implements IWorldAccess, IResourceManagerReloadListene
|
||||||
|
|
||||||
private EntityFX spawnEntityFX(int p_174974_1_, boolean ignoreRange, double p_174974_3_, double p_174974_5_, double p_174974_7_, double p_174974_9_, double p_174974_11_, double p_174974_13_, int... p_174974_15_) {
|
private EntityFX spawnEntityFX(int p_174974_1_, boolean ignoreRange, double p_174974_3_, double p_174974_5_, double p_174974_7_, double p_174974_9_, double p_174974_11_, double p_174974_13_, int... p_174974_15_) {
|
||||||
if (this.mc != null && this.mc.getRenderViewEntity() != null && this.mc.effectRenderer != null) {
|
if (this.mc != null && this.mc.getRenderViewEntity() != null && this.mc.effectRenderer != null) {
|
||||||
if(isBehindPlayer(new BlockPos(p_174974_3_, p_174974_5_, p_174974_7_))) {
|
if(this.mc.gameSettings.particleCulling && isBehindPlayer(new BlockPos(p_174974_3_, p_174974_5_, p_174974_7_))) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2368,4 +2368,8 @@ public class Minecraft extends ModData implements IThreadListener {
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public float getPartialTicks() {
|
||||||
|
return this.timer.renderPartialTicks;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -5,6 +5,7 @@ import static net.lax1dude.eaglercraft.v1_8.opengl.RealOpenGLEnums.*;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
|
import net.PeytonPlayz585.shadow.ArmorGui;
|
||||||
import net.PeytonPlayz585.shadow.Config;
|
import net.PeytonPlayz585.shadow.Config;
|
||||||
import net.PeytonPlayz585.shadow.CustomColors;
|
import net.PeytonPlayz585.shadow.CustomColors;
|
||||||
import net.eaglerforge.api.ModAPI;
|
import net.eaglerforge.api.ModAPI;
|
||||||
|
@ -79,7 +80,7 @@ public class GuiIngame extends Gui {
|
||||||
private static final ResourceLocation pumpkinBlurTexPath = new ResourceLocation("textures/misc/pumpkinblur.png");
|
private static final ResourceLocation pumpkinBlurTexPath = new ResourceLocation("textures/misc/pumpkinblur.png");
|
||||||
private final EaglercraftRandom rand = new EaglercraftRandom();
|
private final EaglercraftRandom rand = new EaglercraftRandom();
|
||||||
private final Minecraft mc;
|
private final Minecraft mc;
|
||||||
private final RenderItem itemRenderer;
|
public final RenderItem itemRenderer;
|
||||||
private final GuiNewChat persistantChatGUI;
|
private final GuiNewChat persistantChatGUI;
|
||||||
private int updateCounter;
|
private int updateCounter;
|
||||||
/**+
|
/**+
|
||||||
|
@ -315,6 +316,9 @@ public class GuiIngame extends Gui {
|
||||||
this.overlayPlayerList.renderPlayerlist(i, scoreboard, scoreobjective1);
|
this.overlayPlayerList.renderPlayerlist(i, scoreboard, scoreobjective1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(this.mc.gameSettings.armorgui) {
|
||||||
|
ArmorGui.draw();
|
||||||
|
}
|
||||||
ModAPI.callEvent("drawhud", new ModData());
|
ModAPI.callEvent("drawhud", new ModData());
|
||||||
|
|
||||||
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
|
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
|
||||||
|
|
|
@ -272,6 +272,12 @@ public class GameSettings extends ModData {
|
||||||
public boolean enableFNAWSkins = true;
|
public boolean enableFNAWSkins = true;
|
||||||
public boolean fullBright = false;
|
public boolean fullBright = false;
|
||||||
public boolean leftHand = false;
|
public boolean leftHand = false;
|
||||||
|
public boolean entityCulling = true;
|
||||||
|
public boolean particleCulling = true;
|
||||||
|
public boolean armorgui = false;
|
||||||
|
public boolean cps = false;
|
||||||
|
public boolean keyStrokes = false;
|
||||||
|
public boolean potionGUI = false;
|
||||||
|
|
||||||
public int voiceListenRadius = 16;
|
public int voiceListenRadius = 16;
|
||||||
public float voiceListenVolume = 0.5f;
|
public float voiceListenVolume = 0.5f;
|
||||||
|
@ -1091,6 +1097,30 @@ public class GameSettings extends ModData {
|
||||||
if(parOptions == GameSettings.Options.LEFT_HAND) {
|
if(parOptions == GameSettings.Options.LEFT_HAND) {
|
||||||
this.leftHand = !this.leftHand;
|
this.leftHand = !this.leftHand;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.ENTITY_CULLING) {
|
||||||
|
this.entityCulling = !this.entityCulling;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.PARTICLE_CULLING) {
|
||||||
|
this.particleCulling = !this.particleCulling;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.ARMOR_GUI) {
|
||||||
|
this.armorgui = !this.armorgui;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.CPS) {
|
||||||
|
this.cps = !this.cps;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.KEYSTROKES) {
|
||||||
|
this.keyStrokes = !this.keyStrokes;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(parOptions == GameSettings.Options.POTION_GUI) {
|
||||||
|
this.potionGUI = !this.potionGUI;
|
||||||
|
}
|
||||||
|
|
||||||
this.saveOptions();
|
this.saveOptions();
|
||||||
}
|
}
|
||||||
|
@ -1220,6 +1250,18 @@ public class GameSettings extends ModData {
|
||||||
return this.fullBright;
|
return this.fullBright;
|
||||||
case LEFT_HAND:
|
case LEFT_HAND:
|
||||||
return this.leftHand;
|
return this.leftHand;
|
||||||
|
case ENTITY_CULLING:
|
||||||
|
return this.entityCulling;
|
||||||
|
case PARTICLE_CULLING:
|
||||||
|
return this.particleCulling;
|
||||||
|
case ARMOR_GUI:
|
||||||
|
return this.armorgui;
|
||||||
|
case CPS:
|
||||||
|
return this.cps;
|
||||||
|
case POTION_GUI:
|
||||||
|
return this.potionGUI;
|
||||||
|
case KEYSTROKES:
|
||||||
|
return this.keyStrokes;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -2097,6 +2139,30 @@ public class GameSettings extends ModData {
|
||||||
if (astring[0].equals("leftHand") && astring.length >= 2) {
|
if (astring[0].equals("leftHand") && astring.length >= 2) {
|
||||||
leftHand = Boolean.valueOf(astring[1]).booleanValue();
|
leftHand = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("particleCulling") && astring.length >= 2) {
|
||||||
|
particleCulling = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("entityCulling") && astring.length >= 2) {
|
||||||
|
entityCulling = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("armorgui") && astring.length >= 2) {
|
||||||
|
armorgui = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("cps") && astring.length >= 2) {
|
||||||
|
cps = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("keyStrokes") && astring.length >= 2) {
|
||||||
|
keyStrokes = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(astring[0].equals("potionGUI") && astring.length >= 2) {
|
||||||
|
potionGUI = Boolean.valueOf(astring[1]).booleanValue();
|
||||||
|
}
|
||||||
|
|
||||||
for (SoundCategory soundcategory : SoundCategory._VALUES) {
|
for (SoundCategory soundcategory : SoundCategory._VALUES) {
|
||||||
if (astring[0].equals("soundCategory_" + soundcategory.getCategoryName())) {
|
if (astring[0].equals("soundCategory_" + soundcategory.getCategoryName())) {
|
||||||
|
@ -2293,6 +2359,12 @@ public class GameSettings extends ModData {
|
||||||
printwriter.println("enableFNAWSkins:" + this.enableFNAWSkins);
|
printwriter.println("enableFNAWSkins:" + this.enableFNAWSkins);
|
||||||
printwriter.println("fullbright:" + this.fullBright);
|
printwriter.println("fullbright:" + this.fullBright);
|
||||||
printwriter.println("leftHand:" + this.leftHand);
|
printwriter.println("leftHand:" + this.leftHand);
|
||||||
|
printwriter.println("entityCulling:" + this.entityCulling);
|
||||||
|
printwriter.println("particleCulling:" + this.particleCulling);
|
||||||
|
printwriter.println("armorgui:" + this.armorgui);
|
||||||
|
printwriter.println("cps:" + this.cps);
|
||||||
|
printwriter.println("keyStrokes:" + this.keyStrokes);
|
||||||
|
printwriter.println("potionGUI:" + this.potionGUI);
|
||||||
|
|
||||||
for (KeyBinding keybinding : this.keyBindings) {
|
for (KeyBinding keybinding : this.keyBindings) {
|
||||||
printwriter.println("key_" + keybinding.getKeyDescription() + ":" + keybinding.getKeyCode());
|
printwriter.println("key_" + keybinding.getKeyDescription() + ":" + keybinding.getKeyCode());
|
||||||
|
@ -2506,7 +2578,13 @@ public class GameSettings extends ModData {
|
||||||
FNAW_SKINS("options.skinCustomisation.enableFNAWSkins", false, true),
|
FNAW_SKINS("options.skinCustomisation.enableFNAWSkins", false, true),
|
||||||
EAGLER_VSYNC("options.vsync", false, true),
|
EAGLER_VSYNC("options.vsync", false, true),
|
||||||
FULLBRIGHT("Fullbright", false, true),
|
FULLBRIGHT("Fullbright", false, true),
|
||||||
LEFT_HAND("Main Hand", false, true);
|
LEFT_HAND("Main Hand", false, true),
|
||||||
|
ENTITY_CULLING("Entity Culling", false, true),
|
||||||
|
PARTICLE_CULLING("Particle Culling", false, true),
|
||||||
|
ARMOR_GUI("Armor GUI", false, true),
|
||||||
|
CPS("CPS", false, true),
|
||||||
|
KEYSTROKES("Keystrokes", false, true),
|
||||||
|
POTION_GUI("Potion Effects GUI", false, true);
|
||||||
|
|
||||||
private final boolean enumFloat;
|
private final boolean enumFloat;
|
||||||
private final boolean enumBoolean;
|
private final boolean enumBoolean;
|
||||||
|
|
|
@ -38,8 +38,8 @@ public class KeyBinding extends ModData implements Comparable<KeyBinding> {
|
||||||
private final String keyDescription;
|
private final String keyDescription;
|
||||||
private final int keyCodeDefault;
|
private final int keyCodeDefault;
|
||||||
private final String keyCategory;
|
private final String keyCategory;
|
||||||
private int keyCode;
|
public int keyCode;
|
||||||
private boolean pressed;
|
public boolean pressed;
|
||||||
private int pressTime;
|
private int pressTime;
|
||||||
|
|
||||||
public static void onTick(int keyCode) {
|
public static void onTick(int keyCode) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user