From 8148a453d0b18c1a80b9f952668a2623c0353b71 Mon Sep 17 00:00:00 2001 From: Trident101 Date: Fri, 15 Sep 2023 05:39:44 +0000 Subject: [PATCH] Added Hring Hring dialogue Corrected stock levels in Hring Hring's shop --- Server/data/configs/shops.json | 2 +- .../jatizso/dialogue/HringHringDialogue.kt | 55 +++++++++++++++++++ 2 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 Server/src/main/content/region/fremennik/jatizso/dialogue/HringHringDialogue.kt diff --git a/Server/data/configs/shops.json b/Server/data/configs/shops.json index 1b70dd8d5..e73e13756 100644 --- a/Server/data/configs/shops.json +++ b/Server/data/configs/shops.json @@ -1842,7 +1842,7 @@ "general_store": "false", "id": "216", "title": "Ore Store", - "stock": "{436,20,100}-{438,10,100}-{440,10,100}-{442,5,100}-{453,10,100}-{444,5,100}-{447,0,100}-{449,0,100}" + "stock": "{436,10,100}-{438,10,100}-{440,0,100}-{442,0,100}-{453,0,100}-{444,0,100}-{447,0,100}-{449,0,100}" }, { "npcs": "596", diff --git a/Server/src/main/content/region/fremennik/jatizso/dialogue/HringHringDialogue.kt b/Server/src/main/content/region/fremennik/jatizso/dialogue/HringHringDialogue.kt new file mode 100644 index 000000000..b7c7a585d --- /dev/null +++ b/Server/src/main/content/region/fremennik/jatizso/dialogue/HringHringDialogue.kt @@ -0,0 +1,55 @@ +package content.region.fremennik.jatizso.dialogue + +import core.api.openNpcShop +import core.game.dialogue.DialoguePlugin +import core.game.dialogue.FacialExpression +import core.game.node.entity.npc.NPC +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 HringHringDialogue(player: Player? = null) : DialoguePlugin(player) { + + override fun newInstance(player: Player?): DialoguePlugin { + return HringHringDialogue(player) + } + + override fun open(vararg args: Any?): Boolean { + npc = args[0] as NPC + npcl( + FacialExpression.FRIENDLY, + " Oh, hello again. Want some ore?" + ).also { stage = START_DIALOGUE } + return true + } + + override fun handle(interfaceId: Int, buttonId: Int): Boolean { + when (stage) { + 0 -> options("I'll have a look.", "Not right now.").also { stage++ } + 1 -> when (buttonId) { + 1 -> playerl( + FacialExpression.FRIENDLY, + "I'll have a look." + ).also { stage++ } + + 2 -> playerl( + FacialExpression.FRIENDLY, + "Not right now." + ).also { stage = END_DIALOGUE } + } + + 2 -> { + openNpcShop(player, NPCs.HRING_HRING_5483) + end() + } + } + return true + } + + override fun getIds(): IntArray { + return intArrayOf(NPCs.HRING_HRING_5483) + } +} \ No newline at end of file