Corrected the Ape Atoll teleport location

Added Solihib npc spawn
Implemented Solihib's store
This commit is contained in:
Player Name 2025-11-25 08:04:03 +00:00 committed by Ryan
parent f25f439bdf
commit 8d182f2505
4 changed files with 48 additions and 1 deletions

View file

@ -74752,6 +74752,7 @@
}, },
{ {
"name": "Solihib", "name": "Solihib",
"movement_radius": "1",
"id": "1433" "id": "1433"
}, },
{ {

View file

@ -3771,6 +3771,10 @@
"npc_id": "1427", "npc_id": "1427",
"loc_data": "{2957,3025,0,0,0}-" "loc_data": "{2957,3025,0,0,0}-"
}, },
{
"npc_id": "1433",
"loc_data": "{2770,2789,0,1,6}-"
},
{ {
"npc_id": "1434", "npc_id": "1434",
"loc_data": "{2753,2770,0,1,6}-" "loc_data": "{2753,2770,0,1,6}-"

View file

@ -96,7 +96,7 @@ class ModernListeners : SpellListener("modern"){
if (!hasRequirement(player, Quests.MONKEY_MADNESS)) if (!hasRequirement(player, Quests.MONKEY_MADNESS))
return@onCast return@onCast
requires(player,64, arrayOf(Item(Items.FIRE_RUNE_554,2),Item(Items.WATER_RUNE_555,2),Item(Items.LAW_RUNE_563,2),Item(Items.BANANA_1963))) requires(player,64, arrayOf(Item(Items.FIRE_RUNE_554,2),Item(Items.WATER_RUNE_555,2),Item(Items.LAW_RUNE_563,2),Item(Items.BANANA_1963)))
sendTeleport(player,74.0, Location.create(2754, 2784, 0)) sendTeleport(player,74.0, Location.create(2795, 2798, 1))
} }
onCast(Modern.TELEPORT_TO_HOUSE, NONE){ player, _ -> onCast(Modern.TELEPORT_TO_HOUSE, NONE){ player, _ ->

View file

@ -0,0 +1,42 @@
package content.region.misc.apeatoll.dialogue.marim
import content.data.Quests
import core.api.hasRequirement
import core.api.openNpcShop
import core.game.dialogue.ChatAnim
import core.game.dialogue.DialogueLabeller
import core.game.dialogue.DialogueOption
import core.game.interaction.IntType
import core.game.interaction.InteractionListener
import core.game.node.entity.npc.NPC
import org.rs09.consts.NPCs
class SolihibDialogue : InteractionListener {
override fun defineListeners() {
on(NPCs.SOLIHIB_1433, IntType.NPC, "talk-to") { player, node ->
if (!hasRequirement(player, Quests.MONKEY_MADNESS)) return@on true
DialogueLabeller.open(player, SolihibDialogueLabellerFile(), node as NPC)
return@on true
}
on(NPCs.SOLIHIB_1433, IntType.NPC, "trade") { player, _ ->
if (!hasRequirement(player, Quests.MONKEY_MADNESS)) return@on true
openNpcShop(player, NPCs.SOLIHIB_1433)
return@on true
}
}
class SolihibDialogueLabellerFile : DialogueLabeller() {
override fun addConversation() {
assignToIds(NPCs.SOLIHIB_1433)
npc(ChatAnim.FRIENDLY, "Would you like to buy or sell some food?")
options(
DialogueOption("trade", "Yes, please."),
DialogueOption("nowhere", "No, thanks.")
)
label("trade")
exec { player, _ -> openNpcShop(player, NPCs.SOLIHIB_1433) }
goto("nowhere")
}
}
}