public void runScript(final Script script) { script.initialize(methods, sc); for (final ScriptListener l : sc.listeners) l.scriptStarted(this, script); final ScriptManifest prop = script.getClass().getAnnotation(ScriptManifest.class); final Thread t = new Thread(scriptThreadGroup, script, "Script-" + prop.name()); addScriptToPool(script, t); t.start(); }
public void stopScript(final int id) { final Script script = sc.scripts.get(id); if (script != null) { script.deactivate(id); sc.scripts.remove(id); sc.scriptThreads.remove(id); for (final ScriptListener l : sc.listeners) l.scriptStopped(this, script); } }
protected void updateInput(final int mask) { for (final ScriptListener l : sc.listeners) l.inputChanged(methods.bot, mask); }
public void pauseScript(final int id) { final Script s = sc.scripts.get(id); s.setPaused(!s.isPaused()); if (s.isPaused()) for (final ScriptListener l : sc.listeners) l.scriptPaused(this, s); else for (final ScriptListener l : sc.listeners) l.scriptResumed(this, s); }