From 054524754dbacad26805974b055d84cc7ce277d5 Mon Sep 17 00:00:00 2001 From: asiekierka Date: Wed, 29 Oct 2014 09:33:27 +0100 Subject: [PATCH] fix license headers, restore IOverrideDefaultStatements --- api/buildcraft/api/gates/IGate.java | 8 ++++++++ .../api/statements/IActionExternal.java | 8 ++++++++ .../api/statements/IActionInternal.java | 8 ++++++++ .../statements/IOverrideDefaultStatements.java | 16 ++++++++++++++++ .../api/statements/IStatementContainer.java | 8 ++++++++ .../api/statements/ITriggerExternal.java | 8 ++++++++ .../api/statements/StatementManager.java | 18 +++++++++++++++++- 7 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 api/buildcraft/api/statements/IOverrideDefaultStatements.java diff --git a/api/buildcraft/api/gates/IGate.java b/api/buildcraft/api/gates/IGate.java index 622511f6..2018cb44 100644 --- a/api/buildcraft/api/gates/IGate.java +++ b/api/buildcraft/api/gates/IGate.java @@ -1,3 +1,11 @@ +/** + * Copyright (c) 2011-2014, SpaceToad and the BuildCraft Team + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ package buildcraft.api.gates; import net.minecraftforge.common.util.ForgeDirection; diff --git a/api/buildcraft/api/statements/IActionExternal.java b/api/buildcraft/api/statements/IActionExternal.java index 02ec3b8d..6bb0ad1b 100644 --- a/api/buildcraft/api/statements/IActionExternal.java +++ b/api/buildcraft/api/statements/IActionExternal.java @@ -1,3 +1,11 @@ +/** + * Copyright (c) 2011-2014, SpaceToad and the BuildCraft Team + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ package buildcraft.api.statements; import net.minecraft.tileentity.TileEntity; diff --git a/api/buildcraft/api/statements/IActionInternal.java b/api/buildcraft/api/statements/IActionInternal.java index 4174f89b..21f2c7f8 100644 --- a/api/buildcraft/api/statements/IActionInternal.java +++ b/api/buildcraft/api/statements/IActionInternal.java @@ -1,3 +1,11 @@ +/** + * Copyright (c) 2011-2014, SpaceToad and the BuildCraft Team + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ package buildcraft.api.statements; public interface IActionInternal extends IStatement { diff --git a/api/buildcraft/api/statements/IOverrideDefaultStatements.java b/api/buildcraft/api/statements/IOverrideDefaultStatements.java new file mode 100644 index 00000000..22d86ebc --- /dev/null +++ b/api/buildcraft/api/statements/IOverrideDefaultStatements.java @@ -0,0 +1,16 @@ +/** + * Copyright (c) 2011-2014, SpaceToad and the BuildCraft Team + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ +package buildcraft.api.statements; + +import java.util.List; + +public interface IOverrideDefaultStatements { + List overrideTriggers(); + List overrideActions(); +} diff --git a/api/buildcraft/api/statements/IStatementContainer.java b/api/buildcraft/api/statements/IStatementContainer.java index 1a512694..f258b341 100644 --- a/api/buildcraft/api/statements/IStatementContainer.java +++ b/api/buildcraft/api/statements/IStatementContainer.java @@ -1,3 +1,11 @@ +/** + * Copyright (c) 2011-2014, SpaceToad and the BuildCraft Team + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ package buildcraft.api.statements; import net.minecraft.tileentity.TileEntity; diff --git a/api/buildcraft/api/statements/ITriggerExternal.java b/api/buildcraft/api/statements/ITriggerExternal.java index 5cf0eb11..9167761c 100644 --- a/api/buildcraft/api/statements/ITriggerExternal.java +++ b/api/buildcraft/api/statements/ITriggerExternal.java @@ -1,3 +1,11 @@ +/** + * Copyright (c) 2011-2014, SpaceToad and the BuildCraft Team + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ package buildcraft.api.statements; import net.minecraft.tileentity.TileEntity; diff --git a/api/buildcraft/api/statements/StatementManager.java b/api/buildcraft/api/statements/StatementManager.java index 25ebd9c0..4a695412 100644 --- a/api/buildcraft/api/statements/StatementManager.java +++ b/api/buildcraft/api/statements/StatementManager.java @@ -56,8 +56,17 @@ public final class StatementManager { } public static List getExternalTriggers(ForgeDirection side, TileEntity entity) { - List result = new LinkedList(); + List result; + if (entity instanceof IOverrideDefaultStatements) { + result = ((IOverrideDefaultStatements) entity).overrideTriggers(); + if (result != null) { + return result; + } + } + + result = new LinkedList(); + for (ITriggerProvider provider : triggerProviders) { Collection toAdd = provider.getExternalTriggers(side, entity); @@ -76,6 +85,13 @@ public final class StatementManager { public static List getExternalActions(ForgeDirection side, TileEntity entity) { List result = new LinkedList(); + if (entity instanceof IOverrideDefaultStatements) { + result = ((IOverrideDefaultStatements) entity).overrideActions(); + if (result != null) { + return result; + } + } + for (IActionProvider provider : actionProviders) { Collection toAdd = provider.getExternalActions(side, entity);