*update it to 1.11

This commit is contained in:
Jesse Boyd 2016-12-26 20:08:24 +11:00
parent 32ae0f1d48
commit 9e0ccfa103
No known key found for this signature in database
GPG Key ID: 59F1DE6293AF6E1F
5 changed files with 46 additions and 43 deletions

View File

@ -30,7 +30,7 @@ apply plugin: 'com.github.johnrengelman.shadow'
dependencies {
compile project(':core')
compile 'org.spongepowered:spongeapi:5.1.0-SNAPSHOT'
compile 'org.spongepowered:spongeapi:6.0.0-SNAPSHOT'
compile 'org.spongepowered:mixin:0.6.1-SNAPSHOT'
compile 'com.sk89q.worldedit:worldedit-forge-mc1.10.2:6.1.5'
}
@ -53,8 +53,8 @@ repositories {
}
}
minecraft {
version = "1.10.2"
mappings = "snapshot_20161029"
version = "1.11"
mappings = "snapshot_20161116"
runDir = 'run'
}

View File

@ -88,12 +88,12 @@ public class FaweSponge implements IFawe {
@Override
public FaweQueue getNewQueue(World world, boolean fast) {
return new com.boydti.fawe.sponge.v1_10.SpongeQueue_1_10(getWorldName(world));
return new com.boydti.fawe.sponge.v1_11.SpongeQueue_1_11(getWorldName(world));
}
@Override
public FaweQueue getNewQueue(String world, boolean fast) {
return new com.boydti.fawe.sponge.v1_10.SpongeQueue_1_10(world);
return new com.boydti.fawe.sponge.v1_11.SpongeQueue_1_11(world);
}
@Override

View File

@ -1,4 +1,4 @@
package com.boydti.fawe.sponge.v1_10;
package com.boydti.fawe.sponge.v1_11;
import com.boydti.fawe.Fawe;
import com.boydti.fawe.FaweCache;
@ -14,6 +14,7 @@ import com.sk89q.jnbt.Tag;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
@ -29,6 +30,7 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.BitArray;
import net.minecraft.util.ClassInheritanceMultiMap;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraft.world.chunk.BlockStateContainer;
@ -37,10 +39,12 @@ import net.minecraft.world.chunk.Chunk;
import net.minecraft.world.chunk.IBlockStatePalette;
import net.minecraft.world.chunk.storage.ExtendedBlockStorage;
public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
public class SpongeChunk_1_11 extends CharFaweChunk<Chunk, SpongeQueue_1_11> {
public BlockStateContainer[] sectionPalettes;
public static Map<String, ResourceLocation> entityKeys;
/**
* A FaweSections object represents a chunk and the blocks that you wish to change in it.
*
@ -48,23 +52,23 @@ public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
* @param x
* @param z
*/
public SpongeChunk_1_10(FaweQueue parent, int x, int z) {
public SpongeChunk_1_11(FaweQueue parent, int x, int z) {
super(parent, x, z);
}
public SpongeChunk_1_10(FaweQueue parent, int x, int z, char[][] ids, short[] count, short[] air, byte[] heightMap) {
public SpongeChunk_1_11(FaweQueue parent, int x, int z, char[][] ids, short[] count, short[] air, byte[] heightMap) {
super(parent, x, z, ids, count, air, heightMap);
}
@Override
public CharFaweChunk copy(boolean shallow) {
SpongeChunk_1_10 copy;
SpongeChunk_1_11 copy;
if (shallow) {
copy = new SpongeChunk_1_10(getParent(), getX(), getZ(), ids, count, air, heightMap);
copy = new SpongeChunk_1_11(getParent(), getX(), getZ(), ids, count, air, heightMap);
copy.biomes = biomes;
copy.chunk = chunk;
} else {
copy = new SpongeChunk_1_10(getParent(), getX(), getZ(), (char[][]) MainUtil.copyNd(ids), count.clone(), air.clone(), heightMap.clone());
copy = new SpongeChunk_1_11(getParent(), getX(), getZ(), (char[][]) MainUtil.copyNd(ids), count.clone(), air.clone(), heightMap.clone());
copy.biomes = biomes;
copy.chunk = chunk;
copy.biomes = biomes.clone();
@ -120,7 +124,7 @@ public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
@Override
public Chunk getNewChunk() {
World world = ((SpongeQueue_1_10) getParent()).getWorld();
World world = ((SpongeQueue_1_11) getParent()).getWorld();
return world.getChunkProvider().provideChunk(getX(), getZ());
}
@ -152,7 +156,7 @@ public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
}
@Override
public SpongeChunk_1_10 call() {
public SpongeChunk_1_11 call() {
net.minecraft.world.chunk.Chunk nmsChunk = this.getChunk();
int bx = this.getX() << 4;
int bz = this.getZ() << 4;
@ -176,14 +180,14 @@ public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
} else if (count >= 4096) {
Collection<Entity> ents = entities[i];
if (!ents.isEmpty()) {
synchronized (SpongeChunk_1_10.class) {
synchronized (SpongeChunk_1_11.class) {
entities[i] = new ClassInheritanceMultiMap<>(Entity.class);
}
}
} else {
char[] array = this.getIdArray(i);
Collection<Entity> ents = new ArrayList<>(entities[i]);
synchronized (SpongeChunk_1_10.class) {
synchronized (SpongeChunk_1_11.class) {
for (Entity entity : ents) {
if (entity instanceof EntityPlayer) {
continue;
@ -205,7 +209,7 @@ public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
Set<UUID> createdEntities = new HashSet<>();
Set<CompoundTag> entitiesToSpawn = this.getEntities();
if (!entitiesToSpawn.isEmpty()) {
synchronized (SpongeChunk_1_10.class) {
synchronized (SpongeChunk_1_11.class) {
for (CompoundTag nativeTag : entitiesToSpawn) {
Map<String, Tag> entityTagMap = nativeTag.getValue();
StringTag idTag = (StringTag) entityTagMap.get("Id");
@ -223,13 +227,22 @@ public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
float yaw = ((FloatTag) value.get(0)).getValue();
float pitch = ((FloatTag) value.get(1)).getValue();
String id = idTag.getValue();
if (id != null) {
Entity entity = EntityList.createEntityByName(id, nmsWorld);
if (entityKeys == null) {
entityKeys = new HashMap<>();
for (ResourceLocation key : EntityList.getEntityNameList()) {
String currentId = EntityList.func_191302_a(key);
entityKeys.put(currentId, key);
entityKeys.put(key.getResourcePath(), key);
}
}
ResourceLocation entityKey = entityKeys.get(id);
if (entityKey != null) {
Entity entity = EntityList.createEntityByIDFromName(entityKey, nmsWorld);
if (entity != null) {
NBTTagCompound tag = (NBTTagCompound) SpongeQueue_1_10.methodFromNative.invoke(null, nativeTag);
NBTTagCompound tag = (NBTTagCompound) SpongeQueue_1_11.methodFromNative.invoke(null, nativeTag);
entity.readFromNBT(tag);
tag.removeTag("UUIDMost");
tag.removeTag("UUIDLeast");
entity.readFromNBT(tag);
entity.setPositionAndRotation(x, y, z, yaw, pitch);
nmsWorld.spawnEntityInWorld(entity);
}
@ -264,7 +277,7 @@ public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
}
HashSet<UUID> entsToRemove = this.getEntityRemoves();
if (!entsToRemove.isEmpty()) {
synchronized (SpongeChunk_1_10.class) {
synchronized (SpongeChunk_1_11.class) {
for (int i = 0; i < entities.length; i++) {
Collection<Entity> ents = new ArrayList<>(entities[i]);
for (Entity entity : ents) {
@ -317,17 +330,17 @@ public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
continue;
case 1:
existing = nibble.get(x, y, z);
if (existing != SpongeQueue_1_10.air) {
if (existing != SpongeQueue_1_11.air) {
if (existing.getLightValue() > 0) {
getParent().getRelighter().addLightUpdate(bx + x, by + y, bz + z);
}
nonEmptyBlockCount--;
}
nibble.set(x, y, z, SpongeQueue_1_10.air);
nibble.set(x, y, z, SpongeQueue_1_11.air);
continue;
default:
existing = nibble.get(x, y, z);
if (existing != SpongeQueue_1_10.air) {
if (existing != SpongeQueue_1_11.air) {
if (existing.getLightValue() > 0) {
getParent().getRelighter().addLightUpdate(bx + x, by + y, bz + z);
}
@ -370,7 +383,7 @@ public class SpongeChunk_1_10 extends CharFaweChunk<Chunk, SpongeQueue_1_10> {
BlockPos pos = new BlockPos(x, y, z); // Set pos
TileEntity tileEntity = nmsWorld.getTileEntity(pos);
if (tileEntity != null) {
NBTTagCompound tag = (NBTTagCompound) SpongeQueue_1_10.methodFromNative.invoke(null, nativeTag);
NBTTagCompound tag = (NBTTagCompound) SpongeQueue_1_11.methodFromNative.invoke(null, nativeTag);
tag.setInteger("x", pos.getX());
tag.setInteger("y", pos.getY());
tag.setInteger("z", pos.getZ());

View File

@ -1,4 +1,4 @@
package com.boydti.fawe.sponge.v1_10;
package com.boydti.fawe.sponge.v1_11;
import com.boydti.fawe.FaweCache;
import com.boydti.fawe.example.CharFaweChunk;
@ -56,7 +56,7 @@ import net.minecraft.world.chunk.storage.ExtendedBlockStorage;
import net.minecraft.world.gen.ChunkProviderServer;
import org.spongepowered.api.Sponge;
public class SpongeQueue_1_10 extends NMSMappedFaweQueue<World, net.minecraft.world.chunk.Chunk, ExtendedBlockStorage[], ExtendedBlockStorage> {
public class SpongeQueue_1_11 extends NMSMappedFaweQueue<World, net.minecraft.world.chunk.Chunk, ExtendedBlockStorage[], ExtendedBlockStorage> {
protected final static Method methodFromNative;
protected final static Method methodToNative;
@ -88,26 +88,16 @@ public class SpongeQueue_1_10 extends NMSMappedFaweQueue<World, net.minecraft.wo
}
}
public SpongeQueue_1_10(com.sk89q.worldedit.world.World world) {
public SpongeQueue_1_11(com.sk89q.worldedit.world.World world) {
super(world);
getImpWorld();
}
public SpongeQueue_1_10(String world) {
public SpongeQueue_1_11(String world) {
super(world);
getImpWorld();
}
@Override
public void startSet(boolean parallel) {
MixinMinecraftServer.ALLOW_THREADS = true;
}
@Override
public void endSet(boolean parallel) {
MixinMinecraftServer.ALLOW_THREADS = false;
}
@Override
public void sendBlockUpdate(Map<Long, Map<Short, Character>> blockMap, FawePlayer... players) {
for (Map.Entry<Long, Map<Short, Character>> chunkEntry : blockMap.entrySet()) {
@ -377,7 +367,7 @@ public class SpongeQueue_1_10 extends NMSMappedFaweQueue<World, net.minecraft.wo
@Override
public void refreshChunk(FaweChunk fc) {
SpongeChunk_1_10 fs = (SpongeChunk_1_10) fc;
SpongeChunk_1_11 fs = (SpongeChunk_1_11) fc;
ensureChunkLoaded(fc.getX(), fc.getZ());
Chunk nmsChunk = fs.getChunk();
if (!nmsChunk.isLoaded()) {
@ -429,7 +419,7 @@ public class SpongeQueue_1_10 extends NMSMappedFaweQueue<World, net.minecraft.wo
@Override
public FaweChunk<Chunk> getFaweChunk(int x, int z) {
return new SpongeChunk_1_10(this, x, z);
return new SpongeChunk_1_11(this, x, z);
}
@Override

View File

@ -1,4 +1,4 @@
package com.boydti.fawe.sponge.v1_10;
package com.boydti.fawe.sponge.v1_11;
import com.boydti.fawe.FaweCache;
import com.boydti.fawe.config.Settings;