From 8b710ed5207d7e20ff0fb64944ea836e7b975d8a Mon Sep 17 00:00:00 2001 From: luisc Date: Tue, 19 Oct 2021 16:59:09 -0500 Subject: [PATCH] Fixed executeCommand() function for scripting API. --- src/main/java/noppes/npcs/scripted/ScriptWorld.java | 4 ++-- src/main/java/noppes/npcs/scripted/interfaces/IWorld.java | 3 ++- src/main/java/noppes/npcs/scripted/wrapper/WrapperNpcAPI.java | 4 +++- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/main/java/noppes/npcs/scripted/ScriptWorld.java b/src/main/java/noppes/npcs/scripted/ScriptWorld.java index 60d1390a0..7ee5ba757 100644 --- a/src/main/java/noppes/npcs/scripted/ScriptWorld.java +++ b/src/main/java/noppes/npcs/scripted/ScriptWorld.java @@ -359,7 +359,7 @@ public class ScriptWorld implements IWorld { * Expert use only * @return Returns minecraft world object */ - public World getMCWorld(){ - return world; + public WorldServer getMCWorld(){ + return this.world; } } diff --git a/src/main/java/noppes/npcs/scripted/interfaces/IWorld.java b/src/main/java/noppes/npcs/scripted/interfaces/IWorld.java index 1f9e1c0c9..ef12df261 100644 --- a/src/main/java/noppes/npcs/scripted/interfaces/IWorld.java +++ b/src/main/java/noppes/npcs/scripted/interfaces/IWorld.java @@ -2,6 +2,7 @@ package noppes.npcs.scripted.interfaces; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; +import net.minecraft.world.WorldServer; import noppes.npcs.scripted.*; import noppes.npcs.scripted.entity.ScriptEntity; import noppes.npcs.scripted.entity.ScriptPlayer; @@ -208,5 +209,5 @@ public interface IWorld { * Expert use only * @return Returns minecraft world object */ - public World getMCWorld(); + public WorldServer getMCWorld(); } diff --git a/src/main/java/noppes/npcs/scripted/wrapper/WrapperNpcAPI.java b/src/main/java/noppes/npcs/scripted/wrapper/WrapperNpcAPI.java index 95501992b..220a2989f 100644 --- a/src/main/java/noppes/npcs/scripted/wrapper/WrapperNpcAPI.java +++ b/src/main/java/noppes/npcs/scripted/wrapper/WrapperNpcAPI.java @@ -7,7 +7,9 @@ package noppes.npcs.scripted.wrapper; import java.io.File; import java.util.Map; +import java.util.UUID; +import com.mojang.authlib.GameProfile; import cpw.mods.fml.common.eventhandler.EventBus; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; @@ -173,7 +175,7 @@ public class WrapperNpcAPI extends NpcAPI { } public String executeCommand(IWorld world, String command) { - FakePlayer player = EntityNPCInterface.CommandPlayer; + FakePlayer player = new FakePlayer(world.getMCWorld(), new GameProfile(new UUID(0L,0L), "CommandPlayer")); player.setWorld(world.getMCWorld()); player.setPosition(0.0D, 0.0D, 0.0D); return NoppesUtilServer.runCommand(world.getMCWorld(), BlockPos.ORIGIN, "API", command, (EntityPlayer)null, player);