diff --git a/Server/data/configs/npc_configs.json b/Server/data/configs/npc_configs.json index 018c8d19d..fa7bba676 100644 --- a/Server/data/configs/npc_configs.json +++ b/Server/data/configs/npc_configs.json @@ -71333,6 +71333,21 @@ "name": "Dreven", "id": "2335" }, + { + "examine": "Founder and Director of the Piscatoris Fishing Colony.", + "name": "Herman Caranos", + "id": "3822" + }, + { + "examine": "Engineer for the Piscatoris Fishing Colony.", + "name": "Franklin Caranos", + "id": "3823" + }, + { + "examine": "Secretary and Storemaster for the Piscatoris Fishing Colony.", + "name": "Arnold Lydspor", + "id": "3824" + }, { "examine": "Perhaps this gardener might look after your crops for you.", "name": "Frizzy Skernip", @@ -72276,5 +72291,24 @@ "examine": "He looks dangerous!", "name": "Turael", "id": "8273" + }, + { + "examine": "Doesn't seem to want to go away.", + "combat_style": "2", + "melee_animation": "811", + "range_animation": "811", + "attack_speed": "4", + "magic_level": "100", + "defence_animation": "0", + "magic_animation": "811", + "death_animation": "836", + "name": "Skeleton Mage", + "defence_level": "60", + "lifepoints": "80", + "strength_level": "10", + "id": "3851", + "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0", + "range_level": "1", + "attack_level": "10" } ] \ No newline at end of file diff --git a/Server/data/configs/npc_spawns.json b/Server/data/configs/npc_spawns.json index 86137716c..b7df06910 100644 --- a/Server/data/configs/npc_spawns.json +++ b/Server/data/configs/npc_spawns.json @@ -6391,9 +6391,14 @@ "npc_id": "3820", "loc_data": "{3088,3255,0,0,6}" }, + + { + "npc_id": "3822", + "loc_data": "{2353,3680,0,1,3}" + }, { "npc_id": "3823", - "loc_data": "{2343,3668,0,0,0}" + "loc_data": "{2343,3668,0,1,3}" }, { "npc_id": "3824", diff --git a/Server/src/main/content/region/kandarin/pisc/dialogue/FranklinCaranosDialogue.kt b/Server/src/main/content/region/kandarin/pisc/dialogue/FranklinCaranosDialogue.kt new file mode 100644 index 000000000..6ae06da7a --- /dev/null +++ b/Server/src/main/content/region/kandarin/pisc/dialogue/FranklinCaranosDialogue.kt @@ -0,0 +1,41 @@ +package content.region.kandarin.pisc.dialogue + +import core.game.dialogue.DialoguePlugin +import core.game.dialogue.FacialExpression +import core.game.node.entity.player.Player +import core.plugin.Initializable +import core.tools.END_DIALOGUE +import core.tools.START_DIALOGUE +import org.rs09.consts.NPCs + +@Initializable +class FranklinCaranosDialogue(player: Player? = null) : DialoguePlugin(player) { + + override fun handle(interfaceId: Int, buttonId: Int): Boolean { + when (stage) { + START_DIALOGUE -> npcl( + FacialExpression.FRIENDLY, + "Hello again, " + player.username + "." + ).also { stage++ } + + 1 -> playerl( + FacialExpression.ASKING, + "Hello. How's the repair work going?" + ).also { stage++ } + + 2 -> npcl( + FacialExpression.NEUTRAL, + "I'm working on it. I can always do with more iron sheets, so if you've got any more, I'll give you 20 gp per sheet." + ).also { stage++ } + + 3 -> playerl( + FacialExpression.NEUTRAL, + "Thanks, I'll remember that." + ).also { stage = END_DIALOGUE } + } + + return true + } + + override fun getIds(): IntArray = intArrayOf((NPCs.FRANKLIN_CARANOS_3823)) +} \ No newline at end of file diff --git a/Server/src/main/content/region/kandarin/pisc/dialogue/HermanCaranosDialogue.kt b/Server/src/main/content/region/kandarin/pisc/dialogue/HermanCaranosDialogue.kt new file mode 100644 index 000000000..4e1171881 --- /dev/null +++ b/Server/src/main/content/region/kandarin/pisc/dialogue/HermanCaranosDialogue.kt @@ -0,0 +1,57 @@ +package content.region.kandarin.pisc.dialogue + +import core.game.dialogue.DialoguePlugin +import core.game.dialogue.FacialExpression +import core.game.node.entity.player.Player +import core.plugin.Initializable +import core.tools.END_DIALOGUE +import core.tools.START_DIALOGUE +import org.rs09.consts.NPCs + +@Initializable +class HermanCaranosDialogue(player: Player? = null) : DialoguePlugin(player) { + + override fun handle(interfaceId: Int, buttonId: Int): Boolean { + when (stage) { + START_DIALOGUE -> playerl( + FacialExpression.FRIENDLY, + "Hiya Hermie!" + ).also { stage++ } + + 1 -> npcl( + FacialExpression.FRIENDLY, + "Ah, " + player.username + "! How's the fishing going?" + ).also { stage++ } + + 2 -> playerl( + FacialExpression.NEUTRAL, + "Still working on it. How's the Colony?" + ).also { stage++ } + + 3 -> npcl( + FacialExpression.HAPPY, + "Flourishing, now that the colonists are coming back! Soon all the finest restaurants will be serving monkfish!" + ).also { stage++ } + + 4 -> npcl( + FacialExpression.ANNOYED, + "It's a pity those skeletons you brought here haven't gone away again, though. They're in the dormitories, which is rather annoying! So please take a little time to kick 'em around a bit." + ).also { stage++ } + + 5 -> npcl( + FacialExpression.ANNOYED, + "Oh, and please don't call me Hermie." + ).also { stage++ } + + 6 -> playerl( + FacialExpression.LAUGH, + "Whatever you like, Hermie!" + ).also { stage = END_DIALOGUE } + } + + return true + } + + override fun getIds(): IntArray = intArrayOf(NPCs.HERMAN_CARANOS_3822) + +} \ No newline at end of file