Downdate to 1.10

This commit is contained in:
Tschipp 2017-08-14 11:08:00 +02:00
parent 5ddfc079fc
commit f60ee55fbe
10 changed files with 81 additions and 60 deletions

View File

@ -19,10 +19,10 @@ compileJava {
} }
minecraft { minecraft {
version = "1.11.2-13.20.1.2386" version = "1.10.2-12.18.3.2185"
runDir = "run" runDir = "run"
mappings = "snapshot_20161220" mappings = "snapshot_20161111"
// makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
} }

View File

@ -19,7 +19,7 @@ import net.minecraftforge.fml.relauncher.SideOnly;
import tschipp.carryon.common.CommonProxy; import tschipp.carryon.common.CommonProxy;
@EventBusSubscriber @EventBusSubscriber
@Mod(modid = CarryOn.MODID, name = CarryOn.NAME, version = CarryOn.VERSION, guiFactory = "tschipp.carryon.client.gui.GuiFactoryCarryOn", dependencies = "required-after:forge@[13.20.1.2386,)") @Mod(modid = CarryOn.MODID, name = CarryOn.NAME, version = CarryOn.VERSION, guiFactory = "tschipp.carryon.client.gui.GuiFactoryCarryOn")
public class CarryOn { public class CarryOn {
@SidedProxy(clientSide = "tschipp.carryon.client.ClientProxy", serverSide = "tschipp.carryon.common.CommonProxy") @SidedProxy(clientSide = "tschipp.carryon.client.ClientProxy", serverSide = "tschipp.carryon.common.CommonProxy")

View File

@ -51,8 +51,8 @@ public class RenderEvents
{ {
if (event.getDwheel() > 0 || event.getDwheel() < 0) if (event.getDwheel() > 0 || event.getDwheel() < 0)
{ {
ItemStack stack = Minecraft.getMinecraft().player.getHeldItemMainhand(); ItemStack stack = Minecraft.getMinecraft().thePlayer.getHeldItemMainhand();
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile) if (stack != null && stack.getItem() == RegistrationHandler.itemTile)
{ {
if (ItemTile.hasTileData(stack)) if (ItemTile.hasTileData(stack))
event.setCanceled(true); event.setCanceled(true);
@ -70,11 +70,11 @@ public class RenderEvents
if (event.getGui() != null) if (event.getGui() != null)
{ {
boolean inventory = event.getGui() instanceof GuiContainer; boolean inventory = event.getGui() instanceof GuiContainer;
EntityPlayer player = Minecraft.getMinecraft().player; EntityPlayer player = Minecraft.getMinecraft().thePlayer;
if (player != null) if (player != null)
{ {
ItemStack stack = player.getHeldItem(EnumHand.MAIN_HAND); ItemStack stack = player.getHeldItem(EnumHand.MAIN_HAND);
if (inventory && !stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack)) if (inventory && stack != null && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
{ {
event.setCanceled(true); event.setCanceled(true);
Minecraft.getMinecraft().currentScreen = null; Minecraft.getMinecraft().currentScreen = null;
@ -93,8 +93,8 @@ public class RenderEvents
GameSettings settings = Minecraft.getMinecraft().gameSettings; GameSettings settings = Minecraft.getMinecraft().gameSettings;
Field field = KeyBinding.class.getDeclaredFields()[7]; Field field = KeyBinding.class.getDeclaredFields()[7];
field.setAccessible(true); field.setAccessible(true);
ItemStack stack = Minecraft.getMinecraft().player.getHeldItemMainhand(); ItemStack stack = Minecraft.getMinecraft().thePlayer.getHeldItemMainhand();
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack)) if (stack != null && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
{ {
if (settings.keyBindDrop.isPressed()) if (settings.keyBindDrop.isPressed())
{ {
@ -121,11 +121,11 @@ public class RenderEvents
@SubscribeEvent @SubscribeEvent
public void renderHand(RenderHandEvent event) public void renderHand(RenderHandEvent event)
{ {
World world = Minecraft.getMinecraft().world; World world = Minecraft.getMinecraft().theWorld;
EntityPlayer player = Minecraft.getMinecraft().player; EntityPlayer player = Minecraft.getMinecraft().thePlayer;
ItemStack stack = player.getHeldItemMainhand(); ItemStack stack = player.getHeldItemMainhand();
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack)) if (stack != null && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
{ {
Block block = ItemTile.getBlock(stack); Block block = ItemTile.getBlock(stack);
BlockPos pos = player.getPosition(); BlockPos pos = player.getPosition();
@ -149,7 +149,7 @@ public class RenderEvents
GlStateManager.rotate(8, 1f, 0, 0); GlStateManager.rotate(8, 1f, 0, 0);
if (perspective == 0) if (perspective == 0)
Minecraft.getMinecraft().getRenderItem().renderItem(tileStack.isEmpty() ? stack : tileStack, ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileStack, world, player)); Minecraft.getMinecraft().getRenderItem().renderItem(tileStack == null ? stack : tileStack, ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileStack, world, player));
GlStateManager.scale(1, 1, 1); GlStateManager.scale(1, 1, 1);
GlStateManager.popMatrix(); GlStateManager.popMatrix();
@ -168,12 +168,12 @@ public class RenderEvents
@SubscribeEvent @SubscribeEvent
public void onPlayerRenderPost(RenderPlayerEvent.Post event) public void onPlayerRenderPost(RenderPlayerEvent.Post event)
{ {
World world = Minecraft.getMinecraft().world; World world = Minecraft.getMinecraft().theWorld;
EntityPlayer player = event.getEntityPlayer(); EntityPlayer player = event.getEntityPlayer();
ModelBiped modelBiped = event.getRenderer().getMainModel(); ModelBiped modelBiped = event.getRenderer().getMainModel();
EntityPlayerSP clientPlayer = Minecraft.getMinecraft().player; EntityPlayerSP clientPlayer = Minecraft.getMinecraft().thePlayer;
ItemStack stack = player.getHeldItemMainhand(); ItemStack stack = player.getHeldItemMainhand();
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack)) if (stack != null && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
{ {
Block block = ItemTile.getBlock(stack); Block block = ItemTile.getBlock(stack);
IBlockState state = ItemTile.getBlockState(stack); IBlockState state = ItemTile.getBlockState(stack);
@ -181,7 +181,7 @@ public class RenderEvents
ItemStack tileItem = ItemTile.getItemStack(stack); ItemStack tileItem = ItemTile.getItemStack(stack);
EntityItem entityItem = new EntityItem(Minecraft.getMinecraft().world, 0, 0, 0); EntityItem entityItem = new EntityItem(Minecraft.getMinecraft().theWorld, 0, 0, 0);
entityItem.hoverStart = 0; entityItem.hoverStart = 0;
entityItem.setEntityItemStack(tileItem); entityItem.setEntityItemStack(tileItem);
@ -211,7 +211,7 @@ public class RenderEvents
GlStateManager.translate(0, -0.3, 0); GlStateManager.translate(0, -0.3, 0);
IBakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileItem, world, player); IBakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileItem, world, player);
Minecraft.getMinecraft().getRenderItem().renderItem(tileItem.isEmpty() ? stack : tileItem, model); Minecraft.getMinecraft().getRenderItem().renderItem(tileItem == null ? stack : tileItem, model);
GlStateManager.scale(1, 1, 1); GlStateManager.scale(1, 1, 1);
@ -233,11 +233,11 @@ public class RenderEvents
AbstractClientPlayer aplayer = (AbstractClientPlayer) player; AbstractClientPlayer aplayer = (AbstractClientPlayer) player;
ItemStack stack = player.getHeldItemMainhand(); ItemStack stack = player.getHeldItemMainhand();
ModelBiped model = event.getRenderer().getMainModel(); ModelBiped model = event.getRenderer().getMainModel();
EntityPlayerSP clientPlayer = Minecraft.getMinecraft().player; EntityPlayerSP clientPlayer = Minecraft.getMinecraft().thePlayer;
ResourceLocation skinLoc = DefaultPlayerSkin.getDefaultSkin(player.getPersistentID()); ResourceLocation skinLoc = DefaultPlayerSkin.getDefaultSkin(player.getPersistentID());
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack)) if (stack != null && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
{ {
model.bipedLeftArm.isHidden = true; model.bipedLeftArm.isHidden = true;
model.bipedRightArm.isHidden = true; model.bipedRightArm.isHidden = true;

View File

@ -29,6 +29,7 @@ public class GuiFactoryCarryOn implements IModGuiFactory
} }
/*
@Override @Override
public boolean hasConfigGui() public boolean hasConfigGui()
{ {
@ -40,7 +41,7 @@ public class GuiFactoryCarryOn implements IModGuiFactory
{ {
return new GuiConfigCarryOn(parentScreen); return new GuiConfigCarryOn(parentScreen);
} } */

View File

@ -16,7 +16,6 @@ public class Configs {
public static class ForbiddenTiles public static class ForbiddenTiles
{ {
@Config.RequiresMcRestart()
@Comment("Tile Entities that cannot be picked up") @Comment("Tile Entities that cannot be picked up")
public String[] forbiddenTiles = new String[] public String[] forbiddenTiles = new String[]
{ {
@ -49,7 +48,6 @@ public class Configs {
public static class ModelOverrides public static class ModelOverrides
{ {
@Config.RequiresMcRestart()
@Comment("Model Overrides based on NBT or on Meta. Advanced Users Only!") @Comment("Model Overrides based on NBT or on Meta. Advanced Users Only!")
public String[] modelOverrides = new String[] public String[] modelOverrides = new String[]
{ {

View File

@ -30,7 +30,7 @@ public class ItemEvents
{ {
EntityPlayer player = event.getEntityPlayer(); EntityPlayer player = event.getEntityPlayer();
ItemStack stack = player.getHeldItemMainhand(); ItemStack stack = player.getHeldItemMainhand();
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack)) if (stack != null && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack))
{ {
event.setUseBlock(Result.DENY); event.setUseBlock(Result.DENY);
} }
@ -69,7 +69,7 @@ public class ItemEvents
tile.readFromNBT(ItemTile.getTileData(stack)); tile.readFromNBT(ItemTile.getTileData(stack));
tile.setPos(finalPos); tile.setPos(finalPos);
ItemTile.clearTileData(stack); ItemTile.clearTileData(stack);
eitem.setEntityItemStack(ItemStack.EMPTY); eitem.setEntityItemStack(null);
} }
} }
} }
@ -86,7 +86,7 @@ public class ItemEvents
Block block = world.getBlockState(pos).getBlock(); Block block = world.getBlockState(pos).getBlock();
IBlockState state = world.getBlockState(pos); IBlockState state = world.getBlockState(pos);
if (main.isEmpty() && off.isEmpty() && player.isSneaking() && !ForbiddenTileHandler.isForbidden(block)) if (main == null && off == null && player.isSneaking() && !ForbiddenTileHandler.isForbidden(block))
{ {
ItemStack stack = new ItemStack(RegistrationHandler.itemTile); ItemStack stack = new ItemStack(RegistrationHandler.itemTile);

View File

@ -90,9 +90,8 @@ public class ModelOverridesHandler
if (override.contains(":")) if (override.contains(":"))
modidOverride = override.replace(override.substring(override.indexOf(":")), ""); modidOverride = override.replace(override.substring(override.indexOf(":")), "");
if (Loader.isModLoaded(modidOverride) && Loader.isModLoaded(modidToOverride)) if ((Loader.isModLoaded(modidOverride) && Loader.isModLoaded(modidToOverride)) || (modidOverride.equals("minecraft") && modidToOverride.equals("minecraft")))
{ {
int meta = StringParser.getMeta(toOverride); int meta = StringParser.getMeta(toOverride);
if (meta == 0) if (meta == 0)
toOverrideObject = StringParser.getBlock(toOverride); toOverrideObject = StringParser.getBlock(toOverride);
@ -100,7 +99,7 @@ public class ModelOverridesHandler
toOverrideObject = StringParser.getBlockState(toOverride); toOverrideObject = StringParser.getBlockState(toOverride);
overrideObject = StringParser.getItem(override); overrideObject = StringParser.getItem(override);
if (Block.getBlockFromItem((Item) overrideObject) != Blocks.AIR) if (Block.getBlockFromItem((Item) overrideObject) != null)
overrideObject = StringParser.getItemStack(override); overrideObject = StringParser.getItemStack(override);
else else
overrideObject = StringParser.getBlockState(override); overrideObject = StringParser.getBlockState(override);

View File

@ -13,6 +13,7 @@ import net.minecraft.nbt.NBTTagCompound;
public class StringParser public class StringParser
{ {
@Nullable
public static Block getBlock(String string) public static Block getBlock(String string)
{ {
NBTTagCompound tag = getTagCompound(string); NBTTagCompound tag = getTagCompound(string);

View File

@ -4,6 +4,8 @@ import java.util.Arrays;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import javax.annotation.Nullable;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.BlockDirectional; import net.minecraft.block.BlockDirectional;
import net.minecraft.block.BlockHorizontal; import net.minecraft.block.BlockHorizontal;
@ -46,19 +48,23 @@ public class ItemTile extends Item
@Override @Override
public String getItemStackDisplayName(ItemStack stack) public String getItemStackDisplayName(ItemStack stack)
{ {
if (hasTileData(stack)) if (stack != null)
{ {
return getItemStack(stack).getDisplayName(); if (hasTileData(stack))
{
ItemStack contained = getItemStack(stack);
if (contained != null)
return contained.getDisplayName();
}
} }
return ""; return "";
} }
@Override @Override
public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) public EnumActionResult onItemUse(ItemStack stack, EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ)
{ {
Block block = world.getBlockState(pos).getBlock(); Block block = world.getBlockState(pos).getBlock();
ItemStack stack = player.getHeldItem(hand);
if (hasTileData(stack)) if (hasTileData(stack))
{ {
Vec3d vec = player.getLookVec(); Vec3d vec = player.getLookVec();
@ -78,21 +84,23 @@ public class ItemTile extends Item
if (canPlace) if (canPlace)
{ {
if (player.canPlayerEdit(pos, facing, stack) && world.mayPlace(containedblock, pos2, false, facing, (Entity) null)) boolean canEdit = player.canPlayerEdit(pos2, facing, stack);
boolean canBePlaced = world.canBlockBePlaced(containedblock, pos2, false, facing, (Entity) null, null);
if (canEdit && canBePlaced)
{ {
boolean hasDirection = false; boolean hasDirection = false;
boolean hasAllDirection = false; boolean hasAllDirection = false;
Iterator<IProperty<?>> iterator = containedblock.getDefaultState().getPropertyKeys().iterator(); Iterator<IProperty<?>> iterator = containedblock.getDefaultState().getPropertyNames().iterator();
while (iterator.hasNext()) while (iterator.hasNext())
{ {
IProperty<?> prop = iterator.next(); IProperty<?> prop = iterator.next();
Object[] allowedValues = prop.getAllowedValues().toArray(); Object[] allowedValues = prop.getAllowedValues().toArray();
if (prop instanceof PropertyDirection && this.equal(allowedValues, EnumFacing.HORIZONTALS)) if (prop instanceof PropertyDirection && this.equal(allowedValues, EnumFacing.HORIZONTALS))
hasDirection = true; hasDirection = true;
if(prop instanceof PropertyDirection && this.equal(allowedValues, EnumFacing.VALUES)) if (prop instanceof PropertyDirection && this.equal(allowedValues, EnumFacing.VALUES))
{ {
hasAllDirection = true; hasAllDirection = true;
facing2 = EnumFacing.getFacingFromVector((float) vec.xCoord, (float) vec.yCoord, (float) vec.zCoord); facing2 = EnumFacing.getFacingFromVector((float) vec.xCoord, (float) vec.yCoord, (float) vec.zCoord);
@ -100,7 +108,7 @@ public class ItemTile extends Item
} }
if(hasAllDirection) if (hasAllDirection)
world.setBlockState(pos2, containedstate.withProperty(BlockDirectional.FACING, facing2.getOpposite())); world.setBlockState(pos2, containedstate.withProperty(BlockDirectional.FACING, facing2.getOpposite()));
else if (hasDirection) else if (hasDirection)
world.setBlockState(pos2, containedstate.withProperty(BlockHorizontal.FACING, facing2.getOpposite())); world.setBlockState(pos2, containedstate.withProperty(BlockHorizontal.FACING, facing2.getOpposite()));
@ -115,7 +123,7 @@ public class ItemTile extends Item
} }
clearTileData(stack); clearTileData(stack);
player.playSound(containedblock.getSoundType().getPlaceSound(), 1.0f, 0.5f); player.playSound(containedblock.getSoundType().getPlaceSound(), 1.0f, 0.5f);
player.setHeldItem(hand, ItemStack.EMPTY); player.setHeldItem(hand, null);
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} }
@ -139,7 +147,7 @@ public class ItemTile extends Item
} }
else else
{ {
stack = ItemStack.EMPTY; stack = null;
} }
} }
@ -158,7 +166,7 @@ public class ItemTile extends Item
if (tile == null) if (tile == null)
return false; return false;
if (stack.isEmpty()) if (stack == null)
return false; return false;
NBTTagCompound chest = new NBTTagCompound(); NBTTagCompound chest = new NBTTagCompound();
@ -171,7 +179,7 @@ public class ItemTile extends Item
tag.setTag(TILE_DATA_KEY, chest); tag.setTag(TILE_DATA_KEY, chest);
ItemStack drop = state.getBlock().getItem(tile.getWorld(), tile.getPos(), state); ItemStack drop = state.getBlock().getItem(tile.getWorld(), tile.getPos(), state);
tag.setString("block", state.getBlock().getRegistryName().toString()); tag.setString("block", state.getBlock().getRegistryName().toString());
Item item = Item.getItemFromBlock(state.getBlock()); Item item = Item.getItemFromBlock(state.getBlock());
tag.setInteger("meta", drop.getItemDamage()); tag.setInteger("meta", drop.getItemDamage());
@ -202,6 +210,7 @@ public class ItemTile extends Item
return null; return null;
} }
@Nullable
public static Block getBlock(ItemStack stack) public static Block getBlock(ItemStack stack)
{ {
if (stack.hasTagCompound()) if (stack.hasTagCompound())
@ -210,7 +219,7 @@ public class ItemTile extends Item
String name = tag.getString("block"); String name = tag.getString("block");
return Block.getBlockFromName(name); return Block.getBlockFromName(name);
} }
return Blocks.AIR; return null;
} }
public static int getMeta(ItemStack stack) public static int getMeta(ItemStack stack)
@ -226,9 +235,23 @@ public class ItemTile extends Item
public static ItemStack getItemStack(ItemStack stack) public static ItemStack getItemStack(ItemStack stack)
{ {
return new ItemStack(getBlock(stack), 1, getMeta(stack)); Block block = getBlock(stack);
if (block != null)
{
Item item = Item.getItemFromBlock(block);
if (item != null)
{
ItemStack ret = new ItemStack(item, 1, getMeta(stack));
return ret;
}
return null;
}
else
return null;
} }
public static IBlockState getBlockState(ItemStack stack) public static IBlockState getBlockState(ItemStack stack)
{ {
if (stack.hasTagCompound()) if (stack.hasTagCompound())
@ -239,12 +262,11 @@ public class ItemTile extends Item
} }
return Blocks.AIR.getDefaultState(); return Blocks.AIR.getDefaultState();
} }
public static boolean isLocked(BlockPos pos, World world) public static boolean isLocked(BlockPos pos, World world)
{ {
TileEntity te = world.getTileEntity(pos); TileEntity te = world.getTileEntity(pos);
if(te != null) if (te != null)
{ {
NBTTagCompound tag = new NBTTagCompound(); NBTTagCompound tag = new NBTTagCompound();
te.writeToNBT(tag); te.writeToNBT(tag);
@ -253,29 +275,29 @@ public class ItemTile extends Item
return true; return true;
} }
private boolean equal(Object[] a, Object[] b) private boolean equal(Object[] a, Object[] b)
{ {
if (a.length != b.length) if (a.length != b.length)
return false; return false;
List lA = Arrays.asList(a); List lA = Arrays.asList(a);
List lB = Arrays.asList(b); List lB = Arrays.asList(b);
return lA.containsAll(lB); return lA.containsAll(lB);
} }
private int potionLevel(ItemStack stack) private int potionLevel(ItemStack stack)
{ {
String nbt = getTileData(stack).toString(); String nbt = getTileData(stack).toString();
int i = nbt.length() / 500; int i = nbt.length() / 500;
if(i > 4) if (i > 4)
i = 4; i = 4;
if(!CarryOnConfig.settings.heavyTiles) if (!CarryOnConfig.settings.heavyTiles)
i = 1; i = 1;
return i; return i;
} }
} }

View File

@ -2,7 +2,7 @@
{ {
"modid" : "carryon", "modid" : "carryon",
"name" : "Carry On", "name" : "Carry On",
"version" : "1.0", "mcversion" : "1.11.2", "version" : "1.0", "mcversion" : "1.10.2",
"url" : "", "url" : "",
"credits" : "Tschipp, Purplicious_Cow, cy4n", "credits" : "Tschipp, Purplicious_Cow, cy4n",
"authorList" : ["Tschipp, Purplicious_Cow, cy4n"], "authorList" : ["Tschipp, Purplicious_Cow, cy4n"],