Fixed schematic importing for sponge

This commit is contained in:
boy0001 2015-08-05 01:54:10 +10:00
parent b77b615dd4
commit d780733915
3 changed files with 22 additions and 9 deletions

View File

@ -46,7 +46,7 @@ import com.intellectualcrafters.plot.object.PlotBlock;
import com.intellectualcrafters.plot.object.PlotId;
import com.intellectualcrafters.plot.object.RunnableVal;
import com.intellectualcrafters.plot.object.schematic.PlotItem;
import com.plotsquared.bukkit.object.schematic.StateWrapper;
import com.plotsquared.object.schematic.StateWrapper;
public abstract class SchematicHandler {
public static SchematicHandler manager;
@ -442,12 +442,17 @@ public abstract class SchematicHandler {
try {
List<Tag> blockStates = ListTag.class.cast(tagMap.get("TileEntities")).getValue();
for (Tag stateTag : blockStates) {
CompoundTag ct = ((CompoundTag) stateTag);
Map<String, Tag> state = ct.getValue();
short x = IntTag.class.cast(state.get("x")).getValue().shortValue();
short y = IntTag.class.cast(state.get("y")).getValue().shortValue();
short z = IntTag.class.cast(state.get("z")).getValue().shortValue();
new StateWrapper(ct).restoreTag(x, y, z, schem);
try {
CompoundTag ct = ((CompoundTag) stateTag);
Map<String, Tag> state = ct.getValue();
short x = IntTag.class.cast(state.get("x")).getValue().shortValue();
short y = IntTag.class.cast(state.get("y")).getValue().shortValue();
short z = IntTag.class.cast(state.get("z")).getValue().shortValue();
new StateWrapper(ct).restoreTag(x, y, z, schem);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
catch (Exception e) {

View File

@ -44,7 +44,7 @@ import com.intellectualcrafters.plot.object.Location;
import com.intellectualcrafters.plot.object.RunnableVal;
import com.intellectualcrafters.plot.util.SchematicHandler;
import com.intellectualcrafters.plot.util.TaskManager;
import com.plotsquared.bukkit.object.schematic.StateWrapper;
import com.plotsquared.object.schematic.StateWrapper;
/**
* Schematic Handler

View File

@ -1,4 +1,4 @@
package com.plotsquared.bukkit.object.schematic;
package com.plotsquared.object.schematic;
import java.util.ArrayList;
import java.util.HashMap;
@ -92,6 +92,14 @@ public class StateWrapper {
return tags;
}
public Map<String, Tag> serializeItem(org.spongepowered.api.item.inventory.ItemStack item) {
Map<String, Tag> data = new HashMap<String, Tag>();
// FIXME serialize sponge item
return data;
}
public Map<String, Tag> serializeItem(ItemStack item) {
Map<String, Tag> data = new HashMap<String, Tag>();
data.put("id", new ShortTag("id", (short) item.getTypeId()));