mirror of
https://github.com/GTNewHorizons/Postea.git
synced 2026-11-12 08:27:33 +00:00
ItemStack work
This commit is contained in:
1 parent
980f2c3ec2
commit
08f5f74c9f
6 files changed
+29
-38
No files matched your search
@@ -111,21 +111,12 @@ public class Postea {
|
||||
|
||||
BlockConversionInfo blockConversionInfoNew = new BlockConversionInfo();
|
||||
|
||||
if ((blockConversionInfoOld.x % 2 == 1) && (blockConversionInfoOld.y % 2 == 0)) {
|
||||
if ((blockConversionInfoOld.x == 334 && blockConversionInfoOld.y == 4 && blockConversionInfoOld.z == 73)) {
|
||||
blockConversionInfoNew.blockID = Block.getIdFromBlock(Blocks.wool);
|
||||
blockConversionInfoNew.metadata = 1;
|
||||
}
|
||||
if ((blockConversionInfoOld.x % 2 == 1) && (blockConversionInfoOld.y % 2 == 1)) {
|
||||
blockConversionInfoNew.blockID = Block.getIdFromBlock(Blocks.wool);
|
||||
blockConversionInfoNew.metadata = 2;
|
||||
}
|
||||
if ((blockConversionInfoOld.x % 2 == 0) && (blockConversionInfoOld.y % 2 == 0)) {
|
||||
blockConversionInfoNew.blockID = Block.getIdFromBlock(Blocks.wool);
|
||||
blockConversionInfoNew.metadata = 3;
|
||||
}
|
||||
if ((blockConversionInfoOld.x % 2 == 0) && (blockConversionInfoOld.y % 2 == 1)) {
|
||||
blockConversionInfoNew.blockID = Block.getIdFromBlock(Blocks.wool);
|
||||
blockConversionInfoNew.metadata = 4;
|
||||
} else {
|
||||
blockConversionInfoNew.blockID = blockConversionInfoOld.blockID;
|
||||
blockConversionInfoNew.metadata = blockConversionInfoOld.metadata;
|
||||
}
|
||||
|
||||
return blockConversionInfoNew;
|
||||
|
||||
+3
-8
@@ -1,6 +1,8 @@
|
||||
package com.colen.postea.API;
|
||||
package com.colen.postea.Utility;
|
||||
|
||||
import akka.japi.Pair;
|
||||
import com.colen.postea.API.BlockReplacementManager;
|
||||
import com.colen.postea.API.TileEntityReplacementManager;
|
||||
import com.colen.postea.Utility.BlockConversionInfo;
|
||||
import com.colen.postea.Utility.BlockInfo;
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
@@ -75,11 +77,6 @@ public class ChunkFixerUtility {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Replaces specified tile entities with a block in the chunk NBT data.
|
||||
*
|
||||
* @param chunkNBT The chunk's NBT data.
|
||||
*/
|
||||
public static void transformTileEntities(NBTTagCompound chunkNBT, World world) {
|
||||
NBTTagCompound level = chunkNBT.getCompoundTag("Level");
|
||||
|
||||
@@ -200,6 +197,4 @@ public class ChunkFixerUtility {
|
||||
this.blockInfo = blockInfo;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -16,4 +16,11 @@ public abstract class PosteaUtilities {
|
||||
|
||||
return tagCompound;
|
||||
}
|
||||
|
||||
public static void fixItemStack(NBTTagCompound tag) {
|
||||
|
||||
if (tag.hasNoTags()) return;
|
||||
|
||||
// Todo {id:5s,Count:4b,Damage:3s}
|
||||
}
|
||||
}
|
||||
@@ -8,7 +8,7 @@ import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||
|
||||
import static com.colen.postea.API.ChunkFixerUtility.processChunkNBT;
|
||||
import static com.colen.postea.Utility.ChunkFixerUtility.processChunkNBT;
|
||||
|
||||
@Mixin(AnvilChunkLoader.class)
|
||||
@SuppressWarnings("unused")
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
package com.colen.postea.mixins.early;
|
||||
|
||||
import com.colen.postea.API.ChunkFixerUtility;
|
||||
import net.minecraft.world.chunk.Chunk;
|
||||
import net.minecraft.world.gen.ChunkProviderServer;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||
|
||||
@Mixin(ChunkProviderServer.class)
|
||||
@SuppressWarnings("unused")
|
||||
|
||||
@@ -14,14 +14,16 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
import com.colen.postea.API.ItemStackKey;
|
||||
import com.colen.postea.API.ItemStackReplacementManager;
|
||||
|
||||
import static com.colen.postea.Utility.PosteaUtilities.fixItemStack;
|
||||
|
||||
@Mixin(ItemStack.class)
|
||||
@SuppressWarnings("unused")
|
||||
public abstract class MixinItemStack {
|
||||
|
||||
// @Shadow
|
||||
// private int itemDamage; // Metadata
|
||||
// @Shadow
|
||||
// private Item field_151002_e;
|
||||
@Shadow
|
||||
private int itemDamage; // Metadata
|
||||
@Shadow
|
||||
private Item field_151002_e;
|
||||
//
|
||||
// @Inject(method = "<init>(Lnet/minecraft/item/Item;II)V", at = @At("RETURN"))
|
||||
// @SuppressWarnings("unused")
|
||||
@@ -35,17 +37,18 @@ public abstract class MixinItemStack {
|
||||
// func_150996_a(replacement.getItem());
|
||||
// }
|
||||
//
|
||||
// @Inject(method = "readFromNBT(Lnet/minecraft/nbt/NBTTagCompound;)V", at = @At("RETURN"))
|
||||
// @SuppressWarnings("unused")
|
||||
// private void onReadFromNBTReturn(NBTTagCompound p_77963_1_, CallbackInfo ci) {
|
||||
@Inject(method = "readFromNBT(Lnet/minecraft/nbt/NBTTagCompound;)V", at = @At("RETURN"))
|
||||
@SuppressWarnings("unused")
|
||||
private void onReadFromNBTReturn(NBTTagCompound tag, CallbackInfo ci) {
|
||||
fixItemStack(tag);
|
||||
// ItemStackKey replacement = ItemStackReplacementManager.getItemReplacement(field_151002_e, itemDamage);
|
||||
//
|
||||
// if (replacement == null) return;
|
||||
//
|
||||
// itemDamage = replacement.getDamage();
|
||||
// func_150996_a(replacement.getItem());
|
||||
// }
|
||||
//
|
||||
// @Unique
|
||||
// public native void func_150996_a(Item p_150996_1_);
|
||||
}
|
||||
|
||||
@Unique
|
||||
public native void func_150996_a(Item p_150996_1_);
|
||||
}
|
||||
Reference in new issue
Block a user