Inital patch update to 1.4

This commit is contained in:
LexManos 2012-10-20 02:43:03 -07:00
parent 7afbc1ab93
commit ce847a7c53
29 changed files with 344 additions and 312 deletions

View File

@ -9,8 +9,8 @@
+import cpw.mods.fml.relauncher.FMLRelauncher;
import net.minecraft.src.AnvilSaveConverter;
import net.minecraft.src.AxisAlignedBB;
import net.minecraft.src.CallableIsServerModded;
@@ -364,7 +367,10 @@
import net.minecraft.src.BehaviorDispenseBoat;
@@ -385,7 +388,10 @@
{
if (this.func_71197_b())
{
@ -21,7 +21,7 @@
for (long var50 = 0L; this.field_71317_u; this.field_71296_Q = true)
{
@@ -403,6 +409,7 @@
@@ -424,6 +430,7 @@
Thread.sleep(1L);
}
@ -29,19 +29,18 @@
}
else
{
@@ -466,9 +473,11 @@
@@ -487,8 +494,10 @@
public void func_71217_p()
{
+ FMLCommonHandler.instance().rescheduleTicks(Side.SERVER);
long var1 = System.nanoTime();
AxisAlignedBB.func_72332_a().func_72298_a();
Vec3.func_72437_a().func_72343_a();
+ FMLCommonHandler.instance().onPreServerTick();
++this.field_71315_w;
if (this.field_71295_T)
@@ -514,6 +523,7 @@
@@ -534,6 +543,7 @@
this.field_71304_b.func_76319_b();
this.field_71304_b.func_76319_b();
@ -49,17 +48,18 @@
}
public void func_71190_q()
@@ -537,7 +547,9 @@
@@ -560,8 +570,10 @@
}
this.field_71304_b.func_76320_a("tick");
+ FMLCommonHandler.instance().onPreWorldTick(var4);
var4.func_72835_b();
var4.func_72939_s();
+ FMLCommonHandler.instance().onPostWorldTick(var4);
this.field_71304_b.func_76318_c("lights");
while (true)
@@ -1118,6 +1130,12 @@
this.field_71304_b.func_76319_b();
this.field_71304_b.func_76320_a("tracker");
var4.func_73039_n().func_72788_a();
@@ -1149,6 +1161,12 @@
@SideOnly(Side.SERVER)
public static void main(String[] p_main_0_)
{

View File

@ -9,7 +9,7 @@
public class ChunkProviderServer implements IChunkProvider
{
@@ -177,6 +179,7 @@
@@ -182,6 +184,7 @@
if (this.field_73246_d != null)
{
this.field_73246_d.func_73153_a(p_73153_1_, p_73153_2_, p_73153_3_);

View File

@ -24,7 +24,7 @@
this.func_71210_a(new DedicatedPlayerList(this));
long var4 = System.nanoTime();
@@ -160,7 +164,7 @@
@@ -161,7 +165,7 @@
this.field_71339_n = new RConThreadMain(this);
this.field_71339_n.func_72602_a();
}

View File

@ -7,7 +7,7 @@
public class EntityAIVillagerMate extends EntityAIBase
{
@@ -104,7 +106,7 @@
@@ -111,7 +113,7 @@
this.field_75451_c.func_70873_a(6000);
this.field_75450_b.func_70873_a(6000);
var1.func_70873_a(-24000);

View File

@ -9,7 +9,7 @@
public class EntityItem extends Entity
{
@@ -225,6 +227,8 @@
@@ -232,6 +234,8 @@
p_70100_1_.func_71029_a(AchievementList.field_76027_z);
}

View File

@ -11,7 +11,7 @@
import java.util.Iterator;
import java.util.List;
@@ -131,6 +134,7 @@
@@ -125,6 +128,7 @@
public void func_70071_h_()
{
@ -19,17 +19,17 @@
if (this.field_71074_e != null)
{
ItemStack var1 = this.field_71071_by.func_70448_g();
@@ -254,6 +258,7 @@
@@ -248,6 +252,7 @@
{
this.field_71100_bB.func_75118_a(this);
}
+ FMLCommonHandler.instance().onPlayerPostTick(this);
}
protected void func_71010_c(ItemStack p_71010_1_, int p_71010_2_)
@@ -1608,4 +1613,9 @@
public int func_82145_z()
@@ -1697,4 +1702,9 @@
{
return this.field_71078_a;
return this.func_82241_s(1);
}
+
+ public void openGui(Object mod, int modGuiId, World world, int x, int y, int z)

View File

@ -1,11 +1,11 @@
--- ../src-base/common/net/minecraft/src/EntitySlime.java
+++ ../src-work/common/net/minecraft/src/EntitySlime.java
@@ -223,7 +223,7 @@
public boolean func_70601_bi()
@@ -224,7 +224,7 @@
{
Chunk var1 = this.field_70170_p.func_72938_d(MathHelper.func_76128_c(this.field_70165_t), MathHelper.func_76128_c(this.field_70161_v));
- return this.field_70170_p.func_72912_H().func_76067_t() == WorldType.field_77138_c && this.field_70146_Z.nextInt(4) != 1 ? false : ((this.func_70809_q() == 1 || this.field_70170_p.field_73013_u > 0) && this.field_70146_Z.nextInt(10) == 0 && var1.func_76617_a(987234911L).nextInt(10) == 0 && this.field_70163_u < 40.0D ? super.func_70601_bi() : false);
+ return this.field_70170_p.func_72912_H().func_76067_t().handleSlimeSpawnReduction(field_70146_Z, field_70170_p) ? false : ((this.func_70809_q() == 1 || this.field_70170_p.field_73013_u > 0) && this.field_70146_Z.nextInt(10) == 0 && var1.func_76617_a(987234911L).nextInt(10) == 0 && this.field_70163_u < 40.0D ? super.func_70601_bi() : false);
}
protected float func_70599_aP()
- if (this.field_70170_p.func_72912_H().func_76067_t() == WorldType.field_77138_c && this.field_70146_Z.nextInt(4) != 1)
+ if (this.field_70170_p.func_72912_H().func_76067_t().handleSlimeSpawnReduction(field_70146_Z, field_70170_p))
{
return false;
}

View File

@ -9,7 +9,7 @@
public class EntityTrackerEntry
{
@@ -232,6 +234,13 @@
@@ -293,6 +295,13 @@
this.field_73138_k = this.field_73132_a.field_70181_x;
this.field_73135_l = this.field_73132_a.field_70179_y;
@ -23,7 +23,7 @@
if (this.field_73143_t && !(var6 instanceof Packet24MobSpawn))
{
p_73117_1_.field_71135_a.func_72567_b(new Packet28EntityVelocity(this.field_73132_a.field_70157_k, this.field_73132_a.field_70159_w, this.field_73132_a.field_70181_x, this.field_73132_a.field_70179_y));
@@ -304,6 +313,13 @@
@@ -368,6 +377,13 @@
if (this.field_73132_a.field_70128_L)
{
System.out.println("Fetching addPacket for removed entity");

View File

@ -8,8 +8,8 @@
+
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -175,7 +177,7 @@
import java.util.Iterator;
@@ -199,7 +201,7 @@
case 4:
return "/mob/villager/butcher.png";
default:
@ -18,12 +18,20 @@
}
}
@@ -393,6 +395,8 @@
func_70949_b(var2, Item.field_77782_ar.field_77779_bT, this.field_70146_Z, 0.3F);
func_70949_b(var2, Item.field_77734_bj.field_77779_bT, this.field_70146_Z, 0.3F);
}
+
+ VillagerRegistry.manageVillagerTrades(var2, this, this.func_70946_n(), this.field_70146_Z);
@@ -380,6 +382,7 @@
if (var2.isEmpty())
{
MerchantRecipeList var2;
var2 = new MerchantRecipeList();
+ VillagerRegistry.manageVillagerTrades(var2, this, this.func_70946_n(), this.field_70146_Z);
label48:
switch (this.func_70946_n())
@@ -584,7 +587,7 @@
public void func_82163_bD()
{
- this.func_70938_b(this.field_70170_p.field_73012_v.nextInt(5));
+ VillagerRegistry.applyRandomTrade(this, field_70170_p.field_73012_v);
}
public void func_82187_q()

View File

@ -1,20 +1,11 @@
--- ../src-base/common/net/minecraft/src/ItemMap.java
+++ ../src-work/common/net/minecraft/src/ItemMap.java
@@ -40,7 +40,7 @@
var4.field_76201_a = p_77873_2_.func_72912_H().func_76079_c();
var4.field_76199_b = p_77873_2_.func_72912_H().func_76074_e();
var4.field_76197_d = 3;
@@ -41,7 +41,7 @@
int var5 = 128 * (1 << var4.field_76197_d);
var4.field_76201_a = Math.round((float)p_77873_2_.func_72912_H().func_76079_c() / (float)var5) * var5;
var4.field_76199_b = Math.round((float)(p_77873_2_.func_72912_H().func_76074_e() / var5)) * var5;
- var4.field_76200_c = (byte)p_77873_2_.field_73011_w.field_76574_g;
+ var4.field_76200_c = p_77873_2_.field_73011_w.field_76574_g;
var4.func_76185_a();
p_77873_2_.func_72823_a(var3, var4);
}
@@ -297,7 +297,7 @@
var5.field_76201_a = MathHelper.func_76128_c(p_77622_3_.field_70165_t);
var5.field_76199_b = MathHelper.func_76128_c(p_77622_3_.field_70161_v);
var5.field_76197_d = 3;
- var5.field_76200_c = (byte)p_77622_2_.field_73011_w.field_76574_g;
+ var5.field_76200_c = p_77622_2_.field_73011_w.field_76574_g;
var5.func_76185_a();
}

View File

@ -1,6 +1,6 @@
--- ../src-base/common/net/minecraft/src/MapData.java
+++ ../src-work/common/net/minecraft/src/MapData.java
@@ -11,7 +11,7 @@
@@ -12,7 +12,7 @@
{
public int field_76201_a;
public int field_76199_b;
@ -8,7 +8,7 @@
+ public int field_76200_c;
public byte field_76197_d;
public byte[] field_76198_e = new byte[16384];
public int field_76195_f;
public List field_76196_g = new ArrayList();
@@ -26,7 +26,16 @@
public void func_76184_a(NBTTagCompound p_76184_1_)

View File

@ -1,6 +1,6 @@
--- ../src-base/common/net/minecraft/src/NetLoginHandler.java
+++ ../src-work/common/net/minecraft/src/NetLoginHandler.java
@@ -9,6 +9,8 @@
@@ -12,6 +12,8 @@
import java.util.Random;
import java.util.logging.Logger;
import javax.crypto.SecretKey;
@ -9,7 +9,7 @@
import net.minecraft.server.MinecraftServer;
public class NetLoginHandler extends NetHandler
@@ -39,7 +41,7 @@
@@ -42,7 +44,7 @@
this.func_72529_d();
}
@ -18,7 +18,7 @@
{
this.func_72527_a("Took too long to log in");
}
@@ -125,12 +127,17 @@
@@ -128,12 +130,17 @@
}
}
@ -39,7 +39,7 @@
if (var1 != null)
{
this.func_72527_a(var1);
@@ -221,4 +228,20 @@
@@ -250,4 +257,20 @@
{
return p_72531_0_.field_72544_i = p_72531_1_;
}

View File

@ -9,7 +9,7 @@
import net.minecraft.server.MinecraftServer;
public class NetServerHandler extends NetHandler
@@ -591,6 +593,7 @@
@@ -587,6 +589,7 @@
public void func_72481_a(Packet3Chat p_72481_1_)
{
@ -17,19 +17,19 @@
if (this.field_72574_e.func_71126_v() == 2)
{
this.func_72567_b(new Packet3Chat("Cannot send chat message."));
@@ -957,6 +960,11 @@
@@ -952,6 +955,11 @@
}
public void func_72501_a(Packet250CustomPayload p_72501_1_)
{
+ {
+ FMLNetworkHandler.handlePacket250Packet(p_72501_1_, field_72575_b, this);
+ }
+
+ public void handleVanilla250Packet(Packet250CustomPayload p_72501_1_)
+ {
{
DataInputStream var2;
ItemStack var3;
ItemStack var4;
@@ -1029,4 +1037,17 @@
@@ -1114,4 +1122,17 @@
}
}
}

View File

@ -1,6 +1,6 @@
--- ../src-base/common/net/minecraft/src/Packet.java
+++ ../src-work/common/net/minecraft/src/Packet.java
@@ -341,7 +341,7 @@
@@ -349,7 +349,7 @@
func_73285_a(107, true, true, Packet107CreativeSetSlot.class);
func_73285_a(108, false, true, Packet108EnchantItem.class);
func_73285_a(130, true, true, Packet130UpdateSign.class);

View File

@ -1,6 +1,6 @@
--- ../src-base/common/net/minecraft/src/ServerConfigurationManager.java
+++ ../src-work/common/net/minecraft/src/ServerConfigurationManager.java
@@ -11,6 +11,10 @@
@@ -12,6 +12,10 @@
import java.util.List;
import java.util.Set;
import java.util.logging.Logger;
@ -11,7 +11,7 @@
import net.minecraft.server.MinecraftServer;
public abstract class ServerConfigurationManager
@@ -80,6 +84,7 @@
@@ -81,6 +85,7 @@
}
p_72355_2_.func_71116_b();
@ -19,7 +19,7 @@
}
public void func_72364_a(WorldServer[] p_72364_1_)
@@ -153,6 +158,7 @@
@@ -154,6 +159,7 @@
public void func_72367_e(EntityPlayerMP p_72367_1_)
{
@ -27,20 +27,19 @@
this.func_72391_b(p_72367_1_);
WorldServer var2 = p_72367_1_.func_71121_q();
var2.func_72900_e(p_72367_1_);
@@ -301,6 +307,7 @@
var7.func_72838_d(var6);
this.field_72404_b.add(var6);
var6.func_71116_b();
+ GameRegistry.onPlayerRespawn(var6);
return var6;
@@ -304,6 +310,7 @@
var8.func_72838_d(var7);
this.field_72404_b.add(var7);
var7.func_71116_b();
+ GameRegistry.onPlayerRespawn(var7);
return var7;
}
@@ -380,6 +387,8 @@
PotionEffect var13 = (PotionEffect)var14.next();
p_72356_1_.field_71135_a.func_72567_b(new Packet41EntityEffect(p_72356_1_.field_70157_k, var13));
@@ -329,6 +336,7 @@
PotionEffect var7 = (PotionEffect)var6.next();
p_72356_1_.field_71135_a.func_72567_b(new Packet41EntityEffect(p_72356_1_.field_70157_k, var7));
}
+
+ GameRegistry.onPlayerChangedDimension(p_72356_1_);
}
public void func_72374_b()
public void func_82448_a(Entity p_82448_1_, int p_82448_2_, WorldServer p_82448_3_, WorldServer p_82448_4_)

View File

@ -9,9 +9,9 @@
{
@@ -83,6 +85,7 @@
public void func_75213_b(ItemStack p_75213_1_)
public void func_82870_a(EntityPlayer p_82870_1_, ItemStack p_82870_2_)
{
+ GameRegistry.onItemCrafted(field_75238_b, p_75213_1_, field_75239_a);
this.func_75208_c(p_75213_1_);
+ GameRegistry.onItemCrafted(p_82870_1_, p_82870_2_, field_75239_a);
this.func_75208_c(p_82870_2_);
for (int var2 = 0; var2 < this.field_75239_a.func_70302_i_(); ++var2)
for (int var3 = 0; var3 < this.field_75239_a.func_70302_i_(); ++var3)

View File

@ -1,6 +1,6 @@
--- ../src-base/common/net/minecraft/src/World.java
+++ ../src-work/common/net/minecraft/src/World.java
@@ -3375,7 +3375,7 @@
@@ -3473,7 +3473,7 @@
@SideOnly(Side.CLIENT)
public double func_72919_O()
{

View File

@ -9,17 +9,17 @@
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
@@ -26,6 +30,7 @@
private boolean field_76111_s;
@@ -29,6 +33,7 @@
private boolean field_76110_t;
private boolean field_76109_u;
private GameRules field_82577_x;
+ private Map<String,NBTBase> additionalProperties;
protected WorldInfo()
{
@@ -372,4 +377,24 @@
@@ -430,4 +435,24 @@
{
this.field_76109_u = p_76091_1_;
return this.field_82577_x;
}
+
+ /**

View File

@ -1,28 +1,29 @@
--- ../src-base/common/net/minecraft/src/WorldProvider.java
+++ ../src-work/common/net/minecraft/src/WorldProvider.java
@@ -35,19 +35,12 @@
@@ -37,20 +37,12 @@
protected void func_76572_b()
{
- if (this.field_76579_a.func_72912_H().func_76067_t() == WorldType.field_77138_c)
- {
- this.field_76578_c = new WorldChunkManagerHell(BiomeGenBase.field_76772_c, 0.5F, 0.5F);
- FlatGeneratorInfo var1 = FlatGeneratorInfo.func_82651_a(this.field_76579_a.func_72912_H().func_82571_y());
- this.field_76578_c = new WorldChunkManagerHell(BiomeGenBase.field_76773_a[var1.func_82648_a()], 0.5F, 0.5F);
- }
- else
- {
- this.field_76578_c = new WorldChunkManager(this.field_76579_a);
- }
+ this.field_76578_c = this.field_76577_b.getChunkManager(this.field_76579_a);
+ field_76578_c = field_76577_b.getChunkManager(field_76579_a);
}
public IChunkProvider func_76555_c()
{
- return (IChunkProvider)(this.field_76577_b == WorldType.field_77138_c ? new ChunkProviderFlat(this.field_76579_a, this.field_76579_a.func_72905_C(), this.field_76579_a.func_72912_H().func_76089_r()) : new ChunkProviderGenerate(this.field_76579_a, this.field_76579_a.func_72905_C(), this.field_76579_a.func_72912_H().func_76089_r()));
+ return this.field_76577_b.getChunkGenerator(this.field_76579_a);
- return (IChunkProvider)(this.field_76577_b == WorldType.field_77138_c ? new ChunkProviderFlat(this.field_76579_a, this.field_76579_a.func_72905_C(), this.field_76579_a.func_72912_H().func_76089_r(), this.field_82913_c) : new ChunkProviderGenerate(this.field_76579_a, this.field_76579_a.func_72905_C(), this.field_76579_a.func_72912_H().func_76089_r()));
+ return field_76577_b.getChunkGenerator(field_76579_a, field_82913_c);
}
public boolean func_76566_a(int p_76566_1_, int p_76566_2_)
@@ -165,19 +158,19 @@
@@ -168,19 +160,19 @@
public int func_76557_i()
{

View File

@ -21,7 +21,7 @@
public static final WorldType[] field_77139_a = new WorldType[16];
public static final WorldType field_77137_b = (new WorldType(0, "default", 1)).func_77129_f();
public static final WorldType field_77138_c = new WorldType(1, "flat");
@@ -14,6 +24,8 @@
@@ -15,6 +25,8 @@
private final int field_77134_g;
private boolean field_77140_h;
private boolean field_77141_i;
@ -30,9 +30,9 @@
public WorldType(int p_i3737_1_, String p_i3737_2_)
{
@@ -26,6 +38,14 @@
this.field_77134_g = p_i3738_3_;
@@ -28,6 +40,14 @@
this.field_77140_h = true;
this.field_82748_f = p_i3738_1_;
field_77139_a[p_i3738_1_] = this;
+ switch (p_i3738_1_)
+ {
@ -45,19 +45,27 @@
}
public String func_77127_a()
@@ -89,4 +109,61 @@
return null;
@@ -97,4 +117,69 @@
{
return this.field_82748_f;
}
+
+ public WorldChunkManager getChunkManager(World world)
+ {
+ return this == field_77138_c ? new WorldChunkManagerHell(BiomeGenBase.field_76772_c, 0.5F, 0.5F) : new WorldChunkManager(world);
+ if (this == field_77138_c)
+ {
+ FlatGeneratorInfo var1 = FlatGeneratorInfo.func_82651_a(world.func_72912_H().func_82571_y());
+ return new WorldChunkManagerHell(BiomeGenBase.field_76773_a[var1.func_82648_a()], 0.5F, 0.5F);
+ }
+ else
+ {
+ return new WorldChunkManager(world);
+ }
+ }
+
+ public IChunkProvider getChunkGenerator(World world)
+ {
+ return (this == field_77138_c ? new ChunkProviderFlat(world, world.func_72905_C(), world.func_72912_H().func_76089_r()) : new ChunkProviderGenerate(world, world.func_72905_C(), world.func_72912_H().func_76089_r()));
+ public IChunkProvider getChunkGenerator(World world, String generatorOptions)
+ {
+ return (this == field_77138_c ? new ChunkProviderFlat(world, world.func_72905_C(), world.func_72912_H().func_76089_r(), generatorOptions) : new ChunkProviderGenerate(world, world.func_72905_C(), world.func_72912_H().func_76089_r()));
+ }
+
+ public int getMinimumSpawnHeight(World world)

View File

@ -10,7 +10,7 @@
import net.minecraft.src.AchievementList;
import net.minecraft.src.AnvilSaveConverter;
import net.minecraft.src.AxisAlignedBB;
@@ -116,6 +118,7 @@
@@ -118,6 +120,7 @@
import net.minecraft.src.WorldInfo;
import net.minecraft.src.WorldRenderer;
import net.minecraft.src.WorldSettings;
@ -18,7 +18,7 @@
import org.lwjgl.LWJGLException;
import org.lwjgl.Sys;
import org.lwjgl.input.Keyboard;
@@ -127,6 +130,12 @@
@@ -130,6 +133,12 @@
import org.lwjgl.opengl.GLContext;
import org.lwjgl.opengl.PixelFormat;
import org.lwjgl.util.glu.GLU;
@ -31,7 +31,7 @@
@SideOnly(Side.CLIENT)
public abstract class Minecraft implements Runnable, IPlayerUsage
@@ -308,7 +317,7 @@
@@ -311,7 +320,7 @@
this.func_71357_I();
this.field_71466_p = new FontRenderer(this.field_71474_y, "/font/default.png", this.field_71446_o, false);
this.field_71464_q = new FontRenderer(this.field_71474_y, "/font/alternate.png", this.field_71446_o, false);
@ -40,7 +40,7 @@
if (this.field_71474_y.field_74363_ab != null)
{
StringTranslate.func_74808_a().func_74810_a(this.field_71474_y.field_74363_ab);
@@ -353,6 +362,8 @@
@@ -356,6 +365,8 @@
GL11.glViewport(0, 0, this.field_71443_c, this.field_71440_d);
this.field_71452_i = new EffectRenderer(this.field_71441_e, this.field_71446_o);
@ -49,7 +49,7 @@
try
{
this.field_71430_V = new ThreadDownloadResources(this.field_71412_D, this);
@@ -381,6 +392,7 @@
@@ -384,6 +395,7 @@
{
this.func_71352_k();
}
@ -57,7 +57,7 @@
}
private void func_71357_I() throws LWJGLException
@@ -741,9 +753,11 @@
@@ -742,9 +754,11 @@
if (!this.field_71454_w)
{
@ -69,7 +69,7 @@
}
GL11.glFlush();
@@ -1264,11 +1278,13 @@
@@ -1270,11 +1284,13 @@
public void func_71407_l()
{
@ -83,7 +83,7 @@
this.field_71424_I.func_76320_a("stats");
this.field_71413_E.func_77449_e();
this.field_71424_I.func_76318_c("gui");
@@ -1636,6 +1652,7 @@
@@ -1654,6 +1670,7 @@
this.field_71453_ak.func_74428_b();
}
@ -91,7 +91,7 @@
this.field_71424_I.func_76319_b();
this.field_71423_H = func_71386_F();
}
@@ -1886,6 +1903,12 @@
@@ -1908,6 +1925,12 @@
public static void main(String[] p_main_0_)
{

View File

@ -7,7 +7,7 @@
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
import java.io.BufferedReader;
@@ -571,6 +572,7 @@
@@ -596,6 +597,7 @@
public void func_74303_b()
{

View File

@ -1,11 +1,10 @@
--- ../src-base/minecraft/net/minecraft/src/GuiCreateWorld.java
+++ ../src-work/minecraft/net/minecraft/src/GuiCreateWorld.java
@@ -199,7 +199,7 @@
var2 = (long)var4.hashCode();
@@ -205,6 +205,7 @@
}
}
-
+ WorldType.field_77139_a[this.field_73916_E].onGUICreateWorldPress();
EnumGameType var9 = EnumGameType.func_77142_a(this.field_73927_m);
WorldSettings var6 = new WorldSettings(var2, var9, this.field_73925_n, this.field_73933_r, WorldType.field_77139_a[this.field_73916_E]);
+ WorldType.field_77139_a[this.field_73916_E].onGUICreateWorldPress();
EnumGameType var8 = EnumGameType.func_77142_a(this.field_73927_m);
WorldSettings var6 = new WorldSettings(var2, var8, this.field_73925_n, this.field_73933_r, WorldType.field_77139_a[this.field_73916_E]);
var6.func_82750_a(this.field_82290_a);

View File

@ -18,7 +18,7 @@
@SideOnly(Side.CLIENT)
public class GuiMainMenu extends GuiScreen
@@ -121,7 +128,8 @@
@@ -125,7 +132,8 @@
this.func_73969_a(var4, 24, var2);
}
@ -28,7 +28,7 @@
if (this.field_73882_e.field_71448_m)
{
@@ -185,6 +193,11 @@
@@ -189,6 +197,11 @@
if (p_73875_1_.field_73741_f == 4)
{
this.field_73882_e.func_71400_g();
@ -40,7 +40,7 @@
}
if (p_73875_1_.field_73741_f == 11)
@@ -403,7 +416,14 @@
@@ -407,7 +420,14 @@
var9 = var9 + " Demo";
}

View File

@ -11,7 +11,7 @@
@@ -97,6 +99,7 @@
this.func_71253_a(CryptManager.func_75891_b());
this.func_71247_a(this.func_71270_I(), this.func_71221_J(), this.field_71350_m.func_77160_d(), this.field_71350_m.func_77165_h());
this.func_71247_a(this.func_71270_I(), this.func_71221_J(), this.field_71350_m.func_77160_d(), this.field_71350_m.func_77165_h(), this.field_71350_m.func_82749_j());
this.func_71205_p(this.func_71214_G() + " - " + this.field_71305_c[0].func_72912_H().func_76065_j());
+ FMLCommonHandler.instance().handleServerStarting(this);
return true;

View File

@ -45,10 +45,10 @@
this.field_72556_d = p_72455_1_.field_73562_h;
this.field_72563_h.field_71442_b.func_78746_a(p_72455_1_.field_73557_d);
+ FMLNetworkHandler.onConnectionEstablishedToServer(this, field_72555_g, p_72455_1_);
this.func_72552_c(new Packet204ClientInfo(this.field_72563_h.field_71474_y.field_74363_ab, this.field_72563_h.field_71474_y.field_74339_e, this.field_72563_h.field_71474_y.field_74343_n, this.field_72563_h.field_71474_y.field_74344_o, this.field_72563_h.field_71474_y.field_74318_M));
this.field_72563_h.field_71474_y.func_82879_c();
}
@@ -566,6 +574,7 @@
@@ -583,6 +591,7 @@
{
this.field_72555_g.func_74429_a(p_72546_1_);
this.field_72555_g.func_74423_d();
@ -56,7 +56,7 @@
}
}
@@ -605,6 +614,7 @@
@@ -622,6 +631,7 @@
public void func_72481_a(Packet3Chat p_72481_1_)
{
@ -64,7 +64,7 @@
this.field_72563_h.field_71456_v.func_73827_b().func_73765_a(p_72481_1_.field_73476_b);
}
@@ -1066,6 +1076,11 @@
@@ -1105,6 +1115,11 @@
public void func_72494_a(Packet131MapData p_72494_1_)
{
@ -76,19 +76,19 @@
if (p_72494_1_.field_73438_a == Item.field_77744_bd.field_77779_bT)
{
ItemMap.func_77874_a(p_72494_1_.field_73436_b, this.field_72563_h.field_71441_e).func_76192_a(p_72494_1_.field_73437_c);
@@ -1166,6 +1181,11 @@
}
@@ -1214,6 +1229,11 @@
public void func_72501_a(Packet250CustomPayload p_72501_1_)
+ {
{
+ FMLNetworkHandler.handlePacket250Packet(p_72501_1_, field_72555_g, this);
+ }
+
+ public void handleVanilla250Packet(Packet250CustomPayload p_72501_1_)
{
+ {
if ("MC|TPack".equals(p_72501_1_.field_73630_a))
{
@@ -1211,4 +1231,20 @@
String[] var2 = (new String(p_72501_1_.field_73629_c)).split("\u0000");
@@ -1258,4 +1278,20 @@
{
return this.field_72555_g;
}

View File

@ -1,83 +1,91 @@
--- ../src-base/minecraft/net/minecraft/src/RenderBlocks.java
+++ ../src-work/minecraft/net/minecraft/src/RenderBlocks.java
@@ -129,7 +129,73 @@
@@ -134,7 +134,81 @@
{
int var5 = p_78612_1_.func_71857_b();
p_78612_1_.func_71902_a(this.field_78669_a, p_78612_2_, p_78612_3_, p_78612_4_);
- return var5 == 0 ? this.func_78570_q(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 31 ? this.func_78581_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 4 ? this.func_78621_p(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 13 ? this.func_78584_s(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 1 ? this.func_78620_l(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 19 ? this.func_78603_m(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 23 ? this.func_78566_o(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 6 ? this.func_78614_n(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 2 ? this.func_78572_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 3 ? this.func_78590_h(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 5 ? this.func_78589_i(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 8 ? this.func_78576_j(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 7 ? this.func_78601_u(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 9 ? this.func_78586_a((BlockRail)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 10 ? this.func_78565_t(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 27 ? this.func_78618_a((BlockDragonEgg)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 11 ? this.func_78582_a((BlockFence)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 12 ? this.func_78594_e(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 29 ? this.func_78577_f(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 30 ? this.func_78619_g(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 14 ? this.func_78574_w(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 15 ? this.func_78610_x(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 16 ? this.func_78593_b(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, false) : (var5 == 17 ? this.func_78608_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, true) : (var5 == 18 ? this.func_78592_a((BlockPane)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 20 ? this.func_78598_k(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 21 ? this.func_78580_a((BlockFenceGate)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 24 ? this.func_78615_a((BlockCauldron)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 25 ? this.func_78585_a((BlockBrewingStand)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 26 ? this.func_78567_v(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 28 ? this.func_78616_a((BlockCocoa)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : false))))))))))))))))))))))))))))));
- return var5 == 0 ? this.func_78570_q(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 31 ? this.func_78581_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 4 ? this.func_78621_p(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 13 ? this.func_78584_s(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 1 ? this.func_78620_l(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 19 ? this.func_78603_m(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 23 ? this.func_78566_o(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 6 ? this.func_78614_n(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 2 ? this.func_78572_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 3 ? this.func_78590_h(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 5 ? this.func_78589_i(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 8 ? this.func_78576_j(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 7 ? this.func_78601_u(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 9 ? this.func_78586_a((BlockRail)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 10 ? this.func_78565_t((BlockStairs)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 27 ? this.func_78618_a((BlockDragonEgg)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 11 ? this.func_78582_a((BlockFence)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 32 ? this.func_82779_a((BlockWall)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 12 ? this.func_78594_e(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 29 ? this.func_78577_f(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 30 ? this.func_78619_g(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 14 ? this.func_78574_w(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 15 ? this.func_78610_x(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 16 ? this.func_78593_b(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, false) : (var5 == 17 ? this.func_78608_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, true) : (var5 == 18 ? this.func_78592_a((BlockPane)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 20 ? this.func_78598_k(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 21 ? this.func_78580_a((BlockFenceGate)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 24 ? this.func_78615_a((BlockCauldron)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 33 ? this.func_82780_a((BlockFlowerPot)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 35 ? this.func_82775_a((BlockAnvil)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 25 ? this.func_78585_a((BlockBrewingStand)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 26 ? this.func_78567_v(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 28 ? this.func_78616_a((BlockCocoa)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (var5 == 34 ? this.func_82778_a((BlockBeacon)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : false))))))))))))))))))))))))))))))))));
+ switch (var5)
+ {
+ case 0:
+ return this.func_78570_q(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 31:
+ return this.func_78581_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 4:
+ return this.func_78621_p(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 13:
+ return this.func_78584_s(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 1:
+ return this.func_78620_l(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 19:
+ return this.func_78603_m(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 23:
+ return this.func_78566_o(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 6:
+ return this.func_78614_n(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 2:
+ return this.func_78572_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 3:
+ return this.func_78590_h(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 5:
+ return this.func_78589_i(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 8:
+ return this.func_78576_j(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 7:
+ return this.func_78601_u(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 9:
+ return this.func_78586_a((BlockRail) p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 10:
+ return this.func_78565_t(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 27:
+ return this.func_78618_a((BlockDragonEgg) p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 11:
+ return this.func_78582_a((BlockFence) p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 12:
+ return this.func_78594_e(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 29:
+ return this.func_78577_f(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 30:
+ return this.func_78619_g(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 14:
+ return this.func_78574_w(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 15:
+ return this.func_78610_x(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 16:
+ return this.func_78593_b(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, false);
+ case 17:
+ return this.func_78608_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, true);
+ case 18:
+ return this.func_78592_a((BlockPane) p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 20:
+ return this.func_78598_k(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 21:
+ return this.func_78580_a((BlockFenceGate) p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 24:
+ return this.func_78615_a((BlockCauldron) p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 25:
+ return this.func_78585_a((BlockBrewingStand) p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 26:
+ return this.func_78567_v(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 28:
+ return this.func_78616_a((BlockCocoa) p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ default:
+ return FMLRenderAccessLibrary.renderWorldBlock(this, field_78669_a, p_78612_2_, p_78612_3_, p_78612_4_, p_78612_1_, var5);
+ case 0:
+ return this.func_78570_q(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 31:
+ return this.func_78581_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 4:
+ return this.func_78621_p(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 13:
+ return this.func_78584_s(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 1:
+ return this.func_78620_l(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 19:
+ return this.func_78603_m(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 23:
+ return this.func_78566_o(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 6:
+ return this.func_78614_n(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 2:
+ return this.func_78572_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 3:
+ return this.func_78590_h(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 5:
+ return this.func_78589_i(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 8:
+ return this.func_78576_j(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 7:
+ return this.func_78601_u(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 9:
+ return this.func_78586_a((BlockRail)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 10:
+ return this.func_78565_t((BlockStairs)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 27:
+ return this.func_78618_a((BlockDragonEgg)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 11:
+ return this.func_78582_a((BlockFence)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 32:
+ return this.func_82779_a((BlockWall)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 12:
+ return this.func_78594_e(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 29:
+ return this.func_78577_f(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 30:
+ return this.func_78619_g(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 14:
+ return this.func_78574_w(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 15:
+ return this.func_78610_x(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 16:
+ return this.func_78593_b(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, false);
+ case 17:
+ return this.func_78608_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, true);
+ case 18:
+ return this.func_78592_a((BlockPane)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 20:
+ return this.func_78598_k(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 21:
+ return this.func_78580_a((BlockFenceGate)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 24:
+ return this.func_78615_a((BlockCauldron)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 33:
+ return this.func_82780_a((BlockFlowerPot)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 35:
+ return this.func_82775_a((BlockAnvil)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 25:
+ return this.func_78585_a((BlockBrewingStand)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 26:
+ return this.func_78567_v(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 28:
+ return this.func_78616_a((BlockCocoa)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 34:
+ return this.func_82778_a((BlockBeacon)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ default:
+ return FMLRenderAccessLibrary.renderWorldBlock(this, field_78669_a, p_78612_2_, p_78612_3_, p_78612_4_, p_78612_1_, var5);
+ }
}
public boolean func_78567_v(Block p_78567_1_, int p_78567_2_, int p_78567_3_, int p_78567_4_)
@@ -5994,6 +6060,10 @@
@@ -6427,6 +6501,10 @@
p_78600_1_.func_71905_a(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F);
this.func_78595_a();
}
+ else
+ {
@ -86,35 +94,41 @@
}
else
{
@@ -6051,6 +6121,30 @@
@@ -6484,6 +6562,36 @@
public static boolean func_78597_b(int p_78597_0_)
{
- return p_78597_0_ == 0 ? true : (p_78597_0_ == 31 ? true : (p_78597_0_ == 13 ? true : (p_78597_0_ == 10 ? true : (p_78597_0_ == 11 ? true : (p_78597_0_ == 27 ? true : (p_78597_0_ == 22 ? true : (p_78597_0_ == 21 ? true : (p_78597_0_ == 16 ? true : p_78597_0_ == 26))))))));
- return p_78597_0_ == 0 ? true : (p_78597_0_ == 31 ? true : (p_78597_0_ == 13 ? true : (p_78597_0_ == 10 ? true : (p_78597_0_ == 11 ? true : (p_78597_0_ == 27 ? true : (p_78597_0_ == 22 ? true : (p_78597_0_ == 21 ? true : (p_78597_0_ == 16 ? true : (p_78597_0_ == 26 ? true : (p_78597_0_ == 32 ? true : (p_78597_0_ == 34 ? true : p_78597_0_ == 35)))))))))));
+ switch (p_78597_0_)
+ {
+ case 0:
+ return true;
+ case 31:
+ return true;
+ case 13:
+ return true;
+ case 10:
+ return true;
+ case 11:
+ return true;
+ case 27:
+ return true;
+ case 22:
+ return true;
+ case 21:
+ return true;
+ case 16:
+ return true;
+ case 26:
+ return true;
+ default:
+ return FMLRenderAccessLibrary.renderItemAsFull3DBlock(p_78597_0_);
+ case 0:
+ return true;
+ case 31:
+ return true;
+ case 13:
+ return true;
+ case 10:
+ return true;
+ case 11:
+ return true;
+ case 27:
+ return true;
+ case 22:
+ return true;
+ case 21:
+ return true;
+ case 16:
+ return true;
+ case 26:
+ return true;
+ case 32:
+ return true;
+ case 34:
+ return true;
+ case 35:
+ return true;
+ default:
+ return FMLRenderAccessLibrary.renderItemAsFull3DBlock(p_78597_0_);
+ }
}
}

View File

@ -51,7 +51,7 @@
int[] var5 = new int[var3 * var4];
byte[] var6 = new byte[var3 * var4 * 4];
p_78351_1_.getRGB(0, 0, var3, var4, var5, 0, var3);
@@ -400,6 +410,7 @@
@@ -405,6 +415,7 @@
public void func_78355_a(TextureFX p_78355_1_)
{
@ -59,61 +59,55 @@
this.field_78367_h.add(p_78355_1_);
p_78355_1_.func_76846_a();
}
@@ -407,16 +418,31 @@
public void func_78343_a()
{
int var1 = -1;
- Iterator var2 = this.field_78367_h.iterator();
-
- while (var2.hasNext())
- {
- TextureFX var3 = (TextureFX)var2.next();
+
+ for (int var2 = 0; var2 < this.field_78367_h.size(); ++var2)
+ {
+ TextureFX var3 = (TextureFX)this.field_78367_h.get(var2);
@@ -418,15 +429,31 @@
{
var3 = (TextureFX)var2.next();
var3.field_76851_c = this.field_78365_j.field_74337_g;
- var3.func_76846_a();
- this.field_78358_g.clear();
- this.field_78358_g.put(var3.field_76852_a);
- this.field_78358_g.position(0).limit(var3.field_76852_a.length);
+ if (!TextureFXManager.instance().onUpdateTextureEffect(var3))
+ if (TextureFXManager.instance().onUpdateTextureEffect(var3))
+ {
+ continue;
+ }
+
+ Dimension dim = TextureFXManager.instance().getTextureDimensions(var3);
+ int tWidth = dim.width >> 4;
+ int tHeight = dim.height >> 4;
+ int tLen = tWidth * tHeight << 2;
+
+ if (var3.field_76852_a.length == tLen)
+ {
+ this.field_78358_g.clear();
+ this.field_78358_g.put(var3.field_76852_a);
+ this.field_78358_g.position(0).limit(var3.field_76852_a.length);
+ }
+ else
+ {
+ TextureFXManager.instance().scaleTextureFXData(var3.field_76852_a, field_78358_g, tWidth, tLen);
+ var1 = this.func_82772_a(var3, var1);
+ }
var3.func_76846_a();
}
}
if (var3.field_76850_b != var1)
{
@@ -426,9 +452,11 @@
public int func_82772_a(TextureFX p_82772_1_, int p_82772_2_)
{
- this.field_78358_g.clear();
- this.field_78358_g.put(p_82772_1_.field_76852_a);
- this.field_78358_g.position(0).limit(p_82772_1_.field_76852_a.length);
+ Dimension dim = TextureFXManager.instance().getTextureDimensions(p_82772_1_);
+ int tWidth = dim.width >> 4;
+ int tHeight = dim.height >> 4;
+ int tLen = tWidth * tHeight << 2;
+
+ if (p_82772_1_.field_76852_a.length == tLen)
+ {
+ this.field_78358_g.clear();
+ this.field_78358_g.put(p_82772_1_.field_76852_a);
+ this.field_78358_g.position(0).limit(p_82772_1_.field_76852_a.length);
+ }
+ else
+ {
+ TextureFXManager.instance().scaleTextureFXData(p_82772_1_.field_76852_a, field_78358_g, tWidth, tLen);
+ }
for (int var4 = 0; var4 < var3.field_76849_e; ++var4)
if (p_82772_1_.field_76850_b != p_82772_2_)
{
@@ -436,9 +463,11 @@
for (int var3 = 0; var3 < p_82772_1_.field_76849_e; ++var3)
{
+ int xOffset = p_82772_1_.field_76850_b % 16 * tWidth + var3 * tWidth;
for (int var4 = 0; var4 < p_82772_1_.field_76849_e; ++var4)
{
+ int xOffset = var3.field_76850_b % 16 * tWidth + var4 * tWidth;
for (int var5 = 0; var5 < var3.field_76849_e; ++var5)
{
- GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, var3.field_76850_b % 16 * 16 + var4 * 16, var3.field_76850_b / 16 * 16 + var5 * 16, 16, 16, GL11.GL_RGBA, GL11.GL_UNSIGNED_BYTE, this.field_78358_g);
+ int yOffset = var3.field_76850_b / 16 * tHeight + var5 * tHeight;
+ GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, xOffset, yOffset, tWidth, tHeight, GL11.GL_RGBA, GL11.GL_UNSIGNED_BYTE, this.field_78358_g);
}
- GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, p_82772_1_.field_76850_b % 16 * 16 + var3 * 16, p_82772_1_.field_76850_b / 16 * 16 + var4 * 16, 16, 16, GL11.GL_RGBA, GL11.GL_UNSIGNED_BYTE, this.field_78358_g);
+ int yOffset = p_82772_1_.field_76850_b / 16 * tHeight + var4 * tHeight;
+ GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, xOffset, yOffset, tWidth, tHeight, GL11.GL_RGBA, GL11.GL_UNSIGNED_BYTE, this.field_78358_g);
}
}
@@ -493,8 +521,9 @@
@@ -504,8 +533,9 @@
this.field_78361_b = false;
this.field_78363_a = false;
}
@ -125,7 +119,7 @@
var7.printStackTrace();
}
}
@@ -530,8 +559,9 @@
@@ -541,8 +571,9 @@
this.field_78361_b = false;
this.field_78363_a = false;
}

View File

@ -7,7 +7,7 @@
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
import java.awt.image.BufferedImage;
@@ -8,7 +9,7 @@
@@ -8,26 +9,41 @@
import net.minecraft.client.Minecraft;
@SideOnly(Side.CLIENT)
@ -16,17 +16,31 @@
{
private Minecraft field_76865_g;
private int[] field_76867_h = new int[256];
@@ -20,13 +21,19 @@
public double field_76868_i;
public double field_76866_j;
public static TextureCompassFX field_82391_c;
+ public static int stileSizeBase = 16;
+ public static int stileSizeSquare = 256;
+ public static int stileSizeMask = 15;
+ public static int stileSizeSquareMask = 255;
public TextureCompassFX(Minecraft p_i3212_1_)
{
super(Item.field_77750_aQ.func_77617_a(0));
this.field_76865_g = p_i3212_1_;
this.field_76847_f = 1;
-
+ setup();
+ }
+ }
+
+ @Override
+ public void setup()
+ {
+ super.setup();
+ stileSizeBase = tileSizeBase;
+ stileSizeSquare = tileSizeSquare;
+ stileSizeMask = tileSizeMask;
+ stileSizeSquareMask = tileSizeSquareMask;
+ field_76867_h = new int[tileSizeSquare];
try
{
@ -41,44 +55,48 @@
}
catch (IOException var5)
{
@@ -36,7 +43,7 @@
@@ -56,7 +72,7 @@
int var17;
int var16;
public void func_76846_a()
{
- for (int var1 = 0; var1 < 256; ++var1)
+ for (int var1 = 0; var1 < tileSizeSquare; ++var1)
- for (int var10 = 0; var10 < 256; ++var10)
+ for (int var10 = 0; var10 < stileSizeSquare; ++var10)
{
int var2 = this.field_76867_h[var1] >> 24 & 255;
int var3 = this.field_76867_h[var1] >> 16 & 255;
@@ -113,11 +120,11 @@
int var19;
int var18;
int var11 = var8[var10] >> 24 & 255;
int var12 = var8[var10] >> 16 & 255;
@@ -139,11 +155,12 @@
int var24;
int var26;
- for (var9 = -4; var9 <= 4; ++var9)
+ for (var9 = -(tileSizeBase >> 2); var9 <= (tileSizeBase >> 2); ++var9)
{
- var10 = (int)(8.5D + var26 * (double)var9 * 0.3D);
- var11 = (int)(7.5D - var24 * (double)var9 * 0.3D * 0.5D);
- var12 = var11 * 16 + var10;
+ var10 = (int)((tileSizeBase >> 1) + 0.5D + var26 * (double)var9 * 0.3D);
+ var11 = (int)((tileSizeBase >> 1) - 0.5D - var24 * (double)var9 * 0.3D * 0.5D);
+ var12 = var11 * tileSizeBase + var10;
var13 = 100;
var14 = 100;
var15 = 100;
@@ -139,11 +146,11 @@
this.field_76852_a[var12 * 4 + 3] = (byte)var16;
- for (var16 = -4; var16 <= 4; ++var16)
- {
- var17 = (int)(8.5D + var31 * (double)var16 * 0.3D);
- var18 = (int)(7.5D - var30 * (double)var16 * 0.3D * 0.5D);
- var19 = var18 * 16 + var17;
+ for (var16 = -(stileSizeBase >> 2); var16 <= (stileSizeBase >> 2); ++var16)
+ {
+ var17 = (int)((stileSizeBase >> 1) + 0.5D + var31 * (double)var16 * 0.3D);
+ var18 = (int)((stileSizeBase >> 1) - 0.5D - var30 * (double)var16 * 0.3D * 0.5D);
+ var19 = var18 * stileSizeBase + var17;
+
var20 = 100;
var21 = 100;
var22 = 100;
@@ -165,11 +182,12 @@
var9[var19 * 4 + 3] = (byte)var23;
}
- for (var9 = -8; var9 <= 16; ++var9)
+ for (var9 = -(tileSizeBase>>2); var9 <= tileSizeBase; ++var9)
{
- var10 = (int)(8.5D + var24 * (double)var9 * 0.3D);
- var11 = (int)(7.5D + var26 * (double)var9 * 0.3D * 0.5D);
- var12 = var11 * 16 + var10;
+ var10 = (int)((tileSizeBase >> 1) + 0.5D + var24 * (double)var9 * 0.3D);
+ var11 = (int)((tileSizeBase >> 1) - 0.5D + var26 * (double)var9 * 0.3D * 0.5D);
+ var12 = var11 * tileSizeBase + var10;
var13 = var9 >= 0 ? 255 : 100;
var14 = var9 >= 0 ? 20 : 100;
var15 = var9 >= 0 ? 20 : 100;
- for (var16 = -8; var16 <= 16; ++var16)
- {
- var17 = (int)(8.5D + var30 * (double)var16 * 0.3D);
- var18 = (int)(7.5D + var31 * (double)var16 * 0.3D * 0.5D);
- var19 = var18 * 16 + var17;
+ for (var16 = -(stileSizeBase>>2); var16 <= stileSizeBase; ++var16)
+ {
+ var17 = (int)((stileSizeBase >> 1) + 0.5D + var30 * (double)var16 * 0.3D);
+ var18 = (int)((stileSizeBase >> 1) - 0.5D + var31 * (double)var16 * 0.3D * 0.5D);
+ var19 = var18 * stileSizeBase + var17;
+
var20 = var16 >= 0 ? 255 : 100;
var21 = var16 >= 0 ? 20 : 100;
var22 = var16 >= 0 ? 20 : 100;