From 27359a429d0c4ce12bc632c460fc4ab8e31625ab Mon Sep 17 00:00:00 2001 From: Kam Date: Wed, 28 Feb 2024 20:58:00 -0500 Subject: [PATCH] Beta 5 Gradle --- build.gradle | 2 +- .../noppes/npcs/ScriptItemEventHandler.java | 54 +++++++++++-------- .../controllers/PlayerDataController.java | 3 -- .../npcs/controllers/data/PlayerData.java | 4 +- .../controllers/data/PlayerDataScript.java | 1 - 5 files changed, 34 insertions(+), 30 deletions(-) diff --git a/build.gradle b/build.gradle index 0495effa2..de188833f 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ plugins { id 'idea' } -version = "1.9-beta6" +version = "1.9-beta5" group= "kamkeel.customnpc-plus" archivesBaseName = "CustomNPC-Plus" diff --git a/src/main/java/noppes/npcs/ScriptItemEventHandler.java b/src/main/java/noppes/npcs/ScriptItemEventHandler.java index 2d7b3cafc..63cae0ee3 100644 --- a/src/main/java/noppes/npcs/ScriptItemEventHandler.java +++ b/src/main/java/noppes/npcs/ScriptItemEventHandler.java @@ -124,30 +124,38 @@ public class ScriptItemEventHandler { if(event.entityPlayer.worldObj.isRemote && event.entityPlayer.worldObj instanceof WorldServer) return; - if(event.action == PlayerInteractEvent.Action.RIGHT_CLICK_AIR){ - PlayerDataScript handler = PlayerDataController.Instance.getPlayerData(event.entityPlayer).scriptData; - if(handler.hadInteract) { - handler.hadInteract = false; - return; + if (PlayerDataController.Instance != null) { + if(event.action == PlayerInteractEvent.Action.RIGHT_CLICK_AIR){ + PlayerData handler = PlayerDataController.Instance.getPlayerData(event.entityPlayer); + if(handler == null) + return; + + if(handler.hadInteract) { + handler.hadInteract = false; + return; + } + try { + if (event.entityPlayer.getHeldItem().getItem() == CustomItems.scripted_item && !event.isCanceled()) { + IItemCustom isw = ItemScripted.GetWrapper(event.entityPlayer.getHeldItem()); + ItemEvent.RightClickEvent eve = new ItemEvent.RightClickEvent(isw, (IPlayer) NpcAPI.Instance().getIEntity(event.entityPlayer), 0, null); + event.setCanceled(EventHooks.onScriptItemRightClick(isw, eve)); + } + } catch(Exception e) {} + } + else if(event.action == PlayerInteractEvent.Action.RIGHT_CLICK_BLOCK){ + PlayerData handler = PlayerDataController.Instance.getPlayerData(event.entityPlayer); + if(handler == null) + return; + + handler.hadInteract = true; + try { + if (event.entityPlayer.getHeldItem().getItem() == CustomItems.scripted_item && !event.isCanceled()) { + IItemCustom isw = ItemScripted.GetWrapper(event.entityPlayer.getHeldItem()); + ItemEvent.RightClickEvent eve = new ItemEvent.RightClickEvent(isw, (IPlayer) NpcAPI.Instance().getIEntity(event.entityPlayer), 2, NpcAPI.Instance().getIBlock((IWorld) NpcAPI.Instance().getIWorld(event.world), event.x, event.y, event.z)); + event.setCanceled(EventHooks.onScriptItemRightClick(isw, eve)); + } + } catch(Exception e) {} } - try { - if (event.entityPlayer.getHeldItem().getItem() == CustomItems.scripted_item && !event.isCanceled()) { - IItemCustom isw = ItemScripted.GetWrapper(event.entityPlayer.getHeldItem()); - ItemEvent.RightClickEvent eve = new ItemEvent.RightClickEvent(isw, (IPlayer) NpcAPI.Instance().getIEntity(event.entityPlayer), 0, null); - event.setCanceled(EventHooks.onScriptItemRightClick(isw, eve)); - } - } catch(Exception e) {} - } - else if(event.action == PlayerInteractEvent.Action.RIGHT_CLICK_BLOCK){ - PlayerDataScript handler = PlayerDataController.Instance.getPlayerData(event.entityPlayer).scriptData; - handler.hadInteract = true; - try { - if (event.entityPlayer.getHeldItem().getItem() == CustomItems.scripted_item && !event.isCanceled()) { - IItemCustom isw = ItemScripted.GetWrapper(event.entityPlayer.getHeldItem()); - ItemEvent.RightClickEvent eve = new ItemEvent.RightClickEvent(isw, (IPlayer) NpcAPI.Instance().getIEntity(event.entityPlayer), 2, NpcAPI.Instance().getIBlock((IWorld) NpcAPI.Instance().getIWorld(event.world), event.x, event.y, event.z)); - event.setCanceled(EventHooks.onScriptItemRightClick(isw, eve)); - } - } catch(Exception e) {} } } diff --git a/src/main/java/noppes/npcs/controllers/PlayerDataController.java b/src/main/java/noppes/npcs/controllers/PlayerDataController.java index ecf682fbb..f6ba49118 100644 --- a/src/main/java/noppes/npcs/controllers/PlayerDataController.java +++ b/src/main/java/noppes/npcs/controllers/PlayerDataController.java @@ -291,7 +291,6 @@ public class PlayerDataController { if(data != null){ if(data.player == null){ data.player = player; - data.scriptData = new PlayerDataScript(player); } return data; } @@ -300,13 +299,11 @@ public class PlayerDataController { if(data == null){ player.registerExtendedProperties("CustomNpcsData", data = new PlayerData()); data.player = player; - data.scriptData = new PlayerDataScript(player); data.load(); } if(data.player == null){ data.player = player; - data.scriptData = new PlayerDataScript(player); } return data; } diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerData.java b/src/main/java/noppes/npcs/controllers/data/PlayerData.java index f700ed183..6990cc219 100644 --- a/src/main/java/noppes/npcs/controllers/data/PlayerData.java +++ b/src/main/java/noppes/npcs/controllers/data/PlayerData.java @@ -41,7 +41,6 @@ public class PlayerData implements IExtendedEntityProperties, IPlayerData { public PlayerItemGiverData itemgiverData = new PlayerItemGiverData(this); public PlayerMailData mailData = new PlayerMailData(this); public AnimationData animationData = new AnimationData(this); - public PlayerDataScript scriptData; public DataTimers timers = new DataTimers(this); public DataSkinOverlays skinOverlays = new DataSkinOverlays(this); @@ -61,8 +60,9 @@ public class PlayerData implements IExtendedEntityProperties, IPlayerData { public int companionID = 0; public boolean isGUIOpen = false; + public boolean hadInteract = true; - public ScreenSize screenSize = new ScreenSize(-1,-1); + public ScreenSize screenSize = new ScreenSize(-1,-1); public void onLogin() { diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java b/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java index f51b68748..85096dfe0 100644 --- a/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java +++ b/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java @@ -26,7 +26,6 @@ public class PlayerDataScript implements INpcScriptHandler { private IPlayer playerAPI; private long lastPlayerUpdate = 0L; public long lastInited = -1L; - public boolean hadInteract = true; public boolean enabled = false; public PlayerDataScript(EntityPlayer player) {