diff --git a/src/main/java/noppes/npcs/DataScript.java b/src/main/java/noppes/npcs/DataScript.java index bd790f8c2..883550e11 100644 --- a/src/main/java/noppes/npcs/DataScript.java +++ b/src/main/java/noppes/npcs/DataScript.java @@ -15,6 +15,7 @@ import noppes.npcs.controllers.ScriptContainer; import noppes.npcs.controllers.IScriptHandler; import noppes.npcs.controllers.ScriptController; import noppes.npcs.entity.EntityNPCInterface; +import noppes.npcs.scripted.entity.ScriptNpc; import noppes.npcs.scripted.event.ScriptEvent; import noppes.npcs.scripted.ScriptWorld; import noppes.npcs.scripted.constants.EntityType; @@ -46,7 +47,10 @@ public class DataScript implements IScriptHandler { } this.npc = npc; - dummyNpc = (ICustomNpc) NpcAPI.Instance().getIEntity(npc); + if (npc.wrappedNPC == null) { + npc.wrappedNPC = new ScriptNpc(this.npc); + } + dummyNpc = npc.wrappedNPC; if(npc.worldObj instanceof WorldServer) dummyWorld = NpcAPI.Instance().getIWorld((WorldServer) npc.worldObj);//new ScriptWorld((WorldServer) npc.worldObj); diff --git a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java index d01fd270a..d576c5e8e 100644 --- a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java +++ b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java @@ -165,7 +165,7 @@ public abstract class EntityNPCInterface extends EntityCreature implements IEnti setSize(1, 1); this.updateTasks(); - if (!this.isRemote()) { + if (!this.isRemote() && this.wrappedNPC == null) { this.wrappedNPC = new ScriptNpc<>(this); } }