Script. Please check this. This is probably wrong.

This commit is contained in:
CocoTheOwner 2021-08-13 22:57:02 +02:00
parent b1278aff2e
commit e8ac971f9e
3 changed files with 21 additions and 2 deletions

View File

@ -19,6 +19,8 @@
package com.volmit.iris.core.decrees; package com.volmit.iris.core.decrees;
import com.volmit.iris.Iris; import com.volmit.iris.Iris;
import com.volmit.iris.core.tools.IrisToolbelt;
import com.volmit.iris.engine.object.common.IrisScript;
import com.volmit.iris.engine.object.dimensional.IrisDimension; import com.volmit.iris.engine.object.dimensional.IrisDimension;
import com.volmit.iris.util.decree.DecreeExecutor; import com.volmit.iris.util.decree.DecreeExecutor;
import com.volmit.iris.util.decree.DecreeOrigin; import com.volmit.iris.util.decree.DecreeOrigin;
@ -119,4 +121,13 @@ public class DecIrisStudio implements DecreeExecutor
sender().sendMessage("Cant find the file. Unsure why this happened."); sender().sendMessage("Cant find the file. Unsure why this happened.");
} }
} }
@Decree(description = "Execute a script", aliases = {"ex", "exec", "run"}, origin = DecreeOrigin.PLAYER)
public void execute(
@Param(name = "script", description = "The script to run", aliases = {"s", "scr"})
IrisScript script
)
{
IrisToolbelt.access(sender().player().getWorld()).getEngine().getExecution().execute(script);
}
} }

View File

@ -20,6 +20,7 @@ package com.volmit.iris.engine;
import com.volmit.iris.Iris; import com.volmit.iris.Iris;
import com.volmit.iris.engine.framework.Engine; import com.volmit.iris.engine.framework.Engine;
import com.volmit.iris.engine.object.common.IrisScript;
import com.volmit.iris.engine.scripting.EngineExecutionEnvironment; import com.volmit.iris.engine.scripting.EngineExecutionEnvironment;
import com.volmit.iris.engine.scripting.IrisScriptingAPI; import com.volmit.iris.engine.scripting.IrisScriptingAPI;
import com.volmit.iris.util.format.C; import com.volmit.iris.util.format.C;
@ -54,9 +55,13 @@ public class IrisExecutionEnvironment implements EngineExecutionEnvironment {
} }
public void execute(String script) { public void execute(String script) {
Iris.debug("Execute Script (void) " + C.DARK_GREEN + script); execute(getEngine().getData().getScriptLoader().load(script));
}
public void execute(IrisScript script) {
Iris.debug("Execute Script (void) " + C.DARK_GREEN + script.getLoadKey());
try { try {
javaScriptEngine.exec("", 0, 0, getEngine().getData().getScriptLoader().load(script)); javaScriptEngine.exec("", 0, 0, script);
} catch (BSFException e) { } catch (BSFException e) {
e.printStackTrace(); e.printStackTrace();
} }

View File

@ -19,6 +19,7 @@
package com.volmit.iris.engine.scripting; package com.volmit.iris.engine.scripting;
import com.volmit.iris.engine.framework.Engine; import com.volmit.iris.engine.framework.Engine;
import com.volmit.iris.engine.object.common.IrisScript;
import org.apache.bsf.BSFManager; import org.apache.bsf.BSFManager;
public interface EngineExecutionEnvironment { public interface EngineExecutionEnvironment {
@ -30,6 +31,8 @@ public interface EngineExecutionEnvironment {
void execute(String script); void execute(String script);
void execute(IrisScript script);
Object evaluate(String script); Object evaluate(String script);
default void close() { default void close() {