Update for MC 1.5

This commit is contained in:
Wizjany
2013-03-03 00:55:57 -05:00
committed by wizjany
parent ca1cecbdf4
commit 94ef1591e8
5 changed files with 218 additions and 18 deletions

View File

@@ -58,6 +58,7 @@ public final class BlockData {
case BlockID.POWERED_RAIL:
case BlockID.DETECTOR_RAIL:
case BlockID.ACTIVATOR_RAIL:
switch (data & 0x7) {
case 0: return 1 | (data & ~0x7);
case 1: return 0 | (data & ~0x7);
@@ -77,6 +78,7 @@ public final class BlockData {
case BlockID.SPRUCE_WOOD_STAIRS:
case BlockID.BIRCH_WOOD_STAIRS:
case BlockID.JUNGLE_WOOD_STAIRS:
case BlockID.QUARTZ_STAIRS:
switch (data) {
case 0: return 2;
case 1: return 3;
@@ -126,6 +128,8 @@ public final class BlockData {
case BlockID.BURNING_FURNACE:
case BlockID.DISPENSER:
case BlockID.ENDER_CHEST:
case BlockID.TRAPPED_CHEST:
case BlockID.DROPPER:
switch (data) {
case 2: return 5;
case 3: return 4;
@@ -148,6 +152,8 @@ public final class BlockData {
if (data >= 4 && data <= 11) data ^= 0xc;
break;
case BlockID.COMPARATOR_OFF:
case BlockID.COMPARATOR_ON:
case BlockID.REDSTONE_REPEATER_OFF:
case BlockID.REDSTONE_REPEATER_ON:
int dir = data & 0x03;
@@ -194,6 +200,8 @@ public final class BlockData {
case BlockID.FENCE_GATE:
return ((data + 1) & 0x3) | (data & ~0x3);
case BlockID.ANVIL:
return data ^ 0x1;
}
return data;
@@ -232,6 +240,7 @@ public final class BlockData {
case BlockID.POWERED_RAIL:
case BlockID.DETECTOR_RAIL:
case BlockID.ACTIVATOR_RAIL:
int power = data & ~0x7;
switch (data & 0x7) {
case 1: return 0 | power;
@@ -252,6 +261,7 @@ public final class BlockData {
case BlockID.SPRUCE_WOOD_STAIRS:
case BlockID.BIRCH_WOOD_STAIRS:
case BlockID.JUNGLE_WOOD_STAIRS:
case BlockID.QUARTZ_STAIRS:
switch (data) {
case 2: return 0;
case 3: return 1;
@@ -301,6 +311,8 @@ public final class BlockData {
case BlockID.BURNING_FURNACE:
case BlockID.DISPENSER:
case BlockID.ENDER_CHEST:
case BlockID.TRAPPED_CHEST:
case BlockID.DROPPER:
switch (data) {
case 5: return 2;
case 4: return 3;
@@ -323,6 +335,8 @@ public final class BlockData {
if (data >= 4 && data <= 11) data ^= 0xc;
break;
case BlockID.COMPARATOR_OFF:
case BlockID.COMPARATOR_ON:
case BlockID.REDSTONE_REPEATER_OFF:
case BlockID.REDSTONE_REPEATER_ON:
int dir = data & 0x03;
@@ -367,6 +381,10 @@ public final class BlockData {
case BlockID.FENCE_GATE:
return ((data + 3) & 0x3) | (data & ~0x3);
case BlockID.ANVIL:
return data ^ 0x1;
}
return data;
@@ -465,6 +483,7 @@ public final class BlockData {
case BlockID.SPRUCE_WOOD_STAIRS:
case BlockID.BIRCH_WOOD_STAIRS:
case BlockID.JUNGLE_WOOD_STAIRS:
case BlockID.QUARTZ_STAIRS:
data ^= flipY << 2;
switch (data) {
case 0:
@@ -508,6 +527,8 @@ public final class BlockData {
case BlockID.BURNING_FURNACE:
case BlockID.DISPENSER:
case BlockID.ENDER_CHEST:
case BlockID.TRAPPED_CHEST:
case BlockID.DROPPER:
switch (data) {
case 2:
case 3:
@@ -525,6 +546,8 @@ public final class BlockData {
case BlockID.REDSTONE_REPEATER_OFF:
case BlockID.REDSTONE_REPEATER_ON:
case BlockID.COMPARATOR_OFF:
case BlockID.COMPARATOR_ON:
case BlockID.COCOA_PLANT:
case BlockID.TRIPWIRE_HOOK:
switch (data & 0x3) {
@@ -653,6 +676,29 @@ public final class BlockData {
return mod((data & 0x3) + 1, 4) | store; // switch type with bottom bits and reapply top bits
}
// same here
case BlockID.QUARTZ_BLOCK:
if (increment == -1 && data > 2) {
switch (data) {
case 2: return 3;
case 3: return 4;
case 4: return 2;
}
} else if (increment == 1) {
switch (data) {
case 0:
return 1;
case 1:
return 2;
case 2:
case 3:
case 4:
return 0;
}
} else {
return -1;
}
case BlockID.LONG_GRASS:
case BlockID.STONE_BRICK:
case BlockID.SILVERFISH_BLOCK:
@@ -674,6 +720,7 @@ public final class BlockData {
case BlockID.SPRUCE_WOOD_STAIRS:
case BlockID.BIRCH_WOOD_STAIRS:
case BlockID.JUNGLE_WOOD_STAIRS:
case BlockID.QUARTZ_STAIRS:
if (data > 7) return -1;
return mod((data + increment), 8);
@@ -723,11 +770,15 @@ public final class BlockData {
case BlockID.LADDER:
case BlockID.CHEST:
case BlockID.ENDER_CHEST:
case BlockID.TRAPPED_CHEST:
case BlockID.DROPPER:
if (data < 2 || data > 5) return -1;
return mod((data - 2 + increment), 4) + 2;
case BlockID.REDSTONE_REPEATER_OFF:
case BlockID.REDSTONE_REPEATER_ON:
case BlockID.COMPARATOR_OFF:
case BlockID.COMPARATOR_ON:
case BlockID.TRAP_DOOR:
case BlockID.FENCE_GATE:
case BlockID.LEAVES: