Commit 20337b6e authored by Christian's avatar Christian

Update to MC 1.4.6

parent 33ff87d8
......@@ -10,6 +10,10 @@ public class CertificateHelper {
public static String getFingerprint(Certificate certificate)
{
if (certificate == null)
{
return "NO VALID CERTIFICATE FOUND";
}
try
{
MessageDigest md = MessageDigest.getInstance("SHA-1");
......
package cpw.mods.fml.common;
import java.io.File;
import java.security.cert.Certificate;
import java.util.Collections;
import java.util.List;
import java.util.Set;
......@@ -138,4 +139,10 @@ public class DummyModContainer implements ModContainer
{
return Loader.instance().getMinecraftModContainer().getStaticVersionRange();
}
@Override
public Certificate getSigningCertificate()
{
return null;
}
}
--- common/cpw/mods/fml/common/FMLDummyContainer.java
+++ common/cpw/mods/fml/common/FMLDummyContainer.java
@@ -17,16 +17,16 @@
import java.util.Arrays;
import java.util.Map;
import java.util.Set;
-import java.util.concurrent.ConcurrentMap;
-import net.minecraft.nbt.*;
+import net.minecraft.nbt.NBTBase;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.nbt.NBTTagList;
import net.minecraft.world.storage.SaveHandler;
import net.minecraft.world.storage.WorldInfo;
-import com.google.common.collect.MapMaker;
-import com.google.common.collect.Sets;
import com.google.common.eventbus.EventBus;
+import cpw.mods.fml.common.registry.GameData;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.ItemData;
......@@ -30,13 +30,16 @@ import java.util.zip.ZipFile;
import java.util.zip.ZipInputStream;
import com.google.common.base.Function;
import com.google.common.base.Predicates;
import com.google.common.base.Strings;
import com.google.common.base.Throwables;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.BiMap;
import com.google.common.collect.ImmutableBiMap;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableList.Builder;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.ImmutableSet.Builder;
import com.google.common.collect.Iterators;
import com.google.common.collect.Lists;
import com.google.common.collect.Multimap;
import com.google.common.collect.SetMultimap;
......@@ -97,6 +100,7 @@ public class FMLModContainer implements ModContainer
private VersionRange minecraftAccepted;
private boolean fingerprintNotPresent;
private Set<String> sourceFingerprints;
private Certificate certificate;
public FMLModContainer(String className, File modSource, Map<String,Object> modDescriptor)
......@@ -415,13 +419,14 @@ public class FMLModContainer implements ModContainer
{
len = certificates.length;
}
Builder<String> certBuilder = ImmutableSet.<String>builder();
Builder<String> certBuilder = ImmutableList.<String>builder();
for (int i = 0; i < len; i++)
{
certBuilder.add(CertificateHelper.getFingerprint(certificates[i]));
}
sourceFingerprints = certBuilder.build();
ImmutableList<String> certList = certBuilder.build();
sourceFingerprints = ImmutableSet.copyOf(certList);
String expectedFingerprint = (String) descriptor.get("certificateFingerprint");
......@@ -434,6 +439,10 @@ public class FMLModContainer implements ModContainer
}
FMLLog.log(warnLevel, "The mod %s is expecting signature %s for source %s, however there is no signature matching that description", getModId(), expectedFingerprint, source.getName());
}
else
{
certificate = certificates[certList.indexOf(expectedFingerprint)];
}
annotations = gatherAnnotations(clazz);
isNetworkMod = FMLNetworkHandler.instance().registerNetworkMod(this, clazz, event.getASMHarvestedData());
modInstance = clazz.newInstance();
......@@ -506,4 +515,10 @@ public class FMLModContainer implements ModContainer
{
return minecraftAccepted;
}
@Override
public Certificate getSigningCertificate()
{
return certificate;
}
}
package cpw.mods.fml.common;
import java.io.File;
import java.security.cert.Certificate;
import java.util.List;
import java.util.Set;
......@@ -129,4 +130,10 @@ public class InjectedModContainer implements ModContainer
return null;
}
}
@Override
public Certificate getSigningCertificate()
{
return wrappedContainer.getSigningCertificate();
}
}
......@@ -476,6 +476,11 @@ public class Loader
}
modController.transition(LoaderState.CONSTRUCTING);
modController.distributeStateMessage(LoaderState.CONSTRUCTING, modClassLoader, disc.getASMTable());
FMLLog.fine("Mod signature data:");
for (ModContainer mod : getActiveModList())
{
FMLLog.fine("\t%s(%s:%s): %s (%s)", mod.getModId(), mod.getName(), mod.getVersion(), mod.getSource().getName(), CertificateHelper.getFingerprint(mod.getSigningCertificate()));
}
modController.transition(LoaderState.PREINITIALIZATION);
modController.distributeStateMessage(LoaderState.PREINITIALIZATION, disc.getASMTable(), canonicalConfigDir);
modController.transition(LoaderState.INITIALIZATION);
......
......@@ -14,6 +14,7 @@
package cpw.mods.fml.common;
import java.io.File;
import java.security.cert.Certificate;
import java.util.List;
import java.util.Set;
......@@ -129,4 +130,6 @@ public interface ModContainer
String getDisplayVersion();
VersionRange acceptableMinecraftVersionRange();
Certificate getSigningCertificate();
}
package cpw.mods.fml.common.asm;
import java.io.ByteArrayInputStream;
import java.io.InputStreamReader;
import java.io.ObjectInputStream.GetField;
import java.io.StringReader;
import java.net.JarURLConnection;
import java.nio.charset.Charset;
import java.security.CodeSource;
import java.security.cert.CertPath;
import java.security.cert.CertPathValidator;
import java.security.cert.Certificate;
import java.security.cert.CertificateFactory;
import java.security.cert.PKIXCertPathValidatorResult;
import java.security.cert.PKIXParameters;
import java.security.cert.TrustAnchor;
import java.security.cert.X509Certificate;
import java.util.Arrays;
import java.util.Collections;
import java.util.Map;
import javax.swing.JOptionPane;
......@@ -21,7 +34,7 @@ import cpw.mods.fml.relauncher.RelaunchClassLoader;
public class FMLSanityChecker implements IFMLCallHook
{
private static final String FMLFINGERPRINT = "AE:F6:54:79:96:E9:1B:D1:59:70:6C:B4:6B:F5:4A:89:C5:CE:08:1D".toLowerCase().replace(":","");
private static final String FORGEFINGERPRINT = "".toLowerCase().replace(":", "");
private static final String FORGEFINGERPRINT = "DE:4C:F8:A3:F3:BC:15:63:58:10:04:4C:39:24:0B:F9:68:04:EA:7D".toLowerCase().replace(":", "");
static class MLDetectorClassVisitor extends ClassVisitor
{
private boolean foundMarker = false;
......@@ -51,23 +64,26 @@ public class FMLSanityChecker implements IFMLCallHook
if (codeSource.getLocation().getProtocol().equals("jar"))
{
Certificate[] certificates = codeSource.getCertificates();
if (certificates!=null && certificates.length>0)
if (certificates!=null)
{
Certificate certificate = certificates[0];
String fingerprint = CertificateHelper.getFingerprint(certificate);
if (fingerprint.equals(FMLFINGERPRINT))
{
FMLLog.info("Found valid fingerprint for FML: %s", fingerprint);
goodFML = true;
}
else if (fingerprint.equals(FORGEFINGERPRINT))
{
FMLLog.info("Found valid fingerprint for Minecraft Forge: %s", fingerprint);
goodFML = true;
}
else
for (Certificate cert : certificates)
{
FMLLog.severe("Found invalid fingerprint for FML: %s", fingerprint);
String fingerprint = CertificateHelper.getFingerprint(cert);
if (fingerprint.equals(FMLFINGERPRINT))
{
FMLLog.info("Found valid fingerprint for FML. Certificate fingerprint %s", fingerprint);
goodFML = true;
}
else if (fingerprint.equals(FORGEFINGERPRINT))
{
FMLLog.info("Found valid fingerprint for Minecraft Forge. Certificate fingerprint %s", fingerprint);
goodFML = true;
}
else
{
FMLLog.severe("Found invalid fingerprint for FML: %s", fingerprint);
}
}
}
}
......
......@@ -20,6 +20,7 @@ import java.io.IOException;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.security.cert.Certificate;
import java.util.ArrayList;
import java.util.EnumSet;
import java.util.List;
......@@ -616,4 +617,9 @@ public class ModLoaderModContainer implements ModContainer
{
return Loader.instance().getMinecraftModContainer().getStaticVersionRange();
}
@Override
public Certificate getSigningCertificate()
{
return null;
}
}
......@@ -17,7 +17,7 @@ public class ModLoaderPickupNotifier implements IPickupNotifier
@Override
public void notifyPickup(EntityItem item, EntityPlayer player)
{
mod.onItemPickup(player, item.field_70294_a);
mod.onItemPickup(player, item.func_92014_d());
}
}
......@@ -250,7 +250,7 @@ public class GameRegistry
public static void addRecipe(ItemStack output, Object... params)
{
CraftingManager.func_77594_a().func_77595_a(output, params);
CraftingManager.func_77594_a().func_92051_a(output, params);
}
public static void addShapelessRecipe(ItemStack output, Object... params)
......
#Main FML Access Transformer configuration file
# TileEntity addMapping
public anq.a(Ljava/lang/Class;Ljava/lang/String;)V #MD:TileEntity/func_70306_a
public any.a(Ljava/lang/Class;Ljava/lang/String;)V #MD:TileEntity/func_70306_a
# EntityList addMappings
public lv.a(Ljava/lang/Class;Ljava/lang/String;I)V #MD:EntityList/func_75618_a
public lv.a(Ljava/lang/Class;Ljava/lang/String;III)V #MD:EntityList/func_75614_a
......@@ -8,25 +8,25 @@ public lv.b #FD:EntityList/field_75625_b #nameToClassMap
public lv.c #FD:EntityList/field_75626_c #classToNameMap
public lv.d #FD:EntityList/field_75623_d #idToClassMap
# RenderEngine
public bap.h #FD:RenderEngine/field_78367_h #textureList
public bap.k #FD:RenderEngine/field_78366_k #texturePack
public bba.h #FD:RenderEngine/field_78367_h #textureList
public bba.k #FD:RenderEngine/field_78366_k #texturePack
# RenderManager
public bbj.p #FD:RenderManager/field_78729_o #renderers
public bbu.p #FD:RenderManager/field_78729_o #renderers
# RenderBlocks - everything
public baq.* #FD:RenderBlocks/*
public baq.*() #MD:RenderBlocks/*
public bbb.* #FD:RenderBlocks/*
public bbb.*() #MD:RenderBlocks/*
#RenderPlayer
public-f bcd.h #FD:RenderPlayer/field_77110_j #armorlist
public-f bco.h #FD:RenderPlayer/field_77110_j #armorlist
#RenderBiped
public-f bbr.k #FD:RenderBiped/field_82424_k #armorlist
public-f bcc.k #FD:RenderBiped/field_82424_k #armorlist
#StringTranslate
public bn.b #FD:StringTranslate/field_74815_b
public bn.d #FD:StringTranslate/field_74813_d
# TileEntityRenderer
public bdl.m #FD:TileEntityRenderer/field_76966_m
public bdw.m #FD:TileEntityRenderer/field_76966_m
# CraftingManager - make the add recipe methods public
public wh.a(Lum;[Ljava/lang/Object;)V #MD:CraftingManager/func_77595_a
public wh.b(Lum;[Ljava/lang/Object;)V #MD:CraftingManager/func_77596_b
public wn.a(Lur;[Ljava/lang/Object;)Lwq; #MD:CraftingManager/func_92051_a
public wn.b(Lur;[Ljava/lang/Object;)V #MD:CraftingManager/func_77596_b
# WeightedRandomItem
public kv.a #FD:WeightedRandomItem/field_76292_a #probability
# ItemStack
......@@ -37,20 +37,20 @@ public jl.a #FD:StatBase/field_75978_a #statName
public it.a(Lit;Z)Z #MD:NetLoginHandler/func_72531_a #'complete connection'
public it.h #FD:NetLoginHandler/field_72543_h #userName
# EntityPlayerMP getNextWindowId
public iq.ch()V #MD:EntityPlayerMP/func_71117_bO
public iq.cs #FD:EntityPlayerMP/field_71139_cq
public iq.cg()V #MD:EntityPlayerMP/func_71117_bO
public iq.ct #FD:EntityPlayerMP/field_71139_cq
# EntityAITaskEntry
public ne #CL:EntityAITaskEntry
# EntityAITasks
public nd.a #FD:EntityAITasks/field_75782_a #taskList
# BlockChest
public ajd.n(Lxv;III)Z #MD:BlockChest/func_72292_n #isOcelotBlockingChest
public ajk.n(Lyc;III)Z #MD:BlockChest/func_72292_n #isOcelotBlockingChest
# EntityLiving
public md.aS #FD:EntityLiving/field_70736_aM #carryoverDamage
public md.bm #FD:EntityLiving/field_70714_bg #tasks
public md.bE #FD:EntityLiving/field_70703_bu #isJumping
public md.aT #FD:EntityLiving/field_70736_aM #carryoverDamage
public md.bn #FD:EntityLiving/field_70714_bg #tasks
public md.bF #FD:EntityLiving/field_70703_bu #isJumping
# EntityAIOcelotSit
protected nq.a(Lxv;III)Z #MD:EntityAIOcelotSit/func_75398_a #nearestSittableBlock
protected nq.a(Lyc;III)Z #MD:EntityAIOcelotSit/func_75398_a #nearestSittableBlock
protected nq.f()Z #MD:EntityAIOcelotSit/func_75399_f #isblocksittable
# CallableMinecraftVersion - sanity check the MC version
public b #CL:CallableMinecraftVersion
......@@ -58,16 +58,16 @@ public b.<init>(La;)V #MD:CallableMinecraftVersion/<init>(Lnet/minecraft/src/Cra
# EntityAnimal
public ox.d #FD:EntityAnimal/field_70881_d #inLove
# WorldType
public yg.<init>(ILjava/lang/String;)V #MD:WorldType/<init>(ILjava/lang/String;)
public yg.<init>(ILjava/lang/String;I)V #MD:WorldType/<init>(ILjava/lang/String;I)
public yn.<init>(ILjava/lang/String;)V #MD:WorldType/<init>(ILjava/lang/String;)
public yn.<init>(ILjava/lang/String;I)V #MD:WorldType/<init>(ILjava/lang/String;I)
# ComponentVillage
public afl #CL:ComponentVillage
public afs #CL:ComponentVillage
# EntityVillager - minmax lists
public qu.a(Lxn;ILjava/util/Random;F)V #MD:EntityVillager/func_70948_a #addBuy
public qu.b(Lxn;ILjava/util/Random;F)V #MD:EntityVillager/func_70949_b #addSell
public qu.bN #FD:EntityVillager/field_70958_bB
public qu.bO #FD:EntityVillager/field_70960_bC
public qu.a(Lxu;ILjava/util/Random;F)V #MD:EntityVillager/func_70948_a #addBuy
public qu.b(Lxu;ILjava/util/Random;F)V #MD:EntityVillager/func_70949_b #addSell
public qu.bO #FD:EntityVillager/field_70958_bB
public qu.bP #FD:EntityVillager/field_70960_bC
# GuiButtonMerchant
public avu #CL:GuiButtonMerchant
public awb #CL:GuiButtonMerchant
protected asy.a #FD:GuiYesNo/field_73942_a #guiScreen
protected atf.a #FD:GuiYesNo/field_73942_a #guiScreen
......@@ -5,8 +5,8 @@
qx cpw/mods/fml/common/network/Player
net.minecraft.entity.player.EntityPlayer cpw/mods/fml/common/network/Player
# block -> blockproxy
amj cpw/mods/fml/common/registry/BlockProxy
amq cpw/mods/fml/common/registry/BlockProxy
net.minecraft.block.Block cpw/mods/fml/common/registry/BlockProxy
# item -> itemproxy
uk cpw/mods/fml/common/registry/ItemProxy
up cpw/mods/fml/common/registry/ItemProxy
net.minecraft.item.Item cpw/mods/fml/common/registry/ItemProxy
......@@ -3,8 +3,8 @@
"modid": "mcp",
"name": "Minecraft Coder Pack",
"description": "Modding toolkit to decompile and deobfuscate the Minecraft client and server files.",
"version": "7.23",
"mcversion": "1.4.5",
"version": "7.25",
"mcversion": "1.4.6",
"logoFile": "/mcp.png",
"url": "http://mcp.ocean-labs.de/",
"updateUrl": "",
......
......@@ -325,7 +325,6 @@ field_70715_bh,targetTasks,2,
field_70716_bi,newPosRotationIncrements,2,The number of updates over which the new position and rotation are to be applied to the entity.
field_70717_bb,attackingPlayer,2,The most recent player that has attacked this entity
field_70718_bc,recentlyHit,2,"Set to 60 when hit by the player or the player's wolf, then decrements. Used to determine whether the entity should drop items on death."
field_70719_bd,arrowHitTempCounter,2,"Set to 60 when hit by the player or the player's wolf, then decrements. Used to determine whether the entity should drop items on death."
field_70720_be,arrowHitTimer,2,
field_70721_aZ,legYaw,2,
field_70722_aY,prevLegYaw,2,
......@@ -469,7 +468,6 @@ field_71088_bW,timeUntilPortal,2,
field_71090_bL,xpCooldown,2,Used by EntityPlayer to prevent too many xp orbs from getting absorbed at once.
field_71092_bJ,username,2,
field_71093_bK,dimension,2,"Which dimension the player is in (-1 = the Nether, 0 = normal world)"
field_71099_bE,score,2,
field_71100_bB,foodStats,2,The player's food stats. (See class FoodStats)
field_71101_bC,flyToggleTimer,2,"Used to tell if the player pressed jump twice. If this is at 0 and it's pressed (And they are allowed to fly, as defined in the player's movementInput) it sets this to 7. If it's pressed and it's greater than 0 enable fly."
field_71102_ce,speedInAir,2,
......@@ -581,6 +579,7 @@ field_71342_m,theRConThreadQuery,2,
field_71345_q,lanServerPing,2,
field_71346_p,isPublic,2,
field_71347_n,theServerListeningThread,2,Instance of IntegratedServerListenThread.
field_71348_o,isGamePaused,2,
field_71349_l,mc,2,The Minecraft instance.
field_71350_m,theWorldSettings,2,
field_71412_D,mcDataDir,2,
......@@ -1183,7 +1182,7 @@ field_73071_a,demoWorldSettings,2,
field_73072_L,demoWorldSeed,2,
field_73086_f,partiallyDestroyedBlockX,2,
field_73087_g,partiallyDestroyedBlockY,2,
field_73088_d,isPartiallyDestroyedBlockWhole,2,"set to true on first call of destroyBlockInWorldPartially, false before any further calls"
field_73088_d,isDestroyingBlock,2,True if the player is destroying a block
field_73089_e,initialDamage,2,
field_73090_b,thisPlayerMP,2,The EntityPlayerMP object that this object is connected to.
field_73091_c,gameType,2,
......@@ -1191,6 +1190,7 @@ field_73092_a,theWorld,2,The world object that this object is connected to.
field_73094_o,durabilityRemainingOnBlock,2,
field_73095_l,posY,2,
field_73096_m,posZ,2,
field_73097_j,receivedFinishDiggingPacket,2,"Set to true when the ""finished destroying block"" packet is received but the block wasn't fully damaged yet. The block will not be destroyed while this is false."
field_73098_k,posX,2,
field_73099_h,partiallyDestroyedBlockZ,2,
field_73100_i,curblockDamage,2,
......@@ -1970,9 +1970,7 @@ field_74385_A,enumFloat,2,
field_74386_B,enumBoolean,2,
field_74387_C,enumString,2,
field_74414_a,enumOptionsMappingHelperArray,2,
field_74416_a,mc,2,Reference to the Minecraft object.
field_74417_a,theTcpConnection,2,
field_74419_a,mc,2,Reference to the Minecraft object.
field_74421_a,mc,2,Reference to the Minecraft object.
field_74422_a,mcApplet,2,Reference to the MinecraftApplet object.
field_74438_f,shutdownReason,2,
......@@ -2014,7 +2012,6 @@ field_74515_c,keyDescription,2,
field_74516_a,keybindArray,2,
field_74522_a,colorBuffer,2,Float buffer used to set OpenGL material colors
field_74532_a,mc,2,A reference to the Minecraft object.
field_74533_a,enumOSMappingHelperArray,2,
field_74534_a,arguments,2,"Arguments that were passed to Minecraft.jar (username, sessionid etc)"
field_74536_a,mc,2,Minecraft instance
field_74537_a,logo,2,BufferedImage object containing the Majong logo.
......@@ -2482,7 +2479,6 @@ field_75624_e,classToIDMapping,2,provides a mapping between an Entity Class and
field_75625_b,stringToClassMapping,2,Provides a mapping between entity classes and a string
field_75626_c,classToStringMapping,2,Provides a mapping between a string and an entity classes
field_75627_a,entityEggs,2,This is a HashMap of the Creative Entity Eggs/Spawners.
field_75628_a,enumEntitySizeMappingHelperArray,2,
field_75644_d,posZ,2,
field_75645_e,speed,2,The speed at which the entity should move
field_75646_b,posX,2,
......@@ -4185,8 +4181,11 @@ field_82172_bs,canPickUpLoot,2,Whether this entity can pick up items from the gr
field_82173_br,swingProgressInt,2,
field_82174_bp,equipmentDropChances,2,Chances for each equipment piece from dropping when this entity dies.
field_82175_bq,isSwingInProgress,2,Whether an arm swing is currently in progress.
field_82176_d,armorProbability,2,Probability to get armor
field_82177_b,enchantmentProbability,2,An array of probabilities that determines whether a random enchantment should be added to the held item. Indexed by difficulty.
field_82178_c,armorEnchantmentProbability,2,Probability to get enchanted armor
field_82179_bU,persistenceRequired,2,Whether this entity should NOT despawn.
field_82181_as,pickUpLootProability,2,Probability to pick up loot
field_82182_bS,equipment,2,Equipment (armor and held item) for this entity.
field_82184_d,aiControlledByPlayer,2,AI task for player control.
field_82189_bL,lastBuyingPlayer,2,"Last player to trade with this villager, used for aggressivity."
......@@ -4231,6 +4230,7 @@ field_82322_p,beaconConfirmButton,2,
field_82323_o,beacon,2,
field_82332_a,hangingDirection,2,
field_82337_e,itemDropChance,2,Chance for this item frame's item to drop from the frame.
field_82339_as,particleAlpha,2,Particle alpha
field_82346_a,theContainer,2,Container of this anvil's block.
field_82354_a,command,2,The command this block will execute when powered.
field_82365_a,difficulties,2,
......@@ -4238,6 +4238,7 @@ field_82373_c,directions,2,
field_82374_e,facings,2,
field_82397_a,skullRenderer,2,
field_82401_a,skeletonHeadModel,2,The Skeleton's head model.
field_82405_a,renderBlocksInstance,2,
field_82424_k,bipedArmorFilenamePrefix,2,List of armor texture filenames.
field_82446_a,renderedBatSize,2,"not actually sure this is size, is not used as of now, but the model would be recreated if the value changed and it seems a good match for a bats size"
field_82453_b,createFlatWorldGui,2,
......@@ -4277,7 +4278,6 @@ field_82527_a,dispenseBehaviorRegistry,2,Registry for all dispense behaviors.
field_82537_a,sensible,2,"Whether this button is sensible to arrows, used by wooden buttons."
field_82539_a,types,2,The types of the wall.
field_82548_a,theChunkCoordinates,2,
field_82550_a,mcServer,2,
field_82552_a,mcServer,2,
field_82553_a,mcServer,2,
field_82555_a,mcServer,2,
......@@ -4354,6 +4354,7 @@ field_82809_c,soilId,2,Block ID of the soil this seed food should be planted on.
field_82811_a,hangingEntityClass,2,
field_82822_g,gameVersion,2,Game version for this server.
field_82823_k,hideAddress,2,Whether to hide the IP address for this server.
field_82826_b,statusBarLenght,2,
field_82827_c,bossName,2,
field_82828_a,healthScale,2,
field_82843_f,itemFrame,2,"Item frame this stack is on, or null if not on an item frame."
......@@ -4385,3 +4386,19 @@ field_82911_a,iconId,2,ID for the item used as icon for this preset.
field_82915_S,theWorldGenerator,2,
field_83004_a,theCrashReport,2,
field_83016_L,theCalendar,2,
field_83021_g,customMinX,2,Custom minimum X for rendering
field_83022_l,customMaxZ,2,Custom maximum Z for rendering
field_83023_m,useCustomBlockBounds,2,Use custom block bounds for the rendering
field_83024_j,customMaxY,2,Custom maximum Y for rendering
field_83025_k,customMinZ,2,Custom minimum Z for rendering
field_83026_h,customMaxX,2,Custom maximum X for rendering
field_83027_i,customMinY,2,Custom minimum Y for rendering
field_85045_v,returningStack,2,Used when touchscreen is enabled
field_85046_u,returningStackTime,2,
field_85047_t,returningStackDestSlot,2,
field_85050_q,draggedStack,2,Used when touchscreen is enabled
field_85051_p,clickedSlot,2,Used when touchscreen is enabled
field_85180_cf,recordWait,2,
field_85185_A,touchscreen,2,
field_90017_e,isMacOs,2,
field_90044_b,records,2,List of all record items and their names.
This diff is collapsed.
This diff is collapsed.
......@@ -36,8 +36,8 @@ DirNatives = %(DirJars)s/bin/natives
Client = %(DirJars)s/bin/minecraft.jar
Server = %(DirJars)s/minecraft_server.jar
LWJGL = %(DirJars)s/bin/jinput.jar,%(DirJars)s/bin/lwjgl.jar,%(DirJars)s/bin/lwjgl_util.jar
MD5Client = b15e2b2b6b4629f0d99a95b6b44412a0
MD5Server = 250654ceae7a26ba955a30095d90a475
MD5Client = 48677dc4c2b98c29918722b5ab27b4fd
MD5Server = b0700fa969dbf0ff085082cde87384d2
[RETROGUARD]
Location = %(DirRuntime)s/bin/retroguard.jar
......@@ -123,8 +123,8 @@ LogFile = %(DirLogs)s/mcp.log
LogFileErr = %(DirLogs)s/mcperr.log
UpdateUrl =
IgnoreUpdate = %(DirBin)s,%(DirLib)s,%(DirLogs)s,%(DirModSrc)s,%(DirReobf)s,%(DirSrc)s,%(DirTemp)s,%(DirEclipse)s/Client/bin,%(DirEclipse)s/Server/bin,%(DirJars)s/world,%(DirJars)s/saves,%(DirJars)s/resources
RGIndex = 91000
ParamIndex = 7100
RGIndex = 92000
ParamIndex = 8000
[ASTYLE]
AstyleConfig = %(DirConf)s/astyle.cfg
......
This diff is collapsed.
class,package
EntityFireworkOverlayFX,net/minecraft/client/particle
EntityFireworkSparkFX,net/minecraft/client/particle
EntityFireworkStarterFX,net/minecraft/client/particle
ScheduledSound,net/minecraft/client/audio
BehaviorDispenseFirework,net/minecraft/dispenser
EnchantmentThorns,net/minecraft/enchantment
EntityFireworkRocket,net/minecraft/entity/item
ItemBook,net/minecraft/item
ItemEnchantedBook,net/minecraft/item
ItemFirework,net/minecraft/item
ItemFireworkCharge,net/minecraft/item
RecipeFireworks,net/minecraft/item/crafting
TileEntityMobSpawnerSpawnData,net/minecraft/tileentity
Block,net/minecraft/block
BlockAnvil,net/minecraft/block
BlockBeacon,net/minecraft/block
......
......@@ -420,6 +420,7 @@ p_71029_1_,par1StatBase,2
p_71030_1_,par1IMerchant,2
p_71033_1_,par1EnumGameType,2
p_71035_1_,par1Str,2
p_71040_1_,par1,2
p_71042_1_,par1TileEntityFurnace,2
p_71043_1_,par1,2
p_71044_1_,par1Entity,2
......@@ -1539,7 +1540,6 @@ p_72455_1_,par1Packet1Login,2
p_72456_1_,par1Packet53BlockChange,2
p_72457_1_,par1Packet62LevelSound,2
p_72458_1_,par1Packet205ClientCommand,2
p_72459_1_,par1Packet21PickupSpawn,2
p_72460_1_,par1Packet17Sleep,2
p_72461_1_,par1Packet203AutoComplete,2
p_72462_1_,par1Packet61DoorChange,2
......@@ -2245,6 +2245,7 @@ p_72977_3_,par3,2
p_72977_5_,par5,2
p_72977_7_,par7,2
p_72978_1_,par1AxisAlignedBB,2
p_72980_10_,par10,2
p_72980_1_,par1,2
p_72980_3_,par3,2
p_72980_5_,par5,2
......@@ -4928,8 +4929,13 @@ p_77018_2_,par2,2
p_77018_3_,par3,2
p_77018_4_,par4,2
p_77018_5_,par5,2
p_77020_1_,par1,2
p_77020_1_,par1EntityItem,2
p_77020_2_,par2,2
p_77020_3_,par3,2
p_77020_4_,par4,2
p_77020_5_,par5,2
p_77020_6_,par6,2
p_77020_7_,par7,2
p_77021_1_,par1FontRenderer,2
p_77021_2_,par2RenderEngine,2
p_77021_3_,par3ItemStack,2
......@@ -5417,7 +5423,6 @@ p_77493_1_,par1Enchantment,2
p_77493_2_,par2,2
p_77501_0_,par0EntityLiving,2
p_77502_0_,par0EntityLiving,2
p_77503_0_,par0EntityLiving,2
p_77504_0_,par0Random,2
p_77504_1_,par1ItemStack,2
p_77504_2_,par2,2
......@@ -5472,8 +5477,6 @@ p_77583_1_,par1CraftingManager,2
p_77586_1_,par1CraftingManager,2
p_77589_1_,par1CraftingManager,2
p_77590_1_,par1CraftingManager,2
p_77595_1_,par1ItemStack,2
p_77595_2_,par2ArrayOfObj,2
p_77596_1_,par1ItemStack,2
p_77596_2_,par2ArrayOfObj,2
p_77600_1_,par1,2
......@@ -5903,7 +5906,8 @@ p_78435_1_,par1,2
p_78435_2_,par2,2
p_78435_3_,par3,2
p_78435_4_,par4,2
p_78439_1_,par1Tessellator,2
p_78439_0_,par0Tessellator,2
p_78439_1_,par1,2
p_78439_2_,par2,2
p_78439_3_,par3,2
p_78439_4_,par4,2
......@@ -7171,6 +7175,126 @@ p_90033_1_,par1Str,2
p_90035_0_,par0,2
p_90036_0_,par0EntityLiving,2
p_90042_0_,par0Str,2
p_92013_1_,par1ItemStack,2
p_92027_1_,par1Str,2
p_92029_0_,par0ArrayOfWeightedRandomChestContent,2
p_92029_1_,par1ArrayOfWeightedRandomChestContent,2
p_92031_1_,par1Slot,2
p_92034_11_,par11,2
p_92034_13_,par13ArrayOfInteger,2
p_92034_14_,par14ArrayOfInteger,2
p_92034_15_,par15,2
p_92034_16_,par16,2
p_92034_1_,par1,2
p_92034_3_,par3,2
p_92034_5_,par5,2
p_92034_7_,par7,2