From c9f8a8fe13db7bb9c837ec31f086fb22bd5708b9 Mon Sep 17 00:00:00 2001 From: sk89q Date: Sat, 22 Jan 2011 10:53:53 -0800 Subject: [PATCH] Moved scripting code around. --- .../sk89q/worldedit/WorldEditController.java | 1 + .../worldedit/scripting/ScriptContext.java | 18 +++----- .../scripting/ScriptEnvironment.java | 43 +++++++++++++++++++ 3 files changed, 49 insertions(+), 13 deletions(-) create mode 100644 src/com/sk89q/worldedit/scripting/ScriptEnvironment.java diff --git a/src/com/sk89q/worldedit/WorldEditController.java b/src/com/sk89q/worldedit/WorldEditController.java index 1217921f1..3599f99c8 100644 --- a/src/com/sk89q/worldedit/WorldEditController.java +++ b/src/com/sk89q/worldedit/WorldEditController.java @@ -2177,6 +2177,7 @@ public class WorldEditController { engine.put("argv", args); engine.put("ctx", context); engine.put("player", player); + engine.put("BaseBlock", BaseBlock.class); try { engine.eval(script); diff --git a/src/com/sk89q/worldedit/scripting/ScriptContext.java b/src/com/sk89q/worldedit/scripting/ScriptContext.java index 82ccc070c..bba38a21e 100644 --- a/src/com/sk89q/worldedit/scripting/ScriptContext.java +++ b/src/com/sk89q/worldedit/scripting/ScriptContext.java @@ -31,21 +31,13 @@ import com.sk89q.worldedit.UnknownItemException; import com.sk89q.worldedit.WorldEditController; import com.sk89q.worldedit.blocks.BaseBlock; -public class ScriptContext { - private WorldEditController controller; - private LocalPlayer player; - private LocalConfiguration config; - private LocalSession session; - private ServerInterface server; +public class ScriptContext extends ScriptEnvironment { private List editSessions = new ArrayList(); - public ScriptContext(WorldEditController controller, ServerInterface server, - LocalConfiguration config, LocalSession session, LocalPlayer player) { - this.controller = controller; - this.player = player; - this.config = config; - this.server = server; - this.session = session; + public ScriptContext(WorldEditController controller, + ServerInterface server, LocalConfiguration config, + LocalSession session, LocalPlayer player) { + super(controller, server, config, session, player); } public EditSession startEditSession() { diff --git a/src/com/sk89q/worldedit/scripting/ScriptEnvironment.java b/src/com/sk89q/worldedit/scripting/ScriptEnvironment.java new file mode 100644 index 000000000..30d7a1b27 --- /dev/null +++ b/src/com/sk89q/worldedit/scripting/ScriptEnvironment.java @@ -0,0 +1,43 @@ +// $Id$ +/* + * WorldEdit + * Copyright (C) 2010 sk89q + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . +*/ + +package com.sk89q.worldedit.scripting; + +import com.sk89q.worldedit.LocalConfiguration; +import com.sk89q.worldedit.LocalPlayer; +import com.sk89q.worldedit.LocalSession; +import com.sk89q.worldedit.ServerInterface; +import com.sk89q.worldedit.WorldEditController; + +public abstract class ScriptEnvironment { + protected WorldEditController controller; + protected LocalPlayer player; + protected LocalConfiguration config; + protected LocalSession session; + protected ServerInterface server; + + public ScriptEnvironment(WorldEditController controller, ServerInterface server, + LocalConfiguration config, LocalSession session, LocalPlayer player) { + this.controller = controller; + this.player = player; + this.config = config; + this.server = server; + this.session = session; + } +}