Fix maps supporting greater than byte() dimension sizing

This commit is contained in:
Christian 2012-09-29 00:21:42 -04:00
parent 639039dd18
commit 7cd5ae04f7
2 changed files with 58 additions and 0 deletions

View File

@ -0,0 +1,20 @@
--- ../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;
- 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

@ -0,0 +1,38 @@
--- ../src-base/common/net/minecraft/src/MapData.java
+++ ../src-work/common/net/minecraft/src/MapData.java
@@ -11,7 +11,7 @@
{
public int field_76201_a;
public int field_76199_b;
- public byte field_76200_c;
+ public int field_76200_c;
public byte field_76197_d;
public byte[] field_76198_e = new byte[16384];
public int field_76195_f;
@@ -26,7 +26,16 @@
public void func_76184_a(NBTTagCompound p_76184_1_)
{
- this.field_76200_c = p_76184_1_.func_74771_c("dimension");
+ NBTBase dimension = p_76184_1_.func_74781_a("dimension");
+
+ if (dimension instanceof NBTTagByte)
+ {
+ this.field_76200_c = ((NBTTagByte)dimension).field_74756_a;
+ }
+ else
+ {
+ this.field_76200_c = ((NBTTagInt)dimension).field_74748_a;
+ }
this.field_76201_a = p_76184_1_.func_74762_e("xCenter");
this.field_76199_b = p_76184_1_.func_74762_e("zCenter");
this.field_76197_d = p_76184_1_.func_74771_c("scale");
@@ -77,7 +86,7 @@
public void func_76187_b(NBTTagCompound p_76187_1_)
{
- p_76187_1_.func_74774_a("dimension", this.field_76200_c);
+ p_76187_1_.func_74768_a("dimension", this.field_76200_c);
p_76187_1_.func_74768_a("xCenter", this.field_76201_a);
p_76187_1_.func_74768_a("zCenter", this.field_76199_b);
p_76187_1_.func_74774_a("scale", this.field_76197_d);