Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions data/area/karamja/karamja.objs.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
[snake_vine_full]
id = 2575
examine = "A marshy jungle vine."

[snake_vine_empty]
id = 2576
examine = "A marshy jungle vine."

[ardrigal_palm_full]
id = 2577
examine = "A tall palm tree with some plants growing at its stem."

[ardrigal_palm_empty]
id = 2578
examine = "A tall palm tree."

[sito_soil_full]
id = 2579
examine = "The burnt ground has a plant growing on it."

[sito_soil_empty]
id = 2580
examine = "The ground has been burnt here by a fire."

[volencia_moss_rock_full]
id = 2581
examine = "A rock with green moss growing on it."

[volencia_moss_rock_empty]
id = 2582
examine = "A rock, it looks like something was growing here."

[pothole_cave_entrance]
id = 2584
examine = "A collection of rocks over what looks like a depression."

[rogues_purse_cave_full]
id = 32106
examine = "It looks as if it is covered in some fungus."

[rogues_purse_cave_empty]
id = 32107
examine = "It looks as if it is covered in some fungus."
3 changes: 3 additions & 0 deletions data/area/karamja/pothole_dungeon/pothole_dungeon.objs.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[jp_caverocksout]
id = 2585
examine = "Rocky walls, you may be able to climb it."
9 changes: 9 additions & 0 deletions data/entity/player/human.anims.toml
Original file line number Diff line number Diff line change
Expand Up @@ -81,3 +81,12 @@ id = 834

[human_read_book]
id = 1350

[human_pick_wall_start]
id = 2096

[human_pick_wall_middle]
id = 2097

[human_pick_wall_end]
id = 2098
69 changes: 69 additions & 0 deletions data/quest/members/jungle_potion/jungle_potion.varbits.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
[sharimika]
id = 892
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]

[mamma_bufetta]
id = 893
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]

[layleen]
id = 894
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]

[karaday]
id = 895
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]

[safta_doc]
id = 896
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]

[gabooty]
id = 897
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]

[fanellaman]
id = 898
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]

[jagbakoba]
id = 899
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]

[murcaily]
id = 900
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]

[rionasta]
id = 901
persist = true
format = "list"
default = "hidden"
values = [ "hidden", "trading_stick", "no_trading_stick" ]
2 changes: 1 addition & 1 deletion data/quest/members/jungle_potion/jungle_potion.varps.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ id = 175
persist = true
format = "map"
default = "unstarted"
values = { unstarted = 0, completed = 12 }
values = { unstarted = 0, started = 1, found_snake_weed = 2, gave_snake_weed = 3, found_ardrigal = 4, gave_ardrigal = 5, found_sito_foil = 6, gave_sito_foil = 7, found_volencia_moss = 8, gave_volencia_moss = 9, found_rogues_purse = 10, gave_rogues_purse = 11, completed = 12 }
25 changes: 25 additions & 0 deletions data/skill/herblore/herbs.tables.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,31 @@ level = "int"
xp = "int"
name = "string"

[.grimy_snake_weed]
level = 3
xp = 25
name = "snake weed"

[.grimy_ardrigal]
level = 3
xp = 25
name = "ardrigal"

[.grimy_sito_foil]
level = 3
xp = 25
name = "sito foil"

[.grimy_volencia_moss]
level = 3
xp = 25
name = "volencia moss"

[.grimy_rogues_purse]
level = 3
xp = 25
name = "rogues purse"

[.grimy_guam]
level = 3
xp = 25
Expand Down
125 changes: 125 additions & 0 deletions game/src/main/kotlin/content/area/karamja/Karamja.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
package content.area.karamja

import content.entity.player.dialogue.type.choice
import content.entity.player.dialogue.type.item
import content.entity.player.dialogue.type.statement
import content.quest.quest
import content.quest.questStage
import world.gregs.voidps.engine.Script
import world.gregs.voidps.engine.client.message
import world.gregs.voidps.engine.entity.character.move.tele
import world.gregs.voidps.engine.entity.obj.replace
import world.gregs.voidps.engine.inv.add
import world.gregs.voidps.engine.inv.inventory
import world.gregs.voidps.engine.timer.toTicks
import java.util.concurrent.TimeUnit

class Karamja : Script {

init {

objectOperate("Search", "snake_vine_full") { (target) ->
if (quest("jungle_potion") == "unstarted") {
message("Unfortunately, you find nothing of interest.")
return@objectOperate
}
message("You search the vine...")
animDelay("open_chest_mid")
if (inventory.add("grimy_snake_weed")) {
if (quest("jungle_potion") == "started") {
set("jungle_potion", "found_snake_weed")
}
target.replace("snake_vine_empty", ticks = TimeUnit.SECONDS.toTicks(60))
item("grimy_snake_weed", "You find a grimy herb.")
} else {
item("grimy_snake_weed", "You find a grimy herb but you have no place to store it in your inventory.")
}
}

objectOperate("Search", "ardrigal_palm_full") { (target) ->
if (questStage("jungle_potion") <= 2) {
message("You find nothing of significance.")
return@objectOperate
}
if (inventory.add("grimy_ardrigal")) {
if (quest("jungle_potion") == "gave_snake_weed") {
set("jungle_potion", "found_ardrigal")
}
target.replace("ardrigal_palm_empty", ticks = TimeUnit.SECONDS.toTicks(60))
item("grimy_ardrigal", "You find a herb.")
} else {
item("grimy_ardrigal", "You find a grimy herb but you have no place to store it in your inventory.")
}
}

objectOperate("Search", "sito_soil_full") { (target) ->
if (questStage("jungle_potion") <= 4) {
message("You find nothing of significance.")
return@objectOperate
}
if (inventory.add("grimy_sito_foil")) {
if (quest("jungle_potion") == "gave_ardrigal") {
set("jungle_potion", "found_sito_foil")
}
target.replace("sito_soil_empty", ticks = TimeUnit.SECONDS.toTicks(60))
item("grimy_sito_foil", "You find a herb.")
} else {
item("grimy_sito_foil", "You find a grimy herb but you have no place to store it in your inventory.")
}
}

objectOperate("Search", "volencia_moss_rock_full") { (target) ->
if (questStage("jungle_potion") <= 6) {
message("You find nothing of significance.")
return@objectOperate
}
if (inventory.add("grimy_volencia_moss")) {
if (quest("jungle_potion") == "gave_sito_foil") {
set("jungle_potion", "found_volencia_moss")
}
target.replace("volencia_moss_rock_empty", ticks = TimeUnit.SECONDS.toTicks(60))
item("grimy_volencia_moss", "You find a herb.")
} else {
item("grimy_volencia_moss", "You find a grimy herb but you have no place to store it in your inventory.")
}
}

objectOperate("Search", "rogues_purse_cave_full") { (target) ->
message("You search the wall...")
anim("human_pick_wall_middle") // maybe needs human_pick_wall_start
delay(4)
anim("human_pick_wall_end")
if (questStage("jungle_potion") <= 8) {
message("Unfortunately, you find nothing of interest.")
return@objectOperate
}
if (inventory.add("grimy_rogues_purse")) {
if (quest("jungle_potion") == "gave_volencia_moss") {
set("jungle_potion", "found_rogues_purse")
}
target.replace("rogues_purse_cave_empty", ticks = TimeUnit.SECONDS.toTicks(60))
item("grimy_rogues_purse", "You find a herb.")
} else {
item("grimy_rogues_purse", "You find a grimy herb but you have no place to store it in your inventory.")
}
}

objectOperate("Search", "pothole_cave_entrance") { (target) ->
statement("You search the rocks... You find an entrance into some caves.")
choice {
option("Yes, I'll enter the cave.") {
statement("You decide to enter the cave. You climb down several steep rock faces into the cavern below.")
tele(2828, 9524, 0)
}
option("No thanks, Ill give it a miss.") {
statement("You decide to stay where you are!")
}
}
}

objectOperate("Climb", "jp_caverocksout") { (target) ->
statement("You attempt to climb the rocks back out.")
tele(2823, 3120, 0)
}
}
}
Loading
Loading