Moved some packages to more logical places and aligned implementation with api package structure.
This commit is contained in:
@@ -2,9 +2,9 @@ package li.cil.oc2.api;
|
||||
|
||||
import com.google.gson.GsonBuilder;
|
||||
import li.cil.oc2.api.bus.device.object.Callback;
|
||||
import li.cil.oc2.api.bus.device.provider.DeviceProvider;
|
||||
import li.cil.oc2.api.bus.device.rpc.RPCMethod;
|
||||
import li.cil.oc2.api.imc.RPCMethodParameterTypeAdapter;
|
||||
import li.cil.oc2.api.provider.DeviceProvider;
|
||||
|
||||
import java.lang.reflect.Type;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package li.cil.oc2.api.provider;
|
||||
package li.cil.oc2.api.bus.device.provider;
|
||||
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
@@ -1,4 +1,4 @@
|
||||
package li.cil.oc2.api.provider;
|
||||
package li.cil.oc2.api.bus.device.provider;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.bus.device.object.ObjectDevice;
|
||||
@@ -1,4 +1,4 @@
|
||||
package li.cil.oc2.api.provider;
|
||||
package li.cil.oc2.api.bus.device.provider;
|
||||
|
||||
/**
|
||||
* Base interface for all queries to {@link DeviceProvider}s.
|
||||
@@ -1,6 +1,6 @@
|
||||
@ParametersAreNonnullByDefault
|
||||
@MethodsReturnNonnullByDefault
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.api.bus.device.provider;
|
||||
|
||||
import mcp.MethodsReturnNonnullByDefault;
|
||||
|
||||
@@ -2,7 +2,7 @@ package li.cil.oc2.api.bus.device.rpc;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.bus.device.object.ObjectDevice;
|
||||
import li.cil.oc2.api.provider.DeviceProvider;
|
||||
import li.cil.oc2.api.bus.device.provider.DeviceProvider;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@@ -9,12 +9,12 @@ import li.cil.oc2.api.API;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.audio.SimpleSound;
|
||||
import net.minecraft.client.renderer.BufferBuilder;
|
||||
import net.minecraft.util.math.vector.Matrix4f;
|
||||
import net.minecraft.client.renderer.Tessellator;
|
||||
import net.minecraft.client.renderer.WorldVertexBufferUploader;
|
||||
import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
|
||||
import net.minecraft.state.properties.NoteBlockInstrument;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.math.vector.Matrix4f;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package li.cil.oc2.common;
|
||||
|
||||
import li.cil.oc2.common.bus.device.provider.Providers;
|
||||
import li.cil.oc2.common.bus.device.rpc.RPCMethodParameterTypeAdapters;
|
||||
import li.cil.oc2.common.capabilities.Capabilities;
|
||||
import li.cil.oc2.common.device.RPCMethodParameterTypeAdapters;
|
||||
import li.cil.oc2.common.device.provider.Providers;
|
||||
import li.cil.oc2.common.network.Network;
|
||||
import li.cil.oc2.common.vm.Allocator;
|
||||
import li.cil.oc2.serialization.BlobStorage;
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package li.cil.oc2.common;
|
||||
|
||||
import li.cil.oc2.api.API;
|
||||
import li.cil.oc2.api.bus.device.provider.DeviceProvider;
|
||||
import li.cil.oc2.api.imc.RPCMethodParameterTypeAdapter;
|
||||
import li.cil.oc2.api.provider.DeviceProvider;
|
||||
import li.cil.oc2.common.device.RPCMethodParameterTypeAdapters;
|
||||
import li.cil.oc2.common.device.provider.Providers;
|
||||
import li.cil.oc2.common.bus.device.provider.Providers;
|
||||
import li.cil.oc2.common.bus.device.rpc.RPCMethodParameterTypeAdapters;
|
||||
import net.minecraft.util.Util;
|
||||
import net.minecraftforge.fml.InterModComms;
|
||||
import net.minecraftforge.fml.event.lifecycle.InterModProcessEvent;
|
||||
|
||||
@@ -8,8 +8,8 @@ import li.cil.oc2.api.bus.DeviceBusController;
|
||||
import li.cil.oc2.api.bus.device.rpc.RPCDevice;
|
||||
import li.cil.oc2.api.bus.device.rpc.RPCMethod;
|
||||
import li.cil.oc2.api.bus.device.rpc.RPCParameter;
|
||||
import li.cil.oc2.common.device.RPCMethodParameterTypeAdapters;
|
||||
import li.cil.oc2.common.device.RPCDeviceList;
|
||||
import li.cil.oc2.common.bus.device.rpc.RPCDeviceList;
|
||||
import li.cil.oc2.common.bus.device.rpc.RPCMethodParameterTypeAdapters;
|
||||
import li.cil.oc2.serialization.serializers.MessageJsonDeserializer;
|
||||
import li.cil.oc2.serialization.serializers.MethodInvocationJsonDeserializer;
|
||||
import li.cil.oc2.serialization.serializers.RPCDeviceWithIdentifierJsonSerializer;
|
||||
|
||||
@@ -5,8 +5,8 @@ import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.bus.DeviceBus;
|
||||
import li.cil.oc2.api.bus.DeviceBusElement;
|
||||
import li.cil.oc2.common.ServerScheduler;
|
||||
import li.cil.oc2.common.bus.device.provider.Providers;
|
||||
import li.cil.oc2.common.capabilities.Capabilities;
|
||||
import li.cil.oc2.common.device.provider.Providers;
|
||||
import li.cil.oc2.common.util.WorldUtils;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.Direction;
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.bus.device.object.Callback;
|
||||
import li.cil.oc2.api.bus.device.object.ObjectDevice;
|
||||
import li.cil.oc2.api.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.common.bus.device.provider.util.AbstractCapabilityAnyTileEntityDeviceProvider;
|
||||
import li.cil.oc2.common.bus.device.provider.util.AbstractObjectProxy;
|
||||
import li.cil.oc2.common.capabilities.Capabilities;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
import net.minecraftforge.energy.IEnergyStorage;
|
||||
@@ -1,9 +1,11 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.bus.device.object.Callback;
|
||||
import li.cil.oc2.api.bus.device.object.ObjectDevice;
|
||||
import li.cil.oc2.api.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.common.bus.device.provider.util.AbstractCapabilityAnyTileEntityDeviceProvider;
|
||||
import li.cil.oc2.common.bus.device.provider.util.AbstractObjectProxy;
|
||||
import li.cil.oc2.common.capabilities.Capabilities;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
@@ -1,9 +1,11 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.bus.device.object.Callback;
|
||||
import li.cil.oc2.api.bus.device.object.ObjectDevice;
|
||||
import li.cil.oc2.api.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.common.bus.device.provider.util.AbstractCapabilityAnyTileEntityDeviceProvider;
|
||||
import li.cil.oc2.common.bus.device.provider.util.AbstractObjectProxy;
|
||||
import li.cil.oc2.common.capabilities.Capabilities;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
@@ -1,15 +1,18 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.provider.DeviceProvider;
|
||||
import li.cil.oc2.api.provider.DeviceQuery;
|
||||
import li.cil.oc2.common.device.BlockDeviceQueryImpl;
|
||||
import li.cil.oc2.api.bus.device.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.DeviceProvider;
|
||||
import li.cil.oc2.api.bus.device.provider.DeviceQuery;
|
||||
import li.cil.oc2.common.bus.device.provider.util.BlockDeviceProvider;
|
||||
import li.cil.oc2.common.bus.device.provider.util.TileEntityDeviceProvider;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@@ -40,7 +43,7 @@ public final class Providers {
|
||||
}
|
||||
|
||||
public static List<LazyOptional<Device>> getDevices(final World world, final BlockPos pos, final Direction side) {
|
||||
return getDevices(new BlockDeviceQueryImpl(world, pos, side));
|
||||
return getDevices(new BlockQuery(world, pos, side));
|
||||
}
|
||||
|
||||
public static List<LazyOptional<Device>> getDevices(final DeviceQuery query) {
|
||||
@@ -53,4 +56,32 @@ public final class Providers {
|
||||
}
|
||||
return devices;
|
||||
}
|
||||
|
||||
private static class BlockQuery implements BlockDeviceQuery {
|
||||
private final World world;
|
||||
private final BlockPos pos;
|
||||
@Nullable private final Direction side;
|
||||
|
||||
public BlockQuery(final World world, final BlockPos pos, @Nullable final Direction side) {
|
||||
this.world = world;
|
||||
this.pos = pos;
|
||||
this.side = side;
|
||||
}
|
||||
|
||||
@Override
|
||||
public World getWorld() {
|
||||
return world;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockPos getQueryPosition() {
|
||||
return pos;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Direction getQuerySide() {
|
||||
return side;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
@ParametersAreNonnullByDefault
|
||||
@MethodsReturnNonnullByDefault
|
||||
package li.cil.oc2.common.device;
|
||||
package li.cil.oc2.common.bus.device.provider;
|
||||
|
||||
import mcp.MethodsReturnNonnullByDefault;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider.util;
|
||||
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraftforge.common.capabilities.Capability;
|
||||
@@ -1,7 +1,7 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider.util;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.BlockDeviceQuery;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraftforge.common.capabilities.Capability;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
@@ -1,4 +1,4 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider.util;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Objects;
|
||||
@@ -1,9 +1,9 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider.util;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.provider.DeviceProvider;
|
||||
import li.cil.oc2.api.provider.DeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.DeviceProvider;
|
||||
import li.cil.oc2.api.bus.device.provider.DeviceQuery;
|
||||
import li.cil.oc2.common.util.WorldUtils;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
@@ -1,11 +1,11 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider.util;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.bus.device.object.Callbacks;
|
||||
import li.cil.oc2.api.bus.device.object.ObjectDevice;
|
||||
import li.cil.oc2.api.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.provider.DeviceProvider;
|
||||
import li.cil.oc2.api.provider.DeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.DeviceProvider;
|
||||
import li.cil.oc2.api.bus.device.provider.DeviceQuery;
|
||||
import li.cil.oc2.common.util.WorldUtils;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
@@ -20,7 +20,7 @@ public class BlockDeviceProvider implements DeviceProvider {
|
||||
|
||||
final BlockDeviceQuery blockQuery = (BlockDeviceQuery) query;
|
||||
final BlockState blockState = blockQuery.getWorld().getBlockState(blockQuery.getQueryPosition());
|
||||
if (blockState.isAir(blockQuery.getWorld(), blockQuery.getQueryPosition())) {
|
||||
if (blockState.getBlock().isAir(blockState, blockQuery.getWorld(), blockQuery.getQueryPosition())) {
|
||||
return LazyOptional.empty();
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package li.cil.oc2.common.device.provider;
|
||||
package li.cil.oc2.common.bus.device.provider.util;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.bus.device.object.Callbacks;
|
||||
import li.cil.oc2.api.bus.device.object.ObjectDevice;
|
||||
import li.cil.oc2.api.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.api.bus.device.provider.BlockDeviceQuery;
|
||||
import li.cil.oc2.common.util.WorldUtils;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraftforge.common.util.LazyOptional;
|
||||
@@ -0,0 +1,7 @@
|
||||
@ParametersAreNonnullByDefault
|
||||
@MethodsReturnNonnullByDefault
|
||||
package li.cil.oc2.common.bus.device.provider.util;
|
||||
|
||||
import mcp.MethodsReturnNonnullByDefault;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
@@ -1,4 +1,4 @@
|
||||
package li.cil.oc2.common.device;
|
||||
package li.cil.oc2.common.bus.device.rpc;
|
||||
|
||||
import li.cil.oc2.api.bus.device.rpc.RPCDevice;
|
||||
import li.cil.oc2.api.bus.device.rpc.RPCMethod;
|
||||
@@ -1,4 +1,4 @@
|
||||
package li.cil.oc2.common.device;
|
||||
package li.cil.oc2.common.bus.device.rpc;
|
||||
|
||||
import com.google.gson.GsonBuilder;
|
||||
import li.cil.oc2.api.imc.RPCMethodParameterTypeAdapter;
|
||||
@@ -1,6 +1,6 @@
|
||||
@ParametersAreNonnullByDefault
|
||||
@MethodsReturnNonnullByDefault
|
||||
package li.cil.oc2.api.provider;
|
||||
package li.cil.oc2.common.bus.device.rpc;
|
||||
|
||||
import mcp.MethodsReturnNonnullByDefault;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package li.cil.oc2.common.capabilities;
|
||||
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import li.cil.oc2.api.bus.DeviceBusController;
|
||||
import li.cil.oc2.api.bus.DeviceBusElement;
|
||||
import li.cil.oc2.api.bus.Device;
|
||||
import net.minecraftforge.common.capabilities.CapabilityManager;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
package li.cil.oc2.common.device;
|
||||
|
||||
import li.cil.oc2.api.provider.BlockDeviceQuery;
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public class BlockDeviceQueryImpl implements BlockDeviceQuery {
|
||||
private final World world;
|
||||
private final BlockPos pos;
|
||||
@Nullable private final Direction side;
|
||||
|
||||
public BlockDeviceQueryImpl(final World world, final BlockPos pos, @Nullable final Direction side) {
|
||||
this.world = world;
|
||||
this.pos = pos;
|
||||
this.side = side;
|
||||
}
|
||||
|
||||
@Override
|
||||
public World getWorld() {
|
||||
return world;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockPos getQueryPosition() {
|
||||
return pos;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Direction getQuerySide() {
|
||||
return side;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user