diff --git a/docs/noppes/npcs/scripted/interfaces/item/IItemCustom.html b/docs/noppes/npcs/scripted/interfaces/item/IItemCustom.html index d6a116e08..e3a3e6846 100644 --- a/docs/noppes/npcs/scripted/interfaces/item/IItemCustom.html +++ b/docs/noppes/npcs/scripted/interfaces/item/IItemCustom.html @@ -100,12 +100,12 @@ var activeTableTab = "activeTableTab";
  • All Superinterfaces:
    -
    IItemStack, noppes.npcs.api.IScriptHandler
    +
    IItemStack, noppes.npcs.controllers.data.IScriptHandler


    public interface IItemCustom
    -extends IItemStack, noppes.npcs.api.IScriptHandler
    +extends IItemStack, noppes.npcs.controllers.data.IScriptHandler
  • @@ -305,10 +305,10 @@ extends addEnchant, getAttribute, getBookAuthor, getBookText, getBookTitle, getDisplayName, getItemDamage, getItemName, getItemNbt, getLore, getMaxStackSize, getMCItemStack, getMCNbt, getName, getNbt, getStackSize, getTag, hasAttribute, hasCustomName, hasEnchant, hasLore, hasTag, isBlock, isEnchanted, isWrittenBook, removeTags, setAttribute, setCustomName, setItemDamage, setLore, setMCNbt, setStackSize, setTag @@ -334,7 +334,7 @@ extends Specified by: -
    getEnabled in interface noppes.npcs.api.IScriptHandler
    +
    getEnabled in interface noppes.npcs.controllers.data.IScriptHandler
    @@ -347,7 +347,7 @@ extends
    Specified by: -
    setEnabled in interface noppes.npcs.api.IScriptHandler
    +
    setEnabled in interface noppes.npcs.controllers.data.IScriptHandler
    diff --git a/docs/noppes/npcs/scripted/interfaces/item/package-tree.html b/docs/noppes/npcs/scripted/interfaces/item/package-tree.html index 4d2a78918..bd7f72247 100644 --- a/docs/noppes/npcs/scripted/interfaces/item/package-tree.html +++ b/docs/noppes/npcs/scripted/interfaces/item/package-tree.html @@ -83,10 +83,10 @@
  • noppes.npcs.api.item.IItemBook
  • noppes.npcs.api.item.IItemStack
  • -
  • noppes.npcs.api.IScriptHandler +
  • noppes.npcs.controllers.data.IScriptHandler diff --git a/docs/overview-tree.html b/docs/overview-tree.html index b4b57f12f..3ccc32503 100644 --- a/docs/overview-tree.html +++ b/docs/overview-tree.html @@ -320,7 +320,7 @@
  • noppes.npcs.api.item.IItemBook
  • noppes.npcs.api.item.IItemStack
  • noppes.npcs.api.jobs.IJob @@ -373,7 +373,7 @@
  • noppes.npcs.api.roles.IRoleTransporter
  • -
  • noppes.npcs.api.IScriptHandler +
  • noppes.npcs.controllers.data.IScriptHandler diff --git a/src/api/java/noppes/npcs/api/IPixelmonPlayerData.java b/src/api/java/noppes/npcs/api/IPixelmonPlayerData.java new file mode 100644 index 000000000..63abb2c39 --- /dev/null +++ b/src/api/java/noppes/npcs/api/IPixelmonPlayerData.java @@ -0,0 +1,10 @@ +package noppes.npcs.api; + +import noppes.npcs.api.entity.IPixelmon; + +public interface IPixelmonPlayerData { + + IPixelmon getPartySlot(int slot); + + int countPCPixelmon(); +} diff --git a/src/api/java/noppes/npcs/api/IWorld.java b/src/api/java/noppes/npcs/api/IWorld.java index 95fde4d61..a225f4b95 100644 --- a/src/api/java/noppes/npcs/api/IWorld.java +++ b/src/api/java/noppes/npcs/api/IWorld.java @@ -1,7 +1,7 @@ package noppes.npcs.api; import net.minecraft.world.WorldServer; -import noppes.npcs.scripted.scoreboard.ScriptScoreboard; +import noppes.npcs.api.scoreboard.IScoreboard; import noppes.npcs.api.entity.IEntity; import noppes.npcs.api.entity.IPlayer; import noppes.npcs.api.handler.data.ISound; @@ -408,7 +408,7 @@ public interface IWorld { IEntity spawnClone(int x, int y, int z, int tab, String name); IEntity spawnClone(IPos pos, int tab, String name); - ScriptScoreboard getScoreboard(); + IScoreboard getScoreboard(); /** * @since 1.7.10c diff --git a/src/api/java/noppes/npcs/api/entity/ICustomNpc.java b/src/api/java/noppes/npcs/api/entity/ICustomNpc.java index 3571dee42..d5ec7b2dd 100644 --- a/src/api/java/noppes/npcs/api/entity/ICustomNpc.java +++ b/src/api/java/noppes/npcs/api/entity/ICustomNpc.java @@ -11,8 +11,8 @@ import noppes.npcs.api.ITimers; import noppes.npcs.api.handler.IOverlayHandler; import noppes.npcs.api.handler.data.IFaction; import noppes.npcs.api.item.IItemStack; -import noppes.npcs.scripted.roles.ScriptJobInterface; -import noppes.npcs.scripted.roles.ScriptRoleInterface; +import noppes.npcs.api.jobs.IJob; +import noppes.npcs.api.roles.IRole; public interface ICustomNpc extends IEntityLiving { /** @@ -201,14 +201,14 @@ public interface ICustomNpc extends IEntityLiving { /** * @return Returns the npcs current role */ - ScriptRoleInterface getRole(); + IRole getRole(); void setRole(int role); /** * @return Returns the npcs current job */ - ScriptJobInterface getJob(); + IJob getJob(); void setJob(int job); diff --git a/src/api/java/noppes/npcs/api/entity/IEntityLivingBase.java b/src/api/java/noppes/npcs/api/entity/IEntityLivingBase.java index 4a7612244..d484a03f3 100644 --- a/src/api/java/noppes/npcs/api/entity/IEntityLivingBase.java +++ b/src/api/java/noppes/npcs/api/entity/IEntityLivingBase.java @@ -2,9 +2,9 @@ package noppes.npcs.api.entity; import net.minecraft.entity.EntityLivingBase; import noppes.npcs.api.IBlock; +import noppes.npcs.api.IDamageSource; import noppes.npcs.api.IPos; import noppes.npcs.api.item.IItemStack; -import noppes.npcs.scripted.ScriptDamageSource; public interface IEntityLivingBase extends IEntity { /** @@ -21,7 +21,7 @@ public interface IEntityLivingBase extends IEntity extends IEntityLivingBase { /** @@ -277,13 +275,13 @@ public interface IPlayer extends IEntityLivingBase * Requires pixelmon to be installed * @since 1.7.10d */ - ScriptPixelmonPlayerData getPixelmonData(); + IPixelmonPlayerData getPixelmonData(); ITimers getTimers(); void updatePlayerInventory(); - ScriptDBCPlayer getDBCPlayer(); + IDBCPlayer getDBCPlayer(); boolean blocking(); diff --git a/src/api/java/noppes/npcs/api/event/CustomGuiEvent.java b/src/api/java/noppes/npcs/api/event/CustomGuiEvent.java new file mode 100644 index 000000000..1085ec0ec --- /dev/null +++ b/src/api/java/noppes/npcs/api/event/CustomGuiEvent.java @@ -0,0 +1,29 @@ +package noppes.npcs.api.event; + +import noppes.npcs.api.entity.IPlayer; +import noppes.npcs.api.gui.ICustomGui; + +public interface CustomGuiEvent { + + IPlayer getPlayer(); + + ICustomGui getGui(); + + interface ButtonEvent { + } + + interface UnfocusedEvent { + } + + interface CloseEvent { + } + + interface ScrollEvent { + } + + interface SlotEvent { + } + + interface SlotClickEvent { + } +} diff --git a/src/api/java/noppes/npcs/api/event/CustomNPCsEvent.java b/src/api/java/noppes/npcs/api/event/CustomNPCsEvent.java new file mode 100644 index 000000000..df9f90f52 --- /dev/null +++ b/src/api/java/noppes/npcs/api/event/CustomNPCsEvent.java @@ -0,0 +1,20 @@ +package noppes.npcs.api.event; + +import noppes.npcs.api.IPos; +import noppes.npcs.api.handler.data.INaturalSpawn; + +public interface CustomNPCsEvent { + interface CNPCNaturalSpawnEvent { + INaturalSpawn getNaturalSpawn(); + + IPos getAttemptPosition(); + + boolean animalSpawnPassed(); + + boolean monsterSpawnPassed(); + + boolean liquidSpawnPassed(); + + boolean airSpawnPassed(); + } +} diff --git a/src/api/java/noppes/npcs/api/event/DialogEvent.java b/src/api/java/noppes/npcs/api/event/DialogEvent.java new file mode 100644 index 000000000..b4b378ba6 --- /dev/null +++ b/src/api/java/noppes/npcs/api/event/DialogEvent.java @@ -0,0 +1,4 @@ +package noppes.npcs.api.event; + +public interface DialogEvent { +} diff --git a/src/api/java/noppes/npcs/api/event/FactionEvent.java b/src/api/java/noppes/npcs/api/event/FactionEvent.java new file mode 100644 index 000000000..e70476303 --- /dev/null +++ b/src/api/java/noppes/npcs/api/event/FactionEvent.java @@ -0,0 +1,4 @@ +package noppes.npcs.api.event; + +public interface FactionEvent { +} diff --git a/src/api/java/noppes/npcs/api/event/ForgeEvent.java b/src/api/java/noppes/npcs/api/event/ForgeEvent.java new file mode 100644 index 000000000..d343cdb31 --- /dev/null +++ b/src/api/java/noppes/npcs/api/event/ForgeEvent.java @@ -0,0 +1,4 @@ +package noppes.npcs.api.event; + +public interface ForgeEvent { +} diff --git a/src/api/java/noppes/npcs/api/event/ItemEvent.java b/src/api/java/noppes/npcs/api/event/ItemEvent.java new file mode 100644 index 000000000..0e68d03d4 --- /dev/null +++ b/src/api/java/noppes/npcs/api/event/ItemEvent.java @@ -0,0 +1,4 @@ +package noppes.npcs.api.event; + +public interface ItemEvent { +} diff --git a/src/api/java/noppes/npcs/api/event/NpcEvent.java b/src/api/java/noppes/npcs/api/event/NpcEvent.java new file mode 100644 index 000000000..835850c56 --- /dev/null +++ b/src/api/java/noppes/npcs/api/event/NpcEvent.java @@ -0,0 +1,4 @@ +package noppes.npcs.api.event; + +public interface NpcEvent { +} diff --git a/src/api/java/noppes/npcs/api/event/PlayerEvent.java b/src/api/java/noppes/npcs/api/event/PlayerEvent.java new file mode 100644 index 000000000..43729a3b9 --- /dev/null +++ b/src/api/java/noppes/npcs/api/event/PlayerEvent.java @@ -0,0 +1,4 @@ +package noppes.npcs.api.event; + +public interface PlayerEvent { +} diff --git a/src/api/java/noppes/npcs/api/event/QuestEvent.java b/src/api/java/noppes/npcs/api/event/QuestEvent.java new file mode 100644 index 000000000..698fa8097 --- /dev/null +++ b/src/api/java/noppes/npcs/api/event/QuestEvent.java @@ -0,0 +1,4 @@ +package noppes.npcs.api.event; + +public interface QuestEvent { +} diff --git a/src/api/java/noppes/npcs/api/gui/ICustomGuiComponent.java b/src/api/java/noppes/npcs/api/gui/ICustomGuiComponent.java index c1e4d4ef6..9be36f0b0 100644 --- a/src/api/java/noppes/npcs/api/gui/ICustomGuiComponent.java +++ b/src/api/java/noppes/npcs/api/gui/ICustomGuiComponent.java @@ -6,7 +6,6 @@ package noppes.npcs.api.gui; import net.minecraft.nbt.NBTTagCompound; -import noppes.npcs.scripted.gui.ScriptGuiComponent; public interface ICustomGuiComponent { int getID(); @@ -41,5 +40,5 @@ public interface ICustomGuiComponent { NBTTagCompound toNBT(NBTTagCompound nbt); - ScriptGuiComponent fromNBT(NBTTagCompound nbt); + ICustomGuiComponent fromNBT(NBTTagCompound nbt); } diff --git a/src/api/java/noppes/npcs/api/item/IItemCustom.java b/src/api/java/noppes/npcs/api/item/IItemCustom.java index 6808f40eb..ced253876 100644 --- a/src/api/java/noppes/npcs/api/item/IItemCustom.java +++ b/src/api/java/noppes/npcs/api/item/IItemCustom.java @@ -1,7 +1,6 @@ package noppes.npcs.api.item; -import noppes.npcs.controllers.IScriptHandler; -public interface IItemCustom extends IItemStack, IScriptHandler { +public interface IItemCustom extends IItemStack { boolean getEnabled(); diff --git a/src/api/java/noppes/npcs/api/jobs/IJob.java b/src/api/java/noppes/npcs/api/jobs/IJob.java index 84b67957a..315e3ec16 100644 --- a/src/api/java/noppes/npcs/api/jobs/IJob.java +++ b/src/api/java/noppes/npcs/api/jobs/IJob.java @@ -1,13 +1,10 @@ package noppes.npcs.api.jobs; -import noppes.npcs.roles.JobInterface; import noppes.npcs.api.entity.ICustomNpc; public interface IJob { int getType(); - JobInterface getJobInterface(); - ICustomNpc getNpc(); } diff --git a/src/api/java/noppes/npcs/api/overlay/ICustomOverlayComponent.java b/src/api/java/noppes/npcs/api/overlay/ICustomOverlayComponent.java index 792ad5cdc..142521fb0 100644 --- a/src/api/java/noppes/npcs/api/overlay/ICustomOverlayComponent.java +++ b/src/api/java/noppes/npcs/api/overlay/ICustomOverlayComponent.java @@ -1,7 +1,6 @@ package noppes.npcs.api.overlay; import net.minecraft.nbt.NBTTagCompound; -import noppes.npcs.scripted.overlay.ScriptOverlayComponent; public interface ICustomOverlayComponent { int getID(); @@ -32,5 +31,5 @@ public interface ICustomOverlayComponent { NBTTagCompound toNBT(NBTTagCompound nbt); - ScriptOverlayComponent fromNBT(NBTTagCompound nbt); + ICustomOverlayComponent fromNBT(NBTTagCompound nbt); } diff --git a/src/api/java/noppes/npcs/api/scoreboard/IScriptScoreboard.java b/src/api/java/noppes/npcs/api/scoreboard/IScoreboard.java similarity index 51% rename from src/api/java/noppes/npcs/api/scoreboard/IScriptScoreboard.java rename to src/api/java/noppes/npcs/api/scoreboard/IScoreboard.java index 3da296d1f..91efab7e4 100644 --- a/src/api/java/noppes/npcs/api/scoreboard/IScriptScoreboard.java +++ b/src/api/java/noppes/npcs/api/scoreboard/IScoreboard.java @@ -1,4 +1,4 @@ package noppes.npcs.api.scoreboard; -public interface IScriptScoreboard { +public interface IScoreboard { } diff --git a/src/main/java/noppes/npcs/EventHooks.java b/src/main/java/noppes/npcs/EventHooks.java index 90d145e63..2de1ce349 100644 --- a/src/main/java/noppes/npcs/EventHooks.java +++ b/src/main/java/noppes/npcs/EventHooks.java @@ -42,6 +42,7 @@ import noppes.npcs.api.item.IItemCustom; import noppes.npcs.api.item.IItemStack; import noppes.npcs.scripted.NpcAPI; import noppes.npcs.constants.EnumScriptType; +import noppes.npcs.scripted.item.ScriptCustomItem; import org.apache.commons.lang3.StringUtils; import java.util.ArrayList; @@ -51,70 +52,70 @@ public class EventHooks { } public static void onScriptItemInit(IItemCustom handler) { - if (!handler.isClient()) { + if (!((ScriptCustomItem) handler).isClient()) { ItemEvent.InitEvent event = new ItemEvent.InitEvent(handler); - handler.callScript(EnumScriptType.INIT, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.INIT, event); NpcAPI.EVENT_BUS.post(event); } } public static void onScriptItemUpdate(IItemCustom handler, EntityLivingBase player) { - if (!handler.isClient()) { + if (!((ScriptCustomItem) handler).isClient()) { ItemEvent.UpdateEvent event = new ItemEvent.UpdateEvent(handler, NpcAPI.Instance().getIEntity(player)); - handler.callScript(EnumScriptType.TICK, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.TICK, event); NpcAPI.EVENT_BUS.post(event); } } public static boolean onScriptItemTossed(IItemCustom handler, EntityPlayer player, EntityItem entity) { ItemEvent.TossedEvent event = new ItemEvent.TossedEvent(handler, (IPlayer)NpcAPI.Instance().getIEntity(player), NpcAPI.Instance().getIEntity(entity)); - handler.callScript(EnumScriptType.TOSSED, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.TOSSED, event); return NpcAPI.EVENT_BUS.post(event); } public static boolean onScriptItemPickedUp(IItemCustom handler, EntityPlayer player) { ItemEvent.PickedUpEvent event = new ItemEvent.PickedUpEvent(handler, (IPlayer)NpcAPI.Instance().getIEntity(player)); - handler.callScript(EnumScriptType.PICKEDUP, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.PICKEDUP, event); return NpcAPI.EVENT_BUS.post(event); } public static boolean onScriptItemSpawn(IItemCustom handler, EntityItem entity) { ItemEvent.SpawnEvent event = new ItemEvent.SpawnEvent(handler, NpcAPI.Instance().getIEntity(entity)); - handler.callScript(EnumScriptType.SPAWN, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.SPAWN, event); return NpcAPI.EVENT_BUS.post(event); } public static boolean onScriptItemInteract(IItemCustom handler, noppes.npcs.scripted.event.ItemEvent.InteractEvent event) { - handler.callScript(EnumScriptType.INTERACT, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.INTERACT, event); return NpcAPI.EVENT_BUS.post(event); } public static boolean onScriptItemAttack(IItemCustom handler, noppes.npcs.scripted.event.ItemEvent.AttackEvent event) { - handler.callScript(EnumScriptType.ATTACK, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.ATTACK, event); return NpcAPI.EVENT_BUS.post(event); } public static boolean onStartUsingCustomItem(IItemCustom handler, IPlayer player, int duration) { ItemEvent.StartUsingItem event = new ItemEvent.StartUsingItem(handler, player, duration); - handler.callScript(EnumScriptType.START_USING_ITEM, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.START_USING_ITEM, event); return NpcAPI.EVENT_BUS.post(event); } public static boolean onUsingCustomItem(IItemCustom handler, IPlayer player, int duration) { ItemEvent.UsingItem event = new ItemEvent.UsingItem(handler, player, duration); - handler.callScript(EnumScriptType.USING_ITEM, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.USING_ITEM, event); return NpcAPI.EVENT_BUS.post(event); } public static boolean onStopUsingCustomItem(IItemCustom handler, IPlayer player, int duration) { ItemEvent.StopUsingItem event = new ItemEvent.StopUsingItem(handler, player, duration); - handler.callScript(EnumScriptType.STOP_USING_ITEM, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.STOP_USING_ITEM, event); return NpcAPI.EVENT_BUS.post(event); } public static boolean onFinishUsingCustomItem(IItemCustom handler, IPlayer player, int duration) { ItemEvent.FinishUsingItem event = new ItemEvent.FinishUsingItem(handler, player, duration); - handler.callScript(EnumScriptType.FINISH_USING_ITEM, event); + ((ScriptCustomItem) handler).callScript(EnumScriptType.FINISH_USING_ITEM, event); return NpcAPI.EVENT_BUS.post(event); } diff --git a/src/main/java/noppes/npcs/NBTTags.java b/src/main/java/noppes/npcs/NBTTags.java index b5cea0c3d..d3cc4bdca 100644 --- a/src/main/java/noppes/npcs/NBTTags.java +++ b/src/main/java/noppes/npcs/NBTTags.java @@ -8,7 +8,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagDouble; import net.minecraft.nbt.NBTTagList; import noppes.npcs.controllers.ScriptContainer; -import noppes.npcs.api.IScriptHandler; +import noppes.npcs.controllers.data.IScriptHandler; public class NBTTags { diff --git a/src/main/java/noppes/npcs/client/gui/script/GuiScriptInterface.java b/src/main/java/noppes/npcs/client/gui/script/GuiScriptInterface.java index a3ad6b26f..e262a2c10 100644 --- a/src/main/java/noppes/npcs/client/gui/script/GuiScriptInterface.java +++ b/src/main/java/noppes/npcs/client/gui/script/GuiScriptInterface.java @@ -31,7 +31,7 @@ import noppes.npcs.NoppesStringUtils; import noppes.npcs.client.NoppesUtil; import noppes.npcs.client.gui.swing.GuiJTextArea; import noppes.npcs.client.gui.util.*; -import noppes.npcs.api.IScriptHandler; +import noppes.npcs.controllers.data.IScriptHandler; import noppes.npcs.controllers.ScriptController; import noppes.npcs.controllers.data.ForgeDataScript; import noppes.npcs.controllers.data.NPCDataScript; diff --git a/src/main/java/noppes/npcs/controllers/ScriptContainer.java b/src/main/java/noppes/npcs/controllers/ScriptContainer.java index 40e853275..d9189be66 100644 --- a/src/main/java/noppes/npcs/controllers/ScriptContainer.java +++ b/src/main/java/noppes/npcs/controllers/ScriptContainer.java @@ -18,7 +18,7 @@ import cpw.mods.fml.common.eventhandler.Event; import net.minecraft.nbt.NBTTagCompound; import noppes.npcs.CustomNpcs; import noppes.npcs.NBTTags; -import noppes.npcs.api.IScriptHandler; +import noppes.npcs.controllers.data.IScriptHandler; import noppes.npcs.constants.EnumScriptType; import noppes.npcs.scripted.NpcAPI; diff --git a/src/main/java/noppes/npcs/controllers/data/DataScript.java b/src/main/java/noppes/npcs/controllers/data/DataScript.java index 3b8cb994a..84aace63c 100644 --- a/src/main/java/noppes/npcs/controllers/data/DataScript.java +++ b/src/main/java/noppes/npcs/controllers/data/DataScript.java @@ -17,7 +17,6 @@ import noppes.npcs.EventHooks; import noppes.npcs.LogWriter; import noppes.npcs.constants.EnumScriptType; import noppes.npcs.controllers.ScriptContainer; -import noppes.npcs.api.IScriptHandler; import noppes.npcs.controllers.ScriptController; import noppes.npcs.entity.EntityNPCInterface; import noppes.npcs.scripted.entity.ScriptNpc; diff --git a/src/main/java/noppes/npcs/controllers/data/ForgeDataScript.java b/src/main/java/noppes/npcs/controllers/data/ForgeDataScript.java index 478106643..60fba5226 100644 --- a/src/main/java/noppes/npcs/controllers/data/ForgeDataScript.java +++ b/src/main/java/noppes/npcs/controllers/data/ForgeDataScript.java @@ -19,7 +19,6 @@ import noppes.npcs.EventHooks; import noppes.npcs.controllers.ScriptContainer; import noppes.npcs.NBTTags; import noppes.npcs.constants.EnumScriptType; -import noppes.npcs.api.IScriptHandler; import noppes.npcs.controllers.ScriptController; public class ForgeDataScript implements IScriptHandler { diff --git a/src/api/java/noppes/npcs/api/IScriptHandler.java b/src/main/java/noppes/npcs/controllers/data/IScriptHandler.java similarity index 87% rename from src/api/java/noppes/npcs/api/IScriptHandler.java rename to src/main/java/noppes/npcs/controllers/data/IScriptHandler.java index ab8ea3061..504507d7b 100644 --- a/src/api/java/noppes/npcs/api/IScriptHandler.java +++ b/src/main/java/noppes/npcs/controllers/data/IScriptHandler.java @@ -3,12 +3,13 @@ // (powered by Fernflower decompiler) // -package noppes.npcs.api; +package noppes.npcs.controllers.data; import java.util.List; import java.util.Map; import cpw.mods.fml.common.eventhandler.Event; import noppes.npcs.constants.EnumScriptType; +import noppes.npcs.controllers.ScriptContainer; public interface IScriptHandler { void callScript(EnumScriptType var1, Event var2); diff --git a/src/main/java/noppes/npcs/controllers/data/NPCDataScript.java b/src/main/java/noppes/npcs/controllers/data/NPCDataScript.java index 645655da1..8a7eeb9b2 100644 --- a/src/main/java/noppes/npcs/controllers/data/NPCDataScript.java +++ b/src/main/java/noppes/npcs/controllers/data/NPCDataScript.java @@ -7,7 +7,6 @@ import net.minecraft.util.math.BlockPos; import noppes.npcs.CustomNpcs; import noppes.npcs.NBTTags; import noppes.npcs.constants.EnumScriptType; -import noppes.npcs.api.IScriptHandler; import noppes.npcs.controllers.ScriptContainer; import noppes.npcs.controllers.ScriptController; import noppes.npcs.entity.EntityNPCInterface; diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java b/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java index fe3bc9565..7d5809b7e 100644 --- a/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java +++ b/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java @@ -16,7 +16,6 @@ import noppes.npcs.EventHooks; import noppes.npcs.controllers.ScriptContainer; import noppes.npcs.NBTTags; import noppes.npcs.constants.EnumScriptType; -import noppes.npcs.api.IScriptHandler; import noppes.npcs.controllers.ScriptController; import noppes.npcs.scripted.NpcAPI; import noppes.npcs.api.entity.IPlayer; diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerItemGiverData.java b/src/main/java/noppes/npcs/controllers/data/PlayerItemGiverData.java index 008fe3265..758483b26 100644 --- a/src/main/java/noppes/npcs/controllers/data/PlayerItemGiverData.java +++ b/src/main/java/noppes/npcs/controllers/data/PlayerItemGiverData.java @@ -49,15 +49,15 @@ public class PlayerItemGiverData implements IPlayerItemGiverData { } public long getTime(IJobItemGiver jobItemGiver){ - return itemgivers.get(((JobItemGiver) jobItemGiver.getJobInterface()).itemGiverId); + return itemgivers.get(((JobItemGiver) jobItemGiver).itemGiverId); } public void setTime(IJobItemGiver jobItemGiver, long day) { - itemgivers.put(((JobItemGiver) jobItemGiver.getJobInterface()).itemGiverId, day); + itemgivers.put(((JobItemGiver) jobItemGiver).itemGiverId, day); } public boolean hasInteractedBefore(IJobItemGiver jobItemGiver) { - return itemgivers.containsKey(((JobItemGiver) jobItemGiver.getJobInterface()).itemGiverId); + return itemgivers.containsKey(((JobItemGiver) jobItemGiver).itemGiverId); } public IJobItemGiver[] getItemGivers() { diff --git a/src/main/java/noppes/npcs/scripted/ScriptPixelmonPlayerData.java b/src/main/java/noppes/npcs/scripted/ScriptPixelmonPlayerData.java index 1efd16256..7077b1b5d 100644 --- a/src/main/java/noppes/npcs/scripted/ScriptPixelmonPlayerData.java +++ b/src/main/java/noppes/npcs/scripted/ScriptPixelmonPlayerData.java @@ -3,10 +3,11 @@ package noppes.npcs.scripted; import net.minecraft.entity.passive.EntityTameable; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.nbt.NBTTagCompound; +import noppes.npcs.api.IPixelmonPlayerData; import noppes.npcs.controllers.PixelmonHelper; import noppes.npcs.scripted.entity.ScriptPixelmon; -public class ScriptPixelmonPlayerData { +public class ScriptPixelmonPlayerData implements IPixelmonPlayerData { private EntityPlayerMP player; public ScriptPixelmonPlayerData(EntityPlayerMP player){ this.player = player; diff --git a/src/main/java/noppes/npcs/scripted/ScriptWorld.java b/src/main/java/noppes/npcs/scripted/ScriptWorld.java index 887709a0c..cf5e75a07 100644 --- a/src/main/java/noppes/npcs/scripted/ScriptWorld.java +++ b/src/main/java/noppes/npcs/scripted/ScriptWorld.java @@ -21,6 +21,7 @@ import net.minecraft.util.Vec3; import net.minecraft.world.WorldServer; import noppes.npcs.CustomNpcs; import noppes.npcs.NoppesUtilServer; +import noppes.npcs.api.scoreboard.IScoreboard; import noppes.npcs.blocks.tiles.TileBigSign; import noppes.npcs.controllers.ScriptController; import noppes.npcs.controllers.ServerCloneController; @@ -878,7 +879,7 @@ public class ScriptWorld implements IWorld { return this.spawnClone(pos.getX(),pos.getY(),pos.getZ(),tab,name); } - public ScriptScoreboard getScoreboard(){ + public IScoreboard getScoreboard(){ return new ScriptScoreboard(); } diff --git a/src/main/java/noppes/npcs/scripted/entity/ScriptLivingBase.java b/src/main/java/noppes/npcs/scripted/entity/ScriptLivingBase.java index 973e04483..b11661818 100644 --- a/src/main/java/noppes/npcs/scripted/entity/ScriptLivingBase.java +++ b/src/main/java/noppes/npcs/scripted/entity/ScriptLivingBase.java @@ -7,6 +7,7 @@ import net.minecraft.potion.PotionEffect; import net.minecraft.util.DamageSource; import net.minecraft.util.EntityDamageSource; import net.minecraft.util.Vec3; +import noppes.npcs.api.IDamageSource; import noppes.npcs.scripted.NpcAPI; import noppes.npcs.scripted.ScriptDamageSource; import noppes.npcs.scripted.constants.EntityType; @@ -49,7 +50,7 @@ public class ScriptLivingBase extends ScriptEntity extends ScriptLiving imp /** * @return Returns the npcs current role */ - public ScriptRoleInterface getRole(){ + public IRole getRole(){ if(npc.advanced.role == EnumRoleType.Bank) return new ScriptRoleBank(npc); else if(npc.advanced.role == EnumRoleType.Follower) @@ -357,7 +359,7 @@ public class ScriptNpc extends ScriptLiving imp /** * @return Returns the npcs current job */ - public ScriptJobInterface getJob(){ + public IJob getJob(){ if(npc.advanced.job == EnumJobType.Bard) return new ScriptJobBard(npc); else if(npc.advanced.job == EnumJobType.Conversation) diff --git a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java index f2309b4d6..a759a6c17 100644 --- a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java +++ b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java @@ -663,7 +663,7 @@ public class ScriptPlayer extends ScriptLivingBase * Requires pixelmon to be installed * @since 1.7.10d */ - public ScriptPixelmonPlayerData getPixelmonData(){ + public IPixelmonPlayerData getPixelmonData(){ if(!PixelmonHelper.Enabled) return null; return new ScriptPixelmonPlayerData(player); diff --git a/src/main/java/noppes/npcs/scripted/event/CustomGuiEvent.java b/src/main/java/noppes/npcs/scripted/event/CustomGuiEvent.java index 2de40f767..65b6d055e 100644 --- a/src/main/java/noppes/npcs/scripted/event/CustomGuiEvent.java +++ b/src/main/java/noppes/npcs/scripted/event/CustomGuiEvent.java @@ -15,6 +15,14 @@ public class CustomGuiEvent extends Event { this.gui = gui; } + public IPlayer getPlayer() { + return this.player; + } + + public ICustomGui getGui() { + return gui; + } + public static class ButtonEvent extends CustomGuiEvent { public final int buttonId; diff --git a/src/main/java/noppes/npcs/scripted/event/CustomNPCsEvent.java b/src/main/java/noppes/npcs/scripted/event/CustomNPCsEvent.java index 822dfbeeb..97abb5cc8 100644 --- a/src/main/java/noppes/npcs/scripted/event/CustomNPCsEvent.java +++ b/src/main/java/noppes/npcs/scripted/event/CustomNPCsEvent.java @@ -11,7 +11,7 @@ import noppes.npcs.api.AbstractNpcAPI; import noppes.npcs.api.IPos; import noppes.npcs.api.handler.data.INaturalSpawn; -public class CustomNPCsEvent extends Event{ +public class CustomNPCsEvent extends Event implements noppes.npcs.api.event.CustomNPCsEvent { public final AbstractNpcAPI API = AbstractNpcAPI.Instance(); public CustomNPCsEvent() { @@ -24,7 +24,7 @@ public class CustomNPCsEvent extends Event{ public boolean isCancelled(){return this.isCanceled();} @Cancelable - public static class CNPCNaturalSpawnEvent extends CustomNPCsEvent { + public static class CNPCNaturalSpawnEvent extends CustomNPCsEvent implements noppes.npcs.api.event.CustomNPCsEvent.CNPCNaturalSpawnEvent { public final INaturalSpawn naturalSpawn; public final IPos attemptPosition; public final boolean animalSpawnPassed; @@ -41,5 +41,29 @@ public class CustomNPCsEvent extends Event{ this.liquidSpawnPassed = liquidSpawnPassed; this.airSpawnPassed = airSpawnPassed; } + + public INaturalSpawn getNaturalSpawn() { + return this.naturalSpawn; + } + + public IPos getAttemptPosition() { + return this.attemptPosition; + } + + public boolean animalSpawnPassed() { + return this.animalSpawnPassed; + } + + public boolean monsterSpawnPassed() { + return this.monsterSpawnPassed; + } + + public boolean liquidSpawnPassed() { + return this.liquidSpawnPassed; + } + + public boolean airSpawnPassed() { + return this.airSpawnPassed; + } } } diff --git a/src/main/java/noppes/npcs/scripted/item/ScriptCustomItem.java b/src/main/java/noppes/npcs/scripted/item/ScriptCustomItem.java index 80a90e313..8cdf408b7 100644 --- a/src/main/java/noppes/npcs/scripted/item/ScriptCustomItem.java +++ b/src/main/java/noppes/npcs/scripted/item/ScriptCustomItem.java @@ -6,7 +6,7 @@ import net.minecraft.nbt.NBTTagCompound; import noppes.npcs.EventHooks; import noppes.npcs.NBTTags; import noppes.npcs.constants.EnumScriptType; -import noppes.npcs.api.IScriptHandler; +import noppes.npcs.controllers.data.IScriptHandler; import noppes.npcs.controllers.ScriptContainer; import noppes.npcs.controllers.ScriptController; import noppes.npcs.scripted.CustomNPCsException; diff --git a/src/main/java/noppes/npcs/scripted/scoreboard/ScriptScoreboard.java b/src/main/java/noppes/npcs/scripted/scoreboard/ScriptScoreboard.java index 3d08c23fe..d2210c395 100644 --- a/src/main/java/noppes/npcs/scripted/scoreboard/ScriptScoreboard.java +++ b/src/main/java/noppes/npcs/scripted/scoreboard/ScriptScoreboard.java @@ -9,11 +9,12 @@ import net.minecraft.scoreboard.ScoreObjective; import net.minecraft.scoreboard.ScorePlayerTeam; import net.minecraft.scoreboard.Scoreboard; import net.minecraft.server.MinecraftServer; +import noppes.npcs.api.scoreboard.IScoreboard; /** * @author Karel */ -public class ScriptScoreboard { +public class ScriptScoreboard implements IScoreboard { private Scoreboard board; public ScriptScoreboard(){