diff --git a/src/main/java/carpet/CarpetServer.java b/src/main/java/carpet/CarpetServer.java index 5c5c3fd0..825b221f 100644 --- a/src/main/java/carpet/CarpetServer.java +++ b/src/main/java/carpet/CarpetServer.java @@ -13,6 +13,7 @@ import carpet.settings.SettingsManager; import carpet.utils.HUDController; import carpet.utils.MobAI; import com.mojang.brigadier.CommandDispatcher; +import net.fabricmc.loader.api.FabricLoader; import net.minecraft.server.command.ServerCommandSource; import net.minecraft.server.MinecraftServer; import net.minecraft.server.network.ServerPlayerEntity; @@ -94,7 +95,9 @@ public class CarpetServer // static for now - easier to handle all around the co // for all other, they will have them registered when they add themselves extensions.forEach(e -> e.registerCommands(dispatcher)); currentCommandDispatcher = dispatcher; - //TestCommand.register(dispatcher); + + if (FabricLoader.getInstance().isDevelopmentEnvironment()) + TestCommand.register(dispatcher); } public static void onPlayerLoggedIn(ServerPlayerEntity player) diff --git a/src/main/java/carpet/script/CarpetExpression.java b/src/main/java/carpet/script/CarpetExpression.java index ccfaaa71..f3aa888c 100644 --- a/src/main/java/carpet/script/CarpetExpression.java +++ b/src/main/java/carpet/script/CarpetExpression.java @@ -388,7 +388,7 @@ public class CarpetExpression } } - public void API_BlockManipulation() + private void API_BlockManipulation() { this.expr.addLazyFunction("block", -1, (c, t, lv) -> { @@ -1260,7 +1260,7 @@ public class CarpetExpression } - public void API_Scoreboard() + private void API_Scoreboard() { // scoreboard(player,'objective') // scoreboard(player, objective, newValue) @@ -1373,7 +1373,7 @@ public class CarpetExpression }); } - public void API_InventoryManipulation() + private void API_InventoryManipulation() { this.expr.addLazyFunction("stack_limit", 1, (c, t, lv) -> { @@ -1645,7 +1645,7 @@ public class CarpetExpression } } - public void API_EntityManipulation() + private void API_EntityManipulation() { this.expr.addLazyFunction("player", -1, (c, t, lv) -> { if (lv.size() ==0) @@ -1907,7 +1907,7 @@ public class CarpetExpression }); } - public void API_IteratingOverAreasOfBlocks() + private void API_IteratingOverAreasOfBlocks() { this.expr.addLazyFunction("scan", -1, (c, t, lv) -> { @@ -2346,7 +2346,7 @@ public class CarpetExpression }); } - public void API_AuxiliaryAspects() + private void API_AuxiliaryAspects() { this.expr.addLazyFunction("sound", -1, (c, t, lv) -> { CarpetContext cc = (CarpetContext)c; diff --git a/src/main/java/carpet/script/Expression.java b/src/main/java/carpet/script/Expression.java index 724ea9ce..cfb3380b 100644 --- a/src/main/java/carpet/script/Expression.java +++ b/src/main/java/carpet/script/Expression.java @@ -79,12 +79,12 @@ public class Expression put("def->", 2); put("nextop;", 1); }}; - protected static final Random randomizer = new Random(); + public static final Random randomizer = new Random(); - static final Value PI = new NumericValue( + public static final Value PI = new NumericValue( "3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679"); - static final Value euler = new NumericValue( + public static final Value euler = new NumericValue( "2.71828182845904523536028747135266249775724709369995957496696762772407663"); // %[argument_index$][flags][width][.precision][t]conversion @@ -105,13 +105,13 @@ public class Expression } - void asATextSource() + public void asATextSource() { allowNewlineSubstitutions = false; allowComments = true; } - void asAModule(Module mi) + public void asAModule(Module mi) { module = mi; @@ -122,7 +122,7 @@ public class Expression /** script specific operatos and built-in functions */ private final Map operators = new Object2ObjectOpenHashMap<>(); - boolean isAnOperator(String opname) { return operators.containsKey(opname) || operators.containsKey(opname+"u");} + public boolean isAnOperator(String opname) { return operators.containsKey(opname) || operators.containsKey(opname+"u");} private final Map functions = new Object2ObjectOpenHashMap<>(); public Set getFunctionNames() {return functions.keySet();} @@ -187,7 +187,7 @@ public class Expression } - private void addLazyUnaryOperator(String surface, int precedence, boolean leftAssoc, + public void addLazyUnaryOperator(String surface, int precedence, boolean leftAssoc, TriFunction lazyfun) { operators.put(surface+"u", new AbstractLazyOperator(precedence, leftAssoc) @@ -213,7 +213,7 @@ public class Expression } - private void addLazyBinaryOperatorWithDelegation(String surface, int precedence, boolean leftAssoc, + public void addLazyBinaryOperatorWithDelegation(String surface, int precedence, boolean leftAssoc, SexFunction lazyfun) { operators.put(surface, new AbstractLazyOperator(precedence, leftAssoc) @@ -234,7 +234,7 @@ public class Expression }); } - private void addLazyFunctionWithDelegation(String name, int numpar, + public void addLazyFunctionWithDelegation(String name, int numpar, QuinnFunction, LazyValue> lazyfun) { functions.put(name, new AbstractLazyFunction(numpar) @@ -254,7 +254,7 @@ public class Expression }); } - private void addLazyBinaryOperator(String surface, int precedence, boolean leftAssoc, + public void addLazyBinaryOperator(String surface, int precedence, boolean leftAssoc, QuadFunction lazyfun) { operators.put(surface, new AbstractLazyOperator(precedence, leftAssoc) @@ -275,7 +275,7 @@ public class Expression }); } - static RuntimeException handleCodeException(Context c, RuntimeException exc, Expression e, Tokenizer.Token token) + public static RuntimeException handleCodeException(Context c, RuntimeException exc, Expression e, Tokenizer.Token token) { if (exc instanceof ExitStatement) return exc; @@ -290,7 +290,7 @@ public class Expression return new ExpressionException(c, e, token, "Error while evaluating expression: "+exc); } - private void addUnaryOperator(String surface, boolean leftAssoc, Function fun) + public void addUnaryOperator(String surface, boolean leftAssoc, Function fun) { operators.put(surface+"u", new AbstractUnaryOperator(precedence.get("unary+-!"), leftAssoc) { @@ -302,7 +302,7 @@ public class Expression }); } - private void addBinaryOperator(String surface, int precedence, boolean leftAssoc, BiFunction fun) + public void addBinaryOperator(String surface, int precedence, boolean leftAssoc, BiFunction fun) { operators.put(surface, new AbstractOperator(precedence, leftAssoc) { @@ -316,7 +316,7 @@ public class Expression } - private void addUnaryFunction(String name, Function fun) + public void addUnaryFunction(String name, Function fun) { name = name.toLowerCase(Locale.ROOT); functions.put(name, new AbstractFunction(1) @@ -329,7 +329,7 @@ public class Expression }); } - void addBinaryFunction(String name, BiFunction fun) + public void addBinaryFunction(String name, BiFunction fun) { name = name.toLowerCase(Locale.ROOT); functions.put(name, new AbstractFunction(2) @@ -345,7 +345,7 @@ public class Expression }); } - private void addFunction(String name, Function, Value> fun) + public void addFunction(String name, Function, Value> fun) { name = name.toLowerCase(Locale.ROOT); functions.put(name, new AbstractFunction(-1) @@ -360,19 +360,19 @@ public class Expression }); } - private void addMathematicalUnaryFunction(String name, Function fun) + public void addMathematicalUnaryFunction(String name, Function fun) { addUnaryFunction(name, (v) -> new NumericValue(fun.apply(NumericValue.asNumber(v).getDouble()))); } - private void addMathematicalBinaryFunction(String name, BiFunction fun) + public void addMathematicalBinaryFunction(String name, BiFunction fun) { addBinaryFunction(name, (w, v) -> new NumericValue(fun.apply(NumericValue.asNumber(w).getDouble(), NumericValue.asNumber(v).getDouble()))); } - void addLazyFunction(String name, int num_params, TriFunction, LazyValue> fun) + public void addLazyFunction(String name, int num_params, TriFunction, LazyValue> fun) { name = name.toLowerCase(Locale.ROOT); functions.put(name, new AbstractLazyFunction(num_params) @@ -391,7 +391,7 @@ public class Expression } }); } - private FunctionValue addContextFunction(Context context, String name, Expression expr, Tokenizer.Token token, List arguments, List outers, LazyValue code) + public FunctionValue addContextFunction(Context context, String name, Expression expr, Tokenizer.Token token, List arguments, List outers, LazyValue code) { name = name.toLowerCase(Locale.ROOT); if (functions.containsKey(name)) @@ -417,7 +417,7 @@ public class Expression return result; } - public void UserDefinedFunctionsAndControlFlow() // public just to get the javadoc right + private void UserDefinedFunctionsAndControlFlow() // public just to get the javadoc right { // artificial construct to handle user defined functions and function definitions addLazyFunction("import", -1, (c, t, lv) -> @@ -549,7 +549,7 @@ public class Expression }); } - public void Operators() + private void Operators() { addBinaryOperator("+", precedence.get("addition+-"), true, Value::add); addBinaryOperator("-", precedence.get("addition+-"), true, Value::subtract); @@ -724,7 +724,7 @@ public class Expression } - public void ArithmeticOperations() + private void ArithmeticOperations() { addLazyFunction("not", 1, (c, t, lv) -> lv.get(0).evalValue(c, Context.BOOLEAN).getBoolean() ? ((cc, tt) -> Value.FALSE) : ((cc, tt) -> Value.TRUE)); @@ -825,7 +825,7 @@ public class Expression addUnaryFunction("relu", (v) -> v.compareTo(Value.ZERO) < 0 ? Value.ZERO : v); } - public void LoopsAndHigherOrderFunctions() + private void LoopsAndHigherOrderFunctions() { // condition and expression will get a bound '_i' // returns last successful expression or false @@ -1217,7 +1217,7 @@ public class Expression }); } - public void BasicDataStructures() + private void BasicDataStructures() { addFunction("l", lv -> { @@ -1523,7 +1523,7 @@ public class Expression }); } - public void SystemFunctions() + private void SystemFunctions() { addUnaryFunction("hash_code", v -> new NumericValue(v.hashCode())); @@ -1966,7 +1966,7 @@ public class Expression } } - private LazyValue getOrSetAnyVariable(Context c, String name) + public LazyValue getOrSetAnyVariable(Context c, String name) { LazyValue var = null; if (!name.startsWith("global_")) @@ -2166,11 +2166,11 @@ public class Expression } } - Value eval(Context c) + public Value eval(Context c) { return eval(c, Context.NONE); } - private Value eval(Context c, Integer expectedType) + public Value eval(Context c, Integer expectedType) { if (ast == null) { @@ -2179,7 +2179,7 @@ public class Expression return evalValue(() -> ast, c, expectedType); } - Value evalValue(Supplier exprProvider, Context c, Integer expectedType) + public Value evalValue(Supplier exprProvider, Context c, Integer expectedType) { try {