Compile JS

This commit is contained in:
catfoolyou
2025-02-06 16:15:37 -05:00
parent 56e30eaef1
commit 899ceb69b3
69 changed files with 30465 additions and 328 deletions

View File

@@ -0,0 +1,90 @@
package net.lax1dude.eaglercraft;
import java.util.function.Supplier;
/**
* Copyright (c) 2022 lax1dude. All Rights Reserved.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
*/
public class JDKBackports {
public static long parseLong(CharSequence s, int beginIndex, int endIndex, int radix) throws NumberFormatException {
if (beginIndex < 0 || beginIndex > endIndex || endIndex > s.length()) {
throw new IndexOutOfBoundsException();
}
if (radix < Character.MIN_RADIX) {
throw new NumberFormatException("radix " + radix + " less than Character.MIN_RADIX");
}
if (radix > Character.MAX_RADIX) {
throw new NumberFormatException("radix " + radix + " greater than Character.MAX_RADIX");
}
boolean negative = false;
int i = beginIndex;
long limit = -Long.MAX_VALUE;
if (i < endIndex) {
char firstChar = s.charAt(i);
if (firstChar < '0') { // Possible leading "+" or "-"
if (firstChar == '-') {
negative = true;
limit = Long.MIN_VALUE;
} else if (firstChar != '+') {
throw new NumberFormatException();
}
i++;
}
if (i >= endIndex) { // Cannot have lone "+", "-" or ""
throw new NumberFormatException();
}
long multmin = limit / radix;
long result = 0;
while (i < endIndex) {
// Accumulating negatively avoids surprises near MAX_VALUE
int digit = Character.digit(s.charAt(i), radix);
if (digit < 0 || result < multmin) {
throw new NumberFormatException();
}
result *= radix;
if (result < limit + digit) {
throw new NumberFormatException();
}
i++;
result -= digit;
}
return negative ? result : -result;
} else {
throw new NumberFormatException("");
}
}
public static <T> T javaUtilObject_requireNonNull(T obj, Supplier<String> messageSupplier) {
if (obj == null)
throw new NullPointerException(messageSupplier.get());
return obj;
}
public static <T> T javaUtilObject_requireNonNull(T obj, String message) {
if (obj == null)
throw new NullPointerException(message);
return obj;
}
public static <T> T javaUtilObject_requireNonNull(T obj) {
if (obj == null)
throw new NullPointerException();
return obj;
}
}

View File

@@ -72,6 +72,96 @@ public class ProfileUUID {
return ret;
}
public long getMostSignificantBits() {
return msb;
}
public long getLeastSignificantBits() {
return lsb;
}
public static ProfileUUID randomUUID() {
byte[] randomBytes = new byte[16];
(new EaglercraftRandom()).nextBytes(randomBytes);
randomBytes[6] &= 0x0f; /* clear version */
randomBytes[6] |= 0x40; /* set to version 4 */
randomBytes[8] &= 0x3f; /* clear variant */
randomBytes[8] |= 0x80; /* set to IETF variant */
return new ProfileUUID(randomBytes);
}
private static final String HEX = "0123456789ABCDEF";
private static int nibbleValue(char c) {
int v = HEX.indexOf(Character.toUpperCase(c));
if (v == -1) {
return 0;
} else {
return v;
}
}
private static long parse4Nibbles(String name, int pos) {
int ch1 = nibbleValue(name.charAt(pos));
int ch2 = nibbleValue(name.charAt(pos + 1));
int ch3 = nibbleValue(name.charAt(pos + 2));
int ch4 = nibbleValue(name.charAt(pos + 3));
return (ch1 << 12) | (ch2 << 8) | (ch3 << 4) | ch4;
}
public static ProfileUUID fromString(String name) {
if (name.length() == 36) {
char ch1 = name.charAt(8);
char ch2 = name.charAt(13);
char ch3 = name.charAt(18);
char ch4 = name.charAt(23);
if (ch1 == '-' && ch2 == '-' && ch3 == '-' && ch4 == '-') {
long msb1 = parse4Nibbles(name, 0);
long msb2 = parse4Nibbles(name, 4);
long msb3 = parse4Nibbles(name, 9);
long msb4 = parse4Nibbles(name, 14);
long lsb1 = parse4Nibbles(name, 19);
long lsb2 = parse4Nibbles(name, 24);
long lsb3 = parse4Nibbles(name, 28);
long lsb4 = parse4Nibbles(name, 32);
if ((msb1 | msb2 | msb3 | msb4 | lsb1 | lsb2 | lsb3 | lsb4) >= 0) {
return new ProfileUUID(msb1 << 48 | msb2 << 32 | msb3 << 16 | msb4,
lsb1 << 48 | lsb2 << 32 | lsb3 << 16 | lsb4);
}
}
}
return fromString1(name);
}
private static ProfileUUID fromString1(String name) {
int len = name.length();
if (len > 36) {
throw new IllegalArgumentException("UUID string too large");
}
int dash1 = name.indexOf('-', 0);
int dash2 = name.indexOf('-', dash1 + 1);
int dash3 = name.indexOf('-', dash2 + 1);
int dash4 = name.indexOf('-', dash3 + 1);
int dash5 = name.indexOf('-', dash4 + 1);
if (dash4 < 0 || dash5 >= 0) {
throw new IllegalArgumentException("Invalid UUID string: " + name);
}
long mostSigBits = JDKBackports.parseLong(name, 0, dash1, 16) & 0xffffffffL;
mostSigBits <<= 16;
mostSigBits |= JDKBackports.parseLong(name, dash1 + 1, dash2, 16) & 0xffffL;
mostSigBits <<= 16;
mostSigBits |= JDKBackports.parseLong(name, dash2 + 1, dash3, 16) & 0xffffL;
long leastSigBits = JDKBackports.parseLong(name, dash3 + 1, dash4, 16) & 0xffffL;
leastSigBits <<= 48;
leastSigBits |= JDKBackports.parseLong(name, dash4 + 1, len, 16) & 0xffffffffffffL;
return new ProfileUUID(mostSigBits, leastSigBits);
}
@Override
public String toString() {
return (digits(msb >> 32, 8) + "-" + digits(msb >> 16, 4) + "-" + digits(msb, 4) + "-"

View File

@@ -1,7 +1,7 @@
package net.minecraft.src;
import java.util.Collection;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public interface AttributeInstance
{
@@ -14,9 +14,9 @@ public interface AttributeInstance
Collection func_111122_c();
/**
* Returns attribute modifier, if any, by the given UUID
* Returns attribute modifier, if any, by the given ProfileUUID
*/
AttributeModifier getModifier(UUID var1);
AttributeModifier getModifier(ProfileUUID var1);
void applyModifier(AttributeModifier var1);

View File

@@ -1,13 +1,13 @@
package net.minecraft.src;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public class AttributeModifier
{
private final double amount;
private final int operation;
private final String name;
private final UUID id;
private final ProfileUUID id;
/**
* If false, this modifier is not saved in NBT. Used for "natural" modifiers like speed boost from sprinting
@@ -16,10 +16,10 @@ public class AttributeModifier
public AttributeModifier(String par1Str, double par2, int par4)
{
this(UUID.randomUUID(), par1Str, par2, par4);
this(ProfileUUID.randomUUID(), par1Str, par2, par4);
}
public AttributeModifier(UUID par1UUID, String par2Str, double par3, int par5)
public AttributeModifier(ProfileUUID par1UUID, String par2Str, double par3, int par5)
{
this.isSaved = true;
this.id = par1UUID;
@@ -47,7 +47,7 @@ public class AttributeModifier
public UUID getID()
public ProfileUUID getID()
{
return this.id;
}

View File

@@ -1,52 +0,0 @@
package net.minecraft.src;
import java.lang.management.ManagementFactory;
import java.lang.management.RuntimeMXBean;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.Callable;
class CallableJVMFlags implements Callable
{
/** Reference to the CrashReport object. */
final CrashReport theCrashReport;
CallableJVMFlags(CrashReport par1CrashReport)
{
this.theCrashReport = par1CrashReport;
}
/**
* Returns the number of JVM Flags along with the passed JVM Flags.
*/
public String getJVMFlagsAsString()
{
RuntimeMXBean var1 = ManagementFactory.getRuntimeMXBean();
List var2 = var1.getInputArguments();
int var3 = 0;
StringBuilder var4 = new StringBuilder();
Iterator var5 = var2.iterator();
while (var5.hasNext())
{
String var6 = (String)var5.next();
if (var6.startsWith("-X"))
{
if (var3++ > 0)
{
var4.append(" ");
}
var4.append(var6);
}
}
return String.format("%d total; %s", new Object[] {Integer.valueOf(var3), var4.toString()});
}
public Object call()
{
return this.getJVMFlagsAsString();
}
}

View File

@@ -1,27 +0,0 @@
package net.minecraft.src;
import java.util.concurrent.Callable;
class CallableJavaInfo implements Callable
{
/** Reference to the CrashReport object. */
final CrashReport theCrashReport;
CallableJavaInfo(CrashReport par1CrashReport)
{
this.theCrashReport = par1CrashReport;
}
/**
* Returns the Java VM Information as a String. Includes the Version and Vender.
*/
public String getJavaInfoAsString()
{
return System.getProperty("java.version") + ", " + System.getProperty("java.vendor");
}
public Object call()
{
return this.getJavaInfoAsString();
}
}

View File

@@ -1,27 +0,0 @@
package net.minecraft.src;
import java.util.concurrent.Callable;
class CallableJavaInfo2 implements Callable
{
/** Reference to the CrashReport object. */
final CrashReport theCrashReport;
CallableJavaInfo2(CrashReport par1CrashReport)
{
this.theCrashReport = par1CrashReport;
}
/**
* Retuns the Java VM Information as a String. Includes the VM Name, VM Info and VM Vendor.
*/
public String getJavaVMInfoAsString()
{
return System.getProperty("java.vm.name") + " (" + System.getProperty("java.vm.info") + "), " + System.getProperty("java.vm.vendor");
}
public Object call()
{
return this.getJavaVMInfoAsString();
}
}

View File

@@ -1,35 +0,0 @@
package net.minecraft.src;
import java.util.concurrent.Callable;
class CallableMemoryInfo implements Callable
{
/** Reference to the CrashReport object. */
final CrashReport theCrashReport;
CallableMemoryInfo(CrashReport par1CrashReport)
{
this.theCrashReport = par1CrashReport;
}
/**
* Returns the memory information as a String. Includes the Free Memory in bytes and MB, Total Memory in bytes and
* MB, and Max Memory in Bytes and MB.
*/
public String getMemoryInfoAsString()
{
Runtime var1 = Runtime.getRuntime();
long var2 = var1.maxMemory();
long var4 = var1.totalMemory();
long var6 = var1.freeMemory();
long var8 = var2 / 1024L / 1024L;
long var10 = var4 / 1024L / 1024L;
long var12 = var6 / 1024L / 1024L;
return var6 + " bytes (" + var12 + " MB) / " + var4 + " bytes (" + var10 + " MB) up to " + var2 + " bytes (" + var8 + " MB)";
}
public Object call()
{
return this.getMemoryInfoAsString();
}
}

View File

@@ -791,7 +791,7 @@ public class Chunk
if (var2 != this.xPosition || var3 != this.zPosition)
{
System.err.println("Wrong location! " + par1Entity);
Thread.dumpStack();
//Thread.dumpStack();
}
int var4 = MathHelper.floor_double(par1Entity.posY / 16.0D);

View File

@@ -43,10 +43,10 @@ public class CrashReport
{
this.field_85061_c.addCrashSectionCallable("Minecraft Version", new CallableMinecraftVersion(this));
this.field_85061_c.addCrashSectionCallable("Operating System", new CallableOSInfo(this));
this.field_85061_c.addCrashSectionCallable("Java Version", new CallableJavaInfo(this));
this.field_85061_c.addCrashSectionCallable("Java VM Version", new CallableJavaInfo2(this));
this.field_85061_c.addCrashSectionCallable("Memory", new CallableMemoryInfo(this));
this.field_85061_c.addCrashSectionCallable("JVM Flags", new CallableJVMFlags(this));
//this.field_85061_c.addCrashSectionCallable("Java Version", new CallableJavaInfo(this));
//this.field_85061_c.addCrashSectionCallable("Java VM Version", new CallableJavaInfo2(this));
//this.field_85061_c.addCrashSectionCallable("Memory", new CallableMemoryInfo(this));
//this.field_85061_c.addCrashSectionCallable("JVM Flags", new CallableJVMFlags(this));
this.field_85061_c.addCrashSectionCallable("AABB Pool Size", new CallableCrashMemoryReport(this));
this.field_85061_c.addCrashSectionCallable("Suspicious classes", new CallableSuspiciousClasses(this));
this.field_85061_c.addCrashSectionCallable("IntCache", new CallableIntCache(this));

View File

@@ -8,8 +8,6 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.concurrent.locks.ReadWriteLock;
import java.util.concurrent.locks.ReentrantReadWriteLock;
public class DataWatcher
{
@@ -20,7 +18,6 @@ public class DataWatcher
/** true if one or more object was changed */
private boolean objectChanged;
private ReadWriteLock lock = new ReentrantReadWriteLock();
/**
* adds a new object to dataWatcher to watch, to update an already existing object see updateObject. Arguments: data
@@ -45,9 +42,9 @@ public class DataWatcher
else
{
WatchableObject var4 = new WatchableObject(var3.intValue(), par1, par2Obj);
this.lock.writeLock().lock();
//this.lock.writeLock().lock();
this.watchedObjects.put(Integer.valueOf(par1), var4);
this.lock.writeLock().unlock();
//this.lock.writeLock().unlock();
this.isBlank = false;
}
}
@@ -58,9 +55,9 @@ public class DataWatcher
public void addObjectByDataType(int par1, int par2)
{
WatchableObject var3 = new WatchableObject(par2, par1, (Object)null);
this.lock.writeLock().lock();
//this.lock.writeLock().lock();
this.watchedObjects.put(Integer.valueOf(par1), var3);
this.lock.writeLock().unlock();
//this.lock.writeLock().unlock();
this.isBlank = false;
}
@@ -111,7 +108,7 @@ public class DataWatcher
*/
private WatchableObject getWatchedObject(int par1)
{
this.lock.readLock().lock();
//this.lock.readLock().lock();
WatchableObject var2;
try
@@ -126,7 +123,7 @@ public class DataWatcher
throw new ReportedException(var4);
}
this.lock.readLock().unlock();
//this.lock.readLock().unlock();
return var2;
}
@@ -181,7 +178,7 @@ public class DataWatcher
if (this.objectChanged)
{
this.lock.readLock().lock();
//this.lock.readLock().lock();
Iterator var2 = this.watchedObjects.values().iterator();
while (var2.hasNext())
@@ -201,7 +198,7 @@ public class DataWatcher
}
}
this.lock.readLock().unlock();
//this.lock.readLock().unlock();
}
this.objectChanged = false;
@@ -210,7 +207,7 @@ public class DataWatcher
public void writeWatchableObjects(DataOutput par1DataOutput) throws IOException
{
this.lock.readLock().lock();
//this.lock.readLock().lock();
Iterator var2 = this.watchedObjects.values().iterator();
while (var2.hasNext())
@@ -219,14 +216,14 @@ public class DataWatcher
writeWatchableObject(par1DataOutput, var3);
}
this.lock.readLock().unlock();
//this.lock.readLock().unlock();
par1DataOutput.writeByte(127);
}
public List getAllWatched()
{
ArrayList var1 = null;
this.lock.readLock().lock();
//this.lock.readLock().lock();
WatchableObject var3;
for (Iterator var2 = this.watchedObjects.values().iterator(); var2.hasNext(); var1.add(var3))
@@ -239,7 +236,7 @@ public class DataWatcher
}
}
this.lock.readLock().unlock();
//this.lock.readLock().unlock();
return var1;
}
@@ -339,7 +336,7 @@ public class DataWatcher
public void updateWatchedObjectsFromList(List par1List)
{
this.lock.writeLock().lock();
//this.lock.writeLock().lock();
Iterator var2 = par1List.iterator();
while (var2.hasNext())
@@ -353,7 +350,7 @@ public class DataWatcher
}
}
this.lock.writeLock().unlock();
//this.lock.writeLock().unlock();
this.objectChanged = true;
}

View File

@@ -2,7 +2,7 @@ package net.minecraft.src;
import java.util.List;
import net.lax1dude.eaglercraft.EaglercraftRandom;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
import net.minecraft.server.MinecraftServer;
public abstract class Entity
@@ -185,7 +185,7 @@ public abstract class Entity
public int dimension;
protected int teleportDirection;
private boolean invulnerable;
private UUID entityUniqueID;
private ProfileUUID entityUniqueID;
public EnumEntitySize myEntitySize;
public Entity(World par1World)
@@ -201,7 +201,7 @@ public abstract class Entity
this.fireResistance = 1;
this.firstUpdate = true;
this.dataWatcher = new DataWatcher();
this.entityUniqueID = UUID.randomUUID();
this.entityUniqueID = ProfileUUID.randomUUID();
this.myEntitySize = EnumEntitySize.SIZE_2;
this.worldObj = par1World;
this.setPosition(0.0D, 0.0D, 0.0D);
@@ -1546,7 +1546,7 @@ public abstract class Entity
if (par1NBTTagCompound.hasKey("UUIDMost") && par1NBTTagCompound.hasKey("UUIDLeast"))
{
this.entityUniqueID = new UUID(par1NBTTagCompound.getLong("UUIDMost"), par1NBTTagCompound.getLong("UUIDLeast"));
this.entityUniqueID = new ProfileUUID(par1NBTTagCompound.getLong("UUIDMost"), par1NBTTagCompound.getLong("UUIDLeast"));
}
this.setPosition(this.posX, this.posY, this.posZ);
@@ -2367,7 +2367,7 @@ public abstract class Entity
return this.isBurning();
}
public UUID getUniqueID()
public ProfileUUID getUniqueID()
{
return this.entityUniqueID;
}

View File

@@ -1,10 +1,10 @@
package net.minecraft.src;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public abstract class EntityCreature extends EntityLiving
{
public static final UUID field_110179_h = UUID.fromString("E199AD21-BA8A-4C53-8D13-6182D5C69D3A");
public static final ProfileUUID field_110179_h = ProfileUUID.fromString("E199AD21-BA8A-4C53-8D13-6182D5C69D3A");
public static final AttributeModifier field_110181_i = (new AttributeModifier(field_110179_h, "Fleeing speed bonus", 2.0D, 2)).setSaved(false);
private PathEntity pathToEntity;

View File

@@ -1,10 +1,10 @@
package net.minecraft.src;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public class EntityEnderman extends EntityMob
{
private static final UUID attackingSpeedBoostModifierUUID = UUID.fromString("020E0DFB-87AE-4653-9556-831010E291A0");
private static final ProfileUUID attackingSpeedBoostModifierUUID = ProfileUUID.fromString("020E0DFB-87AE-4653-9556-831010E291A0");
private static final AttributeModifier attackingSpeedBoostModifier = (new AttributeModifier(attackingSpeedBoostModifierUUID, "Attacking speed boost", 6.199999809265137D, 0)).setSaved(false);
private static boolean[] carriableBlocks = new boolean[256];

View File

@@ -2,7 +2,7 @@ package net.minecraft.src;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public abstract class EntityLiving extends EntityLivingBase
{
@@ -1177,7 +1177,7 @@ public abstract class EntityLiving extends EntityLivingBase
{
if (this.field_110170_bx.hasKey("UUIDMost") && this.field_110170_bx.hasKey("UUIDLeast"))
{
UUID var5 = new UUID(this.field_110170_bx.getLong("UUIDMost"), this.field_110170_bx.getLong("UUIDLeast"));
ProfileUUID var5 = new ProfileUUID(this.field_110170_bx.getLong("UUIDMost"), this.field_110170_bx.getLong("UUIDLeast"));
List var6 = this.worldObj.getEntitiesWithinAABB(EntityLivingBase.class, this.boundingBox.expand(10.0D, 10.0D, 10.0D));
Iterator var7 = var6.iterator();

View File

@@ -5,11 +5,11 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import net.lax1dude.eaglercraft.EaglercraftRandom;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public abstract class EntityLivingBase extends Entity
{
private static final UUID sprintingSpeedBoostModifierUUID = UUID.fromString("662A6B8D-DA3E-4C1C-8813-96EA6097278D");
private static final ProfileUUID sprintingSpeedBoostModifierUUID = ProfileUUID.fromString("662A6B8D-DA3E-4C1C-8813-96EA6097278D");
private static final AttributeModifier sprintingSpeedBoostModifier = (new AttributeModifier(sprintingSpeedBoostModifierUUID, "Sprinting speed boost", 0.30000001192092896D, 2)).setSaved(false);
private BaseAttributeMap attributeMap;
private final CombatTracker _combatTracker = new CombatTracker(this);

View File

@@ -1,11 +1,11 @@
package net.minecraft.src;
import java.util.List;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public class EntityPigZombie extends EntityZombie
{
private static final UUID field_110189_bq = UUID.fromString("49455A49-7EC5-45BA-B886-3B90B23A1718");
private static final ProfileUUID field_110189_bq = ProfileUUID.fromString("49455A49-7EC5-45BA-B886-3B90B23A1718");
private static final AttributeModifier field_110190_br = (new AttributeModifier(field_110189_bq, "Attacking speed boost", 0.45D, 0)).setSaved(false);
/** Above zero if this PigZombie is Angry. */

View File

@@ -2,11 +2,11 @@ package net.minecraft.src;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public class EntityWitch extends EntityMob implements IRangedAttackMob
{
private static final UUID field_110184_bp = UUID.fromString("5CD17E52-A79A-43D3-A529-90FDE04B181E");
private static final ProfileUUID field_110184_bp = ProfileUUID.fromString("5CD17E52-A79A-43D3-A529-90FDE04B181E");
private static final AttributeModifier field_110185_bq = (new AttributeModifier(field_110184_bp, "Drinking speed penalty", -0.25D, 0)).setSaved(false);
/** List of items a witch should drop on death. */

View File

@@ -1,12 +1,12 @@
package net.minecraft.src;
import java.util.Calendar;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public class EntityZombie extends EntityMob
{
protected static final Attribute field_110186_bp = (new RangedAttribute("zombie.spawnReinforcements", 0.0D, 0.0D, 1.0D)).func_111117_a("Spawn Reinforcements Chance");
private static final UUID babySpeedBoostUUID = UUID.fromString("B9766B59-9566-4402-BC1F-2EE2A276D836");
private static final ProfileUUID babySpeedBoostUUID = ProfileUUID.fromString("B9766B59-9566-4402-BC1F-2EE2A276D836");
private static final AttributeModifier babySpeedBoostModifier = new AttributeModifier(babySpeedBoostUUID, "Baby speed boost", 0.5D, 1);
/**

View File

@@ -1,14 +1,12 @@
package net.minecraft.src;
import java.awt.Color;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import net.lax1dude.eaglercraft.EaglercraftRandom;
import net.lax1dude.eaglercraft.TextureLocation;
import net.lax1dude.eaglercraft.*;
import net.lax1dude.eaglercraft.adapter.Tessellator;
import net.lax1dude.eaglercraft.EaglerAdapter;
public class GuiIngame extends Gui
{
@@ -45,6 +43,15 @@ public class GuiIngame extends Gui
this.persistantChatGUI = new GuiNewChat(par1Minecraft);
}
private static String doubleToShorterString(double d) {
String s = Double.toString(d);
int i = s.indexOf('.');
if(s.length() - i > 6) {
s = s.substring(0, i + 6);
}
return s;
}
/**
* Render the ingame overlay with quick icon bar, ...
*/
@@ -255,43 +262,80 @@ public class GuiIngame extends Gui
int var21;
int var22;
int var23;
int var55;
if (this.mc.gameSettings.showDebugInfo)
{
this.mc.mcProfiler.startSection("debug");
var55 = var7 - 39;
var22 = var55 - 10;
var23 = this.mc.thePlayer.getTotalArmorValue();
int var24 = -1;
if (this.mc.gameSettings.showDebugInfo) {
EaglerAdapter.glPushMatrix();
var8.drawStringWithShadow("Minecraft 1.6.4 (" + this.mc.debug + ")", 2, 2, 16777215);
var8.drawStringWithShadow(this.mc.debugInfoRenders(), 2, 12, 16777215);
var8.drawStringWithShadow(this.mc.getEntityDebug(), 2, 22, 16777215);
var8.drawStringWithShadow(this.mc.debugInfoEntities(), 2, 32, 16777215);
var8.drawStringWithShadow(this.mc.getWorldProviderName(), 2, 42, 16777215);
long var38 = Runtime.getRuntime().maxMemory();
long var41 = Runtime.getRuntime().totalMemory();
long var43 = Runtime.getRuntime().freeMemory();
long var45 = var41 - var43;
String var20 = "Used memory: " + var45 * 100L / var38 + "% (" + var45 / 1024L / 1024L + "MB) of " + var38 / 1024L / 1024L + "MB";
var21 = 14737632;
this.drawString(var8, var20, var6 - var8.getStringWidth(var20) - 2, 2, 14737632);
var20 = "Allocated memory: " + var41 * 100L / var38 + "% (" + var41 / 1024L / 1024L + "MB)";
this.drawString(var8, var20, var6 - var8.getStringWidth(var20) - 2, 12, 14737632);
var22 = MathHelper.floor_double(this.mc.thePlayer.posX);
var23 = MathHelper.floor_double(this.mc.thePlayer.posY);
int var24 = MathHelper.floor_double(this.mc.thePlayer.posZ);
this.drawString(var8, String.format("x: %.5f (%d) // c: %d (%d)", new Object[] {Double.valueOf(this.mc.thePlayer.posX), Integer.valueOf(var22), Integer.valueOf(var22 >> 4), Integer.valueOf(var22 & 15)}), 2, 64, 14737632);
this.drawString(var8, String.format("y: %.3f (feet pos, %.3f eyes pos)", new Object[] {Double.valueOf(this.mc.thePlayer.boundingBox.minY), Double.valueOf(this.mc.thePlayer.posY)}), 2, 72, 14737632);
this.drawString(var8, String.format("z: %.5f (%d) // c: %d (%d)", new Object[] {Double.valueOf(this.mc.thePlayer.posZ), Integer.valueOf(var24), Integer.valueOf(var24 >> 4), Integer.valueOf(var24 & 15)}), 2, 80, 14737632);
int var25 = MathHelper.floor_double((double)(this.mc.thePlayer.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3;
this.drawString(var8, "f: " + var25 + " (" + Direction.directions[var25] + ") / " + MathHelper.wrapAngleTo180_float(this.mc.thePlayer.rotationYaw), 2, 88, 14737632);
if (this.mc.theWorld != null && this.mc.theWorld.blockExists(var22, var23, var24))
{
Chunk var26 = this.mc.theWorld.getChunkFromBlockCoords(var22, var24);
this.drawString(var8, "lc: " + (var26.getTopFilledSegment() + 15) + " b: " + var26.getBiomeGenForWorldCoords(var22 & 15, var24 & 15, this.mc.theWorld.getWorldChunkManager()).biomeName + " bl: " + var26.getSavedLightValue(EnumSkyBlock.Block, var22 & 15, var23, var24 & 15) + " sl: " + var26.getSavedLightValue(EnumSkyBlock.Sky, var22 & 15, var23, var24 & 15) + " rl: " + var26.getBlockLightValue(var22 & 15, var23, var24 & 15, 0), 2, 96, 14737632);
String var45;
int offset = 0;
if(EaglerAdapter._wisWebGL()) {
var45 = "Game is running in a browser (" + EnumBrowser.getBrowser().toString() + ")";
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, 2, 14737632);
offset = -10;
}else {
long var39;
long var37;
long var41;
var39 = EaglerAdapter.maxMemory();
var37 = EaglerAdapter.totalMemory();
var41 = EaglerAdapter.freeMemory();
long var44 = var37 - var41;
var45 = "Used memory: " + var44 * 100L / var39 + "% (" + var44 / 1024L / 1024L + "MB) of " + var39 / 1024L / 1024L + "MB";
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, 2, 14737632);
var45 = "Allocated memory: " + var37 * 100L / var39 + "% (" + var37 / 1024L / 1024L + "MB)";
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, 12, 14737632);
offset = 0;
}
this.drawString(var8, String.format("ws: %.3f, fs: %.3f, g: %b, fl: %d", new Object[] {Float.valueOf(this.mc.thePlayer.capabilities.getWalkSpeed()), Float.valueOf(this.mc.thePlayer.capabilities.getFlySpeed()), Boolean.valueOf(this.mc.thePlayer.onGround), Integer.valueOf(this.mc.theWorld.getHeightValue(var22, var24))}), 2, 104, 14737632);
this.drawString(var8, "Player " + EaglerProfile.username + " using internal account", 2, 64, 0xFFBBBB);
this.drawString(var8, "Using cracked server @ " + mc.getServerURI(), 2, 73, 0xFFBBBB);
var55 = MathHelper.floor_double(this.mc.thePlayer.posX);
var22 = MathHelper.floor_double(this.mc.thePlayer.posY);
var23 = MathHelper.floor_double(this.mc.thePlayer.posZ);
this.drawString(var8, "x: "+doubleToShorterString(this.mc.thePlayer.posX)+" ("+var55+") // c: "+(var55 >> 4)+" ("+(var55 & 15)+")", 2, 92, 14737632);
this.drawString(var8, "y: "+doubleToShorterString(this.mc.thePlayer.posY)+" ("+var22+") (feet pos)", 2, 100, 14737632);
this.drawString(var8, "z: "+doubleToShorterString(this.mc.thePlayer.posZ)+" ("+var23+") // c: "+(var23 >> 4)+" ("+(var23 & 15)+")", 2, 108, 14737632);
var24 = MathHelper.floor_double((double) (this.mc.thePlayer.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3;
this.drawString(var8, "f: " + var24 + " (" + Direction.directions[var24] + ") / " + MathHelper.wrapAngleTo180_float(this.mc.thePlayer.rotationYaw), 2, 116, 14737632);
this.drawString(var8, "Press F+6 to " + (mc.gameSettings.showCoordinates ? "disable" : "enable") + " showing coords in ingame GUI", 2, 135, 0xFFFFFFFF);
if(IntegratedServer.isWorldRunning()) {
this.drawString(var8, "IntegratedServer is running", 2, 154, 14737632);
List<String> info = IntegratedServer.getTPS();
for(int i = 0, size = info.size(); i < size; ++i) {
this.drawString(var8, info.get(i), 2, 173 + i * 9, 14737632);
}
}
//this.drawString(var8, String.format("ws: %.3f, fs: %.3f, g: %b, fl: %d", new Object[] { Float.valueOf(this.mc.thePlayer.capabilities.getWalkSpeed()), Float.valueOf(this.mc.thePlayer.capabilities.getFlySpeed()),
// Boolean.valueOf(this.mc.thePlayer.onGround), Integer.valueOf(this.mc.theWorld.getHeightValue(var47, var23)) }), 2, 104, 14737632);
var45 = "opengl emulator status - v1.0";
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, offset + 36, 14737632);
var45 = "lists: "+EaglerAdapter.getDisplayListCount()+", upload: "+(EaglerAdapter.getBitsPerSecond() / 1000000)+"mbps";
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, offset + 46, 14737632);
var45 = "verts: "+(EaglerAdapter.getVertexesPerSecond() / 1000)+"k, triangles: "+(EaglerAdapter.getTrianglesPerSecond() / 1000)+"k";
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, offset + 56, 14737632);
var45 = "rendering backend: "+(EaglerAdapter.isWebGL ? "webgl20" : "opengl30");
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, offset + 66, 14737632);
var45 = "glsl "+(EaglerAdapter._wgetShaderHeader() +", 32 bytes/vert");
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, offset + 76, 14737632);
var45 = "Bound Shaders:";
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, offset + 100, 14737632);
var45 = "/glsl/core.glsl";
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, offset + 110, 14737632);
var45 = "/glsl/occl.glsl";
this.drawString(var8, var45, var6 - var8.getStringWidth(var45) - 2, offset + 120, 14737632);
EaglerAdapter.glPopMatrix();
this.mc.mcProfiler.endSection();
}
if (this.recordPlayingUpFor > 0)
@@ -315,7 +359,7 @@ public class GuiIngame extends Gui
if (this.recordIsPlaying)
{
var14 = Color.HSBtoRGB(var34 / 50.0F, 0.7F, 0.6F) & 16777215;
//var14 = Color.HSBtoRGB(var34 / 50.0F, 0.7F, 0.6F) & 16777215;
}
var8.drawString(this.recordPlaying, -var8.getStringWidth(this.recordPlaying) / 2, -4, var14 + (var13 << 24 & -16777216));

View File

@@ -2,11 +2,11 @@ package net.minecraft.src;
import java.util.List;
import net.lax1dude.eaglercraft.EaglercraftRandom;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public class Item
{
protected static final UUID field_111210_e = UUID.fromString("CB3F55D3-645C-4F38-A497-9C13A33DB5CF");
protected static final ProfileUUID field_111210_e = ProfileUUID.fromString("CB3F55D3-645C-4F38-A497-9C13A33DB5CF");
private CreativeTabs tabToDisplayOn;
/** The RNG used by the Item subclasses. */

View File

@@ -2023,4 +2023,8 @@ public class Minecraft
{
return "1.6.4";
}
public String getServerURI() {
return this.getNetHandler() != null ? this.getNetHandler().getNetManager().getServerURI() : "[not connected]";
}
}

View File

@@ -1,5 +1,7 @@
package net.minecraft.src;
import net.lax1dude.eaglercraft.ProfileUUID;
import java.util.*;
public class ModifiableAttributeInstance implements AttributeInstance
@@ -62,9 +64,9 @@ public class ModifiableAttributeInstance implements AttributeInstance
}
/**
* Returns attribute modifier, if any, by the given UUID
* Returns attribute modifier, if any, by the given ProfileUUID
*/
public AttributeModifier getModifier(UUID par1UUID)
public AttributeModifier getModifier(ProfileUUID par1UUID)
{
return (AttributeModifier)this.field_111135_e.get(par1UUID);
}

View File

@@ -3,20 +3,17 @@ package net.minecraft.src;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.security.PublicKey;
public class Packet253ServerAuthData extends Packet
{
private String serverId;
private PublicKey publicKey;
private byte[] verifyToken = new byte[0];
public Packet253ServerAuthData() {}
public Packet253ServerAuthData(String par1Str, PublicKey par2PublicKey, byte[] par3ArrayOfByte)
public Packet253ServerAuthData(String par1Str, byte[] par3ArrayOfByte)
{
this.serverId = par1Str;
this.publicKey = par2PublicKey;
this.verifyToken = par3ArrayOfByte;
}
@@ -36,7 +33,7 @@ public class Packet253ServerAuthData extends Packet
public void writePacketData(DataOutput par1DataOutput) throws IOException
{
writeString(this.serverId, par1DataOutput);
writeByteArray(par1DataOutput, this.publicKey.getEncoded());
writeByteArray(par1DataOutput, new byte[0]);
writeByteArray(par1DataOutput, this.verifyToken);
}
@@ -53,7 +50,7 @@ public class Packet253ServerAuthData extends Packet
*/
public int getPacketSize()
{
return 2 + this.serverId.length() * 2 + 2 + this.publicKey.getEncoded().length + 2 + this.verifyToken.length;
return 2 + this.serverId.length() * 2 + 2 + 0 + 2 + this.verifyToken.length;
}
public String getServerId()
@@ -61,11 +58,6 @@ public class Packet253ServerAuthData extends Packet
return this.serverId;
}
public PublicKey getPublicKey()
{
return this.publicKey;
}
public byte[] getVerifyToken()
{
return this.verifyToken;

View File

@@ -7,7 +7,7 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public class Packet44UpdateAttributes extends Packet
{
@@ -45,7 +45,7 @@ public class Packet44UpdateAttributes extends Packet
for (int var9 = 0; var9 < var8; ++var9)
{
UUID var10 = new UUID(par1DataInput.readLong(), par1DataInput.readLong());
ProfileUUID var10 = new ProfileUUID(par1DataInput.readLong(), par1DataInput.readLong());
var7.add(new AttributeModifier(var10, "Unknown synced attribute modifier", par1DataInput.readDouble(), par1DataInput.readByte()));
}

View File

@@ -9,14 +9,14 @@ import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
import java.util.Map.Entry;
public class PlayerUsageSnooper
{
/** String map for report data */
private Map dataMap = new HashMap();
private final String uniqueID = UUID.randomUUID().toString();
private final String uniqueID = ProfileUUID.randomUUID().toString();
/** URL of the server to send the report to */
private final URL serverUrl;

View File

@@ -3,7 +3,7 @@ package net.minecraft.src;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
import java.util.Map.Entry;
public class Potion
@@ -308,7 +308,7 @@ public class Potion
public Potion func_111184_a(Attribute par1Attribute, String par2Str, double par3, int par5)
{
AttributeModifier var6 = new AttributeModifier(UUID.fromString(par2Str), this.getName(), par3, par5);
AttributeModifier var6 = new AttributeModifier(ProfileUUID.fromString(par2Str), this.getName(), par3, par5);
this.field_111188_I.put(par1Attribute, var6);
return this;
}

View File

@@ -1,112 +1,59 @@
package net.minecraft.src;
import java.util.Hashtable;
import javax.naming.directory.Attributes;
import javax.naming.directory.InitialDirContext;
public class ServerAddress
{
public class ServerAddress {
private final String ipAddress;
private final int serverPort;
private ServerAddress(String par1Str, int par2)
{
private ServerAddress(String par1Str, int par2) {
this.ipAddress = par1Str;
this.serverPort = par2;
}
public String getIP()
{
public String getIP() {
return this.ipAddress;
}
public int getPort()
{
public int getPort() {
return this.serverPort;
}
public static ServerAddress func_78860_a(String par0Str)
{
if (par0Str == null)
{
public static ServerAddress func_78860_a(String par0Str) {
if (par0Str == null) {
return null;
}
else
{
} else {
String[] var1 = par0Str.split(":");
if (par0Str.startsWith("["))
{
if (par0Str.startsWith("[")) {
int var2 = par0Str.indexOf("]");
if (var2 > 0)
{
if (var2 > 0) {
String var3 = par0Str.substring(1, var2);
String var4 = par0Str.substring(var2 + 1).trim();
if (var4.startsWith(":") && var4.length() > 0)
{
if (var4.startsWith(":") && var4.length() > 0) {
var4 = var4.substring(1);
var1 = new String[] {var3, var4};
}
else
{
var1 = new String[] {var3};
var1 = new String[] { var3, var4 };
} else {
var1 = new String[] { var3 };
}
}
}
if (var1.length > 2)
{
var1 = new String[] {par0Str};
if (var1.length > 2) {
var1 = new String[] { par0Str };
}
String var5 = var1[0];
int var6 = var1.length > 1 ? parseIntWithDefault(var1[1], 25565) : 25565;
if (var6 == 25565)
{
String[] var7 = getServerAddress(var5);
var5 = var7[0];
var6 = parseIntWithDefault(var7[1], 25565);
}
return new ServerAddress(var5, var6);
}
}
/**
* Returns a server's address and port for the specified hostname, looking up the SRV record if possible
*/
private static String[] getServerAddress(String par0Str)
{
try
{
String var1 = "com.sun.jndi.dns.DnsContextFactory";
Class.forName("com.sun.jndi.dns.DnsContextFactory");
Hashtable var2 = new Hashtable();
var2.put("java.naming.factory.initial", "com.sun.jndi.dns.DnsContextFactory");
var2.put("java.naming.provider.url", "dns:");
var2.put("com.sun.jndi.dns.timeout.retries", "1");
InitialDirContext var3 = new InitialDirContext(var2);
Attributes var4 = var3.getAttributes("_minecraft._tcp." + par0Str, new String[] {"SRV"});
String[] var5 = var4.get("srv").get().toString().split(" ", 4);
return new String[] {var5[3], var5[2]};
}
catch (Throwable var6)
{
return new String[] {par0Str, Integer.toString(25565)};
}
}
private static int parseIntWithDefault(String par0Str, int par1)
{
try
{
private static int parseIntWithDefault(String par0Str, int par1) {
try {
return Integer.parseInt(par0Str.trim());
}
catch (Exception var3)
{
} catch (Exception var3) {
return par1;
}
}

View File

@@ -2,7 +2,7 @@ package net.minecraft.src;
import java.util.Collection;
import java.util.Iterator;
import java.util.UUID;
import net.lax1dude.eaglercraft.ProfileUUID;
public class SharedMonsterAttributes
{
@@ -108,7 +108,7 @@ public class SharedMonsterAttributes
public static AttributeModifier func_111259_a(NBTTagCompound par0NBTTagCompound)
{
UUID var1 = new UUID(par0NBTTagCompound.getLong("UUIDMost"), par0NBTTagCompound.getLong("UUIDLeast"));
ProfileUUID var1 = new ProfileUUID(par0NBTTagCompound.getLong("UUIDMost"), par0NBTTagCompound.getLong("UUIDLeast"));
return new AttributeModifier(var1, par0NBTTagCompound.getString("Name"), par0NBTTagCompound.getDouble("Amount"), par0NBTTagCompound.getInteger("Operation"));
}
}

View File

@@ -1,6 +1,5 @@
package net.minecraft.src;
import java.net.ConnectException;
import java.net.UnknownHostException;
class ThreadConnectToServer extends Thread
@@ -43,15 +42,6 @@ class ThreadConnectToServer extends Thread
GuiConnecting.func_74250_f(this.connectingGui).displayGuiScreen(new GuiDisconnected(GuiConnecting.func_98097_e(this.connectingGui), "connect.failed", "disconnect.genericReason", new Object[] {"Unknown host \'" + this.ip + "\'"}));
}
catch (ConnectException var3)
{
if (GuiConnecting.isCancelled(this.connectingGui))
{
return;
}
GuiConnecting.func_74251_g(this.connectingGui).displayGuiScreen(new GuiDisconnected(GuiConnecting.func_98097_e(this.connectingGui), "connect.failed", "disconnect.genericReason", new Object[] {var3.getMessage()}));
}
catch (Exception var4)
{
if (GuiConnecting.isCancelled(this.connectingGui))