From 1b72abb2b4a7c845a2d3f105f5cdabf69ea9550f Mon Sep 17 00:00:00 2001 From: Stan Hebben Date: Sun, 20 Jul 2014 21:30:40 +0200 Subject: [PATCH] - Basic types can now be converted to the "any" type - Changed OreDict 'contains' to respond to the 'in' operator --- .../api/oredict/IOreDictEntry.java | 4 +- .../minetweaker/mc164/server/MCServer.java | 1 + .../minetweaker/mc172/server/MCServer.java | 1 - .../gregtech/machines/Amplifabricator.java | 7 + MineTweaker3-Web/about.html | 1 + MineTweaker3-Web/index.html | 13 +- .../stanhebben/zenscript/TypeExpansion.java | 69 +++ .../java/stanhebben/zenscript/ZenModule.java | 11 +- .../zenscript/compiler/TypeRegistry.java | 6 +- .../zenscript/expression/Expression.java | 7 +- .../ExpressionArithmeticBinary.java | 2 +- .../ExpressionArithmeticCompare.java | 4 +- .../expression/ExpressionArithmeticUnary.java | 2 +- .../zenscript/expression/ExpressionAs.java | 5 +- .../zenscript/expression/ExpressionBool.java | 14 +- .../expression/ExpressionCompareGeneric.java | 2 +- .../zenscript/expression/ExpressionFloat.java | 2 +- .../zenscript/expression/ExpressionInt.java | 2 +- .../expression/ExpressionMapContains.java | 2 +- .../zenscript/parser/ParseException.java | 6 +- .../zenscript/parser/TokenException.java | 8 +- .../zenscript/parser/TokenStream.java | 9 +- .../zenscript/statements/StatementIf.java | 2 +- .../stanhebben/zenscript/type/ZenType.java | 6 +- .../stanhebben/zenscript/type/ZenTypeAny.java | 220 +++------- .../zenscript/type/ZenTypeArrayBasic.java | 5 + .../zenscript/type/ZenTypeArrayList.java | 5 + .../zenscript/type/ZenTypeAssociative.java | 5 + .../zenscript/type/ZenTypeBool.java | 381 +++++++++++++++- .../zenscript/type/ZenTypeBoolObject.java | 28 +- .../zenscript/type/ZenTypeByte.java | 411 ++++++++++++++++- .../zenscript/type/ZenTypeByteObject.java | 26 ++ .../zenscript/type/ZenTypeDouble.java | 384 ++++++++++++++++ .../zenscript/type/ZenTypeDoubleObject.java | 26 ++ .../zenscript/type/ZenTypeFloat.java | 386 +++++++++++++++- .../zenscript/type/ZenTypeFloatObject.java | 26 ++ .../zenscript/type/ZenTypeFunction.java | 5 + .../stanhebben/zenscript/type/ZenTypeInt.java | 409 +++++++++++++++++ .../zenscript/type/ZenTypeIntObject.java | 26 ++ .../zenscript/type/ZenTypeIntRange.java | 5 + .../zenscript/type/ZenTypeLong.java | 412 ++++++++++++++++++ .../zenscript/type/ZenTypeLongObject.java | 26 ++ .../zenscript/type/ZenTypeNative.java | 5 + .../zenscript/type/ZenTypeNull.java | 5 + .../zenscript/type/ZenTypeShort.java | 409 +++++++++++++++++ .../zenscript/type/ZenTypeShortObject.java | 26 ++ .../zenscript/type/ZenTypeString.java | 353 ++++++++++++++- .../zenscript/type/ZenTypeVoid.java | 5 + .../type/expand/ZenExpandCaster.java | 6 +- .../zenscript/type/natives/JavaMethod.java | 3 + .../zenscript/util/MethodOutput.java | 23 + .../zenscript/util/ZenPosition.java | 2 + .../zenscript/util/ZenTypeUtil.java | 4 + .../java/stanhebben/zenscript/value/IAny.java | 21 +- .../stanhebben/zenscript/value/IntRange.java | 10 +- .../zenscript/value/builtin/AnyByte.java | 177 -------- .../zenscript/value/builtin/AnyInt.java | 177 -------- .../zenscript/value/builtin/AnyIntRange.java | 181 -------- .../zenscript/value/builtin/AnyString.java | 192 -------- 59 files changed, 3595 insertions(+), 976 deletions(-) delete mode 100644 ZenScript/src/main/java/stanhebben/zenscript/value/builtin/AnyByte.java delete mode 100644 ZenScript/src/main/java/stanhebben/zenscript/value/builtin/AnyInt.java delete mode 100644 ZenScript/src/main/java/stanhebben/zenscript/value/builtin/AnyIntRange.java delete mode 100644 ZenScript/src/main/java/stanhebben/zenscript/value/builtin/AnyString.java diff --git a/MineTweaker3-API/src/main/java/minetweaker/api/oredict/IOreDictEntry.java b/MineTweaker3-API/src/main/java/minetweaker/api/oredict/IOreDictEntry.java index 8e46da2..2f9c89b 100644 --- a/MineTweaker3-API/src/main/java/minetweaker/api/oredict/IOreDictEntry.java +++ b/MineTweaker3-API/src/main/java/minetweaker/api/oredict/IOreDictEntry.java @@ -8,9 +8,11 @@ package minetweaker.api.oredict; import minetweaker.api.item.IIngredient; import minetweaker.api.item.IItemStack; +import stanhebben.zenscript.annotations.OperatorType; import stanhebben.zenscript.annotations.ZenClass; import stanhebben.zenscript.annotations.ZenGetter; import stanhebben.zenscript.annotations.ZenMethod; +import stanhebben.zenscript.annotations.ZenOperator; /** * @@ -33,7 +35,7 @@ public interface IOreDictEntry extends IIngredient { @ZenMethod public void remove(IItemStack item); - @ZenMethod + @ZenOperator(OperatorType.CONTAINS) public boolean contains(IItemStack item); @ZenMethod diff --git a/MineTweaker3-MC164-Main/src/main/java/minetweaker/mc164/server/MCServer.java b/MineTweaker3-MC164-Main/src/main/java/minetweaker/mc164/server/MCServer.java index 976969d..7b02c12 100644 --- a/MineTweaker3-MC164-Main/src/main/java/minetweaker/mc164/server/MCServer.java +++ b/MineTweaker3-MC164-Main/src/main/java/minetweaker/mc164/server/MCServer.java @@ -60,6 +60,7 @@ public class MCServer extends AbstractServer { if (commandSender instanceof EntityPlayer) { return MineTweakerMC.getIPlayer((EntityPlayer) commandSender); } else { + System.out.println("No such player: " + commandSender); return null; } } diff --git a/MineTweaker3-MC172-Main/src/main/java/minetweaker/mc172/server/MCServer.java b/MineTweaker3-MC172-Main/src/main/java/minetweaker/mc172/server/MCServer.java index 08817af..4c6e952 100644 --- a/MineTweaker3-MC172-Main/src/main/java/minetweaker/mc172/server/MCServer.java +++ b/MineTweaker3-MC172-Main/src/main/java/minetweaker/mc172/server/MCServer.java @@ -10,7 +10,6 @@ import java.util.Arrays; import java.util.List; import minetweaker.IUndoableAction; import minetweaker.MineTweakerAPI; -import minetweaker.MineTweakerImplementationAPI; import minetweaker.api.minecraft.MineTweakerMC; import minetweaker.api.player.IPlayer; import minetweaker.api.server.AbstractServer; diff --git a/MineTweaker3-MC172-Mod-GregTech/src/main/java/minetweaker/mods/gregtech/machines/Amplifabricator.java b/MineTweaker3-MC172-Mod-GregTech/src/main/java/minetweaker/mods/gregtech/machines/Amplifabricator.java index f450228..64ecb5d 100644 --- a/MineTweaker3-MC172-Mod-GregTech/src/main/java/minetweaker/mods/gregtech/machines/Amplifabricator.java +++ b/MineTweaker3-MC172-Mod-GregTech/src/main/java/minetweaker/mods/gregtech/machines/Amplifabricator.java @@ -18,6 +18,13 @@ import stanhebben.zenscript.annotations.ZenMethod; @ZenClass("mods.gregtech.Amplifabricator") @ModOnly(MOD_ID) public class Amplifabricator { + /** + * Adds an amplifier. + * + * @param item amplifier item + * @param durationTicks duration in ticks + * @param amount amplification amount + */ @ZenMethod public static void addAmplifier(IItemStack item, int durationTicks, int amount) { MineTweakerAPI.apply(new AddAmplifierAction(item, durationTicks, amount)); diff --git a/MineTweaker3-Web/about.html b/MineTweaker3-Web/about.html index 7534aae..fa1b8c4 100644 --- a/MineTweaker3-Web/about.html +++ b/MineTweaker3-Web/about.html @@ -41,6 +41,7 @@