diff --git a/Server/src/org/crandor/game/system/script/ScriptManager.java b/Server/src/org/crandor/game/system/script/ScriptManager.java index d3e78d385..8464399a5 100644 --- a/Server/src/org/crandor/game/system/script/ScriptManager.java +++ b/Server/src/org/crandor/game/system/script/ScriptManager.java @@ -96,6 +96,10 @@ public final class ScriptManager { if (file.getName().equals(".DS_Store")) { continue; } + //Files to EXCLUDE from loading + if (file.getName().equals("simon_templeton.asc") || file.getName().equals("ardougne_baker.asc") || file.getName().equals("anna_isaakson.asc")){ + continue; + } if (file.isDirectory()) { load(file); continue; diff --git a/Server/src/plugin/dialogue/AnnaIsaakson.java b/Server/src/plugin/dialogue/AnnaIsaakson.java new file mode 100644 index 000000000..9694a7580 --- /dev/null +++ b/Server/src/plugin/dialogue/AnnaIsaakson.java @@ -0,0 +1,56 @@ +package plugin.dialogue; + +import org.crandor.game.content.dialogue.DialoguePlugin; +import org.crandor.game.node.entity.player.Player; +import org.crandor.plugin.InitializablePlugin; + +/** + * Replacement for the Anna Isaakson .asc file + * @author ceik + */ + +@InitializablePlugin +public class AnnaIsaakson extends DialoguePlugin { + public AnnaIsaakson(){ + /** + * Empty on purpose + */ + } + public AnnaIsaakson(Player player){super(player);} + + @Override + public DialoguePlugin newInstance(Player player){return new AnnaIsaakson(player);} + + @Override + public boolean open(Object... args) { + npc("Hello visitor, how are you?"); + stage = 1; + return true; + } + + @Override + public final boolean handle(int interfaceId, int buttonId){ + switch(stage){ + case 1: + player("Better than expected. Its a lot...nicer...here than I was", "expecting. Everyone seems pretty happy."); + stage = 2; + break; + case 2: + npc("Of course, the Burgher is strong and wise, and looks", "after us well"); + stage = 3; + break; + case 3: + player("I think some of those Jatizso citizens have got", "the wrong idea about this place."); + stage = 10; + break; + case 10: + end(); + break; + } + return true; + } + @Override + public int[] getIds() { + return new int[] { 5512 }; + } +} diff --git a/Server/src/plugin/dialogue/ArdougneBaker.java b/Server/src/plugin/dialogue/ArdougneBaker.java new file mode 100644 index 000000000..84401ae7f --- /dev/null +++ b/Server/src/plugin/dialogue/ArdougneBaker.java @@ -0,0 +1,59 @@ +package plugin.dialogue; + +import org.crandor.game.content.dialogue.DialoguePlugin; +import org.crandor.game.node.entity.npc.NPC; +import org.crandor.game.node.entity.player.Player; +import org.crandor.plugin.InitializablePlugin; + +/** + * Replacement for ArdougneBaker.asc + * @author ceik + */ + +@InitializablePlugin +public class ArdougneBaker extends DialoguePlugin { + public ArdougneBaker(){ + /** + * Empty on purpose + */ + } + public ArdougneBaker(Player player){super(player);} + + @Override + public DialoguePlugin newInstance(Player player){return new ArdougneBaker(player);} + + @Override + public boolean open(Object... args) { + npc = (NPC)args[0]; + npc("Good day, monsieur. Would you like ze nice", "freshly-baked bread? Or perhaps a nice piece of cake?"); + stage = 1; + return true; + } + + @Override + public final boolean handle(int interfaceId, int buttonId){ + switch(stage){ + case 1: + interpreter.sendOptions("Choose an option.", "Let's see what you have.", "No thank you."); + stage = 2; + break; + case 2: + switch(buttonId){ + case 1: + end(); + npc.openShop(player); + stage = 20; + break; + case 2: + end(); + break; + } + break; + } + return true; + } + @Override + public int[] getIds() { + return new int[] { 571 }; + } +}