Part models

This commit is contained in:
Sebastian Hartte
2020-06-09 00:53:40 +02:00
parent 4b11b8857b
commit 97e065ea1f
154 changed files with 578 additions and 839 deletions
@@ -6,6 +6,7 @@ import appeng.api.networking.IGridNode;
import appeng.api.networking.energy.IEnergyGrid;
import appeng.api.networking.security.IActionHost;
import appeng.api.networking.security.ISecurityGrid;
import appeng.util.Platform;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.util.text.TextFormatting;
import net.minecraft.util.text.TranslationTextComponent;
@@ -20,36 +21,9 @@ abstract class AbstractContainerHelper {
protected boolean checkPermission(PlayerEntity player, Object accessInterface) {
// FIXME: Check permissions...
if (requiredPermission != null && accessInterface instanceof IActionHost)
if (requiredPermission != null)
{
final IGridNode gn = ( (IActionHost) accessInterface ).getActionableNode();
if( gn != null )
{
final IGrid g = gn.getGrid();
if( g != null )
{
final boolean requirePower = false;
if( requirePower )
{
final IEnergyGrid eg = g.getCache( IEnergyGrid.class );
if( !eg.isNetworkPowered() )
{
// FIXME trace logging?
return false;
}
}
final ISecurityGrid sg = g.getCache( ISecurityGrid.class );
if( !sg.hasPermission( player, this.requiredPermission ) )
{
player.sendMessage(new TranslationTextComponent("appliedenergistics2.permission_denied")
.applyTextStyle(TextFormatting.RED));
// FIXME trace logging?
return false;
}
}
}
return Platform.checkPermissions(player, accessInterface, requiredPermission, true);
}
return true;
@@ -29,8 +29,6 @@ public final class PartContainerHelper<C extends AEBaseContainer, P extends IPar
private final ContainerFactory<P, C> factory;
private final SecurityPermissions requiredPermission;
public PartContainerHelper(ContainerFactory<P, C> factory, Class<P> partClass) {
this(factory, partClass, null);
}
@@ -39,7 +37,6 @@ public final class PartContainerHelper<C extends AEBaseContainer, P extends IPar
super(requiredPermission);
this.partClass = partClass;
this.factory = factory;
this.requiredPermission = requiredPermission;
}
/**
@@ -88,11 +85,6 @@ public final class PartContainerHelper<C extends AEBaseContainer, P extends IPar
// FIXME: this is not right, we'd need to check the part's item stack, or custom naming interface impl
ITextComponent title = player.world.getBlockState(locator.getBlockPos()).getBlock().getNameTextComponent();
// FIXME: Check permissions...
if (requiredPermission != null) {
throw new IllegalStateException(); // NOT YET IMPLEMENTED
}
INamedContainerProvider container = new SimpleNamedContainerProvider(
(wnd, p, pl) -> {
C c = factory.create(wnd, p, actualPart);
@@ -36,8 +36,6 @@ public final class PartOrTileContainerHelper<C extends AEBaseContainer, I> exten
private final ContainerFactory<C, I> factory;
private final SecurityPermissions requiredPermission;
public PartOrTileContainerHelper(ContainerFactory<C, I> factory, Class<I> interfaceClass) {
this(factory, interfaceClass, null);
}
@@ -46,7 +44,6 @@ public final class PartOrTileContainerHelper<C extends AEBaseContainer, I> exten
super(requiredPermission);
this.interfaceClass = interfaceClass;
this.factory = factory;
this.requiredPermission = requiredPermission;
}
/**