diff options
Diffstat (limited to 'Shenanigans/src/org/archphantom/shenanigans/elements/expressions')
2 files changed, 3 insertions, 4 deletions
diff --git a/Shenanigans/src/org/archphantom/shenanigans/elements/expressions/statements/Assignment.java b/Shenanigans/src/org/archphantom/shenanigans/elements/expressions/statements/Assignment.java index 34b7812..3536750 100644 --- a/Shenanigans/src/org/archphantom/shenanigans/elements/expressions/statements/Assignment.java +++ b/Shenanigans/src/org/archphantom/shenanigans/elements/expressions/statements/Assignment.java @@ -20,7 +20,8 @@ public class Assignment extends Expression { String varname = identifier.substring(identifier.indexOf('.')+1); Namespace ns; if ((ns = program.getNamespace(nspacecall)) != null) { - return ns.setVar(varname, value, vars, program); + Value val = value.evaluate(vars, program); + return ns.setVar(varname, val, vars, program); } else { return null; } diff --git a/Shenanigans/src/org/archphantom/shenanigans/elements/expressions/statements/FunctionCall.java b/Shenanigans/src/org/archphantom/shenanigans/elements/expressions/statements/FunctionCall.java index e3ba9f8..2fa2d5a 100644 --- a/Shenanigans/src/org/archphantom/shenanigans/elements/expressions/statements/FunctionCall.java +++ b/Shenanigans/src/org/archphantom/shenanigans/elements/expressions/statements/FunctionCall.java @@ -1,6 +1,5 @@ package org.archphantom.shenanigans.elements.expressions.statements; import java.util.ArrayList; - import org.archphantom.shenanigans.elements.Program; import org.archphantom.shenanigans.elements.expressions.Expression; import org.archphantom.shenanigans.elements.expressions.Variable; @@ -28,10 +27,9 @@ public class FunctionCall extends Expression { localVars.set(argNames.get(i), arguments.get(i).evaluate(vars, program)); } Value retval = function.getValue(localVars, program); - System.out.println("Function returned a "+retval.getClass().getSimpleName()+": "+retval.hashCode()); return retval; } else { - throw new RuntimeException("No such function exists."); + throw new RuntimeException("No such function exists: "+identifier+"."); } } |
