소스 검색

script.start returns a script

Kajetan Johannes Hammerle 4 년 전
부모
커밋
10cc7644cd
2개의 변경된 파일6개의 추가작업 그리고 8개의 파일을 삭제
  1. 5 6
      src/main/java/me/km/snuviscript/Scripts.java
  2. 1 2
      src/main/java/me/km/snuviscript/commands/ScriptCommands.java

+ 5 - 6
src/main/java/me/km/snuviscript/Scripts.java

@@ -146,12 +146,12 @@ public class Scripts {
     // -------------------------------------------------------------------------
     // script starting
     // -------------------------------------------------------------------------
-    public boolean startPlayerScript(PlayerEntity p, String... names) {
+    public Script startPlayerScript(PlayerEntity p, String... names) {
         if(isRegistered(p)) {
-            return false;
+            return null;
         }
         Arrays.setAll(names, i -> "scripts/" + names[i] + ".txt");
-        manager.startScript(false, sc -> {
+        return manager.startScript(false, sc -> {
             int id = sc.getId();
             playerScript.put(p.getUniqueID(), id);
             getOrCreatePlayerList(id).add(p.getUniqueID());
@@ -160,12 +160,11 @@ public class Scripts {
             registeredPlayers.remove(sc.getId());
             cec.removeScriptData(sc);
         }, names[0], names);
-        return true;
     }
 
-    public void startScript(String... names) {
+    public Script startScript(String... names) {
         Arrays.setAll(names, i -> "scripts/" + names[i] + ".txt");
-        manager.startScript(true, sc -> {
+        return manager.startScript(true, sc -> {
         }, sc -> cec.removeScriptData(sc), names[0], names);
     }
 }

+ 1 - 2
src/main/java/me/km/snuviscript/commands/ScriptCommands.java

@@ -38,8 +38,7 @@ public class ScriptCommands {
             for(int i = 1; i < in.length; i++) {
                 names[i] = in[i].getString(sc);
             }
-            scripts.startScript(names);
-            return true;
+            return scripts.startScript(names);
         });
         sm.registerFunction("script.join", (sc, in) -> scripts.registerPlayer((Script) in[0].get(sc), (PlayerEntity) in[1].get(sc)));
         sm.registerFunction("script.kick", (sc, in) -> scripts.unregisterPlayer(sc, (PlayerEntity) in[0].get(sc)));