diff --git a/data/entity/player/dialogue/dialogue_expressions.anims.toml b/data/entity/player/dialogue/dialogue_expressions.anims.toml index 329436707f..a418f7460a 100644 --- a/data/entity/player/dialogue/dialogue_expressions.anims.toml +++ b/data/entity/player/dialogue/dialogue_expressions.anims.toml @@ -16,52 +16,52 @@ id = 9744 [expression_amazed4] id = 9745 -[expression_surprised1] +[expression_shock1] id = 9746 -[expression_surprised2] +[expression_shock2] id = 9747 -[expression_surprised3] +[expression_shock3] id = 9748 -[expression_surprised4] +[expression_shock4] id = 9749 -[expression_old_surprised1] +[expression_old_shock1] id = 571 -[expression_old_surprised2] +[expression_old_shock2] id = 572 -[expression_old_surprised3] +[expression_old_shock3] id = 573 -[expression_old_surprised4] +[expression_old_shock4] id = 574 -[expression_shock1] +[expression_horrified1] id = 9750 -[expression_shock2] +[expression_horrified2] id = 9751 -[expression_shock3] +[expression_horrified3] id = 9752 -[expression_shock4] +[expression_horrified4] id = 9753 -[expression_sad1] +[expression_disheartened1] id = 9757 -[expression_sad2] +[expression_disheartened2] id = 9758 -[expression_sad3] +[expression_disheartened3] id = 9759 -[expression_sad4] +[expression_disheartened4] id = 9760 [expression_old_sad1] @@ -76,16 +76,16 @@ id = 612 [expression_old_sad4] id = 613 -[expression_upset1] +[expression_sad1] id = 9761 -[expression_upset2] +[expression_sad2] id = 9762 -[expression_upset3] +[expression_sad3] id = 9763 -[expression_upset4] +[expression_sad4] id = 9764 [expression_cry1] @@ -112,40 +112,40 @@ id = 9771 [expression_teary4] id = 9772 -[expression_afraid1] +[expression_scared1] id = 9773 -[expression_afraid2] +[expression_scared2] id = 9774 -[expression_afraid3] +[expression_scared3] id = 9775 -[expression_afraid4] +[expression_scared4] id = 9776 -[expression_old_afraid1] +[expression_old_scared1] id = 596 -[expression_old_afraid2] +[expression_old_scared2] id = 597 -[expression_old_afraid3] +[expression_old_scared3] id = 598 -[expression_old_afraid4] +[expression_old_scared4] id = 599 -[expression_scared1] +[expression_terrified1] id = 9777 -[expression_scared2] +[expression_terrified2] id = 9778 -[expression_scared3] +[expression_terrified3] id = 9779 -[expression_scared4] +[expression_terrified4] id = 9780 [expression_frustrated1] @@ -226,16 +226,16 @@ id = 9801 [expression_asleep] id = 9802 -[expression_neutral1] +[expression_idle1] id = 9803 -[expression_neutral2] +[expression_idle2] id = 9804 -[expression_neutral3] +[expression_idle3] id = 9805 -[expression_neutral4] +[expression_idle4] id = 9806 [expression_old_neutral1] @@ -250,40 +250,40 @@ id = 590 [expression_old_neutral4] id = 591 -[expression_talk1] +[expression_neutral1] id = 9807 -[expression_talk2] +[expression_neutral2] id = 9808 -[expression_talk3] +[expression_neutral3] id = 9809 -[expression_talk4] +[expression_neutral4] id = 9810 -[expression_uncertain1] +[expression_confused1] id = 9811 -[expression_uncertain2] +[expression_confused2] id = 9812 -[expression_uncertain3] +[expression_confused3] id = 9813 -[expression_uncertain4] +[expression_confused4] id = 9814 -[expression_old_uncertain1] +[expression_old_confused1] id = 575 -[expression_old_uncertain2] +[expression_old_confused2] id = 576 -[expression_old_uncertain3] +[expression_old_confused3] id = 577 -[expression_old_uncertain4] +[expression_old_confused4] id = 578 [expression_admit1] @@ -298,7 +298,7 @@ id = 9817 [expression_admit4] id = 9818 -[expression_old_talk] +[expression_old_idle] id = 579 [expression_sneer1] @@ -349,28 +349,28 @@ id = 556 [expression_old_quiz4] id = 557 -[expression_roll_eyes1] +[expression_bored1] id = 9831 -[expression_roll_eyes2] +[expression_bored2] id = 9832 -[expression_roll_eyes3] +[expression_bored3] id = 9833 -[expression_roll_eyes4] +[expression_bored4] id = 9834 -[expression_old_roll_eyes1] +[expression_old_bored1] id = 562 -[expression_old_roll_eyes2] +[expression_old_bored2] id = 563 -[expression_old_roll_eyes3] +[expression_old_bored3] id = 564 -[expression_old_roll_eyes4] +[expression_old_bored4] id = 565 [expression_drunk] @@ -412,7 +412,7 @@ id = 594 [expression_old_shifty4] id = 595 -[expression_chuckle] +[expression_laugh] id = 9840 [expression_hysterics] @@ -460,28 +460,28 @@ id = 569 [expression_old_happy4] id = 570 -[expression_laugh1] +[expression_cackle1] id = 9851 -[expression_laugh2] +[expression_cackle2] id = 9852 -[expression_laugh3] +[expression_cackle3] id = 9853 -[expression_laugh4] +[expression_cackle4] id = 9854 -[expression_old_chuckle1] +[expression_old_laugh1] id = 605 -[expression_old_chuckle2] +[expression_old_laugh2] id = 606 -[expression_old_chuckle3] +[expression_old_laugh3] id = 607 -[expression_old_chuckle4] +[expression_old_laugh4] id = 608 [expression_unamused1] @@ -610,7 +610,7 @@ id = 14711 [expression_door_head] id = 4281 -[expression_cat_talk] +[expression_cat_neutral] id = 8373 [expression_cat_quiz] @@ -622,7 +622,7 @@ id = 9178 [expression_cat_unamused] id = 9187 -[expression_tree_talk] +[expression_tree_neutral] id = 584 [expression_tree_happy] @@ -640,10 +640,10 @@ id = 7170 [expression_child_evil] id = 7171 -[expression_child_talk] +[expression_child_neutral] id = 7172 -[expression_child_neutral] +[expression_child_idle] id = 7172 [expression_child_happy] @@ -652,7 +652,7 @@ id = 7173 [expression_child_laugh] id = 7175 -[expression_child_uncertain] +[expression_child_confused] id = 7176 [expression_child_sad] @@ -661,5 +661,5 @@ id = 7177 [expression_child_scared] id = 7178 -[expression_child_surprised] +[expression_child_shock] id = 7180 \ No newline at end of file diff --git a/game/src/main/kotlin/content/activity/shooting_star/ShootingStar.kt b/game/src/main/kotlin/content/activity/shooting_star/ShootingStar.kt index 34d4e19848..24c4cbcf2c 100644 --- a/game/src/main/kotlin/content/activity/shooting_star/ShootingStar.kt +++ b/game/src/main/kotlin/content/activity/shooting_star/ShootingStar.kt @@ -5,8 +5,8 @@ import content.activity.shooting_star.ShootingStarHandler.currentActiveObject import content.activity.shooting_star.ShootingStarHandler.currentStarTile import content.activity.shooting_star.ShootingStarHandler.totalCollected import content.entity.combat.hit.damage +import content.entity.player.dialogue.Disheartened import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Sad import content.entity.player.dialogue.type.npc import world.gregs.voidps.engine.Script import world.gregs.voidps.engine.client.command.adminCommand @@ -117,7 +117,7 @@ class ShootingStar : Script { if (inventory.isFull()) { message("Inventory full. To make more room, sell, drop or bank something.", ChatType.Game) } else if (starDustCount == 0) { - npc("You don't seem to have any stardust that I can exchange for a reward") + npc("You don't seem to have any stardust that I can exchange for a reward") } else if (starDustCount > 0) { val rewards = calculateRewards(starDustCount) inventory.remove("stardust", starDustCount) diff --git a/game/src/main/kotlin/content/area/asgarnia/burthorpe/HeroesGuild.kt b/game/src/main/kotlin/content/area/asgarnia/burthorpe/HeroesGuild.kt index e418d9406e..593ef0a464 100644 --- a/game/src/main/kotlin/content/area/asgarnia/burthorpe/HeroesGuild.kt +++ b/game/src/main/kotlin/content/area/asgarnia/burthorpe/HeroesGuild.kt @@ -1,8 +1,8 @@ package content.area.asgarnia.burthorpe +import content.entity.player.dialogue.Confused +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Uncertain import content.entity.player.dialogue.type.item import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -25,13 +25,13 @@ class HeroesGuild : Script { } npcOperate("Talk-to", "achietties") { - npc("Greetings. Welcome to the Heroes' Guild.") + npc("Greetings. Welcome to the Heroes' Guild.") if (questCompleted("heroes_quest")) { return@npcOperate } - npc("Only the greatest heroes of this land may gain entrance to this guild.") + npc("Only the greatest heroes of this land may gain entrance to this guild.") player("I'm a hero. May I apply to join?") - npc("You're a hero? I've never heard of you.") + npc("You're a hero? I've never heard of you.") statement("You do not meet all of the requirements to start the Heroes' Quest.") } } diff --git a/game/src/main/kotlin/content/area/asgarnia/falador/BarmaidsRisingSunInn.kt b/game/src/main/kotlin/content/area/asgarnia/falador/BarmaidsRisingSunInn.kt index 4ab5006517..39ff486dd9 100644 --- a/game/src/main/kotlin/content/area/asgarnia/falador/BarmaidsRisingSunInn.kt +++ b/game/src/main/kotlin/content/area/asgarnia/falador/BarmaidsRisingSunInn.kt @@ -71,18 +71,18 @@ class BarmaidsRisingSunInn : Script { npc("Heya! What can I get you?") choice { option("What ales are you serving?") { - npc("Well, we've got Asgarnian Ale, Wizard's Mind Bomb and Dwarven Stout, all for only 3 coins.") + npc("Well, we've got Asgarnian Ale, Wizard's Mind Bomb and Dwarven Stout, all for only 3 coins.") choice { - option("One Asgarnian Ale, please.") { + option("One Asgarnian Ale, please.") { buyBeer("asgarnian_ale") } - option("I'll try the Mind Bomb.") { + option("I'll try the Mind Bomb.") { buyBeer("wizards_mind_bomb") } - option("Can I have a Dwarven Stout?") { + option("Can I have a Dwarven Stout?") { buyBeer("dwarven_stout") } - option("I don't feel like any of those.") + option("I don't feel like any of those.") } } if (onBarCrawl(target)) { @@ -92,11 +92,11 @@ class BarmaidsRisingSunInn : Script { } when (inventory.count("beer_glass")) { 0 -> {} - 1 -> option("I've got this beer glass...") { + 1 -> option("I've got this beer glass...") { npc("We'll buy it for a couple of coins if you're interested.") buyEmptyGlasses() } - else -> option("I've got these beer glasses...") { + else -> option("I've got these beer glasses...") { npc("Ooh, we'll buy those off you if you're interested. 2 coins per glass.") buyEmptyGlasses() } @@ -112,12 +112,12 @@ class BarmaidsRisingSunInn : Script { when (inventory.transaction.error) { is TransactionError.Deficient -> { npc("I said 3 coins! You haven't got 3 coins!") - player("Sorry, I'll come back another day.") + player("Sorry, I'll come back another day.") } is TransactionError.Full -> inventoryFull() TransactionError.None -> { message("You buy a ${itemDefinitions.get(beer).name}.") - player("Thanks, Emily.") + player("Thanks, Emily.") } else -> {} } @@ -125,13 +125,13 @@ class BarmaidsRisingSunInn : Script { suspend fun Player.buyEmptyGlasses() { choice { - option("Okay, sure.") { + option("Okay, sure.") { inventory.transaction { val removed = removeToLimit("beer_glass", 28) add("coins", 2 * removed) } npc("There you go.") - player("Thanks!") + player("Thanks!") } option("No thanks, I like empty beer glasses.") } @@ -140,7 +140,7 @@ class BarmaidsRisingSunInn : Script { suspend fun Player.barCrawl(target: NPC) = barCrawlDrink( target, start = { - npc("Heehee, this'll be fun!") + npc("Heehee, this'll be fun!") npc("You'll be after our Hand of Death cocktail, then. Lots of expensive parts to the cocktail, though, so it will cost you 70 coins.") }, effects = { diff --git a/game/src/main/kotlin/content/area/asgarnia/falador/Doric.kt b/game/src/main/kotlin/content/area/asgarnia/falador/Doric.kt index 873d3e5418..bc2c1fe70b 100644 --- a/game/src/main/kotlin/content/area/asgarnia/falador/Doric.kt +++ b/game/src/main/kotlin/content/area/asgarnia/falador/Doric.kt @@ -43,8 +43,8 @@ class Doric : Script { takeOre() } "completed" -> { - npc("Hello traveller, how is your metalworking coming along?") - player("Not too bad, Doric.") + npc("Hello traveller, how is your metalworking coming along?") + player("Not too bad, Doric.") npc("Good, the love of metal is a thing close to my heart.") } else -> unstarted() @@ -53,14 +53,14 @@ class Doric : Script { } suspend fun Player.noOre() { - player("Sorry, I don't have them all yet.") - npc("Not to worry, stick at it. Remember, I need 6 clay, 4 copper ore, and 2 iron ore.") + player("Sorry, I don't have them all yet.") + npc("Not to worry, stick at it. Remember, I need 6 clay, 4 copper ore, and 2 iron ore.") choice { option("Where can I find those?") { npc("You'll be able to find all those ores in the rocks just inside the Dwarven Mine. Head east from here and you'll find the entrance in the side of Ice Mountain.") if (levels.get(Skill.Mining) < 15) { - player("But I'm not a good enough miner to get iron ore.") - npc("Oh well, you could practice mining until you can. Can't beat a bit of mining - it's a useful skill. Failing that, you might be able to find a more experienced adventurer to buy the iron ore off.") + player("But I'm not a good enough miner to get iron ore.") + npc("Oh well, you could practice mining until you can. Can't beat a bit of mining - it's a useful skill. Failing that, you might be able to find a more experienced adventurer to buy the iron ore off.") } } option("Certainly, I'll be right back!") @@ -70,19 +70,19 @@ class Doric : Script { suspend fun Player.unstarted() { npc("Hello traveller, what brings you to my humble smithy?") choice { - option("I wanted to use your anvils.") { - npc("My anvils get enough work with my own use. I make pickaxes, and it takes a lot of hard work. If you could get me some more materials, then I could let you use
them.") + option("I wanted to use your anvils.") { + npc("My anvils get enough work with my own use. I make pickaxes, and it takes a lot of hard work. If you could get me some more materials, then I could let you use
them.") startQuest() } - option("I want to use your whetstone.") { - npc("The whetstone is for more advanced smithing, but I could let you use it as well as my anvils if you could get me some more materials.") + option("I want to use your whetstone.") { + npc("The whetstone is for more advanced smithing, but I could let you use it as well as my anvils if you could get me some more materials.") startQuest() } option("Mind your own business, shortstuff!") { npc("How nice to meet someone with such pleasant manners. Do come again when you need to shout at someone smaller than you!") } option("I was just checking out the landscape.") { - player("I was just checking out the landscape.") + player("I was just checking out the landscape.") npc("Hope you like it. I do enjoy the solitude of my little home. If you get time, please say hi to my friends in the Dwarven Mine.") choice { option("Dwarven Mine?") { @@ -95,12 +95,12 @@ class Doric : Script { player("What do you make here?") npc("I make pickaxes. I am the best maker of pickaxes in the whole of Gielinor.") player("Do you have any to sell?") - npc("Sorry, but I've got a running order with Nurmof.") + npc("Sorry, but I've got a running order with Nurmof.") choice { option("Who's Nurmof?") { npc("Nurmof has a store over in the Dwarven Mine. You can find the entrance on the side of Ice Mountain to the east of here.") } - option("Ah, fair enough.") + option("Ah, fair enough.") } } } @@ -119,7 +119,7 @@ class Doric : Script { } else { inventory.add("bronze_pickaxe") } - npc("Clay is what I use more than anything, to make casts. Could you get me 6 clay, 4 copper ore, and 2 iron ore, please? I could pay a little, and let you use my anvils. Take this pickaxe with you just in case you need it.") + npc("Clay is what I use more than anything, to make casts. Could you get me 6 clay, 4 copper ore, and 2 iron ore, please? I could pay a little, and let you use my anvils. Take this pickaxe with you just in case you need it.") refreshQuestJournal() if (inventory.contains(ores)) { player("You know, it's funny you should require those exact things!") @@ -127,13 +127,13 @@ class Doric : Script { player("I can usually fit 28 things in my backpack and in a world full of quite literally limitless possibilities, a complete coincidence has occurred!") npc("I don't quite understand what you're saying?") player("Well, out of pure coincidence, despite definitely not knowing what you were about to request, I just so happened to have carried those exact items!") - npc("Oh my, that is a coincidence! Pass them here, please. I can spare you some coins for your trouble, and please use my anvils any time you want.") + npc("Oh my, that is a coincidence! Pass them here, please. I can spare you some coins for your trouble, and please use my anvils any time you want.") takeOre() } } option("No, hitting rocks is for the boring people, sorry.") { - player("No, hitting rocks is for the boring people, sorry.") - npc("That is your choice. Nice to meet you anyway.") + player("No, hitting rocks is for the boring people, sorry.") + npc("That is your choice. Nice to meet you anyway.") } } } diff --git a/game/src/main/kotlin/content/area/asgarnia/falador/Hairdresser.kt b/game/src/main/kotlin/content/area/asgarnia/falador/Hairdresser.kt index 695be632bf..1fcca69e19 100644 --- a/game/src/main/kotlin/content/area/asgarnia/falador/Hairdresser.kt +++ b/game/src/main/kotlin/content/area/asgarnia/falador/Hairdresser.kt @@ -25,12 +25,12 @@ class Hairdresser : Script { npcOperate("Talk-to", "hairdresser") { npc("Good afternoon ${if (male) "sir" else "madam"}. In need of a haircut${if (male) " or shave" else ""} are we?") choice { - option("Yes, please.") { + option("Yes, please.") { npc("Please select the hairstyle you would like from this brochure. I'll even throw in a free recolour.") startHairdressing() } - option("No, thank you.") { - npc("Very well. Come back if you change your mind.") + option("No, thank you.") { + npc("Very well. Come back if you change your mind.") } } } @@ -94,11 +94,11 @@ class Hairdresser : Script { suspend fun Player.startHairdressing() { closeDialogue() if (equipped(EquipSlot.Weapon).isNotEmpty() || equipped(EquipSlot.Shield).isNotEmpty()) { - npc("I don't feel comfortable cutting hair when you are wielding something. Please remove what you are holding first.") + npc("I don't feel comfortable cutting hair when you are wielding something. Please remove what you are holding first.") return } if (equipped(EquipSlot.Hat).isNotEmpty()) { - npc("I can't cut your hair with that on your head.") + npc("I can't cut your hair with that on your head.") return } openDressingRoom("hairdressers_salon") diff --git a/game/src/main/kotlin/content/area/asgarnia/falador/Iconis.kt b/game/src/main/kotlin/content/area/asgarnia/falador/Iconis.kt index 12bade4e3e..e98b43718b 100644 --- a/game/src/main/kotlin/content/area/asgarnia/falador/Iconis.kt +++ b/game/src/main/kotlin/content/area/asgarnia/falador/Iconis.kt @@ -1,6 +1,6 @@ package content.area.asgarnia.falador -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.npc import world.gregs.voidps.engine.Script import world.gregs.voidps.engine.entity.World @@ -25,6 +25,6 @@ class Iconis : Script { } suspend fun Player.nonMember() { - npc("Good day! I'm afraid you can't use the booth's services on a non-members world. Film costs a lot you know!") + npc("Good day! I'm afraid you can't use the booth's services on a non-members world. Film costs a lot you know!") } } diff --git a/game/src/main/kotlin/content/area/asgarnia/falador/MakeoverMage.kt b/game/src/main/kotlin/content/area/asgarnia/falador/MakeoverMage.kt index 1e84aed4fa..6f34c065b6 100644 --- a/game/src/main/kotlin/content/area/asgarnia/falador/MakeoverMage.kt +++ b/game/src/main/kotlin/content/area/asgarnia/falador/MakeoverMage.kt @@ -97,7 +97,7 @@ class MakeoverMage : Script { } 1 -> { npc("Whew! That was lucky.") - player("What was?") + player("What was?") npc("Nothing! It's all fine! You seem alive anyway.") } 2 -> { @@ -134,35 +134,35 @@ class MakeoverMage : Script { npc("Why, of course! Basically, and I will explain this so that you understand it correctly,") npc("I use my secret magical technique to melt your body down into a puddle of its elements.") npc("When I have broken down all components of your body, I then rebuild it into the form I am thinking of.") - npc("Or, you know, something vaguely close enough, anyway.") + npc("Or, you know, something vaguely close enough, anyway.") player("Uh... that doesn't sound particularly safe to me.") npc("It's as safe as houses! Why, I have only had thirty-six major accidents this month!") whatDoYouSay() } suspend fun Player.whatDoYouSay() { - npc("So, what do you say? Feel like a change?") + npc("So, what do you say? Feel like a change?") choice { start() exit() } } - fun ChoiceOption.start(): Unit = option("Sure, do it.") { + fun ChoiceOption.start(): Unit = option("Sure, do it.") { npc("You, of course, agree that if by some accident you are turned into a frog you have no rights for compensation or refund.") openDressingRoom("skin_colour") } fun ChoiceOption.exit(): Unit = option("No, thanks.") { player("No, thanks. I'm happy as I am.") - npc("Ehhh..suit yourself.") + npc("Ehhh..suit yourself.") } fun ChoiceOption.amulet(): Unit = option("Cool amulet! Can I have one?") { val cost = 100 - npc("No problem, but please remember that the amulet I will sell you is only a copy of my own. It contains no magical powers and, as such, will only cost you $cost coins.") + npc("No problem, but please remember that the amulet I will sell you is only a copy of my own. It contains no magical powers and, as such, will only cost you $cost coins.") if (!holdsItem("coins", cost)) { - player("Oh, I don't have enough money for that.") + player("Oh, I don't have enough money for that.") return@option } choice { @@ -176,14 +176,14 @@ class MakeoverMage : Script { is TransactionError.Deficient -> notEnough("coins") is TransactionError.Full -> { npc("Um...you don't seem to have room to take the amulet. Maybe you should buy it some other time.") - player("Oh yeah, that's true.") + player("Oh yeah, that's true.") } else -> {} } explain() } - option("No way! That's too expensive.") { - npc("That's fair enough, my jewellery is not to everyone's taste. Now, would you like a makeover?") + option("No way! That's too expensive.") { + npc("That's fair enough, my jewellery is not to everyone's taste. Now, would you like a makeover?") } } } diff --git a/game/src/main/kotlin/content/area/asgarnia/falador/SirVyvin.kt b/game/src/main/kotlin/content/area/asgarnia/falador/SirVyvin.kt index ad8d2df708..52231a7a0c 100644 --- a/game/src/main/kotlin/content/area/asgarnia/falador/SirVyvin.kt +++ b/game/src/main/kotlin/content/area/asgarnia/falador/SirVyvin.kt @@ -1,10 +1,10 @@ package content.area.asgarnia.falador import content.entity.npc.shop.openShop +import content.entity.player.dialogue.Confused import content.entity.player.dialogue.Frustrated -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Uncertain import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -67,8 +67,8 @@ class SirVyvin : Script { } npcOperate("Talk-to", "sir_vyvin") { - player("Hello.") - npc("Greetings traveller.") + player("Hello.") + npc("Greetings traveller.") choice { option("Do you have anything to trade?") { val kills = get("black_knight_kills", 0) @@ -79,21 +79,21 @@ class SirVyvin : Script { kills >= 300 -> openShop("white_knight_page_armoury") kills >= 200 -> openShop("white_knight_peon_armoury") kills >= 100 -> openShop("white_knight_novice_armoury") - else -> npc("No, I'm sorry.") + else -> npc("No, I'm sorry.") } } option("Why are there so many knights in this city?") { - npc("We are the White Knights of Falador. We are the most powerful order of knights in the land. We are helping the king Vallance rule the kingdom as he is getting old and tired.") + npc("We are the White Knights of Falador. We are the most powerful order of knights in the land. We are helping the king Vallance rule the kingdom as he is getting old and tired.") } option("Can I just distract you for a minute?") { - player("Can I just talk to you very slowly for a few minutes, while I distract you, so that my friend over there can do something while you're busy being distracted by me?") - npc("... ...what?") - npc("I'm... not sure what you're asking me... you want to join the White Knights?") - player("Nope. I'm just trying to distract you.") - npc("... ...you are very odd.") - player("So can I distract you some more?") - npc("... ...I don't think I want to talk to you anymore.") - player("Ok. My work here is done. 'Bye!") + player("Can I just talk to you very slowly for a few minutes, while I distract you, so that my friend over there can do something while you're busy being distracted by me?") + npc("... ...what?") + npc("I'm... not sure what you're asking me... you want to join the White Knights?") + player("Nope. I'm just trying to distract you.") + npc("... ...you are very odd.") + player("So can I distract you some more?") + npc("... ...I don't think I want to talk to you anymore.") + player("Ok. My work here is done. 'Bye!") } } } diff --git a/game/src/main/kotlin/content/area/asgarnia/falador/SquireAsrol.kt b/game/src/main/kotlin/content/area/asgarnia/falador/SquireAsrol.kt index 72de97c7fe..e9b0413006 100644 --- a/game/src/main/kotlin/content/area/asgarnia/falador/SquireAsrol.kt +++ b/game/src/main/kotlin/content/area/asgarnia/falador/SquireAsrol.kt @@ -25,7 +25,7 @@ class SquireAsrol : Script { npcOperate("Talk-to", "squire_asrol") { when (quest("the_knights_sword")) { "unstarted" -> { - npc("Hello. I am the squire to Sir Vyvin.") + npc("Hello. I am the squire to Sir Vyvin.") choice { lifeAsASquire() squireForMe() @@ -42,34 +42,34 @@ class SquireAsrol : Script { suspend fun Player.started() { npc("So how are you doing getting a sword?") - player("I'm looking for Imcando dwarves to help me.") - npc("Please try and find them quickly... I am scared Sir Vyvin will find out!") + player("I'm looking for Imcando dwarves to help me.") + npc("Please try and find them quickly... I am scared Sir Vyvin will find out!") } suspend fun Player.askAboutPicture() { npc("So how are you doing getting a sword?") player("I've found an Imcando dwarf but he needs a picture of the sword before he can make it.") - npc("A picture eh? Hmmm.... The only one I can think of is in a small portrait of Sir Vyvin's father... Sir Vyvin keeps it in a cupboard in his room I think.") + npc("A picture eh? Hmmm.... The only one I can think of is in a small portrait of Sir Vyvin's father... Sir Vyvin keeps it in a cupboard in his room I think.") set("the_knights_sword", "cupboard") - player("Ok, I'll try and get that then.") - npc("Please don't let him catch you! He MUSTN'T know what happened!") + player("Ok, I'll try and get that then.") + npc("Please don't let him catch you! He MUSTN'T know what happened!") } suspend fun Player.checkPicture() { npc("So how are you doing getting a sword?") if (holdsItem("portrait")) { player("I have the picture. I'll just take it to the dwarf now!") - npc("Please hurry!") + npc("Please hurry!") return } - player("I didn't get the picture yet.") - npc("Please try and get it quickly... I am scared Sir Vyvin will find out!") + player("I didn't get the picture yet.") + npc("Please try and get it quickly... I am scared Sir Vyvin will find out!") } suspend fun Player.bluriteSword() { if (equipment.contains("blurite_sword")) { player("I have retrieved your sword for you.") - npc("So can you un-equip it and hand it over to me now please?") + npc("So can you un-equip it and hand it over to me now please?") return } if (holdsItem("blurite_sword")) { @@ -81,20 +81,20 @@ class SquireAsrol : Script { return } if (ownsItem("blurite_sword")) { - player("I got a replacement sword made.") + player("I got a replacement sword made.") npc("Thank you! Can I have it?") - player("I've got it stored safely.") + player("I've got it stored safely.") npc("Well could you go and get it for me then please? Quickly?") - player("Yeah, okay.") + player("Yeah, okay.") return } npc("So how are you doing getting a sword?") player("I've found a dwarf who will make the sword. I've just got to find the materials for it now!") - npc("Please hurry!") + npc("Please hurry!") } fun ChoiceOption.lifeAsASquire() = option("And how is life as a squire?") { - npc("Well, Sir Vyvin is a good guy to work for, however, I'm in a spot of trouble today. I've gone and lost Sir Vyvin's sword!") + npc("Well, Sir Vyvin is a good guy to work for, however, I'm in a spot of trouble today. I've gone and lost Sir Vyvin's sword!") choice { whereYouLostIt() newSword() @@ -103,7 +103,7 @@ class SquireAsrol : Script { } fun ChoiceOption.whereYouLostIt() = option("Do you know where you lost it?") { - npc("Well now, if I knew THAT it wouldn't be lost, now would it?") + npc("Well now, if I knew THAT it wouldn't be lost, now would it?") choice { vagueArea() newSword() @@ -113,8 +113,8 @@ class SquireAsrol : Script { } fun ChoiceOption.vagueArea() = option("Well, do you know the VAGUE AREA you lost it in?") { - npc("No. I was carrying it for him all the way from where he had it stored in Lumbridge. It must have slipped from my pack during the trip, and you know what people are like these days...") - npc("Someone will have just picked it up and kept it for themselves.") + npc("No. I was carrying it for him all the way from where he had it stored in Lumbridge. It must have slipped from my pack during the trip, and you know what people are like these days...") + npc("Someone will have just picked it up and kept it for themselves.") choice { newSword() abundantWithSwords() @@ -122,14 +122,14 @@ class SquireAsrol : Script { } } - fun ChoiceOption.abundantWithSwords() = option("Well the kingdom is fairly abundant with swords...") { - npc("Yes. You can get bronze swords anywhere. But THIS isn't any old sword.") + fun ChoiceOption.abundantWithSwords() = option("Well the kingdom is fairly abundant with swords...") { + npc("Yes. You can get bronze swords anywhere. But THIS isn't any old sword.") heirloom() } suspend fun Player.heirloom() { - npc("The thing is, this sword is a family heirloom. It has been passed down through Vyvin's family for five generations! It was originally made by the Imcando dwarves, who were") - npc("a particularly skilled tribe of dwarven smiths. I doubt anyone could make it in the style they do.") + npc("The thing is, this sword is a family heirloom. It has been passed down through Vyvin's family for five generations! It was originally made by the Imcando dwarves, who were") + npc("a particularly skilled tribe of dwarven smiths. I doubt anyone could make it in the style they do.") choice { anotherSword() hopeYouFind() @@ -137,22 +137,22 @@ class SquireAsrol : Script { } fun ChoiceOption.anotherSword() = option("So would these dwarves make another one?") { - npc("I'm not a hundred percent sure the Imcando tribe exists anymore. I should think Reldo, the palace librarian in Varrock, will know; he has done a lot of research on the races of Gielinor.") + npc("I'm not a hundred percent sure the Imcando tribe exists anymore. I should think Reldo, the palace librarian in Varrock, will know; he has done a lot of research on the races of Gielinor.") npc("I don't suppose you could try and track down the Imcando dwarves for me? I've got so much work to do...") startQuest() } - fun ChoiceOption.hopeYouFind() = option("Well, I hope you find it soon.") { - npc("Yes, me too. I'm not looking forward to telling Vyvin I've lost it. He's going to want it for the parade next week as well.") + fun ChoiceOption.hopeYouFind() = option("Well, I hope you find it soon.") { + npc("Yes, me too. I'm not looking forward to telling Vyvin I've lost it. He's going to want it for the parade next week as well.") } - fun ChoiceOption.newSword() = option("I can make a new sword if you like...") { - npc("Thanks for the offer. I'd be surprised if you could though.") + fun ChoiceOption.newSword() = option("I can make a new sword if you like...") { + npc("Thanks for the offer. I'd be surprised if you could though.") heirloom() } fun ChoiceOption.heAngry() = option("Is he angry?") { - npc("He doesn't know yet. I was hoping I could think of something to do before he does find out, But I find myself at a loss.") + npc("He doesn't know yet. I was hoping I could think of something to do before he does find out, But I find myself at a loss.") choice { vagueArea() newSword() @@ -162,7 +162,7 @@ class SquireAsrol : Script { } fun ChoiceOption.squireForMe() = option("Wouldn't you prefer to be a squire for me?") { - npc("No, sorry, I'm loyal to Sir Vyvin.") + npc("No, sorry, I'm loyal to Sir Vyvin.") } suspend fun Player.startQuest() { @@ -176,11 +176,11 @@ class SquireAsrol : Script { choice("Start The Knight's Sword quest?") { option("Yes.") { set("the_knights_sword", "started") - player("Ok, I'll give it a go.") + player("Ok, I'll give it a go.") npc("Thank you very much! As I say, the best place to start should be with Reldo...") } option("No.") { - npc("Oh man... I'm in such trouble...") + npc("Oh man... I'm in such trouble...") } } } diff --git a/game/src/main/kotlin/content/area/asgarnia/falador/WysonTheGardener.kt b/game/src/main/kotlin/content/area/asgarnia/falador/WysonTheGardener.kt index c753b1b213..d0cb01424a 100644 --- a/game/src/main/kotlin/content/area/asgarnia/falador/WysonTheGardener.kt +++ b/game/src/main/kotlin/content/area/asgarnia/falador/WysonTheGardener.kt @@ -19,40 +19,40 @@ class WysonTheGardener : Script { init { npcOperate("Talk-to", "wyson_the_gardener") { - npc("I'm the head gardener around here. If you're looking for woad leaves, or if you need help with owt, I'm yer man.") + npc("I'm the head gardener around here. If you're looking for woad leaves, or if you need help with owt, I'm yer man.") choice { - option("Yes please, I need woad leaves.") { + option("Yes please, I need woad leaves.") { npc("How much are you willing to pay?") choice { - option("How about five coins?") { + option("How about five coins?") { npc("No no, that's far too little. Woad leaves are hard to get. I used to have plenty but someone kept stealing them off me!") choice { - option("How about ten coins?") { + option("How about ten coins?") { howAboutTen() } - option("How about 15 coins?") { + option("How about 15 coins?") { buyWoadLeaf() } - option("How about 20 coins?") { + option("How about 20 coins?") { buyWoadLeaves() } - option("Actually, I've changed my mind.") + option("Actually, I've changed my mind.") } } - option("How about ten coins?") { + option("How about ten coins?") { howAboutTen() } - option("How about 15 coins?") { + option("How about 15 coins?") { buyWoadLeaf() } - option("How about 20 coins?") { + option("How about 20 coins?") { buyWoadLeaves() } - option("Actually, I've changed my mind.") + option("Actually, I've changed my mind.") } } - option("Sorry, but I'm not interested.") { - npc("Fair enough.") + option("Sorry, but I'm not interested.") { + npc("Fair enough.") } } } @@ -63,27 +63,27 @@ class WysonTheGardener : Script { suspend fun Player.howAboutTen() { npc("No no, that's far too little. Woad leaves are hard to get. I used to have plenty but someone kept stealing them off me!") choice { - option("How about 15 coins?") { + option("How about 15 coins?") { buyWoadLeaf() } - option("How about 20 coins?") { + option("How about 20 coins?") { buyWoadLeaves() } - option("Actually, I've changed my mind.") + option("Actually, I've changed my mind.") } } suspend fun Player.buyWoadLeaf() { - npc("Mmmm... okay, that sounds fair.") + npc("Mmmm... okay, that sounds fair.") if (inventory.remove("coins", 15)) { if (!inventory.add("woad_leaf")) { floorItems.add(tile, "woad_leaf", disappearTicks = 300, owner = this) } item("woad_leaf", 290, "You buy a woad leaf from Wyson.") player("Thanks.") - npc("I'll be around if you have any more gardening needs.") + npc("I'll be around if you have any more gardening needs.") } else { - player("I don't have enough coins to buy the leaves. I'll come back later.") + player("I don't have enough coins to buy the leaves. I'll come back later.") } } @@ -96,7 +96,7 @@ class WysonTheGardener : Script { item("woad_leaf", 290, "You buy a pair of woad leaves from Wyson.") player("Thanks.") } else { - player("I don't have enough coins to buy the leaves. I'll come back later.") + player("I don't have enough coins to buy the leaves. I'll come back later.") } } } diff --git a/game/src/main/kotlin/content/area/asgarnia/goblin_village/Goblins.kt b/game/src/main/kotlin/content/area/asgarnia/goblin_village/Goblins.kt index 913466ebcc..a222302b48 100644 --- a/game/src/main/kotlin/content/area/asgarnia/goblin_village/Goblins.kt +++ b/game/src/main/kotlin/content/area/asgarnia/goblin_village/Goblins.kt @@ -13,12 +13,12 @@ class Goblins : Script { npcOperate("Talk-to", "goblin_*_red") { when (random.nextInt(0, 2)) { 0 -> { - npc("Red armour best!") + npc("Red armour best!") choice { - option("Why is red best?") { - npc("Cos General Bentnoze says so, and he bigger than me.") + option("Why is red best?") { + npc("Cos General Bentnoze says so, and he bigger than me.") } - option("Err, okay.") + option("Err, okay.") } } 1 -> { @@ -32,12 +32,12 @@ class Goblins : Script { npcOperate("Talk-to", "goblin_*_green") { when (random.nextInt(0, 2)) { 0 -> { - npc("green armour best!") + npc("green armour best!") choice { - option("Why is green best?") { - npc("Cos General Wartface says so, and he bigger than me.") + option("Why is green best?") { + npc("Cos General Wartface says so, and he bigger than me.") } - option("Err, okay.") + option("Err, okay.") } } @@ -50,7 +50,7 @@ class Goblins : Script { } npcOperate("Talk-to", "grubfoot*") { - npc("Grubfoot wear red armour! Grubfoot wear green armour!") + npc("Grubfoot wear red armour! Grubfoot wear green armour!") npc("Why they not make up their minds?") npc(npcId = "general_bentnoze_rfd", "Shut up Grubfoot!") } diff --git a/game/src/main/kotlin/content/area/asgarnia/port_sarim/BartenderRustyAnchor.kt b/game/src/main/kotlin/content/area/asgarnia/port_sarim/BartenderRustyAnchor.kt index ca4a7a29f6..31465a0327 100644 --- a/game/src/main/kotlin/content/area/asgarnia/port_sarim/BartenderRustyAnchor.kt +++ b/game/src/main/kotlin/content/area/asgarnia/port_sarim/BartenderRustyAnchor.kt @@ -1,8 +1,8 @@ package content.area.asgarnia.port_sarim import content.entity.npc.shop.buy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -23,13 +23,13 @@ class BartenderRustyAnchor : Script { npcOperate("Talk-to", "bartender_rusty_anchor_inn*") { (target) -> choice { option("Could I buy a beer please?") { - npc("Sure, that will be 2 gold coins please.") + npc("Sure, that will be 2 gold coins please.") if (buy("beer", 2, "I don't have enough coins.")) { message("You buy a pint of beer!") } } - option("Have you heard any rumours here?") { - npc("Well, there was a guy in here earlier saying the goblins up by the mountain are arguing again, about the colour of their armour of all things.") + option("Have you heard any rumours here?") { + npc("Well, there was a guy in here earlier saying the goblins up by the mountain are arguing again, about the colour of their armour of all things.") } if (onBarCrawl(target)) { option("I'm doing Alfred Grimhand's barcrawl.") { @@ -51,8 +51,8 @@ class BartenderRustyAnchor : Script { target, start = { npc("Are you sure? You look a bit skinny for that.") - player("Just give me whatever I need to drink here.") - npc("Ok one Black Skull Ale coming up, 8 coins please.") + player("Just give me whatever I need to drink here.") + npc("Ok one Black Skull Ale coming up, 8 coins please.") }, effects = { say("Hiccup!") diff --git a/game/src/main/kotlin/content/area/asgarnia/port_sarim/MonkOfEntrana.kt b/game/src/main/kotlin/content/area/asgarnia/port_sarim/MonkOfEntrana.kt index 5cdd5ff66c..db9f963128 100644 --- a/game/src/main/kotlin/content/area/asgarnia/port_sarim/MonkOfEntrana.kt +++ b/game/src/main/kotlin/content/area/asgarnia/port_sarim/MonkOfEntrana.kt @@ -21,16 +21,16 @@ class MonkOfEntrana : Script { npcOperate("Talk-to", "monk_of_entrana_port_sarim*") { npc("Do you seek passage to holy Entrana? If so, you must leave your weaponry and armour behind. This is Saradomin's will.") choice("What would you like to say?") { - option("No, not right now.") { - npc("Very well.") + option("No, not right now.") { + npc("Very well.") } option("Yes, okay, I'm ready to go.") { - npc("Very well. One moment please.") + npc("Very well. One moment please.") message("The monk quickly searches you.") statement("", clickToContinue = false) delay(3) if (passedCheck()) { - npc("All is satisfactory. You may board the boat now.") + npc("All is satisfactory. You may board the boat now.") travel() } } @@ -47,7 +47,7 @@ class MonkOfEntrana : Script { npcOperate("Talk-to", "entrana_monk*") { npc("Do you wish to leave holy Entrana?") choice { - option("Yes, I'm ready to go.") { + option("Yes, I'm ready to go.") { npc("Okay, let's board...") portSarim() } @@ -90,9 +90,9 @@ class MonkOfEntrana : Script { if (forbidden.isNotEmpty()) { npc("NO WEAPONS OR ARMOUR are permitted on holy Entrana AT ALL. We will not allow you to travel there in breach of mighty Saradomin's edict.") if (forbidden.def.getOrNull("god") == "saradomin") { - npc("I'm sorry, sir, but no weapons or armour may be worn on Entrana. This rule even forbids items dedicated to Saradomin.") + npc("I'm sorry, sir, but no weapons or armour may be worn on Entrana. This rule even forbids items dedicated to Saradomin.") } else { - npc("Do not try and deceive us again. Come back when you have laid down your Zamorakian instruments of death.") + npc("Do not try and deceive us again. Come back when you have laid down your Zamorakian instruments of death.") } return false } diff --git a/game/src/main/kotlin/content/area/asgarnia/port_sarim/PortSarimGuard.kt b/game/src/main/kotlin/content/area/asgarnia/port_sarim/PortSarimGuard.kt index 3e286ea27f..2ee1d25061 100644 --- a/game/src/main/kotlin/content/area/asgarnia/port_sarim/PortSarimGuard.kt +++ b/game/src/main/kotlin/content/area/asgarnia/port_sarim/PortSarimGuard.kt @@ -32,31 +32,31 @@ class PortSarimGuard : Script { else -> "Mmmmmm... donuts..." }, ) - player("Maybe I should let him sleep.") + player("Maybe I should let him sleep.") } npcOperate("Talk-to", "port_sarim_guard_6") { npc("HALT! Who goes there?") choice { option("Don't worry, I'm not going to cause trouble.") { - npc("But you shouldn't be here - be off with you!") - player("I was going anyway.") + npc("But you shouldn't be here - be off with you!") + player("I was going anyway.") } option("I am $name the Mighty!") { - npc("Mighty? You look like another of those silly adventurers who thinks they're the bee's knees just because they've done a few lousy quests!") - player("Well it sounds better than sitting on this rooftop all day looking at trees!") + npc("Mighty? You look like another of those silly adventurers who thinks they're the bee's knees just because they've done a few lousy quests!") + player("Well it sounds better than sitting on this rooftop all day looking at trees!") npc("I'll have you know it's a very important job guarding this jail!") - npc("If anyone comes sneaking in here to mess around with the prisoners, the lads downstairs will make mincemeat of them, and I'll be here to pick them off if they try to escape.") + npc("If anyone comes sneaking in here to mess around with the prisoners, the lads downstairs will make mincemeat of them, and I'll be here to pick them off if they try to escape.") player("You mean people aren't meant to be able to shoot the prisoners in the cells?") - npc("Yes, that's right.") - player("Okay, it's been nice talking to you.") + npc("Yes, that's right.") + player("Okay, it's been nice talking to you.") } option("No-one, there's no-one here.") { - npc("What? I can see you!") + npc("What? I can see you!") player("No, you're just imagining it. Perhaps you've been up here in the sun for too long?") - npc("So who am I talking to?") + npc("So who am I talking to?") player("Oh dear, you've started talking to yourself. That's a common sign that you're going mad!") - npc("But... but... you're standing right there...") + npc("But... but... you're standing right there...") statement("Maybe you should leave him alone now.") } } diff --git a/game/src/main/kotlin/content/area/asgarnia/port_sarim/Seaman.kt b/game/src/main/kotlin/content/area/asgarnia/port_sarim/Seaman.kt index aea2828d2d..a803941201 100644 --- a/game/src/main/kotlin/content/area/asgarnia/port_sarim/Seaman.kt +++ b/game/src/main/kotlin/content/area/asgarnia/port_sarim/Seaman.kt @@ -2,9 +2,9 @@ package content.area.asgarnia.port_sarim import content.entity.obj.ship.boatTravel import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Upset +import content.entity.player.dialogue.Sad import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -20,16 +20,16 @@ class Seaman : Script { init { npcOperate("Talk-to", "seaman_lorris*,captain_tobias*,seaman_thresnor*") { npc("Do you want to go on a trip to Karamja?") - npc("The trip will cost you 30 coins.") + npc("The trip will cost you 30 coins.") choice { option("Yes please.") { if (!inventory.remove("coins", 30)) { - player("Oh dear, I don't seem to have enough money.") + player("Oh dear, I don't seem to have enough money.") return@option } travel() } - option("No, thank you.") + option("No, thank you.") } } diff --git a/game/src/main/kotlin/content/area/asgarnia/port_sarim/SquirePortSarim.kt b/game/src/main/kotlin/content/area/asgarnia/port_sarim/SquirePortSarim.kt index 4c7570a7f7..177b94010a 100644 --- a/game/src/main/kotlin/content/area/asgarnia/port_sarim/SquirePortSarim.kt +++ b/game/src/main/kotlin/content/area/asgarnia/port_sarim/SquirePortSarim.kt @@ -1,12 +1,12 @@ package content.area.asgarnia.port_sarim import content.entity.obj.ship.boatTravel +import content.entity.player.dialogue.Disheartened import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz import content.entity.player.dialogue.Sad import content.entity.player.dialogue.Shifty -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Upset import content.entity.player.dialogue.type.* import world.gregs.voidps.engine.Script import world.gregs.voidps.engine.entity.character.player.Player @@ -15,11 +15,11 @@ import world.gregs.voidps.type.Tile class SquirePortSarim : Script { init { npcOperate("Talk-to", "squire_port_sarim") { - npc("Well the order has become quite diminished over the years, it's a very long process to learn the skills of a Void Knight. Recently there have been breaches into our realm from somewhere else, and strange creatures") - npc("Hi, how can I help you?") + npc("Well the order has become quite diminished over the years, it's a very long process to learn the skills of a Void Knight. Recently there have been breaches into our realm from somewhere else, and strange creatures") + npc("Hi, how can I help you?") choice { option("Who are you?") { - npc("I'm a Squire for the Void Knights.") + npc("I'm a Squire for the Void Knights.") player("The who?") npc("The Void Knights, they are great warriors of balance who do Guthix's work here in Gielinor.") choice { @@ -30,14 +30,14 @@ class SquirePortSarim : Script { } } option("Where does this ship go?") { - npc("To the Void Knight outpost. It's a small island just off Karamja.") + npc("To the Void Knight outpost. It's a small island just off Karamja.") choice { outpost() option("That's nice.") } } outpost() - option("I'm fine thanks.") + option("I'm fine thanks.") } } @@ -47,8 +47,8 @@ class SquirePortSarim : Script { } private fun ChoiceOption.outpost() { - option("I'd like to go to your outpost.") { - npc("Certainly, right this way.") + option("I'd like to go to your outpost.") { + npc("Certainly, right this way.") travel() } } @@ -60,37 +60,37 @@ class SquirePortSarim : Script { private fun ChoiceOption.join() { option("Wow, can I join?") { - npc("Entry is strictly invite only, however we do need help continuing Guthix's work.") + npc("Entry is strictly invite only, however we do need help continuing Guthix's work.") choice { whatWork() - option("Good luck with that.") + option("Good luck with that.") } } } private fun ChoiceOption.whatWork() { option("What kind of work?") { - npc("Ah well you see we try to keep Gielinor as Guthix intended, it's very challenging. Actually we've been having some problems recently, maybe you could help us?") + npc("Ah well you see we try to keep Gielinor as Guthix intended, it's very challenging. Actually we've been having some problems recently, maybe you could help us?") choice { option("Yeah ok, what's the problem?") { - npc("Well the order has become quite diminished over the years, it's a very long process to learn the skills of a Void Knight. Recently there have been breaches into our realm from somewhere else, and strange creatures") - npc("have been pouring through. We can't let that happen, and we'd be very grateful if you'd help us.") + npc("Well the order has become quite diminished over the years, it's a very long process to learn the skills of a Void Knight. Recently there have been breaches into our realm from somewhere else, and strange creatures") + npc("have been pouring through. We can't let that happen, and we'd be very grateful if you'd help us.") choice { option("How can I help?") { - npc("We send launchers from our outpost to the nearby islands. If you go and wait in the lander there that'd really help.") + npc("We send launchers from our outpost to the nearby islands. If you go and wait in the lander there that'd really help.") } option("Sorry, but I can't.") } } gielinor() - option("I'd rather not, sorry.") + option("I'd rather not, sorry.") } } } private fun ChoiceOption.gielinor() { option("What's 'Gielinor'?") { - npc("It is the name that Guthix gave to this world, so we honour him with its use.") + npc("It is the name that Guthix gave to this world, so we honour him with its use.") } } } diff --git a/game/src/main/kotlin/content/area/asgarnia/port_sarim/Thurgo.kt b/game/src/main/kotlin/content/area/asgarnia/port_sarim/Thurgo.kt index 76777dd2e6..de52b1a84d 100644 --- a/game/src/main/kotlin/content/area/asgarnia/port_sarim/Thurgo.kt +++ b/game/src/main/kotlin/content/area/asgarnia/port_sarim/Thurgo.kt @@ -35,34 +35,31 @@ class Thurgo : Script { when (quest("the_knights_sword")) { "find_thurgo" -> menu() "happy_thurgo" -> menuSword() - else -> player("Why would I give him my pie?") + else -> player("Why would I give him my pie?") } } } suspend fun Player.menuReplacementSword() { choice { - madeSword() - replacementSword() - redberryPie() + if (holdsItem("blurite_sword")) { + madeSword() + } else { + replacementSword() + } + redberryPie(this@menuReplacementSword) whatCape() } } - fun ChoiceOption.madeSword() = option( - "Thanks for making that sword for me!", - { holdsItem("blurite_sword") }, - ) { + fun ChoiceOption.madeSword() = option("Thanks for making that sword for me!") { npc("You're welcome - thanks for the pie!") } - fun ChoiceOption.replacementSword() = option( - "Can you make that replacement sword now?", - { !holdsItem("blurite_sword") }, - ) { + fun ChoiceOption.replacementSword() = option("Can you make that replacement sword now?") { npc("How are you doing finding those sword materials?") if (inventory.contains(items)) { - player("I have them right here.") + player("I have them right here.") inventory.transaction { remove(items) add("blurite_sword") @@ -73,23 +70,23 @@ class Thurgo : Script { return@option } if (inventory.contains("blurite_ore")) { - player("I don't have two iron bars.") + player("I don't have two iron bars.") npc("Better go get some then, huh?") return@option } if (inventory.contains("iron_bar", 2)) { - player("I don't have any blurite ore yet.") - npc("Better go get some then, huh? The only place I know to get it is under this cliff here, but it is guarded by a very powerful ice giant.") + player("I don't have any blurite ore yet.") + npc("Better go get some then, huh? The only place I know to get it is under this cliff here, but it is guarded by a very powerful ice giant.") return@option } - player("I don't have any of them yet.") + player("I don't have any of them yet.") npc("Well, I need a blurite ore and two iron bars. The only place I know to get blurite is under this cliff here, but it is guarded by a very powerful ice giant.") } suspend fun Player.menuAboutSword() { choice { aboutSword() - redberryPie() + redberryPie(this@menuAboutSword) whatCape() } } @@ -97,7 +94,7 @@ class Thurgo : Script { suspend fun Player.menuSword() { choice { specialSword() - redberryPie() + redberryPie(this@menuSword) whatCape() } } @@ -105,60 +102,62 @@ class Thurgo : Script { suspend fun Player.menu() { choice { imcandoDwarf() - redberryPie() + redberryPie(this@menu) whatCape() } } fun ChoiceOption.specialSword() = option("Can you make a special sword for me?") { - npc("Well, after bringing me my favorite food I guess I should give it a go. What sort of sword is it?") - player("I need you to make a sword for one of Falador's knights. He had one which was passed down through five generations, but his squire has lost it.") + npc("Well, after bringing me my favorite food I guess I should give it a go. What sort of sword is it?") + player("I need you to make a sword for one of Falador's knights. He had one which was passed down through five generations, but his squire has lost it.") player("So we need an identical one to replace it.") - npc("A knight's sword eh? Well, I'd need to know exactly how it looked before I could make a new one.") + npc("A knight's sword eh? Well, I'd need to know exactly how it looked before I could make a new one.") set("the_knights_sword", "picture") - npc("All the Faladian knights used to have swords with unique designs according to their position. Could you bring me a picture or something?") - player("I'll go and ask his squire and see if I can find one.") + npc("All the Faladian knights used to have swords with unique designs according to their position. Could you bring me a picture or something?") + player("I'll go and ask his squire and see if I can find one.") } fun ChoiceOption.aboutSword() = option("About that sword...") { npc("Have you got a picture of the sword for me yet?") if (!holdsItem("portrait")) { - player("Sorry, not yet.") - npc("Well, come back when you do.") + player("Sorry, not yet.") + npc("Well, come back when you do.") return@option } - player("I have found a picture of the sword I would like you to make.") + player("I have found a picture of the sword I would like you to make.") item("portrait", 600, "You give the portrait to Thurgo. Thurgo studies the portrait.") set("the_knights_sword", "blurite_sword") inventory.remove("portrait") - npc("You'll need to get me some stuff to make this. I'll need two iron bars to make the sword, to start with. I'll also need an ore called blurite.") - npc("Blurite is useless for making actual weapons, except crossbows, but I'll need some as decoration for the hilt.") - npc("It is a fairly rare ore. The only place I know to get it is under this cliff here, but it is guarded by a very powerful ice giant.") - npc("Most of the rocks in that cliff are pretty useless, and don't contain much of anything, but there's DEFINITELY some blurite in there.") - npc("You'll need a little bit of mining experience to be able to find it.") - player("Okay. I'll go and find them then.") + npc("You'll need to get me some stuff to make this. I'll need two iron bars to make the sword, to start with. I'll also need an ore called blurite.") + npc("Blurite is useless for making actual weapons, except crossbows, but I'll need some as decoration for the hilt.") + npc("It is a fairly rare ore. The only place I know to get it is under this cliff here, but it is guarded by a very powerful ice giant.") + npc("Most of the rocks in that cliff are pretty useless, and don't contain much of anything, but there's DEFINITELY some blurite in there.") + npc("You'll need a little bit of mining experience to be able to find it.") + player("Okay. I'll go and find them then.") } fun ChoiceOption.imcandoDwarf() = option("Are you an Imcando dwarf? I need a special sword.") { npc("I don't talk about that sort of thing anymore. I'm getting old.") choice { - redberryPie() - option("I'll come back another time.") + redberryPie(this@option) + option("I'll come back another time.") } } - fun ChoiceOption.redberryPie(): Unit = option( - "Would you like a redberry pie?", - { holdsItem("redberry_pie") }, - ) { - statement("You see Thurgo's eyes light up.") - npc("I'd never say no to a redberry pie! We Imcando dwarves love them - they're GREAT!") - if (quest("the_knights_sword") == "find_thurgo") { - set("the_knights_sword", "happy_thurgo") + fun ChoiceOption.redberryPie(player: Player) { + if (!player.holdsItem("redberry_pie")) { + return + } + option("Would you like a redberry pie?") { + statement("You see Thurgo's eyes light up.") + npc("I'd never say no to a redberry pie! We Imcando dwarves love them - they're GREAT!") + if (quest("the_knights_sword") == "find_thurgo") { + set("the_knights_sword", "happy_thurgo") + } + inventory.remove("redberry_pie") + statement("You hand over the pie Thurgo eats the pie. Thurgo pats his stomach.") + npc("By Guthix! THAT was good pie! Anyone who makes pie like THAT has got to be alright!") } - inventory.remove("redberry_pie") - statement("You hand over the pie Thurgo eats the pie. Thurgo pats his stomach.") - npc("By Guthix! THAT was good pie! Anyone who makes pie like THAT has got to be alright!") } fun ChoiceOption.whatCape() = option("What is that cape you're wearing?") { diff --git a/game/src/main/kotlin/content/area/asgarnia/rimmington/CraftingGuild.kt b/game/src/main/kotlin/content/area/asgarnia/rimmington/CraftingGuild.kt index ae2920c4b0..6dd4f5d8e9 100644 --- a/game/src/main/kotlin/content/area/asgarnia/rimmington/CraftingGuild.kt +++ b/game/src/main/kotlin/content/area/asgarnia/rimmington/CraftingGuild.kt @@ -27,11 +27,11 @@ class CraftingGuild : Script { return@objectOperate } if (!has(Skill.Crafting, 40)) { - npc("master_crafter", "Sorry, only experienced crafters are allowed in here. You must be level 40 or above to enter.") + npc("master_crafter", "Sorry, only experienced crafters are allowed in here. You must be level 40 or above to enter.") return@objectOperate } if (!equipment.contains("brown_apron")) { - npc("master_crafter", "Where's your brown apron? You can't come in here unless you're wearing one.") + npc("master_crafter", "Where's your brown apron? You can't come in here unless you're wearing one.") return@objectOperate } enterDoor(target, delay = 2) @@ -45,9 +45,9 @@ class CraftingGuild : Script { npc("I certainly am, and I can see that you are definitely talented enough to own one! Unfortunately, being such a prestigious item, they are appropriately expensive. I'm afraid I must ask you for 99000 gold.") choice { option("99000 gold! Are you mad?") { - npc("Not at all; there are many other adventurers who would love the opportunity to purchase such a prestigious item! You can find me here if you change your mind.") + npc("Not at all; there are many other adventurers who would love the opportunity to purchase such a prestigious item! You can find me here if you change your mind.") } - option("That's fine.") { + option("That's fine.") { inventory.transaction { remove("coins", 99000) add("crafting_cape") @@ -55,8 +55,8 @@ class CraftingGuild : Script { } when (inventory.transaction.error) { is TransactionError.Deficient -> { - player("But, unfortunately, I don't have enough money with me.") - npc("Well, come back and see me when you do.") + player("But, unfortunately, I don't have enough money with me.") + npc("Well, come back and see me when you do.") } is TransactionError.Full -> npc("Unfortunately all Skillcapes are only available with a free hood, it's part of a skill promotion deal; buy one get one free, you know. So you'll need to free up some inventory space before I can sell you one.") TransactionError.None -> npc("Excellent! Wear that cape with pride my friend.") @@ -75,12 +75,12 @@ class CraftingGuild : Script { } npcOperate("Talk-to", "master_crafter_3") { - npc("Yeah?") + npc("Yeah?") player("Hello.") - npc("Whassup?") + npc("Whassup?") player("So... are you here to give crafting tips?") - npc("Dude, do I look like I wanna talk to you?") - player("I suppose not.") + npc("Dude, do I look like I wanna talk to you?") + player("I suppose not.") npc("Right on!") } } diff --git a/game/src/main/kotlin/content/area/asgarnia/taverley/Kaqemeex.kt b/game/src/main/kotlin/content/area/asgarnia/taverley/Kaqemeex.kt index 0b698eae2c..0445d5cd72 100644 --- a/game/src/main/kotlin/content/area/asgarnia/taverley/Kaqemeex.kt +++ b/game/src/main/kotlin/content/area/asgarnia/taverley/Kaqemeex.kt @@ -26,43 +26,43 @@ class Kaqemeex : Script { npcOperate("Talk-to", "kaqemeex") { when (quest("druidic_ritual")) { "unstarted" -> { - player("Hello there.") + player("Hello there.") npc("What brings you to our holy monument?") choice { option("Who are you?") { - npc("We are the druids of Guthix. We worship our god at our famous stone circles. You will find them located throughout these lands.") + npc("We are the druids of Guthix. We worship our god at our famous stone circles. You will find them located throughout these lands.") choice { option("What about the stone circle full of dark wizards?") { startedQuest() } option("So what's so good about Guthix?") { - npc("Guthix is the oldest and most powerful god in Gielinor. His existence is vital to this world. He is the god of balance, and nature; he is also a very part of this world.") - npc("He exists in the trees, and the flowers, the water and the rocks. He is everywhere. His purpose is to ensure balance in everything in this world, and as such we worship him.") - player("He sounds kind of boring...") - npc("Some day when your mind achieves enlightenment you will see the true beauty of his power.") + npc("Guthix is the oldest and most powerful god in Gielinor. His existence is vital to this world. He is the god of balance, and nature; he is also a very part of this world.") + npc("He exists in the trees, and the flowers, the water and the rocks. He is everywhere. His purpose is to ensure balance in everything in this world, and as such we worship him.") + player("He sounds kind of boring...") + npc("Some day when your mind achieves enlightenment you will see the true beauty of his power.") } - option("Well, I'll be on my way now.") { - npc("Goodbye adventurer. I feel we shall meet again.") + option("Well, I'll be on my way now.") { + npc("Goodbye adventurer. I feel we shall meet again.") } } } - option("I'm in search of a quest.") { - npc("Hmm. I think I may have a worthwhile quest for you actually. I don't know if you are familiar with the stone circle south of Varrock or not, but...") + option("I'm in search of a quest.") { + npc("Hmm. I think I may have a worthwhile quest for you actually. I don't know if you are familiar with the stone circle south of Varrock or not, but...") startedQuest() } option("Did you build this?") { - npc("What, personally? No, of course I didn't. However, our forefathers did. The first Druids of Guthix built many stone circles across these lands over eight hundred years ago.") - npc("Unfortunately we only know of two remaining, and of those only one is usable by us anymore.") + npc("What, personally? No, of course I didn't. However, our forefathers did. The first Druids of Guthix built many stone circles across these lands over eight hundred years ago.") + npc("Unfortunately we only know of two remaining, and of those only one is usable by us anymore.") choice { option("What about the stone circle full of dark wizards?") { startedQuest() } - option("I'm in search of a quest.") { - npc("Hmm. I think I may have a worthwhile quest for you actually. I don't know if you are familiar with the stone circle south of Varrock or not, but...") + option("I'm in search of a quest.") { + npc("Hmm. I think I may have a worthwhile quest for you actually. I don't know if you are familiar with the stone circle south of Varrock or not, but...") startedQuest() } - option("Well, I'll be on my way now.") { - npc("Goodbye adventurer. I feel we shall meet again.") + option("Well, I'll be on my way now.") { + npc("Goodbye adventurer. I feel we shall meet again.") } } } @@ -76,98 +76,101 @@ class Kaqemeex : Script { } suspend fun Player.startedQuest() { - npc("That used to be OUR stone circle. Unfortunately, many many years ago, dark wizards cast a wicked spell upon it so that they could corrupt its power for their own evil ends.") - npc("When they cursed the rocks for their rituals they made them useless to us and our magics. We require a brave adventurer to go on a quest for us to help purify the circle of Varrock.") + npc("That used to be OUR stone circle. Unfortunately, many many years ago, dark wizards cast a wicked spell upon it so that they could corrupt its power for their own evil ends.") + npc("When they cursed the rocks for their rituals they made them useless to us and our magics. We require a brave adventurer to go on a quest for us to help purify the circle of Varrock.") choice("Start the Druidic Ritual quest?") { option("Yes.") { - player("Okay, I will try and help.") + player("Okay, I will try and help.") set("druidic_ritual", "started") refreshQuestJournal() - npc("Excellent. Go to the village south of this place and speak to my fellow druid, Sanfew, who is working on the purification ritual. He knows what is required to complete it.") + npc("Excellent. Go to the village south of this place and speak to my fellow druid, Sanfew, who is working on the purification ritual. He knows what is required to complete it.") refreshQuestJournal() - player("Will do.") + player("Will do.") } option("No.") { - player("No, that doesn't sound very interesting.") - npc("I will not try and change your mind adventurer. Some day when you have matured you may reconsider your position. We will wait until then.") + player("No, that doesn't sound very interesting.") + npc("I will not try and change your mind adventurer. Some day when you have matured you may reconsider your position. We will wait until then.") } } } suspend fun Player.started() { - player("Hello there.") - npc("Hello again, adventurer. You will need to speak to my fellow druid Sanfew in the village south of here to continue in your quest.") + player("Hello there.") + npc("Hello again, adventurer. You will need to speak to my fellow druid Sanfew in the village south of here to continue in your quest.") player("Okay, thanks.") } suspend fun Player.kaqemeex() { - player("Hello there.") - npc("I have word from Sanfew that you have been very helpful in assisting him with his preparations for the purification ritual. As promised I will now teach you the ancient arts of Herblore.") + player("Hello there.") + npc("I have word from Sanfew that you have been very helpful in assisting him with his preparations for the purification ritual. As promised I will now teach you the ancient arts of Herblore.") questComplete() } suspend fun Player.completed() { - player("Hello there.") - npc("Hello again. How is the Herblore going?") + player("Hello there.") + npc("Hello again. How is the Herblore going?") choice { - option("Very well, thank you.") { - npc("That is good to hear.") + option("Very well, thank you.") { + npc("That is good to hear.") } - option("I need more practice at it...") { - npc("Persistence is key to success.") + option("I need more practice at it...") { + npc("Persistence is key to success.") } - option("Can you explain the fundamentals again?") { - npc("Indeed I will...") - npc("Herblore is the skill of working with herbs and other ingredients, to make useful potions and poison.") - npc("First you will need a vial, which can be found or made with the crafting skill.") - npc("Then you must gather the herbs needed to make the potion you want.") - npc("You must fill your vial with water and add the ingredients you need. There are normally 2 ingredients to each type of potion.") - npc("Bear in mind, you must first clean each herb before you can use it.") - npc("You may also have to grind some ingredients before you can use them. You will need a pestle and mortar in order to do this.") - npc("Herbs can be found on the ground, and are also dropped by some monsters when you kill them.") - npc("Let's try an example Attack potion: The first ingredient is Guam leaf; the next is Eye of Newt.") - npc("Mix these in your water-filled vial, and you will produce an Attack potion. Drink this potion to increase your Attack level.") - npc("Different potions also require different Herblore levels before you can make them.") + option("Can you explain the fundamentals again?") { + npc("Indeed I will...") + npc("Herblore is the skill of working with herbs and other ingredients, to make useful potions and poison.") + npc("First you will need a vial, which can be found or made with the crafting skill.") + npc("Then you must gather the herbs needed to make the potion you want.") + npc("You must fill your vial with water and add the ingredients you need. There are normally 2 ingredients to each type of potion.") + npc("Bear in mind, you must first clean each herb before you can use it.") + npc("You may also have to grind some ingredients before you can use them. You will need a pestle and mortar in order to do this.") + npc("Herbs can be found on the ground, and are also dropped by some monsters when you kill them.") + npc("Let's try an example Attack potion: The first ingredient is Guam leaf; the next is Eye of Newt.") + npc("Mix these in your water-filled vial, and you will produce an Attack potion. Drink this potion to increase your Attack level.") + npc("Different potions also require different Herblore levels before you can make them.") npc("Good luck with your Herblore practices, and a good day to you.") player("Thanks for your help.") } - option("May I buy a Herblore skillcape, please?", filter = { hasMax(Skill.Herblore, 99) }) { - if (inventory.spaces < 2) { - npc("Unfortunately all Skillcapes are only available with a free hood; it's part of a skill promotion deal - buy one get one free, you know. So you'll need to free up some inventory space before I can sell you one.") - return@option - } - if (!inventory.contains("coins", 99000)) { - npc("Most certainly, but I must ask for a donation of 99,000 coins to cover the expense of the cape.") - return@option - } - npc("Most certainly; the Nardah Herbalist will recognize this cape and create unfinished potions for you and it may be searched for a pestle and mortar.") - npc("It has been a pleasure to watch you grow as a herbalist. I am privileged to have been instrumental in your learning, but I must ask for a donation of 99,000 coins to cover the expense of the cape.") - choice { - option("I'm afraid that's too much money for me.") { - npc("Not at all; there are many other adventurers who would love the opportunity to purchase such a prestigious item. You can find me here if you change your mind.") + if (hasMax(Skill.Herblore, 99)) { + option("May I buy a Herblore skillcape, please?") { + if (inventory.spaces < 2) { + npc("Unfortunately all Skillcapes are only available with a free hood; it's part of a skill promotion deal - buy one get one free, you know. So you'll need to free up some inventory space before I can sell you one.") + return@option } - option("Okay, here's 99,000 coins.") { - inventory.transaction { - add("herblore_cape") - add("herblore_hood") - remove("coins", 99000) + if (!inventory.contains("coins", 99000)) { + npc("Most certainly, but I must ask for a donation of 99,000 coins to cover the expense of the cape.") + return@option + } + npc("Most certainly; the Nardah Herbalist will recognize this cape and create unfinished potions for you and it may be searched for a pestle and mortar.") + npc("It has been a pleasure to watch you grow as a herbalist. I am privileged to have been instrumental in your learning, but I must ask for a donation of 99,000 coins to cover the expense of the cape.") + choice { + option("I'm afraid that's too much money for me.") { + npc("Not at all; there are many other adventurers who would love the opportunity to purchase such a prestigious item. You can find me here if you change your mind.") } - when (inventory.transaction.error) { - TransactionError.None -> npc("Good luck to you, $name.") - is TransactionError.Deficient -> { - player("But, unfortunately, I was mistaken.") - npc("Well, come back and see me when you do.") + option("Okay, here's 99,000 coins.") { + inventory.transaction { + add("herblore_cape") + add("herblore_hood") + remove("coins", 99000) } - is TransactionError.Full, is TransactionError.Invalid -> { - npc("Unfortunately all Skillcapes are only available with a free hood, it's part of a skill promotion deal; buy one get one free, you know. So you'll need to free up some inventory space before I can sell you one.") + when (inventory.transaction.error) { + TransactionError.None -> npc("Good luck to you, $name.") + is TransactionError.Deficient -> { + player("But, unfortunately, I was mistaken.") + npc("Well, come back and see me when you do.") + } + is TransactionError.Full, is TransactionError.Invalid -> { + npc("Unfortunately all Skillcapes are only available with a free hood, it's part of a skill promotion deal; buy one get one free, you know. So you'll need to free up some inventory space before I can sell you one.") + } } } } } - } - option("What must I do to wear a Herblore skillcape?", filter = { !hasMax(Skill.Herblore, 99) }) { - npc("To earn the right to wear any skillcape you need to have mastered that skill to the highest level possible and it is no different for Herblore.") - npc("With the cape equipped the Nardah Herbalist will create unfinished potions for you and you may search the cape for a pestle and mortar. When you have achieved a level of 99, come back and talk to me again.") + } else { + option("What must I do to wear a Herblore skillcape?") { + npc("To earn the right to wear any skillcape you need to have mastered that skill to the highest level possible and it is no different for Herblore.") + npc("With the cape equipped the Nardah Herbalist will create unfinished potions for you and you may search the cape for a pestle and mortar. When you have achieved a level of 99, come back and talk to me again.") + } } } } diff --git a/game/src/main/kotlin/content/area/asgarnia/taverley/Sanfew.kt b/game/src/main/kotlin/content/area/asgarnia/taverley/Sanfew.kt index de50a858b1..38f86d8dcd 100644 --- a/game/src/main/kotlin/content/area/asgarnia/taverley/Sanfew.kt +++ b/game/src/main/kotlin/content/area/asgarnia/taverley/Sanfew.kt @@ -30,11 +30,11 @@ class Sanfew : Script { choice { option("I've heard you druids might be able to teach me herblore.") { player("So... I've heard you druids might be able to teach me herblore...") - npc("Herblore eh? You're probably best off talking to Kaqemeex about that; he's the best herblore teacher we currently have. I believe at the moment he's at out stone circle just North of here.") + npc("Herblore eh? You're probably best off talking to Kaqemeex about that; he's the best herblore teacher we currently have. I believe at the moment he's at out stone circle just North of here.") player("Thanks.") } - option("Actually, I don't need to speak to you.") { - npc("Well, we all make mistakes sometimes.") + option("Actually, I don't need to speak to you.") { + npc("Well, we all make mistakes sometimes.") } } } @@ -49,21 +49,21 @@ class Sanfew : Script { npc("What can I do for you young 'un?") choice { option("I've been sent to help purify the Varrock stone circle.") { - player("I've been sent to assist you with the ritual to purify the Varrockian stone circle.") - npc("Well, what I'm struggling with right now is the meats needed for the potion to honour Guthix. I need the raw meat of four different animals for it, but not just any old meats will do.") - npc("Each meat has to be dipped individually into the Cauldron of Thunder for it to work correctly.") + player("I've been sent to assist you with the ritual to purify the Varrockian stone circle.") + npc("Well, what I'm struggling with right now is the meats needed for the potion to honour Guthix. I need the raw meat of four different animals for it, but not just any old meats will do.") + npc("Each meat has to be dipped individually into the Cauldron of Thunder for it to work correctly.") set("druidic_ritual", "cauldron") choice { option("Where can I find this cauldron?") { - npc("It is located somewhere in the mysterious underground halls which are located somewhere in the woods just South of here. They are too dangerous for me to go myself however.") + npc("It is located somewhere in the mysterious underground halls which are located somewhere in the woods just South of here. They are too dangerous for me to go myself however.") } - option("Ok, I'll do that then.") { + option("Ok, I'll do that then.") { npc("Well thank you very much!") } } } - option("Actually, I don't need to speak to you.") { - npc("Well, we all make mistakes sometimes.") + option("Actually, I don't need to speak to you.") { + npc("Well, we all make mistakes sometimes.") } } } @@ -79,26 +79,26 @@ class Sanfew : Script { npc("Thank you so much adventurer! These meats will allow our potion to honour Guthix to be completed, and bring one step closer to reclaiming our stone circle!") inventory.remove(enchantedMeat) set("druidic_ritual", "kaqemeex") - npc("Now go and talk to Kaqemeex and he will introduce you to the wonderful world of herblore and potion making!") + npc("Now go and talk to Kaqemeex and he will introduce you to the wonderful world of herblore and potion making!") } suspend fun Player.noMeat() { - player("No, not yet...") - npc("Well let me know when you do young 'un.") + player("No, not yet...") + npc("Well let me know when you do young 'un.") choice { option("What was I meant to be doing again?") { - npc("Trouble with your memory eh young 'un? I need the raw meats of four different animals that have been dipped into the Cauldron of Thunder so I can make my potion to honour Guthix.") - player("Ooooh yeah, I remember.") + npc("Trouble with your memory eh young 'un? I need the raw meats of four different animals that have been dipped into the Cauldron of Thunder so I can make my potion to honour Guthix.") + player("Ooooh yeah, I remember.") choice { option("Where can I find this cauldron?") { - npc("It is located somewhere in the mysterious underground halls which are located somewhere in the woods just South of here. They are too dangerous for me to go myself however.") + npc("It is located somewhere in the mysterious underground halls which are located somewhere in the woods just South of here. They are too dangerous for me to go myself however.") } - option("Ok, I'll do that then.") { + option("Ok, I'll do that then.") { npc("Well thank you very much!") } } } - option("I'll get on with it.") { + option("I'll get on with it.") { npc("Good, good.") } } @@ -107,12 +107,12 @@ class Sanfew : Script { suspend fun Player.eadgarsRuse() { npc("What can I do for you young 'un?") choice { - option("Have you any more work for me, to help reclaim the circle?") { - npc("Not just yet, young 'un.") + option("Have you any more work for me, to help reclaim the circle?") { + npc("Not just yet, young 'un.") statement("You do not meet all of the requirements to start
the Eadgar's Ruse quest.") } - option("Actually, I don't need to speak to you.") { - npc("Well, we all make mistakes sometimes.") + option("Actually, I don't need to speak to you.") { + npc("Well, we all make mistakes sometimes.") } } } diff --git a/game/src/main/kotlin/content/area/fremennik_province/neitiznot/ThakkradSigmundson.kt b/game/src/main/kotlin/content/area/fremennik_province/neitiznot/ThakkradSigmundson.kt index 40b799d9be..20b4f407d7 100644 --- a/game/src/main/kotlin/content/area/fremennik_province/neitiznot/ThakkradSigmundson.kt +++ b/game/src/main/kotlin/content/area/fremennik_province/neitiznot/ThakkradSigmundson.kt @@ -1,8 +1,8 @@ package content.area.fremennik_province.neitiznot +import content.entity.player.dialogue.Confused +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Uncertain import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -18,9 +18,9 @@ class ThakkradSigmundson : Script { init { npcOperate("Talk-to", "thakkrad_sigmundson") { - npc("Thank you for leading the Burgher's militia against the Troll King. Now that the trolls are leaderless I have repaired the bridge to the central isle for you as best I can.") + npc("Thank you for leading the Burgher's militia against the Troll King. Now that the trolls are leaderless I have repaired the bridge to the central isle for you as best I can.") player("Thanks Thakkrad. Does that mean I have access to the runite ores on that island?") - npc("Yes, you should be able to mine runite there if you wish.") + npc("Yes, you should be able to mine runite there if you wish.") } npcOperate("Craft-goods", "thakkrad_sigmundson") { @@ -28,8 +28,8 @@ class ThakkradSigmundson : Script { option("Cure my yak hide, please.") { cureHide() } - option("Nothing, thanks.") { - npc("See you later. You won't find anyone else who can cure yak-hide.") + option("Nothing, thanks.") { + npc("See you later. You won't find anyone else who can cure yak-hide.") } } } @@ -40,8 +40,8 @@ class ThakkradSigmundson : Script { } suspend fun Player.cureHide() { - player("Cure my yak hide please.") - npc("I will cure yak-hide for a fee of 5 gp per hide.") + player("Cure my yak hide please.") + npc("I will cure yak-hide for a fee of 5 gp per hide.") choice("How many hides do you want cured?") { option("Cure all my hides.") { cure(inventory.count("yak_hide")) @@ -50,18 +50,18 @@ class ThakkradSigmundson : Script { cure(1) } option("Cure no hide.") { - npc("Bye.") + npc("Bye.") } option("Can you cure any type of leather?") { - npc("Other types of leather? Why would you need any other type of leather?") - player("I'll take that as a no then.") + npc("Other types of leather? Why would you need any other type of leather?") + player("I'll take that as a no then.") } } } suspend fun Player.cure(amount: Int) { if (!inventory.contains("yak_hide")) { - npc("You have no yak-hide to cure.") + npc("You have no yak-hide to cure.") return } inventory.transaction { @@ -70,8 +70,8 @@ class ThakkradSigmundson : Script { add("cured_yak_hide", removed) } when (inventory.transaction.error) { - is TransactionError.Deficient -> npc("You don't have enough gold to pay me!.") - TransactionError.None -> npc("There you go.") + is TransactionError.Deficient -> npc("You don't have enough gold to pay me!.") + TransactionError.None -> npc("There you go.") else -> {} } } diff --git a/game/src/main/kotlin/content/area/fremennik_province/rellekka/Yrsa.kt b/game/src/main/kotlin/content/area/fremennik_province/rellekka/Yrsa.kt index 92e9254323..437e3ad45f 100644 --- a/game/src/main/kotlin/content/area/fremennik_province/rellekka/Yrsa.kt +++ b/game/src/main/kotlin/content/area/fremennik_province/rellekka/Yrsa.kt @@ -32,8 +32,8 @@ class Yrsa : Script { option("I'd like to change my shoes.") { startShoeShopping() } - option("Neither, thanks.") { - npc("As you wish.") + option("Neither, thanks.") { + npc("As you wish.") } } } @@ -76,7 +76,7 @@ class Yrsa : Script { suspend fun Player.startShoeShopping() { closeDialogue() if (equipped(EquipSlot.Weapon).isNotEmpty() || equipped(EquipSlot.Shield).isNotEmpty()) { - npc("I don't feel comfortable showing you shoes when you are wielding something. Please remove what you are holding first.") + npc("I don't feel comfortable showing you shoes when you are wielding something. Please remove what you are holding first.") return } if (equipped(EquipSlot.Feet).isNotEmpty()) { diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/Alrena.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/Alrena.kt index cb82a79971..3f9a26bdb4 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/Alrena.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/Alrena.kt @@ -20,10 +20,10 @@ class Alrena : Script { npcOperate("Talk-to", "alrena") { (target) -> when (quest("plague_city")) { "unstarted" -> { - player("Hello Madam.") - npc("Oh, hello there.") + player("Hello Madam.") + npc("Oh, hello there.") player("Are you ok?") - npc("Not too bad... I've just got some troubles on my mind...") + npc("Not too bad... I've just got some troubles on my mind...") } "started" -> started(target) "has_mask" -> hasMask() @@ -38,8 +38,8 @@ class Alrena : Script { } suspend fun Player.started(target: NPC) { - player("Hello, Edmond has asked me to help find your daughter.") - npc("Yes he told me. I've begun making your special gas mask, but I need some dwellberries to finish it.") + player("Hello, Edmond has asked me to help find your daughter.") + npc("Yes he told me. I've begun making your special gas mask, but I need some dwellberries to finish it.") if (holdsItem("dwellberries")) { player("Yes I've got some here.") item("dwellberries", 600, "You give the dwellberries to Alrena.") @@ -50,11 +50,11 @@ class Alrena : Script { set("plague_city", "has_mask") item("gas_mask", 300, "Alrena gives you the mask.") target.clearAnim() - npc("There we go, all done. While in West Ardougne you must wear this at all times, or you could catch the plague.") - npc("I'll make a spare mask. I'll hide it in the wardrobe in case the mourners come in.") + npc("There we go, all done. While in West Ardougne you must wear this at all times, or you could catch the plague.") + npc("I'll make a spare mask. I'll hide it in the wardrobe in case the mourners come in.") } else { - player("I'll try to get some.") - npc("The best place to look is in McGrubor's Wood, just west of Seers' Village.") + player("I'll try to get some.") + npc("The best place to look is in McGrubor's Wood, just west of Seers' Village.") } } @@ -68,59 +68,59 @@ class Alrena : Script { // todo check player("Hello Alrena.") npc("Hello darling, how's that tunnel coming along?") - player("I just need to soften the soil a little more and then we'll start digging.") + player("I just need to soften the soil a little more and then we'll start digging.") } suspend fun Player.bucketOfWater() { player("Hello Alrena.") npc("Hello darling, how's that tunnel coming along?") - player("I just need to soften the soil a little more and then we'll start digging.") + player("I just need to soften the soil a little more and then we'll start digging.") if (!ownsItem("gas_mask")) { - npc("Also, don't forget about that spare gas mask if you need it. It's hidden in the cupboard.") - player("Great, thanks Alrena!") + npc("Also, don't forget about that spare gas mask if you need it. It's hidden in the cupboard.") + player("Great, thanks Alrena!") } } suspend fun Player.fourBucketOfWater() { player("Hello again Alrena.") - npc("How's the tunnel going?") - player("I'm getting there.") + npc("How's the tunnel going?") + player("I'm getting there.") npc("One of the mourners has been sniffing around asking questions about you and Edmond, you should keep an eye out for him.") if (ownsItem("gas_mask")) { - player("Okay, thanks for the warning.") + player("Okay, thanks for the warning.") } else { - npc("Also, don't forget about that spare gas mask if you need it. It's hidden in the wardrobe.") - player("Great, thanks Alrena!") + npc("Also, don't forget about that spare gas mask if you need it. It's hidden in the wardrobe.") + player("Great, thanks Alrena!") } } suspend fun Player.sewer() { player("Hello Alrena.") - npc("Hi, have you managed to get through to West Ardougne?") - player("Not yet, but I should be going soon.") - npc("Make sure you wear your mask while you're over there! I can't think of a worse way to die.") + npc("Hi, have you managed to get through to West Ardougne?") + player("Not yet, but I should be going soon.") + npc("Make sure you wear your mask while you're over there! I can't think of a worse way to die.") if (ownsItem("gas_mask")) { - player("Okay, thanks for the warning.") + player("Okay, thanks for the warning.") } else { - npc("Don't forget, I've got a spare one hidden in the cupboard if you need it.") - player("Great, thanks Alrena!") + npc("Don't forget, I've got a spare one hidden in the cupboard if you need it.") + player("Great, thanks Alrena!") } } suspend fun Player.grillOpen() { - player("Hello Alrena.") - npc("Hello, any word on Elena?") - player("Not yet I'm afraid.") - npc("Is there anything else I can do to help?") + player("Hello Alrena.") + npc("Hello, any word on Elena?") + player("Not yet I'm afraid.") + npc("Is there anything else I can do to help?") if (quest("plague_city") == "spoken_to_jethick") { player("Do you have a picture of Elena?") - npc("Yes. There should be one in the house somewhere. Let me know if you need anything else.") + npc("Yes. There should be one in the house somewhere. Let me know if you need anything else.") } else { - player("It's alright, I'll get her back soon.") + player("It's alright, I'll get her back soon.") if (ownsItem("gas_mask")) { - npc("That's the spirit, dear.") + npc("That's the spirit, dear.") } else { - npc("That's the spirit, dear. Don't forget that there's a spare gas mask in the cupboard if you need one.") + npc("That's the spirit, dear. Don't forget that there's a spare gas mask in the cupboard if you need one.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/Ardougne.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/Ardougne.kt index f3c6380c60..afb1977a7a 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/Ardougne.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/Ardougne.kt @@ -88,7 +88,7 @@ class Ardougne : Script { message("You search the wardrobe but you find nothing.") } else if (bank.contains("gas_mask")) { statement("The wardrobe is empty.") - player("I think I've still got one of Alrena's gas masks in my bank.") + player("I think I've still got one of Alrena's gas masks in my bank.") } else { if (!inventory.add("gas_mask")) { item("gas_mask", 300, "You find a protective mask but you don't have enough room to take it.") diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/BartenderFlyingHorseInn.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/BartenderFlyingHorseInn.kt index 2b4b1551d2..68d62a4d0f 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/BartenderFlyingHorseInn.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/BartenderFlyingHorseInn.kt @@ -3,8 +3,8 @@ package content.area.kandarin.ardougne import content.entity.combat.hit.damage import content.entity.npc.shop.buy import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -24,13 +24,13 @@ class BartenderFlyingHorseInn : Script { player("What do you serve?") npc("Beer!") choice { - option("I'll have a beer then.") { - npc("Ok, that'll be two coins.") + option("I'll have a beer then.") { + npc("Ok, that'll be two coins.") if (buy("beer", 2)) { message("You buy a pint of beer.") } } - option("I'll not have anything then.") + option("I'll not have anything then.") if (onBarCrawl(target)) { option("I'm doing Alfred Grimhand's barcrawl.") { barCrawl(target) diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/Edmond.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/Edmond.kt index f3752a75a2..0355d3b355 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/Edmond.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/Edmond.kt @@ -45,34 +45,34 @@ class Edmond : Script { when (quest("plague_city")) { "unstarted" -> { player("Hello old man.") - npc("Sorry, I can't stop to talk...") + npc("Sorry, I can't stop to talk...") player("Why, what's wrong?") - npc("I've got to find my daughter. I pray that she is still alive...") + npc("I've got to find my daughter. I pray that she is still alive...") choice { option("What's happened to her?") { - npc("Elena's a healer. Three weeks ago she managed to cross the wall into West Ardougne. No one's allowed to cross the wall in case they spread the plague.") + npc("Elena's a healer. Three weeks ago she managed to cross the wall into West Ardougne. No one's allowed to cross the wall in case they spread the plague.") player("Plague?") - npc("Not that long ago, West Ardougne was hit by a deadly plague. They had the wall built to try and keep it contained. No one is allowed to enter the city now apart from the mourners.") - npc("They say the plague is a horrible way to go... That's why Elena felt she had to go help. She said she'd be gone for a few days but we've heard nothing since.") + npc("Not that long ago, West Ardougne was hit by a deadly plague. They had the wall built to try and keep it contained. No one is allowed to enter the city now apart from the mourners.") + npc("They say the plague is a horrible way to go... That's why Elena felt she had to go help. She said she'd be gone for a few days but we've heard nothing since.") player("Maybe I could help find her?") - npc("Really, would you? I've been working on a plan to get into West Ardougne, but I'm too old and tired to carry it through. But you on the other hand, you should have no problem.") + npc("Really, would you? I've been working on a plan to get into West Ardougne, but I'm too old and tired to carry it through. But you on the other hand, you should have no problem.") if (startQuest("plague_city")) { player("Where should I start?") - npc("If you're going into West Ardougne you'll need protection from the plague. My wife made a special gas mask for Elena with dwellberries rubbed into it.") - npc("They help to repel the plague apparently. We need some more though...") + npc("If you're going into West Ardougne you'll need protection from the plague. My wife made a special gas mask for Elena with dwellberries rubbed into it.") + npc("They help to repel the plague apparently. We need some more though...") player("Where can I find these dwellberries?") set("plague_city", "started") refreshQuestJournal() - npc("The only place I know of is McGrubor's Wood, just west of Seers' Village. The berries are bright blue so they're easy to spot.") - player("Okay, I'll go and get some.") - npc("The foresters keep a close eye on it, but there is a back way in.") + npc("The only place I know of is McGrubor's Wood, just west of Seers' Village. The berries are bright blue so they're easy to spot.") + player("Okay, I'll go and get some.") + npc("The foresters keep a close eye on it, but there is a back way in.") } else { - player("On second thoughts, I'd better not.") - npc("Well if you hear anything about Elena please tell me.") - player("I will. Goodbye.") + player("On second thoughts, I'd better not.") + npc("Well if you hear anything about Elena please tell me.") + player("I will. Goodbye.") } } - option("Well, good luck finding her.") + option("Well, good luck finding her.") } } "started" -> started() @@ -97,40 +97,40 @@ class Edmond : Script { npc("Have you got the dwellberries yet?") if (holdsItem("dwellberries")) { player("Yes I've got some here.") - npc("Take them to my wife Alrena, she's inside.") + npc("Take them to my wife Alrena, she's inside.") } else { - player("Sorry, I'm afraid not.") - npc("You'll probably find them in McGrubor's Wood, just west of Seers' Village. The berries are bright blue so they're easy to spot.") - player("Okay, I'll go and get some.") - npc("The foresters keep a close eye on it, but there is a back way in.") + player("Sorry, I'm afraid not.") + npc("You'll probably find them in McGrubor's Wood, just west of Seers' Village. The berries are bright blue so they're easy to spot.") + player("Okay, I'll go and get some.") + npc("The foresters keep a close eye on it, but there is a back way in.") } } suspend fun Player.hasMask() { player("Hi Edmond, I've got the gas mask now.") - npc("Good stuff, now for the digging. Beneath us are the Ardougne sewers. I've done some research, and I reckon you can use them to access to West Ardougne.") + npc("Good stuff, now for the digging. Beneath us are the Ardougne sewers. I've done some research, and I reckon you can use them to access to West Ardougne.") set("plague_city", "about_digging") - npc("I've already tried digging down to them but the soil is rock hard. You'll need to pour on several buckets of water to soften it up. I reckon four buckets should do it.") + npc("I've already tried digging down to them but the soil is rock hard. You'll need to pour on several buckets of water to soften it up. I reckon four buckets should do it.") } suspend fun Player.aboutDigging() { npc("How's it going?") - player("I still need to pour four more buckets of water on the soil.") + player("I still need to pour four more buckets of water on the soil.") } suspend fun Player.oneBucketOfWater() { npc("How's it going?") - player("I still need to pour three more buckets of water on the soil.") + player("I still need to pour three more buckets of water on the soil.") } suspend fun Player.twoBucketOfWater() { npc("How's it going?") - player("I still need to pour two more buckets of water on the soil.") + player("I still need to pour two more buckets of water on the soil.") } suspend fun Player.threeBucketOfWater() { npc("How's it going?") - player("I still need to pour one more bucket of water on the soil.") + player("I still need to pour one more bucket of water on the soil.") } suspend fun Player.fourBucketOfWater() { @@ -140,37 +140,37 @@ class Edmond : Script { suspend fun Player.sewer() { if (get("plaguecity_checked_grill", false)) { - player("Edmond, I can't get through to West Ardougne! There's an iron grill blocking my way, I can't pull it off alone.") - npc("If you get some rope you could tie to the grill, then we could both pull it at the same time.") + player("Edmond, I can't get through to West Ardougne! There's an iron grill blocking my way, I can't pull it off alone.") + npc("If you get some rope you could tie to the grill, then we could both pull it at the same time.") } else { - npc("I think it's the pipe to the south that comes up in West Ardougne.") - player("Alright I'll check it out.") + npc("I think it's the pipe to the south that comes up in West Ardougne.") + player("Alright I'll check it out.") } } suspend fun Player.grillRope() { - player("I've tied a rope to the grill over there, will you help me pull it off?") - npc("Alright, let's get to it...") + player("I've tied a rope to the grill over there, will you help me pull it off?") + npc("Alright, let's get to it...") cutscene() } suspend fun Player.spoken() { - player("Hello.") + player("Hello.") npc("Have you found Elena yet?") if (holdsItem("picture_plague_city")) { - player("Not yet, it's a big city over there.") - npc("I hope it's not too late.") + player("Not yet, it's a big city over there.") + npc("I hope it's not too late.") } else { - player("Not yet, it's a big city over there. Do you have a picture of Elena?") - npc("There should be a picture of Elena in the house. Please find her quickly, I hope it's not too late.") + player("Not yet, it's a big city over there. Do you have a picture of Elena?") + npc("There should be a picture of Elena in the house. Please find her quickly, I hope it's not too late.") } } suspend fun Player.grillOpen() { - player("Hello.") + player("Hello.") npc("Have you found Elena yet?") - player("Not yet, it's a big city over there.") - npc("I hope it's not too late.") + player("Not yet, it's a big city over there.") + npc("I hope it's not too late.") } suspend fun Player.freedElena() { @@ -240,9 +240,9 @@ class Edmond : Script { clearAnim() edmond.clearAnim() face(edmond) - npc("Once you're in the city look for a man called Jethick. He's an old friend of the family. Hopefully he can help you.", clickToContinue = false) + npc("Once you're in the city look for a man called Jethick. He's an old friend of the family. Hopefully he can help you.", clickToContinue = false) delay(4) - player("Alright, thanks I will.", largeHead = true, clickToContinue = false) + player("Alright, thanks I will.", largeHead = true, clickToContinue = false) delay(2) cutscene.end() } diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/Larry.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/Larry.kt index 79a4aafffd..51472c25de 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/Larry.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/Larry.kt @@ -1,14 +1,14 @@ package content.area.kandarin.ardougne import content.entity.player.bank.ownsItem -import content.entity.player.dialogue.Afraid import content.entity.player.dialogue.Angry +import content.entity.player.dialogue.Confused import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz +import content.entity.player.dialogue.Sad +import content.entity.player.dialogue.Scared import content.entity.player.dialogue.Shifty -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Uncertain -import content.entity.player.dialogue.Upset import content.entity.player.dialogue.type.* import content.quest.questCompleted import world.gregs.voidps.engine.Script @@ -48,32 +48,32 @@ class Larry : Script { return } if (!ownsItem("spy_notebook")) { - npc("Wait! Where is your notebook? Did it fall into enemy hands?") - player("I only turned around for a second...") - npc("Be more careful next time, who knows what would have happened if it go into the wrong hands!") // TODO proper message (not in osrs) + npc("Wait! Where is your notebook? Did it fall into enemy hands?") + player("I only turned around for a second...") + npc("Be more careful next time, who knows what would have happened if it go into the wrong hands!") // TODO proper message (not in osrs) if (inventory.add("spy_notebook")) { item("spy_notebook", 600, "Larry hands you a small notebook.") } } // https://youtu.be/s8tOI3CM9pc?si=Hv6ACh2QgWFLLAj8&t=264 - npc("Do you have news? Have you found more?") + npc("Do you have news? Have you found more?") choice("Choose an option:") { - option("I've found more penguins.") { - npc("More? They're spreading so quickly.") + option("I've found more penguins.") { + npc("More? They're spreading so quickly.") player("I've found ${get("penguins_found_weekly", 0)} penguins this week.") choice("Choose an option:") { havingTrouble() claimReward() option("What do I need to do again?") { - npc("Weren't you listening the first time? Fine, I'll explain it again, but pay attention this time.") + npc("Weren't you listening the first time? Fine, I'll explain it again, but pay attention this time.") npc("There are spies everywhere. I'm recruiting brave adventurers to find these penguins and tell me of their locations.") info() if (!questCompleted("lunar_diplomacy")) { - npc("One last thing. If you ever discover a place called Lunar Isle, you might gain access to a spell that will help you get in touch with me from anywhere in the world. I can't say any more that that, there may be spies nearby.") + npc("One last thing. If you ever discover a place called Lunar Isle, you might gain access to a spell that will help you get in touch with me from anywhere in the world. I can't say any more that that, there may be spies nearby.") } } - option("Never mind.") { - npc("FINE. Be that way.") + option("Never mind.") { + npc("FINE. Be that way.") } } } @@ -91,15 +91,15 @@ class Larry : Script { private suspend fun Player.reward(chuck: Boolean = false) { val points = get("penguin_points", 0) if (points <= 0) { - npc("You've found a lot of spies. But, you have no penguin points saved up. Keep looking!") + npc("You've found a lot of spies. But, you have no penguin points saved up. Keep looking!") return } if (chuck) { - npc("My, you have been working hard... You have $points Penguin Points.") + npc("My, you have been working hard... You have $points Penguin Points.") } else { - npc("Well, you need rewarding for your hard work. You have $points Penguin ${"Point".plural(points)}.") + npc("Well, you need rewarding for your hard work. You have $points Penguin ${"Point".plural(points)}.") } - npc("I can either reward you with coins or experience. Which would you prefer?") + npc("I can either reward you with coins or experience. Which would you prefer?") choice { option("Show me the money!") { player("I want the cash reward.") @@ -125,7 +125,7 @@ class Larry : Script { } private fun ChoiceOption.havingTrouble() { - option("I'm having trouble finding the penguins; can I have a hint?") { + option("I'm having trouble finding the penguins; can I have a hint?") { for (i in 0 until 10) { if (!containsVarbit("penguins_found", "penguin_$i")) { val penguin = npcs.firstOrNull { it.id == "hidden_penguin_$i" } ?: continue @@ -141,10 +141,10 @@ class Larry : Script { private suspend fun Player.explain() { // https://youtu.be/ZZRctKBpy3o?si=Iw5wOLTaHVt-EABp&t=108 - npc("What do you want?") - player("Uh, I just wanted to as-") + npc("What do you want?") + player("Uh, I just wanted to as-") npc("SHHHHHH! They're listening. Keep your voice down.") - player("*whispers* Who's listening?") + player("*whispers* Who's listening?") npc("Never mind.") npc("Are you the inquisitive sort? Are you willing to go on an expedition for me?") player("What would I need to do on this expedition?") @@ -152,13 +152,13 @@ class Larry : Script { // https://www.youtube.com/watch?v=GMbrrm9YaW0 player("Why do you want to find penguins around the world?") npc("I need to see if they're organis-, I mean, if they're migrating or something like that.") - player("You think they're organised? They're just penguins!") + player("You think they're organised? They're just penguins!") npc("Do not underestimate them! They're clever and tricky and LISTENING! I know they're up to something.") npc("That's why I'm recruiting brave adventurers to find these penguins and tell me of their locations.") player("Well, I don't think they're organised, but I do travel all over the world. I could give you a hand finding them. What do I need to do?") info() - player("How much experience?") - npc("The more penguins you find, the more experience. Are you in?") + player("How much experience?") + npc("The more penguins you find, the more experience. Are you in?") player("Great, I'll get started right away.") statement("To get 2 Penguin Points for deep cover penguins, you must complete the Cold War quest.") set("penguin_hide_and_seek_explained", true) @@ -170,7 +170,7 @@ class Larry : Script { private suspend fun Player.info() { npc("Whenever you spot a penguin, spy on it. They're well trained and will change their positions every week, so keep your eyes peeled.") - player("What should I do after I've spied on them?") + player("What should I do after I've spied on them?") npc("I'll give you a notebook to record any penguins you've spotted. Each penguin is worth 1 Penguin Point.") npc("If you assist me further in my penguin investigations, I will award you 2 Penguin Points for any penguins you find further abroad.") npc("Report back here and I will reward you for your efforts. I will count up the Penguin Points you have earned and reward you with either a cash reward for 6,500gp per point, or experience in a skill of your choice.") diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/PenguinKeeper.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/PenguinKeeper.kt index d7967e5098..18defd7973 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/PenguinKeeper.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/PenguinKeeper.kt @@ -2,8 +2,8 @@ package content.area.kandarin.ardougne import content.entity.player.bank.ownsItem import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -17,7 +17,7 @@ import world.gregs.voidps.engine.inv.inventory class PenguinKeeper : Script { init { npcOperate("Talk-to", "penguin_keeper_ardougne") { - player("Hello there. how are the penguins doing today?") + player("Hello there. how are the penguins doing today?") npc("They are doing fine, thanks.") if (has(Skill.Summoning, 30) && !ownsItem("penguin_egg")) { npc("Actually, you might be able to help me with something - if you are interested.") @@ -34,32 +34,32 @@ class PenguinKeeper : Script { } when (penguinCount) { 0 -> { - npc("Well, you see, the penguins have been laying so many eggs recently that we can't afford to raise them all ourselves.") - npc("You seem to know a bit about raising animals - would you like to raise a penguin for us?") + npc("Well, you see, the penguins have been laying so many eggs recently that we can't afford to raise them all ourselves.") + npc("You seem to know a bit about raising animals - would you like to raise a penguin for us?") } 1 -> { // TODO proper message - npc("It would be great if you could take care of one more - would you like to raise another penguin for us?") + npc("It would be great if you could take care of one more - would you like to raise another penguin for us?") } 2 -> { - npc("Well, we are now taking care of an incomprehensible amount of penguins!") - npc("It would be great if you could take care of just one more - would you like to raise a final penguin for us?") + npc("Well, we are now taking care of an incomprehensible amount of penguins!") + npc("It would be great if you could take care of just one more - would you like to raise a final penguin for us?") } else -> return@npcOperate } choice { - option("Yes, of course.") { + option("Yes, of course.") { npc("Wonderful!") if (!inventory.add("penguin_egg")) { inventoryFull() return@option } npc("Here you go - this egg will hatch into a baby penguin.") - npc("They eat raw fish and aren't particularly fussy about anything, so it won't be any trouble to raise.") + npc("They eat raw fish and aren't particularly fussy about anything, so it won't be any trouble to raise.") player("Okay, thank you very much.") } - option("No thanks.") { - npc("Fair enough. The offer still stands if you change your mind.") + option("No thanks.") { + npc("Fair enough. The offer still stands if you change your mind.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/WizardCromperty.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/WizardCromperty.kt index d78310832a..0112dced81 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/WizardCromperty.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/WizardCromperty.kt @@ -15,16 +15,16 @@ class WizardCromperty : Script { init { npcOperate("Talk-to", "wizard_cromperty_*") { (target) -> - npc("Hello there. My name is Cromperty. I am a wizard, and an inventor.") - npc("You must be ElderCadence. My good friend Sedridor has told me about you. As both wizard and inventor, he has aided me in my great invention!") - player("Hello there.") + npc("Hello there. My name is Cromperty. I am a wizard, and an inventor.") + npc("You must be ElderCadence. My good friend Sedridor has told me about you. As both wizard and inventor, he has aided me in my great invention!") + player("Hello there.") choice { - option("Two jobs? That's got to be tough.") { + option("Two jobs? That's got to be tough.") { npc("Not when you combine them it isn't! I invent MAGIC things!") choice { whatHaveYouInvented(target) - option("Well, I shall leave you to your inventing.") { - npc("Thanks for dropping by! Stop again anytime!") + option("Well, I shall leave you to your inventing.") { + npc("Thanks for dropping by! Stop again anytime!") } } } @@ -52,17 +52,17 @@ class WizardCromperty : Script { npc("directly to it! I hope to revolutionise the entire teleportation system! Don't you think I'm great? Uh, I mean it's great?") choice { option("So where is the other block?") { - npc("Well... Hmm. I would guess somewhere between here and the Wizards' Tower in Misthalin. All I know is that it hasn't got there yet as the wizards there would have contacted me.") - npc("I'm using the GPDT for delivery. They assured me it would be delivered promptly.") + npc("Well... Hmm. I would guess somewhere between here and the Wizards' Tower in Misthalin. All I know is that it hasn't got there yet as the wizards there would have contacted me.") + npc("I'm using the GPDT for delivery. They assured me it would be delivered promptly.") choice { teleportMe(target) option("Who are the GPDT?") { - npc("The Gielinor Parcel Delivery Team. They come very highly recommended. Their motto is: 'We aim to deliver your stuff at some point after you have paid us!'") + npc("The Gielinor Parcel Delivery Team. They come very highly recommended. Their motto is: 'We aim to deliver your stuff at some point after you have paid us!'") } } } teleportMe(target) - option("Well done, that's very clever.") { + option("Well done, that's very clever.") { npc("Yes it is isn't it? Forgive me for feeling a little smug, this is a major breakthrough in the field of teleportation!") } } @@ -73,7 +73,7 @@ class WizardCromperty : Script { option("Can I be teleported please?") { npc("By all means! I'm afraid I can't give you any specifics as to where you will come out however. Presumably wherever the other block is located.") choice { - option("Yes, that sounds good. Teleport me!") { + option("Yes, that sounds good. Teleport me!") { npc("Okey dokey! Ready?") gfx("curse_impact") target.gfx("curse_cast") @@ -83,8 +83,8 @@ class WizardCromperty : Script { player.tele(2649, 3271) } } - option("That sounds dangerous. Leave me here.") { - npc("As you wish.") + option("That sounds dangerous. Leave me here.") { + npc("As you wish.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Bravek.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Bravek.kt index 3716cc95d5..c7b1dcef11 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Bravek.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Bravek.kt @@ -23,12 +23,12 @@ class Bravek : Script { npcOperate("Talk-to", "bravek") { (target) -> when (quest("plague_city")) { "talk_to_bravek" -> { - npc("My head hurts! I'll speak to you another day...") + npc("My head hurts! I'll speak to you another day...") choice { option("This is really important though!") { - npc("I can't possibly speak to you with my head spinning like this... I went a bit heavy on the drink again last night. Curse my herbalist, she made the best hang over cures. Darn inconvenient of her catching the plague.") + npc("I can't possibly speak to you with my head spinning like this... I went a bit heavy on the drink again last night. Curse my herbalist, she made the best hang over cures. Darn inconvenient of her catching the plague.") choice { - option("Okay, goodbye.") + option("Okay, goodbye.") option("You shouldn't drink so much then!") { shouldNotDrink() } @@ -37,7 +37,7 @@ class Bravek : Script { } } } - option("Okay, goodbye.") + option("Okay, goodbye.") } } "has_cure_paper" -> hasCurePaper(target) @@ -54,20 +54,20 @@ class Bravek : Script { } suspend fun Player.shouldNotDrink() { - npc("Well positions of responsibility are hard, I need something to take my mind off things... Especially with the problems this place has.") + npc("Well positions of responsibility are hard, I need something to take my mind off things... Especially with the problems this place has.") choice { - option("Okay, goodbye.") + option("Okay, goodbye.") option("Do you know what's in the cure?") { cure() } - option("I don't think drink is the solution.") { + option("I don't think drink is the solution.") { notTheSolution() } } } suspend fun Player.cure() { - npc("Hmmm let me think... Ouch! Thinking isn't clever. Ah here, she did scribble it down for me.") + npc("Hmmm let me think... Ouch! Thinking isn't clever. Ah here, she did scribble it down for me.") set("plague_city", "has_cure_paper") if (inventory.add("a_scruffy_note")) { item("a_scruffy_note", 600, "Bravek hands you a tatty piece of paper.") @@ -77,19 +77,19 @@ class Bravek : Script { } suspend fun Player.notTheSolution() { - npc("I don't feel well enough to have a philosophical discussion about it right now. My head hurts.") + npc("I don't feel well enough to have a philosophical discussion about it right now. My head hurts.") choice { option("Do you know what's in the cure?") { cure() } - option("Okay, goodbye.") + option("Okay, goodbye.") } } suspend fun Player.hasCurePaper(target: NPC) { - npc("Uurgh! My head still hurts too much to think straight. Oh for one of Trudi's hangover cures!") + npc("Uurgh! My head still hurts too much to think straight. Oh for one of Trudi's hangover cures!") if (holdsItem("hangover_cure")) { - player("Try this.") + player("Try this.") inventory.remove("hangover_cure") set("plague_city", "gave_cure") target.say("Grruurgh!") @@ -115,21 +115,21 @@ class Bravek : Script { } suspend fun Player.gaveCureMenu() { - player("I need to rescue a kidnap victim called Elena. She's being held in a plague house, I need permission to enter.") - npc("Well the mourners deal with that sort of thing...") + player("I need to rescue a kidnap victim called Elena. She's being held in a plague house, I need permission to enter.") + npc("Well the mourners deal with that sort of thing...") choice { - option("Okay, I'll go speak to them.") + option("Okay, I'll go speak to them.") option("Is that all anyone says around here?") { - npc("Well, they know best about plague issues.") + npc("Well, they know best about plague issues.") choice { option("Don't you want to take an interest in it at all?") { - npc("Nope, I don't wish to take a deep interest in plagues. That stuff is too scary for me!") + npc("Nope, I don't wish to take a deep interest in plagues. That stuff is too scary for me!") choice { option("I see why people say you're a weak leader.") { - npc("Bah, people always criticise their leaders but delegating is the only way to lead. I delegate all plague issues to the mourners.") + npc("Bah, people always criticise their leaders but delegating is the only way to lead. I delegate all plague issues to the mourners.") player("This whole city is a plague issue!") } - option("Okay, I'll talk to the mourners.") + option("Okay, I'll talk to the mourners.") option("They won't listen to me!") { wontListen() } @@ -148,8 +148,8 @@ class Bravek : Script { suspend fun Player.wontListen() { player("They say I'm not properly equipped to go in the house, though I do have a very effective gas mask.") - npc("Hmmm, well I guess they're not taking the issue of a kidnapping seriously enough. They do go a bit far sometimes.") - npc("I've heard of Elena, she has helped us a lot... Okay, I'll give you this warrant to enter the house.") + npc("Hmmm, well I guess they're not taking the issue of a kidnapping seriously enough. They do go a bit far sometimes.") + npc("I've heard of Elena, she has helped us a lot... Okay, I'll give you this warrant to enter the house.") if (inventory.add("warrant")) { item("warrant", 600, "Bravek hands you a warrant.") } else { diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Clerk.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Clerk.kt index aed2ab45fb..6349f28dbb 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Clerk.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Clerk.kt @@ -23,37 +23,37 @@ class Clerk : Script { } suspend fun Player.menu() { - npc("Hello, welcome to the Civic Office of West Ardougne. How can I help you?") + npc("Hello, welcome to the Civic Office of West Ardougne. How can I help you?") choice { if (quest("plague_city") == "need_clearance") { - option("I need permission to enter a plague house.") { + option("I need permission to enter a plague house.") { permission() } } option("Who is through that door?") { throughThatDoor() } - option("I'm just looking thanks.") { + option("I'm just looking thanks.") { } } } suspend fun Player.throughThatDoor() { - npc("The city warder Bravek is in there.") + npc("The city warder Bravek is in there.") player("Can I go in?") if (stages.contains(quest("plague_city"))) { - npc("I suppose so.") + npc("I suppose so.") } else { - npc("He has asked not to be disturbed.") + npc("He has asked not to be disturbed.") if (quest("plague_city") == "need_clearance") { choice { option("This is urgent though! Someone's been kidnapped!") { urgent() } - option("Okay, I'll leave him alone.") { + option("Okay, I'll leave him alone.") { } option("Do you know when he will be available?") { - npc("Oh I don't know, an hour or so maybe.") + npc("Oh I don't know, an hour or so maybe.") } } } @@ -61,25 +61,25 @@ class Clerk : Script { } suspend fun Player.permission() { - npc("Rather you than me! The mourners normally deal with that stuff, you should speak to them. Their headquarters are right near the city gate.") + npc("Rather you than me! The mourners normally deal with that stuff, you should speak to them. Their headquarters are right near the city gate.") choice { - option("I'll try asking them then.") { + option("I'll try asking them then.") { } option("Surely you don't let them run everything for you?") { - npc("Well, they do know what they're doing here. If they did start doing something badly Bravek, the city warder, would have the power to override them. I can't see that happening though.") + npc("Well, they do know what they're doing here. If they did start doing something badly Bravek, the city warder, would have the power to override them. I can't see that happening though.") choice { - option("I'll try asking them then.") { + option("I'll try asking them then.") { } option("Can I speak to Bravek anyway?") { - npc("He has asked not to be disturbed.") + npc("He has asked not to be disturbed.") choice { option("This is urgent though! Someone's been kidnapped!") { urgent() } - option("Okay, I'll leave him alone.") { + option("Okay, I'll leave him alone.") { } option("Do you know when he will be available?") { - npc("Oh I don't know, an hour or so maybe.") + npc("Oh I don't know, an hour or so maybe.") } } } @@ -92,14 +92,14 @@ class Clerk : Script { } suspend fun Player.urgent() { - npc("I'll see what I can do I suppose.") - npc("Mr Bravek, there's a man here who really needs to speak to you.") + npc("I'll see what I can do I suppose.") + npc("Mr Bravek, there's a man here who really needs to speak to you.") set("plague_city", "talk_to_bravek") - npc("bravek", "I suppose they can come in then. If they keep it short.") + npc("bravek", "I suppose they can come in then. If they keep it short.") } suspend fun Player.talkToBravek() { - npc("Bravek will see you now but keep it short!") + npc("Bravek will see you now but keep it short!") player("Thanks, I won't take much of his time.") } } diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Elena.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Elena.kt index 8c1606760d..850b8d2c97 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Elena.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Elena.kt @@ -13,9 +13,9 @@ class Elena : Script { init { npcOperate("Talk-to", "elenap_vis") { player("Hi, you're free to go! Your kidnappers don't seem to be about right now.") - npc("Thank you, being kidnapped was so inconvenient. I was on my way back to East Ardougne with some samples, I want to see if I can diagnose a cure for this plague.") - player("Well you can leave via the manhole in the middle of the city.") - npc("Go and see my father, I'll make sure he adequately rewards you. Now I'd better leave while I still can.") + npc("Thank you, being kidnapped was so inconvenient. I was on my way back to East Ardougne with some samples, I want to see if I can diagnose a cure for this plague.") + player("Well you can leave via the manhole in the middle of the city.") + npc("Go and see my father, I'll make sure he adequately rewards you. Now I'd better leave while I still can.") open("fade_out") delay(4) set("plaguecity_can_see_edmond_up_top", false) @@ -30,15 +30,15 @@ class Elena : Script { "unstarted" -> { player("Good day to you, Elena.") npc("You too, thanks for freeing me.") - npc("It's just a shame the mourners confiscated my equipment.") + npc("It's just a shame the mourners confiscated my equipment.") player("What did they take?") - npc("My distillator. I can't test any plague samples without it. They're holding it in the Mourner Headquarters in West Ardougne.") + npc("My distillator. I can't test any plague samples without it. They're holding it in the Mourner Headquarters in West Ardougne.") npc("I must somehow retrieve that distillator if I am to find a cure for this awful affliction. Do you think you could help me?") if (startQuest("biohazard")) { // todo add quest } else { - player("I'm busy at the moment, I'm afraid.") - npc("Fair enough.") + player("I'm busy at the moment, I'm afraid.") + npc("Fair enough.") } } "started" -> started() diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Jethick.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Jethick.kt index f542a3947a..ada4f80639 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Jethick.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Jethick.kt @@ -19,16 +19,16 @@ class Jethick : Script { when (quest("plague_city")) { "grill_open" -> grillOpen() "spoken_to_jethick" -> { - npc("Hello. We don't get many newcomers around here.") + npc("Hello. We don't get many newcomers around here.") looking() } - else -> npc("Hello. We don't get many newcomers around here.") + else -> npc("Hello. We don't get many newcomers around here.") } } itemOnNPCOperate("*", "jethick") { if (it.item.id == "picture_plague_city") { - player("Hi, I'm looking for a woman from East Ardougne.") + player("Hi, I'm looking for a woman from East Ardougne.") showPicture() } else { npc("Thanks, but I don't accept gifts.") @@ -41,12 +41,12 @@ class Jethick : Script { set("plague_city", "spoken_to_jethick") spokenToJethick() } else { - npc("Hello, I don't recognise you. We don't get many newcomers around here.") + npc("Hello, I don't recognise you. We don't get many newcomers around here.") player("How come?") - npc("The plague of course. Not many people want to come to a place like this and the few that do normally get stopped by the mourners.") - npc("All you'll find here now are the dead and the dying. Even our own king has abandoned us.") + npc("The plague of course. Not many people want to come to a place like this and the few that do normally get stopped by the mourners.") + npc("All you'll find here now are the dead and the dying. Even our own king has abandoned us.") player("Your king?") - npc("Yes, King Tyras of West Ardougne. He's the brother of King Lathas, the ruler of East Ardougne.") + npc("Yes, King Tyras of West Ardougne. He's the brother of King Lathas, the ruler of East Ardougne.") player("So where is the king?") npc("Well he's always been a bit of an explorer. He's led multiple expeditions into the uncharted lands to the west.") npc("The plague first started when he came back from one of these expeditions. More than a few suspect that some of his men caught it out there and brought it back with them.") @@ -58,29 +58,29 @@ class Jethick : Script { private suspend fun Player.looking() { player("I'm looking for a woman from East Ardougne called Elena.") - npc("East Ardougnian women are easier to find in East Ardougne. Not many would come to West Ardougne to find one. Although the name is familiar, what does she look like?") + npc("East Ardougnian women are easier to find in East Ardougne. Not many would come to West Ardougne to find one. Although the name is familiar, what does she look like?") if (inventory.contains("picture_plague_city")) { showPicture() } else { - player("Um... brown hair... in her twenties...") + player("Um... brown hair... in her twenties...") if (!get("plaguecity_picture_asked", false)) { set("plaguecity_picture_asked", true) } - npc("Hmmm, that doesn't narrow it down a huge amount... I'll need to know more than that, or see a picture?") + npc("Hmmm, that doesn't narrow it down a huge amount... I'll need to know more than that, or see a picture?") } } private suspend fun Player.showPicture() { item("picture_plague_city", 600, "You show Jethick the picture.") - npc("Ah yes. She came over here to help the plague victims. I think she is staying over with the Rehnison family.") + npc("Ah yes. She came over here to help the plague victims. I think she is staying over with the Rehnison family.") set("plague_city", "spoken_to_jethick") spokenToJethick() } suspend fun Player.spokenToJethick() { - npc("They live in the small timbered building at the far north side of town. I've not seen her around here in a while, mind.") + npc("They live in the small timbered building at the far north side of town. I've not seen her around here in a while, mind.") if (!ownsItem("book_turnip_growing_for_beginners")) { - npc("I don't suppose you could run me a little errand while you're over there? I borrowed this book from them, can you return it?") + npc("I don't suppose you could run me a little errand while you're over there? I borrowed this book from them, can you return it?") choice { option("Yes, I'll return it for you.") { if (inventory.add("book_turnip_growing_for_beginners")) { diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Man.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Man.kt index a2218db0bf..a2846287a1 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Man.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Man.kt @@ -10,8 +10,8 @@ class Man : Script { init { npcOperate("Talk-to", "w_ardougnecitizen3") { player("Good day.") - npc("An outsider! Can you get me out of this hell hole?") - player("Sorry, that's not what I'm here to do.") + npc("An outsider! Can you get me out of this hell hole?") + player("Sorry, that's not what I'm here to do.") } npcOperate("Talk-to", "w_ardougnecitizen4") { diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Mourner.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Mourner.kt index 9d4fb4f593..a508ba3c07 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Mourner.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Mourner.kt @@ -23,8 +23,8 @@ class Mourner : Script { init { npcOperate("Talk-to", "mourner_elena_guard_vis") { (target) -> if (holdsItem("warrant")) { - player("I have a warrant from Bravek to enter here.") - npc("This is highly irregular. Please wait...") + player("I have a warrant from Bravek to enter here.") + npc("This is highly irregular. Please wait...") val otherGuard = npcs[if (target.tile.equals(2539, 3273)) Tile(2534, 3273) else Tile(2539, 3273)].first { it.id == "mourner_elena_guard_vis" } val faceDirection = if (target.tile.equals(2539, 3273)) Direction.EAST else Direction.WEST target.face(faceDirection) @@ -41,19 +41,19 @@ class Mourner : Script { statement("You wait until the mourner's back is turned and sneak into the building.") return@npcOperate } - npc("Hmmm, how did you get over here? You're not one of this rabble. Ah well, you'll have to stay. Can't risk you going back now.") + npc("Hmmm, how did you get over here? You're not one of this rabble. Ah well, you'll have to stay. Can't risk you going back now.") choice { option("So what's a mourner?") { - npc("We're working for King Lathas of East Ardougne. He has tasked us with containing the accursed plague sweeping West Ardougne.") - npc("We also do our best to ease these people's suffering. We're nicknamed mourners because we spend a lot of time at plague victim funerals, no one else is allowed to risk attending.") - npc("It's a demanding job, and we get little thanks from the people here.") + npc("We're working for King Lathas of East Ardougne. He has tasked us with containing the accursed plague sweeping West Ardougne.") + npc("We also do our best to ease these people's suffering. We're nicknamed mourners because we spend a lot of time at plague victim funerals, no one else is allowed to risk attending.") + npc("It's a demanding job, and we get little thanks from the people here.") } option("I haven't got the plague though...") { - npc("Can't risk you being a carrier. That protective clothing you have isn't regulation issue. It won't meet safety standards.") + npc("Can't risk you being a carrier. That protective clothing you have isn't regulation issue. It won't meet safety standards.") } - option("I'm looking for a woman named Elena.") { - npc("Ah yes, I've heard of her. A healer I believe. She must be mad coming over here voluntarily.") - npc("I hear rumours she has probably caught the plague now. Very tragic, a stupid waste of life.") + option("I'm looking for a woman named Elena.") { + npc("Ah yes, I've heard of her. A healer I believe. She must be mad coming over here voluntarily.") + npc("I hear rumours she has probably caught the plague now. Very tragic, a stupid waste of life.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Recruiter.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Recruiter.kt index 58e347b40e..d80b40fe77 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Recruiter.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Recruiter.kt @@ -14,10 +14,10 @@ class Recruiter : Script { init { npcOperate("Talk-to", "recruiter") { (target) -> - npc("Citizens of West Ardougne! King Tyras needs you for his Royal Army! Who will join this noble cause?") + npc("Citizens of West Ardougne! King Tyras needs you for his Royal Army! Who will join this noble cause?") npc("w_ardougnecitizen3", "Plague bringer!") npc("w_ardougnecitizen3", "King Tyras is scum!") - npc("Tyras will be informed of these words of treason!") + npc("Tyras will be informed of these words of treason!") sound("plague_tomato") floorItems.add(target.tile, "tomato", disappearTicks = 300) statement("Someone throws a tomato at the recruiter.") diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Rehnisons.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Rehnisons.kt index bcdb6201e9..66e715b658 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Rehnisons.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/Rehnisons.kt @@ -20,11 +20,11 @@ class Rehnisons : Script { npc("That's good to hear, she helped us a lot.") } else { player("Hi, I hear a woman called Elena is staying here.") - npc("Yes she was staying here, but slightly over a week ago she was getting ready to go back. However she never managed to leave.") + npc("Yes she was staying here, but slightly over a week ago she was getting ready to go back. However she never managed to leave.") if (quest("plague_city") == "returned_book") { set("plague_city", "spoken_to_ted") } - npc("My daughter Milli was playing near the west wall when she saw some shadowy figures jump out and grab her. Milli is upstairs if you wish to speak to her.") + npc("My daughter Milli was playing near the west wall when she saw some shadowy figures jump out and grab her. Milli is upstairs if you wish to speak to her.") // todo talk to him again at this point } } @@ -36,8 +36,8 @@ class Rehnisons : Script { npcOperate("Talk-to", "martha_rehnison") { // todo may also set the varbit looks like the same dialogue as ted_rehnison player("Hi, I hear a woman called Elena is staying here.") - npc("Yes she was staying here, but slightly over a week ago she was getting ready to go back. However she never managed to leave.") - npc("My daughter Milli was playing near the west wall when she saw some shadowy figures jump out and grab her. Milli is upstairs if you wish to speak to her.") + npc("Yes she was staying here, but slightly over a week ago she was getting ready to go back. However she never managed to leave.") + npc("My daughter Milli was playing near the west wall when she saw some shadowy figures jump out and grab her. Milli is upstairs if you wish to speak to her.") } npcOperate("Talk-to", "milli_rehnison") { @@ -45,16 +45,16 @@ class Rehnisons : Script { if (stages.contains(quest("plague_city"))) { // todo check dialogue for freed_elena npc("Have you found Elena yet?") player("Yes, she's safe at home.") - npc("I hope she comes and visits sometime.") - player("Maybe.") + npc("I hope she comes and visits sometime.") + player("Maybe.") } else { - player("Hello. Your parents say you saw what happened to Elena...") - npc("*sniff* Yes I was near the south east corner when I saw Elena walking by. I was about to run to greet her when some men jumped out. They shoved a sack over her head and dragged her into a building.") + player("Hello. Your parents say you saw what happened to Elena...") + npc("*sniff* Yes I was near the south east corner when I saw Elena walking by. I was about to run to greet her when some men jumped out. They shoved a sack over her head and dragged her into a building.") player("Which building?") if (quest("plague_city") == "spoken_to_ted") { set("plague_city", "spoken_to_milli") } - npc("It was the boarded up building with no windows in the south east corner of West Ardougne.") + npc("It was the boarded up building with no windows in the south east corner of West Ardougne.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/WestArdougne.kt b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/WestArdougne.kt index 2f8b79ac93..7db46570e0 100644 --- a/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/WestArdougne.kt +++ b/game/src/main/kotlin/content/area/kandarin/ardougne/west_ardougne/WestArdougne.kt @@ -45,19 +45,19 @@ class WestArdougne : Script { return@objectOperate } statement("The door is locked.") - npc("elenap_vis", "Hey get me out of here please!") - player("I would do but I don't have a key.") + npc("elenap_vis", "Hey get me out of here please!") + player("I would do but I don't have a key.") if (get("plaguecity_key_asked", false)) { set("plaguecity_key_asked", true) } - npc("elenap_vis", "I think there may be one around somewhere. I'm sure I heard them stashing it somewhere.") + npc("elenap_vis", "I think there may be one around somewhere. I'm sure I heard them stashing it somewhere.") choice { option("Have you caught the plague?") { - npc("elenap_vis", "No, I have none of the symptoms.") - player("Strange, I was told this house was plague infected.") - npc("elenap_vis", "I suppose that was a cover up by the kidnappers.") + npc("elenap_vis", "No, I have none of the symptoms.") + player("Strange, I was told this house was plague infected.") + npc("elenap_vis", "I suppose that was a cover up by the kidnappers.") } - option("Okay, I'll look for it.") + option("Okay, I'll look for it.") } } @@ -88,8 +88,8 @@ class WestArdougne : Script { } npc("ted_rehnison", "Go away. We don't want any.") if (holdsItem("book_turnip_growing_for_beginners")) { - player("I'm a friend of Jethick's, I have come to return a book he borrowed.") - npc("ted_rehnison", "Oh... Why didn't you say, come in then.") + player("I'm a friend of Jethick's, I have come to return a book he borrowed.") + npc("ted_rehnison", "Oh... Why didn't you say, come in then.") enterDoor(target, delay = 2) inventory.remove("book_turnip_growing_for_beginners") set("plague_city", "returned_book") @@ -115,28 +115,28 @@ class WestArdougne : Script { return@objectOperate } statement("The door won't open.
You notice a black cross on the door.") - npc("mourner_elena_guard_vis", " I'd stand away from there. That black cross means that house has been touched by the plague.") + npc("mourner_elena_guard_vis", " I'd stand away from there. That black cross means that house has been touched by the plague.") if (quest("plague_city") == "spoken_to_milli") { choice { - option("But I think a kidnap victim is in here.") { - npc("mourner_elena_guard_vis", "Sounds unlikely, even kidnappers wouldn't go in there. Even if someone is in there, they're probably dead by now.") + option("But I think a kidnap victim is in here.") { + npc("mourner_elena_guard_vis", "Sounds unlikely, even kidnappers wouldn't go in there. Even if someone is in there, they're probably dead by now.") choice { - option("Good point.") - option("I want to check anyway.") { - npc("mourner_elena_guard_vis", "You don't have clearance to go in there.") + option("Good point.") + option("I want to check anyway.") { + npc("mourner_elena_guard_vis", "You don't have clearance to go in there.") player("How do I get clearance?") - npc("mourner_elena_guard_vis", "Well you'd need to apply to the head mourner, or I suppose Bravek the city warder.") + npc("mourner_elena_guard_vis", "Well you'd need to apply to the head mourner, or I suppose Bravek the city warder.") set("plague_city", "need_clearance") - npc("mourner_elena_guard_vis", "I wouldn't get your hopes up though.") + npc("mourner_elena_guard_vis", "I wouldn't get your hopes up though.") } } } option("I haven't got the plague though...") { - npc("mourner_elena_guard_vis", "Can't risk you being a carrier. That protective clothing you have isn't regulation issue. It won't meet safety standards.") + npc("mourner_elena_guard_vis", "Can't risk you being a carrier. That protective clothing you have isn't regulation issue. It won't meet safety standards.") } - option("I'm looking for a woman named Elena.") { - npc("mourner_elena_guard_vis", "Ah yes, I've heard of her. A healer I believe. She must be mad coming over here voluntarily.") - npc("mourner_elena_guard_vis", "I hear rumours she has probably caught the plague now. Very tragic, a stupid waste of life.") + option("I'm looking for a woman named Elena.") { + npc("mourner_elena_guard_vis", "Ah yes, I've heard of her. A healer I believe. She must be mad coming over here voluntarily.") + npc("mourner_elena_guard_vis", "I hear rumours she has probably caught the plague now. Very tragic, a stupid waste of life.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/barbarian_outpost/BarbarianGuard.kt b/game/src/main/kotlin/content/area/kandarin/barbarian_outpost/BarbarianGuard.kt index 4e5e1064b2..c26816e850 100644 --- a/game/src/main/kotlin/content/area/kandarin/barbarian_outpost/BarbarianGuard.kt +++ b/game/src/main/kotlin/content/area/kandarin/barbarian_outpost/BarbarianGuard.kt @@ -30,28 +30,28 @@ class BarbarianGuard : Script { suspend fun Player.startBarCrawl() { npc("Oi, whaddya want?") choice { - option("I want to come through this gate.") { + option("I want to come through this gate.") { npc("Barbarians only. Are you a barbarian? You don't look like one.") choice { - option("Hmm, yep you've got me there.") - option("Looks can be deceiving, I am in fact a barbarian.") iAm@{ + option("Hmm, yep you've got me there.") + option("Looks can be deceiving, I am in fact a barbarian.") iAm@{ if (inventory.isFull()) { - npc("Are you, now? Free up some space so you can carry something, and we'll see how barbarian you really are.") + npc("Are you, now? Free up some space so you can carry something, and we'll see how barbarian you really are.") return@iAm } - npc("If you're a barbarian you need to be able to drink like one. We barbarians like a good drink.") + npc("If you're a barbarian you need to be able to drink like one. We barbarians like a good drink.") npc("I have the perfect challenge for you... The Alfred Grimhand Barcrawl! First completed by Alfred Grimhand.") if (inventory.add("barcrawl_card")) { set("alfred_grimhands_barcrawl", "signatures") item("barcrawl_card", 400, "The guard hands you a Barcrawl card.") } - npc("Take that card to each of the bars named on it. The bartenders will know what it means. We're kinda well known.") - npc("They'll give you their strongest drink and sign your card. When you've done all that, we'll be happy to let you in.") + npc("Take that card to each of the bars named on it. The bartenders will know what it means. We're kinda well known.") + npc("They'll give you their strongest drink and sign your card. When you've done all that, we'll be happy to let you in.") } } } - option("I want some money.") { - npc("Do I look like a bank to you?") + option("I want some money.") { + npc("Do I look like a bank to you?") } } } @@ -60,25 +60,25 @@ class BarbarianGuard : Script { if (get("vial_smashing", false)) { npc("'Ello friend. I see you're drinking like a barbarian - do you want to stop smashing your vials when you finish them?") choice { - option("Yes please, I want to stop smashing my vials.") { + option("Yes please, I want to stop smashing my vials.") { set("vial_smashing", false) message("Vial smashing is now turned off.") - npc("You're a funny sort of barbarian! But okay, you will no longer smash your vials as you drink your potions.") + npc("You're a funny sort of barbarian! But okay, you will no longer smash your vials as you drink your potions.") } - option("No thank you, I like smashing them.") { - npc("That's a proper barbarian spirit, that is.") + option("No thank you, I like smashing them.") { + npc("That's a proper barbarian spirit, that is.") message("Vial smashing is now turned off.") } } } else { npc("'Ello friend. Do you want me to show you how to smash your vials when you finish drinking them?") choice { - option("Yes please, I want to smash my vials.") { + option("Yes please, I want to smash my vials.") { set("vial_smashing", true) message("Vial smashing is now turned on.") - npc("It's all part of drinking like a barbarian! Okay, you will now smash your vials as you drink your potions.") + npc("It's all part of drinking like a barbarian! Okay, you will now smash your vials as you drink your potions.") } - option("No thank you, I'd rather keep my vials.") + option("No thank you, I'd rather keep my vials.") } } } @@ -91,25 +91,25 @@ class BarbarianGuard : Script { set("alfred_grimhands_barcrawl", "completed") clear("barcrawl_signatures") } - npc("Yep that seems fine, you can come in now. I never learned to read, but you look like you've drunk plenty. Also, one more thing...") - npc("Since you drink like a barbarian, I can show you how to smash your vials when you finish them. Do you want to do that?") + npc("Yep that seems fine, you can come in now. I never learned to read, but you look like you've drunk plenty. Also, one more thing...") + npc("Since you drink like a barbarian, I can show you how to smash your vials when you finish them. Do you want to do that?") choice { - option("Yes please, I want to smash my vials.") { - npc("It's all part of drinking like a barbarian! Okay, you will now smash your vials as you drink your potions.") + option("Yes please, I want to smash my vials.") { + npc("It's all part of drinking like a barbarian! Okay, you will now smash your vials as you drink your potions.") message("Vial smashing is now turned on.") } - option("No thank you, I'd rather keep my vials.") + option("No thank you, I'd rather keep my vials.") } } suspend fun Player.checkProcess() { npc("So, how's the Barcrawl coming along?") if (ownsItem("barcrawl_card")) { - player("I haven't finished it yet.") - npc("Well come back when you have, you lightweight.") + player("I haven't finished it yet.") + npc("Well come back when you have, you lightweight.") return } - player("I've lost my barcrawl card...") + player("I've lost my barcrawl card...") if (inventory.isFull()) { npc("What are you like? You're gonna have to free up some space so I can give you another one.") return diff --git a/game/src/main/kotlin/content/area/kandarin/barbarian_outpost/Gunnjorn.kt b/game/src/main/kotlin/content/area/kandarin/barbarian_outpost/Gunnjorn.kt index c3d2cbaae0..2d212a20b6 100644 --- a/game/src/main/kotlin/content/area/kandarin/barbarian_outpost/Gunnjorn.kt +++ b/game/src/main/kotlin/content/area/kandarin/barbarian_outpost/Gunnjorn.kt @@ -1,8 +1,8 @@ package content.area.kandarin.barbarian_outpost import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -18,33 +18,33 @@ class Gunnjorn : Script { choice("What do you want to say?") { option("Hey there. What is this place?") { npc("Aha! Welcome to my obstacle course. Have fun, but remember this isn't a children's playground. People have died here.") - npc("This course starts at the ropeswings to the east. When you've done the swing, head across the slippery log to the building. When you've traversed the obstacles inside, you'll come out the other side.") - npc("From there, head across the low walls to finish. If you've done all the obstacles as I've described, and in order, you'll get a lap bonus.") + npc("This course starts at the ropeswings to the east. When you've done the swing, head across the slippery log to the building. When you've traversed the obstacles inside, you'll come out the other side.") + npc("From there, head across the low walls to finish. If you've done all the obstacles as I've described, and in order, you'll get a lap bonus.") } option("What's wrong with the wall after the log balance?") { - npc("The wall after the log balance? Nothing, really. I just put some tough material on it, giving people something to grip hold of.") + npc("The wall after the log balance? Nothing, really. I just put some tough material on it, giving people something to grip hold of.") player("Why would you do that?") - npc("So people like you can have a tougher route round this course.") - npc("Me and a mate got together and set up a new challenge that only the truly agile will conquer.") - npc("The extra stuff starts at that wall; so, if you think you're up to it, I suggest you scramble up there after the log balance.") + npc("So people like you can have a tougher route round this course.") + npc("Me and a mate got together and set up a new challenge that only the truly agile will conquer.") + npc("The extra stuff starts at that wall; so, if you think you're up to it, I suggest you scramble up there after the log balance.") player("Sounds interesting. Anything else I should know?") - npc("Nothing, really. Just make sure you complete the other obstacles before ya do. If you finish a full lap, you'll get an increased bonus for doing the tougher route.") - npc("If you manage to do 250 laps of this advanced route without a single mistake, I'll let you have a special item. I'll keep track of your lap tallies, so you can check how you're getting on with me any time.") + npc("Nothing, really. Just make sure you complete the other obstacles before ya do. If you finish a full lap, you'll get an increased bonus for doing the tougher route.") + npc("If you manage to do 250 laps of this advanced route without a single mistake, I'll let you have a special item. I'll keep track of your lap tallies, so you can check how you're getting on with me any time.") } if (get("barbarian_course_advanced_laps", 0) > 0) { option("Can I talk about rewards?") { if (containsVarbit("agility_course_rewards_claimed", "agile_top")) { - npc("Of course. How can I help?") + npc("Of course. How can I help?") player("Any chance of another Agile top?") if (inventory.add("agile_top")) { - npc("Here you go.") + npc("Here you go.") } else { inventoryFull() // TODO correct message } } else if (get("gnome_course_advanced_laps", 0) >= 250) { npc("Sure, and congratulations, Player! That took dedication and great dexterity to complete that many laps.") - npc("As promised, I'll give you an item you may find useful - an Agile top. You'll find yourself lighter than usual while wearing it.") - npc("We barbarians are tough folks, as you know, so it'll even keep you safe if you get drawn into combat.") + npc("As promised, I'll give you an item you may find useful - an Agile top. You'll find yourself lighter than usual while wearing it.") + npc("We barbarians are tough folks, as you know, so it'll even keep you safe if you get drawn into combat.") if (inventory.add("agile_top")) { addVarbit("agility_course_rewards_claimed", "agile_top") npc("There you go. Enjoy!") @@ -52,12 +52,12 @@ class Gunnjorn : Script { inventoryFull() // TODO correct message } } else { - npc("There's no reward for you just yet. Your lap count is only ${get("barbarian_course_advanced_laps", 0)}. It's 250 successful laps or no reward.") + npc("There's no reward for you just yet. Your lap count is only ${get("barbarian_course_advanced_laps", 0)}. It's 250 successful laps or no reward.") } } } - option("That's all I need for now. Bye.") { - npc("Bye for now. Come back if you need any help.") + option("That's all I need for now. Bye.") { + npc("Bye for now. Come back if you need any help.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/catherby/Arheins.kt b/game/src/main/kotlin/content/area/kandarin/catherby/Arheins.kt index 989c8a4102..cf6c6d9c30 100644 --- a/game/src/main/kotlin/content/area/kandarin/catherby/Arheins.kt +++ b/game/src/main/kotlin/content/area/kandarin/catherby/Arheins.kt @@ -1,7 +1,7 @@ package content.area.kandarin.catherby import content.entity.npc.shop.openShop -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -11,45 +11,45 @@ class Arheins : Script { init { npcOperate("Talk-to", "arhein") { - npc("Hello! Would you like to trade?") + npc("Hello! Would you like to trade?") choice { option("Yes.") { - player("Sure.") + player("Sure.") openShop("arheins_store") } option("No thank you.") { - player("No thanks.") + player("No thanks.") } option("Is that your ship?") { - player("Is that your ship?") - npc("Yes, I use it to make deliveries to my customers up and down the coast. These crates here are all ready for my next trip.") + player("Is that your ship?") + npc("Yes, I use it to make deliveries to my customers up and down the coast. These crates here are all ready for my next trip.") choice { option("Where do you deliver to?") { - player("Where do you deliver to?") - npc("Oh, various places up and down the coast. Mostly Karamja and Port Sarim.") + player("Where do you deliver to?") + npc("Oh, various places up and down the coast. Mostly Karamja and Port Sarim.") choice { option("I don't suppose I could get a lift anywhere?") { - player("I don't suppose I could get a lift anywhere?") - npc("Sorry pal, but I'm afraid I'm not quite ready to sail yet.") - npc("I'm waiting on a big delivery of candles which I need to deliver further along the coast.") + player("I don't suppose I could get a lift anywhere?") + npc("Sorry pal, but I'm afraid I'm not quite ready to sail yet.") + npc("I'm waiting on a big delivery of candles which I need to deliver further along the coast.") // End of dialogue } option("Well, good luck with your business.") { - player("Well, good luck with your business.") - npc("Thanks buddy!") + player("Well, good luck with your business.") + npc("Thanks buddy!") // End of dialogue } } } option("Are you rich then?") { - player("Are you rich then?") - npc("Business is going reasonably well... I wouldn't say I was the richest of merchants ever, but I'm doing fairly well all things considered.") + player("Are you rich then?") + npc("Business is going reasonably well... I wouldn't say I was the richest of merchants ever, but I'm doing fairly well all things considered.") } } } @@ -58,7 +58,7 @@ class Arheins : Script { objectOperate("Cross", "arhein_ship_gangplank") { npc("arhein", "Hey buddy! Get away from my ship alright?") - player("Yeah... uh... sorry...") + player("Yeah... uh... sorry...") } } diff --git a/game/src/main/kotlin/content/area/kandarin/catherby/Caleb.kt b/game/src/main/kotlin/content/area/kandarin/catherby/Caleb.kt index 65d3b4378c..1bdd2463c7 100644 --- a/game/src/main/kotlin/content/area/kandarin/catherby/Caleb.kt +++ b/game/src/main/kotlin/content/area/kandarin/catherby/Caleb.kt @@ -1,6 +1,6 @@ package content.area.kandarin.catherby -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -10,17 +10,17 @@ class Caleb : Script { init { npcOperate("Talk-to", "caleb") { - npc("Who are you? What are you after?") + npc("Who are you? What are you after?") choice { option("Nothing, I will be on my way.") { - player("Nothing, I will be on my way.") + player("Nothing, I will be on my way.") // Ends dialogue naturally } option("I see you are a chef, will you cook me anything?") { - player("I see you are a chef... Could you cook me something?") - npc("I would, but I am very busy. I am trying to increase my renown as one of the world's leading chefs by preparing a special and unique fish salad.") + player("I see you are a chef... Could you cook me something?") + npc("I would, but I am very busy. I am trying to increase my renown as one of the world's leading chefs by preparing a special and unique fish salad.") // Ends dialogue naturally } } diff --git a/game/src/main/kotlin/content/area/kandarin/catherby/CandleMaker.kt b/game/src/main/kotlin/content/area/kandarin/catherby/CandleMaker.kt index 0bf0ba3f02..204842c0d3 100644 --- a/game/src/main/kotlin/content/area/kandarin/catherby/CandleMaker.kt +++ b/game/src/main/kotlin/content/area/kandarin/catherby/CandleMaker.kt @@ -9,16 +9,16 @@ class CandleMaker : Script { init { npcOperate("Talk-to", "candle_maker") { - npc("Hi! Would you be interested in some of my fine candles?") + npc("Hi! Would you be interested in some of my fine candles?") choice { option("Yes please.") { - player("Yes please.") + player("Yes please.") openShop("candle_shop") } option("No thank you.") { - player("No thank you.") + player("No thank you.") // Ends dialogue naturally } } diff --git a/game/src/main/kotlin/content/area/kandarin/catherby/Ellena.kt b/game/src/main/kotlin/content/area/kandarin/catherby/Ellena.kt index 6c91c86d95..ee67ca7b89 100644 --- a/game/src/main/kotlin/content/area/kandarin/catherby/Ellena.kt +++ b/game/src/main/kotlin/content/area/kandarin/catherby/Ellena.kt @@ -1,7 +1,7 @@ package content.area.kandarin.catherby import content.entity.npc.shop.openShop -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.* import world.gregs.voidps.engine.Script @@ -12,12 +12,12 @@ class Ellena : Script { suspend fun showMainOptions() { choice { option("Would you look after my crops for me?") { - player("Would you look after my crops for me?") - npc("I'm afraid I can't help with that right now. Maybe once the Farming system is ready.") + player("Would you look after my crops for me?") + npc("I'm afraid I can't help with that right now. Maybe once the Farming system is ready.") } option("Can you give me any farming advice?") { - player("Can you give me any Farming advice?") + player("Can you give me any Farming advice?") val tips = listOf( "You can put up to five tomatoes, strawberries, apples, bananas or oranges into a fruit basket, although you can't have a mix in the same basket.", "There are seven main Farming areas - Elstan's area near Falador, Dantaera's area near Catherby, Kragen's area near Ardougne, Lyra's area in Morytania, Marisi's area in Hosidius, Alan's area in the Farming Guild and Oswallt's area in Prifddinas.", @@ -37,18 +37,18 @@ class Ellena : Script { "You don't have to buy all your plantpots you know, you can make them yourself on a pottery wheel. If you're a good enough craftsman, that is.", "You can put up to ten potatoes, cabbages or onions in vegetable sacks, although you can't have a mix in the same sack.", ) - npc(tips.random()) + npc(tips.random()) showMainOptions() } option("Can you sell me something?") { - player("Can you sell me something?") - npc("That depends on whether I have it to sell. What is it that you're looking for?") + player("Can you sell me something?") + npc("That depends on whether I have it to sell. What is it that you're looking for?") openShop("ellena_farming_supplies") } option("I'll come back another time.") { - player("I'll come back another time.") + player("I'll come back another time.") // Ends dialogue } } diff --git a/game/src/main/kotlin/content/area/kandarin/catherby/Harry.kt b/game/src/main/kotlin/content/area/kandarin/catherby/Harry.kt index 585c5e9138..f53fc71e72 100644 --- a/game/src/main/kotlin/content/area/kandarin/catherby/Harry.kt +++ b/game/src/main/kotlin/content/area/kandarin/catherby/Harry.kt @@ -13,7 +13,7 @@ class Harry : Script { init { npcOperate("Talk-to", "harry") { - npc("Welcome! You can buy Fishing equipment at my store. We'll also give you a good price for any fish that you catch.") + npc("Welcome! You can buy Fishing equipment at my store. We'll also give you a good price for any fish that you catch.") choice { option("Let's see what you've got, then.") { @@ -22,13 +22,13 @@ class Harry : Script { if (holdsItem("fishbowl_water") || holdsItem("fishbowl_seaweed")) { option("Can I get a fish for this bowl?") { - player("Can I get a fish for this bowl?") + player("Can I get a fish for this bowl?") when { holdsItem("fishbowl_water") -> { - npc("Sorry, you need to put some seaweed into the bowl first") - player("Seaweed?") - npc("Yes, the fish seem to like it. Come and see me when you have put some in the bowl.") + npc("Sorry, you need to put some seaweed into the bowl first") + player("Seaweed?") + npc("Yes, the fish seem to like it. Come and see me when you have put some in the bowl.") } holdsItem("fishbowl_seaweed") -> { @@ -36,17 +36,17 @@ class Harry : Script { choice { option("I'll take it.") { if (inventory.contains("coins", 10)) { - player("I'll take it.") + player("I'll take it.") inventory.remove("coins", 10) inventory.add("tiny_net") npc("Here you go.") // Optionally add a game message: "Harry sells you a tiny net." } else { - npc("It looks like you don't have enough coins.") + npc("It looks like you don't have enough coins.") } } option("No, thanks; later, maybe.") { - player("No, thanks; later, maybe.") + player("No, thanks; later, maybe.") } } } @@ -58,9 +58,9 @@ class Harry : Script { if (holdsItem("fishbowl_water") || holdsItem("fishbowl_seaweed") || holdsItem("fishbowl")) { option("Do you have any fish food?") { - player("Do you have any fish food?") - npc("Sorry, I'm all out. I used up the last of it feeding the fish in the aquarium. I have some empty boxes, though - they have the ingredients written on the back.") - npc("I'm sure if you pick up a pestle and mortar you will be able to make your own.") + player("Do you have any fish food?") + npc("Sorry, I'm all out. I used up the last of it feeding the fish in the aquarium. I have some empty boxes, though - they have the ingredients written on the back.") + npc("I'm sure if you pick up a pestle and mortar you will be able to make your own.") inventory.add("empty_box_fish") npc("Here. I can hardly charge you for an empty box.") } diff --git a/game/src/main/kotlin/content/area/kandarin/catherby/Hickton.kt b/game/src/main/kotlin/content/area/kandarin/catherby/Hickton.kt index c252388a76..8a3cc5fd56 100644 --- a/game/src/main/kotlin/content/area/kandarin/catherby/Hickton.kt +++ b/game/src/main/kotlin/content/area/kandarin/catherby/Hickton.kt @@ -1,7 +1,7 @@ package content.area.kandarin.catherby import content.entity.npc.shop.openShop -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -20,20 +20,20 @@ class Hickton : Script { } npcOperate("Talk-to", "hickton") { - npc("Welcome to Hickton's Archery Store. Do you want to see my wares?") + npc("Welcome to Hickton's Archery Store. Do you want to see my wares?") choice { option("Can you tell me about your cape?") { - player("Can you tell me about your cape?") - npc("Certainly! Skillcapes are a symbol of achievement. Only people who have mastered a skill and reached level 99 can get their hands on them and gain the benefits they carry.") - npc("Is there anything else I can help you with?") + player("Can you tell me about your cape?") + npc("Certainly! Skillcapes are a symbol of achievement. Only people who have mastered a skill and reached level 99 can get their hands on them and gain the benefits they carry.") + npc("Is there anything else I can help you with?") choice { option("I'd like to view your store, please.") { openHicktonShop(this) } option("No thank you.") { - player("No thank you.") + player("No thank you.") } } } @@ -43,7 +43,7 @@ class Hickton : Script { } option("No, I prefer to bash things close up.") { - player("No, I prefer to bash things close up.") + player("No, I prefer to bash things close up.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/catherby/Vanessas.kt b/game/src/main/kotlin/content/area/kandarin/catherby/Vanessas.kt index 0c0c534e87..9e82bfbd6d 100644 --- a/game/src/main/kotlin/content/area/kandarin/catherby/Vanessas.kt +++ b/game/src/main/kotlin/content/area/kandarin/catherby/Vanessas.kt @@ -1,7 +1,7 @@ package content.area.kandarin.catherby import content.entity.npc.shop.openShop -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -11,7 +11,7 @@ class Vanessas : Script { init { npcOperate("Talk-to", "vanessa") { - npc("Hello. How can I help you?") + npc("Hello. How can I help you?") choice { option("What are you selling?") { @@ -19,12 +19,12 @@ class Vanessas : Script { } option("Can you give me any Farming advice?") { - player("Can you give me any Farming advice?") - npc("Yes - ask a gardener.") + player("Can you give me any Farming advice?") + npc("Yes - ask a gardener.") } option("I'm okay, thank you.") { - player("I'm okay, thank you.") + player("I'm okay, thank you.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/feldip_hills/GnormadiumAvlafrim.kt b/game/src/main/kotlin/content/area/kandarin/feldip_hills/GnormadiumAvlafrim.kt index ec2082188d..c882d15cd8 100644 --- a/game/src/main/kotlin/content/area/kandarin/feldip_hills/GnormadiumAvlafrim.kt +++ b/game/src/main/kotlin/content/area/kandarin/feldip_hills/GnormadiumAvlafrim.kt @@ -1,7 +1,7 @@ package content.area.kandarin.feldip_hills import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.ChoiceOption import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc @@ -15,7 +15,7 @@ class GnormadiumAvlafrim : Script { init { npcOperate("Talk-to", "gnormadium_avlafrim") { if (!questCompleted("one_small_favour")) { - npc("Hello! Don't get in the way around here, we've got a lot of work to do!") + npc("Hello! Don't get in the way around here, we've got a lot of work to do!") menu() return@npcOperate } @@ -28,7 +28,7 @@ class GnormadiumAvlafrim : Script { npcOperate("Glider", "gnormadium_avlafrim") { if (!questCompleted("one_small_favour")) { - npc("Hello! Don't get in the way around here, we've got a lot of work to do!") + npc("Hello! Don't get in the way around here, we've got a lot of work to do!") menu() return@npcOperate } @@ -38,8 +38,8 @@ class GnormadiumAvlafrim : Script { } fun ChoiceOption.howsWork() { - option("Hello, how's the work going?") { - npc("Getting there now, thanks to your help!") + option("Hello, how's the work going?") { + npc("Getting there now, thanks to your help!") choice { canIFly() bye() @@ -48,7 +48,7 @@ class GnormadiumAvlafrim : Script { } fun ChoiceOption.canIFly() { - option("Can I take a flight in the glider?") { + option("Can I take a flight in the glider?") { npc("Sure, go ahead.") set("glider_location", "gandius") open("glider_map") @@ -62,29 +62,29 @@ class GnormadiumAvlafrim : Script { } fun ChoiceOption.helloThere() { - option("Hello there, what are you working on?") { - npc("Well, it's quite exciting... we're extending the glider network to include the Feldip Hills so that people can come and look at these curious ogres.") - npc("They are impressive creatures aren't they - quite mystified they are by the technology we gnomes have invented.") + option("Hello there, what are you working on?") { + npc("Well, it's quite exciting... we're extending the glider network to include the Feldip Hills so that people can come and look at these curious ogres.") + npc("They are impressive creatures aren't they - quite mystified they are by the technology we gnomes have invented.") menu() } } fun ChoiceOption.whatAreYouWorkingOn() { - option("What are you working on?") { - npc("Well, people will be able to visit this area, once construction has finished, by using the most advanced network of glider routes in the whole of Gielinor... in fact, the only network of glider routes!") + option("What are you working on?") { + npc("Well, people will be able to visit this area, once construction has finished, by using the most advanced network of glider routes in the whole of Gielinor... in fact, the only network of glider routes!") menu() } } fun ChoiceOption.anythingICanDo() { - option("Is there anything I can do?") { - npc("Not really, I'm afraid, it's probably all far too technical for someone like you.") + option("Is there anything I can do?") { + npc("Not really, I'm afraid, it's probably all far too technical for someone like you.") menu() } } fun ChoiceOption.thanks() { - option("Okay, thanks.") + option("Okay, thanks.") } suspend fun Player.menu() { diff --git a/game/src/main/kotlin/content/area/kandarin/ourania/Eniola.kt b/game/src/main/kotlin/content/area/kandarin/ourania/Eniola.kt index 570a25d6a1..239080f54a 100644 --- a/game/src/main/kotlin/content/area/kandarin/ourania/Eniola.kt +++ b/game/src/main/kotlin/content/area/kandarin/ourania/Eniola.kt @@ -37,9 +37,9 @@ class Eniola : Script { val loanReturned = getSecondsRemaining(this, "lend_timeout") < 0 val collection = false if (loanReturned) { - npc("Before we go any further, I should inform you that an item you lent out has been returned to you.") + npc("Before we go any further, I should inform you that an item you lent out has been returned to you.") } else if (collection) { - npc("Before we go any further, I should inform you that you have items ready for collection from the Grand Exchange.") + npc("Before we go any further, I should inform you that you have items ready for collection from the Grand Exchange.") } choice { option("Who are you?") { @@ -47,18 +47,18 @@ class Eniola : Script { choice { option("If you work for the bank, what are you doing here?") { npc("My presence here is the start of a new enterprise of travelling banks.") - npc("I, and others like me, will provide you with the convenience of having banking facilities where they will be of optimum use to you.") - player("So...what are you doing here?") - npc("The Z.M.I., that is, the Zamorakian Magical Institute, requested my services upon discovery of this altar. We at the Bank of Gielinor are a neutral party and are willing to offer our services regardless of affiliation.") - npc("So that is why I am here.") + npc("I, and others like me, will provide you with the convenience of having banking facilities where they will be of optimum use to you.") + player("So...what are you doing here?") + npc("The Z.M.I., that is, the Zamorakian Magical Institute, requested my services upon discovery of this altar. We at the Bank of Gielinor are a neutral party and are willing to offer our services regardless of affiliation.") + npc("So that is why I am here.") player("Can I access my bank account by speaking to you?") - npc("Of course, dear sir.") - npc("However, I must inform you that because the Z.M.I. are paying for my services, they require anyone not part of the Institute to pay an access fee to open their bank account.") + npc("Of course, dear sir.") + npc("However, I must inform you that because the Z.M.I. are paying for my services, they require anyone not part of the Institute to pay an access fee to open their bank account.") npc("But, as our goal as travelling bankers is to make our customers' lives more convenient, we have accomodated to your needs. We know you will be busy creating runes and do not wish to carry money with you. The") npc("charge to open your account is the small amount of twenty of one type of rune. The type of rune is up to you.") npc("Would you like to pay the price of twenty runes to open your bank account?") choice { - option("Yes please.") { + option("Yes please.") { open("ourania_bank_charge") } option("Let me open my account and then I'll give you the runes.") { @@ -107,7 +107,7 @@ class Eniola : Script { open(id) } else { queue("not_enough_runes") { - npc("I'm afraid you don't have the necessary runes with you at this time, so I can't allow you to access your account. Please bring twenty runes of one type and you can open your account.") + npc("I'm afraid you don't have the necessary runes with you at this time, so I can't allow you to access your account. Please bring twenty runes of one type and you can open your account.") } } } @@ -148,7 +148,7 @@ class Eniola : Script { close("ourania_bank_charge") if (!inventory.remove(rune, 20)) { - npc("I'm afraid you don't have the necessary runes with you at this time, so I can't allow you to access your account. Please bring twenty runes of one type and you can open your account.") + npc("I'm afraid you don't have the necessary runes with you at this time, so I can't allow you to access your account. Please bring twenty runes of one type and you can open your account.") return false } return true diff --git a/game/src/main/kotlin/content/area/kandarin/ourania/MageOfZamorakOurania.kt b/game/src/main/kotlin/content/area/kandarin/ourania/MageOfZamorakOurania.kt index 6919f8f579..0ddd8d9f0d 100644 --- a/game/src/main/kotlin/content/area/kandarin/ourania/MageOfZamorakOurania.kt +++ b/game/src/main/kotlin/content/area/kandarin/ourania/MageOfZamorakOurania.kt @@ -13,14 +13,14 @@ class MageOfZamorakOurania : Script { npc("An...archeological dig. Yeah, a dig.") npc("Why?") player("Next to a Chaos Altar? That's a bit odd. Can I go down and have a look?") - npc("Well...I suppose. See, we found this ancient altar, but it was pretty broken so the Z.M.I. sent some of its researchers to try and repair it.") - player("How'd that work out for them?") + npc("Well...I suppose. See, we found this ancient altar, but it was pretty broken so the Z.M.I. sent some of its researchers to try and repair it.") + player("How'd that work out for them?") npc("Pretty well - only one died. Still, they got it working...sort of. This ancient technology can be tricky.") - player("What do you mean, 'sort of'? Altars either work or don't work.") - npc("This one works, just not as you'd expect. You put pure essence in, but get random runes back. Some of them we don't even know how to craft!") - player("Sounds like a pretty good deal. Can I give it a go?") - npc("I don't think so. The mages don't like outsiders going in; they'll probably attack you. They only patrol the short path, though, so if you used the long path, through a tunnel near the entrance, you'd probably be safe.") - player("Thanks.") + player("What do you mean, 'sort of'? Altars either work or don't work.") + npc("This one works, just not as you'd expect. You put pure essence in, but get random runes back. Some of them we don't even know how to craft!") + player("Sounds like a pretty good deal. Can I give it a go?") + npc("I don't think so. The mages don't like outsiders going in; they'll probably attack you. They only patrol the short path, though, so if you used the long path, through a tunnel near the entrance, you'd probably be safe.") + player("Thanks.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/seers_village/BartenderForestersArms.kt b/game/src/main/kotlin/content/area/kandarin/seers_village/BartenderForestersArms.kt index 59ad76110e..e393c23a0f 100644 --- a/game/src/main/kotlin/content/area/kandarin/seers_village/BartenderForestersArms.kt +++ b/game/src/main/kotlin/content/area/kandarin/seers_village/BartenderForestersArms.kt @@ -1,8 +1,8 @@ package content.area.kandarin.seers_village import content.entity.npc.shop.buy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.quest.miniquest.alfred_grimhands_barcrawl.barCrawlDrink @@ -20,31 +20,31 @@ class BartenderForestersArms : Script { npc("Good morning, what would you like?") choice { option("What do you have?") { - npc("Well we have beer, or if you want some food, we have our home made stew and meat pies.") + npc("Well we have beer, or if you want some food, we have our home made stew and meat pies.") choice { - option("Beer please.") { - npc("One beer coming up. Ok, that'll be two coins.") + option("Beer please.") { + npc("One beer coming up. Ok, that'll be two coins.") if (buy("beer", 2)) { message("You buy a pint of beer.") } } - option("I'll try the meat pie.") { - npc("Ok, that'll be 16 coins.") + option("I'll try the meat pie.") { + npc("Ok, that'll be 16 coins.") if (buy("meat_pie", 16)) { message("You buy a nice hot meat pie.") } } option("Could I have some stew please?") { - npc("A bowl of stew, that'll be 20 coins please.") + npc("A bowl of stew, that'll be 20 coins please.") if (buy("stew", 20)) { message("You buy a bowl of home made stew.") } } - option("I don't really want anything thanks.") + option("I don't really want anything thanks.") } } - option("I'll have a beer then.") { - npc("Ok, that'll be two coins.") + option("I'll have a beer then.") { + npc("Ok, that'll be two coins.") if (buy("beer", 20)) { message("You buy a pint of beer.") } @@ -54,7 +54,7 @@ class BartenderForestersArms : Script { barCrawl(target) } } - option("I don't really want anything thanks.") + option("I don't really want anything thanks.") } } diff --git a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Blurberry.kt b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Blurberry.kt index 8b48ee1eca..d354f60195 100644 --- a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Blurberry.kt +++ b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Blurberry.kt @@ -15,11 +15,11 @@ class Blurberry : Script { init { npcOperate("Talk-to", "blurberry") { (target) -> - player("Hello.") - npc("Well hello there traveller. If you're looking for a cocktail the barman will happily make you one.") - npc("Or if you're looking for some training in cocktail making, then I'm your gnome! Aluft Gianne jnr. is looking for gnome cooks and bartenders to help in his new venture, so it's a useful skill to have.") + player("Hello.") + npc("Well hello there traveller. If you're looking for a cocktail the barman will happily make you one.") + npc("Or if you're looking for some training in cocktail making, then I'm your gnome! Aluft Gianne jnr. is looking for gnome cooks and bartenders to help in his new venture, so it's a useful skill to have.") choice { - option("No thanks, I prefer to stay this side of the bar.") + option("No thanks, I prefer to stay this side of the bar.") if (onBarCrawl(target)) { option("I'm doing Alfred Grimhand's barcrawl.") { barCrawl(target) diff --git a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Brimstail.kt b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Brimstail.kt index f2092c0d3b..b9a0843f44 100644 --- a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Brimstail.kt +++ b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Brimstail.kt @@ -1,8 +1,8 @@ package content.area.kandarin.tree_gnome_stronghold import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -19,12 +19,12 @@ class Brimstail : Script { if (!questCompleted("rune_mysteries")) { npc("Hello adventurer, what can I do for you?") player("What's that cute creature wandering around?") - npc("Oh Izzie? He's my pet.") + npc("Oh Izzie? He's my pet.") player("What kind of creature is Izzie?") - npc("I'm not sure. He's very cute though don't you think? It's very restful having a pet, especially when you are stuck in a cave for as long as I am!") + npc("I'm not sure. He's very cute though don't you think? It's very restful having a pet, especially when you are stuck in a cave for as long as I am!") player("So, what do you do down here anyway?") - npc("Isn't that obvious? I investigate Thaumaturgy, I research the Arcane, I attempt to explain the inexplicable.") - npc("Anyway, on that note, it's time for me to get back to work.") + npc("Isn't that obvious? I investigate Thaumaturgy, I research the Arcane, I attempt to explain the inexplicable.") + npc("Anyway, on that note, it's time for me to get back to work.") return@npcOperate } npc("Hello adventurer, Sedridor has told me all about you! What can I do for you?") diff --git a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/CaptainErrdo.kt b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/CaptainErrdo.kt index 7765322877..331da44994 100644 --- a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/CaptainErrdo.kt +++ b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/CaptainErrdo.kt @@ -13,7 +13,7 @@ class CaptainErrdo : Script { init { npcOperate("Talk-to", "captain_errdo,captain_bleemadge,captain_dalbur,captain_klemfoodle") { (target) -> if (!questCompleted("the_grand_tree")) { - npc("Welcome to Gnome Air!") + npc("Welcome to Gnome Air!") choice { whatsGnomeAir(target) whereCanYouTakeMe(target) @@ -26,8 +26,8 @@ class CaptainErrdo : Script { takeMe(target) whyAreGlidersBetter(target) if (target.id == "captain_dalbur") { - option("What do you think of Ali Morrisane?") { - npc("Oh, he's always up to something. Like that magic carpet business.") + option("What do you think of Ali Morrisane?") { + npc("Oh, he's always up to something. Like that magic carpet business.") player("What do you think of his business?") npc("Like I said, we'll not be happy if it starts up.") npc("Of course, it's likely to flop and not get off the ground, if you see what I mean.") @@ -80,15 +80,15 @@ class CaptainErrdo : Script { } fun ChoiceOption.nothing() { - option("Sorry, I don't want anything now.") + option("Sorry, I don't want anything now.") } fun ChoiceOption.whyAreGlidersBetter(target: NPC) { - option("Why are gliders better than other transport?") { + option("Why are gliders better than other transport?") { npc("Oh we have a whole network! It's wonderful for getting to hard to reach places.") npc("There are so many places where your teleports cannot reach!") player("How did you all manage to build such an established network?") - npc("I think you'll find that is a gnome trade secret!") + npc("I think you'll find that is a gnome trade secret!") choice { takeMe(target) nothing() @@ -97,21 +97,21 @@ class CaptainErrdo : Script { } suspend fun Player.embarrassing() { - npc("Ah, how embarrassing.") + npc("Ah, how embarrassing.") player("What happened?") - npc("A bit of a technical hitch with the landing gear. I won't be able to fly you anywhere, sorry.") + npc("A bit of a technical hitch with the landing gear. I won't be able to fly you anywhere, sorry.") } fun ChoiceOption.whatsGnomeAir(target: NPC) { option("What's Gnome Air?") { npc("Gnome Air is the finest airline in Gielinor!") - npc("Well...it's the only real airline in Gielinor.") - npc("Ha!") - player("What do you mean by real airline?") - npc("Well there's a dodgy magic carpet operation in the desert, I doubt it will ever take off... Ha!") + npc("Well...it's the only real airline in Gielinor.") + npc("Ha!") + player("What do you mean by real airline?") + npc("Well there's a dodgy magic carpet operation in the desert, I doubt it will ever take off... Ha!") if (target.id == "captain_dalbur") { player("What magic carpet business?") - npc("That fellow over by that stall says he's setting up a magic carpet business. He said his name was Ali Morrisane.") + npc("That fellow over by that stall says he's setting up a magic carpet business. He said his name was Ali Morrisane.") // player["desert"] = 2 // https://chisel.weirdgloop.org/varbs/display?varplayer=599 npc("If he ever gets it set up, us gnomes won't be happy with him. Especially not King Narnode!") } @@ -131,9 +131,9 @@ class CaptainErrdo : Script { fun ChoiceOption.oneWayToVarrock(target: NPC) { option("How much for one-way to Varrock?") { - npc("I can't take you anywhere.") - player("How come?") - npc("I would, but Glough has told me not to take humans on Gnome Air.") + npc("I can't take you anywhere.") + player("How come?") + npc("I would, but Glough has told me not to take humans on Gnome Air.") choice { whatsGnomeAir(target) whereCanYouTakeMe(target) @@ -143,12 +143,12 @@ class CaptainErrdo : Script { } fun ChoiceOption.leaveYouToIt() { - option("I'll leave you to it.") + option("I'll leave you to it.") } suspend fun Player.takeMe(target: NPC) { player("Where can you take me?") - npc("Glough has ordered that I only take gnomes on Gnome Air.") + npc("Glough has ordered that I only take gnomes on Gnome Air.") choice { whatsGnomeAir(target) oneWayToVarrock(target) diff --git a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/GnomeTrainer.kt b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/GnomeTrainer.kt index 4f5f58f2f1..394219609b 100644 --- a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/GnomeTrainer.kt +++ b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/GnomeTrainer.kt @@ -18,54 +18,56 @@ class GnomeTrainer : Script { init { npcOperate("Talk-to", "gnome_trainer") { when (random.nextInt(2)) { - 0 -> npc("This is training, soldier. Little time for chat! What do you want?") - 1 -> npc("This is a serious training area. What do you want?") - 2 -> npc("This isn't a grannies' tea party. What do you want?") + 0 -> npc("This is training, soldier. Little time for chat! What do you want?") + 1 -> npc("This is a serious training area. What do you want?") + 2 -> npc("This isn't a grannies' tea party. What do you want?") } choice("What do you want to say?") { option("What is this place?") { - npc("This, my friend, is where we train and improve our Agility. It's an essential skill.") - player("It looks easy enough.") - npc("If you complete the course, from the slippery log to the end, your Agility will increase more rapidly than by repeating just one obstacle.") + npc("This, my friend, is where we train and improve our Agility. It's an essential skill.") + player("It looks easy enough.") + npc("If you complete the course, from the slippery log to the end, your Agility will increase more rapidly than by repeating just one obstacle.") } option("What's so special about this course, then?") { - npc("Well, it's where most people tend to start training. We've also made an extension for those who are up for the challenge.") + npc("Well, it's where most people tend to start training. We've also made an extension for those who are up for the challenge.") player("An extension?") if (has(Skill.Agility, 85)) { - npc("Well, you look like you can handle it, so I'll fill you in. If you follow the course as normal, you'll see a new branch before the balancing rope.") - npc("This is the way up to the new route. It's taken a while to strengthen the branch, but you should find yourself agile enough to get up to the next level. I suggest you check it out.") + npc("Well, you look like you can handle it, so I'll fill you in. If you follow the course as normal, you'll see a new branch before the balancing rope.") + npc("This is the way up to the new route. It's taken a while to strengthen the branch, but you should find yourself agile enough to get up to the next level. I suggest you check it out.") player("I might just do that. Anything else I need to know?") - npc("Yes. If you do the tougher route, you'll get a much larger experience bonus at the end of it - just make sure you've completed all the obstacles leading up to the branch!") - npc("Oh, I nearly forgot: if you manage to do 250 laps of the advanced route without a fault, we'll give you a special item. We'll keep a tally of your laps, so you can always check your progress.") + npc("Yes. If you do the tougher route, you'll get a much larger experience bonus at the end of it - just make sure you've completed all the obstacles leading up to the branch!") + npc("Oh, I nearly forgot: if you manage to do 250 laps of the advanced route without a fault, we'll give you a special item. We'll keep a tally of your laps, so you can always check your progress.") } else { - npc("It's a challenge that I think is a bit out of your depth. I'll give you more information when you're slightly more experienced.") + npc("It's a challenge that I think is a bit out of your depth. I'll give you more information when you're slightly more experienced.") message("You need an Agility level of 85 to attempt the improved gnome course.") } } - option("Can I talk about rewards?", filter = { get("gnome_course_advanced_laps", 0) > 0 }) { - if (containsVarbit("agility_course_rewards_claimed", "agile_legs")) { - npc("Of course. How can I help?") - player("Any chance of some more Agile legs?") - if (inventory.add("agile_legs")) { - npc("Here you go, try not to lose them.") + if (get("gnome_course_advanced_laps", 0) > 0) { + option("Can I talk about rewards?") { + if (containsVarbit("agility_course_rewards_claimed", "agile_legs")) { + npc("Of course. How can I help?") + player("Any chance of some more Agile legs?") + if (inventory.add("agile_legs")) { + npc("Here you go, try not to lose them.") + } else { + inventoryFull() // TODO correct message + } + } else if (get("gnome_course_advanced_laps", 0) >= 250) { + npc("Well, it looks like you've completed our challenge! Take this as a reward: some Agile legs.") + npc("You'll find yourself much lighter than usual while wearing them. They are made from the toughest material we gnomes could find, so it might even protect you in combat.") + if (inventory.add("agile_legs")) { + addVarbit("agility_course_rewards_claimed", "agile_legs") + npc("There you go. Enjoy!") + } else { + inventoryFull() // TODO correct message + } } else { - inventoryFull() // TODO correct message + npc("Well, you've still got work to do. Your lap count is ${get("gnome_course_advanced_laps", 0)}. It's 250 successful laps for the reward!") } - } else if (get("gnome_course_advanced_laps", 0) >= 250) { - npc("Well, it looks like you've completed our challenge! Take this as a reward: some Agile legs.") - npc("You'll find yourself much lighter than usual while wearing them. They are made from the toughest material we gnomes could find, so it might even protect you in combat.") - if (inventory.add("agile_legs")) { - addVarbit("agility_course_rewards_claimed", "agile_legs") - npc("There you go. Enjoy!") - } else { - inventoryFull() // TODO correct message - } - } else { - npc("Well, you've still got work to do. Your lap count is ${get("gnome_course_advanced_laps", 0)}. It's 250 successful laps for the reward!") } } - option("I'm done for now. Bye.") { - npc("Bye for now. Come back if you need any assistance.") + option("I'm done for now. Bye.") { + npc("Bye for now. Come back if you need any assistance.") } } } diff --git a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/HeckelFunch.kt b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/HeckelFunch.kt index 06d5abec7e..b085bdcf5c 100644 --- a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/HeckelFunch.kt +++ b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/HeckelFunch.kt @@ -9,13 +9,13 @@ class HeckelFunch : Script { init { npcOperate("Talk-to", "gnome_heckelfunch") { - player("Hello there.") + player("Hello there.") npc("Good day to you my friend, a beautiful one at that. Would you like some groceries? I have all sorts. Alcohol also, if you're partial to a drink.") choice { - option("No thank you.") { - npc("Ahh well, all the best to you.") + option("No thank you.") { + npc("Ahh well, all the best to you.") } - option("I'll have a look.") { + option("I'll have a look.") { npc("There's a good human.") openShop("funchs_fine_groceries") } diff --git a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Hudo.kt b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Hudo.kt index 4460a934a8..c7728f91c9 100644 --- a/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Hudo.kt +++ b/game/src/main/kotlin/content/area/kandarin/tree_gnome_stronghold/Hudo.kt @@ -9,13 +9,13 @@ class Hudo : Script { init { npcOperate("Talk-to", "gnome_hudo") { - player("Hello there.") - npc("Hello there traveller. Would you like some groceries? I have a large selection.") + player("Hello there.") + npc("Hello there traveller. Would you like some groceries? I have a large selection.") choice { - option("No thank you.") { - npc("No problem.") + option("No thank you.") { + npc("No problem.") } - option("I'll have a look.") { + option("I'll have a look.") { npc("Great stuff.") openShop("grand_tree_groceries") } diff --git a/game/src/main/kotlin/content/area/kandarin/yanille/BartenderDragonInn.kt b/game/src/main/kotlin/content/area/kandarin/yanille/BartenderDragonInn.kt index b057c7db97..758cc902e1 100644 --- a/game/src/main/kotlin/content/area/kandarin/yanille/BartenderDragonInn.kt +++ b/game/src/main/kotlin/content/area/kandarin/yanille/BartenderDragonInn.kt @@ -1,8 +1,8 @@ package content.area.kandarin.yanille import content.entity.npc.shop.buy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.item import content.entity.player.dialogue.type.npc @@ -21,30 +21,30 @@ class BartenderDragonInn : Script { npcOperate("Talk-to", "bartender_dragon_inn") { (target) -> npc("What can I get you?") player("What's on the menu?") - npc("Dragon Bitter and Greenman's Ale, oh and some cheap beer.") + npc("Dragon Bitter and Greenman's Ale, oh and some cheap beer.") choice { - option("I'll try the Dragon Bitter.") { - npc("Ok, that'll be two coins.") + option("I'll try the Dragon Bitter.") { + npc("Ok, that'll be two coins.") if (buy("dragon_bitter", 2)) { message("You buy a pint of Dragon Bitter.") } } - option("Can I have some Greenman's Ale?") { - npc("Ok, that'll be ten coins.") + option("Can I have some Greenman's Ale?") { + npc("Ok, that'll be ten coins.") if (buy("greenmans_ale", 10)) { - player("Ok, here you go.") + player("Ok, here you go.") message("You buy a pint of Greenman's Ale.") } } - option("One cheap beer please!") { - npc("That'll be 2 gold coins please!") + option("One cheap beer please!") { + npc("That'll be 2 gold coins please!") if (buy("beer", 2)) { item("beer", 325, "You buy a pint of cheap beer.") - npc("Have a super day!") + npc("Have a super day!") } } - option("I'll give it a miss I think.") { - npc("Come back when you're a little thirstier.") + option("I'll give it a miss I think.") { + npc("Come back when you're a little thirstier.") } if (onBarCrawl(target)) { option("I'm doing Alfred Grimhand's barcrawl.") { diff --git a/game/src/main/kotlin/content/area/kandarin/yanille/WizardDistentor.kt b/game/src/main/kotlin/content/area/kandarin/yanille/WizardDistentor.kt index 3aa4a73b7b..798b573880 100644 --- a/game/src/main/kotlin/content/area/kandarin/yanille/WizardDistentor.kt +++ b/game/src/main/kotlin/content/area/kandarin/yanille/WizardDistentor.kt @@ -1,7 +1,7 @@ package content.area.kandarin.yanille +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -14,15 +14,15 @@ class WizardDistentor : Script { init { npcOperate("Talk-to", "wizard_distentor") { (target) -> - npc("Welcome to the Magicians' Guild!") + npc("Welcome to the Magicians' Guild!") if (!questCompleted("rune_mysteries")) { return@npcOperate } - player("Hello there.") + player("Hello there.") npc("What can I do for you?") choice { - option("Nothing thanks, I'm just looking around.") { - npc("That's fine with me.") + option("Nothing thanks, I'm just looking around.") { + npc("That's fine with me.") } option("Can you teleport me to the Rune Essence Mine?") { EssenceMine.teleport(target, this) diff --git a/game/src/main/kotlin/content/area/karamja/BartenderDeadMansChest.kt b/game/src/main/kotlin/content/area/karamja/BartenderDeadMansChest.kt index f6cd0d5c6c..dacca244e4 100644 --- a/game/src/main/kotlin/content/area/karamja/BartenderDeadMansChest.kt +++ b/game/src/main/kotlin/content/area/karamja/BartenderDeadMansChest.kt @@ -1,9 +1,9 @@ package content.area.karamja import content.entity.npc.shop.buy -import content.entity.player.dialogue.Chuckle import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Laugh +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.quest.miniquest.alfred_grimhands_barcrawl.barCrawlDrink @@ -18,17 +18,17 @@ class BartenderDeadMansChest : Script { init { npcOperate("Talk-to", "bartender_dead_mans_chest") { (target) -> - npc("Yohoho me hearty what would you like to drink?") + npc("Yohoho me hearty what would you like to drink?") choice { - option("Nothing, thank you.") - option("A pint of Grog please.") { - npc("One grog coming right up, that'll be three coins.") + option("Nothing, thank you.") + option("A pint of Grog please.") { + npc("One grog coming right up, that'll be three coins.") if (buy("grog", 3, "Oh dear. I don't seem to have enough money.")) { message("You buy a pint of grog.") } } - option("A bottle of rum please.") { - npc("That'll be 27 coins.") + option("A bottle of rum please.") { + npc("That'll be 27 coins.") if (buy("bottle_of_rum", 27, "Oh dear. I don't seem to have enough money.")) { message("You buy a bottle of rum.") } diff --git a/game/src/main/kotlin/content/area/karamja/BartenderZambo.kt b/game/src/main/kotlin/content/area/karamja/BartenderZambo.kt index 4e8bce99ce..09092b50f4 100644 --- a/game/src/main/kotlin/content/area/karamja/BartenderZambo.kt +++ b/game/src/main/kotlin/content/area/karamja/BartenderZambo.kt @@ -1,7 +1,7 @@ package content.area.karamja import content.entity.npc.shop.openShop -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.quest.miniquest.alfred_grimhands_barcrawl.barCrawlDrink @@ -14,12 +14,12 @@ class BartenderZambo : Script { init { npcOperate("Talk-to", "bartender_zambo") { (target) -> - npc("Hey, are you wanting to try some of my fine wines and spirits? All brewed locally on Karamja.") + npc("Hey, are you wanting to try some of my fine wines and spirits? All brewed locally on Karamja.") choice { option("Yes, please.") { openShop("karamja_wines_spirits_and_beers") } - option("No, thank you.") + option("No, thank you.") if (onBarCrawl(target)) { option("I'm doing Alfred Grimhand's barcrawl.") { barCrawl(target) diff --git a/game/src/main/kotlin/content/area/karamja/ShipyardWorker.kt b/game/src/main/kotlin/content/area/karamja/ShipyardWorker.kt index 6c23d24870..c69f0f77da 100644 --- a/game/src/main/kotlin/content/area/karamja/ShipyardWorker.kt +++ b/game/src/main/kotlin/content/area/karamja/ShipyardWorker.kt @@ -13,74 +13,74 @@ class ShipyardWorker : Script { npcOperate("Talk-to", "shipyard_guard") { when (random.nextInt(12)) { 0 -> { - player("Hello.") - player("You look busy!") - npc("We need double the men to get this order out on time!") + player("Hello.") + player("You look busy!") + npc("We need double the men to get this order out on time!") } 1 -> { - player("Hello.") + player("Hello.") npc("Hello matey!") - player("How are you?") - npc("Tired!") - player("You shouldn't work so hard!") + player("How are you?") + npc("Tired!") + player("You shouldn't work so hard!") } 2 -> { - player("Hello.") - npc("Hello there, are you too lazy to work as well?") - player("Something like that.") + player("Hello.") + npc("Hello there, are you too lazy to work as well?") + player("Something like that.") npc("I'm just sun bathing!") } 3 -> { - player("Hello.") + player("Hello.") npc("Ouch!") - player("What's wrong?!") - npc("I cut my finger!") - npc("Do you have a bandage?") - player("I'm afraid not.") - npc("That's ok, I'll use my shirt.") + player("What's wrong?!") + npc("I cut my finger!") + npc("Do you have a bandage?") + player("I'm afraid not.") + npc("That's ok, I'll use my shirt.") } 4 -> { - player("Hello.") - npc("What do you want?") + player("Hello.") + npc("What do you want?") player("Is that any way to talk to your new superior?") - npc("Oh, I'm sorry, I didn't realise!") + npc("Oh, I'm sorry, I didn't realise!") } 5 -> { - player("Hello.") - npc("Can I help you?") - player("I'm just looking around.") - npc("Well there's plenty of work to be done, so if you don't mind...") - player("Of course. Sorry to have disturbed you.") + player("Hello.") + npc("Can I help you?") + player("I'm just looking around.") + npc("Well there's plenty of work to be done, so if you don't mind...") + player("Of course. Sorry to have disturbed you.") } 6 -> { - player("Hello.") + player("Hello.") npc("I've had enough of this!") - player("What?") + player("What?") npc("Breaking my back for pennies! It's just not on!") } 7 -> { - player("Hello.") - player("Looks like hard work?") - npc("I like to keep busy.") + player("Hello.") + player("Looks like hard work?") + npc("I like to keep busy.") } 8 -> { - player("Hello.") - player("What are you building?") - npc("Are you serious?") - player("Of course not! You're obviously building a boat.") + player("Hello.") + player("What are you building?") + npc("Are you serious?") + player("Of course not! You're obviously building a boat.") } 9 -> { - player("Hello.") - npc("No time to talk we've a fleet to build!") + player("Hello.") + npc("No time to talk we've a fleet to build!") } 10 -> { - player("Hello.") - player("How are you?") + player("Hello.") + player("How are you?") npc("Too busy to waste time gossiping!") - player("Touchy!") + player("Touchy!") } 11 -> { - player("Hello.") + player("Hello.") player("Quite a few ships you're building!") npc("This is just the start! The completed fleet will be awesome!") } diff --git a/game/src/main/kotlin/content/area/karamja/Stiles.kt b/game/src/main/kotlin/content/area/karamja/Stiles.kt index 169635c591..aab29d987b 100644 --- a/game/src/main/kotlin/content/area/karamja/Stiles.kt +++ b/game/src/main/kotlin/content/area/karamja/Stiles.kt @@ -26,7 +26,7 @@ class Stiles : Script { option("Which fish can you exchange?") { witchFish() } - option("No thanks.") { + option("No thanks.") { } } } @@ -39,8 +39,8 @@ class Stiles : Script { suspend fun Player.whoAreYou() { npc("Ahhh, when I were a young'un my name were Nigel but, these days, folks mostly call me Stiles.") npc("Long time ago, in Draynor Village, there were three brothers who'd exchange yer stuff for bitty bits o' paper, like these new-fangled banknotes we've got today. Niles, Miles an' Giles they called themselves.") - npc("They be long gone, like the golden days, but they were an inspiration to me, so I took this trade myself, an' I changed my name to Stiles.") - player("But why are you here, in this place?") + npc("They be long gone, like the golden days, but they were an inspiration to me, so I took this trade myself, an' I changed my name to Stiles.") + player("But why are you here, in this place?") npc("The smell of yon bananas were drivin' me scatty, so I can't go too near the fishing spots.") npc("A tough-lookin' geezer callin' himself a slayer master tried to give me a nosepeg once, but I bain't wearin' one o' them things. Ol' Stiles has a tender nose.") npc("So, would ye like me to exchange yer fish now?") @@ -51,7 +51,7 @@ class Stiles : Script { option("Which fish can you exchange?") { witchFish() } - option("No thanks.") { + option("No thanks.") { } } } @@ -60,7 +60,7 @@ class Stiles : Script { npc("Ahhh, ol' Stiles has banknotes for yer lobbies, yer swordies and yer tuna. 'Tis a grand service I be offerin' here, and nary a penny do I ask in return.") choice { option("Why don't you exchange other fish?") { - npc("Ahhh, I bain't looking to learn a new trade at my age. Lobbies, swordies an' tuna is enough fer ol' Stiles. Would ye like me to exchange yer fish now?") + npc("Ahhh, I bain't looking to learn a new trade at my age. Lobbies, swordies an' tuna is enough fer ol' Stiles. Would ye like me to exchange yer fish now?") choice { option("Okay, exchange all my fish for banknotes.") { exchange() @@ -68,7 +68,7 @@ class Stiles : Script { option("Who are you and why are you here?") { whoAreYou() } - option("No thanks.") { + option("No thanks.") { } } } @@ -78,7 +78,7 @@ class Stiles : Script { option("Who are you and why are you here?") { whoAreYou() } - option("No thanks.") { + option("No thanks.") { } } } @@ -97,7 +97,7 @@ class Stiles : Script { if (total > 0) { npc("There ye goes.") } else { - npc("Ahhh, ye've nothing that ol' Stiles can exchange. I'll do yer lobbies, yer swordies and' yer tuna, that's all.") + npc("Ahhh, ye've nothing that ol' Stiles can exchange. I'll do yer lobbies, yer swordies and' yer tuna, that's all.") } } } diff --git a/game/src/main/kotlin/content/area/karamja/brimhaven/Saniboch.kt b/game/src/main/kotlin/content/area/karamja/brimhaven/Saniboch.kt index a294cc4bd2..e6889b8941 100644 --- a/game/src/main/kotlin/content/area/karamja/brimhaven/Saniboch.kt +++ b/game/src/main/kotlin/content/area/karamja/brimhaven/Saniboch.kt @@ -17,60 +17,60 @@ class Saniboch : Script { init { npcOperate("Talk-to", "saniboch") { - npc("Good day to you, Bwana.") + npc("Good day to you, Bwana.") choice { option("Can I go through that door please?") { if (get("can_enter_brimhaven_dungeon", false)) { - npc("Most certainly, you have already given me lots of nice coins.") + npc("Most certainly, you have already given me lots of nice coins.") return@option } - npc("Most certainly, but I must charge you the sum of 875 coins first.") + npc("Most certainly, but I must charge you the sum of 875 coins first.") if (inventory.contains("coins", dungeonEntryFee)) { choice { option("Okay, here's 875 coins.") { inventory.remove("coins", dungeonEntryFee) set("can_enter_brimhaven_dungeon", true) statement("You pay Saniboch 875 coins.") - npc("Many thanks. You may now pass the door. May your death be a glorious one!") + npc("Many thanks. You may now pass the door. May your death be a glorious one!") } option("Never mind.") { - player("Never mind.") + player("Never mind.") } option("Why is it worth the entry cost?") { - player("Why is it worth the entry cost?") - npc("It leads to a huge fearsome dungeon, populated by giants and strange dogs. Adventurers come from all around to explore its depths.") - npc("I know not what lies deeper in myself, for my skills in agility and woodcutting are inadequate, but I hear tell of even greater dangers deeper in.") + player("Why is it worth the entry cost?") + npc("It leads to a huge fearsome dungeon, populated by giants and strange dogs. Adventurers come from all around to explore its depths.") + npc("I know not what lies deeper in myself, for my skills in agility and woodcutting are inadequate, but I hear tell of even greater dangers deeper in.") } } } else { - player("I don't have the money on me at the moment.") - npc("Well this is a dungeon for the more wealthy discerning adventurer. Begone with you, riff raff.") - player("But you don't even have clothes, how can you seriously call anyone riff raff.") - npc("Hummph.") + player("I don't have the money on me at the moment.") + npc("Well this is a dungeon for the more wealthy discerning adventurer. Begone with you, riff raff.") + player("But you don't even have clothes, how can you seriously call anyone riff raff.") + npc("Hummph.") } } option("Where does this strange entrance lead?") { npc("To a huge fearsome dungeon, populated by giants and strange dogs. Adventurers come from all around to explore its depths.") - npc("I know not what lies deeper in myself, for my skills in agility and woodcutting are inadequate.") + npc("I know not what lies deeper in myself, for my skills in agility and woodcutting are inadequate.") } option("Good day to you too.") { - player("Good day to you too.") + player("Good day to you too.") } option("I'm impressed, that tree is growing on that shed.") { - player("I'm impressed, that tree is growing on that shed.") - npc("My employer tells me it is an uncommon sort of tree called the Fyburglars tree.") + player("I'm impressed, that tree is growing on that shed.") + npc("My employer tells me it is an uncommon sort of tree called the Fyburglars tree.") } } } npcOperate("Pay", "saniboch") { if (get("can_enter_brimhaven_dungeon", false)) { - npc("You have already given me lots of nice coins, you may go in.") + npc("You have already given me lots of nice coins, you may go in.") return@npcOperate } @@ -79,10 +79,10 @@ class Saniboch : Script { inventory.remove("coins", dungeonEntryFee) set("can_enter_brimhaven_dungeon", true) statement("You pay Saniboch 875 coins.") - npc("Many thanks. You may now pass the door. May your death be a glorious one!") + npc("Many thanks. You may now pass the door. May your death be a glorious one!") } else { - npc("I'll want 875 coins to let you enter.") - npc("Well this is a dungeon for the more wealthy discerning adventurer. Begone with you, riff raff.") + npc("I'll want 875 coins to let you enter.") + npc("Well this is a dungeon for the more wealthy discerning adventurer. Begone with you, riff raff.") } } diff --git a/game/src/main/kotlin/content/area/karamja/musa_point/CustomsOfficer.kt b/game/src/main/kotlin/content/area/karamja/musa_point/CustomsOfficer.kt index 100e16cd2e..4d87545cad 100644 --- a/game/src/main/kotlin/content/area/karamja/musa_point/CustomsOfficer.kt +++ b/game/src/main/kotlin/content/area/karamja/musa_point/CustomsOfficer.kt @@ -1,9 +1,9 @@ package content.area.karamja.musa_point import content.entity.obj.ship.boatTravel +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Upset +import content.entity.player.dialogue.Sad import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -18,25 +18,25 @@ import world.gregs.voidps.type.Tile class CustomsOfficer : Script { init { npcOperate("Talk-to", "customs_officer_brimhaven") { - npc("Can I help you?") + npc("Can I help you?") choice { option("Can I journey on this ship?") { - npc("Hey, I know you, you work at the plantation.") - npc("I don't think you'll try smuggling anything, you just need to pay a boarding charge of 30 coins.") + npc("Hey, I know you, you work at the plantation.") + npc("I don't think you'll try smuggling anything, you just need to pay a boarding charge of 30 coins.") choice { option("Ok.") { if (!inventory.remove("coins", 30)) { - player("Oh dear, I don't seem to have enough money.") + player("Oh dear, I don't seem to have enough money.") return@option } travel() } - option("Oh, I'll not bother then.") + option("Oh, I'll not bother then.") } } option("Does Karamja have unusual customs then?") { player("Does Karamja have any unusual customs then?") - npc("I'm not that sort of customs officer.") + npc("I'm not that sort of customs officer.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/RugMerchant.kt b/game/src/main/kotlin/content/area/kharidian_desert/RugMerchant.kt index d67a67ebac..d65cd82835 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/RugMerchant.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/RugMerchant.kt @@ -34,8 +34,8 @@ import world.gregs.voidps.type.Tile class RugMerchant : Script { init { npcOperate("Talk-to", "rug_merchant_*") { (target) -> - player("Hello.") - npc("Greetings, desert traveler. Do you require the services of Ali Morrisane's flying carpet fleet?") + player("Hello.") + npc("Greetings, desert traveler. Do you require the services of Ali Morrisane's flying carpet fleet?") choice { option("Yes please.") { travel(target) @@ -82,17 +82,17 @@ class RugMerchant : Script { } npcOperate("Talk-to", "magic_carpet_monkey") { - player("Who's a cute little monkey?") + player("Who's a cute little monkey?") if (equipped(EquipSlot.Ammo).id != "mspeak_amulet") { - npc("Ukkuk oook! Eeek aka, ahh aka gonk.") + npc("Ukkuk oook! Eeek aka, ahh aka gonk.") return@npcOperate } - npc("Who's an ugly human? Give me a banana!") - player("What's up with you?") - npc("Stupid human! Give monkey a banana!") + npc("Who's an ugly human? Give me a banana!") + player("What's up with you?") + npc("Stupid human! Give monkey a banana!") if (!inventory.contains("banana")) { - player("Sorry monkey, I don't have any bananas.") - npc("Aghhh. You're a rubbish human, get monkey a banana now.") + player("Sorry monkey, I don't have any bananas.") + npc("Aghhh. You're a rubbish human, get monkey a banana now.") return@npcOperate } choice { @@ -100,7 +100,7 @@ class RugMerchant : Script { giveBanana() } option("Don't give it a banana.") { - player("I'll not give you a banana until you learn manners.") + player("I'll not give you a banana until you learn manners.") } } } @@ -153,10 +153,10 @@ class RugMerchant : Script { if (questCompleted("rogue_trader")) { price = 100 if (!skip) { - npc("There is a fare for this service you know - normally it's 200 gold per journey, but for you, I'll let you go for 100.") + npc("There is a fare for this service you know - normally it's 200 gold per journey, but for you, I'll let you go for 100.") } } else if (!skip) { - npc("There is a fare for this service you know : it's 200 gold per journey.") + npc("There is a fare for this service you know : it's 200 gold per journey.") } // https://youtu.be/qGX2YLs1Pb0?t=652 if (equipped(EquipSlot.Ring).id != "ring_of_charos_a") { @@ -169,7 +169,7 @@ class RugMerchant : Script { } val cheaper = if (price == 100) 75 else 100 option("[Charm] Seeing as you've reduced it already, how about ${cheaper}gp?") { - npc("Ah, a world-class haggler, I see. Very well, ${cheaper}gp it is.") + npc("Ah, a world-class haggler, I see. Very well, ${cheaper}gp it is.") price = cheaper travel(from, to, cheaper, skip) } @@ -178,8 +178,8 @@ class RugMerchant : Script { private suspend fun Player.travel(from: String, to: String, cost: Int, skip: Boolean) { if (!inventory.remove("coins", cost)) { - player("I don't have enough money with me.") - npc("Looks like you're walking then.") + player("I don't have enough money with me.") + npc("Looks like you're walking then.") return } if (!skip) { @@ -226,32 +226,32 @@ class RugMerchant : Script { } inc("monkey_gifted_bananas") npc("Ha ha! Smelly human gave monkey a banana.") - player("Wow you're one nasty piece of work. Have you ever heard of gratitude?") - npc("Hey baldy, give monkey another banana!") - player("Just because I'm not covered in fur doesn't make me bald, you cheeky monkey.") - npc("Monkey wants another banana now! Give me, give me!") - player("Look I've had it with you, you little degenerate.") + player("Wow you're one nasty piece of work. Have you ever heard of gratitude?") + npc("Hey baldy, give monkey another banana!") + player("Just because I'm not covered in fur doesn't make me bald, you cheeky monkey.") + npc("Monkey wants another banana now! Give me, give me!") + player("Look I've had it with you, you little degenerate.") } private fun ChoiceOption.aboutAli(target: NPC) { - option("Tell me about Ali Morrisane.") { - npc("What, you haven't heard of Ali M? Possibly the greatest salesman of the Kharidian empire if not all Gielinor?") + option("Tell me about Ali Morrisane.") { + npc("What, you haven't heard of Ali M? Possibly the greatest salesman of the Kharidian empire if not all Gielinor?") if (questCompleted("the_feud")) { - player("Ah yes I remember him now, I went on a wild goose chase looking for his nephew.") + player("Ah yes I remember him now, I went on a wild goose chase looking for his nephew.") npc("Ha! No doubt old Ali M instigated the whole thing.") - player("I had a bit of fun though, the whole job was quite diverting.") - npc("There's never a dull moment around that man, he's always looking for a way to make a quick coin or two.") + player("I had a bit of fun though, the whole job was quite diverting.") + npc("There's never a dull moment around that man, he's always looking for a way to make a quick coin or two.") } else { // TODO correct expressions - player("I can't say that I have, but he must be the ambitious type to try and set up his own airline.") - npc("You know something, I reckon that he's trying to take on those gnomes at their own game and I'd bet good money that he'll probably win.") - player("Hah? I think you've gone and lost me now.") - npc("You know those small little guys, not the dwarves now mind.") - player("Ya... gnomes, I'm with you that far.") - npc("Well they have already established an Airline, Gnome Air...") - player("Go on...") - npc("Anyway I think that Ali M's setup here will prove really successful and maybe once we're properly established we could try compete with those gnomes.") - player("I'll watch this space.") + player("I can't say that I have, but he must be the ambitious type to try and set up his own airline.") + npc("You know something, I reckon that he's trying to take on those gnomes at their own game and I'd bet good money that he'll probably win.") + player("Hah? I think you've gone and lost me now.") + npc("You know those small little guys, not the dwarves now mind.") + player("Ya... gnomes, I'm with you that far.") + npc("Well they have already established an Airline, Gnome Air...") + player("Go on...") + npc("Anyway I think that Ali M's setup here will prove really successful and maybe once we're properly established we could try compete with those gnomes.") + player("I'll watch this space.") } choice { travelOption(target) @@ -273,108 +273,108 @@ class RugMerchant : Script { when (target.id) { "rug_merchant_south_pollnivneach" -> { if (questCompleted("icthlarins_little_helper")) { - npc("From here you can travel to Nardah and the Menaphite cities of Sophanem and Menaphos.") + npc("From here you can travel to Nardah and the Menaphite cities of Sophanem and Menaphos.") // https://youtu.be/qGX2YLs1Pb0?t=737 choice { - option("I want to travel to Nardah.") { + option("I want to travel to Nardah.") { travel(current, "nardah") } - option("I want to travel to Menaphos.") { + option("I want to travel to Menaphos.") { travel(current, "menaphos") } - option("I want to travel to Sophanem.") { + option("I want to travel to Sophanem.") { travel(current, "sophanem") } - option("I don't want to travel to any of those places.") { - npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") + option("I don't want to travel to any of those places.") { + npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") } } } else { // https://youtu.be/AANu2wdVAbQ?t=108 - npc("Travel to Menaphos and Sophanem from here would be possible, but for the strange goings on there.") - player("What do you mean?") - npc("Well, for one, the gates to both of the towns have been locked to those trying to enter and leave, so there really isn't any point in servicing them at the moment.") - player("So, I can't take a ride on a magic carpet then?") - npc("You can still travel from here to Nardah.") + npc("Travel to Menaphos and Sophanem from here would be possible, but for the strange goings on there.") + player("What do you mean?") + npc("Well, for one, the gates to both of the towns have been locked to those trying to enter and leave, so there really isn't any point in servicing them at the moment.") + player("So, I can't take a ride on a magic carpet then?") + npc("You can still travel from here to Nardah.") choice("Where do you wish to travel?") { option("I want to travel to Nardah.") { travel(current, "nardah") } option("Actually, I've changed my mind.") { - npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") + npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") } } } } "rug_merchant_sophanem" -> { - npc("The carpets here will take you to the south of Pollnivneach. Do you want to take a lift?") + npc("The carpets here will take you to the south of Pollnivneach. Do you want to take a lift?") choice { - option("Pollnivneach will do.") { + option("Pollnivneach will do.") { travel(current, "south_pollnivneach") } - option("I don't want to travel there.") { - npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") + option("I don't want to travel there.") { + npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") } } } "rug_merchant_nardah" -> { - npc("The carpets here will take you to the south of Pollnivneach.") + npc("The carpets here will take you to the south of Pollnivneach.") choice { - option("Let's go then.") { + option("Let's go then.") { travel(current, "south_pollnivneach") } - option("I don't want to travel there.") { - npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") + option("I don't want to travel there.") { + npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") } } } "rug_merchant_north_pollnivneach" -> { - npc("From here you can travel to the Shantay Pass - the Southern gate of Al Kharid.") + npc("From here you can travel to the Shantay Pass - the Southern gate of Al Kharid.") choice { - option("Take me to the Pass then.") { + option("Take me to the Pass then.") { travel(current, "shantay_pass") } - option("I don't want to travel there.") { - npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") + option("I don't want to travel there.") { + npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") } } } "rug_merchant_uzer" -> { - npc("You can travel from here back to the Shantay Pass.") + npc("You can travel from here back to the Shantay Pass.") choice { - option("That sounds good, take me there.") { + option("That sounds good, take me there.") { travel(current, "shantay_pass") } - option("I don't want to travel there.") { - npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") + option("I don't want to travel there.") { + npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") } } } "rug_merchant_bedabin_camp" -> { - npc("From here you can travel to the Shantay Pass.") + npc("From here you can travel to the Shantay Pass.") choice { - option("Take me there.") { + option("Take me there.") { travel(current, "shantay_pass") } - option("I don't want to travel there.") { - npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") + option("I don't want to travel there.") { + npc("Fair enough, magic carpet travel isn't for everyone. Enjoy the walk.") } } } "rug_merchant_shantay_pass" -> { // TODO dialogue without quest requirements - npc("From here you can travel to Uzer, to the Bedabin camp or to the North of Pollnivneach.") - npc("The second major carpet hub station, to the south of Pollnivneach is in easy walking distance from there.") + npc("From here you can travel to Uzer, to the Bedabin camp or to the North of Pollnivneach.") + npc("The second major carpet hub station, to the south of Pollnivneach is in easy walking distance from there.") choice { if (questCompleted("the_golem")) { option("I want to travel to Uzer.") { travel(current, "uzer") } } - option("I want to travel to the Bedabin camp.") { + option("I want to travel to the Bedabin camp.") { travel(current, "bedabin_camp") } - option("I want to travel to Pollnivneach.") { + option("I want to travel to Pollnivneach.") { travel(current, "pollnivneach") } } @@ -384,57 +384,57 @@ class RugMerchant : Script { private fun ChoiceOption.noThanks() { option("No thanks.") { - npc("Come back anytime.") + npc("Come back anytime.") } } private fun ChoiceOption.questions(target: NPC) { - option("I have some questions.") { - npc("I'll try help you as much as I can.") + option("I have some questions.") { + npc("I'll try help you as much as I can.") choice { - option("What are you doing here?") { + option("What are you doing here?") { when (target.id) { - "rug_merchant_shantay_pass" -> npc("Well this is a good position for desert traffic. Shantay seems to have a nice little money spinner setup, but I reckon, this could turn out even better.") + "rug_merchant_shantay_pass" -> npc("Well this is a good position for desert traffic. Shantay seems to have a nice little money spinner setup, but I reckon, this could turn out even better.") "rug_merchant_north_pollnivneach" -> { - npc("Well Pollnivneach is the ideal location for setting up a carpet station.") - player("Why's that?") - npc("You see it's located halfway between Al Kharid, and the Menaphite cities and close enough to Nardah too, so we get more than enough traffic to keep the business running.") + npc("Well Pollnivneach is the ideal location for setting up a carpet station.") + player("Why's that?") + npc("You see it's located halfway between Al Kharid, and the Menaphite cities and close enough to Nardah too, so we get more than enough traffic to keep the business running.") } "rug_merchant_south_pollnivneach" -> { - npc("I work here renting out magic carpets. I'm from Pollnivneach so it is a handy job, I don't have to commute too far to work every day.") - player("So I suppose you're called Ali then.") - npc("Not the most remarkable of names, not that it matters, you see everyone in town knows me as Flash.") - player("Really?") + npc("I work here renting out magic carpets. I'm from Pollnivneach so it is a handy job, I don't have to commute too far to work every day.") + player("So I suppose you're called Ali then.") + npc("Not the most remarkable of names, not that it matters, you see everyone in town knows me as Flash.") + player("Really?") npc("No.") player("........") npc(".........") - player("Oh right.") + player("Oh right.") } "rug_merchant_sophanem" -> { - npc("I look after the carpet station here. The place is a bit dead though. Ha! I'm just too much.") - player("What?") - npc("You know, Sophanem, city of the dead and all that?") + npc("I look after the carpet station here. The place is a bit dead though. Ha! I'm just too much.") + player("What?") + npc("You know, Sophanem, city of the dead and all that?") player("...") - npc("Aww come on, the joke wasn't that bad.") + npc("Aww come on, the joke wasn't that bad.") player("...") } "rug_merchant_nardah" -> { - npc("Well I'd preferred to have been running one of the carpet stations at a hub such as Pollnivneach. I was a bit slow off the mark to get that gig though. Still business in Nardah isn't bad for a terminal. At least") - npc("people come here for the bank and to see the herbalist.") + npc("Well I'd preferred to have been running one of the carpet stations at a hub such as Pollnivneach. I was a bit slow off the mark to get that gig though. Still business in Nardah isn't bad for a terminal. At least") + npc("people come here for the bank and to see the herbalist.") } "rug_merchant_uzer" -> { - npc("You mightn't realise it, but this is quite a busy station.") - player("Who would want to come here?") - npc("Well you for one, and besides that we get quite a few archaeologists from the dig site passing through to examine the golem.") + npc("You mightn't realise it, but this is quite a busy station.") + player("Who would want to come here?") + npc("Well you for one, and besides that we get quite a few archaeologists from the dig site passing through to examine the golem.") } "rug_merchant_attendant" -> { - npc("Until recently I was looking after one of the busiest carpet stations. But that all changed since Menaphos closed its gates.") - npc("Right now I have to fill my day trying to come up with reasons why Ali M should keep this place open.") - player("So have you come up with any good ideas then?") - npc("Not really. The only reason I have come up with to date is that by keeping the station open, people will become familiar with it.") - npc("Maybe once Menaphos opens her gates again, the station will make a fortune once more.") + npc("Until recently I was looking after one of the busiest carpet stations. But that all changed since Menaphos closed its gates.") + npc("Right now I have to fill my day trying to come up with reasons why Ali M should keep this place open.") + player("So have you come up with any good ideas then?") + npc("Not really. The only reason I have come up with to date is that by keeping the station open, people will become familiar with it.") + npc("Maybe once Menaphos opens her gates again, the station will make a fortune once more.") } - "rug_merchant_bedabin_camp" -> npc("Well besides the obvious - looking after this station, I'm trying to figure out how these Tentis manage to cultivate such delicious pineapples.") + "rug_merchant_bedabin_camp" -> npc("Well besides the obvious - looking after this station, I'm trying to figure out how these Tentis manage to cultivate such delicious pineapples.") } choice { travelOption(target) @@ -451,18 +451,18 @@ class RugMerchant : Script { } private fun ChoiceOption.monkey(target: NPC) { - option("Is that your pet monkey nearby?") { - npc("He's his own monkey, he does whatever suits him, a total nuisance.") - player("I detect a degree of hostility being directed towards the monkey.") - npc("I shouldn't say this really, but sometimes I begin to question some of Ali Morrisane's ideas, he says that associating a monkey with any product will increase sales. I just don't know, what will be next?") + option("Is that your pet monkey nearby?") { + npc("He's his own monkey, he does whatever suits him, a total nuisance.") + player("I detect a degree of hostility being directed towards the monkey.") + npc("I shouldn't say this really, but sometimes I begin to question some of Ali Morrisane's ideas, he says that associating a monkey with any product will increase sales. I just don't know, what will be next?") player("Frogs?") - npc("I doubt it, amphibians don't have the same cutesy factor as monkeys.") - player("I'm confused. I thought you didn't like monkeys.") - npc("I don't dislike monkeys, it's just that monkey. I don't know, I might just be paranoid but I think he's... well... evil.") - player("Hmmm... Interesting.") - player("Hang on a minute, I think I have an amulet of monkeyspeak stored somewhere. Perhaps I could get it and see what it has to say for itself.") - npc("Would you? It sometimes gives me these stares... ~A visible shiver runs down his back.") - npc("I would be really grateful if you could get that monkey off my back.") + npc("I doubt it, amphibians don't have the same cutesy factor as monkeys.") + player("I'm confused. I thought you didn't like monkeys.") + npc("I don't dislike monkeys, it's just that monkey. I don't know, I might just be paranoid but I think he's... well... evil.") + player("Hmmm... Interesting.") + player("Hang on a minute, I think I have an amulet of monkeyspeak stored somewhere. Perhaps I could get it and see what it has to say for itself.") + npc("Would you? It sometimes gives me these stares... ~A visible shiver runs down his back.") + npc("I would be really grateful if you could get that monkey off my back.") choice { travelOption(target) aboutAli(target) @@ -474,12 +474,12 @@ class RugMerchant : Script { } private fun ChoiceOption.hat(target: NPC) { - option("Where did you get that hat?") { - npc("My fez? I got it from Ali Morrisane, it's a uniform of sorts, apparently it makes us more visible, but I'm not too sure about it.") - player("Well it is quite distinctive.") - npc("Do you like it? I haven't really made my mind up about it yet. You see it's not all that practical for desert conditions.") - player("How so?") - npc("Well it doesn't keep the sun out of my eyes and after a while sitting out in the desert they really begin to burn.") + option("Where did you get that hat?") { + npc("My fez? I got it from Ali Morrisane, it's a uniform of sorts, apparently it makes us more visible, but I'm not too sure about it.") + player("Well it is quite distinctive.") + npc("Do you like it? I haven't really made my mind up about it yet. You see it's not all that practical for desert conditions.") + player("How so?") + npc("Well it doesn't keep the sun out of my eyes and after a while sitting out in the desert they really begin to burn.") choice { travelOption(target) aboutAli(target) @@ -492,31 +492,31 @@ class RugMerchant : Script { private fun ChoiceOption.thanks() { option("Thanks, I'm done here.") { - npc("Come back anytime.") + npc("Come back anytime.") } } private fun ChoiceOption.explainFleet(target: NPC) { option("Tell me about this magic carpet fleet.") { - player("Tell me about this Magic Carpet fleet.") - npc("The latest idea from the great Ali Morrisane. Desert travel will never be the same again.") - player("So how does it work?") - npc("The carpet or the whole enterprise?") + player("Tell me about this Magic Carpet fleet.") + npc("The latest idea from the great Ali Morrisane. Desert travel will never be the same again.") + player("So how does it work?") + npc("The carpet or the whole enterprise?") choice { - option("Tell me about how the carpet works.") { - npc("I'm not really too sure, it's just an enchanted rug really, made out of special Ugthanki hair. It flies to whatever destination its owner commands.") + option("Tell me about how the carpet works.") { + npc("I'm not really too sure, it's just an enchanted rug really, made out of special Ugthanki hair. It flies to whatever destination its owner commands.") } option("Tell me about the enterprise then.") { - npc("It's quite simple really, Ali Morrisane has hired myself and a few others to set up carpet stations at some of the desert's more populated places and run flights between the stations.") - player("So why has he limited the service to just the desert?") - npc("I don't think Ali is prepared to take on Gnome Air just yet, their gliders are much faster than our carpets, besides that I think we are in the short haul business, something that would only work in harsh conditions like") - npc("the desert.") - player("Why is that?") - npc("I suppose because people would just walk. Getting lost isn't too much of a problem generally, but it's a different matter when you're in the middle of the Kharidian desert with a dry waterskin and no idea") - npc("which direction to go in.") - player("You're right I guess. How's the business going then?") - npc("Not too bad, the hubs are generally quite busy. But the stations in Uzer and the Bedabin camp could do with a bit more traffic.") - player("A growth market I guess.") + npc("It's quite simple really, Ali Morrisane has hired myself and a few others to set up carpet stations at some of the desert's more populated places and run flights between the stations.") + player("So why has he limited the service to just the desert?") + npc("I don't think Ali is prepared to take on Gnome Air just yet, their gliders are much faster than our carpets, besides that I think we are in the short haul business, something that would only work in harsh conditions like") + npc("the desert.") + player("Why is that?") + npc("I suppose because people would just walk. Getting lost isn't too much of a problem generally, but it's a different matter when you're in the middle of the Kharidian desert with a dry waterskin and no idea") + npc("which direction to go in.") + player("You're right I guess. How's the business going then?") + npc("Not too bad, the hubs are generally quite busy. But the stations in Uzer and the Bedabin camp could do with a bit more traffic.") + player("A growth market I guess.") choice { travelOption(target) aboutAli(target) diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/AlTheCamel.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/AlTheCamel.kt index d68e74e1a2..b4c508dac7 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/AlTheCamel.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/AlTheCamel.kt @@ -55,7 +55,7 @@ class AlTheCamel : Script { objectOperate("Pick-up", "dung") { if (!inventory.contains("bucket")) { - player("I'm not picking that up. I'll need a container...") + player("I'm not picking that up. I'll need a container...") return@objectOperate } scoopPoop() @@ -71,18 +71,18 @@ class AlTheCamel : Script { } suspend fun Player.bestOfLuck() { - player("Well, best of luck with that.") - npc("If you want to hear my poems once more, please come back again.") + player("Well, best of luck with that.") + npc("If you want to hear my poems once more, please come back again.") } suspend fun Player.noThankYou() { - npc("Ah, well. I shall return to writing poems to Elly's beauty.") + npc("Ah, well. I shall return to writing poems to Elly's beauty.") whatDoesSheThink() } suspend fun Player.idLoveTo() { - npc("That's so kind of you. Which one would you like to hear?") - npc("'Shall I compare thee to a desert's day' is my finest yet, but I've also composed others.") + npc("That's so kind of you. Which one would you like to hear?") + npc("'Shall I compare thee to a desert's day' is my finest yet, but I've also composed others.") poems() } @@ -98,50 +98,50 @@ class AlTheCamel : Script { } suspend fun Player.justToSay() { - npc("I wrote this poem when I went to the oasis to nibble at a tree, then discovered I'd left nothing for Elly to nibble. I was distraught.") - npc("This Is Just To Say") - npc("I have nibbled the cacti that were by the oasis,") - npc("and which you were probably saving for lunch.") - npc("Forgive me, they were delicious, so crunchy and so cold.") - npc("I wonder if she's forgiven me for eating her snack.") + npc("I wrote this poem when I went to the oasis to nibble at a tree, then discovered I'd left nothing for Elly to nibble. I was distraught.") + npc("This Is Just To Say") + npc("I have nibbled the cacti that were by the oasis,") + npc("and which you were probably saving for lunch.") + npc("Forgive me, they were delicious, so crunchy and so cold.") + npc("I wonder if she's forgiven me for eating her snack.") whatDoesSheThink() } suspend fun Player.desertsDay(interrupt: Boolean) { if (!interrupt) { - npc("That's my favourite poem. Ahem...") + npc("That's my favourite poem. Ahem...") } - npc("Shall I compare thee to a desert's day? Thou art drier and more rough-skinned.") - npc("Rough sandstorms shake the cactuses away And summer's heat defers to autumn wind.") + npc("Shall I compare thee to a desert's day? Thou art drier and more rough-skinned.") + npc("Rough sandstorms shake the cactuses away And summer's heat defers to autumn wind.") if (interrupt) { - player("Look, I don't really have the time to...") + player("Look, I don't really have the time to...") } - npc("Sometimes too hot the eye of heaven shines, With Guthix' gold complexion often dimmed;") - npc("And every fair from fair sometime declines, By chance or desert's changing course untrimmed...") + npc("Sometimes too hot the eye of heaven shines, With Guthix' gold complexion often dimmed;") + npc("And every fair from fair sometime declines, By chance or desert's changing course untrimmed...") if (interrupt) { - player("Please, stop.") - npc("But I've only got six lines left!") - player("That's six too many. If I really want to hear your poetry, I'll tell you, okay?") - npc("Very well. Come back and talk to me if you want to hear more.") + player("Please, stop.") + npc("But I've only got six lines left!") + player("That's six too many. If I really want to hear your poetry, I'll tell you, okay?") + npc("Very well. Come back and talk to me if you want to hear more.") set("al_the_camel", true) } else { - npc("But thine eternal desert shall not fade Nor lose possession of that sand thou owest;") - npc("Nor Zamorak brag thou art in his shades, When in eternal lines to sand thou growest,") - npc("So long as camels breathe or eyes can see, So long lives this, and this gives life to thee.") - npc("Ah, Elly, how beautiful you are.") + npc("But thine eternal desert shall not fade Nor lose possession of that sand thou owest;") + npc("Nor Zamorak brag thou art in his shades, When in eternal lines to sand thou growest,") + npc("So long as camels breathe or eyes can see, So long lives this, and this gives life to thee.") + npc("Ah, Elly, how beautiful you are.") whatDoesSheThink() } } suspend fun Player.whatDoesSheThink() { player("What does she think of your poems?") - npc("She's never heard them.") - player("Why not?") - npc("I suspect she loves another - Ollie, another camel who roams with her to the north.") - npc("So I shall stay here and compose poems for her.") + npc("She's never heard them.") + player("Why not?") + npc("I suspect she loves another - Ollie, another camel who roams with her to the north.") + npc("So I shall stay here and compose poems for her.") choice { - option("Why not tell her how you feel?") { - npc("She seems happy enough as she is, and I have my poems to comfort me.") + option("Why not tell her how you feel?") { + npc("She seems happy enough as she is, and I have my poems to comfort me.") bestOfLuck() } option("Well, best of luck with that.") { @@ -152,9 +152,9 @@ class AlTheCamel : Script { suspend fun Player.dung() { player("I'm sorry to bother you, but could you spare me a little dung?") - npc("Are you serious?") - player("Oh yes. If you'd be so kind...") - npc("Well, just you close your eyes first. I'm not doing it while you're watching me!") + npc("Are you serious?") + player("Oh yes. If you'd be so kind...") + npc("Well, just you close your eyes first. I'm not doing it while you're watching me!") open("fade_out") interfaces.sendText("fade_out", "text", "You close your eyes...") delay(2) @@ -162,36 +162,36 @@ class AlTheCamel : Script { objects.add("dung", tile, ticks = TimeUnit.SECONDS.toTicks(30)) delay(2) open("fade_in") - npc("I hope that's what you wanted!") - player("Ohhh yes. Lovely.") + npc("I hope that's what you wanted!") + player("Ohhh yes. Lovely.") } suspend fun Player.listenTo() { - npc("Oh, it's you again. Have you come back to listen to my poems?") + npc("Oh, it's you again. Have you come back to listen to my poems?") choice { option("I'd love to!") { idLoveTo() } - option("No, thank you.") { + option("No, thank you.") { noThankYou() } } } suspend fun Player.talkingToMe() { - npc("Sorry, were you saying something to me?") - player("No, er, nothing important.") - npc("Never mind, it is unimportant when I have such important matters weighing on my soul.") - player("How important can a camel's problems be?") - npc("Well, you see, there is a camel called Elly. A beautiful, wondrous camel, with hide like spun gold and teeth that shine like an oasis.") - player("...I see.") - npc("I've written many poems describing her beauty. Would you like to hear one?") - player("It's all right, I'm...") + npc("Sorry, were you saying something to me?") + player("No, er, nothing important.") + npc("Never mind, it is unimportant when I have such important matters weighing on my soul.") + player("How important can a camel's problems be?") + npc("Well, you see, there is a camel called Elly. A beautiful, wondrous camel, with hide like spun gold and teeth that shine like an oasis.") + player("...I see.") + npc("I've written many poems describing her beauty. Would you like to hear one?") + player("It's all right, I'm...") desertsDay(interrupt = true) } suspend fun Player.insult() { - player( + player( when (random.nextInt(3)) { 0 -> "Mmm... looks like that camel would make a nice kebab." 1 -> "I wonder if that camel has fleas..." @@ -207,7 +207,7 @@ class AlTheCamel : Script { anim("fill_bucket") message("You scoop up some camel dung into the bucket.") if (inventory.contains("ugthanki_dung", 28)) { - player("Phew - that's enough dung.") + player("Phew - that's enough dung.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/AliMorrisane.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/AliMorrisane.kt index a67dec6ea5..4ff74b164d 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/AliMorrisane.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/AliMorrisane.kt @@ -12,9 +12,9 @@ class AliMorrisane : Script { init { npcOperate("Talk-to", "ali_morrisane") { - npc("Hello, my friend. Have a look at my wares.") + npc("Hello, my friend. Have a look at my wares.") choice { - option("No, I'm really too busy.") + option("No, I'm really too busy.") option("Okay.") { openShop("alis_discount_wares") } @@ -24,22 +24,22 @@ class AliMorrisane : Script { fun ChoiceOption.whatsInIt() { option("So what's in this for me?") { - player("What's in this for me?") - npc("I thought you wanted to help.") - player("Of course, but everyone seems to be benefiting here but me.") - npc("What do you mean? ") - player("Well the trader gets their product sold, you get your cut, but what do I get?") - npc("You get access to more products. Is that not reward enough?") - npc("Hmmm... Perhaps not.") - npc("I'll tell you what then, how about I let you have discounted flights on my magic carpet rides?") + player("What's in this for me?") + npc("I thought you wanted to help.") + player("Of course, but everyone seems to be benefiting here but me.") + npc("What do you mean? ") + player("Well the trader gets their product sold, you get your cut, but what do I get?") + npc("You get access to more products. Is that not reward enough?") + npc("Hmmm... Perhaps not.") + npc("I'll tell you what then, how about I let you have discounted flights on my magic carpet rides?") set("roguetrader_var", 2080) // https://chisel.weirdgloop.org/varbs/display?varplayer=540 - player("Wow that would be great.") - npc("Fair enough so, we have a win, win, win situation on our hands then.") - player("Is there anyone else you want me to talk to on your behalf?") - npc("There's a blackjack seller in Pollnivneach, a cautious type of guy, not the usual entrepreneurial sort that I would normally deal with, but...") - npc("I think that he has a product with real potential...") - player("What? .... Blackjacks?") - npc("Yes, but at the moment the product isn't polished enough, if you could convince him to create a larger variety of weapon I would gladly stock his products.") + player("Wow that would be great.") + npc("Fair enough so, we have a win, win, win situation on our hands then.") + player("Is there anyone else you want me to talk to on your behalf?") + npc("There's a blackjack seller in Pollnivneach, a cautious type of guy, not the usual entrepreneurial sort that I would normally deal with, but...") + npc("I think that he has a product with real potential...") + player("What? .... Blackjacks?") + npc("Yes, but at the moment the product isn't polished enough, if you could convince him to create a larger variety of weapon I would gladly stock his products.") set("roguetrader_var", 2084) // https://chisel.weirdgloop.org/varbs/display?varplayer=540 choice { whatsInIt() @@ -49,30 +49,30 @@ class AliMorrisane : Script { } fun ChoiceOption.okayIllSee() { - option("Ok I'll see what I can do.") { - npc("I think I need just one more product type, something magical ... now what could I stock that's magical, has large demand and a pretty good profit margin...") - player("How about runes?") - npc("Yes, that would be perfect, but who could I get that would supply? There really seems to be a gap in the market in the desert but I don't know anyone in that line of business.") + option("Ok I'll see what I can do.") { + npc("I think I need just one more product type, something magical ... now what could I stock that's magical, has large demand and a pretty good profit margin...") + player("How about runes?") + npc("Yes, that would be perfect, but who could I get that would supply? There really seems to be a gap in the market in the desert but I don't know anyone in that line of business.") player("Hang on, I know somebody called Aubury, decent fella. I helped him out a while back. Perhaps I could approach him about the idea.") npc("Oh yes, the rune seller from Varrock. That would be perfect. He's far enough away that he wouldn't end up competing with himself.") set("roguetrader_var", 2340) // https://chisel.weirdgloop.org/varbs/display?varplayer=540 player("What do you mean?") - npc("Well the rune market is a limited one, if I were to sell his runes from a location nearby his shop, then I would take part of his market share so he would in fact not benefit from me selling runes.") + npc("Well the rune market is a limited one, if I were to sell his runes from a location nearby his shop, then I would take part of his market share so he would in fact not benefit from me selling runes.") player("Ah ha I think I know where this is going. So because you're located far enough away from him you will take up someone else's share in the market and Aubury will make more money as a result.") - npc("Very well anticipated.") + npc("Very well anticipated.") choice { whatsInIt() - option("Ok I'll see what I can do.") + option("Ok I'll see what I can do.") } } } suspend fun Player.fued() { - player("Hi Ali. Not bad. How are you?") - npc("Still selling.") - npc("Hello $name. How's the adventuring going?") - player("Hi Ali. Not bad. How are you?") - npc("Still selling.") + player("Hi Ali. Not bad. How are you?") + npc("Still selling.") + npc("Hello $name. How's the adventuring going?") + player("Hi Ali. Not bad. How are you?") + npc("Still selling.") choice { if (questCompleted("the_feud")) { option("I would like to have a look at your selection of blackjacks.") @@ -80,22 +80,22 @@ class AliMorrisane : Script { option("I would like to have a look at your selection of clothes.") option("I would like to have a look at your general stock.") } - player("Anything interesting?") + player("Anything interesting?") npc("For you, always. As a matter of fact I have just acquired a fleet of magic carpets, which operate throughout the Kharidian desert.") - player("Wow, that sounds great, how about your stall?") - npc("Trade is good, but I would like to expand and diversify, but it's proving a little more difficult than I initially thought.") - player("How so?") + player("Wow, that sounds great, how about your stall?") + npc("Trade is good, but I would like to expand and diversify, but it's proving a little more difficult than I initially thought.") + player("How so?") npc("I think the other merchants in this town are conspiring against me.") - player("Oh come on! You're just being paranoid now.") - npc("Well maybe I can't get any new suppliers then because I'm Pollnivnian.") - player("You're what?") - npc("From Pollnivneach.") - player("Maybe I could help you then?") - npc("Perhaps you could.") + player("Oh come on! You're just being paranoid now.") + npc("Well maybe I can't get any new suppliers then because I'm Pollnivnian.") + player("You're what?") + npc("From Pollnivneach.") + player("Maybe I could help you then?") + npc("Perhaps you could.") if (questCompleted("icthlarins_little_helper")) { - npc("I have an old friend - a cloth merchant Siamun, who lives in Sophanem - Do you know the place?") - player(" Umm..... Images of cats and priests come to mind. Ah yes! There we go, it's the city of the dead South of Pollnivneach isn't it?") - npc("That's the one, well if you could convince him to supply me with some of his merchandise, I would be more than willing to sell them to the masses ...... for a small percentage of course.") + npc("I have an old friend - a cloth merchant Siamun, who lives in Sophanem - Do you know the place?") + player(" Umm..... Images of cats and priests come to mind. Ah yes! There we go, it's the city of the dead South of Pollnivneach isn't it?") + npc("That's the one, well if you could convince him to supply me with some of his merchandise, I would be more than willing to sell them to the masses ...... for a small percentage of course.") choice { whatsInIt() option("Ok I'll get on to it.") diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Apprentice.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Apprentice.kt index 9bc364bc0f..3257c2defd 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Apprentice.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Apprentice.kt @@ -1,13 +1,13 @@ package content.area.kharidian_desert.al_kharid import content.entity.player.dialogue.Angry +import content.entity.player.dialogue.Disheartened import content.entity.player.dialogue.EvilLaugh import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz import content.entity.player.dialogue.Sad -import content.entity.player.dialogue.Surprised -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Upset +import content.entity.player.dialogue.Shock import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -26,32 +26,32 @@ class Apprentice : Script { npcOperate("Talk-to", "apprentice") { (target) -> if (get("sorceress_garden_unlocked", false)) { player("Hey apprentice, do you want to try out your teleport skills again?") - npc("Okay, here goes - and remember, to return just drink from the fountain.") + npc("Okay, here goes - and remember, to return just drink from the fountain.") teleportToGarden(target) return@npcOperate } - player("Hello. What are you doing?") - npc("Cleaning, cleaning, always cleaning. This apprenticeship isn't all that it was cracked up to be.") + player("Hello. What are you doing?") + npc("Cleaning, cleaning, always cleaning. This apprenticeship isn't all that it was cracked up to be.") player("Whose apprentice are you?") - npc("Oh, Aadeela, the sorceress upstairs, said she'd teach me magic, she did. And here I am scrubbing floors without a spell to help me.") + npc("Oh, Aadeela, the sorceress upstairs, said she'd teach me magic, she did. And here I am scrubbing floors without a spell to help me.") choice { option("I could cast a Water Blast or a Wind Blast spell?") { player("I could cast a Water Blast or a Wind Blast spell to hurry things along if you'd like?") - npc("No, no, she'd kill me or worse if she knew I was using Magic to do chores. Her last apprentice - well I'd rather not say.") + npc("No, no, she'd kill me or worse if she knew I was using Magic to do chores. Her last apprentice - well I'd rather not say.") player("Oh go on, what happened to them?") - npc("They say she turned them into little spiders.") - player("Oh, that's too bad. I had better leave you to it.") + npc("They say she turned them into little spiders.") + player("Oh, that's too bad. I had better leave you to it.") } option("Surely there must be upsides to the task?") { - npc("Nope. Clean this, clean that. When I'm finished cleaning here I have to go help out in the garden.") + npc("Nope. Clean this, clean that. When I'm finished cleaning here I have to go help out in the garden.") player("What garden?") - npc("Oh, I shouldn't have told you.") + npc("Oh, I shouldn't have told you.") choice { - option("You're right, you shouldn't have.") { + option("You're right, you shouldn't have.") { npc("Well, if you don't mind then, I'm busy and have to get back to work.") - player("Don't let me keep you.") + player("Don't let me keep you.") } - option("Oh, you can talk to me. I can see you're having a bad day.") { + option("Oh, you can talk to me. I can see you're having a bad day.") { talkToMe(target) } } @@ -61,7 +61,7 @@ class Apprentice : Script { npcOperate("Teleport", "apprentice") { (target) -> if (!get("spoken_to_osman", false)) { - npc("I can't do that now, I'm far too busy sweeping.") + npc("I can't do that now, I'm far too busy sweeping.") } else { teleportToGarden(target) } @@ -69,36 +69,36 @@ class Apprentice : Script { } suspend fun Player.talkToMe(target: NPC) { - npc("You know you're right. Nobody listens to me.") + npc("You know you're right. Nobody listens to me.") choice { option("I can't blame them, all you do is whine.") { statement("The apprentice is clearly hurt and ignores you.") } - option("A sympathetic ear can do wonders.") { + option("A sympathetic ear can do wonders.") { npc("Yes, if I just let my frustrations out, I'd feel a lot better. Now what was I saying?") choice { option("I don't know. You were whining about something or other.") { - player("I don't know. You were whining about something or other. To tell you the truth, I wasn't really listening.") + player("I don't know. You were whining about something or other. To tell you the truth, I wasn't really listening.") statement("The apprentice is clearly hurt and ignores you.") } - option("To tell you the truth, I wasn't really listening.") { + option("To tell you the truth, I wasn't really listening.") { statement("The apprentice is clearly hurt and ignores you.") } - option("You mentioned something about the garden.") { - npc("Oh yeah, that dreadful garden of hers.") - player("Where is it?") - npc("Oh, it's nowhere.") - player("What do you mean?") - npc("Well it's here, but not really. You see the sorceress is trying out some new type of compression magic.") - player("Oh, that sounds interesting - so how does it work?") - npc("It would take too long to explain and, to be honest, I don't really understand how it works.") - player("Fair enough, but tell me, how do you get to the garden?") - npc("By magic! The sorceress did teach me one spell.") + option("You mentioned something about the garden.") { + npc("Oh yeah, that dreadful garden of hers.") + player("Where is it?") + npc("Oh, it's nowhere.") + player("What do you mean?") + npc("Well it's here, but not really. You see the sorceress is trying out some new type of compression magic.") + player("Oh, that sounds interesting - so how does it work?") + npc("It would take too long to explain and, to be honest, I don't really understand how it works.") + player("Fair enough, but tell me, how do you get to the garden?") + npc("By magic! The sorceress did teach me one spell.") choice { option("Wow, cast the spell on me. It will be good Magic training for you.") { castTheSpell(target) } - option("Oh, that's nice. Well it's been great talking to you.") + option("Oh, that's nice. Well it's been great talking to you.") } } } @@ -108,11 +108,11 @@ class Apprentice : Script { suspend fun Player.castTheSpell(target: NPC) { if (!get("spoken_to_osman", false)) { - npc("I can't do that now, I'm far too busy sweeping.") + npc("I can't do that now, I'm far too busy sweeping.") } else { npc("You wouldn't mind?") - player("Of course not. I'd be glad to help.") - npc("Okay, here goes! Remember, to return, just drink from the fountain.") + player("Of course not. I'd be glad to help.") + npc("Okay, here goes! Remember, to return, just drink from the fountain.") set("sorceress_garden_unlocked", true) teleportToGarden(target) } @@ -123,7 +123,7 @@ class Apprentice : Script { suspend fun Player.teleportToGarden(target: NPC) { if (hasFollower) { - npc("Oh, I'm sorry, could you pick up your follower first? I'm really not sure that I could teleport the both of you.") + npc("Oh, I'm sorry, could you pick up your follower first? I'm really not sure that I could teleport the both of you.") return } if (!World.members) { diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Dommik.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Dommik.kt index 10265d527d..e512488d6b 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Dommik.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Dommik.kt @@ -12,10 +12,10 @@ class Dommik : Script { npcOperate("Talk-to", "dommik") { npc("Would you like to buy some crafting equipment?") choice { - option("No thanks; I've got all the Crafting equipment I need.") { + option("No thanks; I've got all the Crafting equipment I need.") { npc("Okay. Fare well on your travels.") } - option("Let's see what you've got, then.") { + option("Let's see what you've got, then.") { openShop("dommiks_crafting_store") } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Ellis.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Ellis.kt index 4401a4e61b..26ead70c06 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Ellis.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Ellis.kt @@ -1,9 +1,9 @@ package content.area.kharidian_desert.al_kharid +import content.entity.player.dialogue.Disheartened import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Sad -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.intEntry import content.entity.player.dialogue.type.npc @@ -32,20 +32,20 @@ class Ellis : Script { init { npcOperate("Talk-to", "ellis,tanner") { - npc("Greetings friend. I am a manufacturer of leather.") + npc("Greetings friend. I am a manufacturer of leather.") if (inventory.items.none { it.id == "cowhide" || it.id.startsWith("snake_hide") || it.id.endsWith("dragonhide") }) { leather() return@npcOperate } - npc("I see you have bought me some hides. Would you like me to tan them for you?") + npc("I see you have bought me some hides. Would you like me to tan them for you?") choice { option("Yes please.") { - player("Yes please.") + player("Yes please.") open("tanner") } option("No thanks.") { - player("No thanks.") - npc("Very well, ${if (male) "sir" else "madam"}, as you wish.") + player("No thanks.") + npc("Very well, ${if (male) "sir" else "madam"}, as you wish.") } } } @@ -76,13 +76,13 @@ class Ellis : Script { suspend fun Player.leather() { choice("What would you like to say?") { option("Can I buy some leather then?") { - npc("I make leather from animal hides. Bring me some cowhides and one gold coin per hide, and I'll tan them into soft leather for you.") + npc("I make leather from animal hides. Bring me some cowhides and one gold coin per hide, and I'll tan them into soft leather for you.") } - option("Leather is rather weak stuff.") { - npc("Normal leather may be quite weak, but it's very heap - I make it from cowhides for only 1 gp per hide - and it's so easy to craft that anyone can work with it.") - npc("Alternatively you could try hard leather. It's not so easy to craft, but I only charge 3 gp per cowhide to prepare it, and it makes much sturdier armour.") + option("Leather is rather weak stuff.") { + npc("Normal leather may be quite weak, but it's very heap - I make it from cowhides for only 1 gp per hide - and it's so easy to craft that anyone can work with it.") + npc("Alternatively you could try hard leather. It's not so easy to craft, but I only charge 3 gp per cowhide to prepare it, and it makes much sturdier armour.") npc("I can also tan snake hides and dragonhides, suitable for crafting into the highest quality armour for rangers.") - player("Thanks, I'll bear it in mind.") + player("Thanks, I'll bear it in mind.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Hassan.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Hassan.kt index 002ded2e88..36310f4813 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Hassan.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Hassan.kt @@ -19,16 +19,16 @@ class Hassan : Script { npcOperate("Talk-to", "hassan") { when (quest("prince_ali_rescue")) { "unstarted" -> { - npc("Greetings! I am Hassan, Chancellor to the Emir of Al Kharid.") + npc("Greetings! I am Hassan, Chancellor to the Emir of Al Kharid.") choice { anyHelp() tooHot() killWarriors() - option("I'd better be off.") + option("I'd better be off.") } } "prince_ali_disguise" -> { - npc("You have the eternal gratitude for the Emir for rescuing his son. I am authorised to pay you 700 coins.") + npc("You have the eternal gratitude for the Emir for rescuing his son. I am authorised to pay you 700 coins.") if (!inventory.add("coins")) { statement("Leela tries to give you a reward, but you don't have enough room for it.") // TODO proper message return@npcOperate @@ -52,14 +52,14 @@ class Hassan : Script { clear("prince_ali_rescue_leela") } "completed" -> npc("Thank you for being a friend to Al Kharid. You are always welcome here.") - else -> npc("Hello again. I hear you have agreed to help rescue Prince Ali. On behalf of the Emir, I will have a reward ready for you upon your success.") + else -> npc("Hello again. I hear you have agreed to help rescue Prince Ali. On behalf of the Emir, I will have a reward ready for you upon your success.") } } } fun ChoiceOption.killWarriors() { option("Do you mind if I just kill your warriors?") { - npc("Kill our warriors? I assume this is some sort of joke?") + npc("Kill our warriors? I assume this is some sort of joke?") player("I'll take that as a no. Forget I asked.") choice { anyHelp() @@ -72,19 +72,19 @@ class Hassan : Script { fun ChoiceOption.anyHelp() { option("Can I help you? You must need some help here in the desert.") { set("prince_ali_rescue", "osman") - npc("I need the services of someone, yes. If you are interested, see the spymaster, Osman. I manage the finances here. Come to me when you need payment.") + npc("I need the services of someone, yes. If you are interested, see the spymaster, Osman. I manage the finances here. Come to me when you need payment.") } } fun ChoiceOption.tooHot() { - option("It's just too hot here. How can you stand it?") { - npc("We manage, in our humble way. We are a wealthy town and we have water. It cures many thirsts.") + option("It's just too hot here. How can you stand it?") { + npc("We manage, in our humble way. We are a wealthy town and we have water. It cures many thirsts.") inventory.add("jug_of_water") statement("The chancellor hands you some water.") choice { anyHelp() killWarriors() - option("I'd better be off.") + option("I'd better be off.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Karim.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Karim.kt index f463758499..5c33f9ce0f 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Karim.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Karim.kt @@ -16,14 +16,14 @@ class Karim : Script { npcOperate("Talk-to", "karim") { npc("Would you like to buy a nice kebab? Only one gold.") choice { - option("I think I'll give it a miss.") - option("Yes please.") { + option("I think I'll give it a miss.") + option("Yes please.") { if (inventory.remove("coins", 1)) { inventory.add("kebab") message("You buy a kebab.") } else { - player("Oops, I forgot to bring any money with me.") - npc("Come back when you have some.") + player("Oops, I forgot to bring any money with me.") + npc("Come back when you have some.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/LouieLegs.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/LouieLegs.kt index 658e49a699..df968d91ad 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/LouieLegs.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/LouieLegs.kt @@ -10,13 +10,13 @@ class LouieLegs : Script { init { npcOperate("Talk-to", "louie_legs") { - npc("Hey, wanna buy some armour?") + npc("Hey, wanna buy some armour?") choice { - option("What have you got?") { + option("What have you got?") { npc("I provide items to help you keep your legs!") openShop("louies_armoured_legs_bazaar") } - option("No, thank you.") + option("No, thank you.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Osman.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Osman.kt index 18b2fadf7f..e5aeaa319f 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Osman.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Osman.kt @@ -25,7 +25,7 @@ class Osman : Script { when (quest("prince_ali_rescue")) { "completed" -> { if (!questCompleted("contact")) { - npc("Well done. A great rescue. I will remember you if I have anything dangerous to do.") + npc("Well done. A great rescue. I will remember you if I have anything dangerous to do.") return@npcOperate } choice { @@ -37,7 +37,7 @@ class Osman : Script { "unstarted" -> { npc("Hello. I am Osman. What can I assist you with?") choice { - option("You don't seem very tough. Who are you?") { + option("You don't seem very tough. Who are you?") { npc("I work for Al Kharid's Emir. That is all you need to know.") } option("Nothing. I'm just being nosy.") { @@ -47,7 +47,7 @@ class Osman : Script { return@npcOperate } "osman" -> { - player("The chancellor trusts me. I have come for instructions.") + player("The chancellor trusts me. I have come for instructions.") npc("Our prince is captive by the Lady Keli. We just need to make the rescue. There are two things we need you to do.") set("prince_ali_rescue", "leela") choice { @@ -59,7 +59,7 @@ class Osman : Script { "leela" -> { if (inventory.contains("key_print")) { if (!inventory.contains("bronze_bar")) { - player("I have an imprint of the key.") + player("I have an imprint of the key.") npc("Good. Bring me a bronze bar, and I'll get a copy made.") } else { npc("Well done; we can make the key now.") @@ -69,13 +69,13 @@ class Osman : Script { npc("Pick the key up from Leela.") } } else if (get("prince_ali_rescue_key_given", false) && !ownsItem("bronze_key_prince_ali_rescue")) { - player("I'm afraid I lost that key you gave me.") - npc("Well that was foolish. I can sort you out with another, but it will cost you 15 coins.") + player("I'm afraid I lost that key you gave me.") + npc("Well that was foolish. I can sort you out with another, but it will cost you 15 coins.") if (inventory.contains("coins", 15)) { - player("Here, I have 15 coins.") + player("Here, I have 15 coins.") } else { - player("I haven't got 15 coins with me.") - npc("Then come back to me when you do.") + player("I haven't got 15 coins with me.") + npc("Then come back to me when you do.") return@npcOperate } inventory.transaction { @@ -88,8 +88,8 @@ class Osman : Script { } } choice { - option("Thank you. I will try to find the other items.") - option("Can you tell me what I still need to get?") { + option("Thank you. I will try to find the other items.") + option("Can you tell me what I still need to get?") { remainingItems() } } @@ -105,7 +105,7 @@ class Osman : Script { private suspend fun Player.sqirks() { if (inventory.contains("winter_sqirkjuice") || inventory.contains("spring_sqirkjuice") || inventory.contains("autumn_sqirkjuice") || inventory.contains("summer_sqirkjuice")) { - player("I have some sq'irk juice for you.") + player("I have some sq'irk juice for you.") var experience = 0.0 inventory.transaction { experience += removeToLimit("winter_sqirkjuice", 28) * 350.0 @@ -124,82 +124,82 @@ class Osman : Script { howSqirks() whySqirks() whatSqirks() - option("I should go.") + option("I should go.") } } private fun ChoiceOption.whatSqirks() { option("What's so good about sq'irk juice?") { - npc("It is a sweet nectar for a thief or spy. It makes light fingers lighter, fleet feet flightier and comes in four different colours for those who are easily amused.") + npc("It is a sweet nectar for a thief or spy. It makes light fingers lighter, fleet feet flightier and comes in four different colours for those who are easily amused.") statement("Osman starts salivating at the thought of sq'irk juice.") player("It wouldn't have addictive properties, would it?") - npc("It only holds power over those with poor self-control. Something which I have an abundance of.") - player("I see.") + npc("It only holds power over those with poor self-control. Something which I have an abundance of.") + player("I see.") choice { whereSqirks() howSqirks() whySqirks() - option("I should go.") + option("I should go.") } } } private fun ChoiceOption.whySqirks() { option("Is there a reward for getting these sq'irks?") { - npc("Of course. I'll train you in the art of Thieving for your troubles.") + npc("Of course. I'll train you in the art of Thieving for your troubles.") player("How much training will you give?") - npc("That depends on the quantity and ripeness of the sq'irks you put into the juice.") - player("That sounds fair enough.") + npc("That depends on the quantity and ripeness of the sq'irks you put into the juice.") + player("That sounds fair enough.") choice { whereSqirks() howSqirks() whatSqirks() - option("I should go.") + option("I should go.") } } } private fun ChoiceOption.howSqirks() { option("How should I squeeze the fruit?") { - npc("Use a pestle and mortar. Make sure you have an empty glass with you to collect the juice.") + npc("Use a pestle and mortar. Make sure you have an empty glass with you to collect the juice.") choice { whereSqirks() whySqirks() whatSqirks() - option("I should go.") + option("I should go.") } } } private fun ChoiceOption.whereSqirks() { option("Where do I get sq'irks?") { - npc("There is a sorceress near the south eastern edge of Al Kharid who grows them. She used to be friends with Osman, but they fell out.") + npc("There is a sorceress near the south eastern edge of Al Kharid who grows them. She used to be friends with Osman, but they fell out.") player("What happened?") - npc("I don't know. All I know is she won't give us any more fruit.") + npc("I don't know. All I know is she won't give us any more fruit.") player("So all I have to do is ask her for some fruit for you?") - npc("I doubt it will be that easy. She is not renowned for her generosity and is very secretive about her garden's location.") - player("Oh come on, it should be easy enough to find.") - npc("Her garden has remained hidden even from Osman. I believe it must be hidden by magical means.") + npc("I doubt it will be that easy. She is not renowned for her generosity and is very secretive about her garden's location.") + player("Oh come on, it should be easy enough to find.") + npc("Her garden has remained hidden even from Osman. I believe it must be hidden by magical means.") player("I see. And why can't you do this yourself?") - npc("My work requires that I remain here.") - player("Okay. This should be an interesting task.") + npc("My work requires that I remain here.") + player("Okay. This should be an interesting task.") choice { howSqirks() whySqirks() whatSqirks() - option("I should go.") + option("I should go.") } } } fun ChoiceOption.findThings() { - option("Okay, I better go find some things.") { + option("Okay, I better go find some things.") { npc("May good luck travel with you. Don't forget to find Leela. It can't be done without her help.") } } fun ChoiceOption.firstThing() { - option("What is the first thing I must do?") { + option("What is the first thing I must do?") { npc("The prince is guarded by some stupid guards and a clever woman. The woman is our only way to get the prince out. Only she can walk freely about the area.") npc("I think you will need to tie her up. One coil of rope should do for that. Then, disguise the prince as her to get him out without suspicion.") player("How good must the disguise be?") diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Ranael.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Ranael.kt index bfa796ad2b..600b03897b 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Ranael.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Ranael.kt @@ -10,12 +10,12 @@ class Ranael : Script { init { npcOperate("Talk-to", "ranael") { - npc("Do you want to buy any armoured skirts? Designed especially for ladies who like to fight.") + npc("Do you want to buy any armoured skirts? Designed especially for ladies who like to fight.") choice { - option("Yes please.") { + option("Yes please.") { openShop("ranaels_super_skirt_store") } - option("No thank you, that's not my scene.") + option("No thank you, that's not my scene.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Sorceress.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Sorceress.kt index 371a3d039e..e60e8a8d6d 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Sorceress.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Sorceress.kt @@ -2,8 +2,8 @@ package content.area.kharidian_desert.al_kharid import content.entity.player.dialogue.Angry import content.entity.player.dialogue.EvilLaugh +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -20,7 +20,7 @@ class Sorceress : Script { npc("Who are you and what do you want?") choice { option("None of your business!") { - player("I go where I like and do what I like.") + player("I go where I like and do what I like.") npc("Not in my house. Be gone!") curse(target) } @@ -28,14 +28,14 @@ class Sorceress : Script { npc("I think not!") curse(target) } - option("Can I have some sq'irks please?") { - npc("What do you want them for?") - player("Someone asked me to bring them some.") + option("Can I have some sq'irks please?") { + npc("What do you want them for?") + player("Someone asked me to bring them some.") npc("Who?") - player("Osman") - npc("In that case I'm sorry, but you can't. I have had a falling out with him recently and would rather not oblige him.") + player("Osman") + npc("In that case I'm sorry, but you can't. I have had a falling out with him recently and would rather not oblige him.") } - option("I'm just passing by.") + option("I'm just passing by.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Tollgate.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Tollgate.kt index 7c199c51f4..9b354885b8 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Tollgate.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Tollgate.kt @@ -1,10 +1,10 @@ package content.area.kharidian_desert.al_kharid import content.entity.obj.door.enterDoor +import content.entity.player.dialogue.Confused +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Uncertain -import content.entity.player.dialogue.Upset +import content.entity.player.dialogue.Sad import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -66,24 +66,24 @@ class Tollgate : Script { talkWith(npc) player("Can I come through this gate?") if (questCompleted("prince_ali_rescue")) { - npc("You may pass for free! You are a friend of Al Kharid.") + npc("You may pass for free! You are a friend of Al Kharid.") pass(this) return } - npc("You must pay a toll of 10 gold coins to pass.") + npc("You must pay a toll of 10 gold coins to pass.") choice { option("Okay, I'll pay.") { if (!inventory.contains("coins", 10)) { - player("Oh dear I don't actually seem to have enough money.") + player("Oh dear I don't actually seem to have enough money.") } else { pass(this) } } - option("Who does my money go to?") { - npc("The money goes to the city of Al-Kharid.") + option("Who does my money go to?") { + npc("The money goes to the city of Al-Kharid.") } option("No thank you, I'll walk around.") { - npc("Ok suit yourself.") + npc("Ok suit yourself.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Zeke.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Zeke.kt index a19c1f84f1..9fbf5bb0b1 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Zeke.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/Zeke.kt @@ -14,7 +14,7 @@ class Zeke : Script { init { npcOperate("Talk-to", "zeke") { - npc("A thousand greetings, ${if (male) "sir" else "madam"}.") + npc("A thousand greetings, ${if (male) "sir" else "madam"}.") choice { option("Do you want to trade?") { npc("Yes, certainly. I deal in scimitars.") @@ -27,9 +27,9 @@ class Zeke : Script { npc("A dragon scimitar? A DRAGON scimitar?") npc("No way, man!") npc("The banana-brained nitwits who make them would never dream of selling any to me.") - npc("Seriously, you'll be a monkey's uncle before you'll ever hold a dragon scimitar.") + npc("Seriously, you'll be a monkey's uncle before you'll ever hold a dragon scimitar.") if (quest("monkey_madness") == "completed") { - player("Hmmm, funny you should say that...") + player("Hmmm, funny you should say that...") } else { player("Oh well, thanks anyway.") } @@ -39,9 +39,9 @@ class Zeke : Script { option("What do you think of Ali Morrisane?") { npc("He is a dangerous man.") npc("Although he does not appear to be dangerous, he has brought several men to this town who have threatened me and several others.") - npc("One man even threatened me with a hammer, saying that when he set up his smithy, my shoddy workmanship would be revealed!") + npc("One man even threatened me with a hammer, saying that when he set up his smithy, my shoddy workmanship would be revealed!") player("What will you do about these threats?") - npc("Oh, I am quite confident in the quality of my work...as will you be if you take a look at my wares.") + npc("Oh, I am quite confident in the quality of my work...as will you be if you take a look at my wares.") takeALook() } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/CaptainDaerkin.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/CaptainDaerkin.kt index 0a268e4070..2fce9d9b9e 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/CaptainDaerkin.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/CaptainDaerkin.kt @@ -1,7 +1,7 @@ package content.area.kharidian_desert.al_kharid.duel_arena import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player import world.gregs.voidps.engine.Script @@ -11,11 +11,11 @@ class CaptainDaerkin : Script { init { npcOperate("Talk-to", "captain_daerkin") { npc("Hello old chap.") - player("What are you doing here? Shouldn't you be looking after your glider?") + player("What are you doing here? Shouldn't you be looking after your glider?") npc("I'm pretty much retired these days old fellow. My test piloting days are over. I'm just relaxing here and enjoying the primal clash between man and man.") - player("You're watching the duels then. Are you going to challenge someone yourself?") + player("You're watching the duels then. Are you going to challenge someone yourself?") npc("I do find the duels entertaining to watch, but I suspect that actually being involved would be a lot less fun for me. I'm a lover, not a fighter!") - player("Errm, I suppose you are.") + player("Errm, I suppose you are.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Fadli.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Fadli.kt index b4dbd36e2f..934f1c73c0 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Fadli.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Fadli.kt @@ -15,36 +15,36 @@ class Fadli : Script { init { npcOperate("Talk-to", "fadli") { player("Hi.") - npc("What?") + npc("What?") choice { - option("What do you do?") { - npc("You can store your stuff here if you want. You can dump anything you don't want to carry whilst you're fighting duels and then pick it up again on the way out.") - npc("To be honest I'm wasted here.") + option("What do you do?") { + npc("You can store your stuff here if you want. You can dump anything you don't want to carry whilst you're fighting duels and then pick it up again on the way out.") + npc("To be honest I'm wasted here.") npc("I should be winning duels in an arena! I'm the best warrior in Al Kharid!") - player("Easy, tiger!") + player("Easy, tiger!") } - option("What is this place?") { + option("What is this place?") { npc("Isn't it obvious?") - npc("This is the Duel Arena...duh!") + npc("This is the Duel Arena...duh!") } - option("I'd like to access my bank, please.") { - npc("Sure.") + option("I'd like to access my bank, please.") { + npc("Sure.") open("bank") } option("I'd like to collect items.") { - npc("Yeah, okay.") + npc("Yeah, okay.") open("collection_box") } - option("Do you watch any matches?") { - npc("When I can.") + option("Do you watch any matches?") { + npc("When I can.") npc("Most aren't any good so I throw rotten fruit at them!") player("Heh. Can I buy some?") if (World.members) { - npc("Sure.") + npc("Sure.") openShop("shop_of_distaste") return@option } - npc("Nope.") + npc("Nope.") message("You need to be on a members world to use this feature.") } } @@ -63,7 +63,7 @@ class Fadli : Script { openShop("shop_of_distaste") return@npcOperate } - npc("Sorry, I'm not interested.") + npc("Sorry, I'm not interested.") message("You need to be on a members world to use this feature.") } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Hamid.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Hamid.kt index 5631a88c2f..6ac9059b1d 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Hamid.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Hamid.kt @@ -11,21 +11,21 @@ class Hamid : Script { init { npcOperate("Talk-to", "hamid") { player("Hi!") - npc("Hello traveller. How can I be of assistance?") + npc("Hello traveller. How can I be of assistance?") choice { - option("Can you heal me?") { - npc("You'd be better off speaking to one of the nurses.") + option("Can you heal me?") { + npc("You'd be better off speaking to one of the nurses.") npc("They are so... nice... afterall!") } - option("What's a Monk doing in a place such as this?") { + option("What's a Monk doing in a place such as this?") { npc("Well don't tell anyone but I came here because of the nurses!") - player("Really?") - npc("It beats being stuck in the monastery!") + player("Really?") + npc("It beats being stuck in the monastery!") } - option("Which monastery do you come from?") { - npc("I belong to the monastery north of Falador.") - player("You're a long way from home?") - npc("Yeh. I miss the guys.") + option("Which monastery do you come from?") { + npc("I belong to the monastery north of Falador.") + player("You're a long way from home?") + npc("Yeh. I miss the guys.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Jaraah.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Jaraah.kt index c1def4f5b4..2f76e0fd76 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Jaraah.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Jaraah.kt @@ -13,19 +13,19 @@ class Jaraah : Script { player("Hi!") npc("What? Can't you see I'm busy?!") choice { - option("Can you heal me?") { + option("Can you heal me?") { heal(target) } - option("You must see some gruesome things?") { + option("You must see some gruesome things?") { npc("It's a gruesome business and with the tools they give me it gets more gruesome before it gets better!") - player("Really?") - npc("It beats being stuck in the monastery!") + player("Really?") + npc("It beats being stuck in the monastery!") } - option("Why do they call you 'The Butcher'?") { - npc("'The Butcher'?") + option("Why do they call you 'The Butcher'?") { + npc("'The Butcher'?") npc("Ha!") npc("Would you like me to demonstrate?") - player("Er...I'll give it a miss, thanks.") + player("Er...I'll give it a miss, thanks.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Mubariz.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Mubariz.kt index 6283db89ae..b254b59eb5 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Mubariz.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Mubariz.kt @@ -32,10 +32,10 @@ class Mubariz : Script { } } - fun ChoiceOption.place(): Unit = option("What is this place?") { - npc("The Duel Arena has six arenas where you can fight other players in a controlled environment. We have our own dedicated hospital where we guarantee to put you back together, even if you lose.") - npc("The Duel Arena has six arenas where you can fight other players in a controlled environment. We have our own dedicated hospital where we guarantee to put you back together, even if you lose.") - npc("In between the arenas are walkways where you can watch the fights and challenge other players.") + fun ChoiceOption.place(): Unit = option("What is this place?") { + npc("The Duel Arena has six arenas where you can fight other players in a controlled environment. We have our own dedicated hospital where we guarantee to put you back together, even if you lose.") + npc("The Duel Arena has six arenas where you can fight other players in a controlled environment. We have our own dedicated hospital where we guarantee to put you back together, even if you lose.") + npc("In between the arenas are walkways where you can watch the fights and challenge other players.") choice { looksOld() duelling() @@ -46,9 +46,9 @@ class Mubariz : Script { } suspend fun Player.looksOld() { - player("It looks really old. Where did it come from?") - npc("The archaeologists that are excavating the area east of Varrock have been working on this site as well. From these cliffs they uncovered this huge building. The experts think it may date back to the second age!") - npc("Now that the archaeologists have moved out, a group of warriors, headed by myself, have bought the land and converted it to a set of arenas for duels. The best fighters from around the world come here to fight!") + player("It looks really old. Where did it come from?") + npc("The archaeologists that are excavating the area east of Varrock have been working on this site as well. From these cliffs they uncovered this huge building. The experts think it may date back to the second age!") + npc("Now that the archaeologists have moved out, a group of warriors, headed by myself, have bought the land and converted it to a set of arenas for duels. The best fighters from around the world come here to fight!") choice { challenge() duelling() @@ -59,14 +59,14 @@ class Mubariz : Script { } suspend fun ChoiceOption.challenge(): Unit = option("I challenge you!") { - npc("Ho! Ho! Ho!") + npc("Ho! Ho! Ho!") menu() } suspend fun Player.duelling() { - player("How do I challenge someone to a duel?") - npc("When you go to the arena you'll go up an access ramp to the walkways that overlook the arenas. From the walkways you can watch the duels and challenge other players.") - npc("You'll know you're in the right place as you'll have a Duel-with option when you right-click a player.") + player("How do I challenge someone to a duel?") + npc("When you go to the arena you'll go up an access ramp to the walkways that overlook the arenas. From the walkways you can watch the duels and challenge other players.") + npc("You'll know you're in the right place as you'll have a Duel-with option when you right-click a player.") choice { challenge() place() @@ -76,11 +76,11 @@ class Mubariz : Script { } } - fun ChoiceOption.options(): Unit = option("What kind of options are there?") { - npc("You and your opponent can offer coins or platinum as a stake. If you win, you receive what your opponent staked minus some tax, but if you lose, your opponent will get whatever items you staked.") - npc("You can choose to use rules to spice things up a bit. For instance if you both agree to use the 'No Magic' rule then neither player can use magic to attack the other player. The fight will be restricted to ranging and") - npc("melee only.") - npc("The rules are fairly self-evident with lots of different combinations for you to try out!") + fun ChoiceOption.options(): Unit = option("What kind of options are there?") { + npc("You and your opponent can offer coins or platinum as a stake. If you win, you receive what your opponent staked minus some tax, but if you lose, your opponent will get whatever items you staked.") + npc("You can choose to use rules to spice things up a bit. For instance if you both agree to use the 'No Magic' rule then neither player can use magic to attack the other player. The fight will be restricted to ranging and") + npc("melee only.") + npc("The rules are fairly self-evident with lots of different combinations for you to try out!") choice { place() duelling() @@ -90,10 +90,10 @@ class Mubariz : Script { } fun ChoiceOption.advice(): Unit = option("Do you have any advice for me?") { - npc("Win. And if you ever stop having fun, stop dueling.") + npc("Win. And if you ever stop having fun, stop dueling.") } - fun ChoiceOption.exit(): Unit = option("I'll be off.") { + fun ChoiceOption.exit(): Unit = option("I'll be off.") { npc("See you in the arenas!") } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Nurses.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Nurses.kt index b45fc0b235..3bc545fe77 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Nurses.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Nurses.kt @@ -1,9 +1,9 @@ package content.area.kharidian_desert.al_kharid.duel_arena -import content.entity.player.dialogue.Chuckle +import content.entity.player.dialogue.Confused import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Neutral -import content.entity.player.dialogue.Uncertain +import content.entity.player.dialogue.Idle +import content.entity.player.dialogue.Laugh import content.entity.player.dialogue.type.* import world.gregs.voidps.engine.Script import world.gregs.voidps.engine.client.message @@ -12,10 +12,10 @@ import world.gregs.voidps.engine.entity.character.player.Player import world.gregs.voidps.engine.entity.character.player.skill.Skill import world.gregs.voidps.engine.entity.character.sound -internal fun ChoiceOption.fighters(): Unit = option("Do you see a lot of injured fighters?") { - npc("Yes I do. Thankfully we can cope with almost anything. Jaraah really is a wonderful surgeon, his methods are a little unorthodox but he gets the job done.") - npc("I shouldn't tell you this but his nickname is 'The Butcher'.") - player("That's reassuring.") +internal fun ChoiceOption.fighters(): Unit = option("Do you see a lot of injured fighters?") { + npc("Yes I do. Thankfully we can cope with almost anything. Jaraah really is a wonderful surgeon, his methods are a little unorthodox but he gets the job done.") + npc("I shouldn't tell you this but his nickname is 'The Butcher'.") + player("That's reassuring.") } internal suspend fun Player.heal(target: NPC) { @@ -31,9 +31,9 @@ internal suspend fun Player.heal(target: NPC) { npc("You look healthy to me!") } -internal fun ChoiceOption.often(): Unit = option("Do you come here often?") { +internal fun ChoiceOption.often(): Unit = option("Do you come here often?") { npc("I work here, so yes!") - npc("You're silly!") + npc("You're silly!") } class Nurses : Script { @@ -43,7 +43,7 @@ class Nurses : Script { player("Hi!") npc("Hi. How can I help?") choice { - option("Can you heal me?") { + option("Can you heal me?") { heal(target) } fighters() diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Spectators.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Spectators.kt index 1c919b0454..146cba7c47 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Spectators.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Spectators.kt @@ -14,21 +14,21 @@ class Spectators : Script { when (random.nextInt(0, 14)) { 0 -> { npc("Knock knock!") - player("Who's there?") + player("Who's there?") npc("Boo.") - player("Boo who?") - npc("Don't cry, it's just me!") + player("Boo who?") + npc("Don't cry, it's just me!") } 1 -> { - npc("I wouldn't want to be the poor guy that has to clean up after the duels.") - player("Me neither.") + npc("I wouldn't want to be the poor guy that has to clean up after the duels.") + player("Me neither.") } - 2 -> npc("Hmph.") + 2 -> npc("Hmph.") 3 -> { npc("My son just won his first duel!") player("Congratulations!") npc("He ripped his opponent in half!") - player("That's gotta hurt!") + player("That's gotta hurt!") npc("He's only 10 as well!") player("You gotta start 'em young!") } @@ -38,18 +38,18 @@ class Spectators : Script { } 5 -> { npc("Why did the skeleton burp?") - player("I don't know?") - npc("'Cause it didn't have the guts to fart!") + player("I don't know?") + npc("'Cause it didn't have the guts to fart!") } 6 -> { - npc("Did you know they think this place dates back to the second age?!") - player("Really?") - npc("Yeah. The guy at the information kiosk was telling me.") + npc("Did you know they think this place dates back to the second age?!") + player("Really?") + npc("Yeah. The guy at the information kiosk was telling me.") } 7 -> { npc("What did the skeleton say before it ate?") - player("I don't know?") - npc("Bone-appetit.") + player("I don't know?") + npc("Bone-appetit.") } 8 -> { npc("Ooh. This is exciting!") @@ -58,14 +58,14 @@ class Spectators : Script { 9 -> npc("Well. This beats doing the shopping!") 10 -> { npc("Can't you see I'm watching the duels?") - player("I'm sorry!") + player("I'm sorry!") } 11 -> npc("Hi!") 12 -> { npc("My favourite fighter is Mubariz!") - player("The guy at the information kiosk?") + player("The guy at the information kiosk?") npc("Yeah! He rocks!") - player("Takes all sorts, I guess.") + player("Takes all sorts, I guess.") } 13 -> npc("Waaaaassssssuuuuupp?!") } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/SurgeonGeneralTafani.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/SurgeonGeneralTafani.kt index 40345bdf11..4a653a3ba2 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/SurgeonGeneralTafani.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/SurgeonGeneralTafani.kt @@ -1,9 +1,9 @@ package content.area.kharidian_desert.al_kharid.duel_arena +import content.entity.player.dialogue.Confused import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Uncertain import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -27,14 +27,14 @@ class SurgeonGeneralTafani : Script { suspend fun Player.menu(target: NPC) { choice { - option("Can you heal me?") { + option("Can you heal me?") { heal(target) } fighters() often() option("Can you tell me about your cape?") { npc("Certainly! Skillcapes are a symbol of achievement. Only people who have mastered a skill and reached level 99 can get their hands on them and gain the benefits they carry.") - npc("The Cape of Constitution doubles the speed of your constitution replenishing when worn. Is there anything else I can help you with?") + npc("The Cape of Constitution doubles the speed of your constitution replenishing when worn. Is there anything else I can help you with?") menu(target) } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Zahwa.kt b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Zahwa.kt index cfeb8f9422..d2db23e6ab 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Zahwa.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/al_kharid/duel_arena/Zahwa.kt @@ -16,41 +16,41 @@ class Zahwa : Script { player("Hi!") } 1 -> { - player("Are you alright?") + player("Are you alright?") npc("Do I look alright?!") } 2 -> { - player("Are you alright?") + player("Are you alright?") npc("Yeh. The nurses here are...wonderful!") } 3 -> { player("Hi!") npc("I could've 'ad 'im!") - player("Er...") + player("Er...") npc("I was robbed!") - player("Right.") + player("Right.") npc("It was rigged I tell you!") - player("Uh huh.") + player("Uh huh.") npc("Leave me alone!") } 4 -> { - player("Are you alright?") - npc("NURSE!") + player("Are you alright?") + npc("NURSE!") } 5 -> { - player("Are you alright?") + player("Are you alright?") npc("It's just a flesh wound!") } 6 -> { - player("Are you alright?") - npc("Can't....go....on!") - npc("Leave me behind!") - player("I'll leave you here, OK?") - npc("Oh. OK.") + player("Are you alright?") + npc("Can't....go....on!") + npc("Leave me behind!") + player("I'll leave you here, OK?") + npc("Oh. OK.") } 7 -> { player("Hi!") - player("Ughhhh....") + player("Ughhhh....") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/Shantay.kt b/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/Shantay.kt index 86ad8e5482..5b5590c6ca 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/Shantay.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/Shantay.kt @@ -1,7 +1,7 @@ package content.area.kharidian_desert.shantay_pass import content.entity.obj.door.openDoor -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.ChoiceOption import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.item @@ -24,18 +24,18 @@ class Shantay( ) : Script { init { npcOperate("Talk-to", "shantay") { - npc("Hello effendi, I am Shantay.") + npc("Hello effendi, I am Shantay.") if (get("shantay_state", "new_player") == "new_player") { - npc("I see you're new. Please read the billboard poster before going into the desert. It'll give yer details on the dangers you can face.") + npc("I see you're new. Please read the billboard poster before going into the desert. It'll give yer details on the dangers you can face.") set("shantay_state", "returning") } else { - npc("Hello again friend. Please read the billboard poster before going into the desert. It'll give yer details on the dangers you can face.") + npc("Hello again friend. Please read the billboard poster before going into the desert. It'll give yer details on the dangers you can face.") } choice { whatIsThisPlace() shop() bye() - option("I want to buy a Shantay pass for 5 gold coins.") { + option("I want to buy a Shantay pass for 5 gold coins.") { buyPass() } } @@ -51,25 +51,25 @@ class Shantay( return@objectOperate } if (tile.x >= 3300) { - npc("You should be in jail! Well, no doubt the authorities in Port Sarim know what they're doing. But if you get into any more trouble, you'll be stuck back in jail.") + npc("You should be in jail! Well, no doubt the authorities in Port Sarim know what they're doing. But if you get into any more trouble, you'll be stuck back in jail.") set("shantay_state", "returning") } else { message("Shantay saunters over to talk with you.") talkWith(npcs[tile.regionLevel].first { it.id == "shantay" }) - npc("If you want to be let out, you have to pay a fine of five gold. Do you want to pay now?") + npc("If you want to be let out, you have to pay a fine of five gold. Do you want to pay now?") leaveJail() } } } private fun ChoiceOption.whatIsThisPlace() { - option("What is this place?") { - npc("This is the pass of Shantay. I guard this area with my men. I am responsible for keeping this pass open and repaired.") - npc("My men and I prevent outlaws from getting out of the desert. And we stop the inexperienced from a dry death in the sands. Which would you say you were?") + option("What is this place?") { + npc("This is the pass of Shantay. I guard this area with my men. I am responsible for keeping this pass open and repaired.") + npc("My men and I prevent outlaws from getting out of the desert. And we stop the inexperienced from a dry death in the sands. Which would you say you were?") choice { - option("I am definitely an outlaw, prepare to die!") { - npc("Ha, very funny.....") - npc("Guards arrest him!") + option("I am definitely an outlaw, prepare to die!") { + npc("Ha, very funny.....") + npc("Guards arrest him!") set("shantay_state", "jailed") val guard = findNearestGuard(this) guard?.walkTo(this.tile) @@ -77,23 +77,23 @@ class Shantay( message("The guards arrest you and place you in the jail.") delay(3) tele(3298, 3124) - npc("You'll have to stay in there until you pay the fine of five gold pieces. Do you want to pay now?") + npc("You'll have to stay in there until you pay the fine of five gold pieces. Do you want to pay now?") leaveJail() } - option("I am a little inexperienced.") { - npc("Can I recommend that you purchase a full waterskin and a knife! These items will no doubt save your life. A waterskin will keep water from evaporating in the desert.") - npc("And a keen woodsman with a knife can extract the juice from a cactus. Before you go into the desert, it's advisable to wear desert clothes. It's very hot in the desert and you'll surely cook if you wear armour.") - npc("To keep the pass bandit free, we charge a small toll of five gold pieces. You can buy a desert pass from me, just ask me to open the shop. You can also use our free banking services by clicking on the chest.") + option("I am a little inexperienced.") { + npc("Can I recommend that you purchase a full waterskin and a knife! These items will no doubt save your life. A waterskin will keep water from evaporating in the desert.") + npc("And a keen woodsman with a knife can extract the juice from a cactus. Before you go into the desert, it's advisable to wear desert clothes. It's very hot in the desert and you'll surely cook if you wear armour.") + npc("To keep the pass bandit free, we charge a small toll of five gold pieces. You can buy a desert pass from me, just ask me to open the shop. You can also use our free banking services by clicking on the chest.") choice { shop() bye() whyCost() } } - option("Er, neither, I'm an adventurer.") { - npc("Great, I have just the thing for the desert adventurer. I sell desert clothes which will keep you cool in the heat of the desert. I also sell waterskins so that you won't die in the desert.") - npc("A waterskin and a knife help you survive from the juice of a cactus. Use the chest to store your items, we'll take them to the bank. It's hot in the desert, you'll bake in all that armour.") - npc("To keep the pass open we ask for 5 gold pieces. And we give you a Shantay Pass, just ask to see what I sell to buy one.") + option("Er, neither, I'm an adventurer.") { + npc("Great, I have just the thing for the desert adventurer. I sell desert clothes which will keep you cool in the heat of the desert. I also sell waterskins so that you won't die in the desert.") + npc("A waterskin and a knife help you survive from the juice of a cactus. Use the chest to store your items, we'll take them to the bank. It's hot in the desert, you'll bake in all that armour.") + npc("To keep the pass open we ask for 5 gold pieces. And we give you a Shantay Pass, just ask to see what I sell to buy one.") choice { shop() bye() @@ -106,23 +106,23 @@ class Shantay( private suspend fun Player.leaveJail() { choice { - option("Yes, okay.") { - npc("Good, I see that you have come to your senses.") + option("Yes, okay.") { + npc("Good, I see that you have come to your senses.") if (inventory.remove("coins", 5)) { set("shantay_state", "returning") - npc("Great Effendi, now please try to keep the peace.") + npc("Great Effendi, now please try to keep the peace.") message("Shantay unlocks the door to the cell.") } else { - npc("You don't have that kind of cash on you I see.") - npc("But perhaps you have some in your bank? Or would you prefer the maximum security prison in Port Sarim.") - npc("Which is it going to be?") + npc("You don't have that kind of cash on you I see.") + npc("But perhaps you have some in your bank? Or would you prefer the maximum security prison in Port Sarim.") + npc("Which is it going to be?") choice { - option("I'll pay the fine.") { - npc("Okay then..., you'll need access to your bank.") + option("I'll pay the fine.") { + npc("Okay then..., you'll need access to your bank.") open("bank") } - option("No thanks, you're not having my money.") { - npc("Very well, I grow tired of you, you'll be taken to a new jail in Port Sarim.") + option("No thanks, you're not having my money.") { + npc("Very well, I grow tired of you, you'll be taken to a new jail in Port Sarim.") jail() } } @@ -133,13 +133,13 @@ class Shantay( } private fun ChoiceOption.noThanks() { - option("No thanks, you're not having my money.") { - npc("You have a choice. You can either pay five gold pieces or... You can be transported to a maximum security prison in Port Sarim.") - npc("Will you pay the five gold pieces?") + option("No thanks, you're not having my money.") { + npc("You have a choice. You can either pay five gold pieces or... You can be transported to a maximum security prison in Port Sarim.") + npc("Will you pay the five gold pieces?") choice { - option("Yes, okay.") + option("Yes, okay.") option("No, do your worst!") { - npc("You are to be transported to a maximum security prison in Port Sarim. I hope you've learnt an important lesson from this.") + npc("You are to be transported to a maximum security prison in Port Sarim. I hope you've learnt an important lesson from this.") jail() } } @@ -164,18 +164,18 @@ class Shantay( add("shantay_pass") } when (inventory.transaction.error) { - is TransactionError.Full -> npc("Sorry friend, you'll need more inventory space to buy a pass.") + is TransactionError.Full -> npc("Sorry friend, you'll need more inventory space to buy a pass.") TransactionError.None -> item("shantay_pass", 400, "You purchase a Shantay Pass.") - else -> npc("Sorry friend, the Shantay Pass is 5 gold coins. You don't seem to have enough money!") + else -> npc("Sorry friend, the Shantay Pass is 5 gold coins. You don't seem to have enough money!") } } private fun ChoiceOption.whyCost() { - option("Why do I have to pay to go into the desert?") { + option("Why do I have to pay to go into the desert?") { message("Shantay opens his arms wide as if to embrace you.") delay(3) - npc("Effendi, you insult me! I am not interested in making a profit from you! I merely seek to cover my expenses in keeping this pass open.") - npc("There is repair work to carry out and also the men's wages to consider. For the paltry sum of 5 Gold pieces, I think we offer a great service.") + npc("Effendi, you insult me! I am not interested in making a profit from you! I merely seek to cover my expenses in keeping this pass open.") + npc("There is repair work to carry out and also the men's wages to consider. For the paltry sum of 5 Gold pieces, I think we offer a great service.") choice { shop() bye() @@ -184,14 +184,14 @@ class Shantay( } private fun ChoiceOption.bye() { - option("I must be going.") { - npc("So long...") + option("I must be going.") { + npc("So long...") } } private fun ChoiceOption.shop() { - option("Can I see what you have to sell please?") { - npc("Absolutely Effendi!") + option("Can I see what you have to sell please?") { + npc("Absolutely Effendi!") open("shantay_pass_shop") } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/ShantayGuard.kt b/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/ShantayGuard.kt index 5fca37ae4b..f197eb4cc6 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/ShantayGuard.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/ShantayGuard.kt @@ -1,7 +1,7 @@ package content.area.kharidian_desert.shantay_pass import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import world.gregs.voidps.engine.Script @@ -14,22 +14,22 @@ import world.gregs.voidps.type.Tile class ShantayGuard(val objects: GameObjects) : Script { init { npcOperate("Talk-to", "shantay_guard") { - npc("Go talk to Shantay. I'm on duty and I don't have time to talk to the likes of you!") + npc("Go talk to Shantay. I'm on duty and I don't have time to talk to the likes of you!") message("The guard seems quite bad tempered, probably from having to wear heavy armour in this intense heat.") } npcOperate("Talk-to", "shantay_guard_still") { npc("Hello there! What can I do for you?") choice { - option("I'd like to go into the desert please.") { + option("I'd like to go into the desert please.") { if (!inventory.contains("shantay_pass")) { - npc("You need a Shantay pass to get through this gate. See Shantay, he will sell you one for a very reasonable price.") + npc("You need a Shantay pass to get through this gate. See Shantay, he will sell you one for a very reasonable price.") return@option } interactObject(objects[Tile(3303, 3116), "shantay_pass"]!!, "Go-through") } - option("Nothing thanks.") { - npc("Okay then, have a nice day.") + option("Nothing thanks.") { + npc("Okay then, have a nice day.") } } } diff --git a/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/ShantayPass.kt b/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/ShantayPass.kt index e725751bb5..52cbf06142 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/ShantayPass.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/shantay_pass/ShantayPass.kt @@ -1,7 +1,7 @@ package content.area.kharidian_desert.shantay_pass import content.entity.player.bank.bank -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.statement @@ -21,7 +21,7 @@ class ShantayPass : Script { val exit = tile.y <= 3116 if (!exit) { if (!inventory.contains("shantay_pass")) { - npc("shantay_guard_still", "You need a Shantay pass to get through this gate. See Shantay, he will sell you one for a very reasonable price.") + npc("shantay_guard_still", "You need a Shantay pass to get through this gate. See Shantay, he will sell you one for a very reasonable price.") return@objectOperate } if (!warning("shantay_pass")) { diff --git a/game/src/main/kotlin/content/area/kharidian_desert/sophanem/GuardianMummy.kt b/game/src/main/kotlin/content/area/kharidian_desert/sophanem/GuardianMummy.kt index d1afd94304..8b74efe5e5 100644 --- a/game/src/main/kotlin/content/area/kharidian_desert/sophanem/GuardianMummy.kt +++ b/game/src/main/kotlin/content/area/kharidian_desert/sophanem/GuardianMummy.kt @@ -1,9 +1,9 @@ package content.area.kharidian_desert.sophanem +import content.entity.player.dialogue.Confused +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Pleased import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Uncertain import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -53,23 +53,23 @@ class GuardianMummy : Script { } suspend fun Player.notAnother() { - npc("*sigh* Not another one.") + npc("*sigh* Not another one.") player("Another what?") - npc("Another 'archaeologist'.") - npc("I'm not going to let you plunder my master's tomb you know.") - player("That's a shame, have you got anything else I could do while I'm here?") - npc("If it will keep you out of mischief I suppose I could set something up for you...") - npc("I have a few rooms full of some things you humans might consider valuable, do you want to give it a go?") + npc("Another 'archaeologist'.") + npc("I'm not going to let you plunder my master's tomb you know.") + player("That's a shame, have you got anything else I could do while I'm here?") + npc("If it will keep you out of mischief I suppose I could set something up for you...") + npc("I have a few rooms full of some things you humans might consider valuable, do you want to give it a go?") playPyramidPlunder() } suspend fun Player.playPyramidPlunder() { choice("Play the 'Pyramid Plunder' minigame?") { - option("That sounds like fun, what do I do?") { + option("That sounds like fun, what do I do?") { soundsLikeFun() } - option("Not right now") { - npc("Well, get out of here then.") + option("Not right now") { + npc("Well, get out of here then.") } option("I know what I'm doing let's get on with it.") { iKnowWhatImDoing() @@ -85,35 +85,35 @@ class GuardianMummy : Script { } suspend fun Player.itIsDone() { - npc("It is done.") + npc("It is done.") playPyramidPlunder() } suspend fun Player.sceptreRecharging() { - player("This sceptre seems to have run out of charges.") - npc("You shouldn't have that thing in the first place, thief!") - player("If I gave you back some of the artefacts I've taken from the tomb, would you recharge the sceptre for me.") - npc("*sigh* Oh alright. But only if the sceptre is fully empty, I'm not wasting the King's magic...") + player("This sceptre seems to have run out of charges.") + npc("You shouldn't have that thing in the first place, thief!") + player("If I gave you back some of the artefacts I've taken from the tomb, would you recharge the sceptre for me.") + npc("*sigh* Oh alright. But only if the sceptre is fully empty, I'm not wasting the King's magic...") choice("Recharge the sceptre with...") { option("Gold artefacts?") { if (inventory.chargeSceptre(6, gold)) { statement("You recharge your sceptre with gold artefacts.") } else { - npc("You need to have 6 gold artefacts to recharge your sceptre.") + npc("You need to have 6 gold artefacts to recharge your sceptre.") } } option("Stone artefacts?") { if (inventory.chargeSceptre(12, stone)) { statement("You recharge your sceptre with stone artefacts.") } else { - npc("You need to have 12 stone artefacts to recharge your sceptre.") + npc("You need to have 12 stone artefacts to recharge your sceptre.") } } option("Pottery and Ivory artefacts?") { if (inventory.chargeSceptre(24, ivory)) { statement("You recharge your sceptre with stone artefacts.") } else { - npc("You need to have 24 pottery or ivory artefacts to recharge your sceptre.") + npc("You need to have 24 pottery or ivory artefacts to recharge your sceptre.") } } option("Actually, I'm more interested in plundering the tombs.") { @@ -125,8 +125,8 @@ class GuardianMummy : Script { suspend fun Player.sceptreDischarging() { val count = inventory.items.count { it.id.startsWith("pharaohs_sceptre_") } if (count < 0) { - player("I want to charge my sceptre.") - npc("What sceptre?") + player("I want to charge my sceptre.") + npc("What sceptre?") player("Er... I don't know.") npc("Right...") return @@ -136,7 +136,7 @@ class GuardianMummy : Script { discharge(index) return } - npc("If I must. You have $count sceptres with charges. Do you want them all emptied?") + npc("If I must. You have $count sceptres with charges. Do you want them all emptied?") choice { option("Yes, uncharge all my sceptres.") { val success = inventory.transaction { @@ -168,26 +168,26 @@ class GuardianMummy : Script { } suspend fun Player.soundsLikeFun() { - npc("You have five minutes to explore the treasure rooms and collect as many artefacts as you can.") - npc("The artefacts are in the urns, chests and sarcophagi found in each room.") - npc("There are eight treasure rooms, each subsequent room requires higher thieving skills to both enter the room and thieve from the urns and other containers.") - npc("The rewards also become more lucrative the further into the tomb you go.") - npc("You will also have to deactivate a trap in order to enter the main part of each room.") - npc("When you want to move onto the next room you need to find the correct door first.") - npc("There are four possible exits, you must open the door before finding out whether it is the exit or not.") - npc("Opening the doors require picking their locks. Having a lockpick will make this easier.") + npc("You have five minutes to explore the treasure rooms and collect as many artefacts as you can.") + npc("The artefacts are in the urns, chests and sarcophagi found in each room.") + npc("There are eight treasure rooms, each subsequent room requires higher thieving skills to both enter the room and thieve from the urns and other containers.") + npc("The rewards also become more lucrative the further into the tomb you go.") + npc("You will also have to deactivate a trap in order to enter the main part of each room.") + npc("When you want to move onto the next room you need to find the correct door first.") + npc("There are four possible exits, you must open the door before finding out whether it is the exit or not.") + npc("Opening the doors require picking their locks. Having a lockpick will make this easier.") anymoreQuestions("How do I get the artefacts?") } suspend fun Player.anymoreQuestions(option: String) { choice("Do you have any more questions?") { - option("How do I leave the game?") { + option("How do I leave the game?") { howDoILeave() } - option(option) { + option(option) { howToGetArtefacts() } - option("What do I do with the artefacts I collect?") { + option("What do I do with the artefacts I collect?") { whatToDoWithArtefacts() } option("I'm ready to give it a go now.") { @@ -202,41 +202,41 @@ class GuardianMummy : Script { } suspend fun Player.howDoILeave() { - npc("If at any point you decide you need to leave just use a glowing door.") - npc("The game will end and you will be taken out of the pyramid.") + npc("If at any point you decide you need to leave just use a glowing door.") + npc("The game will end and you will be taken out of the pyramid.") anymoreQuestions("What about the chests and sarcophagi?") } suspend fun Player.howToGetArtefacts() { - npc("The artefacts are in the urns, chests and sarcophagi.") - npc("Urns contain snakes that guard them.") - npc("The sarcophagi take some strength to open. They take a while to open.") - npc("Of course, Mummies have been known to take a nap in the sarcophagi, so beware.") - npc("The golden chests generally contain better artefacts, but are also trapped with scarabs!") + npc("The artefacts are in the urns, chests and sarcophagi.") + npc("Urns contain snakes that guard them.") + npc("The sarcophagi take some strength to open. They take a while to open.") + npc("Of course, Mummies have been known to take a nap in the sarcophagi, so beware.") + npc("The golden chests generally contain better artefacts, but are also trapped with scarabs!") anymoreQuestions("What about the chests and sarcophagi?") } suspend fun Player.whatToDoWithArtefacts() { - npc("There are a number of different artefacts, of three main types. The least valuable are the pottery statuettes and scarabs, and the ivory combs.") - npc("Next are the stone scarabs, statuettes and seals, and finally the gold versions of those artefacts.") - npc("They are not old, but are well made.") - player("What do I do with artefacts once I've collected them?") - npc("That Simon Simpleton, I mean Templeton, will probably give you some money for them.") - npc("He couldn't spot a real artefact if it came up to him and bit him in the face.") - npc("He usually slinks about near the pyramid north-east of Sophanem. I expect he's trying to get some poor fools to steal things from that pyramid as well.") - npc("I expect he'll give you more gold for some than others.") + npc("There are a number of different artefacts, of three main types. The least valuable are the pottery statuettes and scarabs, and the ivory combs.") + npc("Next are the stone scarabs, statuettes and seals, and finally the gold versions of those artefacts.") + npc("They are not old, but are well made.") + player("What do I do with artefacts once I've collected them?") + npc("That Simon Simpleton, I mean Templeton, will probably give you some money for them.") + npc("He couldn't spot a real artefact if it came up to him and bit him in the face.") + npc("He usually slinks about near the pyramid north-east of Sophanem. I expect he's trying to get some poor fools to steal things from that pyramid as well.") + npc("I expect he'll give you more gold for some than others.") anymoreQuestionsSceptre() } suspend fun Player.anymoreQuestionsSceptre() { choice("Do you have any more questions?") { - option("How do I leave the game?") { + option("How do I leave the game?") { howDoILeave() } - option("What about the chests and sarcophagi?") { + option("What about the chests and sarcophagi?") { howToGetArtefacts() } - option("What's this I hear about a Golden Sceptre?") { + option("What's this I hear about a Golden Sceptre?") { whereDidYouHearAboutThat() } option("I'm ready to give it a go now.") { @@ -253,12 +253,12 @@ class GuardianMummy : Script { } suspend fun Player.whereDidYouHearAboutThat() { - npc("Where did you hear about that?") - player("I couldn't possibly say.") - npc("It's the only genuinely valuable artefact in this place.") - npc("It links all the great pyramids in the area, and can be used to travel between them.") - npc("It requires charging with offerings of fine craftsmanship, that's why we have so many spare artefacts lying around.") - npc("Anyway, I won't let you get your grubby little hands on the sceptre.") + npc("Where did you hear about that?") + player("I couldn't possibly say.") + npc("It's the only genuinely valuable artefact in this place.") + npc("It links all the great pyramids in the area, and can be used to travel between them.") + npc("It requires charging with offerings of fine craftsmanship, that's why we have so many spare artefacts lying around.") + npc("Anyway, I won't let you get your grubby little hands on the sceptre.") anymoreQuestions("What about the chests and sarcophagi?") } diff --git a/game/src/main/kotlin/content/area/misthalin/barbarian_village/ChieftainGunthor.kt b/game/src/main/kotlin/content/area/misthalin/barbarian_village/ChieftainGunthor.kt index be4baeef8b..699932d023 100644 --- a/game/src/main/kotlin/content/area/misthalin/barbarian_village/ChieftainGunthor.kt +++ b/game/src/main/kotlin/content/area/misthalin/barbarian_village/ChieftainGunthor.kt @@ -29,10 +29,10 @@ class ChieftainGunthor : Script { suspend fun Player.meetChieftain() { npc("Begone, outerlander! Your kind are not welcome here!") choice { - option("I need to speak with you, chieftain.") { + option("I need to speak with you, chieftain.") { makeItShort() } - option("Be quiet and listen.") { + option("Be quiet and listen.") { makeItShort() } } @@ -40,13 +40,13 @@ class ChieftainGunthor : Script { suspend fun Player.makeItShort() { npc("Make it short.") - player("Your daughter seeks permission to court an outerlander.") + player("Your daughter seeks permission to court an outerlander.") npc("WHAT??") choice { - option("Your daughter seeks permission to court an outerlander.") { + option("Your daughter seeks permission to court an outerlander.") { barbarians() } - option("Are you deaf?") { + option("Are you deaf?") { barbarians() } } @@ -55,10 +55,10 @@ class ChieftainGunthor : Script { suspend fun Player.barbarians() { npc("Do you have ANY idea who we are?") choice { - option("You're barbarians.") { + option("You're barbarians.") { waitAMoment() } - option("You're a tribe of primitives.") { + option("You're a tribe of primitives.") { waitAMoment() } } @@ -67,10 +67,10 @@ class ChieftainGunthor : Script { suspend fun Player.waitAMoment() { npc("We are storm that sweeps from the mountains! We are the scourge of these soft lands!") choice { - option("Please wait a moment.") { + option("Please wait a moment.") { campOfWar() } - option("Are you finished?") { + option("Are you finished?") { campOfWar() } } @@ -99,12 +99,12 @@ class ChieftainGunthor : Script { suspend fun Player.seeHimTry() { choice { - option("I'm going!") { + option("I'm going!") { } - option("I'd like to see him try.") { + option("I'd like to see him try.") { npc("haakon_the_champion", "Come here and say that to my face, outerlander!") } - option("I'm going to challenge him right now!") { + option("I'm going to challenge him right now!") { npc("haakon_the_champion", "Come here and say that to my face, outerlander!") } } diff --git a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Dororan.kt b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Dororan.kt index 6abb3650d2..730ec9e9e8 100644 --- a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Dororan.kt +++ b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Dororan.kt @@ -39,7 +39,7 @@ class Dororan : Script { "started" -> started() "love_poem", "jeffery_ring" -> lovePoem() "engrave" -> { - npc("Is it done? Have you created a work of magnificent beauty?") + npc("Is it done? Have you created a work of magnificent beauty?") engraveMenu() } "engraved_ring" -> engravedRing() @@ -74,17 +74,17 @@ class Dororan : Script { if (get("dororan_ruby_bracelet", 0) != 1 || get("dororan_dragonstone_necklace", 0) != 1 || get("dororan_onyx_amulet", 0) != 1) { choice { if (get("dororan_ruby_bracelet", 0) != 1) { - option("What is it?") { + option("What is it?") { npc("I have some more jewellery for Gudrun and I need your help to engrave them.") choice { - option("What's the first piece?") { + option("What's the first piece?") { npc("A magnificent ruby bracelet.") npc("'With beauty blessed.'") choice { option("Engrave the bracelet.") { if (levels.get(Skill.Crafting) < 72) { item("ruby_bracelet", 400, "you need a Crafting level of at least 42 to engrave the ruby bracelet.") - npc("That's a shame. Maybe you can try again another time.") + npc("That's a shame. Maybe you can try again another time.") return@option } anim("engrave") @@ -94,27 +94,27 @@ class Dororan : Script { npc("Magnificent! Outstanding! I will give this to her immediately. Please, come back when you have time") } option("Don't engrave the bracelet.") { - npc("That's a shame. Maybe you can try again another time.") + npc("That's a shame. Maybe you can try again another time.") } } } - option("I want to talk about something else.") { + option("I want to talk about something else.") { npc("What can I do for you?") someThingElse() } - option("I don't have time right now.") { + option("I don't have time right now.") { } } } } else if (get("dororan_dragonstone_necklace", 0) != 1) { - option("What's this one?") { + option("What's this one?") { npc("A fine dragonstone necklace.") npc("There's not much room...how about just 'Gudrun'?") choice { option("Engrave the necklace.") { if (levels.get(Skill.Crafting) < 42) { item("dragonstone_necklace", 400, "you need a Crafting level of at least 72 to engrave the dragonstone necklace.") - npc("That's a shame. Maybe you can try again another time.") + npc("That's a shame. Maybe you can try again another time.") return@option } anim("engrave") @@ -124,19 +124,19 @@ class Dororan : Script { npc("Another astonishing piece of work! Please, come back later to see if I have other crafting tasks.") } option("Don't engrave the necklace.") { - npc("That's a shame. Maybe you can try again another time.") + npc("That's a shame. Maybe you can try again another time.") } } } } else if (get("dororan_onyx_amulet", 0) != 1) { - option("What is it?") { + option("What is it?") { npc("An onyx amulet!") npc("'The most beautiful girl in the room.'") choice { option("Engrave the amulet.") { if (levels.get(Skill.Crafting) < 90) { item("onyx_amulet", 400, "you need a Crafting level of at least 90 to engrave the onyx amulet.") - npc("That's a shame. Maybe you can try again another time.") + npc("That's a shame. Maybe you can try again another time.") return@option } anim("engrave") @@ -146,16 +146,16 @@ class Dororan : Script { npc("That's fantastic! Excellent work.") } option("Don't engrave the amulet.") { - npc("That's a shame. Maybe you can try again another time.") + npc("That's a shame. Maybe you can try again another time.") } } } } - option("I want to talk about something else.") { + option("I want to talk about something else.") { npc("What can I do for you?") someThingElse() } - option("I don't have time right now.") { + option("I don't have time right now.") { } } } else { @@ -166,8 +166,8 @@ class Dororan : Script { suspend fun Player.poem() { if (!ownsItem("gunnars_ground")) { - player("Er, I lost the poem.") - npc("Luckily for you, I wrote a second draft.") + player("Er, I lost the poem.") + npc("Luckily for you, I wrote a second draft.") if (inventory.isFull()) { statement("You don't have room for the poem. Speak to Dororan again when you have room.") return @@ -175,21 +175,21 @@ class Dororan : Script { inventory.add("gunnars_ground") anim("pocket_item") item("gunnars_ground", 600, "Dororan gives you another poem.") - npc("Try not to lose this one.") + npc("Try not to lose this one.") return } npc("My poem is terrible, isn't it? The Chieftain will probably have me killed.") choice { - option("Everything will work out.") - option("I expect so.") + option("Everything will work out.") + option("I expect so.") } } suspend fun Player.poemDone() { - npc("At last! It's done! It's finished! My finest work! Thank you so much for your help!") + npc("At last! It's done! It's finished! My finest work! Thank you so much for your help!") player("Are you ready to present it to Chieftain?!") - npc("What? No! I'm a writer, not a performer.") - npc("I think the Chieftain would respond best to one of his people. Perhaps you could ask Gudrun to recite it to hew father?") + npc("What? No! I'm a writer, not a performer.") + npc("I think the Chieftain would respond best to one of his people. Perhaps you could ask Gudrun to recite it to hew father?") if (inventory.isFull()) { statement("You don't have room for the poem. Speak to Dororan again when you have room.") return @@ -199,8 +199,8 @@ class Dororan : Script { anim("pocket_item") item("gunnars_ground", 400, "Dororan hands you the poem.") choice { - option("I'll get right on it.") - option("This had better be the last time.") + option("I'll get right on it.") + option("This had better be the last time.") } } @@ -219,19 +219,19 @@ class Dororan : Script { suspend fun Player.phraseMenu() { choice { - option("Threw the ball.") { - npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") + option("Threw the ball.") { + npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") loreMenu() } - option("Ate a tasty pie.") { - npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") + option("Ate a tasty pie.") { + npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") fightMenu() } - option("Schemed intently.") { - npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") + option("Schemed intently.") { + npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") fightMenu() } - option("Went for a walk.") { + option("Went for a walk.") { npc("that doesn't really fit. It needs to be three syllables long.") threeSyllablesMenu() } @@ -240,20 +240,20 @@ class Dororan : Script { suspend fun Player.threeSyllablesMenu() { choice { - option("Picked a rose.") { - npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") + option("Picked a rose.") { + npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") loreMenu() } - option("Made a raft.") { - npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") + option("Made a raft.") { + npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") loreMenu() } - option("Learned to soar.") { - npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") + option("Learned to soar.") { + npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") fightMenu() } - option("Cleaned the floor.") { - npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") + option("Cleaned the floor.") { + npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") fightMenu() } option("More words") { @@ -264,19 +264,19 @@ class Dororan : Script { suspend fun Player.threeSyllablesMenu2() { choice { - option("Heard a song.") { - npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") + option("Heard a song.") { + npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") fightMenu() } - option("Picked a flight.") { - npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") + option("Picked a flight.") { + npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") loreMenu() } - option("Swept to war.") { + option("Swept to war.") { sweptToWar() } - option("Tamed a shrew.") { - npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") + option("Tamed a shrew.") { + npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") loreMenu() } option("More words") { @@ -287,19 +287,19 @@ class Dororan : Script { suspend fun Player.fightMenu() { choice { - option("Picked a fight.") { - npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") + option("Picked a fight.") { + npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") loreMenu() } - option("Started a war.") { + option("Started a war.") { npc("that doesn't really fit. It needs to be three syllables long.") threeSyllablesMenu() } - option("Marched to battle.") { - npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") + option("Marched to battle.") { + npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") loreMenu() } - option("Settled the score.") { + option("Settled the score.") { npc("that doesn't really fit. It needs to be three syllables long.") threeSyllablesMenu() } @@ -311,18 +311,18 @@ class Dororan : Script { suspend fun Player.fightMenu2() { choice { - option("Swept to war.") { + option("Swept to war.") { sweptToWar() } - option("Loosed a mighty roar.") { + option("Loosed a mighty roar.") { npc("that doesn't really fit. It needs to be three syllables long.") threeSyllablesMenu() } - option("Initiated a battle.") { - npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") + option("Initiated a battle.") { + npc("That doesn't really fit. It needs tp rhyme with the word 'lore'.") loreMenu() } - option("Commenced fisticuffs.") { + option("Commenced fisticuffs.") { npc("that doesn't really fit. It needs to be three syllables long.") threeSyllablesMenu() } @@ -334,20 +334,20 @@ class Dororan : Script { suspend fun Player.loreMenu() { choice { - option("Started a war.") { + option("Started a war.") { npc("that doesn't really fit. It needs to be three syllables long.") threeSyllablesMenu() } - option("Cleaned the floor.") { - npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") + option("Cleaned the floor.") { + npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") fightMenu() } - option("Loosed a mighty roar.") { + option("Loosed a mighty roar.") { npc("that doesn't really fit. It needs to be three syllables long.") threeSyllablesMenu() } - option("Shut the door.") { - npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") + option("Shut the door.") { + npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") fightMenu() } option("More words") { @@ -358,18 +358,18 @@ class Dororan : Script { suspend fun Player.loreMenu2() { choice { - option("Learned to soar") { - npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") + option("Learned to soar") { + npc("that doesn't really fit. It needs to imply some aggressive action, like 'started a fight'.") fightMenu() } - option("Settled the score.") { + option("Settled the score.") { npc("that doesn't really fit. It needs to be three syllables long.") threeSyllablesMenu() } - option("Swept to war.") { + option("Swept to war.") { sweptToWar() } - option("Counted to flour.") { + option("Counted to flour.") { npc("that doesn't really fit. It needs to be three syllables long.") threeSyllablesMenu() } @@ -387,22 +387,22 @@ class Dororan : Script { } suspend fun Player.morePoem() { - npc("The poem still isn't finished, though. I have another missing word. Give me another one; anything, to get me started.") + npc("The poem still isn't finished, though. I have another missing word. Give me another one; anything, to get me started.") choice { - option("Stockade.") { - npc("That doesn't really fit. It needs to be one syllable long.") + option("Stockade.") { + npc("That doesn't really fit. It needs to be one syllable long.") syllablePoemMenu() } - option("Longsword.") { - npc("That doesn't really fit. It needs to mean something like 'danger'.") + option("Longsword.") { + npc("That doesn't really fit. It needs to mean something like 'danger'.") dangerPoemMenu() } - option("Dungeoneering.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Dungeoneering.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } - option("Grass.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Grass.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } } @@ -410,20 +410,20 @@ class Dororan : Script { suspend fun Player.syllablePoemMenu() { choice { - option("Storm.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Storm.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } - option("Wet.") { - npc("That doesn't really fit. It needs to mean something like 'danger'.") + option("Wet.") { + npc("That doesn't really fit. It needs to mean something like 'danger'.") dangerPoemMenu() } - option("Hat.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Hat.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } - option("Length.") { - npc("That doesn't really fit. It needs to mean something like 'danger'.") + option("Length.") { + npc("That doesn't really fit. It needs to mean something like 'danger'.") dangerPoemMenu() } option("More words.") { @@ -434,19 +434,19 @@ class Dororan : Script { suspend fun Player.syllablePoemMenu2() { choice { - option("Debt.") { - npc("That doesn't really fit. It needs to mean something like 'danger'.") + option("Debt.") { + npc("That doesn't really fit. It needs to mean something like 'danger'.") dangerPoemMenu() } - option("Threat.") { + option("Threat.") { threat() } - option("Axe.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Axe.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } - option("Risk.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Risk.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } option("More words.") { @@ -457,20 +457,20 @@ class Dororan : Script { suspend fun Player.rhymePoemMenu() { choice { - option("Debt.") { - npc("That doesn't really fit. It needs to mean something like 'danger'.") + option("Debt.") { + npc("That doesn't really fit. It needs to mean something like 'danger'.") dangerPoemMenu() } - option("Sweat.") { - npc("That doesn't really fit. It needs to mean something like 'danger'.") + option("Sweat.") { + npc("That doesn't really fit. It needs to mean something like 'danger'.") dangerPoemMenu() } - option("Upset.") { - npc("That doesn't really fit. It needs to be one syllable long.") + option("Upset.") { + npc("That doesn't really fit. It needs to be one syllable long.") syllablePoemMenu() } - option("Brunette.") { - npc("That doesn't really fit. It needs to be one syllable long.") + option("Brunette.") { + npc("That doesn't really fit. It needs to be one syllable long.") syllablePoemMenu() } option("More words.") { @@ -481,19 +481,19 @@ class Dororan : Script { suspend fun Player.rhymePoemMenu2() { choice { - option("Threat.") { + option("Threat.") { threat() } - option("Regret.") { - npc("That doesn't really fit. It needs to be one syllable long.") + option("Regret.") { + npc("That doesn't really fit. It needs to be one syllable long.") syllablePoemMenu() } - option("Set.") { - npc("That doesn't really fit. It needs to mean something like 'danger'.") + option("Set.") { + npc("That doesn't really fit. It needs to mean something like 'danger'.") dangerPoemMenu() } - option("Wet.") { - npc("That doesn't really fit. It needs to mean something like 'danger'.") + option("Wet.") { + npc("That doesn't really fit. It needs to mean something like 'danger'.") dangerPoemMenu() } option("More words.") { @@ -504,20 +504,20 @@ class Dororan : Script { suspend fun Player.dangerPoemMenu() { choice { - option("Risk.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Risk.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } - option("Crisis.") { - npc("That doesn't really fit. It needs to be one syllable long.") + option("Crisis.") { + npc("That doesn't really fit. It needs to be one syllable long.") syllablePoemMenu() } - option("Peril.") { - npc("That doesn't really fit. It needs to be one syllable long.") + option("Peril.") { + npc("That doesn't really fit. It needs to be one syllable long.") syllablePoemMenu() } - option("Menace.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Menace.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } option("More words.") { @@ -528,19 +528,19 @@ class Dororan : Script { suspend fun Player.dangerPoemMenu2() { choice { - option("Upset.") { - npc("That doesn't really fit. It needs to be one syllable long.") + option("Upset.") { + npc("That doesn't really fit. It needs to be one syllable long.") syllablePoemMenu() } - option("Storm.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Storm.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } - option("Hazard.") { - npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") + option("Hazard.") { + npc("That doesn't really fit. It needs to rhyme with the word 'yet'.") rhymePoemMenu() } - option("Threat.") { + option("Threat.") { threat() } option("More words.") { @@ -551,33 +551,33 @@ class Dororan : Script { suspend fun Player.aboutRing() { npc("Did you give Gudrun the ring? What did she think? Did it capture her heart?") - player("There's a problem.") + player("There's a problem.") npc("It's because I'm a dwarf, isn't it? Or because I'm a poet? I knew it! I'm completely worthless!") choice { - option("No, she liked the ring.") { + option("No, she liked the ring.") { npc("Oh! Then what's the problem?") mostCruel() } - option("Would you be quiet for a moment?") { - npc("Sorry!") + option("Would you be quiet for a moment?") { + npc("Sorry!") mostCruel() } } } suspend fun Player.mostCruel() { - player("Gudrun's father won't let her be with someone from outside the village.") + player("Gudrun's father won't let her be with someone from outside the village.") npc("Most cruel is fate! Most cruel! Why not?") - player("He's obsessed with the stories of his ancestors. He says his people are still at war.") - npc("This village has stood for a hundred years!") - player("I heard him arguing with one of the others. He says he honours his ancestors this way.") + player("He's obsessed with the stories of his ancestors. He says his people are still at war.") + npc("This village has stood for a hundred years!") + player("I heard him arguing with one of the others. He says he honours his ancestors this way.") npc("Really? Interesting.") choice { - option("Do you know a lot about the village's history?") { - npc("Not really. I talked with Hunding, who guards this tower here.") + option("Do you know a lot about the village's history?") { + npc("Not really. I talked with Hunding, who guards this tower here.") anyIdea() } - option("What are we going to do?") { + option("What are we going to do?") { anyIdea() } } @@ -586,7 +586,7 @@ class Dororan : Script { suspend fun Player.anyIdea() { npc("An idea occurs to me, but it is hubris of the greatest magnitude.") player("What is it?") - npc("What if I wrote a poem? Forged a sweeping, historical epic? Crafted a tale to touch the chieftain's soul?") + npc("What if I wrote a poem? Forged a sweeping, historical epic? Crafted a tale to touch the chieftain's soul?") player("Will that work?") npc("To win the heart of my beloved from her father's iron grasp? It is worth it just to try!") open("fade_out") @@ -598,15 +598,15 @@ class Dororan : Script { } suspend fun Player.writePoem() { - npc("'Even the bloodiest rose must settle.' Mixed metaphor. Whats settles? Detritus. That's hardly flattering.") - npc("'Even the rolliest boulder...'") - player("How is the poem going?") + npc("'Even the bloodiest rose must settle.' Mixed metaphor. Whats settles? Detritus. That's hardly flattering.") + npc("'Even the rolliest boulder...'") + player("How is the poem going?") npc("I'm stuck! I'm a worthless wordsmith! My work is pointless! My life is pointless!") choice { - option("I'm sure that's not true.") { + option("I'm sure that's not true.") { stuckOnWord() } - option("What's the problem?") { + option("What's the problem?") { stuckOnWord() } } @@ -614,29 +614,29 @@ class Dororan : Script { suspend fun Player.stuckOnWord() { npc("I'm stuck on a word. By the colossus of King Alvis! I can't find the words!") - player("Maybe I can help. What sort of word?") - npc("I don't know! I'm not some kind of word scientist. I just feel it out as I go.") - npc("Maybe you could suggest some words to get me started. Then I can tell you more.") - player("Alright, How about, uh...") + player("Maybe I can help. What sort of word?") + npc("I don't know! I'm not some kind of word scientist. I just feel it out as I go.") + npc("Maybe you could suggest some words to get me started. Then I can tell you more.") + player("Alright, How about, uh...") poemMenu() } suspend fun Player.poemMenu() { choice { option("Cucumber.") { - npc("That doesn't really fit. It needs to be one syllable long.") + npc("That doesn't really fit. It needs to be one syllable long.") syllableMenu() } option("Monkey.") { - npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") + npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") wordsMenu() } option("Saradomin.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("Barbarian.") { - npc("That doesn't really fit. It needs to be one syllable long.") + npc("That doesn't really fit. It needs to be one syllable long.") syllableMenu() } } @@ -645,19 +645,19 @@ class Dororan : Script { suspend fun Player.syllableMenu() { choice { option("Ham.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("Fey.") { - npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") + npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") wordsMenu() } option("Jaunt.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("Grass.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("More words") { @@ -669,18 +669,18 @@ class Dororan : Script { suspend fun Player.syllableMenu2() { choice { option("Roam.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("Fish.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("Stray.") { stray() } option("Hay.") { - npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") + npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") wordsMenu() } option("More words") { @@ -692,19 +692,19 @@ class Dororan : Script { suspend fun Player.wordsMenu() { choice { option("Deviate.") { - npc("That doesn't really fit. It needs to be one syllable long.") + npc("That doesn't really fit. It needs to be one syllable long.") syllableMenu() } option("Roam.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("Veer.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("Traipse.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("More words") { @@ -716,15 +716,15 @@ class Dororan : Script { suspend fun Player.wordsMenu2() { choice { option("Meander.") { - npc("That doesn't really fit. It needs to be one syllable long.") + npc("That doesn't really fit. It needs to be one syllable long.") syllableMenu() } option("Astray.") { - npc("That doesn't really fit. It needs to be one syllable long.") + npc("That doesn't really fit. It needs to be one syllable long.") syllableMenu() } option("Jaunt.") { - npc("That doesn't really fit. It needs to rhyme with the word 'day'.") + npc("That doesn't really fit. It needs to rhyme with the word 'day'.") rhymeMenu() } option("Stray.") { @@ -739,19 +739,19 @@ class Dororan : Script { suspend fun Player.rhymeMenu() { choice { option("Lay.") { - npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") + npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") wordsMenu() } option("Beret.") { - npc("That doesn't really fit. It needs to be one syllable long.") + npc("That doesn't really fit. It needs to be one syllable long.") syllableMenu() } option("May.") { - npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") + npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") wordsMenu() } option("Hay.") { - npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") + npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") wordsMenu() } option("More words") { @@ -766,15 +766,15 @@ class Dororan : Script { stray() } option("Dismay.") { - npc("That doesn't really fit. It needs to be one syllable long.") + npc("That doesn't really fit. It needs to be one syllable long.") syllableMenu() } option("Tray.") { - npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") + npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") wordsMenu() } option("Fey.") { - npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") + npc("That doesn't really fit. It needs to mean something like 'wandering aimlessly'.") wordsMenu() } option("More words") { @@ -784,7 +784,7 @@ class Dororan : Script { } suspend fun Player.stray() { - npc("'And from his righteous purpose never stray.'") + npc("'And from his righteous purpose never stray.'") npc("That fits! It fits perfectly. Right meaning, right length, right rhyme. Well done!") set("gunnars_ground", "more_poem") morePoem() @@ -792,32 +792,32 @@ class Dororan : Script { suspend fun Player.meetChieftain() { npc("Did you give Gudrun the ring? What did she think?") - player("She liked it, but there's a problem. I'm dealing with it.") + player("She liked it, but there's a problem. I'm dealing with it.") npc("Oh no!") } suspend fun Player.showGudrun() { if (!ownsItem("dororans_engraved_ring")) { - npc("I know. I found it on the ground.") + npc("I know. I found it on the ground.") if (!giveRing()) { return } npc("Please try not to lose it again. It's very precious.") return } - npc("Please take the ring to Gudrun for me.") + npc("Please take the ring to Gudrun for me.") choice { - option("Where is she?") { - npc("Inside the barbarian village.") + option("Where is she?") { + npc("Inside the barbarian village.") } - option("I'm on it.") + option("I'm on it.") } } suspend fun Player.engravedRing() { - npc("Is it done? Have you created a work of magnificent beauty?") + npc("Is it done? Have you created a work of magnificent beauty?") if (!ownsItem("dororans_engraved_ring")) { - player("I did engrave it. but I seem to have lost it.") + player("I did engrave it. but I seem to have lost it.") npc("Is this it? I found it on the ground. You've done a great job on it.") if (!giveRing()) { return @@ -827,19 +827,19 @@ class Dororan : Script { return } choice { - option("It's come out perfectly.") { + option("It's come out perfectly.") { item("dororans_engraved_ring", 400, "You show Dororan the engraved ring.") npc("You're right! It's perfect!") npc("Will you do one more thing for me?") oneMoreThing() } - option("How does this look?") { + option("How does this look?") { item("dororans_engraved_ring", 400, "You show Dororan the engraved ring.") npc("Brilliant! That's perfect") npc("Will you do one more thing for me?") oneMoreThing() } - option("It's a complete disaster.") { + option("It's a complete disaster.") { item("dororans_engraved_ring", 400, "You show Dororan the engraved ring.") npc("I don't know what you mean: it's perfect!") npc("Will you do one more thing for me?") @@ -850,42 +850,42 @@ class Dororan : Script { suspend fun Player.oneMoreThing() { choice { - option("Of course.") { + option("Of course.") { veryWell() } - option("What now?") { + option("What now?") { veryWell() } } } suspend fun Player.veryWell() { - npc("I fear she will only judge this poor book by its cover. Would you take the ring to Gudrun for me?") + npc("I fear she will only judge this poor book by its cover. Would you take the ring to Gudrun for me?") choice { - option("Very well.") { + option("Very well.") { whereIsShe() } - option("I hope this is going somewhere.") { + option("I hope this is going somewhere.") { whereIsShe() } } } suspend fun Player.whereIsShe() { - npc("Please don't tell her I'm a dwarf just yet.") + npc("Please don't tell her I'm a dwarf just yet.") set("gunnars_ground", "show_gudrun") choice { - option("Where is she?") { - npc("Inside the barbarian village.") + option("Where is she?") { + npc("Inside the barbarian village.") } - option("I'm on it.") + option("I'm on it.") } } suspend fun Player.unstarted() { - npc("'My heart with burdens heavy does it lie.'") - npc("'For never did I...'") - npc("Um...") + npc("'My heart with burdens heavy does it lie.'") + npc("'For never did I...'") + npc("Um...") choice { option("'...ever learn to fly?'") { poet() @@ -900,7 +900,7 @@ class Dororan : Script { } suspend fun Player.started() { - npc("I need a ring of purest gold. Then we can engrave it with the words of my heart.") + npc("I need a ring of purest gold. Then we can engrave it with the words of my heart.") refreshQuestJournal() npc("Oh! I know the perfect place to get a gold ring.") npc("Edgeville's metalsmith, jeffery, labours like myself under the weight of unrequited love.") @@ -914,55 +914,55 @@ class Dororan : Script { anim("pocket_item") item("love_poem", 600, "Dororan gives you a poem.") choice { - option("I have some questions.") { + option("I have some questions.") { npc("By all means.") lovePoemMenu() } - option("I'll return with a ring from Jeffery.") + option("I'll return with a ring from Jeffery.") } } suspend fun Player.somethingElse() { choice { - option("I want to ask about something else.") { + option("I want to ask about something else.") { npc("By all means.") lovePoemMenu() } - option("I'll return with a ring from Jeffery.") + option("I'll return with a ring from Jeffery.") } } suspend fun Player.lovePoemMenu() { choice { - option("Does it have to be a ring from Jeffery?") { - npc("Yes! Jeffery's rings are timeless works of incomparable romantic splendour.") + option("Does it have to be a ring from Jeffery?") { + npc("Yes! Jeffery's rings are timeless works of incomparable romantic splendour.") somethingElse() } - option("Where is Edgeville?") { - npc("North of here, beyond a ruined fortress. It used to be a bustling den of cutthroats but it's quite quiet these days.") + option("Where is Edgeville?") { + npc("North of here, beyond a ruined fortress. It used to be a bustling den of cutthroats but it's quite quiet these days.") somethingElse() } - option("Why can't you go yourself?") { - npc("Some time ago, Jeffery asked me for advice in acting on his affections. I gave him the best advice that I could.") - npc("Things didn't work out very well for him. One thing let to another and now he no longer wishes to speak to me.") + option("Why can't you go yourself?") { + npc("Some time ago, Jeffery asked me for advice in acting on his affections. I gave him the best advice that I could.") + npc("Things didn't work out very well for him. One thing let to another and now he no longer wishes to speak to me.") somethingElse() } - option("Why can't you give a poem directly to Gudrun?") { - npc("These love poems are written in the Misthalinian style. A noble barbarian maiden would be insulted, not flattered.") + option("Why can't you give a poem directly to Gudrun?") { + npc("These love poems are written in the Misthalinian style. A noble barbarian maiden would be insulted, not flattered.") somethingElse() } - option("You want me to trick her into thinking you made the ring?") { - npc("Oh no, nothing like that! I have the words, I just need your help with the tools.") + option("You want me to trick her into thinking you made the ring?") { + npc("Oh no, nothing like that! I have the words, I just need your help with the tools.") somethingElse() } } } suspend fun Player.lovePoem() { - npc("'I await in eagerness for a loop of lustrous grandeur.' No, that just sounds ridiculous. Have you brought me a ring from Jeffery?'") + npc("'I await in eagerness for a loop of lustrous grandeur.' No, that just sounds ridiculous. Have you brought me a ring from Jeffery?'") if (!ownsItem("ring_from_jeffery") && quest("gunnars_ground") == "jeffery_ring") { player("I did get a ring from jeffery, but I seem to have lost it.") - npc("How careless!") + npc("How careless!") npc("Is it this one? I found it on the ground.") if (inventory.isFull()) { statement("You don't have room for the ring. Speak to Dororan again when you have room.") @@ -984,8 +984,8 @@ class Dororan : Script { } choice { if (!ownsItem("love_poem") && quest("gunnars_ground") == "love_poem") { - option("I lost the poem I was supposed to take to Jeffer.") { - npc("I'll give you another one.") + option("I lost the poem I was supposed to take to Jeffer.") { + npc("I'll give you another one.") if (inventory.isFull()) { statement("You don't have room for the poem. Speak to Dororan again when you have room.") return@option @@ -993,32 +993,32 @@ class Dororan : Script { inventory.add("love_poem") anim("pocket_item") item("love_poem", 600, "Dororan gives you another poem.") - npc("Try to be more careful with this one.") + npc("Try to be more careful with this one.") return@option } } - option("Where would I find one?") { - npc("Go north to Jeffery in Edgeville and trade the poem I gave you for a gold ring.") + option("Where would I find one?") { + npc("Go north to Jeffery in Edgeville and trade the poem I gave you for a gold ring.") choice { - option("I have some questions.") { + option("I have some questions.") { npc("By all means.") lovePoemMenu() } - option("I'll return with a ring from Jeffery.") { + option("I'll return with a ring from Jeffery.") { } } } - option("I'll return with a ring from Jeffery.") + option("I'll return with a ring from Jeffery.") } } suspend fun Player.engrave() { - npc("Now, would you engrave something on it for me?") + npc("Now, would you engrave something on it for me?") choice { - option("What do you want me to engrave?") { + option("What do you want me to engrave?") { engraveSomething() } - option("It had better be something impressive.") { + option("It had better be something impressive.") { engraveSomething() } } @@ -1028,13 +1028,13 @@ class Dororan : Script { npc("I've given this some thought.") npc("'Gudrun the Fair, Gudrun the Fiery.'") choice { - option("How do I engrave that?") { - npc("Just use a chisel on the gold ring.") + option("How do I engrave that?") { + npc("Just use a chisel on the gold ring.") set("gunnars_ground", "engrave") engraveMenu() } - option("That sounds simple enough.") { - npc("Just use a chisel on the gold ring.") + option("That sounds simple enough.") { + npc("Just use a chisel on the gold ring.") set("gunnars_ground", "engrave") engraveMenu() } @@ -1043,13 +1043,13 @@ class Dororan : Script { suspend fun Player.engraveMenu() { choice { - option("Do you have a chisel I can use?") { + option("Do you have a chisel I can use?") { haveChisel() } - option("Isn't a chisel a bit clumsy for that?") { + option("Isn't a chisel a bit clumsy for that?") { chiselBitClumsy() } - option("Not yet.") + option("Not yet.") } } @@ -1063,20 +1063,20 @@ class Dororan : Script { item("chisel", 600, "Dororan gives you a chisel.") } choice { - option("Isn't a chisel a bit clumsy for that?") { + option("Isn't a chisel a bit clumsy for that?") { chiselBitClumsy() } - option("Okay.") + option("Okay.") } } suspend fun Player.chiselBitClumsy() { npc("I've seen jewelcrafters use them for all sorts of precise work.") choice { - option("Do you have a chisel I can use?") { + option("Do you have a chisel I can use?") { haveChisel() } - option("Okay.") + option("Okay.") } } @@ -1084,15 +1084,15 @@ class Dororan : Script { npc("You're a poet too?") choice { option("Yes.") { - npc("Ah! Then I'm sure you can identify with the arduous state of my life.") + npc("Ah! Then I'm sure you can identify with the arduous state of my life.") identify() } - option("Maybe a bit.") { - npc("Oh. Then maybe you can identify with the arduous state of my life.") + option("Maybe a bit.") { + npc("Oh. Then maybe you can identify with the arduous state of my life.") identify() } - option("No.") { - npc("oh. How can I expect you to identify with the arduous state of my life?") + option("No.") { + npc("oh. How can I expect you to identify with the arduous state of my life?") identify() } } @@ -1101,13 +1101,13 @@ class Dororan : Script { suspend fun Player.identify() { npc("My heart is stricken with that most audacious of maladies!") choice { - option("Angina?") { + option("Angina?") { love() } - option("Hypertension?") { + option("Hypertension?") { love() } - option("Coclearabsidosis?") { + option("Coclearabsidosis?") { love() } } @@ -1115,35 +1115,35 @@ class Dororan : Script { suspend fun Player.love() { npc("Love!") - npc("The walls of my heart are besieged by love's armies, and those walls begin to tumble!") - npc("In the barbarian village lives the fairest maiden I have witnessed in all my life.") + npc("The walls of my heart are besieged by love's armies, and those walls begin to tumble!") + npc("In the barbarian village lives the fairest maiden I have witnessed in all my life.") choice { - option("What's so special about her?") { + option("What's so special about her?") { npc("I wouldn't know where to start! Her fiery spirit? Her proud bearing? Her winsome form?") choice { - option("But why is this making you sad?") { + option("But why is this making you sad?") { getToThePoint() } - option("What do you actually need?") { + option("What do you actually need?") { getToThePoint() } } } - option("Get to the point.") { + option("Get to the point.") { getToThePoint() } } } suspend fun Player.getToThePoint() { - npc("The people of this village value strength, stature and riches. I have none of these things.") - npc("My people are indomitable warriors, dripping with gold and precious gems, but not I.") - npc("I am not built for combat, and poetry has proven a life of poverty!") + npc("The people of this village value strength, stature and riches. I have none of these things.") + npc("My people are indomitable warriors, dripping with gold and precious gems, but not I.") + npc("I am not built for combat, and poetry has proven a life of poverty!") choice { - option("There must be something you can do.") { + option("There must be something you can do.") { helpMe() } - option("Not to mention low stature.") { + option("Not to mention low stature.") { npc("You see!") helpMe() } @@ -1152,7 +1152,7 @@ class Dororan : Script { suspend fun Player.helpMe() { npc("If Gudrun could ever love a dwarf, surely she would need to see my artisanry.") - npc("Will you help me? I am no crafter of metal.") + npc("Will you help me? I am no crafter of metal.") if (levels.get(Skill.Crafting) < 5) { statement("You need a Crafting level of at least 5 to start this quest.") } else { @@ -1169,15 +1169,15 @@ class Dororan : Script { suspend fun Player.someThingElse() { choice { - option("How are things?") { + option("How are things?") { npc("Every morning I wake to sunshine and birdsong! Life is marvellous!") elseGoodbye() } - option("This is a very large house.") { + option("This is a very large house.") { npc("I know! I don't know where Gunthor would have got such a thing. Maybe Gudrun has some idea.") elseGoodbye() } - option("I'd like to see the poem you wrote for Gunthor.") { + option("I'd like to see the poem you wrote for Gunthor.") { if (inventory.isFull()) { statement("You don't have room for the poem. Speak to Dororan again when you have room.") return@option @@ -1188,7 +1188,7 @@ class Dororan : Script { npc("There you go!") } if (!ownsItem("swanky_boots")) { - option("I seem to have mislaid my swanky boots.") { + option("I seem to have mislaid my swanky boots.") { npc("Not to worry! There are some left. Here you go.") if (inventory.isFull()) { statement("you don't have room for the boots.") @@ -1200,7 +1200,7 @@ class Dororan : Script { npc("Be more careful with these ones! I don't have an infinite supply.") } } - option("Goodbye.") { + option("Goodbye.") { npc("Goodbye!") } } @@ -1219,11 +1219,11 @@ class Dororan : Script { suspend fun Player.elseGoodbye() { choice { - option("I want to talk about something else.") { + option("I want to talk about something else.") { npc("What can I do for you?") someThingElse() } - option("Goodbye.") { + option("Goodbye.") { npc("Goodbye!") } } diff --git a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Gudrun.kt b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Gudrun.kt index 9be294f7cc..07da13dd79 100644 --- a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Gudrun.kt +++ b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Gudrun.kt @@ -45,11 +45,11 @@ class Gudrun : Script { "recital" -> recital() "poem" -> poem() "tell_dororan", "write_poem", "more_poem", "one_more_poem", "poem_done" -> { - npc("If there's anything you can do to make papa see sense, please do it.") + npc("If there's anything you can do to make papa see sense, please do it.") } "tell_gudrun" -> whatHeSay() "meet_chieftain" -> { - npc("If there's anything you can do to make papa see sense, please do it.") + npc("If there's anything you can do to make papa see sense, please do it.") meetChieftain() } "show_gudrun" -> showGudrun() @@ -62,11 +62,11 @@ class Gudrun : Script { "completed" -> { npc("Hello!") choice { - option("I want to ask you something.") { + option("I want to ask you something.") { npc("Of course, what is it?") menu() } - option("Just passing through.") { + option("Just passing through.") { npc("Goodbye!") } } @@ -79,10 +79,10 @@ class Gudrun : Script { suspend fun Player.recital() { npc("Are you ready for the recital?") choice { - option("Yes.") { + option("Yes.") { cutscene() } - option("Not right now.") { + option("Not right now.") { } } } @@ -108,26 +108,26 @@ class Gudrun : Script { turnCamera(cutscene.tile(3079, 3436), 230) delay(2) open("fade_in") - npc("dororan_cutscene", "How long have they been in there?") + npc("dororan_cutscene", "How long have they been in there?") anim("player_calm_doroan") choice { - option("They're just starting.") { + option("They're just starting.") { cutsceneMenu(cutscene) } - option("You're late.") { + option("You're late.") { cutsceneMenu(cutscene) } } } suspend fun Player.cutsceneMenu(cutscene: Cutscene) { - npc("dororan_cutscene", "This isn't going to work.") + npc("dororan_cutscene", "This isn't going to work.") choice { - option("Why's that?") { + option("Why's that?") { anim("player_calm_doroan") cutsceneMenu2(cutscene) } - option("You're so pessimistic.") { + option("You're so pessimistic.") { anim("player_calm_doroan") cutsceneMenu2(cutscene) } @@ -137,44 +137,44 @@ class Gudrun : Script { suspend fun Player.cutsceneMenu2(cutscene: Cutscene) { npc("dororan_cutscene", "What was I thinking? You should go in there and stop them before Gudrun makes a fool of herself.") choice { - option("Okay, I will.") { + option("Okay, I will.") { anim("player_calm_doroan") - npc("dororan_cutscene", "No! Wait, stay here, it's too late now. We'll just have to see how it turns out.") + npc("dororan_cutscene", "No! Wait, stay here, it's too late now. We'll just have to see how it turns out.") cutsceneMenu3(cutscene) } - option("Don't be silly.") { + option("Don't be silly.") { anim("player_calm_doroan") - npc("dororan_cutscene", "You're right, it's too late now. We'll just have to see how it turns out.") + npc("dororan_cutscene", "You're right, it's too late now. We'll just have to see how it turns out.") cutsceneMenu3(cutscene) } } } suspend fun Player.cutsceneMenu3(cutscene: Cutscene) { - npc("dororan_cutscene", "I can't hear what's happening. Can you hear what's happening?") + npc("dororan_cutscene", "I can't hear what's happening. Can you hear what's happening?") anim("player_calm_doroan") - player("Gunthor is laughing at something.") - npc("dororan_cutscene", "He's probably considering the various tortures he has planned for me.") + player("Gunthor is laughing at something.") + npc("dororan_cutscene", "He's probably considering the various tortures he has planned for me.") anim("player_calm_doroan") choice { - option("Why would he do that?") { + option("Why would he do that?") { cutsceneMenu4(cutscene) } - option("Now you're just being ridiculous.") { + option("Now you're just being ridiculous.") { cutsceneMenu4(cutscene) } } } suspend fun Player.cutsceneMenu4(cutscene: Cutscene) { - npc("dororan_cutscene", "The poem says you can honour your ancestors by settling peacefully on the land they conquered.") - npc("dororan_cutscene", "He'll probably just find it insulting.") + npc("dororan_cutscene", "The poem says you can honour your ancestors by settling peacefully on the land they conquered.") + npc("dororan_cutscene", "He'll probably just find it insulting.") anim("player_calm_doroan") choice { - option("Now's your chance to find out.") { + option("Now's your chance to find out.") { cutscenePart2(cutscene) } - option("You're doomed.") { + option("You're doomed.") { cutscenePart2(cutscene) } } @@ -198,7 +198,7 @@ class Gudrun : Script { turnCamera(cutscene.tile(3079, 3426), 150) delay(2) open("fade_in") - npc("dororan_cutscene", "I hope they at least give me a decent burial.") + npc("dororan_cutscene", "I hope they at least give me a decent burial.") gunthor.anim("gunthor_announcement") npc("chieftain_gunthor_cutscene", "Freemen! Freemen! I have an announcement!") npc("kjell_cutscene", "Hear the chieftain speak! Hear him!") @@ -222,9 +222,9 @@ class Gudrun : Script { val gudrunHugging = objects.add("gudrun_and_dororan", cutscene.tile(3082, 3426), shape = ObjectShape.CENTRE_PIECE_STRAIGHT, rotation = 1) open("fade_in") npc("gudrun_cutscene", "That was brilliant! I must know who wrote that poem.") - npc("dororan_cutscene", "Um, that would be me. Hello") + npc("dororan_cutscene", "Um, that would be me. Hello") npc("gudrun_cutscene", "That line about beauty was for me, wasn't it?") - npc("dororan_cutscene", "Uh, Yes.") + npc("dororan_cutscene", "Uh, Yes.") npc("gudrun_cutscene", "You're the mystery poet who sent me the gold ring!") npc("dororan_cutscene", "Sorry.") npc("gudrun_cutscene", "I had no idea dwarves could be so romantic! Come here! ") @@ -251,19 +251,19 @@ class Gudrun : Script { npc("Papa was so impressed by Dororan's poem, he's made him the village poet!") npc("dororan_after_cutscene2", "I'm more then a little surprised! He even gave me a house to live in!") npc("Our people's tradition is that the tribe provides lodging for the poet.") - npc("dororan_after_cutscene2", "It's huge!") + npc("dororan_after_cutscene2", "It's huge!") npc("It's not in the village. It's east of here: across the river and north of the road on the way to Varrock. It's a big house with roses outside.") npc("dororan_after_cutscene2", "I think Gunthor wants to keep me close, but not too close. Oh, I found something there for you!") npc("dororan_after_cutscene2", "Whoever lived there before left a dozen pairs of boots in the attic.") - npc("dororan_after_cutscene2", "I picked out a pair for you to thank you for all your help.") + npc("dororan_after_cutscene2", "I picked out a pair for you to thank you for all your help.") npc("dororan_after_cutscene2", "Underneath them all was this magic lamb. You should have it as well!") npc("We're going to the new house. You should come and visit!") npc("dororan_after_cutscene2", "Yes, we'll see you there!") choice { - option("I'll see you soon.") { + option("I'll see you soon.") { finishQuest() } - option("I'll consider dropping in.") { + option("I'll consider dropping in.") { finishQuest() } } @@ -274,31 +274,31 @@ class Gudrun : Script { npc("What have you got there?") player("Another gift from your mysterious suitor.") npc("A scroll?") - player("It's a poem; a story to convince your father to settle down. You could recite it to him.") + player("It's a poem; a story to convince your father to settle down. You could recite it to him.") npc("Let me see that.") anim("hand_over_item") item("gunnars_ground", 400, "You show Gudrun the poem") - npc("'Gunnar's Ground'") + npc("'Gunnar's Ground'") npc("Yes! I think this could work. I'll go to the longhouse right away!") inventory.remove("gunnars_ground") set("gunnars_ground", "recital") cutscene() } else { npc("What is it?") - player("I was meant to bring you a poem, but I seem to have mislaid it.") + player("I was meant to bring you a poem, but I seem to have mislaid it.") } } suspend fun Player.whatHeSay() { npc("What did he say?") - player("He mentioned someone called Gunnar, and that you should think about his feelings.") + player("He mentioned someone called Gunnar, and that you should think about his feelings.") npc("By the eyeballs of Guthix! Always Gunnar!") choice { - option("Who is Gunnar?") { + option("Who is Gunnar?") { npc("He was my great-grandpapa! He founded this village a hundred years ago.") fathersAttitude() } - option("What should we do now?") { + option("What should we do now?") { npc("I don't know. Maybe your mystery man has some ideas.") set("gunnars_ground", "tell_dororan") player("I'll ask him.") @@ -308,13 +308,13 @@ class Gudrun : Script { suspend fun Player.fathersAttitude() { choice { - option("You don't seem to share your father's attitude towards him.") { + option("You don't seem to share your father's attitude towards him.") { npc("I think there's a difference between respecting my ancestors and obsessing over them. Papa thinks whatever stupid war Gunnar fought is still going on.") npc("I don't know. Maybe your mystery man has some ideas.") set("gunnars_ground", "tell_dororan") player("I'll ask him.") } - option("What should we do now?") { + option("What should we do now?") { npc("I don't know. Maybe your mystery man has some ideas.") set("gunnars_ground", "tell_dororan") player("I'll ask him.") @@ -324,10 +324,10 @@ class Gudrun : Script { suspend fun Player.meetChieftain() { choice { - option("Where is he?") { - npc("In the longhouse at the north end of the village, drinking and shouting.") + option("Where is he?") { + npc("In the longhouse at the north end of the village, drinking and shouting.") } - option("I'll see what I can do.") { + option("I'll see what I can do.") { } } } @@ -345,7 +345,7 @@ class Gudrun : Script { npc("Stupid barbarian.") npc("Sorry about that, stranger. Did you want something?.") player("Are you Gudrun?") - npc("Yes.") + npc("Yes.") if (holdsItem("dororans_engraved_ring")) { player("This is for you.") anim("hand_over_item") @@ -353,25 +353,25 @@ class Gudrun : Script { npc("It's lovely! There's something written on it:") npc("'Gudrun the Fair, Gudrun the Fiery.' Is it about me?") choice { - option("Yes.") { + option("Yes.") { aboutRing() } - option("Presumable.") { + option("Presumable.") { aboutRing() } } } else { - player("I was meant to bring you a ring but I seem to have mislaid it.") + player("I was meant to bring you a ring but I seem to have mislaid it.") } } suspend fun Player.aboutRing() { npc("This is beautiful gift, stranger. Thank you.") choice { - option("The ring isn't from me!") { + option("The ring isn't from me!") { whoFrom() } - option("It should belong to someone just as beautiful.") { + option("It should belong to someone just as beautiful.") { npc("That's very flattering! You look like an adventurer, though?") thatsRight() } @@ -381,32 +381,32 @@ class Gudrun : Script { suspend fun Player.thatsRight() { choice { option("That's right.") { - npc("I'm sorry, I could never get involved with an adventurer.") + npc("I'm sorry, I could never get involved with an adventurer.") whoFrom() } - option("Some call me that.") { - npc("I'm sorry, I could never get involved with an adventurer.") + option("Some call me that.") { + npc("I'm sorry, I could never get involved with an adventurer.") whoFrom() } } } suspend fun Player.whoFrom() { - npc("Oh! Who is it from?") + npc("Oh! Who is it from?") choice { - option("A great poet.") { + option("A great poet.") { npc("A tale-teller? A bard? My people have great respect from poets.") outsideVillage() } - option("A secret admirer.") { + option("A secret admirer.") { npc("Does that really happen? How exciting!") outsideVillage() } - option("A short suitor.") { + option("A short suitor.") { npc("What?") - player("A petite paramour.") + player("A petite paramour.") npc("What?") - player("A concise courter!") + player("A concise courter!") outsideVillage() } } @@ -414,26 +414,26 @@ class Gudrun : Script { suspend fun Player.outsideVillage() { npc("This man, he is from outside the village?") - player("Yes.") + player("Yes.") npc("I would love to leave the village and be romanced by exotic, handsome, outerlander men. There's a problem, though.") player("What's that?") - npc("My papa, the chieftain. He would never let an outerlander pursue me.") + npc("My papa, the chieftain. He would never let an outerlander pursue me.") player("Why not?") - npc("He thinks all your people are our enemies.") + npc("He thinks all your people are our enemies.") choice { - option("So, you want me to talk to your father?") { + option("So, you want me to talk to your father?") { npc("I suppose that might work.") reasonWithHim() } - option("So, you want me to kill your father?") { - npc("What? no! Maybe...you could just try talking to him.") + option("So, you want me to kill your father?") { + npc("What? no! Maybe...you could just try talking to him.") reasonWithHim() } } } suspend fun Player.reasonWithHim() { - npc("I've tried to reason with him, but he's impossible! Maybe he'll listen to you. I know some of the others feel the same, but they're loyal to papa.") + npc("I've tried to reason with him, but he's impossible! Maybe he'll listen to you. I know some of the others feel the same, but they're loyal to papa.") set("gunnars_ground", "meet_chieftain") inventory.remove("dororans_engraved_ring") meetChieftain() @@ -445,13 +445,13 @@ class Gudrun : Script { npc("It's none of your business, Kjell! Just guard the hut!") npc("Sorry about that. Did you want something?") choice { - option("What is this place?") { + option("What is this place?") { whatIsThisPlace() } - option("Who are you?") { + option("Who are you?") { whoAreYou() } - option("Actually, no. Goodbye") { + option("Actually, no. Goodbye") { } } } @@ -469,9 +469,9 @@ class Gudrun : Script { suspend fun Player.whatIsThisPlace() { npc("Outerlanders call this the barbarian village. It doesn't have a name because...it's complicated.") - npc("if you want to know more, you should talk to Hunding. He's up in the tower at the east entrance.") + npc("if you want to know more, you should talk to Hunding. He's up in the tower at the east entrance.") choice { - option("Who are you?") { + option("Who are you?") { whoAreYou() } option("Goodbye.") { @@ -518,27 +518,27 @@ class Gudrun : Script { suspend fun Player.menu() { choice { - option("How are things with Dororan?") { + option("How are things with Dororan?") { npc("I really like him. he's funny, vulnerable and nothing like my people.") choice { - option("You're going to stay together then?") { + option("You're going to stay together then?") { npc("Of course!") elseGoodbye() } - option("I want to ask about something else.") { + option("I want to ask about something else.") { npc("Of course, what is it?") menu() } - option("Goodbye.") { + option("Goodbye.") { npc("Oh, Goodbye!") } } } - option("Where did this house come from?") { - npc("I don't know. Papa said the previous owners left it to him. I don't know why they would do that.") + option("Where did this house come from?") { + npc("I don't know. Papa said the previous owners left it to him. I don't know why they would do that.") theory() } - option("Goodbye.") { + option("Goodbye.") { npc("Oh, Goodbye!") } } @@ -546,15 +546,15 @@ class Gudrun : Script { suspend fun Player.theory() { choice { - option("Do you have a theory?") { + option("Do you have a theory?") { npc("Gunnar always said 'A warrior does not barter; he simply takes!'. I think papa bought the house, but doesn't want anyone to know.") elseGoodbye() } - option("I want to ask about something else.") { + option("I want to ask about something else.") { npc("Of course, what is it?") menu() } - option("Goodbye.") { + option("Goodbye.") { npc("Oh, Goodbye!") } } @@ -562,11 +562,11 @@ class Gudrun : Script { suspend fun Player.elseGoodbye() { choice { - option("I want to ask about something else.") { + option("I want to ask about something else.") { npc("Of course, what is it?") menu() } - option("Goodbye.") { + option("Goodbye.") { npc("Oh, Goodbye!") } } diff --git a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Haakon.kt b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Haakon.kt index 2c8fd3029a..f2fc854bfa 100644 --- a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Haakon.kt +++ b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Haakon.kt @@ -22,26 +22,26 @@ class Haakon : Script { suspend fun Player.menu(target: NPC) { npc("I am Haakon, champion of this village. Do you seek to challenge me?") choice { - option("I challenge you!") { + option("I challenge you!") { attack(target) } if (validStages.contains(quest("gunnars_ground"))) { - option("You argued with Gunthor.") { + option("You argued with Gunthor.") { npc("There is no argument. I honour my father and my ancestors.") choice { - option("Don't you want to settle permanently?") { + option("Don't you want to settle permanently?") { npc("You test my patience by quuestioning my loyalty to my chieftain. Take up my challenge, outerlander, that I might honourably split your skull open..") choice { - option("I'll take your challenge!") { + option("I'll take your challenge!") { attack(target) } - option("No thanks.") + option("No thanks.") } } - option("How about that challenge?") { + option("How about that challenge?") { attack(target) } - option("Goodbye then.") + option("Goodbye then.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Kjell.kt b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Kjell.kt index bfc0fe4df4..0f7700fb14 100644 --- a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Kjell.kt +++ b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Kjell.kt @@ -2,8 +2,8 @@ package content.area.misthalin.barbarian_village import content.entity.player.dialogue.Angry import content.entity.player.dialogue.Frustrated +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Neutral -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.quest.quest @@ -25,7 +25,7 @@ class Kjell : Script { } suspend fun Player.completed() { - npc( + npc( when (random.nextInt(0, 9)) { 0 -> "...there's a place for us..." 1 -> "...but I'd do anything for you..." @@ -40,24 +40,24 @@ class Kjell : Script { ) npc("Blast!") choice { - option("Having trouble there?") { + option("Having trouble there?") { npc("I don't need the advice of an outerlander.") advice() } - option("I'll leave you in peace.") { + option("I'll leave you in peace.") { } } } suspend fun Player.advice() { choice { - option("This music isn't very restful.") { + option("This music isn't very restful.") { npc("Get out of here!") } - option("Maybe you should take some lessons.") { + option("Maybe you should take some lessons.") { npc("Get out of here!") } - option("I'll leave you in peace.") { + option("I'll leave you in peace.") { npc("Get out of here!") } } @@ -66,16 +66,16 @@ class Kjell : Script { suspend fun Player.unstarted() { npc("Get out of here, outerlander!") choice { - option("What is this place?") { + option("What is this place?") { npc("The barbarian village. Go away.") } - option("Who are you?") { + option("Who are you?") { npc("My name is Kjell. Go away.") } - option("What's in this hut you're guarding?") { + option("What's in this hut you're guarding?") { npc("Nothing yet. Once there is, no one will get in or out! Now, Go away!") } - option("Goodbye then.") { + option("Goodbye then.") { } } } diff --git a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Sigurd.kt b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Sigurd.kt index 06cb01882e..fe871e6aa4 100644 --- a/game/src/main/kotlin/content/area/misthalin/barbarian_village/Sigurd.kt +++ b/game/src/main/kotlin/content/area/misthalin/barbarian_village/Sigurd.kt @@ -13,20 +13,20 @@ class Sigurd : Script { init { npcOperate("Talk-To", "sigurd") { - player("Hello there.") + player("Hello there.") npc("Ha Ha! Hello!") choice { - option("Who are you?") { + option("Who are you?") { npc("I'm Sigurd the Great and Brainy.") player("Why do they call you the Great and Brainy?") npc("Because I invented the Log Canoe!") player("Log Canoe?") npc("Yeash! Me and my cousins were having a great party by the river when we decided to have a game of 'Smack The Tree'") - player("Smack the Tree?") + player("Smack the Tree?") npc("It's a game were you take it in turnsh shmacking a tree. First one to uproot the tree winsh!") npc("Anyway, I won the game with a flying tackle. The tree came loose and down the river bank I went, still holding the tree.") npc("I woke up a few hours later and found myself several miles down river. And thatsh how I invented the log canoe!") - player("So you invented the 'Log Canoe' by falling into a river hugging a tree?") + player("So you invented the 'Log Canoe' by falling into a river hugging a tree?") npc("Well I refined the design from the original you know!") npc("I cut all the branches off to make it more comfortable. I could tell you how to if you like?") choice { @@ -34,7 +34,7 @@ class Sigurd : Script { canoeing() } option("No") { - player("No thanks, not right now.") + player("No thanks, not right now.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/barbarian_village/stronghold_of_security/StrongholdOfSecurityDoors.kt b/game/src/main/kotlin/content/area/misthalin/barbarian_village/stronghold_of_security/StrongholdOfSecurityDoors.kt index 4c5c08c282..e778d8321d 100644 --- a/game/src/main/kotlin/content/area/misthalin/barbarian_village/stronghold_of_security/StrongholdOfSecurityDoors.kt +++ b/game/src/main/kotlin/content/area/misthalin/barbarian_village/stronghold_of_security/StrongholdOfSecurityDoors.kt @@ -1,7 +1,7 @@ package content.area.misthalin.barbarian_village.stronghold_of_security import content.entity.player.dialogue.DoorHead -import content.entity.player.dialogue.Surprised +import content.entity.player.dialogue.Shock import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -24,7 +24,7 @@ class StrongholdOfSecurityDoors : Script { } openDoor(target, "unlocked_emote_flap") if (target.tile.y == 5238 && tile.y > target.tile.y) { - player("Oh my! I just got sucked through that door... what a weird feeling! Still, I guess I should expect it as these evidently aren't your average kind of doors.... they talk and look creepy!") + player("Oh my! I just got sucked through that door... what a weird feeling! Still, I guess I should expect it as these evidently aren't your average kind of doors.... they talk and look creepy!") } } diff --git a/game/src/main/kotlin/content/area/misthalin/barbarian_village/stronghold_of_security/StrongholdOfSecurityRewards.kt b/game/src/main/kotlin/content/area/misthalin/barbarian_village/stronghold_of_security/StrongholdOfSecurityRewards.kt index 171d01fa36..9df591d2eb 100644 --- a/game/src/main/kotlin/content/area/misthalin/barbarian_village/stronghold_of_security/StrongholdOfSecurityRewards.kt +++ b/game/src/main/kotlin/content/area/misthalin/barbarian_village/stronghold_of_security/StrongholdOfSecurityRewards.kt @@ -2,7 +2,7 @@ package content.area.misthalin.barbarian_village.stronghold_of_security import content.entity.player.bank.ownsItem import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Upset +import content.entity.player.dialogue.Sad import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.item import content.entity.player.dialogue.type.items @@ -86,7 +86,7 @@ class StrongholdOfSecurityRewards : Script { statement("Your boots need to be in your inventory to swap them.") // Unknown message } } - option("No thanks, I'll keep these.") + option("No thanks, I'll keep these.") } return@objectOperate } diff --git a/game/src/main/kotlin/content/area/misthalin/draynor_village/Aggie.kt b/game/src/main/kotlin/content/area/misthalin/draynor_village/Aggie.kt index e8ff6cf955..98e2126054 100644 --- a/game/src/main/kotlin/content/area/misthalin/draynor_village/Aggie.kt +++ b/game/src/main/kotlin/content/area/misthalin/draynor_village/Aggie.kt @@ -27,7 +27,7 @@ class Aggie : Script { npc("What can I help you with?") choice { option("What could you make for me?") { - npc("I mostly just make what I find pretty. I sometimes make dye for the women's clothes to brighten the place up. I can make red, yellow and blue dyes. If you'd like some, just bring me the appropriate ingredients.") + npc("I mostly just make what I find pretty. I sometimes make dye for the women's clothes to brighten the place up. I can make red, yellow and blue dyes. If you'd like some, just bring me the appropriate ingredients.") menu(target) } when (quest("prince_ali_rescue")) { @@ -50,21 +50,21 @@ class Aggie : Script { item("paste", 400, "Aggie hands you the skin paste.") npc("There you go dearie. That will make you look good at the Varrock dances.") } - option("No thank you. I don't need any skin paste right now.") { - npc("Okay dearie, that's always your choice.") + option("No thank you. I don't need any skin paste right now.") { + npc("Okay dearie, that's always your choice.") } } } else { npc("Why, it's one of my most popular potions. The women here, they like to have smooth looking skin. And I must admin, some of the men buy it as well.") - npc("I can make it for you, just get me what's needed.") + npc("I can make it for you, just get me what's needed.") player("What do you need to make it?") - npc("Well dearie, you need a base for the paste. That's a mix of ash and water. Then you need redberries to colour it as you want. Bring me those three items and I will make you some.") + npc("Well dearie, you need a base for the paste. That's a mix of ash and water. Then you need redberries to colour it as you want. Bring me those three items and I will make you some.") } } } } option("Cool, do you turn people into frogs?") { - npc("Oh, not for years, but if you meet a talking chicken, you have probably met the professor in the manor north of here. A few years ago it was flying fish. That machine is a menace.") + npc("Oh, not for years, but if you meet a talking chicken, you have probably met the professor in the manor north of here. A few years ago it was flying fish. That machine is a menace.") } option("You mad old witch, you can't help me.") { if (inventory.contains("pot_of_flour")) { @@ -73,14 +73,14 @@ class Aggie : Script { target.anim("pick_pocket") sound("pick") item("pot_of_flour", 600, "Aggie waves her hands about, and you seem to have a pot of flour less.") - npc("Thank you for your kind present of some flour. I am sure you never meant to insult me.") + npc("Thank you for your kind present of some flour. I am sure you never meant to insult me.") } else if (inventory.contains("coins", 101)) { inventory.remove("coins", 20) npc("Oh, you like to call a witch names do you?") target.anim("pick_pocket") sound("pick") item("coins", 600, "Aggie waves her hands about, and you seem to be 20 coins poorer.") - npc("That's a fine for insulting a witch. You should learn some respect.") + npc("That's a fine for insulting a witch. You should learn some respect.") } else { npc("You should be careful about insulting a witch. You never know what shape you could wake up in.") } @@ -95,15 +95,15 @@ class Aggie : Script { npcOperate("Make-dyes", "aggie") { (target) -> choice("What dye do you want Aggie to make for you?") { option("Red dye (requires 5 coins and 3 lots of redberries).") { - player("Could you make me some red dye, please?") + player("Could you make me some red dye, please?") makeRed(target) } option("Blue dye (requires 5 coins and 2 woad leaves).") { - player("Could you make me some blue dye, please?") + player("Could you make me some blue dye, please?") makeBlue(target) } option("Yellow dye (requires 5 coins and 2 onions).") { - player("Could you make me some yellow dye, please?") + player("Could you make me some yellow dye, please?") makeYellow(target) } } @@ -113,19 +113,19 @@ class Aggie : Script { suspend fun Player.menu(target: NPC) { choice { option("What do you need to make red dye?") { - npc("Three lots of redberries and five coins to you.") + npc("Three lots of redberries and five coins to you.") redDye(target) } option("What do you need to make yellow dye?") { - npc("Two onions and five coins to you.") + npc("Two onions and five coins to you.") yellowDye(target) } option("What do you need to make blue dye?") { - npc("Two woad leaves and five coins to you.") + npc("Two woad leaves and five coins to you.") blueDye(target) } - option("No thanks, I am happy the colour I am.") { - npc("You are easily pleased with yourself then. When you need dyes, come to me.") + option("No thanks, I am happy the colour I am.") { + npc("You are easily pleased with yourself then. When you need dyes, come to me.") } } } @@ -135,18 +135,18 @@ class Aggie : Script { option("Okay, make me some yellow dye please.") { makeYellow(target) } - option("I don't think I have all the ingredients yet.") { - npc("You know what you need to get, so come back when you have them. Goodbye for now.") + option("I don't think I have all the ingredients yet.") { + npc("You know what you need to get, so come back when you have them. Goodbye for now.") } option("I can do without dye at that price.") { - npc("That's your choice, but I would think you have killed for less. I can see it in your eyes.") + npc("That's your choice, but I would think you have killed for less. I can see it in your eyes.") } option("Where do I get onions?") { - npc("There are some onions growing on a farm to the east of here, next to the sheep field.") + npc("There are some onions growing on a farm to the east of here, next to the sheep field.") otherColours(target) } option("What other colours can you make?") { - npc("Red, yellow and blue. Which one would you like?") + npc("Red, yellow and blue. Which one would you like?") menu(target) } } @@ -157,18 +157,18 @@ class Aggie : Script { option("Okay, make me some red dye please.") { makeRed(target) } - option("I don't think I have all the ingredients yet.") { - npc("You know what you need to get, so come back when you have them. Goodbye for now.") + option("I don't think I have all the ingredients yet.") { + npc("You know what you need to get, so come back when you have them. Goodbye for now.") } option("I can do without dye at that price.") { - npc("That's your choice, but I would think you have killed for less. I can see it in your eyes.") + npc("That's your choice, but I would think you have killed for less. I can see it in your eyes.") } option("Where do I get redberries?") { - npc("I pick mine from the woods south of Varrock. The food shop in Port Sarim sometimes has some as well.") + npc("I pick mine from the woods south of Varrock. The food shop in Port Sarim sometimes has some as well.") otherColours(target) } option("What other colours can you make?") { - npc("Red, yellow and blue. Which one would you like?") + npc("Red, yellow and blue. Which one would you like?") menu(target) } } @@ -179,18 +179,18 @@ class Aggie : Script { option("Okay, make me some blue dye please.") { makeBlue(target) } - option("I don't think I have all the ingredients yet.") { - npc("You know what you need to get, so come back when you have them. Goodbye for now.") + option("I don't think I have all the ingredients yet.") { + npc("You know what you need to get, so come back when you have them. Goodbye for now.") } option("I can do without dye at that price.") { - npc("That's your choice, but I would think you have killed for less. I can see it in your eyes.") + npc("That's your choice, but I would think you have killed for less. I can see it in your eyes.") } option("Where do I get woad leaves?") { - npc("Woad leaves are fairly hard to find. My other customers tell me that Wyson, the head gardener in Falador Park, grows them.") + npc("Woad leaves are fairly hard to find. My other customers tell me that Wyson, the head gardener in Falador Park, grows them.") otherColours(target) } option("What other colours can you make?") { - npc("Red, yellow and blue. Which one would you like?") + npc("Red, yellow and blue. Which one would you like?") menu(target) } } @@ -199,7 +199,7 @@ class Aggie : Script { suspend fun Player.otherColours(target: NPC) { choice { option("What other colours can you make?") { - npc("Red, yellow and blue. Which one would you like?") + npc("Red, yellow and blue. Which one would you like?") menu(target) } option("Thanks.") { diff --git a/game/src/main/kotlin/content/area/misthalin/draynor_village/Diango.kt b/game/src/main/kotlin/content/area/misthalin/draynor_village/Diango.kt index 721f636d08..7174c88608 100644 --- a/game/src/main/kotlin/content/area/misthalin/draynor_village/Diango.kt +++ b/game/src/main/kotlin/content/area/misthalin/draynor_village/Diango.kt @@ -1,9 +1,9 @@ package content.area.misthalin.draynor_village import content.entity.npc.shop.openShop -import content.entity.player.dialogue.Chuckle import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle +import content.entity.player.dialogue.Laugh import content.entity.player.dialogue.Quiz import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc @@ -27,10 +27,10 @@ class Diango : Script { choice { option("Spinning plates?") { npc("That's right. There's a funny story behind them, their shipment was held up by thieves.") - npc("The crate was marked 'Dragon Plates'. Apparently they thought it was some kind of armour, when really it's just a plate with a dragon on it!") + npc("The crate was marked 'Dragon Plates'. Apparently they thought it was some kind of armour, when really it's just a plate with a dragon on it!") openShop("diangos_toy_store") } - option("I'd like to check holiday items please!") { + option("I'd like to check holiday items please!") { open("diangos_item_retrieval") } option("What else are you selling?") { diff --git a/game/src/main/kotlin/content/area/misthalin/draynor_village/DraynorJailGuard.kt b/game/src/main/kotlin/content/area/misthalin/draynor_village/DraynorJailGuard.kt index f572f0fb3f..fadb6653f2 100644 --- a/game/src/main/kotlin/content/area/misthalin/draynor_village/DraynorJailGuard.kt +++ b/game/src/main/kotlin/content/area/misthalin/draynor_village/DraynorJailGuard.kt @@ -2,8 +2,8 @@ package content.area.misthalin.draynor_village import content.entity.player.dialogue.Angry import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -18,10 +18,10 @@ class DraynorJailGuard : Script { choice { option("Hey, chill out. I won't cause you trouble.") { player("Hey, chill out, I won't cause you trouble. I was just wondering what you do to relax.") - npc("You never relax with these people, but it's a good career for a young man.") + npc("You never relax with these people, but it's a good career for a young man.") } - option("I had better leave, I don't want trouble.") { - npc("Thanks, I appreciate that. Talking on duty can be punished by having your mouth stitched up. These are tough people, make no mistake.") + option("I had better leave, I don't want trouble.") { + npc("Thanks, I appreciate that. Talking on duty can be punished by having your mouth stitched up. These are tough people, make no mistake.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/draynor_village/Joe.kt b/game/src/main/kotlin/content/area/misthalin/draynor_village/Joe.kt index 6d5e01fef1..460993b20e 100644 --- a/game/src/main/kotlin/content/area/misthalin/draynor_village/Joe.kt +++ b/game/src/main/kotlin/content/area/misthalin/draynor_village/Joe.kt @@ -21,7 +21,7 @@ class Joe : Script { } guardLife() guardDreams() - option("I had better leave, I don't want trouble.") + option("I had better leave, I don't want trouble.") } } "joe_beer" -> anotherBeer() @@ -32,14 +32,14 @@ class Joe : Script { } "prince_ali_disguise" -> { npc("Did yoush say something about shome Prince?") - player("No.") + player("No.") npc("Oh... okay.") } "completed" -> { - npc("Halt! Who goes there?") + npc("Halt! Who goes there?") player("Hi friend, I am just checking out things here.") - npc("The Prince got away, I am in trouble. I better not talk to you, they are not sure I was drunk.") - player("I won't say anything, your secret is safe with me.") + npc("The Prince got away, I am in trouble. I better not talk to you, they are not sure I was drunk.") + player("I won't say anything, your secret is safe with me.") } else -> { player("Hi. Who are you guarding here?") @@ -55,7 +55,7 @@ class Joe : Script { beer() } "joe_beer" -> anotherBeer() - else -> player("I don't see any need to give the guard my beer. I'll keep it for myself.") + else -> player("I don't see any need to give the guard my beer. I'll keep it for myself.") } } } @@ -68,7 +68,7 @@ class Joe : Script { suspend fun Player.beer() { npc("Ah, that would be lovely. Only one though, just to wet my throat.") - player("Of course. It must be tough being here without a drink.") + player("Of course. It must be tough being here without a drink.") set("prince_ali_rescue", "joe_beer") inventory.remove("beer") sound("drink") @@ -80,11 +80,11 @@ class Joe : Script { suspend fun Player.anotherBeer() { player("How are you? Still ok? Not too drunk?") if (!inventory.contains("beer", 2)) { - npc("No, I don't get drunk from only one drink. I reckon I'd need at least two more for that. Still, thanks for the beer.") + npc("No, I don't get drunk from only one drink. I reckon I'd need at least two more for that. Still, thanks for the beer.") return } player("Would you care for another beer, my friend?") - npc("I'd better not. I don't want to be drunk on duty.") + npc("I'd better not. I don't want to be drunk on duty.") player("Here, just keep these for later. I hate to see a thirsty guard.") set("prince_ali_rescue", "joe_beers") inventory.remove("beer", 2) @@ -94,9 +94,9 @@ class Joe : Script { } fun ChoiceOption.guardLife() { - option("Tell me about the life of a guard.") { - npc("Well, the hours are good, but most of those hours are a drag.") - npc("Sometimes I wonder if I should have spent more time learning when I was a young boy. Maybe I wouldn't be here now, scared of Keli.") + option("Tell me about the life of a guard.") { + npc("Well, the hours are good, but most of those hours are a drag.") + npc("Sometimes I wonder if I should have spent more time learning when I was a young boy. Maybe I wouldn't be here now, scared of Keli.") choice { guardDreams() betterGo() @@ -105,20 +105,20 @@ class Joe : Script { } fun ChoiceOption.guardDreams() { - option("What did you want to be when you were a boy?") { - npc("Well, I loved to sit by the lake, with my toes in the water. I'd shoot the fish with my bow and arrow.") - player("That's a strange hobby for a boy.") + option("What did you want to be when you were a boy?") { + npc("Well, I loved to sit by the lake, with my toes in the water. I'd shoot the fish with my bow and arrow.") + player("That's a strange hobby for a boy.") npc("It kept us from goblin hunting, which was what most boys did.") npc("Hang on... Why do you ask? What do you want?") choice { option("Hey, chill out. I won't cause you trouble.") { - npc("Sorry, it's hard to relax when I'm on duty. Stress of the job, and all.") + npc("Sorry, it's hard to relax when I'm on duty. Stress of the job, and all.") player("So why do you do it?") - npc("There's good money in it, and some of the shouting I rather like.") + npc("There's good money in it, and some of the shouting I rather like.") npc("RESISTANCE IS USELESS!") choice { option("So what do you buy with your great wages?") { - npc("Really, after working here, there's only time for a drink or three. All us guards go to the same pub and drink ourselves stupid.") + npc("Really, after working here, there's only time for a drink or three. All us guards go to the same pub and drink ourselves stupid.") npc("It's what I enjoy these days. I can't resist the sight of a really cold beer.") choice { if (inventory.contains("beer")) { @@ -132,8 +132,8 @@ class Joe : Script { guardLife() option("Would you be interested in making a little more money?") { npc("What? Are you trying to bribe me? I may not be a great guard, but I am loyal. How dare you try to bribe me!") - player("No, no, you've got the wrong idea, totally. I just wondered if you wanted some part-time bodyguard work.") - npc("Oh... sorry. No, I don't need money. As long as you were not offering me a bribe.") + player("No, no, you've got the wrong idea, totally. I just wondered if you wanted some part-time bodyguard work.") + npc("Oh... sorry. No, I don't need money. As long as you were not offering me a bribe.") choice { guardLife() guardDreams() @@ -150,8 +150,8 @@ class Joe : Script { } fun ChoiceOption.betterGo() { - option("I'd better go.") { - npc("Thanks, I appreciate that. Talking on duty can be punished by having your mouth stitched up. These are tough people, make no mistake.") + option("I'd better go.") { + npc("Thanks, I appreciate that. Talking on duty can be punished by having your mouth stitched up. These are tough people, make no mistake.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/draynor_village/LadyKeli.kt b/game/src/main/kotlin/content/area/misthalin/draynor_village/LadyKeli.kt index ca08530cac..ffce69df7a 100644 --- a/game/src/main/kotlin/content/area/misthalin/draynor_village/LadyKeli.kt +++ b/game/src/main/kotlin/content/area/misthalin/draynor_village/LadyKeli.kt @@ -34,7 +34,7 @@ class LadyKeli : Script { "joe_beers" -> { if (inventory.contains("rope")) { player("Hello! I'm here to tie you up!") - npc("What?") + npc("What?") tieUp(target) } else { statement("You cannot tie Keli up until you have all equipment and disabled the guard!") @@ -56,21 +56,21 @@ class LadyKeli : Script { heard() } katrine("I have heard a little, but I think Katrine is tougher.") - option("I have heard rumours that you kill people.") { - npc("There's always someone ready to spread rumours. I hear all sort of ridiculous things these days.") + option("I have heard rumours that you kill people.") { + npc("There's always someone ready to spread rumours. I hear all sort of ridiculous things these days.") choice { latestPlan() trained() disturb() } } - option("No I have never really heard of you.") { - npc("You must be new around here then. Everyone knows of Lady Keli and her prowess with a sword.") + option("No I have never really heard of you.") { + npc("You must be new around here then. Everyone knows of Lady Keli and her prowess with a sword.") choice { - option("No, still doesn't ring a bell.") { + option("No, still doesn't ring a bell.") { npc("Well, you know of me now. You should also know that I will wring your neck if you don't show some respect.") choice { - option("I don't show respect to killers and hoodlums.") { + option("I don't show respect to killers and hoodlums.") { npc("You should, you really should. I am wealthy enough to place a bounty on your head, or I could just remove your head myself. Luckily, I am too busy to deal with the likes of you, so clear off!") } latestPlan() @@ -99,31 +99,31 @@ class LadyKeli : Script { } fun ChoiceOption.escape() { - option("Can you be sure they will not try to get him out?") { + option("Can you be sure they will not try to get him out?") { npc("There is no way to release him. The only key to the door is on a chain around my neck and the locksmith who made the lock died suddenly when he had finished.") - npc("There is not another key like this in the world.") + npc("There is not another key like this in the world.") choice { option("Could I see the key please?") { - player("Could I see the key please? Just for a moment. It would be something I can tell my grandchildren. When you are even more famous than you are now.") + player("Could I see the key please? Just for a moment. It would be something I can tell my grandchildren. When you are even more famous than you are now.") npc("As you put it that way I am sure you can see it. You cannot steal the key, it is on a Runite chain.") statement("Keli shows you a small key on a strong looking chain.") choice { option("Could I touch the key for a moment please?") { - npc("Only for a moment then.") + npc("Only for a moment then.") if (inventory.contains("soft_clay")) { statement("You put a piece of your soft clay in your hand. As you touch the key, you take an imprint of it.") inventory.replace("soft_clay", "key_print") player("Thank you so much, you are too kind, o great Keli.") - npc("You are welcome, run along now, I am very busy.") + npc("You are welcome, run along now, I am very busy.") } else { - player("Well I'll be off. Good luck.") + player("Well I'll be off. Good luck.") } } disturb() } } - option("That is a good way to keep secrets.") { - npc("It is the best way I know. Dead men tell no tales.") + option("That is a good way to keep secrets.") { + npc("It is the best way I know. Dead men tell no tales.") } disturb() } @@ -132,16 +132,16 @@ class LadyKeli : Script { fun ChoiceOption.disturb() { option("I should not disturb someone as tough as you.") { - npc("Yes, I am very busy. Goodbye.") + npc("Yes, I am very busy. Goodbye.") } } fun ChoiceOption.areYouSure(text: String = "That's great, are you sure they will pay?") { option(text) { player("Are you sure they will pay?") - npc("They will pay, or we will cut his hair off and send it to them.") - player("How about trying something tougher? Maybe cut his finger off?") - npc("That's a good idea, I could use talented people like you. I may call on you if I need work doing.") + npc("They will pay, or we will cut his hair off and send it to them.") + player("How about trying something tougher? Maybe cut his finger off?") + npc("That's a good idea, I could use talented people like you. I may call on you if I need work doing.") choice { skillful() escape() @@ -151,9 +151,9 @@ class LadyKeli : Script { } fun ChoiceOption.skillful() { - option("Ah I see. You must have been very skillful.") { - npc("Yes, I did most of the work. We had to grab the Pr...") - npc("Er, we had to grab him without his ten bodyguards noticing. It was a stroke of genius.") + option("Ah I see. You must have been very skillful.") { + npc("Yes, I did most of the work. We had to grab the Pr...") + npc("Er, we had to grab him without his ten bodyguards noticing. It was a stroke of genius.") choice { areYouSure("Are you sure they will pay?") escape() @@ -165,8 +165,8 @@ class LadyKeli : Script { fun ChoiceOption.latestPlan() { option("What is your latest plan then?") { player("What is your latest plan then? Of course, you need not go into specific details.") - npc("Well, I can tell you I have a valuable prisoner here in my cells.") - npc("I can expect a high reward to be paid very soon for this guy. I can't tell you who he is, but he is a lot colder now.") + npc("Well, I can tell you I have a valuable prisoner here in my cells.") + npc("I can expect a high reward to be paid very soon for this guy. I can't tell you who he is, but he is a lot colder now.") choice { skillful() areYouSure() @@ -193,7 +193,7 @@ class LadyKeli : Script { } fun ChoiceOption.katrine(text: String = "I think Katrine is tougher.") { - option(text) { + option(text) { npc("Well you can think that all you like. I know those blackarm cowards dare not leave the city. Out here, I am toughest. You can tell them that! Now get out of my sight, before I call my guards.") } } diff --git a/game/src/main/kotlin/content/area/misthalin/draynor_village/Leela.kt b/game/src/main/kotlin/content/area/misthalin/draynor_village/Leela.kt index 8de570c016..94964b1182 100644 --- a/game/src/main/kotlin/content/area/misthalin/draynor_village/Leela.kt +++ b/game/src/main/kotlin/content/area/misthalin/draynor_village/Leela.kt @@ -28,7 +28,7 @@ class Leela : Script { when (quest("prince_ali_rescue")) { "leela" -> { if (get("prince_ali_rescue_key_made", false) && !get("prince_ali_rescue_key_given", false)) { - npc("My father sent this key for you. Be careful not to lose it.") + npc("My father sent this key for you. Be careful not to lose it.") if (inventory.add("bronze_key_prince_ali_rescue")) { statement("Leela gives you a copy of the key to the prince's door.") set("prince_ali_rescue_key_given", true) @@ -62,13 +62,13 @@ class Leela : Script { if (lostKey()) { return@npcOperate } - player("He's been dealt with.") + player("He's been dealt with.") npc("Great! I think that means we're ready. Go in and use some rope to tie Keli up. Once she's dealt with, use the key to free the Prince. Don't forget to give him his disguise so the guards outside don't spot him.") } "prince_ali_disguise", "completed" -> npc("Thank you, Al-Kharid will forever owe you for your help. I think that if there is ever anything that needs to be done, you will be someone they can rely on.") else -> { player("What are you waiting here for?") - npc("That is no concern of yours, adventurer.") + npc("That is no concern of yours, adventurer.") } } } @@ -76,7 +76,7 @@ class Leela : Script { suspend fun Player.intro() { player("I am here to help you free the prince.") - npc("Your employment is known to me. Now, do you know all that we need to make the break?") + npc("Your employment is known to me. Now, do you know all that we need to make the break?") set("prince_ali_rescue_leela", true) choice { disguise() @@ -87,9 +87,9 @@ class Leela : Script { } fun ChoiceOption.key() { - option("I need to get the key made.") { - npc("Yes, that is most important. There is no way you can get the real key. It is on a chain around Keli's neck. Almost impossible to steal.") - npc("Get some soft clay and get her to show you the key somehow. Then take the print, with bronze, to my father.") + option("I need to get the key made.") { + npc("Yes, that is most important. There is no way you can get the real key. It is on a chain around Keli's neck. Almost impossible to steal.") + npc("Get some soft clay and get her to show you the key somehow. Then take the print, with bronze, to my father.") choice { disguise() guards() @@ -99,9 +99,9 @@ class Leela : Script { } fun ChoiceOption.guards() { - option("What can I do with the guards?") { - npc("Most of the guards will be easy. The disguise will get past them. The only guard who will be a problem will be the one at the door.") - npc("We can discuss this more when you have the rest of the escape kit.") + option("What can I do with the guards?") { + npc("Most of the guards will be easy. The disguise will get past them. The only guard who will be a problem will be the one at the door.") + npc("We can discuss this more when you have the rest of the escape kit.") choice { disguise() key() @@ -111,28 +111,28 @@ class Leela : Script { } fun ChoiceOption.equipment() { - option("I will go and get the rest of the escape equipment.") { + option("I will go and get the rest of the escape equipment.") { npc("Good, I shall await your return with everything.") } } fun ChoiceOption.disguise() { option("I must make a disguise. What do you suggest?") { - npc("Only the lady Keli can wander about outside the jail. The guards will shoot to kill if they see the prince out, so we need a disguise good enough to fool them at a distance.") + npc("Only the lady Keli can wander about outside the jail. The guards will shoot to kill if they see the prince out, so we need a disguise good enough to fool them at a distance.") if (inventory.contains("wig_blonde")) { - npc("The wig you have got, well done.") + npc("The wig you have got, well done.") } else { - npc("You need a wig, maybe made from wool. If you find someone who can work with wool ask them about it. There's a witch nearby who may be able to help you dye it.") + npc("You need a wig, maybe made from wool. If you find someone who can work with wool ask them about it. There's a witch nearby who may be able to help you dye it.") } if (inventory.contains("pink_skirt")) { - npc("You have got the skirt, good.") + npc("You have got the skirt, good.") } else { - npc("You will need to get a pink skirt, same as Keli's.") + npc("You will need to get a pink skirt, same as Keli's.") } if (inventory.contains("skin_paste")) { - npc("You have the skin paint, well done. I thought you would struggle to make that.") + npc("You have the skin paint, well done. I thought you would struggle to make that.") } else { - npc("We still need something to colour the Prince's skin lighter. There's a witch close to here. She knows about many things. She may know some way to make the skin lighter.") + npc("We still need something to colour the Prince's skin lighter. There's a witch close to here. She knows about many things. She may know some way to make the skin lighter.") } if (inventory.contains("rope")) { npc("You have rope I see, to tie up Keli. That will be the most dangerous part of the plan.") @@ -149,26 +149,26 @@ class Leela : Script { suspend fun Player.guard(unsure: Boolean) { choice { - option("I haven't spoken to him yet.") { - npc("Well, speaking to him may find a weakness he has. See if there's something that could stop him bothering us.") - npc("Good luck with the guard. When the guard is out you can tie up Keli.") + option("I haven't spoken to him yet.") { + npc("Well, speaking to him may find a weakness he has. See if there's something that could stop him bothering us.") + npc("Good luck with the guard. When the guard is out you can tie up Keli.") } option("I was going to attack him.") { - npc("I don't think you should. If you do the rest of the gang and Keli would attack you. The door guard should be removed first, to make it easy.") - npc("Good luck with the guard. When the guard is out you can tie up Keli.") + npc("I don't think you should. If you do the rest of the gang and Keli would attack you. The door guard should be removed first, to make it easy.") + npc("Good luck with the guard. When the guard is out you can tie up Keli.") } - option("I hoped to get him drunk.") { - npc("Well, that's possible. These guards do like a drink. I would think it will take at least 3 beers to do it well. You would probably have to do it all at the same time too. The effects of the local beer wear off quickly.") - npc("Good luck with the guard. When the guard is out you can tie up Keli.") + option("I hoped to get him drunk.") { + npc("Well, that's possible. These guards do like a drink. I would think it will take at least 3 beers to do it well. You would probably have to do it all at the same time too. The effects of the local beer wear off quickly.") + npc("Good luck with the guard. When the guard is out you can tie up Keli.") } option("Maybe I could bribe him to leave.") { - npc("You could try. I don't think the emir will pay anything towards it. And we did bribe one of their guards once.") - npc("Keli killed him in front of the other guards, as a deterrent. It would probably take a lot of gold.") - npc("Good luck with the guard. When the guard is out you can tie up Keli.") + npc("You could try. I don't think the emir will pay anything towards it. And we did bribe one of their guards once.") + npc("Keli killed him in front of the other guards, as a deterrent. It would probably take a lot of gold.") + npc("Good luck with the guard. When the guard is out you can tie up Keli.") } if (unsure) { - option("I'm not sure yet.") { - npc("You should try talking to him. He might give away some sort of weakness.") + option("I'm not sure yet.") { + npc("You should try talking to him. He might give away some sort of weakness.") } } } @@ -178,13 +178,13 @@ class Leela : Script { if (ownsItem("bronze_key_prince_ali_rescue")) { return false } - player("I'm afraid I lost that key you gave me.") - npc("Well that was foolish. I can sort you out with another, but it will cost you 15 coins.") + player("I'm afraid I lost that key you gave me.") + npc("Well that was foolish. I can sort you out with another, but it will cost you 15 coins.") if (inventory.contains("coins", 15)) { - player("Here, I have 15 coins.") + player("Here, I have 15 coins.") } else { - player("I haven't got 15 coins with me.") - npc("Then come back to me when you do.") + player("I haven't got 15 coins with me.") + npc("Then come back to me when you do.") return true } inventory.transaction { diff --git a/game/src/main/kotlin/content/area/misthalin/draynor_village/Ned.kt b/game/src/main/kotlin/content/area/misthalin/draynor_village/Ned.kt index f7f2a0df79..6d859627ca 100644 --- a/game/src/main/kotlin/content/area/misthalin/draynor_village/Ned.kt +++ b/game/src/main/kotlin/content/area/misthalin/draynor_village/Ned.kt @@ -25,8 +25,8 @@ class Ned : Script { choice { otherThings(this@npcOperate) rope() - option("No thanks, Ned. I don't need any.") { - npc("Well, old Neddy is always here if you do. Tell your friends. I can always be using the business.") + option("No thanks, Ned. I don't need any.") { + npc("Well, old Neddy is always here if you do. Tell your friends. I can always be using the business.") } } } @@ -36,14 +36,14 @@ class Ned : Script { fun ChoiceOption.wig() { option("How about some sort of wig?") { - npc("Well... that's an interesting thought. Yes, I think I could do something. Give me three balls of wool and I might be able to do it.") + npc("Well... that's an interesting thought. Yes, I think I could do something. Give me three balls of wool and I might be able to do it.") if (!holdsItem("ball_of_wool", 3)) { player("Great, I will get some. I think a wig would be useful.") return@option } choice { - option("I have them here. Please make me a wig.") { - npc("Okay, I'll have a go.") + option("I have them here. Please make me a wig.") { + npc("Okay, I'll have a go.") inventory.transaction { remove("ball_of_wool", 3) add("wig_grey") @@ -52,7 +52,7 @@ class Ned : Script { npc("Here you go. How's that for a quick effort? Not bad I think!") player("Thanks Ned. There's more to you than meets the eye.") } - option("Actually, I don't need one right now.") { + option("Actually, I don't need one right now.") { npc("Fair enough.") } } @@ -65,18 +65,18 @@ class Ned : Script { option("Could you make other things apart from rope?") { npc("I'm sure I can. What are you thinking of?") choice { - option("Could you knit me a sweater?") { + option("Could you knit me a sweater?") { npc("Do I look like a member of a sewing circle? Be off wi' you. I have fought monsters that would turn your hair blue.") npc("I don't need to be laughed at just 'cos I'm getting a bit old.") } wig() option("Could you repair the arrow holes in the back of my shirt?") { - npc("Ah yes, it's a tough world these days. There's a few brave enough to attack from ten metres away.") + npc("Ah yes, it's a tough world these days. There's a few brave enough to attack from ten metres away.") statement("Ned pulls out a needle and attacks your shirt.") npc("There you go, good as new.") - player("Thanks Ned. Maybe next time they will attack me face to face.") + player("Thanks Ned. Maybe next time they will attack me face to face.") } - option("Actually, I don't need anything.") + option("Actually, I don't need anything.") } } } @@ -84,21 +84,21 @@ class Ned : Script { } fun ChoiceOption.rope() { - option("Yes, I would like some rope.") { + option("Yes, I would like some rope.") { npc("Well, I can sell you some rope for 15 coins. Or I can be making you some if you gets me four balls of wool. I strands them together I does, makes em strong.") player("You make rope from wool?") npc("Of course you can!") player("I thought you needed hemp or jute.") npc("Do you want some rope or not?") choice { - option("Okay, please sell me some rope.") { + option("Okay, please sell me some rope.") { buyRope() } - option("That's a little more than I want to pay.") { - npc("Well, if you ever need rope that's the price. Sorry. An old sailor needs money for a little drop o' rum.") + option("That's a little more than I want to pay.") { + npc("Well, if you ever need rope that's the price. Sorry. An old sailor needs money for a little drop o' rum.") } if (inventory.contains("ball_of_wool", 4)) { - option("I have some balls of wool. Could you make me some rope?") { + option("I have some balls of wool. Could you make me some rope?") { npc("Sure I can.") statement("You hand over four balls of wool. Ned gives you a coil of rope.") inventory.transaction { @@ -107,8 +107,8 @@ class Ned : Script { } } } else { - option("I will go and get some wool.") { - npc("Aye, you do that. Remember, it takes four balls of wool to make strong rope.") + option("I will go and get some wool.") { + npc("Aye, you do that. Remember, it takes four balls of wool to make strong rope.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/draynor_village/PrinceAli.kt b/game/src/main/kotlin/content/area/misthalin/draynor_village/PrinceAli.kt index ac56859a9b..fd84adb0c5 100644 --- a/game/src/main/kotlin/content/area/misthalin/draynor_village/PrinceAli.kt +++ b/game/src/main/kotlin/content/area/misthalin/draynor_village/PrinceAli.kt @@ -2,7 +2,7 @@ package content.area.misthalin.draynor_village import content.entity.effect.transform import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player import content.entity.player.dialogue.type.statement @@ -29,7 +29,7 @@ class PrinceAli : Script { init { npcOperate("Talk-to", "prince_ali") { (target) -> when (quest("prince_ali_rescue")) { - "completed" -> npc("I owe you my life for that escape. You cannot help me this time, they know who you are. Go in peace, friend of Al-Kharid.") + "completed" -> npc("I owe you my life for that escape. You cannot help me this time, they know who you are. Go in peace, friend of Al-Kharid.") "keli_tied_up" -> escape(target) "prince_ali_disguise" -> leave(target) } @@ -56,13 +56,13 @@ class PrinceAli : Script { suspend fun Player.escape(target: NPC) { player("Prince, I've come to rescue you.") - npc("That is very very kind of you, how do I get out?") + npc("That is very very kind of you, how do I get out?") if (!inventory.contains(disguise)) { player("I've already dealt with Lady Keli and the guard. I'm going to get you a disguise so the guards outside don't spot you leaving. I'll be back once I have it.") return } player("With a disguise. I have removed the Lady Keli. She is tied up, but will not stay tied up for long.") - player("Take this disguise, and this key.") + player("Take this disguise, and this key.") statement("You hand the disguise and the key to the prince.") inventory.remove(disguise) inventory.remove("bronze_key_prince_ali_rescue") diff --git a/game/src/main/kotlin/content/area/misthalin/edgeville/Hari.kt b/game/src/main/kotlin/content/area/misthalin/edgeville/Hari.kt index e5751571f9..3ba66114c9 100644 --- a/game/src/main/kotlin/content/area/misthalin/edgeville/Hari.kt +++ b/game/src/main/kotlin/content/area/misthalin/edgeville/Hari.kt @@ -13,23 +13,23 @@ class Hari : Script { init { npcOperate("Talk-To", "hari") { - player("Hello there.") - npc("Hello.") + player("Hello there.") + npc("Hello.") choice { - option("Who are you?") { - npc("My name is Hari.") + option("Who are you?") { + npc("My name is Hari.") player("And what are you doing here Hari?") - npc("Like most people who come to Edgeville, I am here to seek adventure in the Wilderness.") - npc("I found a secret underground river that will take me quite a long way north.") + npc("Like most people who come to Edgeville, I am here to seek adventure in the Wilderness.") + npc("I found a secret underground river that will take me quite a long way north.") player("Underground river? Where does it come out?") - npc("It comes out in a pond located deep in the Wilderness.") - npc("I had to find a very special type of canoe to get me up the river though, would you like to know more?") + npc("It comes out in a pond located deep in the Wilderness.") + npc("I had to find a very special type of canoe to get me up the river though, would you like to know more?") choice { option("Yes") { canoeing() } option("No") { - player("No thanks, not right now.") + player("No thanks, not right now.") } } } @@ -44,24 +44,24 @@ class Hari : Script { if (minimumCanoeLevel()) { return } - npc("It's really quite simple to make. Just walk down to that tree on the bank and chop it down.") - npc("When you have done that you can shape the log further with your axe to make a canoe.") + npc("It's really quite simple to make. Just walk down to that tree on the bank and chop it down.") + npc("When you have done that you can shape the log further with your axe to make a canoe.") when (levels.get(Skill.Woodcutting)) { in 12..26 -> { - npc("I can sense you're still a novice woodcutter, you will only be able to make a log canoe at present.") + npc("I can sense you're still a novice woodcutter, you will only be able to make a log canoe at present.") player("Is that good?") - npc("A log will take you one stop along the river. But you won't be able to travel into the Wilderness on it.") + npc("A log will take you one stop along the river. But you won't be able to travel into the Wilderness on it.") } in 27..41 -> { - npc("You are an average woodcutter. You should be able to make a Dugout canoe quite easily. It will take you 2 stops along the river.") + npc("You are an average woodcutter. You should be able to make a Dugout canoe quite easily. It will take you 2 stops along the river.") player("Can I take a dugout canoe to reach the Wilderness?") - npc("You would never make it there alive.") - player("Best not to try then.") + npc("You would never make it there alive.") + player("Best not to try then.") } in 42..56 -> { - npc("You seem to be an accomplished woodcutter. You will easily be able to make a Stable Dugout") - npc("They are reliable enough to get you anywhere on this river, except to the Wilderness of course.") - npc("Only a Waka can take you there.") + npc("You seem to be an accomplished woodcutter. You will easily be able to make a Stable Dugout") + npc("They are reliable enough to get you anywhere on this river, except to the Wilderness of course.") + npc("Only a Waka can take you there.") player("A Waka? What's that?") npc("Come and ask me when you have improved your skills as a woodcutter.") } @@ -71,7 +71,7 @@ class Hari : Script { npc("A Waka is an invention of my people, it's an incredible strong and fast canoe and will carry you safely to any destination on the river.") player("Any destination?") npc("Yes, you can take a waka north through the underground portion of this river.") - npc("It will bring you out at a pond in the heart of the Wilderness. Be careful up there, many have lost more than their lives in that dark and twisted place.") + npc("It will bring you out at a pond in the heart of the Wilderness. Be careful up there, many have lost more than their lives in that dark and twisted place.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/edgeville/Jeffery.kt b/game/src/main/kotlin/content/area/misthalin/edgeville/Jeffery.kt index fdc3124e17..33b68f547b 100644 --- a/game/src/main/kotlin/content/area/misthalin/edgeville/Jeffery.kt +++ b/game/src/main/kotlin/content/area/misthalin/edgeville/Jeffery.kt @@ -22,41 +22,41 @@ class Jeffery : Script { npc("Keep it quick. What do you want?") choice { if (quest("gunnars_ground") != "unstarted" && quest("gunnars_ground") != "started" && quest("gunnars_ground") != "love_poem") { - option("Who was that love poem for?") { + option("Who was that love poem for?") { if (quest("gunnars_ground") == "completed") { - npc("It, er, it didn't work out well.") + npc("It, er, it didn't work out well.") npc("I don't want to talk about it! Leave me alone!") } else { - npc("I haven't had a chance to do anything with it yet!") + npc("I haven't had a chance to do anything with it yet!") } } } if (quest("gunnars_ground") == "love_poem") { - option("I'm here about a gold ring.") { + option("I'm here about a gold ring.") { npc("You want to buy a gold ring? You want to sell a gold ring? You want to ask pointless questions about gold rings?") choice { - option("I was hoping you would trade me a gold ring.") { + option("I was hoping you would trade me a gold ring.") { npc("Trade you? Trade you for what?") if (holdsItem("love_poem")) { choice { - option("This splendid love poem.") { + option("This splendid love poem.") { lovePoem(target) } - option("Some old love poem or something.") { + option("Some old love poem or something.") { lovePoem(target) } } } else { - player("Er...I meant to bring a poem as a trade, but I seem to have mislaid it. I'll go and find it.") + player("Er...I meant to bring a poem as a trade, but I seem to have mislaid it. I'll go and find it.") } } - option("Actually, forget it.") + option("Actually, forget it.") } } } - option("I want to use the furnace.") { + option("I want to use the furnace.") { if (!ownsItem("varrock_armour_4") && !ownsItem("varrock_armour_3") && !ownsItem("varrock_armour_2") && !ownsItem("varrock_armour_1")) { - npc("You want to use my furnace? I only let exceptional people use my furnace. You don't look exceptional to me.") + npc("You want to use my furnace? I only let exceptional people use my furnace. You don't look exceptional to me.") player("How do I become exceptional?") npc("Exceptional people have earned exceptional items; earning Varrock armour would impress me.") player("Alright!") @@ -69,39 +69,39 @@ class Jeffery : Script { npc("If you smelt at this furnace while wearing your Varrock armour the enchantment on the armour will give you a small chance of smelting two bars instead of one.") player("I see. So, which metal will I be able to obtain more of when smelting with the armour I'm wearing?") if (equipment.contains("varrock_armour_4")) { - npc("While wearing the Varrock armour, you will have a chance of smelting an extra bar of any metal up to, and including, rune.") + npc("While wearing the Varrock armour, you will have a chance of smelting an extra bar of any metal up to, and including, rune.") player("Oh, that's useful. That should save me a fair bit of time. Thanks very much.") npc("Stay exceptional!") } else if (equipment.contains("varrock_armour_3")) { - npc("While wearing the Varrock armour, you will have a chance of smelting an extra bar of any metal up to, and including, adamant.") + npc("While wearing the Varrock armour, you will have a chance of smelting an extra bar of any metal up to, and including, adamant.") player("Oh, that's useful. That should save me a fair bit of time. Thanks very much.") npc("Stay exceptional!") } else if (equipment.contains("varrock_armour_2")) { - npc("While wearing the Varrock armour, you will have a chance of smelting an extra bar of any metal up to, and including, mithril.") + npc("While wearing the Varrock armour, you will have a chance of smelting an extra bar of any metal up to, and including, mithril.") player("Oh, that's useful. That should save me a fair bit of time. Thanks very much.") npc("Stay exceptional!") } else if (equipment.contains("varrock_armour_1")) { - npc("While wearing the Varrock armour, you will have a chance of smelting an extra bar of any metal up to, and including, steel.") + npc("While wearing the Varrock armour, you will have a chance of smelting an extra bar of any metal up to, and including, steel.") player("Oh, that's useful. That should save me a fair bit of time. Thanks very much.") npc("Stay exceptional!") } else { - npc("Try coming back when you're actually wearing your Varrock armour.") - player("Oh, right. Yes I see. Okay, thanks.") + npc("Try coming back when you're actually wearing your Varrock armour.") + player("Oh, right. Yes I see. Okay, thanks.") } } - option("Er, nothing.") + option("Er, nothing.") } } } suspend fun Player.lovePoem(target: NPC) { - npc("A love poem? What?") + npc("A love poem? What?") npc("Wait...that dwarf put you up to this, didn't he?") choice { - option("Yes, he did.") { + option("Yes, he did.") { cheekyLittle(target) } - option("I don't know any dwarf.") { + option("I don't know any dwarf.") { npc("I recognise his awful handwriting.") cheekyLittle(target) } @@ -112,12 +112,12 @@ class Jeffery : Script { npc("That cheeky little...") npc("He just can't leave it alone, can he? Fine! I'll trade you for the poem. What is it you want?") choice { - option("Just a plain, gold ring.") { + option("Just a plain, gold ring.") { goldRing(target) } - option("The most valuable diamond ring you have.") { + option("The most valuable diamond ring you have.") { npc("Well, all I have is this plain, gold ring.") - player("That will have to do.") + player("That will have to do.") goldRing(target) } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/BarfyBill.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/BarfyBill.kt index 02e83d2e74..7aca937a4a 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/BarfyBill.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/BarfyBill.kt @@ -13,19 +13,19 @@ class BarfyBill : Script { init { npcOperate("Talk-To", "barfy_bill") { - player("Hello there.") - npc("Oh! Hello there.") + player("Hello there.") + npc("Oh! Hello there.") choice { - option("Who are you?") { - npc("My name is Ex Sea Captain Barfy Bill.") + option("Who are you?") { + npc("My name is Ex Sea Captain Barfy Bill.") player("Ex sea captain?") - npc("Yeah, I bought a lovely ship and was planning to make a fortune running her as a merchant vessel.") + npc("Yeah, I bought a lovely ship and was planning to make a fortune running her as a merchant vessel.") player("Why are you not still sailing?") - npc("Chronic sea sickness. My first, and only, voyage was spent dry heaving over the rails.") - npc("If I had known about the sea sickness I could have saved myself a lot of money.") - player("What are you up to now then?") + npc("Chronic sea sickness. My first, and only, voyage was spent dry heaving over the rails.") + npc("If I had known about the sea sickness I could have saved myself a lot of money.") + player("What are you up to now then?") npc("Well my ship had a little fire related problem. Fortunately it was well insured.") - npc("Anyway, I don't have to work anymore so I've taken to canoeing on the river.") + npc("Anyway, I don't have to work anymore so I've taken to canoeing on the river.") npc("I don't get river sick!") npc("Would you like to know how to make a canoe?") choice { @@ -33,7 +33,7 @@ class BarfyBill : Script { canoeing() } option("No") { - player("No thanks, not right now.") + player("No thanks, not right now.") } } } @@ -48,11 +48,11 @@ class BarfyBill : Script { if (minimumCanoeLevel()) { return } - npc("It's really quite simple to make. Just walk down to that tree on the bank and chop it down.") - npc("When you have done that you can shape the log further with your axe to make a canoe.") + npc("It's really quite simple to make. Just walk down to that tree on the bank and chop it down.") + npc("When you have done that you can shape the log further with your axe to make a canoe.") when (levels.get(Skill.Woodcutting)) { in 12..26 -> { - npc("Hah! I can tell just by looking that you lack talent in woodcutting.") + npc("Hah! I can tell just by looking that you lack talent in woodcutting.") player("What do you mean?") npc("No Callouses! No Splinters! No camp fires littering the trail behind you.") npc("Anyway, the only 'canoe' you can make is a log. You'll be able to travel 1 stop along the river with a log canoe.") @@ -71,9 +71,9 @@ class BarfyBill : Script { } else -> { npc("Hoo! You look like you know which end of an axe is which!") - npc("You can easily build one of those Wakas. Be careful if you travel into the Wilderness though.") - npc("I've heard tell of great evil in that blasted wasteland.") - player("Thanks for the warning Bill.") + npc("You can easily build one of those Wakas. Be careful if you travel into the Wilderness though.") + npc("I've heard tell of great evil in that blasted wasteland.") + player("Thanks for the warning Bill.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/Bob.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/Bob.kt index c6c57615b9..636e052f4a 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/Bob.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/Bob.kt @@ -2,9 +2,9 @@ package content.area.misthalin.lumbridge import content.entity.npc.shop.openShop import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Upset +import content.entity.player.dialogue.Sad import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import world.gregs.voidps.engine.Script @@ -22,13 +22,13 @@ class Bob : Script { npcOperate("Talk-to", "bob") { choice { option("Give me a quest!") { - npc("Sorry I don't have any quests for you at the moment.") + npc("Sorry I don't have any quests for you at the moment.") } option("I'd like to trade.") { npc("Great! I buy and sell pickaxes and hatchets. There are plenty to choose from, and I've some free samples too. Take your pick... or hatchet.") openShop("bobs_brilliant_axes") } - option("Can you repair my items for me?") { + option("Can you repair my items for me?") { npc("Of course I can, though the material may cost you. Just hand me the item and I'll have a look.") } } @@ -40,7 +40,7 @@ class Bob : Script { return@itemOnNPCOperate } val cost = repairCost(this, item) - npc("That'll cost you $cost gold coins to fix, are you sure?") + npc("That'll cost you $cost gold coins to fix, are you sure?") choice { option("Yes I'm sure!") { val repaired = inventory.transaction { diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/Donie.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/Donie.kt index 2d0e00d43a..789076ddd0 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/Donie.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/Donie.kt @@ -1,13 +1,13 @@ package content.area.misthalin.lumbridge -import content.entity.player.dialogue.Afraid import content.entity.player.dialogue.Amazed import content.entity.player.dialogue.Angry -import content.entity.player.dialogue.Chuckle +import content.entity.player.dialogue.Confused +import content.entity.player.dialogue.Disheartened import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Laugh import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Sad -import content.entity.player.dialogue.Uncertain +import content.entity.player.dialogue.Scared import content.entity.player.dialogue.type.* import content.quest.questCompleted import world.gregs.voidps.engine.Script @@ -46,7 +46,7 @@ class Donie : Script { } fun ChoiceOption.whereAmI(): Unit = option("Where am I") { - npc("This is the town of Lumbridge my friend.") + npc("This is the town of Lumbridge my friend.") choice { howToday() anyQuests() @@ -56,11 +56,11 @@ class Donie : Script { fun ChoiceOption.howToday(): Unit = option("How are you today?") { npc("Aye, not too bad thank you. Lovely weather in Gielinor this fine day.") - player("Weather?") - npc("Yes weather, you know.") + player("Weather?") + npc("Yes weather, you know.") npc("The state or condition of the atmosphere at a time and place, with respect to variables such as temperature, moisture, wind velocity, and barometric pressure.") player("...") - npc("Not just a pretty face eh? Ha ha ha.") + npc("Not just a pretty face eh? Ha ha ha.") } fun ChoiceOption.anyQuests(): Unit = option("Are there any quests I can do here?") { @@ -70,24 +70,24 @@ class Donie : Script { npc("Hmm.. dangerous you say? What sort of creatures are you looking to fight?") choice { option("Big scary demons!") { - npc("You are a brave soul indeed.") - npc("Now that you mention it, I heard a rumour about a fortune-teller in Varrock who is rambling about some kind of grater evil.. sounds demon-like if you ask me.") + npc("You are a brave soul indeed.") + npc("Now that you mention it, I heard a rumour about a fortune-teller in Varrock who is rambling about some kind of grater evil.. sounds demon-like if you ask me.") npc("Perhaps you could check it out if you are as brave as you say?") if (questCompleted("demon_slayer")) { - player("I've already killed the demon Delrith. He was merely a stain on my sword when I was finished with him!") + player("I've already killed the demon Delrith. He was merely a stain on my sword when I was finished with him!") npc("Well done! However I'm sure if you search around the world you will find more challenging foes to slay.") } else { player("Thanks for the tip, perhaps I will.") } } option("Vampyres!") { - npc("Ha ha. I personally don't believe in such things. However, there is a man in Draynor Village who has been scaring the village folk with stories of vampyres.") + npc("Ha ha. I personally don't believe in such things. However, there is a man in Draynor Village who has been scaring the village folk with stories of vampyres.") npc("He's named Morgan and can be found in one of the village houses. Perhaps you could see what the matter is?") if (questCompleted("vampire_slayer")) { - player("Oh i have already killed that nasty blood-sucking vampyre. Draynor will be safe now.") - npc("Yeah, yeah of course you did. Everyone knows vampyres are not real...") + player("Oh i have already killed that nasty blood-sucking vampyre. Draynor will be safe now.") + npc("Yeah, yeah of course you did. Everyone knows vampyres are not real...") player("What! I did slay the beast..I really did.") - npc("You're not fooling anyone you know.") + npc("You're not fooling anyone you know.") player("..Huh.. But... Hey! I did... believe what you like.") } else { player("Thanks for the tip.") @@ -100,7 +100,7 @@ class Donie : Script { npc("Sounds like it could be a quest for you?") if (questCompleted("imp_catcher")) { player("Yes, I know of Mizgog and have already helped him with his imp problem.") - npc("Imps will be imps!") + npc("Imps will be imps!") } else { player("Thanks for your help.") } @@ -110,11 +110,11 @@ class Donie : Script { } option("Something easy please, I'm new here.") { npc("I can tell you about plenty of small easy tasks.") - npc("The Lumbridge cook has been having problems and the Duke is confused over some strange rocks") + npc("The Lumbridge cook has been having problems and the Duke is confused over some strange rocks") choice("Tell me about..") { option("The Lumbridge cook.") { player("Tell me about the Lumbridge cook.") - npc("It's funny really, the cook would forget his head if it wasn't screwed on. This time he forgot to get ingredients for the Duke's birthday cake.") + npc("It's funny really, the cook would forget his head if it wasn't screwed on. This time he forgot to get ingredients for the Duke's birthday cake.") npc("Perhaps you could help him? You will probably find him in the Lumbridge Castle kitchen.") if (questCompleted("cooks_assistant")) { player("I have already helped the cook in Lumbridge") @@ -137,17 +137,17 @@ class Donie : Script { } } option("I'm a thinker rather than a fighter, anything skill oriented?") { - npc("Skills play a big part when you want to progress in knowledge. I know of a few skill-related quests that can get you started.") + npc("Skills play a big part when you want to progress in knowledge. I know of a few skill-related quests that can get you started.") npc("You may be able to help out Fred the farmer who is in need of someones crafting expertise.") npc("Or, there's always Doric the dwarf who needs an errand running for him?") choice("Tell me about..") { option("Fred the farmer.") { player("Tell me about Fred the farmer please.") - npc("You can find Fred next to the field of sheep in Lumbridge. Perhaps you should go and speak with him.") + npc("You can find Fred next to the field of sheep in Lumbridge. Perhaps you should go and speak with him.") if (questCompleted("sheep_shearer_miniquest")) { player("I have already helped Fred the farmer. I sheared his sheep and made 20 balls of wool for him.") - player("He wouldn't let me kill his chickens though.") - npc("Lumbridge chickens do make good target practice.") + player("He wouldn't let me kill his chickens though.") + npc("Lumbridge chickens do make good target practice.") npc("You will have to wait until he isn't looking.") } else { player("Thanks, maybe I will.") @@ -177,8 +177,8 @@ class Donie : Script { npc("Hetty the witch can be found in Rimmington, south of Falador. She's currently working on some new potions. Perhaps you could give her a hand? She might be able to offer help with your magical abilities.") if (questCompleted("witches_potion_miniquest")) { player("Yes, I have already been to see Hetty. She gave me super cosmic powers after I helped out with her potion! I could probably destroy you with a single thought.") - npc("Did she really?") - player("No, not really.") + npc("Did she really?") + player("No, not really.") npc("Right...") } else { player("Thanks. Let's hope she doesn't turn me into a potato or something..") @@ -189,12 +189,12 @@ class Donie : Script { npc("RedBeard Frank in Port Sarim's bar, the Rusty Anchor might be able to tell you about the rumored treasure that is buried somewhere in the world.") if (questCompleted("pirates_treasure")) { player("Yarr! I already found the booty!") - npc("Yarr indeed my friend. A most excellent find.") + npc("Yarr indeed my friend. A most excellent find.") player("Yarr!") - npc("Yarrr!") + npc("Yarrr!") player("YARRR!") npc("Right, that's enough of that!") - player("..Sorry.") + player("..Sorry.") } else { player("Sounds adventurous, I may have to check that out. Thank you.") } @@ -205,9 +205,9 @@ class Donie : Script { npc("I suggest you tread carefully in that place; it's haunted.") if (questCompleted("ernest_the_chicken")) { player("Yeah, I found Ernest already. Professor Oddstein had turned him into a chicken!") - npc("A chicken!?") + npc("A chicken!?") player("Yeah a chicken. It could have been worse though.") - npc("Very true, poor guy.") + npc("Very true, poor guy.") } else { player("Sounds like fun. I've never been to a Haunted Manor before.") } @@ -219,19 +219,19 @@ class Donie : Script { } } - fun ChoiceOption.shoeLace(): Unit = option("Your shoe lace is untied.") { + fun ChoiceOption.shoeLace(): Unit = option("Your shoe lace is untied.") { npc("No it's not!") - player("No you're right. I have nothing to back that up.") + player("No you're right. I have nothing to back that up.") npc("Fool! Leave me alone!") } fun ChoiceOption.buyStick(): Unit = option("Can i buy your stick?") { npc("It's not a stick! I'll have you know it's a very powerful staff!") player("Really? Show me what it can do!") - npc("Um..It's a bit low on power at the moment..") - player("It's a stick isn't it?") - npc("...Ok it's a stick.. But only while I save up for a staff. Zaff in Varrock square sells them in his shop.") - player("Well good luck with that.") + npc("Um..It's a bit low on power at the moment..") + player("It's a stick isn't it?") + npc("...Ok it's a stick.. But only while I save up for a staff. Zaff in Varrock square sells them in his shop.") + player("Well good luck with that.") } fun ChoiceOption.freeStuff(): Unit = option("Do you have anything of value which I can have?") { @@ -243,7 +243,7 @@ class Donie : Script { fun ChoiceOption.hairCut(): Unit = option("Where can I get a haircut like yours?") { npc("Yes, it does look like you need a hairdresser.") player("Oh thanks!") - npc("No problem. The hairdresser in Falador will probably be able to sort you out.") + npc("No problem. The hairdresser in Falador will probably be able to sort you out.") npc("The Lumbridge general store sells useful maps if you don't know the way.") } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/Doomsayer.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/Doomsayer.kt index cb9dd09b1d..cd3bea7036 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/Doomsayer.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/Doomsayer.kt @@ -1,9 +1,9 @@ package content.area.misthalin.lumbridge import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Scared -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Terrified import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -15,32 +15,32 @@ class Doomsayer : Script { init { npcOperate("Talk-to", "doomsayer") { - npc("Dooooom!") - player("Where?") - npc("All around us! I can feel it in the air, hear it on the wind, smell it... also in the air!") - player("Is there anything we can do about this doom?") - npc("There is nothing you need to do my friend! I am the Doomsayer, although my real title could be something like the Danger Tutor.") + npc("Dooooom!") + player("Where?") + npc("All around us! I can feel it in the air, hear it on the wind, smell it... also in the air!") + player("Is there anything we can do about this doom?") + npc("There is nothing you need to do my friend! I am the Doomsayer, although my real title could be something like the Danger Tutor.") player("Danger Tutor?") npc("Yes! I roam the world sensing danger.") - npc("If I find a dangerous area, the I put up warning signs that will tell you what is so dangerous about that area.") - npc("If you see the signs often enough, then you can turn them off; by that time you likely know what the area has in store for you.") + npc("If I find a dangerous area, the I put up warning signs that will tell you what is so dangerous about that area.") + npc("If you see the signs often enough, then you can turn them off; by that time you likely know what the area has in store for you.") player("But what if I want to see the warnings again?") npc("That's why I'm waiting here!") set("doom_task", true) if (variables.data.keys.none { it.startsWith("warning_") }) { - npc("If you want to see the warning messages again, I can turn them back on for you.") + npc("If you want to see the warning messages again, I can turn them back on for you.") player("Thanks, I'll remember that if I see any warning messages.") npc("You're welcome!") return@npcOperate } npc("Do you need to turn on any warnings right now?") choice { - option("Yes, I do.") { + option("Yes, I do.") { open("doomsayer_warning_messages") } - option("Not right now.") { + option("Not right now.") { npc("Ok, keep an eye out for the messages though!") - player("I will.") + player("I will.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/ExplorerJack.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/ExplorerJack.kt index e2b2b703b9..05837a6a7a 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/ExplorerJack.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/ExplorerJack.kt @@ -2,12 +2,12 @@ package content.area.misthalin.lumbridge import content.achievement.Tasks import content.achievement.Tasks.isCompleted +import content.entity.player.dialogue.Bored +import content.entity.player.dialogue.Confused import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.RollEyes -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Uncertain import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -36,7 +36,7 @@ class ExplorerJack : Script { init { npcOperate("Talk-to", "explorer_jack") { if (get("introducing_explorer_jack_task", "uncompleted") == "uncompleted") { - npc("Ah! Welcome to ${Settings["server.name"]}, lad. My name's Explorer jack. I'm an explorer by trade, and I'm one of the Taskmasters around these parts") + npc("Ah! Welcome to ${Settings["server.name"]}, lad. My name's Explorer jack. I'm an explorer by trade, and I'm one of the Taskmasters around these parts") player("Taskmaster? What Tasks are you Master of?") whatIsTaskSystem() } @@ -44,20 +44,20 @@ class ExplorerJack : Script { player("I think I've finished all of the Beginner Tasks in the Lumbridge set.") npc("You have? Oh, well done! We'll make an explorer of you yet.") player("Thank you. Is there a reward?") - npc("Ah, yes indeed.") + npc("Ah, yes indeed.") if (!inventory.add("explorers_ring_1", "antique_lamp_beginner_lumbridge_tasks")) { - npc("You don't seem to have space, speak to me again when you have two free spaces in your inventory.") // TODO proper message (not in osrs) + npc("You don't seem to have space, speak to me again when you have two free spaces in your inventory.") // TODO proper message (not in osrs) return@npcOperate } set("unlocked_emote_explore", true) - npc("Having completed the beginner tasks, you have been granted the ability to use the Explorer emote to show your friends.") + npc("Having completed the beginner tasks, you have been granted the ability to use the Explorer emote to show your friends.") npc("I have also given you an explorer's ring. Now, this is more than just any old ring. Aside from looking good, it also has magical properties giving you a small but useful boost to your Magic and Prayer.") - npc("Your ring has the ability to restore some of your run energy to you.") - npc("For each of the first three sections of the diary you complete, your ring will gain an extra charge; so the ring you receive from the medium level tasks will have 3 charges for example.") - npc("If they should run out, the ring is recharged by the sun each day, so you will be able to use it again tomorrow and so on.") - npc("As an extra reward, you can have this old magical lamp to help with your skills. I was going to use it myself, but I don't really need it.") + npc("Your ring has the ability to restore some of your run energy to you.") + npc("For each of the first three sections of the diary you complete, your ring will gain an extra charge; so the ring you receive from the medium level tasks will have 3 charges for example.") + npc("If they should run out, the ring is recharged by the sun each day, so you will be able to use it again tomorrow and so on.") + npc("As an extra reward, you can have this old magical lamp to help with your skills. I was going to use it myself, but I don't really need it.") player("Thanks very much.") - npc("If you should lose your ring, come back to see me and I'm sure I'll have another. Now, did you have anything further to ask?") + npc("If you should lose your ring, come back to see me and I'm sure I'll have another. Now, did you have anything further to ask?") } choice { option("Tell me about the Task System.") { @@ -74,7 +74,7 @@ class ExplorerJack : Script { } } } - option("Sorry, I was just leaving.") + option("Sorry, I was just leaving.") } /* npc("What ho! Where did you come from?") @@ -95,16 +95,16 @@ class ExplorerJack : Script { objectOperate("Open", "explorer_jack_trapdoor") { val explorerJack = npcs[tile.regionLevel].first { it.id.startsWith("explorer_jack") } talkWith(explorerJack) - npc("I say, there's nothing interesting in my cellar! Better go exploring elsewhere, eh?") + npc("I say, there's nothing interesting in my cellar! Better go exploring elsewhere, eh?") player("What's down there?") - npc("Crates, boxes, shelves - nothing you won't see in dozens of houses across Runescape. Go on, explore somewhere else!") + npc("Crates, boxes, shelves - nothing you won't see in dozens of houses across Runescape. Go on, explore somewhere else!") } } suspend fun Player.whatIsTaskSystem() { - npc("Well, the Task System is a potent method of guiding yourself to useful things to do around the world.") - npc("You'll see up to six Tasks in your side bar if you click on the glowing Task List icon. You can click on one for more information about it, hints, waypoint arrows, that sort of thing.") - npc("Every Task you do will earn you something of value which you can claim from me. It'll be money, mostly, but the Rewards tab for a Task will tell you more.
Good luck!") + npc("Well, the Task System is a potent method of guiding yourself to useful things to do around the world.") + npc("You'll see up to six Tasks in your side bar if you click on the glowing Task List icon. You can click on one for more information about it, hints, waypoint arrows, that sort of thing.") + npc("Every Task you do will earn you something of value which you can claim from me. It'll be money, mostly, but the Rewards tab for a Task will tell you more.
Good luck!") set("introducing_explorer_jack_task", "completed") set("unstable_foundations", "completed") sendScript("task_list_button_hide", 0) @@ -112,7 +112,7 @@ class ExplorerJack : Script { } suspend fun Player.claim(inventoryId: String) { - npc("I'll just fill your $inventoryId with what you need, then.") + npc("I'll just fill your $inventoryId with what you need, then.") val inventory = inventories.inventory(inventoryId) val progress = get("task_progress_overall", 0) val rewards = progress - get("task_progress_rewarded", 0) diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/FredTheFarmer.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/FredTheFarmer.kt index 29a15d0ee6..da2cf2eab0 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/FredTheFarmer.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/FredTheFarmer.kt @@ -1,17 +1,17 @@ package content.area.misthalin.lumbridge import content.entity.player.bank.bank -import content.entity.player.dialogue.Afraid import content.entity.player.dialogue.Amazed import content.entity.player.dialogue.Angry -import content.entity.player.dialogue.Chuckle +import content.entity.player.dialogue.Bored +import content.entity.player.dialogue.Confused +import content.entity.player.dialogue.Disheartened import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle +import content.entity.player.dialogue.Laugh import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.RollEyes -import content.entity.player.dialogue.Sad +import content.entity.player.dialogue.Scared import content.entity.player.dialogue.Shifty -import content.entity.player.dialogue.Uncertain import content.entity.player.dialogue.type.ChoiceOption import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.item @@ -60,44 +60,44 @@ class FredTheFarmer : Script { } itemOnNPCOperate("black_wool", "fred_the_farmer_lumbridge") { if (quest("sheep_shearer_miniquest") == "started") { - player("I've got some wool. I've not managed to make it into a ball, though.") - npc("Well, go find a spinning wheel then. You can find one on the first floor of Lumbridge Castle; just turn right and follow the path when leaving my house and you'll find Lumbridge.") + player("I've got some wool. I've not managed to make it into a ball, though.") + npc("Well, go find a spinning wheel then. You can find one on the first floor of Lumbridge Castle; just turn right and follow the path when leaving my house and you'll find Lumbridge.") } } itemOnNPCOperate("wool", "fred_the_farmer_lumbridge") { if (quest("sheep_shearer_miniquest") == "started") { - npc("That wool is white, I'm dealing with a guy looking to do business with black wool only.") + npc("That wool is white, I'm dealing with a guy looking to do business with black wool only.") } } } suspend fun Player.jobNotStarted() { choice { - option("I'm looking for something to kill.") { + option("I'm looking for something to kill.") { npc("What, on my land? Leave my livestock alone!") } - option("I'm lost.") { + option("I'm lost.") { npc("How can you be lost? Just follow the road east and south. You'll end up in Lumbridge fairly quickly.") } - option("I'm looking for work.") { + option("I'm looking for work.") { npc("Oh? Well, I could do with a bit of help, since you're offering.") - npc("I need to collect some black wool from my sheep and I'd be much obliged if you could shear them for me. While you're at it, spin the wool into balls for me too.") + npc("I need to collect some black wool from my sheep and I'd be much obliged if you could shear them for me. While you're at it, spin the wool into balls for me too.") player("Does it have to be black wool?") - npc("Has to be. I'm doing business with some guy after black clothing - something to do with black looking 'cool'.") + npc("Has to be. I'm doing business with some guy after black clothing - something to do with black looking 'cool'.") choice { - option("It takes all sorts, I suppose.") { - npc("Indeed. So if you bring me twenty balls of black wool, I'm sure I could sort out some sort of payment.") + option("It takes all sorts, I suppose.") { + npc("Indeed. So if you bring me twenty balls of black wool, I'm sure I could sort out some sort of payment.") player("So is this a quest?") - npc("No, it isn't. It's work. You do what I say, then you get paid.") + npc("No, it isn't. It's work. You do what I say, then you get paid.") } - option("Black clothing cool? I'm not sure that's true.") { - npc("That's what I thought, but I'm certainly not going to turn down the business. So if you bring me twenty balls of black wool, I'm sure I could sort out some sort of payment.") + option("Black clothing cool? I'm not sure that's true.") { + npc("That's what I thought, but I'm certainly not going to turn down the business. So if you bring me twenty balls of black wool, I'm sure I could sort out some sort of payment.") player("So is this a quest?") - npc("No, it isn't. It's work. You do what I say, then you get paid.") + npc("No, it isn't. It's work. You do what I say, then you get paid.") } } choice { - option("That doesn't sound very exciting.") { + option("That doesn't sound very exciting.") { npc("Well, what do you expect if you ask a farmer?") } option("I'll take the job.") { @@ -109,46 +109,46 @@ class FredTheFarmer : Script { } fun ChoiceOption.alreadyKnowShearing(): Unit = option("Of course!") { - npc("And you know how to spin wool into balls?") + npc("And you know how to spin wool into balls?") choice { woolExpert() spinWool() } } - fun ChoiceOption.spinWool(): Unit = option("I don't know how to spin wool, sorry.") { - npc("Don't worry it's quite simple!") - npc("The nearest Spinning Wheel can be found on the first floor of Lumbridge Castle.") - npc("To get to Lumbridge Castle just follow the road east.") + fun ChoiceOption.spinWool(): Unit = option("I don't know how to spin wool, sorry.") { + npc("Don't worry it's quite simple!") + npc("The nearest Spinning Wheel can be found on the first floor of Lumbridge Castle.") + npc("To get to Lumbridge Castle just follow the road east.") item("spinning_wheel_icon", 1200, "This icon denotes a Spinning Wheel on the world map.") player("Thank you!") } fun ChoiceOption.woolExpert(): Unit = option("I'm something of an expert, actually.") { - npc("Well, you can stop grinning and get to work then.") + npc("Well, you can stop grinning and get to work then.") npc("I'm not paying you by the hour!") } - fun ChoiceOption.shearingTutorial(): Unit = option("Actually, no, I don't.") { + fun ChoiceOption.shearingTutorial(): Unit = option("Actually, no, I don't.") { if (inventory.contains("shears")) { npc("Well, you're halfway there already! You have a set of shears in your inventory. Just use those on a Sheep to shear it.") - player("That's all I have to do?") - npc("Well, once you've collected some wool you'll need to spin it into balls.") + player("That's all I have to do?") + npc("Well, once you've collected some wool you'll need to spin it into balls.") npc("Do you know how to spin wool?") choice { spinWool() woolExpert() } } else { - npc("Well, first things first, you need some shears. There's a pair in my house on the table.") - npc("Or you could buy your own pair from Lumbridge General Store or from the Grand Exchange in Varrock.") - npc("To get to the store, turn right when leaving the farm then follow the path. The store will be just down the road on your right.") + npc("Well, first things first, you need some shears. There's a pair in my house on the table.") + npc("Or you could buy your own pair from Lumbridge General Store or from the Grand Exchange in Varrock.") + npc("To get to the store, turn right when leaving the farm then follow the path. The store will be just down the road on your right.") item("general_store_icon", 1186, "General stores are marked on the map by this symbol.") - npc("Once you have some shears, use them on the sheep in my field.") + npc("Once you have some shears, use them on the sheep in my field.") player("Sounds easy.") - npc("That's what they all say! Some of the sheep don't like it and will run away from you. Persistence is the key.") - npc("And watch out for rams! They will attack you if you try to shear them. You can tell them apart from the rest of the sheep by their curly horns.") - npc("Once you've collected some wool you can spin it into balls.") + npc("That's what they all say! Some of the sheep don't like it and will run away from you. Persistence is the key.") + npc("And watch out for rams! They will attack you if you try to shear them. You can tell them apart from the rest of the sheep by their curly horns.") + npc("Once you've collected some wool you can spin it into balls.") npc("Do you know how to spin wool?") choice { spinWool() @@ -160,13 +160,13 @@ class FredTheFarmer : Script { suspend fun Player.takeJob() { set("sheep_shearer_miniquest", "started") giveBlackBallsOfWool = 20 - npc("Good. Hopefully, you'll be safe from 'The Thing'! Do you actually know how to shear a sheep?") + npc("Good. Hopefully, you'll be safe from 'The Thing'! Do you actually know how to shear a sheep?") choice { alreadyKnowShearing() shearingTutorial() option("What do you mean, 'The Thing'?") { npc("Well now, no one has ever seen 'The Thing'. That's why we call it 'The Thing, cos we don't know what it is.") - npc("Some say it's a black hearted shapeshifter, hungering for the souls of hard working decent folk like me. Others say it's just a sheep.") + npc("Some say it's a black hearted shapeshifter, hungering for the souls of hard working decent folk like me. Others say it's just a sheep.") npc("Well I don't have all day to stand around and gossip. Did you say you knew how to shear sheep?") choice { alreadyKnowShearing() @@ -184,28 +184,28 @@ class FredTheFarmer : Script { choice { if (inventory.contains("ball_of_black_wool")) { option("I have some balls of black wool for you.") { - npc("Give 'em here then.") + npc("Give 'em here then.") giveBlackWool() } } else { if (inventory.contains("black_wool")) { - option("How many more balls of wool do you need?") { - npc("You need to collect $giveBlackBallsOfWool more balls of wool") - player("I've got some wool. I've not managed to make it into a ball, though.") - npc("Well, go find a spinning wheel then. You can find one on the first floor of Lumbridge Castle; just turn right and follow the path when leaving my house and you'll find Lumbridge.") + option("How many more balls of wool do you need?") { + npc("You need to collect $giveBlackBallsOfWool more balls of wool") + player("I've got some wool. I've not managed to make it into a ball, though.") + npc("Well, go find a spinning wheel then. You can find one on the first floor of Lumbridge Castle; just turn right and follow the path when leaving my house and you'll find Lumbridge.") } } else { if (!inventory.contains("ball_of_black_wool")) { - option("How many more balls of wool do you need?") { - npc("You need to collect $giveBlackBallsOfWool more balls of wool") - player("I haven't got any at the moment.") + option("How many more balls of wool do you need?") { + npc("You need to collect $giveBlackBallsOfWool more balls of wool") + player("I haven't got any at the moment.") npc("Ah well at least you haven't been eaten.") } } } } - option("Can you remind me how to get balls of wool?") { - npc("Sure. You need to shear sheep and then spin the wool on a spinning wheel. Anything else?") + option("Can you remind me how to get balls of wool?") { + npc("Sure. You need to shear sheep and then spin the wool on a spinning wheel. Anything else?") choice { remindMeShearing() remindMeSpinning() @@ -219,40 +219,40 @@ class FredTheFarmer : Script { } fun ChoiceOption.theThing(): Unit = option("Fred! Fred! I've seen 'The Thing!'") { - npc("You...you actually saw it?") - npc("Run for the hills! $name, grab as many chickens as you can! We have to...") + npc("You...you actually saw it?") + npc("Run for the hills! $name, grab as many chickens as you can! We have to...") player("Fred!") - npc("..flee! Oh, woe is me! The shape-shifter is coming! We're all...") + npc("..flee! Oh, woe is me! The shape-shifter is coming! We're all...") player("FRED!") - npc("..doomed. What?") - player("It's not a shape-shifter or any other kind of monster.") + npc("..doomed. What?") + player("It's not a shape-shifter or any other kind of monster.") npc("Well, what is it, boy?") - player("Well, it's just two penguins...disguised as a sheep.") - npc("...") + player("Well, it's just two penguins...disguised as a sheep.") + npc("...") npc("Have you been out in the sun too long?") } - fun ChoiceOption.remindMeShearing(): Unit = option("Can you tell me how to shear sheep?") { + fun ChoiceOption.remindMeShearing(): Unit = option("Can you tell me how to shear sheep?") { if (inventory.contains("shears")) { npc("Well, you're halfway there already! You have a set of shears in your inventory. Just use those on a Sheep to shear it.") - player("That's all I have to do?") - npc("Well, once you've collected some wool you'll need to spin it into balls.") - npc("Anything else?") + player("That's all I have to do?") + npc("Well, once you've collected some wool you'll need to spin it into balls.") + npc("Anything else?") choice { remindMeSpinning() option("That's all, thanks.") } } else { - npc("Well, first things first, you need some shears. There's a pair in my house on the table.") - npc("Or you could buy your own pair from Lumbridge General Store or from the Grand Exchange in Varrock.") - npc("To get to the store, turn right when leaving the farm then follow the path. The store will be just down the road on your right.") + npc("Well, first things first, you need some shears. There's a pair in my house on the table.") + npc("Or you could buy your own pair from Lumbridge General Store or from the Grand Exchange in Varrock.") + npc("To get to the store, turn right when leaving the farm then follow the path. The store will be just down the road on your right.") item("general_store_icon", 1186, "General stores are marked on the map by this symbol.") - npc("Once you have some shears, use them on the sheep in my field.") + npc("Once you have some shears, use them on the sheep in my field.") player("Sounds easy.") - npc("That's what they all say! Some of the sheep don't like it and will run away from you. Persistence is the key.") - npc("And watch out for rams! They will attack you if you try to shear them. You can tell them apart from the rest of the sheep by their curly horns.") - npc("Once you've collected some wool you can spin it into balls.") - npc("Anything else?") + npc("That's what they all say! Some of the sheep don't like it and will run away from you. Persistence is the key.") + npc("And watch out for rams! They will attack you if you try to shear them. You can tell them apart from the rest of the sheep by their curly horns.") + npc("Once you've collected some wool you can spin it into balls.") + npc("Anything else?") choice { remindMeSpinning() option("That's all, thanks.") @@ -260,10 +260,10 @@ class FredTheFarmer : Script { } } - fun ChoiceOption.remindMeSpinning(): Unit = option("Can you tell me how to spin wool?") { - npc("Don't worry it's quite simple!") - npc("The nearest Spinning Wheel can be found on the first floor of Lumbridge Castle.") - npc("To get to Lumbridge Castle just follow the road east.") + fun ChoiceOption.remindMeSpinning(): Unit = option("Can you tell me how to spin wool?") { + npc("Don't worry it's quite simple!") + npc("The nearest Spinning Wheel can be found on the first floor of Lumbridge Castle.") + npc("To get to Lumbridge Castle just follow the road east.") item("spinning_wheel_icon", 1200, "This icon denotes a Spinning Wheel on the world map.") choice { remindMeShearing() @@ -278,9 +278,9 @@ class FredTheFarmer : Script { giveBlackBallsOfWool = 0 allTheWool() } else { - player("That's all I've got so far.") - npc("I need $giveBlackBallsOfWool more before I can pay you.") - player("Okay, I'll work on it.") + player("That's all I've got so far.") + npc("I need $giveBlackBallsOfWool more before I can pay you.") + player("Okay, I'll work on it.") } } @@ -288,7 +288,7 @@ class FredTheFarmer : Script { player("That's the last of them.") npc("A pleasure doing business with you. You can shear my sheep whenever you want. You could even sell the wool to the Grand Exchange.") npc("But that's the white ones only, mind you!") - npc("Anyway, I guess I'd better pay you.") + npc("Anyway, I guess I'd better pay you.") item("coins1000_2", 500, "Fred gives you some money and teaches you some Crafting techniques.") set("sheep_shearer_miniquest", "completed") experience.add(Skill.Crafting, 150.0) @@ -299,14 +299,14 @@ class FredTheFarmer : Script { } suspend fun Player.secondReward() { - player("Hello again") + player("Hello again") npc("What are you doing on my land? Ah, it's the sheep shearer! The black wool you helped me with sold exceptionally well. Please accept this as an extra thanks.") statement("The farmer hands over 1,940 coins.") if (inventory.add("coins", 1940)) { set("sheep_shearer_miniquest", "completed_with_second_reward") player("Thank you!") } else { - player("Great news, but I need to free up some inventory space first. I'll be right back.") + player("Great news, but I need to free up some inventory space first. I'll be right back.") message("Inventory full. To make more room, sell, drop or bank something.") return } @@ -315,10 +315,10 @@ class FredTheFarmer : Script { suspend fun Player.fullyCompleted() { npc("What are you doing on my land? You're not the one who keeps leaving all my gates open and letting out all my sheep are you?") choice { - option("I'm looking for something to kill.") { + option("I'm looking for something to kill.") { npc("What, on my land? Leave my livestock alone!") } - option("I'm lost.") { + option("I'm lost.") { npc("How can you be lost? Just follow the road east and south. You'll end up in Lumbridge fairly quickly.") } if (get("the_thing_interacted", false)) { diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/Lachtopher.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/Lachtopher.kt index 4db8958072..8ec210294c 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/Lachtopher.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/Lachtopher.kt @@ -1,9 +1,9 @@ package content.area.misthalin.lumbridge import content.entity.player.dialogue.Angry +import content.entity.player.dialogue.Bored import content.entity.player.dialogue.Happy import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.RollEyes import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player import world.gregs.voidps.engine.Script @@ -13,15 +13,15 @@ class Lachtopher : Script { init { npcOperate("Talk-to", "lachtopher") { player("Hello there.") - npc("Hello, I suppose. I'm Lachtopher. Could you lend me some money?") + npc("Hello, I suppose. I'm Lachtopher. Could you lend me some money?") player("Lend you money? I really don't think so. Don't you have any of your own?") - npc("I spent it all and I can't be bothered to earn any more.") + npc("I spent it all and I can't be bothered to earn any more.") player("Right, and you want my hard-earned money instead? No chance!") - npc("You're just like my sister, Victoria. She won't give me any money.") + npc("You're just like my sister, Victoria. She won't give me any money.") player("Your sister sounds like she has the right idea.") - npc("Yeah, I've heard it all before. 'Oh,' she says, 'It's easy to make money: just complete Tasks for cash.") + npc("Yeah, I've heard it all before. 'Oh,' she says, 'It's easy to make money: just complete Tasks for cash.") player("Well, if you want to make money...") - npc("That's just it. I don't want to make money. I just want to have money.") + npc("That's just it. I don't want to make money. I just want to have money.") player("I've had it with you! I don't think I've come across a less worthwhile person.") player("I think I'll call you Lazy Lachtopher, from now on.") } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/LumbridgeMen.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/LumbridgeMen.kt index b1b794d818..0746c9bfab 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/LumbridgeMen.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/LumbridgeMen.kt @@ -1,8 +1,8 @@ package content.area.misthalin.lumbridge import content.entity.player.dialogue.* +import content.entity.player.dialogue.Disheartened import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Sad import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player import world.gregs.voidps.engine.Script @@ -21,8 +21,8 @@ class LumbridgeMen : Script { 5 -> player("Greetings.") } when (random.nextInt(0, 15)) { - 0 -> npc("I have to go all the way through the swamp to go mining. My poor feet!") - 1 -> npc("Hello. I'm Sorry to say that Lumbridge is not what it once was.") + 0 -> npc("I have to go all the way through the swamp to go mining. My poor feet!") + 1 -> npc("Hello. I'm Sorry to say that Lumbridge is not what it once was.") 2 -> npc("You're not from around here, are you? I can see it in your eyes.") 3 -> npc("Sorry, were you speaking to me? I was daydreaming. Hello, anyway.") 4 -> npc("Sorry, I don't speak to strangers. They're weird.") @@ -32,7 +32,7 @@ class LumbridgeMen : Script { 8 -> npc("They really need to fix the castle flag. Every time you raise it, it just comes back down. Shoddy maintenance.") 9 -> npc("Hello, I'm glad to see an adventurer about. There's an increase in goblins hanging around the area.") 10 -> npc("Another adventurer, off to save the world, eh?") - 11 -> npc("Don't come near me, I have a cold!") + 11 -> npc("Don't come near me, I have a cold!") 12 -> npc("Hey, do you like my clothes? They're new.") 13 -> npc("Don't ask me for directions, I'm just a tourist here.") 14 -> npc("Welcome to Lumbridge") diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/LumbridgeSage.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/LumbridgeSage.kt index 5d43f20cb0..380c387f7b 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/LumbridgeSage.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/LumbridgeSage.kt @@ -1,7 +1,7 @@ package content.area.misthalin.lumbridge import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Quiz import content.entity.player.dialogue.type.ChoiceOption import content.entity.player.dialogue.type.choice @@ -16,13 +16,13 @@ class LumbridgeSage : Script { choice { whoSage() castleLum() - option("I'm fine for now, thanks.") + option("I'm fine for now, thanks.") } } } fun ChoiceOption.whoSage(): Unit = option ("Who are you?") { - npc("I am Phileas, the Lumbridge Sage. In times past, people came from all around to ask me for advice. My renown seems to have diminished somewhat in recent years, though. Can I help you with anything?") + npc("I am Phileas, the Lumbridge Sage. In times past, people came from all around to ask me for advice. My renown seems to have diminished somewhat in recent years, though. Can I help you with anything?") set("sage_advice_task", true) choice { castleLum() @@ -31,8 +31,8 @@ class LumbridgeSage : Script { } fun ChoiceOption.castleLum(): Unit = option("Tell me about the town of Lumbridge.") { - npc("Lumbridge is one of the older towns in the human-controlled kingdoms. It was founded over two hundred years ago towards the end of the Fourth Age. It's called Lumbridge because of this bridge built over the") - npc("River Lum. The town is governed by Duke Horacio, who is a good friend of our monarch, King Roald of Misthalin.") + npc("Lumbridge is one of the older towns in the human-controlled kingdoms. It was founded over two hundred years ago towards the end of the Fourth Age. It's called Lumbridge because of this bridge built over the") + npc("River Lum. The town is governed by Duke Horacio, who is a good friend of our monarch, King Roald of Misthalin.") set("sage_advice_task", true) choice { whoSage() diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/Men.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/Men.kt index 1f87ff4b7f..84f6b4c3f4 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/Men.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/Men.kt @@ -21,20 +21,20 @@ class Men : Script { player("Hello, how's it going?") when (random.nextInt(0, 23)) { 0 -> { - npc("Not too bad, but I'm a little worried about the increase of goblins these days.") + npc("Not too bad, but I'm a little worried about the increase of goblins these days.") player("Don't worry, I'll kill them.") } 1 -> { - npc("How can I help you?") + npc("How can I help you?") choice { - option("Do you wish to trade?") { - npc("No, I have nothing I wish to get rid of. If you want to do some trading, there are plenty of shops and market stalls around though.") + option("Do you wish to trade?") { + npc("No, I have nothing I wish to get rid of. If you want to do some trading, there are plenty of shops and market stalls around though.") } option("I'm in search of a quest.") { - npc("I'm sorry I can't help you there.") + npc("I'm sorry I can't help you there.") } - option("I'm in search of enemies to kill.") { - npc("I've heard there are many fearsome creatures that dwell under the ground...") + option("I'm in search of enemies to kill.") { + npc("I've heard there are many fearsome creatures that dwell under the ground...") } } } @@ -46,36 +46,36 @@ class Men : Script { 4 -> npc("Hello there! Nice weather we've been having.") 5 -> npc("I'm very well thank you.") 6 -> { - npc("Who are you?") + npc("Who are you?") player("I'm a bold adventurer.") npc("Ah, a very noble profession.") } - 7 -> npc("Do I know you? I'm in a hurry!") - 8 -> npc("I think we need a new king. The one we've got isn't very good.") + 7 -> npc("Do I know you? I'm in a hurry!") + 8 -> npc("I think we need a new king. The one we've got isn't very good.") 9 -> npc("Not too bad thanks.") 10 -> { npc("Are you asking for a fight?") target.interactPlayer(this, "Attack") } - 11 -> npc("I'm busy right now.") + 11 -> npc("I'm busy right now.") 12 -> npc("Hello.") 13 -> npc("None of your business.") 14 -> { - player("Do you wish to trade?") - npc("No, I have nothing I wish to get rid of. If you want to do some trading, there are plenty of shops and market stalls around though.") + player("Do you wish to trade?") + npc("No, I have nothing I wish to get rid of. If you want to do some trading, there are plenty of shops and market stalls around though.") } 15 -> { player("I'm in search of a quest.") - npc("I'm sorry I can't help you there.") + npc("I'm sorry I can't help you there.") } 16 -> { - player("I'm in search of enemies to kill.") - npc("I've heard there are many fearsome creatures that dwell under the ground...") + player("I'm in search of enemies to kill.") + npc("I've heard there are many fearsome creatures that dwell under the ground...") } - 17 -> npc("No I don't have any spare change.") - 18 -> npc("I'm a little worried - I've heard there's lots of people going about, killing citizens at random.") + 17 -> npc("No I don't have any spare change.") + 18 -> npc("I'm a little worried - I've heard there's lots of people going about, killing citizens at random.") 19 -> npc("No, I don't want to buy anything!") - 20 -> npc("That is classified information.") + 20 -> npc("That is classified information.") 21 -> { npc("Have this flyer...") if (inventory.isFull()) { diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/Victoria.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/Victoria.kt index 2f07efdc88..2dc06d96d8 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/Victoria.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/Victoria.kt @@ -14,23 +14,23 @@ class Victoria : Script { player("Good day.") npc("To you too, traveller. I am Victoria. Tell me, have you seen my brother, Lachtopher, around the town?") choice("What would you like to say?") { - option("Yes, I've seen Lachtopher.") { - npc("Ah, he'll have asked you for money, no doubt. I hope you didn't give him any.") + option("Yes, I've seen Lachtopher.") { + npc("Ah, he'll have asked you for money, no doubt. I hope you didn't give him any.") choice("What would you like to say?") { option("No, I didn't give him a single coin.") { npc("Oh, good! If you had, then you would never have got it back. My brother is such a waste of space. I've been lending him things for years and he never gives them back.") timesChange() } option("Yes, I loaned him money, just like he asked.") { - npc("Oh dear. I'm sorry to tell you this, but that's the last you'll see of that money. My brother is such a waste of space. I've been lending him things for years and he never gives them back.") + npc("Oh dear. I'm sorry to tell you this, but that's the last you'll see of that money. My brother is such a waste of space. I've been lending him things for years and he never gives them back.") timesChange() } } } - option("No, I haven't seen him.") { + option("No, I haven't seen him.") { npc("Well, if you do meet him, he'll ask you for money, no doubt. Please don't give him any.") player("Why not?") - npc("Sorry to tell you this, but if you lend him money you'll never see it again. My brother is such a waste of space. I've been lending him things for years and he never gives them back.") + npc("Sorry to tell you this, but if you lend him money you'll never see it again. My brother is such a waste of space. I've been lending him things for years and he never gives them back.") timesChange() } } @@ -39,15 +39,15 @@ class Victoria : Script { suspend fun Player.timesChange() { player("Oh dear. Has he always been this way?") - npc("Yes, but it never used to be this bad. You see...") + npc("Yes, but it never used to be this bad. You see...") npc("Lachtopher used to live on the east side of the river, before it was overrun with goblins. Although he didn't have a steady job, he used to help out around farms when he needed cash.") - npc("Then, one day, the Duke told us it was no longer safe to live on the east riverbank, so some villagers had to move across here.") - npc("With no money for lodgings, and nowhere else to go, Lachtopher came to live with me. I've only a small house, so he sleeps downstairs on the floor.") - player("Goodness. That sounds quite uncomfortable.") + npc("Then, one day, the Duke told us it was no longer safe to live on the east riverbank, so some villagers had to move across here.") + npc("With no money for lodgings, and nowhere else to go, Lachtopher came to live with me. I've only a small house, so he sleeps downstairs on the floor.") + player("Goodness. That sounds quite uncomfortable.") npc("Not uncomfortable enough, it seems.") - npc("I thought he'd only be staying for a couple of weeks, just until he'd got some money together, but he's been here for ages now.") + npc("I thought he'd only be staying for a couple of weeks, just until he'd got some money together, but he's been here for ages now.") player("So, why not just throw him out on to the streets?") - npc("Oh, no! I couldn't do that to my brother.") + npc("Oh, no! I couldn't do that to my brother.") npc("Besides, my parents taught me to support and care for those in need. I'm sure that, if I try hard enough, I can change my brother's ways.") npc("That doesn't mean he's having any more money out of me, however. He can have a roof over his head, but that's all.") player("Good luck with that. I don't think Lachtopher deserves a sister like you.") diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Cook.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Cook.kt index 45872763ac..ef648396c2 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Cook.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Cook.kt @@ -22,16 +22,16 @@ class Cook : Script { npcOperate("Talk-to", "cook_lumbridge") { when (quest("cooks_assistant")) { "unstarted" -> { - npc("What am I to do?") + npc("What am I to do?") choice { option("What's wrong?") { startQuest() } option("Can you make me a cake?") { - npc("*sniff* Don't talk to me about cakes...") + npc("*sniff* Don't talk to me about cakes...") startQuest() } - option("You don't look very happy.") { + option("You don't look very happy.") { dontLookHappy() } option("Nice hat!") { @@ -46,7 +46,7 @@ class Cook : Script { } suspend fun Player.started() { - npc("how are you getting on with finding the ingredients?") + npc("how are you getting on with finding the ingredients?") if (holdsItem("top_quality_milk")) { item("top_quality_milk", 500, "You give the top-quality milk to the cook.") inventory.remove("top_quality_milk") @@ -66,34 +66,34 @@ class Cook : Script { player("Here's a super large egg.") } if (holdsItem("egg") && (get("cooks_assistant_egg", 0) == 0)) { - player("I've this egg.") - npc("No, I need a super large egg. You'll probably find one near the local chickens.") + player("I've this egg.") + npc("No, I need a super large egg. You'll probably find one near the local chickens.") } if (holdsItem("pot_of_flour") && (get("cooks_assistant_flour", 0) == 0)) { - player("I've this flour.") - npc("That's not fine enough. I imagine if you speak with Millie at the mill to the north she'll help you out.") + player("I've this flour.") + npc("That's not fine enough. I imagine if you speak with Millie at the mill to the north she'll help you out.") } if (holdsItem("bucket_of_milk") && (get("cooks_assistant_milk", 0) == 0)) { - player("I've this milk.") - npc("Not bad, but not good enough. There's a milk maid that looks after the cows to the north-east. She might have some advice.") + player("I've this milk.") + npc("Not bad, but not good enough. There's a milk maid that looks after the cows to the north-east. She might have some advice.") } if ((get("cooks_assistant_egg", 0) == 1) && (get("cooks_assistant_flour", 0) == 1) && get("cooks_assistant_milk", 0) == 1) { npc("You've brought me everything I need I am saved! Thank you!") player("So, do I get to go to the Duke's party?") - npc("I'm afraid not. Only the big cheeses get to dine with the Duke.") - player("Well, maybe one day, I'll be important enough to sit at the Duke's table.") - npc("Maybe, but I won't be holding my breath.") + npc("I'm afraid not. Only the big cheeses get to dine with the Duke.") + player("Well, maybe one day, I'll be important enough to sit at the Duke's table.") + npc("Maybe, but I won't be holding my breath.") if (inventory.spaces < 2) { - npc("Ah, I have some rewards for you but your inventory seems to be full.") + npc("Ah, I have some rewards for you but your inventory seems to be full.") } else { questComplete() } } else if ((get("cooks_assistant_egg", 0) == 1) || (get("cooks_assistant_flour", 0) == 1) || get("cooks_assistant_milk", 0) == 1) { - npc("Thanks for the ingredients you have got so far. Please get the rest quickly. I'm running out of time! The Duke will throw me out onto the street!") + npc("Thanks for the ingredients you have got so far. Please get the rest quickly. I'm running out of time! The Duke will throw me out onto the street!") stillNeed() } else { - player("I haven't got any of them yet, I'm still looking.") - npc("Please get the ingredients quickly. I'm running out of time! The Duke will throw me out onto the street!") + player("I haven't got any of them yet, I'm still looking.") + npc("Please get the ingredients quickly. I'm running out of time! The Duke will throw me out onto the street!") stillNeed() } } @@ -105,10 +105,10 @@ class Cook : Script { player("I'm getting strong and mighty. Grr.") npc("Glad to hear it.") } - option("I keep on dying.") { + option("I keep on dying.") { npc("Ah, well, at least you keep coming back to life too!") } - option("Can I use your range?") { + option("Can I use your range?") { canIUseRange() } } @@ -136,9 +136,9 @@ class Cook : Script { } suspend fun Player.startQuest() { - player("What's wrong?") - npc("Oh dear, oh dear, oh dear, I'm in a terrible terrible mess! It's the Duke's birthday today, and I should be making him a lovely big birthday cake using special ingredients...") - npc("...but I've forgotten to get the ingredients. I'll never get them in time now. He'll sack me! What will I do? I have four children and a goat to look after. Would you help me? Please?") + player("What's wrong?") + npc("Oh dear, oh dear, oh dear, I'm in a terrible terrible mess! It's the Duke's birthday today, and I should be making him a lovely big birthday cake using special ingredients...") + npc("...but I've forgotten to get the ingredients. I'll never get them in time now. He'll sack me! What will I do? I have four children and a goat to look after. Would you help me? Please?") choice("Start the Cook's Assistant quest?") { option("Yes.") { player("I'm always happy to help a cook in distress.") @@ -150,15 +150,15 @@ class Cook : Script { whereToFind() } option("No.") { - player("No, I don't feel like it. Maybe later.") - npc("Fine. I always knew you Adventurer types were callous beasts. Go on your merry way!") + player("No, I don't feel like it. Maybe later.") + npc("Fine. I always knew you Adventurer types were callous beasts. Go on your merry way!") } } } suspend fun Player.whereToFind() { npc("That's the problem: I don't exactly know. I usually send my assistant to get them for me but he quit.") - npc("I've marked some places on your world map in red. You might want to consider investigating them.") + npc("I've marked some places on your world map in red. You might want to consider investigating them.") } suspend fun Player.stillNeed() { @@ -172,9 +172,9 @@ class Cook : Script { } suspend fun Player.niceHat() { - npc("Err thank you. It's a pretty ordinary cooks hat really.") + npc("Err thank you. It's a pretty ordinary cooks hat really.") player("Still, suits you. The trousers are pretty special too. ") - npc("Its all standard cook's issue uniform...") + npc("Its all standard cook's issue uniform...") player("The whole hat, apron, stripey trousers ensemble - it works. It make you looks like a real cook.") npc("I am a real cook! I haven't got time to be chatting about Culinary Fashion. I am in desperate need of help!") startQuest() @@ -183,34 +183,34 @@ class Cook : Script { suspend fun Player.canIUseRange() { npc("Go ahead! It's very good range; it's better than most other ranges.") npc("It's called the Cook-o-Matic 25 and it uses a combination of state-of-the-art temperature regulation and magic.") - player("Will it mean my food will burn less often?") + player("Will it mean my food will burn less often?") npc("As long as the food is fairly easy to cook in the first place!") if (holdsItem("cook_o_matic_manual")) { npc("The manual you have in your inventory should tell you more.") } else if (inventory.isFull()) { - npc("I'd give you the manual, but you don't have room to take it. Ask me again when you have some space.") + npc("I'd give you the manual, but you don't have room to take it. Ask me again when you have some space.") } else { npc("Here, take this manual. It should tell you everything you need to know about this range.") inventory.add("cook_o_matic_manual") item("cook_o_matic_manual", 500, "The cook hands you a manual.") } - player("Thanks!") + player("Thanks!") } suspend fun Player.dontLookHappy() { - npc("No, I'm not. The world is caving in around me - I am overcome by dark feelings of impending doom.") + npc("No, I'm not. The world is caving in around me - I am overcome by dark feelings of impending doom.") choice { option("What's wrong?") { startQuest() } - option("I'd take the rest of the day off if I were you.") { - npc("No, that's the worst thing I could do. I'd get in terrible trouble.") - player("Well maybe you need to take a holiday...") - npc("That would be nice, but the Duke doesn't allow holidays for core staff.") - player("Hmm, why not run away to the sea and start a new life as a Pirate?") - npc("My wife gets sea sick, and I have an irrational fear of eyepatches. I don't see it working myself.") - player("I'm afraid I've run out of ideas.") - npc("I know I'm doomed.") + option("I'd take the rest of the day off if I were you.") { + npc("No, that's the worst thing I could do. I'd get in terrible trouble.") + player("Well maybe you need to take a holiday...") + npc("That would be nice, but the Duke doesn't allow holidays for core staff.") + player("Hmm, why not run away to the sea and start a new life as a Pirate?") + npc("My wife gets sea sick, and I have an irrational fear of eyepatches. I don't see it working myself.") + player("I'm afraid I've run out of ideas.") + npc("I know I'm doomed.") startQuest() } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/DukeHoracio.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/DukeHoracio.kt index 8e65d88c92..d762f63c96 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/DukeHoracio.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/DukeHoracio.kt @@ -15,7 +15,7 @@ class DukeHoracio : Script { init { npcOperate("Talk-to", "duke_horacio") { set("hail_to_the_duke_baby_task", true) - npc("Greetings. Welcome to my castle.") + npc("Greetings. Welcome to my castle.") when (quest("rune_mysteries")) { "unstarted" -> unstarted() "started" -> started() @@ -28,18 +28,18 @@ class DukeHoracio : Script { choice { option("What did you want me to do again?") { if (ownsItem("air_talisman")) { - npc("Take that talisman I gave you to Sedridor at the Wizards' Tower. You'll find it south west of here, across the bridge from Draynor Village.") + npc("Take that talisman I gave you to Sedridor at the Wizards' Tower. You'll find it south west of here, across the bridge from Draynor Village.") player("Okay, will do.") return@option } npc("Did you take that talisman to Sedridor?") - player("No, I lost it.") - npc("Ah, well that explains things. One of my servants found it outside, and it seemed too much of a coincidence that another would suddenly show up.") + player("No, I lost it.") + npc("Ah, well that explains things. One of my servants found it outside, and it seemed too much of a coincidence that another would suddenly show up.") if (inventory.isFull()) { item("air_talisman", 600, "The Duke tries to hand you the talisman, but you don't have enough room to take it.") return@option } - npc("Here, take it to the Wizards' Tower, south west of here. Please try not to lose it this time.") + npc("Here, take it to the Wizards' Tower, south west of here. Please try not to lose it this time.") inventory.add("air_talisman") item("air_talisman", 600, "The Duke hands you the talisman.") } @@ -50,11 +50,11 @@ class DukeHoracio : Script { suspend fun Player.unstarted() { choice { option("Have you any quests for me?") { - npc("Well, I wouldn't describe it as a quest, but there is something I could use some help with.") + npc("Well, I wouldn't describe it as a quest, but there is something I could use some help with.") player("What is it?") - npc("We were recently sorting through some of the things stored down in the cellar, and we found this old talisman.") + npc("We were recently sorting through some of the things stored down in the cellar, and we found this old talisman.") item("air_talisman", 600, "The Duke shows you a talisman.") - npc("The Order of Wizards over at the Wizards' Tower have been on the hunt for magical artefacts recently. I wonder if this might be just the kind of thing they're after.") + npc("The Order of Wizards over at the Wizards' Tower have been on the hunt for magical artefacts recently. I wonder if this might be just the kind of thing they're after.") npc("Would you be willing to take it to them for me?") startQuest() } @@ -65,14 +65,14 @@ class DukeHoracio : Script { suspend fun Player.completed() { choice { option("Have you any quests for me?") { - npc("The only job I had was the delivery of that talisman, so I'm afraid not.") + npc("The only job I had was the delivery of that talisman, so I'm afraid not.") } findMoney() } } fun ChoiceOption.findMoney(): Unit = option("Where can I find money?") { - npc("I've heard that the blacksmiths are prosperous amongst the peasantry. Maybe you could try your hand at that?") + npc("I've heard that the blacksmiths are prosperous amongst the peasantry. Maybe you could try your hand at that?") } suspend fun Player.startQuest() { @@ -84,12 +84,12 @@ class DukeHoracio : Script { } set("rune_mysteries", "started") inventory.add("air_talisman") - npc("Thank you very much. You'll find the Wizards' Tower south west of here, across the bridge from Draynor Village. When you arrive, look for Sedridor. He is the Archmage of the wizards there.") + npc("Thank you very much. You'll find the Wizards' Tower south west of here, across the bridge from Draynor Village. When you arrive, look for Sedridor. He is the Archmage of the wizards there.") refreshQuestJournal() item("air_talisman", 600, "The Duke hands you the talisman.") } - option("Not right now.") { - npc("As you wish. Hopefully I can find someone else to help.") + option("Not right now.") { + npc("As you wish. Hopefully I can find someone else to help.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Hans.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Hans.kt index 0225821500..638c58f8b0 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Hans.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Hans.kt @@ -1,8 +1,8 @@ package content.area.misthalin.lumbridge.castle +import content.entity.player.dialogue.Confused import content.entity.player.dialogue.EvilLaugh -import content.entity.player.dialogue.Talk -import content.entity.player.dialogue.Uncertain +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import world.gregs.voidps.engine.Script @@ -12,17 +12,17 @@ class Hans : Script { init { npcOperate("Talk-to", "hans") { (target) -> - npc("Hello. What are you doing here?") + npc("Hello. What are you doing here?") choice { - option("I'm looking for whoever is in charge of this place.") { - npc("Who, the Duke? He's in his study, on the first floor.") + option("I'm looking for whoever is in charge of this place.") { + npc("Who, the Duke? He's in his study, on the first floor.") } option("I have come to kill everyone in this castle!") { target.say("Help! Help!") target.mode = Retreat(target, this) } - option("I don't know. I'm lost. Where am I?") { - npc("You are in Lumbridge Castle.") + option("I don't know. I'm lost. Where am I?") { + npc("You are in Lumbridge Castle.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/LumbridgeGuardsman.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/LumbridgeGuardsman.kt index 2d68d05084..6462fd40f1 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/LumbridgeGuardsman.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/LumbridgeGuardsman.kt @@ -2,7 +2,7 @@ package content.area.misthalin.lumbridge.castle import content.entity.combat.inCombat import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Quiz import content.entity.player.dialogue.type.* import world.gregs.voidps.engine.Script @@ -35,7 +35,7 @@ class LumbridgeGuardsman : Script { aroundHere() tellMeLumbridge() whatAreGuarding() - option("Bye.") + option("Bye.") } } } @@ -50,7 +50,7 @@ class LumbridgeGuardsman : Script { aroundHere() tellMeLumbridge() whatAreGuarding() - option("Bye.") + option("Bye.") } } @@ -64,22 +64,22 @@ class LumbridgeGuardsman : Script { aroundHere() tellMeLumbridge() whatAreGuarding() - option("Bye.") + option("Bye.") } } fun ChoiceOption.tellMeLumbridge(): Unit = option("Tell me about Lumbridge.") { when (random.nextInt(0, 3)) { - 0 -> npc("It used to be much nicer here, before the goblins overran the east side of town. You'd think that the Guardsmen would be sent to flush them out, but for every one we slay, three more appear in its place.") - 1 -> npc("If I'm honest, I don't much care for it here. I understand why so many do enjoy the lifestyle, but I long for the city life. If I do well in my job here, perhaps I could move to Varrock, or Falador, and join the guards there.") - 2 -> npc("I suppose it's a good place to find your feet in the world. There's reasonable fishing in the river, and with lots of farmland around it's rare that you go hungry. Yes, there's plenty worse places you could live in than Lumbridge.") + 0 -> npc("It used to be much nicer here, before the goblins overran the east side of town. You'd think that the Guardsmen would be sent to flush them out, but for every one we slay, three more appear in its place.") + 1 -> npc("If I'm honest, I don't much care for it here. I understand why so many do enjoy the lifestyle, but I long for the city life. If I do well in my job here, perhaps I could move to Varrock, or Falador, and join the guards there.") + 2 -> npc("I suppose it's a good place to find your feet in the world. There's reasonable fishing in the river, and with lots of farmland around it's rare that you go hungry. Yes, there's plenty worse places you could live in than Lumbridge.") } choice("What would you like to say?") { tellMeGuardsmen() aroundHere() tellMeLumbridge() whatAreGuarding() - option("Bye.") + option("Bye.") } } @@ -93,7 +93,7 @@ class LumbridgeGuardsman : Script { aroundHere() tellMeLumbridge() whatAreGuarding() - option("Bye.") + option("Bye.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Sigmund.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Sigmund.kt index 0f62f312e5..92190309c6 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Sigmund.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/castle/Sigmund.kt @@ -1,6 +1,6 @@ package content.area.misthalin.lumbridge.castle -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Quiz import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc @@ -12,16 +12,16 @@ class Sigmund : Script { init { npcOperate("Talk-to", "sigmund") { - npc("Can I help you?") + npc("Can I help you?") choice { option("Do you have any quests for me?") { - npc("I hear the Duke has a task for an adventurer. Otherwise, if you want to make yourself useful, there are always evil monsters to slay.") - player("Okay, I might just do that.") + npc("I hear the Duke has a task for an adventurer. Otherwise, if you want to make yourself useful, there are always evil monsters to slay.") + player("Okay, I might just do that.") } option("Who are you?") { - npc("I'm the Duke's advisor.") + npc("I'm the Duke's advisor.") player("Can you give me any advice then?") - npc("I only advice the Duke. But if you want to make yourself useful, there are evil goblins to slay on the other side of the river.") + npc("I only advice the Duke. But if you want to make yourself useful, there are evil goblins to slay on the other side of the river.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/church/FatherAereck.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/church/FatherAereck.kt index d0d8504fd0..357cd70a65 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/church/FatherAereck.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/church/FatherAereck.kt @@ -31,14 +31,14 @@ class FatherAereck : Script { npc("Thank you. The problem is, there is a ghost in the church graveyard. I would like you to get rid of it.") npc("If you need any help, my friend Father Urhney is an expert on ghosts.") npc("I believe he is currently living as a hermit in Lumbridge swamp. He has a little shack in the far west of the swamps.") - npc("Exit the graveyard through the south gate to reach the swamp. I'm sure if you told him that I sent you he'd be willing to help.") + npc("Exit the graveyard through the south gate to reach the swamp. I'm sure if you told him that I sent you he'd be willing to help.") npc("My name is Father Aereck by the way. Pleased to meet you.") player("Likewise.") - npc("Take care travelling through the swamps, I have heard they can be quite dangerous.") + npc("Take care travelling through the swamps, I have heard they can be quite dangerous.") player("I will, thanks.") } else { - player("Actually, I don't have time right now.") - npc("Oh well. If you do have some spare time on your hands, come back and talk to me.") + player("Actually, I don't have time right now.") + npc("Oh well. If you do have some spare time on your hands, come back and talk to me.") } } } @@ -53,37 +53,37 @@ class FatherAereck : Script { } suspend fun Player.started() { - npc("Have you got rid of the ghost yet?") - player("I can't find Father Urhney at the moment.") + npc("Have you got rid of the ghost yet?") + player("I can't find Father Urhney at the moment.") npc("Well, you can get to the swamp he lives in by going south through the cemetery.") npc("You'll have to go right into the far western depths of the swamp, near the coastline. That is where his house is.") } suspend fun Player.ghost() { - npc("Have you got rid of the ghost yet?") - player("I had a talk with Father Urhney. He has given me this funny amulet to talk to the ghost with.") - npc("I always wondered what that amulet was... Well, I hope it's useful. Tell me when you get rid of the ghost!") + npc("Have you got rid of the ghost yet?") + player("I had a talk with Father Urhney. He has given me this funny amulet to talk to the ghost with.") + npc("I always wondered what that amulet was... Well, I hope it's useful. Tell me when you get rid of the ghost!") } suspend fun Player.miningSpot() { - npc("Have you got rid of the ghost yet?") - player("I've found out that the ghost's corpse has lost its skull. If I can find the skull, the ghost should leave.") - npc("That WOULD explain it.") - npc("Hmmmmm. Well, I haven't seen any skulls.") - player("Yes, I think a warlock has stolen it.") + npc("Have you got rid of the ghost yet?") + player("I've found out that the ghost's corpse has lost its skull. If I can find the skull, the ghost should leave.") + npc("That WOULD explain it.") + npc("Hmmmmm. Well, I haven't seen any skulls.") + player("Yes, I think a warlock has stolen it.") npc("I hate warlocks.") npc("Ah well, good luck!") } suspend fun Player.foundSkull() { if (holdsItem("ghostspeak_amulet")) { - npc("Have you got rid of the ghost yet?") + npc("Have you got rid of the ghost yet?") player("I've finally found the ghost's skull!") npc("Great! Put it in the ghost's coffin and see what happens!") } else { - npc("Have you got rid of the ghost yet?") - player("Well, I found the ghost's skull but then lost it.") - npc("Don't worry, I'm sure you'll find it again.") + npc("Have you got rid of the ghost yet?") + player("Well, I found the ghost's skull but then lost it.") + npc("Don't worry, I'm sure you'll find it again.") } } @@ -114,26 +114,26 @@ class FatherAereck : Script { fun ChoiceOption.whosSaradomin() { option("Who's Saradomin?") { - npc("Surely you have heard of the god, Saradomin?") - npc("He who creates the forces of goodness and purity in this world? I cannot believe your ignorance!") - npc("This is the god with more followers than any other! ...At least in this part of the world.") - npc("He who created this world along with his brothers Guthix and Zamorak?") + npc("Surely you have heard of the god, Saradomin?") + npc("He who creates the forces of goodness and purity in this world? I cannot believe your ignorance!") + npc("This is the god with more followers than any other! ...At least in this part of the world.") + npc("He who created this world along with his brothers Guthix and Zamorak?") choice { - option("Oh, THAT Saradomin...") { - npc("There... is only one Saradomin...") - player("Yeah... I, uh, thought you said something else.") + option("Oh, THAT Saradomin...") { + npc("There... is only one Saradomin...") + player("Yeah... I, uh, thought you said something else.") } - option("Oh, sorry. I'm not from this world.") { - npc("...") - npc("That's... strange.") - npc("I thought things not from this world were all... You know. Slime and tentacles.") + option("Oh, sorry. I'm not from this world.") { + npc("...") + npc("That's... strange.") + npc("I thought things not from this world were all... You know. Slime and tentacles.") choice { - option("You don't understand. This is an online game!") { - npc("I... beg your pardon?") - player("Never mind.") + option("You don't understand. This is an online game!") { + npc("I... beg your pardon?") + player("Never mind.") } option("I am - do you like my disguise?") { - npc("Aargh! Avaunt foul creature from another dimension! Avaunt! Begone in the name of Saradomin!") + npc("Aargh! Avaunt foul creature from another dimension! Avaunt! Begone in the name of Saradomin!") player("Ok, ok, I was only joking...") } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/MagicTutor.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/MagicTutor.kt index b21d19df99..9580a0626e 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/MagicTutor.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/MagicTutor.kt @@ -39,7 +39,7 @@ class MagicTutor : Script { } } - fun ChoiceOption.magicCombat(): Unit = option("Tell me about magic combat please.") { + fun ChoiceOption.magicCombat(): Unit = option("Tell me about magic combat please.") { npc("Of course $name! As a rule of thumb, if you cast the highest spell of which you're capable, you'll get the best experience possible.") npc("Wearing metal armour and ranged armour can seriously impair your magical abilities. Make sure you wear some robes to maximise your capabilities.") npc("Superheat Item and the Alchemy spells are good ways to level magic if you are not interested in the combat aspect of magic.") @@ -78,12 +78,12 @@ class MagicTutor : Script { return@option } if (inventory.isFull()) { - npc("If you had enough space in your inventory I'd give you some mind runes, come back when you do.") + npc("If you had enough space in your inventory I'd give you some mind runes, come back when you do.") inventoryFull() return@option } if (inventory.spaces < 2) { - npc("If you had enough space in your inventory I'd give you some air runes, come back when you do.") + npc("If you had enough space in your inventory I'd give you some air runes, come back when you do.") inventoryFull() return@option } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/MeleeTutor.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/MeleeTutor.kt index 8e7bf2907a..e3882eb404 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/MeleeTutor.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/MeleeTutor.kt @@ -38,30 +38,30 @@ class MeleeTutor : Script { } fun ChoiceOption.meleeCombat(): Unit = option("Tell me about melee combat.") { - npc("Well adventurer, the first thing you will need is a sword and a shield appropriate for your level.") + npc("Well adventurer, the first thing you will need is a sword and a shield appropriate for your level.") // look down talking, look up eyebrow raised then quiet tab(Tab.WornEquipment) - npc("Make sure to equip your sword and shield. Click on them in your inventory, they will disappear from your inventory and move to your worn items. You can see your worn items in the worn items tab here.") + npc("Make sure to equip your sword and shield. Click on them in your inventory, they will disappear from your inventory and move to your worn items. You can see your worn items in the worn items tab here.") tab(Tab.CombatStyles) - npc("When you are wielding your sword you will then be able to see the correct options in the combat interface.") - npc("There are four different melee styles. Accurate, aggressive, defensive and controlled. Not all weapons will have all four styles though.") + npc("When you are wielding your sword you will then be able to see the correct options in the combat interface.") + npc("There are four different melee styles. Accurate, aggressive, defensive and controlled. Not all weapons will have all four styles though.") player("Interesting, what does each style do?") - npc("Well I am glad you asked. The accurate style will give you experience points in your Attack skill, you will also find you will deal damage more frequently as a result of being, well, more accurate.") - npc("Next we have the aggressive style. This style will give you experience points in your Strength skill. When using this style you will notice that your attacks will hit a little harder.") - npc("Now for the defensive style, this style will give you experience points in your Defensive skill. When using this style you will notice that you get hit less often.") - npc("Finally, we have the controlled style. This style will give you the same amount of experience as the other styles would but shared across all three of the combat skills.") - npc("If you were using the training sword for example, there are four different attack types. Stab, lunge, slash and block.") - npc("Each type uses one of the attack styles. Stab uses accurate, lunge and slash use aggressive and block uses defensive.") - npc("To find out which style an attack type uses, hover your mouse cursor over the style button.") + npc("Well I am glad you asked. The accurate style will give you experience points in your Attack skill, you will also find you will deal damage more frequently as a result of being, well, more accurate.") + npc("Next we have the aggressive style. This style will give you experience points in your Strength skill. When using this style you will notice that your attacks will hit a little harder.") + npc("Now for the defensive style, this style will give you experience points in your Defensive skill. When using this style you will notice that you get hit less often.") + npc("Finally, we have the controlled style. This style will give you the same amount of experience as the other styles would but shared across all three of the combat skills.") + npc("If you were using the training sword for example, there are four different attack types. Stab, lunge, slash and block.") + npc("Each type uses one of the attack styles. Stab uses accurate, lunge and slash use aggressive and block uses defensive.") + npc("To find out which style an attack type uses, hover your mouse cursor over the style button.") npc("Is there anything else you would like to know?") choice { option("What if I wanted to fight something a bit more... human.") { - player("What if I wanted to fight something a bit more... human.") + player("What if I wanted to fight something a bit more... human.") npc("Well adventurer, there are a few places you might be able to do this.") - npc("You could try your luck at castle wars. Here, two teams fight each other to defend their respective flags. To win the game you will need to get the other team's flag and return it to your flag stand.") + npc("You could try your luck at castle wars. Here, two teams fight each other to defend their respective flags. To win the game you will need to get the other team's flag and return it to your flag stand.") player("Capture the flag, sounds like a lot of fun.") - npc("If you are in a clan, you should gather some clan members and try out clan wars. There you can see which clan is better than the other by fighting each other in an arena.") - npc("Both activities are safe minigame, which means if you die you will not loose any of your items. You can get to them by using the teleport option in your minigames tab.") + npc("If you are in a clan, you should gather some clan members and try out clan wars. There you can see which clan is better than the other by fighting each other in an arena.") + npc("Both activities are safe minigame, which means if you die you will not loose any of your items. You can get to them by using the teleport option in your minigames tab.") npc("There is also the wilderness. The wilderness is north of Varrock and you can fight other players there. But bare in mind if you die to another player in the wilderness you will lose your stuff.") npc("But this also means that if you kill another player you will be able to take their stuff too.") npc("Only go into the wilderness with items you are willing to lose and pay attention to the wilderness level you are in. The higher the level you go, more player will be able to attack you.") @@ -76,24 +76,24 @@ class MeleeTutor : Script { } } - fun ChoiceOption.weaponTypes(): Unit = option("Tell me about different weapon types I can use.") { + fun ChoiceOption.weaponTypes(): Unit = option("Tell me about different weapon types I can use.") { npc("Well let me see now...There are stabbing type weapons such as daggers, then you have swords which are slashing, maces that have great crushing abilities, battle axes which are powerful.") npc("There are also spears. Spears can be good for Defence and many forms of Attack.") - npc("It depends a lot on how you want to fight. Experiment and find out what is best for you. Never be scared to try out a new weapon; you never know, you might like it!") - npc("While I tried all of them for a while, I settled on this rather good sword.") - npc("You might also find that different weapon types are more accurate against different monsters.") + npc("It depends a lot on how you want to fight. Experiment and find out what is best for you. Never be scared to try out a new weapon; you never know, you might like it!") + npc("While I tried all of them for a while, I settled on this rather good sword.") + npc("You might also find that different weapon types are more accurate against different monsters.") menu("Is there anything else you would like to know?") } - fun ChoiceOption.skillcapes(): Unit = option("Tell me about skillcapes.") { + fun ChoiceOption.skillcapes(): Unit = option("Tell me about skillcapes.") { if (levels.getMax(Skill.Defence) < Level.MAX_LEVEL) { - npc("Of course. Skillcapes are a symbol of achievement. Only people who have mastered a skill and reached level 99 can get their hands on them and gain the benefits they carry.") - npc("The Cape of Defence will act as ring of life, saving you from combat if your hitpoints become low.") + npc("Of course. Skillcapes are a symbol of achievement. Only people who have mastered a skill and reached level 99 can get their hands on them and gain the benefits they carry.") + npc("The Cape of Defence will act as ring of life, saving you from combat if your hitpoints become low.") menu("Is there anything else you would like to know?") return@option } - npc("Ah, but I can see you're already a master in the fine art of Defence. Perhaps you have come to me to purchase a Skillcape of Defence, and thus join the elite few who have mastered this exacting skill?") - npc("In recognition of your defensive abilities, when you have it equipped it will act as ring of life, saving you from combat if your hitpoints become low.") + npc("Ah, but I can see you're already a master in the fine art of Defence. Perhaps you have come to me to purchase a Skillcape of Defence, and thus join the elite few who have mastered this exacting skill?") + npc("In recognition of your defensive abilities, when you have it equipped it will act as ring of life, saving you from combat if your hitpoints become low.") choice { option("May I buy a Skillcape of Defence, please?") { buySkillcape() @@ -105,7 +105,7 @@ class MeleeTutor : Script { } option("Hood") { player("May I have another hood for my cape, please?") - npc("Most certainly, and free of charge!") + npc("Most certainly, and free of charge!") item("defence_hood", 400, "The tutor hands you another hood for your skillcape.") inventory.add("defence_hood") } @@ -116,10 +116,10 @@ class MeleeTutor : Script { suspend fun Player.buySkillcape() { player("May I buy a Skillcape of Defence, please?") - npc("You wish to join the elite defenders of this world? I'm afraid such things do not come cheaply - in fact they cost 99000 coins, to be precise!") + npc("You wish to join the elite defenders of this world? I'm afraid such things do not come cheaply - in fact they cost 99000 coins, to be precise!") choice { option("99000 coins? That's much too expensive.") { - npc("Not at all; there are many other adventurers who would love the opportunity to purchase such a prestigious item! You can find me here if you change your mind.") + npc("Not at all; there are many other adventurers who would love the opportunity to purchase such a prestigious item! You can find me here if you change your mind.") } option("I think I have the money right here, actually.") { player("I think I have the money right here, actually.") @@ -132,18 +132,18 @@ class MeleeTutor : Script { when (inventory.transaction.error) { TransactionError.None -> npc("Excellent! Wear that cape with pride my friend.") is TransactionError.Deficient -> { - player("But, unfortunately, I was mistaken.") - npc("Well, come back and see me when you do.") + player("But, unfortunately, I was mistaken.") + npc("Well, come back and see me when you do.") } is TransactionError.Full, is TransactionError.Invalid -> { - npc("Unfortunately all Skillcapes are only available with a free hood, it's part of a skill promotion deal; buy one get one free, you know. So you'll need to free up some inventory space before I can sell you one.") + npc("Unfortunately all Skillcapes are only available with a free hood, it's part of a skill promotion deal; buy one get one free, you know. So you'll need to free up some inventory space before I can sell you one.") } } } } } - fun ChoiceOption.training(): Unit = option("I'd like a training sword and shield.") { + fun ChoiceOption.training(): Unit = option("I'd like a training sword and shield.") { if (ownsItem("training_sword") || ownsItem("training_shield")) { npc("You already have a training sword and shield. Save some for the other adventurers.") menu("Is there anything else I can help you with?") @@ -151,7 +151,7 @@ class MeleeTutor : Script { } if (inventory.spaces < 2) { - npc("You don't have enough space for me to give you a training sword, nor a shield.") + npc("You don't have enough space for me to give you a training sword, nor a shield.") menu("Is there anything else I can help you with?") return@option } @@ -160,7 +160,7 @@ class MeleeTutor : Script { inventory.add("training_sword") item("training_shield", 800, "Harlan gives you a Training shield.") inventory.add("training_shield") - npc("There you go, use it well.") + npc("There you go, use it well.") menu("Is there anything else I can help you with?") } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/RangeTutor.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/RangeTutor.kt index 4752c8f702..6c83b9b24b 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/RangeTutor.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/combat_hall/RangeTutor.kt @@ -38,7 +38,7 @@ class RangeTutor : Script { } } - fun ChoiceOption.rangedTraining(): Unit = option("How can I train my Ranged?") { + fun ChoiceOption.rangedTraining(): Unit = option("How can I train my Ranged?") { npc("To start with you'll need a bow and arrows, you were given a Shortbow and some arrows when you arrived here from Tutorial island.") npc("Alternatively, you can claim a training bow and some arrows from me.") npc("Mikasi, the Magic Combat tutor and I both give out items every 30 minutes, however you must choose whether you want runes or ranged equipment.") @@ -52,7 +52,7 @@ class RangeTutor : Script { npc("Once you have your bow and arrows, equip them by selecting their Wield option in your inventory.") npc("You can change the way you attack by going to the combat options tab. There are three attack styles for bows. Those styles are Accurate, Rapid and Longrange.") npc("Accurate increases your bows attack accuracy. Rapid will increase your attack speed with the bow. Longrange will let you attack your enemies from a greater distance.") - npc("If you are ever in the market for a new bow or some arrows, you should head on over to Lowe's Archery Emporium in Varrock.") + npc("If you are ever in the market for a new bow or some arrows, you should head on over to Lowe's Archery Emporium in Varrock.") menu("Is there anything else you want to know?") } @@ -84,13 +84,13 @@ class RangeTutor : Script { } if (!ownsItem("training_bow")) { if (inventory.isFull()) { - npc("If you had enough space in your inventory I'd give you a training bow, come back when you do.") + npc("If you had enough space in your inventory I'd give you a training bow, come back when you do.") inventoryFull() return } } if (inventory.spaces < 2) { - npc("If you had enough space in your inventory I'd give you some arrows, come back when you do.") + npc("If you had enough space in your inventory I'd give you some arrows, come back when you do.") inventoryFull() return } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/farm/GillieGroats.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/farm/GillieGroats.kt index 0707e37de0..a0888a0413 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/farm/GillieGroats.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/farm/GillieGroats.kt @@ -1,8 +1,8 @@ package content.area.misthalin.lumbridge.farm import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -17,8 +17,10 @@ class GillieGroats : Script { npcOperate("Talk-to", "gillie_groats") { npc("Hello, I'm Gillie the Milkmaid. What can I do for you?") choice { - option("I'm after some Top-quality milk.", { quest("cooks_assistant") == "started" && !holdsItem("top_quality_milk") }) { - topQualityMilk() + if (quest("cooks_assistant") == "started" && !holdsItem("top_quality_milk")) { + option("I'm after some Top-quality milk.") { + topQualityMilk() + } } option("Who are you?") { whoAreYou() @@ -49,10 +51,10 @@ class GillieGroats : Script { } suspend fun Player.topQualityMilk() { - npc("Really? Is it for something special?") + npc("Really? Is it for something special?") player("Most certainly! It's for the cook to make a cake foe Duke Horacio!") - npc("Wow, it's quite an honour that you'd pick my cows. I'd suggest you get some milk from my prized cow.") + npc("Wow, it's quite an honour that you'd pick my cows. I'd suggest you get some milk from my prized cow.") player("Which one's that?") - npc("She's on the east side of the field, over by the cliff. Be gentle!") + npc("She's on the east side of the field, over by the cliff. Be gentle!") } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/roddecks_house/Roddeck.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/roddecks_house/Roddeck.kt index 0d2a49abd6..ae0114c238 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/roddecks_house/Roddeck.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/roddecks_house/Roddeck.kt @@ -1,10 +1,10 @@ package content.area.misthalin.lumbridge.roddecks_house -import content.entity.player.dialogue.Chuckle +import content.entity.player.dialogue.Bored import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle +import content.entity.player.dialogue.Laugh import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.RollEyes import content.entity.player.dialogue.type.ChoiceOption import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc @@ -18,7 +18,7 @@ class Roddeck : Script { choice("What would you like to say?") { option("Who are you?") { npc("My name is Roddeck, and I am the Advisor. Whenever people in Runescape are in need of advice, they click on the Advisor button to seek my help.") - npc("Apart from that, I'm just an elderly gentleman of Lumbridge, and this is my house.") + npc("Apart from that, I'm just an elderly gentleman of Lumbridge, and this is my house.") npc("Now, was there anything else you wanted?") choice { anyAdvice() @@ -32,9 +32,9 @@ class Roddeck : Script { } fun ChoiceOption.anyAdvice(): Unit = option("Can you offer me any advice?") { - npc("Advice? Certainly, certainly! Click my Advisor button whenever you have a question.") + npc("Advice? Certainly, certainly! Click my Advisor button whenever you have a question.") } - fun ChoiceOption.noThanks(): Unit = option("Nothing, thanks.") { + fun ChoiceOption.noThanks(): Unit = option("Nothing, thanks.") { } } diff --git a/game/src/main/kotlin/content/area/misthalin/lumbridge/windmill/MillieMiller.kt b/game/src/main/kotlin/content/area/misthalin/lumbridge/windmill/MillieMiller.kt index 6a80109da5..53fca2f548 100644 --- a/game/src/main/kotlin/content/area/misthalin/lumbridge/windmill/MillieMiller.kt +++ b/game/src/main/kotlin/content/area/misthalin/lumbridge/windmill/MillieMiller.kt @@ -1,8 +1,8 @@ package content.area.misthalin.lumbridge.windmill import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.* import content.quest.quest import world.gregs.voidps.engine.Script @@ -20,14 +20,16 @@ class MillieMiller : Script { suspend fun Player.menu() { choice { - option("I'm looking for extra fine flour.", { quest("cooks_assistant") == "started" && !holdsItem("extra_fine_flour") }) { - npc("What's wrong with ordinary flour?") - player("Well, I'm no expert chef, but apparently it makes better cakes. This cake, you see, is for Duke Horacio.") - npc("Really? How marvellous! Well, I can sure help you out there. Go ahead and use the mill and I'll realign the millstones to produce extra fine flour. Anything else?") - set("cooks_assistant_talked_to_millie", 1) - choice { - millFlour() - option("I'm fine, thanks.") + if (quest("cooks_assistant") == "started" && !holdsItem("extra_fine_flour")) { + option("I'm looking for extra fine flour.") { + npc("What's wrong with ordinary flour?") + player("Well, I'm no expert chef, but apparently it makes better cakes. This cake, you see, is for Duke Horacio.") + npc("Really? How marvellous! Well, I can sure help you out there. Go ahead and use the mill and I'll realign the millstones to produce extra fine flour. Anything else?") + set("cooks_assistant_talked_to_millie", 1) + choice { + millFlour() + option("I'm fine, thanks.") + } } } whoAreYou() @@ -40,7 +42,7 @@ class MillieMiller : Script { fun ChoiceOption.whoAreYou(): Unit = option("Who are you?") { npc("I'm Miss Millicent Miller the Miller of Mill Lane Mill.Our family have been milling flour for generations.") player("Don't you ever get fed up with flour?") - npc("It's a good business to be in. People will always need flour.") + npc("It's a good business to be in. People will always need flour.") menu() } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/Aubury.kt b/game/src/main/kotlin/content/area/misthalin/varrock/Aubury.kt index 5eadb58406..5c5a5c3fed 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/Aubury.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/Aubury.kt @@ -6,6 +6,7 @@ import content.entity.player.bank.ownsItem import content.entity.player.dialogue.* import content.entity.player.dialogue.type.* import content.quest.quest +import content.quest.questCompleted import content.skill.runecrafting.EssenceMine import world.gregs.voidps.engine.Script import world.gregs.voidps.engine.entity.character.npc.NPC @@ -26,16 +27,18 @@ class Aubury : Script { choice { skillcapes() openShop() - packageForYou() - option( - "Anything useful in that package I gave you?", - { quest("rune_mysteries") == "package_delivered" }, - ) { - npc("Well, let's have a look...") - researchPackage() + if (quest("rune_mysteries") == "research_package") { + packageForYou() + } else if (quest("rune_mysteries") == "package_delivered") { + option("Anything useful in that package I gave you?") { + npc("Well, let's have a look...") + researchPackage() + } } noThanks() - teleport(target) + if (questCompleted("rune_mysteries")) { + teleport(target) + } } } @@ -48,25 +51,19 @@ class Aubury : Script { openShop("auburys_rune_shop") } - fun ChoiceOption.noThanks(message: String = "Oh, it's a rune shop. No thank you, then."): Unit = option(message) { + fun ChoiceOption.noThanks(message: String = "Oh, it's a rune shop. No thank you, then."): Unit = option(message) { npc("Well, if you find someone who does want runes, please send them my way.") } - fun ChoiceOption.teleport(npc: NPC): Unit = option( - "Can you teleport me to the Rune Essence?", - { quest("rune_mysteries") == "completed" }, - ) { - npc("Of course. By the way, if you end up making any runes from the essence you mine, I'll happily buy them from you.") + fun ChoiceOption.teleport(npc: NPC): Unit = option("Can you teleport me to the Rune Essence?") { + npc("Of course. By the way, if you end up making any runes from the essence you mine, I'll happily buy them from you.") EssenceMine.teleport(npc, this) } - fun ChoiceOption.packageForYou(): Unit = option( - "I've been sent here with a package for you.", - { quest("rune_mysteries") == "research_package" }, - ) { - npc("A package? From who?") - player("From Sedridor at the Wizards' Tower.") - npc("From Sedridor? But... surely, he can't have? Please, let me have it. It must be extremely important for him to have sent a stranger.") + fun ChoiceOption.packageForYou(): Unit = option("I've been sent here with a package for you.") { + npc("A package? From who?") + player("From Sedridor at the Wizards' Tower.") + npc("From Sedridor? But... surely, he can't have? Please, let me have it. It must be extremely important for him to have sent a stranger.") if (ownsItem("research_package_rune_mysteries")) { set("rune_mysteries", "package_delivered") inventory.remove("research_package_rune_mysteries") @@ -74,19 +71,19 @@ class Aubury : Script { npc("Now, let's have a look...") researchPackage() } else { - player("Uh... yeah... about that... I kind of don't have it with me...") - npc("What kind of person says they have a delivery for me, but not with them? Honestly.") - npc("Come back when you have it.") + player("Uh... yeah... about that... I kind of don't have it with me...") + npc("What kind of person says they have a delivery for me, but not with them? Honestly.") + npc("Come back when you have it.") } } suspend fun Player.researchPackage() { item("research_package_rune_mysteries", 600, "Aubury goes through the package of research notes.") - npc("This... this is incredible.") + npc("This... this is incredible.") npc("My gratitude to you adventurer for bringing me these research notes. Thanks to you, I think we finally have it.") player("You mean the incantation?") npc("Well when we combine my own research with this latest discovery, I think we might just...") - npc("No, no, I'm getting ahead of myself. The signs are promising, but let's not jump to any conclusions just yet.") + npc("No, no, I'm getting ahead of myself. The signs are promising, but let's not jump to any conclusions just yet.") npc("Here, take these notes back to Sedridor. They should hopefully give him everything he needs.") if (inventory.isFull()) { item("research_notes_rune_mysteries", 600, "Aubury tries to hand you some research notes, but you don't have enough room to take them.") @@ -100,16 +97,16 @@ class Aubury : Script { suspend fun Player.checkNotes() { npc("Hello. Did you take those notes back to Sedridor?") if (inventory.contains("research_notes_rune_mysteries")) { - player("I'm still working on it.") - npc("Don't take too long. He'll be eager to see if this is indeed the breakthrough we were hoping for.") + player("I'm still working on it.") + npc("Don't take too long. He'll be eager to see if this is indeed the breakthrough we were hoping for.") npc("Now, did you want to buy some runes?") choice { openShop() noThanks("No thank you.") } } else { - player("Sorry, but I lost them.") - npc("Well, luckily I have duplicates. It's a good thing they are written in code. I wouldn't want the wrong kind of person to get access to the information contained within.") + player("Sorry, but I lost them.") + npc("Well, luckily I have duplicates. It's a good thing they are written in code. I wouldn't want the wrong kind of person to get access to the information contained within.") if (inventory.isFull()) { item("research_notes_rune_mysteries", 600, "Aubury tries to hand you some research notes, but you don't have enough room to take them.") return @@ -124,7 +121,7 @@ class Aubury : Script { fun ChoiceOption.skillcapes(): Unit = option("Can you tell me about your cape?") { npc("Certainly! Skillcapes are a symbol of achievement. Only people who have mastered a skill and reached level 99 can get their hands on them and gain the benefits they carry.") - npc("The Cape of Runecrafting has been upgraded with each talisman, allowing you to access all Runecrafting altars. Is there anything else I can help you with?") + npc("The Cape of Runecrafting has been upgraded with each talisman, allowing you to access all Runecrafting altars. Is there anything else I can help you with?") choice { option("I'd like to view your store please.") { openShop("runecrafting_skillcape") diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/Baraek.kt b/game/src/main/kotlin/content/area/misthalin/varrock/Baraek.kt index 5db565d465..66b2372049 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/Baraek.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/Baraek.kt @@ -21,10 +21,10 @@ class Baraek : Script { option("Can you sell me some furs?") { sellFur() } - option("Hello. I am in search of a quest.") { - npc("Sorry kiddo, I'm a fur trader not a damsel in distress.") + option("Hello. I am in search of a quest.") { + npc("Sorry kiddo, I'm a fur trader not a damsel in distress.") } - option("Would you like to buy my fur?") { + option("Would you like to buy my fur?") { buyFur() } } @@ -33,8 +33,8 @@ class Baraek : Script { option("Can you sell me some furs?") { sellFur() } - option("Hello. I am in search of a quest.") { - npc("Sorry kiddo, I'm a fur trader not a damsel in distress.") + option("Hello. I am in search of a quest.") { + npc("Sorry kiddo, I'm a fur trader not a damsel in distress.") } } } @@ -42,51 +42,51 @@ class Baraek : Script { } suspend fun Player.sellFur() { - npc("Yeah, sure. They're 20 gold coins each.") + npc("Yeah, sure. They're 20 gold coins each.") choice { - option("Yeah, OK, here you go.") { + option("Yeah, OK, here you go.") { if (inventory.remove("coins", 20)) { inventory.add("bear_fur") item("bear_fur", 645, "Baraek sells you a fur.") } else { - player("Oh dear, I don't have enough money!") - npc("Well, my best price is 18 coins.") + player("Oh dear, I don't have enough money!") + npc("Well, my best price is 18 coins.") choice { - option("OK, here you go.") { + option("OK, here you go.") { if (inventory.remove("coins", 18)) { inventory.add("bear_fur") item("bear_fur", 645, "Baraek sells you a fur.") } else { - player("Oh dear, I don't have that either.") - npc("Well, I can't go any cheaper than that mate. I've got a family to feed.") - player("Oh well, never mind.") + player("Oh dear, I don't have that either.") + npc("Well, I can't go any cheaper than that mate. I've got a family to feed.") + player("Oh well, never mind.") } } - option("No thanks, I'll leave it.") { - npc("It's your loss mate.") + option("No thanks, I'll leave it.") { + npc("It's your loss mate.") } } } } option("20 gold coins? That's an outrage!") { - npc("Well, I can't go any cheaper than that mate. I have a family to feed.") + npc("Well, I can't go any cheaper than that mate. I have a family to feed.") } } } suspend fun Player.buyFur() { - npc("Let's have a look at it.") + npc("Let's have a look at it.") item("bear_fur", 645, "You hand Baraek your fur to look at.") // wait 4sec and cant move - npc("It's not in the best condition. I guess I could give you 12 coins for it.") + npc("It's not in the best condition. I guess I could give you 12 coins for it.") choice { - option("Yeah, that'll do.") { + option("Yeah, that'll do.") { inventory.remove("bear_fur", 1) inventory.add("coins", 12) player("Thanks!") } option("I think I'll keep hold of it actually!") { - npc("Oh ok. Didn't want it anyway!") + npc("Oh ok. Didn't want it anyway!") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/BartenderBlueMoonInn.kt b/game/src/main/kotlin/content/area/misthalin/varrock/BartenderBlueMoonInn.kt index befa49ed48..69a57300fa 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/BartenderBlueMoonInn.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/BartenderBlueMoonInn.kt @@ -3,9 +3,9 @@ package content.area.misthalin.varrock import content.entity.combat.hit.damage import content.entity.npc.shop.buy import content.entity.player.dialogue.Angry +import content.entity.player.dialogue.Disheartened +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Sad -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -25,8 +25,8 @@ class BartenderBlueMoonInn : Script { approachRange(4) npc("What can I do yer for?") choice { - option("A glass of your finest ale please.") { - npc("No problemo. That'll be 2 coins.") + option("A glass of your finest ale please.") { + npc("No problemo. That'll be 2 coins.") if (buy("beer", 2)) { message("You buy a pint of beer.") } @@ -34,7 +34,7 @@ class BartenderBlueMoonInn : Script { option("Can you recommend where an adventurer might make his fortune?") { npc("Ooh I don't know if I should be giving away information, makes the game too easy.") choice { - option("Oh ah well...") + option("Oh ah well...") option("Game? What are you talking about?") { npc("This world around us... is an online game... called ${Settings["server.name"]}.") player("Nope, still don't understand what you are talking about. What does 'online' mean?") @@ -45,7 +45,7 @@ class BartenderBlueMoonInn : Script { npc("Go and talk to the bartender at the Jolly Boar Inn, he doesn't seem to mind giving away clues.") } option("Do you know where I can get some good equipment?") { - npc("Well, there's the sword shop across the road, or there's also all sorts of shops up around the market.") + npc("Well, there's the sword shop across the road, or there's also all sorts of shops up around the market.") } } } @@ -68,8 +68,8 @@ class BartenderBlueMoonInn : Script { suspend fun Player.barCrawl(target: NPC) = barCrawlDrink( target, start = { - npc("Oh no not another of you guys. These barbarian barcrawls cause too much damage to my bar.") - npc("You're going to have to pay 50 gold for the Uncle Humphrey's Gutrot.") + npc("Oh no not another of you guys. These barbarian barcrawls cause too much damage to my bar.") + npc("You're going to have to pay 50 gold for the Uncle Humphrey's Gutrot.") }, effects = { levels.drain(Skill.Attack, 6) diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/BartenderJollyBoarInn.kt b/game/src/main/kotlin/content/area/misthalin/varrock/BartenderJollyBoarInn.kt index fdacdd06b1..1c8fa5693a 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/BartenderJollyBoarInn.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/BartenderJollyBoarInn.kt @@ -2,8 +2,8 @@ package content.area.misthalin.varrock import content.entity.npc.shop.buy import content.entity.player.dialogue.Drunk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -22,22 +22,22 @@ class BartenderJollyBoarInn : Script { npc("Can I help you?") choice { option("I'll have a beer please.") { - player("I'll have a pint of beer please.") - npc("Ok, that'll be two coins please.") + player("I'll have a pint of beer please.") + npc("Ok, that'll be two coins please.") if (buy("beer", 2)) { - player("Ok, here you go.") + player("Ok, here you go.") message("You buy a pint of beer!") } } - option("Any hints where I can go adventuring?") { - npc("Ooh, now. Let me see...") - npc("Well there is the Varrock sewers. There are tales of untold horrors coming out at night and stealing babies from houses.") + option("Any hints where I can go adventuring?") { + npc("Ooh, now. Let me see...") + npc("Well there is the Varrock sewers. There are tales of untold horrors coming out at night and stealing babies from houses.") player("Sounds perfect! Where's the entrance?") - npc("It's just to the east of the palace.") + npc("It's just to the east of the palace.") } - option("Heard any good gossip?") { - npc("I'm not that well up on the gossip out here. I've heard that the bartender in the Blue Moon Inn has gone a little crazy, he keeps claiming he is part of something called an online game.") - player("What that means, I don't know. That's probably old news by now though.") + option("Heard any good gossip?") { + npc("I'm not that well up on the gossip out here. I've heard that the bartender in the Blue Moon Inn has gone a little crazy, he keeps claiming he is part of something called an online game.") + player("What that means, I don't know. That's probably old news by now though.") } if (onBarCrawl(target)) { option("I'm doing Alfred Grimhand's barcrawl.") { diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/Delrith.kt b/game/src/main/kotlin/content/area/misthalin/varrock/Delrith.kt index 1c15bf34fe..cf82ba0ce8 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/Delrith.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/Delrith.kt @@ -110,7 +110,7 @@ class Delrith : Script { val suffix = if (index == 4) "!" else "..." val text = "$selected$suffix" say(text) - player(text, largeHead = true, clickToContinue = false) + player(text, largeHead = true, clickToContinue = false) val expected = DemonSlayerSpell.getWord(player, index + 1) if (selected != expected) { correct = false @@ -223,7 +223,7 @@ class Delrith : Script { for (wizard in wizards) { wizard.say("Arise, Delrith!") } - npc("dark_wizard_water", "Arise, Delrith!", title = "Dark wizards") + npc("dark_wizard_water", "Arise, Delrith!", title = "Dark wizards") statement("The wizards cast an evil spell", clickToContinue = false) val regular = objects[cutscene.tile(3227, 3369), "demon_slayer_stone_table"]!! @@ -265,7 +265,7 @@ class Delrith : Script { wizard.clearAnim() wizard.face(delrith) } - npc( + npc( "denath", """ Ha ha ha! At last you are free, my demonic brother! @@ -277,8 +277,8 @@ class Delrith : Script { wizard.face(this) } delrith.face(this) - npc("dark_wizard_earth", "Who's that?") - npc("denath", "Noo! Not Silverlight! Delrith is not ready yet!") + npc("dark_wizard_earth", "Who's that?") + npc("denath", "Noo! Not Silverlight! Delrith is not ready yet!") denath.walkToDelay(cutscene.tile(3236, 3368)) clearCamera() moveCamera(cutscene.tile(3226, 3383), 1000, 1, 1) diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/GypsyAris.kt b/game/src/main/kotlin/content/area/misthalin/varrock/GypsyAris.kt index 43741a1cf3..1df829b4c2 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/GypsyAris.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/GypsyAris.kt @@ -37,10 +37,10 @@ class GypsyAris : Script { npcOperate("Talk-to", "gypsy_aris") { (target) -> when (quest("demon_slayer")) { "unstarted" -> { - npc("Hello, young one.") - npc("Cross my palm with silver and the future will be revealed to you.") + npc("Hello, young one.") + npc("Cross my palm with silver and the future will be revealed to you.") if (!inventory.contains("coins")) { - player("Oh dear. I don't have any money.") + player("Oh dear. I don't have any money.") return@npcOperate } if (combatLevel < 15) { @@ -55,13 +55,13 @@ class GypsyAris : Script { } "sir_prysin", "key_hunt" -> howGoesQuest() "completed" -> { - npc("Greetings young one.") + npc("Greetings young one.") npc("You're a hero now. That was a good bit of demon-slaying.") choice { - option("How do you know I killed it?") { - npc("You forget. I'm good at knowing things.") + option("How do you know I killed it?") { + npc("You forget. I'm good at knowing things.") } - option("Thanks.") + option("Thanks.") stopCallingMeThat() } } @@ -133,67 +133,67 @@ class GypsyAris : Script { } } - fun ChoiceOption.cityDestroyer(end: suspend Player.() -> Unit): Unit = option("How am I meant to fight a demon who can destroy cities?") { - npc("If you face Delrith while he is still weak from being summoned, and use the correct weapon, you will not find the task too arduous.") - npc("Do not fear. If you follow the path of the great hero Wally, then you are sure to defeat the demon.") + fun ChoiceOption.cityDestroyer(end: suspend Player.() -> Unit): Unit = option("How am I meant to fight a demon who can destroy cities?") { + npc("If you face Delrith while he is still weak from being summoned, and use the correct weapon, you will not find the task too arduous.") + npc("Do not fear. If you follow the path of the great hero Wally, then you are sure to defeat the demon.") end.invoke(this) } fun ChoiceOption.whereIsHe(): Unit = option("Okay, where is he? I'll kill him for you.") { - npc("Ah, the overconfidence of the young!") - npc("Delrith can't be harmed by ordinary weapons. You must face him using the same weapon that Wally used.") + npc("Ah, the overconfidence of the young!") + npc("Delrith can't be harmed by ordinary weapons. You must face him using the same weapon that Wally used.") howToDo() } fun ChoiceOption.notVeryHeroicName(): Unit = option("Wally doesn't sound like a very heroic name.") { - npc("Yes, I know. Maybe that is why history doesn't remember him. However, he was a great hero.") - npc("Who knows how much pain and suffering Delrith would have brought forth without Wally to stop him!") - npc("It looks like you are needed to perform similar heroics.") + npc("Yes, I know. Maybe that is why history doesn't remember him. However, he was a great hero.") + npc("Who knows how much pain and suffering Delrith would have brought forth without Wally to stop him!") + npc("It looks like you are needed to perform similar heroics.") howToDo() } suspend fun Player.incantation() { - player("What is the magical incantation?") - npc("Oh yes, let me think a second.") - npc("Aright, I think I've got it now, it goes... ${getWord(this, 1)}... ${getWord(this, 2)}... ${getWord(this, 3)}.,. ${getWord(this, 4)}.,. ${getWord(this, 5)}. Have you got that?") - player("I think so, yes.") + player("What is the magical incantation?") + npc("Oh yes, let me think a second.") + npc("Aright, I think I've got it now, it goes... ${getWord(this, 1)}... ${getWord(this, 2)}... ${getWord(this, 3)}.,. ${getWord(this, 4)}.,. ${getWord(this, 5)}. Have you got that?") + player("I think so, yes.") } - suspend fun ChoiceOption.notBeliever(): Unit = option("No, I don't believe in that stuff.") { - npc("Ok suit yourself.") + suspend fun ChoiceOption.notBeliever(): Unit = option("No, I don't believe in that stuff.") { + npc("Ok suit yourself.") } - fun ChoiceOption.hereYouGo(target: NPC): Unit = option("Okay, here you go.") { + fun ChoiceOption.hereYouGo(target: NPC): Unit = option("Okay, here you go.") { inventory.remove("coins", 1) npc("Come closer and listen carefully to what the future holds, as I peer into the swirling mists o the crystal ball.") sound("demon_slayer_crystal_ball_start") target.softTimers.start("demon_slayer_crystal_ball") - npc("I can see images forming. I can see you.") - npc("You are holding a very impressive-looking sword. I'm sure I recognise it...") - npc("There is a big, dark shadow appearing now.") + npc("I can see images forming. I can see you.") + npc("You are holding a very impressive-looking sword. I'm sure I recognise it...") + npc("There is a big, dark shadow appearing now.") target.softTimers.stop("demon_slayer_crystal_ball") sound("demon_slayer_crystal_ball_end") - npc("Aaargh!") + npc("Aaargh!") player("Are you all right?") - npc("It's Delrith! Delrith is coming!") - player("Who's Delrith?") - npc("Delrith...") - npc("Delrith is a powerful demon.") - npc("Oh! I really hope he didn't see me looking at him through my crystal ball!") - npc("He tried to destroy this city 150 years ago. He was stopped just in time by the great hero Wally.") - npc("Using his magic sword Silverlight, Wally managed to trap the demon in the stone circle just south of this city.") - npc("Ye gods! Silverlight was the sword you were holding in my vision! You are the one destined to stop the demon this time.") + npc("It's Delrith! Delrith is coming!") + player("Who's Delrith?") + npc("Delrith...") + npc("Delrith is a powerful demon.") + npc("Oh! I really hope he didn't see me looking at him through my crystal ball!") + npc("He tried to destroy this city 150 years ago. He was stopped just in time by the great hero Wally.") + npc("Using his magic sword Silverlight, Wally managed to trap the demon in the stone circle just south of this city.") + npc("Ye gods! Silverlight was the sword you were holding in my vision! You are the one destined to stop the demon this time.") whatToDo() } fun ChoiceOption.whoYouCallingYoung(target: NPC): Unit = option("Who are you called 'young one'?") { - npc("You have been on this world a relatively short time. At least compared to me.") - npc("So, do you want your fortune told or not?") + npc("You have been on this world a relatively short time. At least compared to me.") + npc("So, do you want your fortune told or not?") choice { hereYouGo(target) notBeliever() option("Ooh, how old are you then?") { - npc("Count the number of legs on the stools in the Blue Moon inn, and multiply that number by seven.") + npc("Count the number of legs on the stools in the Blue Moon inn, and multiply that number by seven.") player("Er, yeah, whatever.") } } @@ -225,7 +225,7 @@ class GypsyAris : Script { sound("rumbling") delay(1) open("fade_in") - npc("gypsy_aris", "Wally managed to arrive at the stone circle just as Delrith was summoned by a cult of chaos druids...") + npc("gypsy_aris", "Wally managed to arrive at the stone circle just as Delrith was summoned by a cult of chaos druids...") face(Direction.NORTH) clearCamera() @@ -268,7 +268,7 @@ class GypsyAris : Script { gfx("silverlight_sparkle") npc("wally", "I am the greatest demon slayer EVER!") - npc("By reciting the correct magical incantation, and thrusting Silverlight into Delrith while he was newly summoned, Wally was able to imprison Delrith in the stone table at the centre of the circle.") + npc("By reciting the correct magical incantation, and thrusting Silverlight into Delrith while he was newly summoned, Wally was able to imprison Delrith in the stone table at the centre of the circle.") statement("", clickToContinue = false) queue.clear("demon_slayer_wally_cutscene_end") @@ -278,7 +278,7 @@ class GypsyAris : Script { } fun ChoiceOption.withSilver(target: NPC): Unit = option("With silver?") { - npc("Oh, sorry, I forgot. With gold, I mean. They haven't used silver coins since before you were born! So, do you want your fortune told?") + npc("Oh, sorry, I forgot. With gold, I mean. They haven't used silver coins since before you were born! So, do you want your fortune told?") choice { hereYouGo(target) notBeliever() @@ -286,8 +286,8 @@ class GypsyAris : Script { } suspend fun Player.delrithWillCome() { - npc("Delrith will come forth from the stone circle again.") - npc("I would imagine an evil sorcerer is already beginning the rituals to summon Delrith as we speak.") + npc("Delrith will come forth from the stone circle again.") + npc("I would imagine an evil sorcerer is already beginning the rituals to summon Delrith as we speak.") choice { cityDestroyer { otherQuestions() @@ -306,25 +306,25 @@ class GypsyAris : Script { suspend fun Player.whereSilverlight() { player("Where can I find Silverlight?") - npc("Silverlight has been passed down by Wally's descendants. I believe it is currently in the care of one of the king's knights called Sir Prysin.") + npc("Silverlight has been passed down by Wally's descendants. I believe it is currently in the care of one of the king's knights called Sir Prysin.") npc("He shouldn't be too hard to find. He lives in the royal palace in this city. Tell him Gypsy Aris sent you.") } suspend fun Player.howGoesQuest() { npc("Greetings. How goes thy quest?") - player("I'm still working on it.") - npc("Well if you need any advice I'm always here, young one.") + player("I'm still working on it.") + npc("Well if you need any advice I'm always here, young one.") choice { incantationReminder() silverlightReminder() stopCallingMeThat() - option("Well I'd better press on with it.") { - npc("See you anon.") + option("Well I'd better press on with it.") { + npc("See you anon.") } } } - fun ChoiceOption.okThanks(): Unit = option("Ok thanks. I'll do my best to stop the demon.") { + fun ChoiceOption.okThanks(): Unit = option("Ok thanks. I'll do my best to stop the demon.") { npc("Good luck, and may Guthix be with you!") } @@ -345,11 +345,11 @@ class GypsyAris : Script { } fun ChoiceOption.stopCallingMeThat(): Unit = option("Stop calling me that!") { - npc("In the scheme of things you are very young.") + npc("In the scheme of things you are very young.") choice { - option("Ok but how old are you?") { - npc("Count the number of legs on the stools in the Blue Moon inn, and multiply that number by seven.") - player("Er, yeah, whatever.") + option("Ok but how old are you?") { + npc("Count the number of legs on the stools in the Blue Moon inn, and multiply that number by seven.") + player("Er, yeah, whatever.") } option("Oh if it's in the scheme of things that's ok.") { npc("You show wisdom for one so young.") diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/Iffie.kt b/game/src/main/kotlin/content/area/misthalin/varrock/Iffie.kt index adddf55193..6f54e038d2 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/Iffie.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/Iffie.kt @@ -19,10 +19,10 @@ class Iffie : Script { openShop("iffies_random_costume_shop") } option("Aren't you selling anything?") { - npc("Oh, yes, but only costumes. Thessalia sells some other clothes and runs the makeover service.") + npc("Oh, yes, but only costumes. Thessalia sells some other clothes and runs the makeover service.") } - option("I just came for a chat.") { - npc("Oh, I'm sorry, but I'll never get my knitting done if I stop for a chit-chat with every young ${if (male) "lad" else "lass"} who wanders through the shop!") + option("I just came for a chat.") { + npc("Oh, I'm sorry, but I'll never get my knitting done if I stop for a chit-chat with every young ${if (male) "lad" else "lass"} who wanders through the shop!") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/Tarquin.kt b/game/src/main/kotlin/content/area/misthalin/varrock/Tarquin.kt index 2d8f36a3cf..c77d9c6ae7 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/Tarquin.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/Tarquin.kt @@ -13,26 +13,26 @@ class Tarquin : Script { init { npcOperate("Talk-To", "tarquin") { - player("Hello there.") - npc("Hello old bean. Is there something I can help you with?") + player("Hello there.") + npc("Hello old bean. Is there something I can help you with?") choice { - option("Who are you?") { - npc("My name is Tarquin Marjoribanks.") - npc("I'd be surprised if you haven't already heard of me?") + option("Who are you?") { + npc("My name is Tarquin Marjoribanks.") + npc("I'd be surprised if you haven't already heard of me?") player("Why would I have heard of you Mr. Marjoribanks?") npc("It's pronounced 'Marchbanks'!") - npc("You should know of me because I am a member of the royal family of Misthalin!") + npc("You should know of me because I am a member of the royal family of Misthalin!") player("Are you related to King Roald?") npc("Oh yes! Quite closely actually") - npc("I'm his 4th cousin, once removed on his mothers side.") - player("Er... Okay. What are you doing here then?") - npc("I'm canoeing on the river! It's enormous fun! Would you like to know how?") + npc("I'm his 4th cousin, once removed on his mothers side.") + player("Er... Okay. What are you doing here then?") + npc("I'm canoeing on the river! It's enormous fun! Would you like to know how?") choice { option("Yes") { canoeing() } option("No") { - player("No thanks, not right now.") + player("No thanks, not right now.") } } } @@ -51,40 +51,40 @@ class Tarquin : Script { npc("When you have done that you can shape the log further with your axe to make a canoe.") npc("My personal favourite is the Stable Dugout canoe. A finer craft you'll never see old bean!") npc("A Stable Dugout canoe will take you pretty much the length of the Lum river.") - npc("Of course there are other canoes.") + npc("Of course there are other canoes.") when (levels.get(Skill.Woodcutting)) { in 12..26 -> { - npc("Further up river, near the Barbarian Village, I saw some darned fool 'canoeing' on a log!") - npc("Unfortunately, you don't have the skill to create anything more than one of those logs. I dare say it will only get 1 stop down the river!") - npc("Still, I'm sure it will satisfy one such as yourself.") + npc("Further up river, near the Barbarian Village, I saw some darned fool 'canoeing' on a log!") + npc("Unfortunately, you don't have the skill to create anything more than one of those logs. I dare say it will only get 1 stop down the river!") + npc("Still, I'm sure it will satisfy one such as yourself.") player("What's that supposed to mean?") npc("Do not profane the royal house of Varrock by engaging me in further discourse you knave!") - player("Pfft! I doubt he even knows the King!") + player("Pfft! I doubt he even knows the King!") } in 27..41 -> { npc("You seem to be quite handy with an axe though!") - npc("I'm sure you can build a Dugout canoe. Not as fine as a Stable Dugout but it will carry you 2 stops on the river.") - npc("I should imagine it would suit your limited means.") + npc("I'm sure you can build a Dugout canoe. Not as fine as a Stable Dugout but it will carry you 2 stops on the river.") + npc("I should imagine it would suit your limited means.") player("What do you mean when you say 'limited means'?") - npc("Well, you're just an itinerant adventurer!") + npc("Well, you're just an itinerant adventurer!") npc("What possible reason would you have for cluttering up my river with your inferior water craft!") } in 42..56 -> { npc("Ah! Perfect! You can make a Stable Dugout canoe! One of those will carry you to any civilised place on the river.") - npc("If you were of good pedigree I'd let you join my boat club. You seem to be one of those vagabond adventurers though.") + npc("If you were of good pedigree I'd let you join my boat club. You seem to be one of those vagabond adventurers though.") player("Charming!") npc("Be off with you rogue!") } else -> { npc("My personal favourite is the Stable Dugout canoe. A finer craft you'll never see old bean!") npc("A Stable Dugout canoe will take you pretty much the length of the Lum river.") - npc("Of course there are other canoes.") - npc("Well ... erm. You seem to be able to make a Waka!") + npc("Of course there are other canoes.") + npc("Well ... erm. You seem to be able to make a Waka!") player("Sounds fun, what's a Waka.") - npc("I've only ever seen one man on the river who uses a Waka. A big, fearsome looking fellow up near Edgeville.") + npc("I've only ever seen one man on the river who uses a Waka. A big, fearsome looking fellow up near Edgeville.") npc("People say he was born in the Wilderness and that he is looking for a route back.") - player("Is that true!") - npc("How should I know? I would not consort with such a base fellow!") + player("Is that true!") + npc("How should I know? I would not consort with such a base fellow!") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/Thessalia.kt b/game/src/main/kotlin/content/area/misthalin/varrock/Thessalia.kt index 1d3ef9bb7c..c6033022d0 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/Thessalia.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/Thessalia.kt @@ -3,8 +3,8 @@ package content.area.misthalin.varrock import content.area.asgarnia.falador.openDressingRoom import content.entity.npc.shop.openShop import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.ChoiceOption import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc @@ -126,7 +126,7 @@ class Thessalia : Script { suspend fun Player.startMakeover() { closeDialogue() if (!equipment.isEmpty()) { - npc("You're not able to try on my clothes with all that armour. Take it off and then speak to me again.") + npc("You're not able to try on my clothes with all that armour. Take it off and then speak to me again.") return } openDressingRoom("thessalias_makeovers") diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/BobBarterHerbs.kt b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/BobBarterHerbs.kt index b0ae20a326..ba82401851 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/BobBarterHerbs.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/BobBarterHerbs.kt @@ -62,35 +62,35 @@ class BobBarterHerbs : Script { init { npcOperate("Talk-to", "bob_barter") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - player("Hello.") - npc("Mate, I haven't got time for you yet. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a simpler, plain lesson.") + player("Hello.") + npc("Mate, I haven't got time for you yet. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a simpler, plain lesson.") return@npcOperate } npc("Hello, chum, fancy buyin' some designer jewellery? They've come all the way from Ardougne! Most pukka!") player("Erm, no. I'm all set, thanks.") npc("Okay, chum, would you like to show you the very latest potion prices?") choice { - option("Who are you?") { + option("Who are you?") { npc("Why, I'm Bob! Your friendly seller of smashin' goods!") player("So what do you have to sell?") - npc("Oh, not much at the moment. Cuz, ya know, business being so well and cushie.") - player("You don't really look like you're being so successful.") - npc("You plonka! It's all a show, innit! If I let people knows I'm in good business they'll want a share of the moolah!") - player("You conveniently have a response for everything.") - npc("That's the Ardougne way, my friend.") + npc("Oh, not much at the moment. Cuz, ya know, business being so well and cushie.") + player("You don't really look like you're being so successful.") + npc("You plonka! It's all a show, innit! If I let people knows I'm in good business they'll want a share of the moolah!") + player("You conveniently have a response for everything.") + npc("That's the Ardougne way, my friend.") choice { showPrices() option("I'll leave you to it.") } } showPrices() - option("I'll leave you too it") + option("I'll leave you too it") } } npcOperate("Info-herbs", "bob_barter") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - npc("You'll need a tiny bit of training first, chum. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a smaller, plain lesson.") + npc("You'll need a tiny bit of training first, chum. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a smaller, plain lesson.") return@npcOperate } set("common_item_costs", "herbs") @@ -99,8 +99,8 @@ class BobBarterHerbs : Script { npcOperate("Decant", "bob_barter") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - player("Hello.") - npc("Mate, I haven't got time for you yet. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a simpler, plain lesson.") + player("Hello.") + npc("Mate, I haven't got time for you yet. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a simpler, plain lesson.") return@npcOperate } decantPotions() @@ -108,7 +108,7 @@ class BobBarterHerbs : Script { } fun ChoiceOption.showPrices() { - option("Can you show me the prices for herbs?") { + option("Can you show me the prices for herbs?") { set("common_item_costs", "herbs") open("common_item_costs") } @@ -138,9 +138,9 @@ class BobBarterHerbs : Script { } } when (inventory.transaction.error) { - TransactionError.Invalid -> npc("I wasn't able to decant your potions.") + TransactionError.Invalid -> npc("I wasn't able to decant your potions.") TransactionError.None -> npc("There you go, chum.") - else -> npc("Sorry, I can't do anything with those potions.") + else -> npc("Sorry, I can't do anything with those potions.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/BrugsenBurson.kt b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/BrugsenBurson.kt index cbd9159a96..f092a9014e 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/BrugsenBurson.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/BrugsenBurson.kt @@ -16,19 +16,19 @@ class BrugsenBurson : Script { npcOperate("Talk-to", "brugsen_bursen") { if (!questCompleted("grand_exchange_tutorial")) { player("What is this place?") - npc("Well, this is the fantastic Grand Exchange!") + npc("Well, this is the fantastic Grand Exchange!") npc("I am only too happy to help teach you everything you could possibly want to know. The Tutor nearby can give a brief introduction, too, but he's not as fun as me!") choice { - option("I want to know everything from you!") { - npc("Hahaha! Well, let's being, my friend!") + option("I want to know everything from you!") { + npc("Hahaha! Well, let's being, my friend!") tutorial() } - option("I'd rather speak to the Tutor and get a plain idea.") { - npc("Oh, how boring. I'm so much more entertaining than he is!") + option("I'd rather speak to the Tutor and get a plain idea.") { + npc("Oh, how boring. I'm so much more entertaining than he is!") } - option("I'm not interested in either!") { + option("I'm not interested in either!") { npc("How could this be so?") - npc("Well...I shall be waiting for you if you change your mind.") + npc("Well...I shall be waiting for you if you change your mind.") } } return@npcOperate @@ -39,7 +39,7 @@ class BrugsenBurson : Script { systemDetails() commonPrices() whereDidItComeFrom() - option("Never mind.") + option("Never mind.") } } @@ -68,8 +68,8 @@ class BrugsenBurson : Script { // TODO camera npc("Welcome, my friend, to the Grand Exchange! From here you can simply tell us what you want to buy or sell and for how much, and we'll pair you up with another player and make the trade!") npc("Let me start by telling you how to buy and sell items. They are both quite similar, and can be explained in five simple steps.") - npc("Step 1: You decide what to buy or sell and come here with the items to sell or the money to buy with.") - npc("Step 2: Speak with one of the clerks, behind the desk in the middle of the building and you'll place and offer as follows...") + npc("Step 1: You decide what to buy or sell and come here with the items to sell or the money to buy with.") + npc("Step 2: Speak with one of the clerks, behind the desk in the middle of the building and you'll place and offer as follows...") open("exchange_offers_tutorial") interfaces.sendText("exchange_offers_tutorial", "summary", "First you will see a selection of boxes, each of which represent a possible offer you can place.") interfaces.sendVisibility("exchange_offers_tutorial", "summary_layer", true) @@ -88,15 +88,15 @@ class BrugsenBurson : Script { interfaces.sendText("exchange_offers_tutorial", "summary", "Now the offer is placed! You can click on this anytime you want to see the details of your offer. The progress is shown with a progress bar underneath.") ContinueSuspension.get(this) closeMenu() - npc("Selling items is very much a similar process, just that you are picking an item you already have.") - npc("Step 3: The clerks will have taken the items or money off you and will look for someone to complete the trade.") - npc("Step 4: You then need to wait perhaps a matter of moments or maybe days until someone is looking for what you have offered.") + npc("Selling items is very much a similar process, just that you are picking an item you already have.") + npc("Step 3: The clerks will have taken the items or money off you and will look for someone to complete the trade.") + npc("Step 4: You then need to wait perhaps a matter of moments or maybe days until someone is looking for what you have offered.") open("exchange_wait_tutorial") ContinueSuspension.get(this) closeMenu() - npc("Step 5: When the trade is complete, we will let you know with a message and you can pick up your winnings by talking to the clerks or by visiting any banker in ${Settings["server.name"]}.") - npc("To see costs of commonly traded items, you can talk to one of the characters around the outside of the building.") - npc("Taking note of past successes and failures is important, so the clerks will show you your previous buy and sell attempts on the Grand Exchange.") + npc("Step 5: When the trade is complete, we will let you know with a message and you can pick up your winnings by talking to the clerks or by visiting any banker in ${Settings["server.name"]}.") + npc("To see costs of commonly traded items, you can talk to one of the characters around the outside of the building.") + npc("Taking note of past successes and failures is important, so the clerks will show you your previous buy and sell attempts on the Grand Exchange.") set("grand_exchange_tutorial", "completed") npc("There's a lot to learn, but you're not free to use the Grand Exchange. If you speak with me further I'm more than happy to repeat this tutorial and give more information.") npc("This extra information will be crucial if you wish to make the best deals!") @@ -111,49 +111,49 @@ class BrugsenBurson : Script { fun ChoiceOption.whereDidItComeFrom() { option("Where did the Grand Exchange come from?") { npc("I'm glad you ask! I like telling this story. Are you sitting comfortably?") - player("Erm, I'll stand if that's okay.") - npc("Fine. *Ahem* I shall tell you a story of hard work, dedication and success. I grew up working here in Varrock at my parents' general store. I got a good feel for how the prices of items would rise and fall") - npc("depending on the supply and demand; I always found it interesting how items would go from one person to another, in this long chain of transactions.") - player("So you've always lived here?") - npc("Oh, yes. I'd never consider leaving. Anyway, as I became an adult, I got to know other shop owners around Varrock along with the rich traders that would exchange vast quantities of items in one go.") + player("Erm, I'll stand if that's okay.") + npc("Fine. *Ahem* I shall tell you a story of hard work, dedication and success. I grew up working here in Varrock at my parents' general store. I got a good feel for how the prices of items would rise and fall") + npc("depending on the supply and demand; I always found it interesting how items would go from one person to another, in this long chain of transactions.") + player("So you've always lived here?") + npc("Oh, yes. I'd never consider leaving. Anyway, as I became an adult, I got to know other shop owners around Varrock along with the rich traders that would exchange vast quantities of items in one go.") player("How do you class a big quantity?") - npc("Well, the quantities are always increasing. I remember the day when you could buy some cooked shark for five coins!") - player("Impossible!") - npc("Nope. Straight up. Anyway. I organised a group of us to meet each week to see what deals could be made. It seemed to work so well and we developed a system that became so popular, that each meeting would see a") - npc("variety of new people joining. I kept improving on the system that I had created, but soon it became too big a thing to manage.") - player("I can imagine!") - npc("So, in the end, i decided: why not make this a ${Settings["server.name"]}-wide phenomena? Make it public and allow anyone to join in. Up to this point, it catered for people buying and selling large quantities, but I knew it would work on a smaller scale.") - npc("And I was also in for a bit of luck. You see, one of the initial patrons had deep connections to the banks of ${Settings["server.name"]}. Together, I think you'll agree we have a most friendly system.") + npc("Well, the quantities are always increasing. I remember the day when you could buy some cooked shark for five coins!") + player("Impossible!") + npc("Nope. Straight up. Anyway. I organised a group of us to meet each week to see what deals could be made. It seemed to work so well and we developed a system that became so popular, that each meeting would see a") + npc("variety of new people joining. I kept improving on the system that I had created, but soon it became too big a thing to manage.") + player("I can imagine!") + npc("So, in the end, i decided: why not make this a ${Settings["server.name"]}-wide phenomena? Make it public and allow anyone to join in. Up to this point, it catered for people buying and selling large quantities, but I knew it would work on a smaller scale.") + npc("And I was also in for a bit of luck. You see, one of the initial patrons had deep connections to the banks of ${Settings["server.name"]}. Together, I think you'll agree we have a most friendly system.") player("I feel quite excited now! I have a strange urge to shout, 'Buy, buy, sell, sell!'.") } } fun ChoiceOption.commonPrices() { - option("Can you tell me prices for common items, like...") { + option("Can you tell me prices for common items, like...") { // https://youtu.be/K1vo3SY7Z_g?si=Hgole9yhfo2ORjwK&t=98 choice { - option("The prices of ores.") { - npc("By all means, but you can probably get at this information quicker by visiting Farid M.") + option("The prices of ores.") { + npc("By all means, but you can probably get at this information quicker by visiting Farid M.") set("common_item_costs", "ores") open("common_item_costs") } - option("The prices of runes.") { - npc("My pleasure, but you can probably get at this information quicker by visiting Murky Matt.") + option("The prices of runes.") { + npc("My pleasure, but you can probably get at this information quicker by visiting Murky Matt.") set("common_item_costs", "runes") open("common_item_costs") } - option("The prices of logs.") { - npc("Sure thing, but you can probably get at this information quicker by visiting Relobo.") + option("The prices of logs.") { + npc("Sure thing, but you can probably get at this information quicker by visiting Relobo.") set("common_item_costs", "logs") open("common_item_costs") } - option("The prices of herbs.") { - npc("Of course, but you can probably get at this information quicker by visiting Bob Barter.") + option("The prices of herbs.") { + npc("Of course, but you can probably get at this information quicker by visiting Bob Barter.") set("common_item_costs", "herbs") open("common_item_costs") } - option("The prices of weapons and armour.") { - npc("That's easy, but you can probably get at this information quicker by visiting Hofuthand.") + option("The prices of weapons and armour.") { + npc("That's easy, but you can probably get at this information quicker by visiting Hofuthand.") set("common_item_costs", "combat") open("common_item_costs") } @@ -162,32 +162,32 @@ class BrugsenBurson : Script { } fun ChoiceOption.systemDetails() { - option("Can you tell me more about how the system works?") { + option("Can you tell me more about how the system works?") { npc("Oh, I simply love passing on knowledge. Okay, let me hit you with some facts...") - npc("The Grand Exchange calculates a guide price for each item that can be traded through it, based on the price people paid for that item over the previous days.") - npc("An item's guide price is just a suggested value; you can offer any price you like when setting up your bids.") - npc("You'll find various experts dotted around the building. They can tell you the guide prices of common items.") - npc("Once you've set up an offer, our clerks will keep looking for players willing to complete the trade, even while you're not logged in.") - npc("Item sets! Say, for example, you wish to sell a set of rune armour but you don't want to sell the items individually. If you speak with one of the clerks, they will do a swap with you: a single item representing the armour set in") - npc("exchange for all the component parts. You can then sell this single item on the Grand Exchange! The clerks will also exchange the sets back into their component parts.") - npc("Did you know: you can abort your offers at any time by visiting one of the clerks, choosing to exchange in order to view your current bits, right-clicking on the offer and choosing 'abort'.") - npc("When you're selling lots of items, your offer may not be completed in a single transaction. For example, if you're selling 1,000 logs, and someone wants to buy 200, we'll do that trade and let you collect the money. The remaining 800 logs will stay in the Grand Exchange, waiting for someone else to buy them.") - player("That's a lot of info. I think my brain just melted.") - npc("Hahaha. Not to worry: you can ask me as many times as you want.") + npc("The Grand Exchange calculates a guide price for each item that can be traded through it, based on the price people paid for that item over the previous days.") + npc("An item's guide price is just a suggested value; you can offer any price you like when setting up your bids.") + npc("You'll find various experts dotted around the building. They can tell you the guide prices of common items.") + npc("Once you've set up an offer, our clerks will keep looking for players willing to complete the trade, even while you're not logged in.") + npc("Item sets! Say, for example, you wish to sell a set of rune armour but you don't want to sell the items individually. If you speak with one of the clerks, they will do a swap with you: a single item representing the armour set in") + npc("exchange for all the component parts. You can then sell this single item on the Grand Exchange! The clerks will also exchange the sets back into their component parts.") + npc("Did you know: you can abort your offers at any time by visiting one of the clerks, choosing to exchange in order to view your current bits, right-clicking on the offer and choosing 'abort'.") + npc("When you're selling lots of items, your offer may not be completed in a single transaction. For example, if you're selling 1,000 logs, and someone wants to buy 200, we'll do that trade and let you collect the money. The remaining 800 logs will stay in the Grand Exchange, waiting for someone else to buy them.") + player("That's a lot of info. I think my brain just melted.") + npc("Hahaha. Not to worry: you can ask me as many times as you want.") npc("Trust me, you'll get the hang of it eventually.") choice { teachMeAgain() systemDetails() commonPrices() whereDidItComeFrom() - option("Never mind.") + option("Never mind.") } } } fun ChoiceOption.teachMeAgain() { option("Can you teach me about the Grand Exchange again?") { - npc("Hahaha. It would be my absolute pleasure!") + npc("Hahaha. It would be my absolute pleasure!") tutorial() } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/FaridMorrisaneOres.kt b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/FaridMorrisaneOres.kt index 8b8cd17879..6c0e7f9617 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/FaridMorrisaneOres.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/FaridMorrisaneOres.kt @@ -1,8 +1,8 @@ package content.area.misthalin.varrock.grand_exchange import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.* import content.quest.questCompleted import world.gregs.voidps.engine.Script @@ -14,12 +14,12 @@ class FaridMorrisaneOres : Script { init { npcOperate("Talk-to", "farid_morrisane") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - player("Hello.") - npc("Hmmm, a new trader. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting and complete lesson and the Tutor will give a smaller, plain lesson.") + player("Hello.") + npc("Hmmm, a new trader. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting and complete lesson and the Tutor will give a smaller, plain lesson.") return@npcOperate } player("Hello, little boy.") - npc("I would prefer it if you didn't speak to me in such a manner. I'll have you know I'm an accomplished merchant.") + npc("I would prefer it if you didn't speak to me in such a manner. I'll have you know I'm an accomplished merchant.") choice { calmDown() oresAndBars() @@ -29,7 +29,7 @@ class FaridMorrisaneOres : Script { npcOperate("Info-ores", "farid_morrisane") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - npc("Hmmm, a new trader. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting and complete lesson and the Tutor will give a smaller, plain lesson.") + npc("Hmmm, a new trader. I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting and complete lesson and the Tutor will give a smaller, plain lesson.") return@npcOperate } set("common_item_costs", "ores") @@ -45,19 +45,19 @@ class FaridMorrisaneOres : Script { } fun ChoiceOption.bye() { - option("I best go and speak with someone more my height.") { - npc("Then I shall not stop you. I've too much work to do.") + option("I best go and speak with someone more my height.") { + npc("Then I shall not stop you. I've too much work to do.") } } fun ChoiceOption.calmDown() { - option("Calm down, junior.") { - npc("Don't tell me to calm down! And don't call me 'junior'.") - npc("I'll have you know I am Farid Morrisane, son of Ali Morrisane, the world's greatest merchant!") + option("Calm down, junior.") { + npc("Don't tell me to calm down! And don't call me 'junior'.") + npc("I'll have you know I am Farid Morrisane, son of Ali Morrisane, the world's greatest merchant!") player("Then why are you here and not him?") - npc("My dad has given me the responsibility of expanding our business here.") + npc("My dad has given me the responsibility of expanding our business here.") player("And you're up to the task? What a grown up boy you are! Mummy and daddy must be very pleased!") - npc("Look, mate - I may be young, I may be short, but I'm a respected merchant around here and don't have time to deal with simpletons like you.") + npc("Look, mate - I may be young, I may be short, but I'm a respected merchant around here and don't have time to deal with simpletons like you.") choice { oresAndBars() bye() diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/GrandExchangeClerk.kt b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/GrandExchangeClerk.kt index 1e8b2066ad..c895a17378 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/GrandExchangeClerk.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/GrandExchangeClerk.kt @@ -16,17 +16,17 @@ class GrandExchangeClerk : Script { npcApproach("Talk-to", "grand_exchange_clerk*") { approachRange(2) if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - npc("Excuse me, ${if (male) "sir" else "madam"}, but may I ask you to speak with Brugsen Bursen or the Gand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting, complete lesson on the Grand Exchange and the Tutor will give a smaller, plain lesson.") + npc("Excuse me, ${if (male) "sir" else "madam"}, but may I ask you to speak with Brugsen Bursen or the Gand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting, complete lesson on the Grand Exchange and the Tutor will give a smaller, plain lesson.") return@npcApproach } npc("Welcome to the Grand Exchange. Would you like to trade now, or exchange item sets?") choice { option("How do I use the Grand Exchange?") { npc("My colleague and I can let you set up trade offers. You can offer to Sell items or Buy items.") - npc("When you want to sell something, you give us the items and tell us how much money you want for them.") - npc("We'll look for someone who wants to buy those items at your price, and we'll perform the trade. You can then collect the cash here, or at any bank.") - npc("When you want to buy something, you tell us what you want, and give us the cash you're willing to spend on it.") - npc("We'll look for someone who's selling those items at your price, and we'll perform the trade. You can then collect the items here, or at any bank, along with any left-over cash.") + npc("When you want to sell something, you give us the items and tell us how much money you want for them.") + npc("We'll look for someone who wants to buy those items at your price, and we'll perform the trade. You can then collect the cash here, or at any bank.") + npc("When you want to buy something, you tell us what you want, and give us the cash you're willing to spend on it.") + npc("We'll look for someone who's selling those items at your price, and we'll perform the trade. You can then collect the items here, or at any bank, along with any left-over cash.") npc("Sometimes it takes a while to find a matching trade offer. If you change your mind, we'll let you cancel your trade offer, and we'll return your unused items and cash.") npc("That's all the essential information you need to get started. Would you like to trade now, or exchange item sets?") choice { @@ -67,7 +67,7 @@ class GrandExchangeClerk : Script { fun ChoiceOption.history() { option("Can I see a history of my offers?") { - npc("If that is your wish.") + npc("If that is your wish.") open("exchange_history") } } @@ -79,6 +79,6 @@ class GrandExchangeClerk : Script { } fun ChoiceOption.bye() { - option("I'm fine, thanks.") + option("I'm fine, thanks.") } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/GrandExchangeTutor.kt b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/GrandExchangeTutor.kt index aa2899d061..b2ccfaea3d 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/GrandExchangeTutor.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/GrandExchangeTutor.kt @@ -1,6 +1,6 @@ package content.area.misthalin.varrock.grand_exchange -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import world.gregs.voidps.engine.Script @@ -10,26 +10,26 @@ class GrandExchangeTutor : Script { init { npcOperate("Talk-to", "grand_exchange_tutor") { - npc("How can I help?") + npc("How can I help?") choice { - option("Can you teach me about the Grand Exchange again?") { + option("Can you teach me about the Grand Exchange again?") { // https://www.youtube.com/watch?v=g1estdWyrWU - npc("Of course.") - npc("The building you see here is the Grand Exchange. You can simply tell us what you want to buy or sell and for how much, and we'll pair you up with another player and make the trade for you!") - npc("Buying and selling is done in a very similar way. Let me describe it in five steps.") - npc("Step 1: You decide what to buy or sell and come here with the items to sell or the money to buy with.") - npc("Step 2: Speak with one of the clerks, behind the desk in the middle of the building and they will guide you through placing the bid and the finer details of what you are looking for.") - npc("Step 3: The clerks will take the items or money off you and look for someone to complete the trade.") - npc("Step 4: You then need to wait perhaps a matter of moments or maybe days until someone is looking for what you have offered.") - npc("Step 5: When the trade is complete, we will let you know with a message and you can pick up your winnings by talking to the clerks or by visiting any banker in ${Settings["server.name"]}.") + npc("Of course.") + npc("The building you see here is the Grand Exchange. You can simply tell us what you want to buy or sell and for how much, and we'll pair you up with another player and make the trade for you!") + npc("Buying and selling is done in a very similar way. Let me describe it in five steps.") + npc("Step 1: You decide what to buy or sell and come here with the items to sell or the money to buy with.") + npc("Step 2: Speak with one of the clerks, behind the desk in the middle of the building and they will guide you through placing the bid and the finer details of what you are looking for.") + npc("Step 3: The clerks will take the items or money off you and look for someone to complete the trade.") + npc("Step 4: You then need to wait perhaps a matter of moments or maybe days until someone is looking for what you have offered.") + npc("Step 5: When the trade is complete, we will let you know with a message and you can pick up your winnings by talking to the clerks or by visiting any banker in ${Settings["server.name"]}.") set("grand_exchange_tutorial", "completed") - npc("There's a lot more information about the Grand Exchange, all of which you can find out from Brugsen Bursen, the guy with the megaphone. I would suggest you speak to him to fully get to grips with the Grand Exchange. Good luck!") + npc("There's a lot more information about the Grand Exchange, all of which you can find out from Brugsen Bursen, the guy with the megaphone. I would suggest you speak to him to fully get to grips with the Grand Exchange. Good luck!") } - option("Where can I find out more info?") { - npc("Go and speak to Brugsen who's standing over there, closer to the building. He'll help you out.") + option("Where can I find out more info?") { + npc("Go and speak to Brugsen who's standing over there, closer to the building. He'll help you out.") } - option("I'm okay thanks.") { - npc("Fair enough.") + option("I'm okay thanks.") { + npc("Fair enough.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/HofuthandCombat.kt b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/HofuthandCombat.kt index 94bcba50c1..992b2c94b5 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/HofuthandCombat.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/HofuthandCombat.kt @@ -12,13 +12,13 @@ class HofuthandCombat : Script { init { npcOperate("Talk-to", "hofuthand") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - player("Hello.") - npc("Hello? Ah you're new here, aren't you?") - npc("I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting, deeper lesson on the Grand Exchange and the Tutor will give a briefer, plain lesson.") + player("Hello.") + npc("Hello? Ah you're new here, aren't you?") + npc("I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting, deeper lesson on the Grand Exchange and the Tutor will give a briefer, plain lesson.") return@npcOperate } player("Hello!") - npc("What? Oh, hello. I was deep in thought. Did you want me to show you the prices of weapons and armour?") + npc("What? Oh, hello. I was deep in thought. Did you want me to show you the prices of weapons and armour?") choice { flustered() showPrices() @@ -28,8 +28,8 @@ class HofuthandCombat : Script { npcOperate("Info-combat", "hofuthand") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - npc("Huh? Oh, not till you've had training.") - npc("I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting, deeper lesson on the Grand Exchange and the Tutor will give a briefer, plain lesson.") + npc("Huh? Oh, not till you've had training.") + npc("I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting, deeper lesson on the Grand Exchange and the Tutor will give a briefer, plain lesson.") return@npcOperate } set("common_item_costs", "combat") @@ -46,15 +46,15 @@ class HofuthandCombat : Script { fun ChoiceOption.bye() { option("I'll leave you alone.") { - npc("Thank you, I have much on my mind.") + npc("Thank you, I have much on my mind.") } } fun ChoiceOption.flustered() { option("You seem a bit flustered.") { - npc("Sorry, I'm just deep in thought. I'm waiting for many deals to complete today.") - player("What sort of things are you selling?") - npc("Good old weapons and armour! My people - dwarves, you understand - are hoping I can trade with humans.") + npc("Sorry, I'm just deep in thought. I'm waiting for many deals to complete today.") + player("What sort of things are you selling?") + npc("Good old weapons and armour! My people - dwarves, you understand - are hoping I can trade with humans.") player("It looks like you've come to the right place for that.") npc("I have indeed, my friend. Now, can I help you?") choice { diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/MurkyMattRunes.kt b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/MurkyMattRunes.kt index 30a4df211d..bfb91accd1 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/MurkyMattRunes.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/MurkyMattRunes.kt @@ -28,21 +28,21 @@ class MurkyMattRunes : Script { init { npcOperate("Talk-to", "murky_matt") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - player("Hello.") - npc("Arrrr, ${if (male) "me-lad" else "me-lady"}, I would speak with ye, but may I ask ye to speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance. Brugsen will give ye a great and plunderous lesson on the Grand Exchange and the Tutor a much shorter and simpler explanation.") + player("Hello.") + npc("Arrrr, ${if (male) "me-lad" else "me-lady"}, I would speak with ye, but may I ask ye to speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance. Brugsen will give ye a great and plunderous lesson on the Grand Exchange and the Tutor a much shorter and simpler explanation.") return@npcOperate } player("A pirate!") - npc("Arrrr, How'd ye be guessing that, ${if (male) "me-lad" else "me-lady"}?") + npc("Arrrr, How'd ye be guessing that, ${if (male) "me-lad" else "me-lady"}?") player("You're kidding, right?") - npc("Nay! Now, what is it ye be wantin? I can tell ye all about the prices of runes, I can.") + npc("Nay! Now, what is it ye be wantin? I can tell ye all about the prices of runes, I can.") menu() } npcOperate("Info-runes", "murky_matt") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - player("Hello.") - npc("Arrrr, ${if (male) "me-lad" else "me-lady"}, I would speak with ye, but may I ask ye to speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance. Brugsen will give ye a great and plunderous lesson on the Grand Exchange and the Tutor a much shorter and simpler explanation.") + player("Hello.") + npc("Arrrr, ${if (male) "me-lad" else "me-lady"}, I would speak with ye, but may I ask ye to speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance. Brugsen will give ye a great and plunderous lesson on the Grand Exchange and the Tutor a much shorter and simpler explanation.") return@npcOperate } set("common_item_costs", "runes") @@ -51,8 +51,8 @@ class MurkyMattRunes : Script { npcOperate("Combine", "murky_matt") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - player("Hello.") - npc("Arrrr, ${if (male) "me-lad" else "me-lady"}, I must ask ye to get yerself some learnin' about the Grand Exchange first. Brugsen will give ye a great and plunderous lesson, or the Tutor can offer ye a much shorter and simpler explanation.") + player("Hello.") + npc("Arrrr, ${if (male) "me-lad" else "me-lady"}, I must ask ye to get yerself some learnin' about the Grand Exchange first. Brugsen will give ye a great and plunderous lesson, or the Tutor can offer ye a much shorter and simpler explanation.") return@npcOperate } combineJewellery() @@ -62,32 +62,32 @@ class MurkyMattRunes : Script { suspend fun Player.menu() { choice { option("What's a pirate doing here?") { - npc("By my sea-blistered skin, I could ask the same of you!") + npc("By my sea-blistered skin, I could ask the same of you!") player("But... I'm not a pirate?") - npc("No? Then what's that smell? The smell o' someone spent too long at sea without a bath!") - player("I think that's probably you.") - npc("Har har har!") + npc("No? Then what's that smell? The smell o' someone spent too long at sea without a bath!") + player("I think that's probably you.") + npc("Har har har!") npc("We've got a stern landlubber 'ere! Well, let me tell ye, I'm here for the Grand Exchange! Gonna cash in me loot!") player("Don't you just want to sell it in a shop or trade it to someone specific?") - npc("By my wave-battered bones! Not when I can sell to the whole world from this very spot!") + npc("By my wave-battered bones! Not when I can sell to the whole world from this very spot!") if (questCompleted("lunar_diplomacy")) { - player("You pirates are nothing but trouble! Why, once I travelled to Lunar Isle with a bunch of your type, and spent days sailing around in circles!") - npc("Then ye must know me brother! Murky Pat!") - player("Hmmm. Not so sure I remember him.") - npc("Well, 'e be on that ship for sure. And I remember 'im tellin' me about some guy like ye, getting all mixed up with curses and cabin boys.") - player("Yes! That was me!") - npc("Ye sure be a different character.") + player("You pirates are nothing but trouble! Why, once I travelled to Lunar Isle with a bunch of your type, and spent days sailing around in circles!") + npc("Then ye must know me brother! Murky Pat!") + player("Hmmm. Not so sure I remember him.") + npc("Well, 'e be on that ship for sure. And I remember 'im tellin' me about some guy like ye, getting all mixed up with curses and cabin boys.") + player("Yes! That was me!") + npc("Ye sure be a different character.") } } - option("Tell me about the prices of runes.") { + option("Tell me about the prices of runes.") { set("common_item_costs", "runes") open("common_item_costs") } option("I got to go, erm, swab some decks! Yarr!") { npc("Defer your speech right there! Quit this derogatory and somewhat narrow-minded allusion that all folks of sea voyage are only concerned with washing the decks, looking after parrots and drinking rum. I'll have ye know there is much more to a pirate than meets the eye.") - player("Aye-aye, captain!") + player("Aye-aye, captain!") npc("...") - player("Oh, come on! Lighten up!") + player("Oh, come on! Lighten up!") } } } @@ -116,9 +116,9 @@ class MurkyMattRunes : Script { } } when (inventory.transaction.error) { - TransactionError.Invalid -> npc("Arrr, I couldn't combine ye stuff.") // Custom message + TransactionError.Invalid -> npc("Arrr, I couldn't combine ye stuff.") // Custom message TransactionError.None -> npc("Arr, all done.") - else -> npc("Arrr, ye've got nothing that I can combine.") + else -> npc("Arrr, ye've got nothing that I can combine.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/ReloboBlinyoLogs.kt b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/ReloboBlinyoLogs.kt index 7a7460a430..74f1634edf 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/ReloboBlinyoLogs.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/grand_exchange/ReloboBlinyoLogs.kt @@ -1,9 +1,9 @@ package content.area.misthalin.varrock.grand_exchange +import content.entity.player.dialogue.Bored import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.RollEyes -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -18,18 +18,18 @@ class ReloboBlinyoLogs : Script { init { npcOperate("Talk-to", "relobo_blinyo") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - player("You look rather out of place...") - npc("That I may do, but so do you! I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a smaller, plain lesson.") + player("You look rather out of place...") + npc("That I may do, but so do you! I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a smaller, plain lesson.") return@npcOperate } - player("Hey there.") - npc("Why, hell to you too, my friend.") + player("Hey there.") + npc("Why, hell to you too, my friend.") menu() } npcOperate("Info-logs", "relobo_blinyo") { if (Settings["grandExchange.tutorial.required", false] && !questCompleted("grand_exchange_tutorial")) { - npc("Not so fast! I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a smaller, plain lesson.") + npc("Not so fast! I suggest you speak with Brugsen Bursen or the Grand Exchange Tutor near the entrance for a lesson. Brugsen will give an interesting lesson on the Grand Exchange and the Tutor will give a smaller, plain lesson.") return@npcOperate } set("common_item_costs", "logs") @@ -39,23 +39,23 @@ class ReloboBlinyoLogs : Script { suspend fun Player.menu() { choice { - option("You look like you've travelled a fair distance.") { + option("You look like you've travelled a fair distance.") { npc("What gave me away?") - player("I don't mean to be rude, but the face paint and hair, for starters.") - npc("Ah, yes. I'm from Shilo Village on Karamja, it's a style I've had since I was little.") + player("I don't mean to be rude, but the face paint and hair, for starters.") + npc("Ah, yes. I'm from Shilo Village on Karamja, it's a style I've had since I was little.") player("Then tell me, why are you so far from home?") npc("This Grand Exchange! Isn't it marvellous! I've never seen anything like it in my life. My people were not pleased to see me break traditions to visit such a place, but I hope to make some serious profit. Then they'll see I was right!") - player("So, what are you selling?") - npc("Logs! Of all kinds! That's my plan, at least. Nature is one thing my people understand very well.") + player("So, what are you selling?") + npc("Logs! Of all kinds! That's my plan, at least. Nature is one thing my people understand very well.") menu() } - option("I'm trying to find the prices for logs.") { - npc("Then you've come to the right person.") + option("I'm trying to find the prices for logs.") { + npc("Then you've come to the right person.") set("common_item_costs", "logs") open("common_item_costs") } - option("Sorry, I need to make tracks.") { - npc("Okay, nice talking to you!") + option("Sorry, I need to make tracks.") { + npc("Okay, nice talking to you!") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/palace/CaptainRovin.kt b/game/src/main/kotlin/content/area/misthalin/varrock/palace/CaptainRovin.kt index c116336098..963f69e27e 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/palace/CaptainRovin.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/palace/CaptainRovin.kt @@ -4,6 +4,7 @@ import content.entity.player.bank.ownsItem import content.entity.player.dialogue.* import content.entity.player.dialogue.type.* import content.quest.quest +import content.quest.questCompleted import world.gregs.voidps.engine.Script import world.gregs.voidps.engine.entity.character.player.Player import world.gregs.voidps.engine.inv.add @@ -18,7 +19,9 @@ class CaptainRovin : Script { choice { palaceGuard() whatAboutKing() - itsImportant() + if (quest("demon_slayer") != "unstarted") { + itsImportant() + } } } } @@ -32,37 +35,33 @@ class CaptainRovin : Script { } fun ChoiceOption.whatAboutKing(): Unit = option("What about the King? Surely you'd let him up here.") { - npc("Well, yes, I suppose we'd let him up. He doesn't generally want to come up here, but if he did want to, he could.") + npc("Well, yes, I suppose we'd let him up. He doesn't generally want to come up here, but if he did want to, he could.") npc("Anyway, you're not the King either. So get out of my sight.") } - fun ChoiceOption.itsImportant(): Unit = option( - "Yes, I know, but this is important.", - { quest("demon_slayer") != "unstarted" }, - ) { - npc("Ok, I'm listening. Tell me what's so important.") + fun ChoiceOption.itsImportant() = option("Yes, I know, but this is important.") { + npc("Ok, I'm listening. Tell me what's so important.") choice { - theresADemon() + if (!questCompleted("demon_slayer")) { + theresADemon() + } forgot() aleDelivery() } } - fun ChoiceOption.newRecruit(): Unit = option("I'm a new recruit.") { - npc("I interview all the new recruits. I'd know if you were one of them.") - player("That blows that story out of the water then.") + fun ChoiceOption.newRecruit(): Unit = option("I'm a new recruit.") { + npc("I interview all the new recruits. I'd know if you were one of them.") + player("That blows that story out of the water then.") npc("Get out of my sight.") } - fun ChoiceOption.plasticSurgery(): Unit = option("I've had extensive plastic surgery.") { - npc("What sort of surgery is that? I've never heard of it. Besides, you look reasonably healthy.") + fun ChoiceOption.plasticSurgery(): Unit = option("I've had extensive plastic surgery.") { + npc("What sort of surgery is that? I've never heard of it. Besides, you look reasonably healthy.") npc("Why is this relevant anyway? You still shouldn't be here.") } - fun ChoiceOption.theresADemon(): Unit = option( - "There's a demon who wants to invade the city.", - { quest("demon_slayer") != "completed" }, - ) { + fun ChoiceOption.theresADemon(): Unit = option("There's a demon who wants to invade the city.") { if (ownsItem("silverlight_key_captain_rovin")) { haveYouNotKilledIt() } else { @@ -70,23 +69,23 @@ class CaptainRovin : Script { } } - fun ChoiceOption.forgot(): Unit = option("Erm I forgot.") { + fun ChoiceOption.forgot(): Unit = option("Erm I forgot.") { npc("Well it can't be that important then.") - player("How do you know?") + player("How do you know?") npc("Just go away.") } - fun ChoiceOption.aleDelivery(): Unit = option("The castle has just received its ale delivery.") { - npc("Now that is important. However I'm the wrong person to speak to about it. Go talk to the kitchen staff.") + fun ChoiceOption.aleDelivery(): Unit = option("The castle has just received its ale delivery.") { + npc("Now that is important. However I'm the wrong person to speak to about it. Go talk to the kitchen staff.") } suspend fun Player.haveYouNotKilledIt() { - npc("Yes, you said before, haven't you killed it yet?") - player("I'm going to use the powerful sword Silverlight, which I believe you have one of the keys for?") + npc("Yes, you said before, haven't you killed it yet?") + player("I'm going to use the powerful sword Silverlight, which I believe you have one of the keys for?") if (holdsItem("silverlight_key_captain_rovin")) { npc("I already gave you my key. Check your pockets.") } else { - npc("I already gave you my key. Maybe you left it somewhere. Have you checked your bank account?") + npc("I already gave you my key. Maybe you left it somewhere. Have you checked your bank account?") } } @@ -98,26 +97,26 @@ class CaptainRovin : Script { } } - fun ChoiceOption.notReallyPowerful(): Unit = option("Not really.") { + fun ChoiceOption.notReallyPowerful(): Unit = option("Not really.") { npc("Well, I'm sure the palace guards can deal with it, then. Thanks for the information.") } - fun ChoiceOption.yesVeryPowerful(): Unit = option("Yes, very.") { - npc("As good as the palace guards are, I don't know if they're up to taking on a very powerful demon.") + fun ChoiceOption.yesVeryPowerful(): Unit = option("Yes, very.") { + npc("As good as the palace guards are, I don't know if they're up to taking on a very powerful demon.") choice { palaceGuardsAreRubbish() illFightIt() } } - fun ChoiceOption.palaceGuardsAreRubbish(): Unit = option("Yeah, the palace guards are rubbish!") { - npc("Yeah, they're--") + fun ChoiceOption.palaceGuardsAreRubbish(): Unit = option("Yeah, the palace guards are rubbish!") { + npc("Yeah, they're--") npc("Wait! How dare you insult the palace guards? Get out of my sight!") } - fun ChoiceOption.illFightIt(): Unit = option("It's not them who are going to fight the demon, it's me.") { - npc("What, all by yourself? How are you going to do that?") - player("I'm going to use the powerful sword Silverlight, which I believe you have one of the keys for?") + fun ChoiceOption.illFightIt(): Unit = option("It's not them who are going to fight the demon, it's me.") { + npc("What, all by yourself? How are you going to do that?") + player("I'm going to use the powerful sword Silverlight, which I believe you have one of the keys for?") npc("Yes, I do. But why should I give it to you?") choice { arisSaidSo() @@ -126,7 +125,7 @@ class CaptainRovin : Script { } } - fun ChoiceOption.arisSaidSo(): Unit = option("Fortune-teller Aris said I was destined to kill the demon.") { + fun ChoiceOption.arisSaidSo(): Unit = option("Fortune-teller Aris said I was destined to kill the demon.") { npc("A fortune-teller? Destiny? I don't believe in that stuff. I got where I am today by hard work, not by destiny! Why should I care what that mad old fortune-teller says?") choice { demonWillDestroyCity() @@ -134,7 +133,7 @@ class CaptainRovin : Script { } } - fun ChoiceOption.demonWillDestroyCity(): Unit = option("Otherwise the demon will destroy the city!") { + fun ChoiceOption.demonWillDestroyCity(): Unit = option("Otherwise the demon will destroy the city!") { npc("You can't fool me! How do I know you haven't just made that story up to get my key?") choice { arisSaidSo() @@ -142,7 +141,7 @@ class CaptainRovin : Script { } } - fun ChoiceOption.prysinSaidSo(): Unit = option("Sir Prysin said you would give me the key.") { + fun ChoiceOption.prysinSaidSo(): Unit = option("Sir Prysin said you would give me the key.") { npc("Oh, he did, did he? Well I don't report to Sir Prysin, I report directly to the king!") npc("I didn't work my way up through the ranks of the palace guards so I could take orders from an ill-bred moron who only has his job because his great- grandfather was a hero with a silly name!") choice { @@ -155,9 +154,9 @@ class CaptainRovin : Script { fun ChoiceOption.whyDidHeGiveKeyToYou(): Unit = option("Why did he give you one of the keys then?") { npc("Only because the king ordered him to! The king couldn't get Sir Prysin to part with his precious ancestral sword, but he made him lock it up so he couldn't lose it.") npc("I got one key and I think some wizard got another. Now what happened to the third one?") - player("Sir Prysin dropped it down a drain!") - npc("Ha ha ha! The idiot!") - npc("Okay, I'll give you the key, just so that it's you that kills the demon and not Sir Prysin!") + player("Sir Prysin dropped it down a drain!") + npc("Ha ha ha! The idiot!") + npc("Okay, I'll give you the key, just so that it's you that kills the demon and not Sir Prysin!") if (inventory.add("silverlight_key_captain_rovin")) { item("silverlight_key_captain_rovin", 400, "Captain Rovin hands you a key.") } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/palace/Reldo.kt b/game/src/main/kotlin/content/area/misthalin/varrock/palace/Reldo.kt index 724aedf3d8..864e6b76a6 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/palace/Reldo.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/palace/Reldo.kt @@ -1,7 +1,7 @@ package content.area.misthalin.varrock.palace -import content.entity.player.dialogue.Chuckle -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle +import content.entity.player.dialogue.Laugh import content.entity.player.dialogue.Quiz import content.entity.player.dialogue.Shifty import content.entity.player.dialogue.type.* @@ -12,42 +12,39 @@ class Reldo : Script { init { npcOperate("Talk-to", "reldo*") { - npc("Hello stranger.") + npc("Hello stranger.") choice { anythingToTrade() whatDoYouDo() - aboutImcandoDwarves() + val stage = quest("the_knights_sword") + if (stage == "started" || stage == "find_thurgo") { + aboutImcandoDwarves() + } } } } fun ChoiceOption.anythingToTrade() = option("Do you have anything to trade?") { - npc("Only knowledge.") + npc("Only knowledge.") player("How much do you want for that then?") - npc("No, sorry, that was just my little joke. I'm not the trading type.") - player("Ah well.") + npc("No, sorry, that was just my little joke. I'm not the trading type.") + player("Ah well.") } fun ChoiceOption.whatDoYouDo() = option("What do you do?") { - npc("I am the palace librarian.") - player("Ah. That's why you're in the library then.") - npc("Yes.") - npc("Although I would probably be in here even if I didn't work here. I like reading. Someday I hope to catalogue all of the information stored in these books so all may read it.") + npc("I am the palace librarian.") + player("Ah. That's why you're in the library then.") + npc("Yes.") + npc("Although I would probably be in here even if I didn't work here. I like reading. Someday I hope to catalogue all of the information stored in these books so all may read it.") } - fun ChoiceOption.aboutImcandoDwarves() = option( - "What do you know about the Imcando dwarves?", - { - val stage = quest("the_knights_sword") - stage == "started" || stage == "find_thurgo" - }, - ) { - npc("The Imcando dwarves, you say?") - npc("Ah yes... for many hundreds of years they were the world's most skilled smiths. They used secret smithing knowledge passed down from generation to generation.") - npc("Unfortunately, about a century ago, the once thriving race was wiped out during the barbarian invasions of that time.") + fun ChoiceOption.aboutImcandoDwarves() = option("What do you know about the Imcando dwarves?") { + npc("The Imcando dwarves, you say?") + npc("Ah yes... for many hundreds of years they were the world's most skilled smiths. They used secret smithing knowledge passed down from generation to generation.") + npc("Unfortunately, about a century ago, the once thriving race was wiped out during the barbarian invasions of that time.") player("So are there any Imcando left at all?") - npc("I believe a few of them survived, but with the bulk of their population destroyed their numbers have dwindled even further.") - npc("They tend to keep to themselves, and they tend not to tell people they're descendants of the Imcando, which is why people think the tribe is extinct. However...") + npc("I believe a few of them survived, but with the bulk of their population destroyed their numbers have dwindled even further.") + npc("They tend to keep to themselves, and they tend not to tell people they're descendants of the Imcando, which is why people think the tribe is extinct. However...") if (quest("the_knights_sword") == "started") { set("the_knights_sword", "find_thurgo") } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/palace/SirPrysin.kt b/game/src/main/kotlin/content/area/misthalin/varrock/palace/SirPrysin.kt index 99495ca3ec..ebd278616e 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/palace/SirPrysin.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/palace/SirPrysin.kt @@ -32,13 +32,13 @@ class SirPrysin : Script { keyProgressCheck(target) return@npcOperate } - npc("Have you sorted that demon out yet?") + npc("Have you sorted that demon out yet?") if (ownsItem("silverlight")) { - player("No, not yet.") - npc("Well get on with it. He'll be pretty powerful when he gets to full strength.") + player("No, not yet.") + npc("Well get on with it. He'll be pretty powerful when he gets to full strength.") return@npcOperate } - player("Not yet. And I, um, lost Silverlight.") + player("Not yet. And I, um, lost Silverlight.") if (inventory.add("silverlight")) { npc("Yes, I know, someone returned it to me. Take better care of it this time.") } else { @@ -46,82 +46,81 @@ class SirPrysin : Script { } } "completed" -> { - npc("Hello. I've heard you stopped the demon, well done.") - player("Yes, that's right.") - npc("A good job well done then.") - player("Thank you.") + npc("Hello. I've heard you stopped the demon, well done.") + player("Yes, that's right.") + npc("A good job well done then.") + player("Thank you.") } else -> { - npc("Hello, who are you?") + npc("Hello, who are you?") choice { mightyAdventurer() youTellMe() - arisWantsToTalk() + if (quest("demon_slayer") == "sir_prysin") { + arisWantsToTalk() + } } } } } } - fun ChoiceOption.arisWantsToTalk(): Unit = option( - "Aris said I should come and talk to you.", - { quest("demon_slayer") == "sir_prysin" }, - ) { - player("Aris said I should come and talk to you.") - npc("Aris? Is she still alive? I remember her from when I was pretty young. Well what do you need to talk to me about?") + fun ChoiceOption.arisWantsToTalk(): Unit = option("Aris said I should come and talk to you.") { + player("Aris said I should come and talk to you.") + npc("Aris? Is she still alive? I remember her from when I was pretty young. Well what do you need to talk to me about?") choice { option("I need to find Silverlight.") { findSilverlight() } option("Yes, she is still alive.") { player("Yes she is still alive. She lives right outside the castle!") - npc("Oh, is that the same Aris? I would have thought she would have died by now. She was pretty old when I was a lad.") - npc("Anyway, what can I do for you?") + npc("Oh, is that the same Aris? I would have thought she would have died by now. She was pretty old when I was a lad.") + npc("Anyway, what can I do for you?") findSilverlight() } } } suspend fun Player.findSilverlight() { - player("I need to find Silverlight.") - npc("What do you need to find that for?") - player("I need it to fight Delrith.") - npc("Delrith? I thought the world was rid of him, thanks to my great-grandfather.") + player("I need to find Silverlight.") + npc("What do you need to find that for?") + player("I need it to fight Delrith.") + npc("Delrith? I thought the world was rid of him, thanks to my great-grandfather.") choice { option("Well, Aris' crystal ball seems to think otherwise.") { - player("Well Aris' crystal ball seems to think otherwise.") - npc("Well if the ball says so, I'd better help you.") + player("Well Aris' crystal ball seems to think otherwise.") + npc("Well if the ball says so, I'd better help you.") problemIs() } option("He's back and unfortunately I've got to deal with him.") { - player("He's back and unfortunately I've got to deal with him.") - npc("You don't look up to much. I suppose Silverlight may be good enough to carry you through though.") + player("He's back and unfortunately I've got to deal with him.") + npc("You don't look up to much. I suppose Silverlight may be good enough to carry you through though.") problemIs() } } } suspend fun Player.problemIs() { - npc("The problem is getting Silverlight.") - player("You mean you don't have it?") - npc("Oh I do have it, but it is so powerful that the king made me put it in a special box which needs three different keys to open it. That way it won't fall into the wrong hands.") + npc("The problem is getting Silverlight.") + player("You mean you don't have it?") + npc("Oh I do have it, but it is so powerful that the king made me put it in a special box which needs three different keys to open it. That way it won't fall into the wrong hands.") choice { option("So give me the keys!") { player("So give me the keys!") - npc("Um, well, it's not so easy.") + npc("Um, well, it's not so easy.") theKeys() } option("And why is this a problem?") { - player("And why is this a problem?") + player("And why is this a problem?") theKeys() } } } suspend fun Player.theKeys() { - npc("I kept one of the keys. I gave the other two to other people for safe keeping.") - npc("One I gave to Rovin, the captain of the palace guard.") - npc("I gave the other to the wizard Traiborn.") + npc("I kept one of the keys. I gave the other two to other people for safe keeping.") + npc("One I gave to Rovin, the captain of the palace guard.") + npc("I gave the other to the wizard Traiborn.") set("demon_slayer", "key_hunt") choice { giveYourKey() @@ -131,8 +130,8 @@ class SirPrysin : Script { } fun ChoiceOption.wheresWizard(): Unit = option("Where does the wizard live?") { - player("Where does the wizard live?") - npc("He is one of the wizards who lives in the tower on the little island just off the south coast. I believe his quarters are on the first floor of the tower.") + player("Where does the wizard live?") + npc("He is one of the wizards who lives in the tower on the little island just off the south coast. I believe his quarters are on the first floor of the tower.") choice { giveYourKey() wheresCaptainRovin() @@ -141,8 +140,8 @@ class SirPrysin : Script { } fun ChoiceOption.wheresCaptainRovin(): Unit = option("Where can I find Captain Rovin?") { - player("Where can I find Captain Rovin?") - npc("Captain Rovin lives at the top of the guards' quarters in the north-west wing of this palace.") + player("Where can I find Captain Rovin?") + npc("Captain Rovin lives at the top of the guards' quarters in the north-west wing of this palace.") choice { giveYourKey() wheresWizard() @@ -151,7 +150,7 @@ class SirPrysin : Script { } suspend fun Player.keyProgressCheck(target: NPC) { - npc("So how are you doing with getting the keys?") + npc("So how are you doing with getting the keys?") val rovin = holdsItem("silverlight_key_captain_rovin") val prysin = holdsItem("silverlight_key_sir_prysin") val traiborn = holdsItem("silverlight_key_wizard_traiborn") @@ -161,13 +160,13 @@ class SirPrysin : Script { return } prysin && (rovin || traiborn) -> { - player("I've got the key from ${if (traiborn) "Wizard Traiborn" else "Captain Rovin"} and the one that you dropped down the drain.") + player("I've got the key from ${if (traiborn) "Wizard Traiborn" else "Captain Rovin"} and the one that you dropped down the drain.") } - traiborn && rovin -> player("I've got the keys from Wizard Traiborn and Captain Rovin.") - rovin -> player("I've got the key from Captain Rovin.") - traiborn -> player("I've got the key from Wizard Traiborn.") - prysin -> player("I've got the key which you dropped down the drain.") - else -> player("I haven't found any of them yet.") + traiborn && rovin -> player("I've got the keys from Wizard Traiborn and Captain Rovin.") + rovin -> player("I've got the key from Captain Rovin.") + traiborn -> player("I've got the key from Wizard Traiborn.") + prysin -> player("I've got the key which you dropped down the drain.") + else -> player("I haven't found any of them yet.") } choice { remindMe() @@ -176,10 +175,10 @@ class SirPrysin : Script { } fun ChoiceOption.giveYourKey(): Unit = option("Can you give me your key?") { - player("Can you give me your key?") - npc("Um.... ah....") - npc("Well there's a problem there as well.") - npc("I managed to drop the key in the drain just outside the palace kitchen. It is just inside and I can't reach it.") + player("Can you give me your key?") + npc("Um.... ah....") + npc("Well there's a problem there as well.") + npc("I managed to drop the key in the drain just outside the palace kitchen. It is just inside and I can't reach it.") choice { drain() wheresCaptainRovin() @@ -188,8 +187,8 @@ class SirPrysin : Script { } fun ChoiceOption.drain(): Unit = option("So what does the drain lead to?") { - player("So what does the drain connect to?") - npc("It is the drain for the drainpipe running from the sink in the kitchen down to the palace sewers.") + player("So what does the drain connect to?") + npc("It is the drain for the drainpipe running from the sink in the kitchen down to the palace sewers.") choice { wheresCaptainRovin() wheresWizard() @@ -198,33 +197,33 @@ class SirPrysin : Script { } fun ChoiceOption.huntingTime(): Unit = option("Well I'd better go key hunting.") { - player("Well I'd better go key hunting.") - npc("Ok, goodbye.") + player("Well I'd better go key hunting.") + npc("Ok, goodbye.") } fun ChoiceOption.mightyAdventurer(): Unit = option("I am a mighty adventurer. Who are you?") { - player("I am a mighty adventurer, who are you?") - npc("I am Sir Prysin. A bold and famous knight of the realm.") + player("I am a mighty adventurer, who are you?") + npc("I am Sir Prysin. A bold and famous knight of the realm.") } fun ChoiceOption.youTellMe(): Unit = option("I'm not sure, I was hoping you could tell me.") { - player("I was hoping you could tell me.") - npc("Well I've never met you before.") + player("I was hoping you could tell me.") + npc("Well I've never met you before.") } fun ChoiceOption.remindMe(): Unit = option("Can you remind me where all the keys were again?") { - player("Can you remind me where all the keys were again?") + player("Can you remind me where all the keys were again?") theKeys() } fun ChoiceOption.stillLooking(): Unit = option("I'm still looking.") { - player("I'm still looking.") - npc("Ok, tell me when you've got them all.") + player("I'm still looking.") + npc("Ok, tell me when you've got them all.") } suspend fun Player.giveSilverlight(target: NPC) { - player("I've got all three keys!") - npc("Excellent! Now I can give you Silverlight.") + player("I've got all three keys!") + npc("Excellent! Now I can give you Silverlight.") inventory.remove("silverlight_key_wizard_traiborn", "silverlight_key_captain_rovin", "silverlight_key_sir_prysin") val tile = Tile(3204, 3470) target.mode = PauseMode @@ -270,7 +269,7 @@ class SirPrysin : Script { delay() target.face(Direction.NONE) delay() - npc("That sword belonged to my great-grandfather. Make sure you treat it with respect!") - npc("Now go kill that demon!") + npc("That sword belonged to my great-grandfather. Make sure you treat it with respect!") + npc("Now go kill that demon!") } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/palace/SurokMagis.kt b/game/src/main/kotlin/content/area/misthalin/varrock/palace/SurokMagis.kt index fbae181590..34b61e3d49 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/palace/SurokMagis.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/palace/SurokMagis.kt @@ -1,7 +1,7 @@ package content.area.misthalin.varrock.palace import content.entity.player.dialogue.Frustrated -import content.entity.player.dialogue.Surprised +import content.entity.player.dialogue.Shock import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player import world.gregs.voidps.engine.Script @@ -11,7 +11,7 @@ class SurokMagis : Script { init { npcOperate("Talk-to", "surok_magis_*") { npc("Can't you see I'm very busy here? Be off with you!") - player("Oh. Sorry.") + player("Oh. Sorry.") } } } diff --git a/game/src/main/kotlin/content/area/misthalin/varrock/palace/VarrockPalaceDrain.kt b/game/src/main/kotlin/content/area/misthalin/varrock/palace/VarrockPalaceDrain.kt index 2257c086f1..4e0ad0b66e 100644 --- a/game/src/main/kotlin/content/area/misthalin/varrock/palace/VarrockPalaceDrain.kt +++ b/game/src/main/kotlin/content/area/misthalin/varrock/palace/VarrockPalaceDrain.kt @@ -3,7 +3,7 @@ package content.area.misthalin.varrock.palace import com.github.michaelbull.logging.InlineLogger import content.entity.player.bank.ownsItem import content.entity.player.dialogue.Happy -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Shifty import content.entity.player.dialogue.type.item import content.entity.player.dialogue.type.player @@ -33,7 +33,7 @@ class VarrockPalaceDrain : Script { } else if (quest("demon_slayer") == "unstarted") { player("This is the drainpipe running from the kitchen sink to the sewer. I can see a key just inside the drain.") } else { - player("That must be the key Sir Prysin dropped.") + player("That must be the key Sir Prysin dropped.") player("I don't seem to be able to reach it. I wonder if I can dislodge it somehow. That way it may go down into the sewers.") } } diff --git a/game/src/main/kotlin/content/area/misthalin/wizards_tower/Sedridor.kt b/game/src/main/kotlin/content/area/misthalin/wizards_tower/Sedridor.kt index 0999d7cd7c..2dd2e3f771 100644 --- a/game/src/main/kotlin/content/area/misthalin/wizards_tower/Sedridor.kt +++ b/game/src/main/kotlin/content/area/misthalin/wizards_tower/Sedridor.kt @@ -29,8 +29,8 @@ class Sedridor : Script { when (quest("rune_mysteries")) { "unstarted" -> { npc("Welcome adventurer, to the world renowned Wizards' Tower, home to the Order of Wizards. How may I help you?") - player("I'm just looking around.") - npc("Well, take care adventurer. You stand on the ruins of the old destroyed Wizards' Tower. Strange and powerful magicks lurk here.") + player("I'm just looking around.") + npc("Well, take care adventurer. You stand on the ruins of the old destroyed Wizards' Tower. Strange and powerful magicks lurk here.") } "started" -> started() "talisman_delivered" -> visitAubury() @@ -50,22 +50,22 @@ class Sedridor : Script { npc("Welcome adventurer, to the world renowned Wizards' Tower, home to the Order of Wizards. We are the oldest and most prestigious group of wizards around. Now, how may I help you?") player("Are you Sedridor?") npc("Sedridor? What is it you want with him?") - player("The Duke of Lumbridge sent me to find him. I have this talisman he found. He said Sedridor would be interested in it.") - npc("Did he now? Well hand it over then, and we'll see what all the hubbub is about.") + player("The Duke of Lumbridge sent me to find him. I have this talisman he found. He said Sedridor would be interested in it.") + npc("Did he now? Well hand it over then, and we'll see what all the hubbub is about.") choice { option("Okay, here you are.") { okHere() } - option("No, I'll only give it to Sedridor.") { + option("No, I'll only give it to Sedridor.") { npc("Well good news, for I am Sedridor! Now, hand it over and let me have a proper look at it, hmm?") choice { option("Okay, here you are.") { okHere() } - option("No, I don't think you are Sedridor.") { + option("No, I don't think you are Sedridor.") { npc("Hmm... Well, I admire your caution adventurer. Perhaps I can prove myself? I will use my mental powers to discover...") npc("Your name is... $name!") - player("You're right! How did you know that?") + player("You're right! How did you know that?") npc("Well I am the Archmage you know! You don't get to my position without learning a few tricks along the way!") npc("So now that I have proved myself to you, why don't you hand over that talisman, hmm?") okHere() @@ -76,32 +76,32 @@ class Sedridor : Script { } suspend fun Player.okHere() { - player("Okay, here you are.") + player("Okay, here you are.") if (inventory.contains("air_talisman")) { set("rune_mysteries", "talisman_delivered") item("air_talisman", 600, "You hand the talisman to Sedridor.") inventory.remove("air_talisman") - npc("Hmm... Doesn't seem to be anything too special. Just a normal air talisman by the looks of things. Still, looks can be deceiving. Let me take a closer look...") + npc("Hmm... Doesn't seem to be anything too special. Just a normal air talisman by the looks of things. Still, looks can be deceiving. Let me take a closer look...") sound("enchant_emerald_ring") item("air_talisman", 600, "Sedridor murmurs some sort of incantation and the talisman glows slightly.") - npc("How interesting... It would appear I spoke too soon. There's more to this talisman than meets the eye. In fact, it may well be the last piece of the puzzle.") + npc("How interesting... It would appear I spoke too soon. There's more to this talisman than meets the eye. In fact, it may well be the last piece of the puzzle.") player("Puzzle?") npc("Indeed! The lost legacy of the first tower. This talisman may in fact be key to finding the forgotten essence mine!") - player("First tower? Forgotten essence mine? What are you on about?") + player("First tower? Forgotten essence mine? What are you on about?") npc("Ah, my apologies, adventurer. Allow me to fill you in.") choice { - option("Go ahead.") { + option("Go ahead.") { npc("As you are likely aware, when we cast spells, we do so using the power of runes.") npc("These runes are crafted from a highly unique material, and then imbued with magical power from various runic altars. Different altars create different runes with different magical effects.") npc("The process of imbuing runes is called runecrafting. Legend has it that this was once a common art, but the secrets of how to do it were lost until just under two hundred years ago.") npc("The rediscovery of runecrafting had such a large impact on the world, that it marked the dawn of the Fifth Age. It also resulted in the birth of our order, and the construction of the first Wizards' Tower.") player("If it was the first tower, I'm guessing it doesn't exist anymore? What happened?") npc("It was burnt down by traitorous members of our own order. They followed the evil god of chaos, Zamorak, and they wished to claim our magical discoveries in his name.") - npc("When the tower burnt down, much was lost, including an important incantation. A spell that could be used to teleport to a hidden essence mine.") + npc("When the tower burnt down, much was lost, including an important incantation. A spell that could be used to teleport to a hidden essence mine.") player("The essence mine you mentioned earlier, I assume?") - npc("Precicely. Rune essence is the material used to make runes, but it is incredibly rare. That essence mine was the only place it could be found that our order knew of.") - npc("Since the incantation was lost, we have struggled to maintain our stocks of rune essence.") - npc("There are seemingly those out there that still know where to find some, but while they have been willing to sell essence to us, they have refused to share knowledge on how to find it ourselves.") + npc("Precicely. Rune essence is the material used to make runes, but it is incredibly rare. That essence mine was the only place it could be found that our order knew of.") + npc("Since the incantation was lost, we have struggled to maintain our stocks of rune essence.") + npc("There are seemingly those out there that still know where to find some, but while they have been willing to sell essence to us, they have refused to share knowledge on how to find it ourselves.") player("I'm starting to see why this is so important. So you think this talisman can help you rediscover that incantation?") npc("I do! All magic leaves traces, and from what I can tell, this talisman was used heavily during the time of the first tower.") npc("It would have been taken to the essence mine many times, and the magical energies there will have left an imprint on it. To think that it was hidden in Lumbridge all this time!") @@ -109,18 +109,18 @@ class Sedridor : Script { npc("It is critical I share this discovery with my associate, Aubury, as soon as possible. He's not much of a wizard, but he's an expert on runecrafting, and his insight will be essential.") discovery() } - option("Actually, I'm not interested.") { - npc("Oh... Well I guess the short of it is that this talisman could be key to helping us rediscover an important teleportation incantation.") - npc("With it, we'll be able to access a hidden essence mine, our lost source of rune essence.") + option("Actually, I'm not interested.") { + npc("Oh... Well I guess the short of it is that this talisman could be key to helping us rediscover an important teleportation incantation.") + npc("With it, we'll be able to access a hidden essence mine, our lost source of rune essence.") discovery() } } } else { - npc("...") - player("...") - npc("Well?") - player("I don't seem to have it with me.") - npc("Hmm? You are a very odd person. Come back again when you have it.") + npc("...") + player("...") + npc("Well?") + player("I don't seem to have it with me.") + npc("Hmm? You are a very odd person. Come back again when you have it.") } } @@ -144,11 +144,11 @@ class Sedridor : Script { suspend fun Player.checkPackageDelivered() { npc("Hello again, adventurer. Did you take that package to Aubury?") if (ownsItem("research_package_rune_mysteries")) { - player("Not yet.") - npc("He runs a rune shop in the south east of Varrock. Please deliver it to him soon.") + player("Not yet.") + npc("He runs a rune shop in the south east of Varrock. Please deliver it to him soon.") } else { - player("I lost it. Could I have another?") - npc("Well it's a good job I have copies of everything.") + player("I lost it. Could I have another?") + npc("Well it's a good job I have copies of everything.") if (inventory.isFull()) { item("research_package_rune_mysteries", 600, "Sedridor tries to hand you a package, but you don't have enough room to take it.") return @@ -163,13 +163,13 @@ class Sedridor : Script { } suspend fun Player.checkResearchDelivered() { - npc("Ah, $name. How goes your quest? Have you delivered my research to Aubury yet?") - player("Yes, I have. He gave me some notes to give to you.") + npc("Ah, $name. How goes your quest? Have you delivered my research to Aubury yet?") + player("Yes, I have. He gave me some notes to give to you.") npc("Wonderful! Let's have a look then.") if (holdsItem("research_notes_rune_mysteries")) { item("research_notes_rune_mysteries", 600, "You hand the notes to Sedridor.") npc("Alright, let's see what Aubury has for us...") - npc("Yes, this is it! The lost incantation!") + npc("Yes, this is it! The lost incantation!") player("So you'll be able to access that essence mine now?") npc("That's right! Because of you, our order finally has a proper source of rune essence again! Thank you, friend.") npc("If you ever want to access the essence mine yourself, just let me know. It's the least I can do.") @@ -182,18 +182,18 @@ class Sedridor : Script { inventory.remove("research_notes_rune_mysteries") questComplete() } else { - player("Err, you're not going to believe this...") - npc("What?") - player("I don't have them.") - npc("Right... You're rather careless aren't you. I suggest you go and speak to Aubury once more. With luck he will have made copies.") + player("Err, you're not going to believe this...") + npc("What?") + player("I don't have them.") + npc("Right... You're rather careless aren't you. I suggest you go and speak to Aubury once more. With luck he will have made copies.") } } - fun ChoiceOption.imBusy(): Unit = option("No, I'm busy.") { - npc("As you wish adventurer. I will continue to study this talisman you have brought me. Return here if you find yourself with some spare time to help me.") + fun ChoiceOption.imBusy(): Unit = option("No, I'm busy.") { + npc("As you wish adventurer. I will continue to study this talisman you have brought me. Return here if you find yourself with some spare time to help me.") } - fun ChoiceOption.yesCertainly(): Unit = option("Yes, certainly.") { + fun ChoiceOption.yesCertainly(): Unit = option("Yes, certainly.") { set("rune_mysteries", "research_package") npc("He runs a rune shop in the south east of Varrock. Please, take this package of research notes to him. If all goes well, the secrets of the essence mine may soon be ours once more!") if (inventory.isFull()) { @@ -206,13 +206,13 @@ class Sedridor : Script { } suspend fun Player.completed(target: NPC) { - player("Hello there.") + player("Hello there.") npc("Hello again, $name. What can I do for you?") choice { teleportEssenceMine(target) whoElseKnows(target) oldWizardsTower(target) - option("Nothing thanks, I'm just looking around.") { + option("Nothing thanks, I'm just looking around.") { npc("Well, take care. You stand on the ruins of the old destroyed Wizards' Tower. Strange and powerful magicks lurk here.") } } @@ -236,10 +236,10 @@ class Sedridor : Script { fun ChoiceOption.oldWizardsTower(target: NPC): Unit = option("Could you tell me about the old Wizards' Tower?") { npc("Of course. The first Wizards' Tower was built at the same time the Order of Wizards was founded. It was at the dawn of the Fifth Age, when the secrets of runecrafting were rediscovered.") npc("For years, the tower was a hub of magical research. Wizards of all races and religions were welcomed into our order.") - npc("Alas, that openness is what ultimately led to disaster. The wizards who served Zamorak, the evil god of chaos, tried to claim our magical discoveries in his name.") - npc("They failed, but in retaliation, they burnt the entire tower to the ground. Years of work was destroyed.") - npc("The tower was soon rebuilt of course, but even now we are still trying to regain knowledge that was lost.") - npc("That's why I spend my time down here, in fact. This basement is all that is left of the old tower, and I believe there are still some secrets to discover here.") + npc("Alas, that openness is what ultimately led to disaster. The wizards who served Zamorak, the evil god of chaos, tried to claim our magical discoveries in his name.") + npc("They failed, but in retaliation, they burnt the entire tower to the ground. Years of work was destroyed.") + npc("The tower was soon rebuilt of course, but even now we are still trying to regain knowledge that was lost.") + npc("That's why I spend my time down here, in fact. This basement is all that is left of the old tower, and I believe there are still some secrets to discover here.") npc("Of course, one secret I am no longer looking for is the teleportation incantation to the Rune Essence Mine. We have you to thank for that.") choice { teleportEssenceMine(target) diff --git a/game/src/main/kotlin/content/area/misthalin/wizards_tower/Traiborn.kt b/game/src/main/kotlin/content/area/misthalin/wizards_tower/Traiborn.kt index 552b5a6b4b..7993faf4ba 100644 --- a/game/src/main/kotlin/content/area/misthalin/wizards_tower/Traiborn.kt +++ b/game/src/main/kotlin/content/area/misthalin/wizards_tower/Traiborn.kt @@ -30,7 +30,7 @@ class Traiborn : Script { init { npcOperate("Talk-to", "traiborn") { (target) -> - npc("Ello young thingummywut.") + npc("Ello young thingummywut.") if (quest("demon_slayer") == "key_hunt") { if (inventory.contains("silverlight_key_wizard_traiborn")) { somewhereToBe() @@ -41,8 +41,8 @@ class Traiborn : Script { choice { thingummywut() teachMe() - option("I'd better go.") { - npc("Cheerrio then.") + option("I'd better go.") { + npc("Cheerrio then.") } } } @@ -56,43 +56,43 @@ class Traiborn : Script { } } - fun ChoiceOption.thingummywut(): Unit = option("What's a thingummywut?") { - npc("A thingummywut? Where? Where?") - npc("Those pesky thingummywuts. They get everywhere. They leave a terrible mess too.") + fun ChoiceOption.thingummywut(): Unit = option("What's a thingummywut?") { + npc("A thingummywut? Where? Where?") + npc("Those pesky thingummywuts. They get everywhere. They leave a terrible mess too.") choice { - option("Err you just called me thingummywut.") { - npc("You're a thingummywut? I've never seen one up close before. They said I was mad!") - npc("Now you are my proof! There ARE thingummywuts in this tower. Now where can I find a cage big enough to keep you?") + option("Err you just called me thingummywut.") { + npc("You're a thingummywut? I've never seen one up close before. They said I was mad!") + npc("Now you are my proof! There ARE thingummywuts in this tower. Now where can I find a cage big enough to keep you?") betterBeOffChoice() } option("Tell me what they look like and I'll mash 'em.") { - npc("Don't be ridiculous. No-one has ever seen one.") - npc("They're invisible, or a myth, or a figment of my imagination. Can't remember which right now.") + npc("Don't be ridiculous. No-one has ever seen one.") + npc("They're invisible, or a myth, or a figment of my imagination. Can't remember which right now.") } } } - fun ChoiceOption.betterBeOff(): Unit = option("Err I'd better be off really.") { - npc("Oh ok, have a good time, and watch out for sheep! They're more cunning than they look.") + fun ChoiceOption.betterBeOff(): Unit = option("Err I'd better be off really.") { + npc("Oh ok, have a good time, and watch out for sheep! They're more cunning than they look.") } - fun ChoiceOption.teachMe(): Unit = option("Teach me to be a mighty and powerful wizard.") { - npc("Wizard eh? You don't want any truck with that sort. They're not to be trusted. That's what I've heard anyways.") + fun ChoiceOption.teachMe(): Unit = option("Teach me to be a mighty and powerful wizard.") { + npc("Wizard eh? You don't want any truck with that sort. They're not to be trusted. That's what I've heard anyways.") choice { option("So aren't you a wizard?") { npc("How dare you? Of course I'm a wizard. Now don't be so cheeky or I'll turn you into a frog.") } - option("Oh I'd better stop talking to you then.") { - npc("Cheerio then. It was nice chatting to you.") + option("Oh I'd better stop talking to you then.") { + npc("Cheerio then. It was nice chatting to you.") } } } - fun ChoiceOption.youLookedAfterIt(): Unit = option("He told me you were looking after it for him.") { - npc("That wasn't very clever of him. I'd lose my head if it wasn't screwed on. Go and tell him to find someone else to look after his valuables in future.") + fun ChoiceOption.youLookedAfterIt(): Unit = option("He told me you were looking after it for him.") { + npc("That wasn't very clever of him. I'd lose my head if it wasn't screwed on. Go and tell him to find someone else to look after his valuables in future.") choice { - option("Okay, I'll go and tell him that.") { - npc("Oh that's great, if it wouldn't be too much trouble.") + option("Okay, I'll go and tell him that.") { + npc("Oh that's great, if it wouldn't be too much trouble.") choice { betterBeOff() anyKeys() @@ -102,8 +102,8 @@ class Traiborn : Script { } } - fun ChoiceOption.needAKey(): Unit = option("I need to get a key given to you by Sir Prysin.") { - npc("Sir Prysin? Who's that? What would I want his key for?") + fun ChoiceOption.needAKey(): Unit = option("I need to get a key given to you by Sir Prysin.") { + npc("Sir Prysin? Who's that? What would I want his key for?") choice { youLookedAfterIt() kingsKnight() @@ -114,17 +114,17 @@ class Traiborn : Script { suspend fun Player.betterBeOffChoice() { choice { betterBeOff() - option("They're right, you are mad.") { - npc("That's a pity. I thought maybe they were winding me up.") + option("They're right, you are mad.") { + npc("That's a pity. I thought maybe they were winding me up.") } } } - fun ChoiceOption.kingsKnight(): Unit = option("He's one of the King's knights.") { + fun ChoiceOption.kingsKnight(): Unit = option("He's one of the King's knights.") { npc("Say, I remember one of the King's knights. He had nice shoes...") - npc("...and didn't like my homemade spinach rolls. Would you like a spinach roll?") + npc("...and didn't like my homemade spinach rolls. Would you like a spinach roll?") choice { - option("Yes please.") { + option("Yes please.") { spinachRoll() } justTellMe() @@ -137,57 +137,57 @@ class Traiborn : Script { floorItems.add(tile, "spinach_roll", disappearTicks = 300) } item("spinach_roll", 400, "Traiborn digs around in the pockets of his robes. After a few moments he triumphantly presents you with a spinach roll.") - player("Thank you very much.") + player("Thank you very much.") betterBeOffChoice() } - fun ChoiceOption.anyKeys(): Unit = option("Well, have you got any keys knocking around?") { - npc("Now you come to mention it, yes I do have a key. It's in my special closet of valuable stuff. Now how do I get into that?") - npc("I sealed it using one of my magic rituals. So it would make sense that another ritual would open it again.") - player("So do you know what ritual to use?") - npc("Let me think a second.") - npc("Yes a simple drazier style ritual should suffice. Hmm, main problem with that is I'll need 25 sets of bones. Now where am I going to get hold of something like that?") + fun ChoiceOption.anyKeys(): Unit = option("Well, have you got any keys knocking around?") { + npc("Now you come to mention it, yes I do have a key. It's in my special closet of valuable stuff. Now how do I get into that?") + npc("I sealed it using one of my magic rituals. So it would make sense that another ritual would open it again.") + player("So do you know what ritual to use?") + npc("Let me think a second.") + npc("Yes a simple drazier style ritual should suffice. Hmm, main problem with that is I'll need 25 sets of bones. Now where am I going to get hold of something like that?") choice { - option("Hmm, that's too bad. I really need that key.") { - npc("Ah well, sorry I couldn't be any more help.") + option("Hmm, that's too bad. I really need that key.") { + npc("Ah well, sorry I couldn't be any more help.") } - option("I'll help get the bones for you.") { + option("I'll help get the bones for you.") { bonesRequired = 25 - npc("Ooh that would be very good of you.") - player("Okay, I'll speak to you when I've got some bones.") + npc("Ooh that would be very good of you.") + player("Okay, I'll speak to you when I've got some bones.") } } } - fun ChoiceOption.keyForSilverlight(): Unit = option("It's the key to get a sword called Silverlight.") { - npc("Silverlight? Never heard of that. Sounds a good name for a ship. Are you sure it's not the name of a ship rather than a sword?") + fun ChoiceOption.keyForSilverlight(): Unit = option("It's the key to get a sword called Silverlight.") { + npc("Silverlight? Never heard of that. Sounds a good name for a ship. Are you sure it's not the name of a ship rather than a sword?") choice { - option("Yeah, pretty sure.") { - npc("That's a pity, waste of a name.") + option("Yeah, pretty sure.") { + npc("That's a pity, waste of a name.") betterBeOff() } anyKeys() } } - fun ChoiceOption.justTellMe(): Unit = option("Just tell me if you have the key.") { - npc("The key? The key to what?") - npc("There's more than one key in the world don't you know? Would be a bit odd if there was only the one.") + fun ChoiceOption.justTellMe(): Unit = option("Just tell me if you have the key.") { + npc("The key? The key to what?") + npc("There's more than one key in the world don't you know? Would be a bit odd if there was only the one.") choice { keyForSilverlight() - option("You've lost it haven't you?") { - npc("Me? Lose things? That's a nasty accusation.") + option("You've lost it haven't you?") { + npc("Me? Lose things? That's a nasty accusation.") anyKeys() } } } suspend fun Player.startSpell(target: NPC) { - npc("Hurrah! That's all 25 sets of bones.") + npc("Hurrah! That's all 25 sets of bones.") target.anim("traiborn_bone_spell") target.gfx("traiborn_bone_spell") sound("demon_slayer_bone_spell") - npc("Wings of dark and colour too, Spreading in the morning dew; Locked away I have a key; Return it now, please, unto me.") + npc("Wings of dark and colour too, Spreading in the morning dew; Locked away I have a key; Return it now, please, unto me.") sound("demon_slayer_cupboard_appear") val direction = Direction.westClockwise.first { !target.blocked(it) } val rotation = Direction.westClockwise.indexOf(direction.rotate(6)) @@ -203,13 +203,13 @@ class Traiborn : Script { sound("demon_slayer_cupboard_disappear") target.watch(this) item("silverlight_key_wizard_traiborn", 400, "Traiborn hands you a key.") - player("Thank you very much.") - npc("Not a problem for a friend of Sir What's-his-face.") + player("Thank you very much.") + npc("Not a problem for a friend of Sir What's-his-face.") } suspend fun Player.somewhereToBe() { - npc("Don't you have somewhere to be, young thingummywut? You still have that key you asked me for.") - player("You're right. I've got a demon to slay.") + npc("Don't you have somewhere to be, young thingummywut? You still have that key you asked me for.") + player("You're right. I've got a demon to slay.") } suspend fun Player.bonesCheck(target: NPC) { @@ -221,23 +221,23 @@ class Traiborn : Script { needAKey() } else -> { - npc("How are you doing finding bones?") + npc("How are you doing finding bones?") if (!inventory.contains("bones")) { - player("I haven't got any at the moment.") - npc("Nevermind, keep working on it.") + player("I haven't got any at the moment.") + npc("Nevermind, keep working on it.") return } - player("I have some bones.") - npc("Give 'em here then.") + player("I have some bones.") + npc("Give 'em here then.") giveBones(target) } } } suspend fun Player.lostKey() { - player("I've lost the key you gave to me.") - npc("Yes I know, it was returned to me. If you want it back you're going to have to collect another 25 sets of bones.") + player("I've lost the key you gave to me.") + npc("Yes I know, it was returned to me. If you want it back you're going to have to collect another 25 sets of bones.") bonesRequired = 25 } @@ -249,9 +249,9 @@ class Traiborn : Script { bonesRequired = 0 startSpell(target) } else { - player("That's all of them.") - npc("I still need $bonesRequired more.") - player("Ok, I'll keep looking.") + player("That's all of them.") + npc("I still need $bonesRequired more.") + player("Ok, I'll keep looking.") } } } diff --git a/game/src/main/kotlin/content/area/morytania/mort_myre_swamp/BillBlakey.kt b/game/src/main/kotlin/content/area/morytania/mort_myre_swamp/BillBlakey.kt index b434643c20..eeaa46b0aa 100644 --- a/game/src/main/kotlin/content/area/morytania/mort_myre_swamp/BillBlakey.kt +++ b/game/src/main/kotlin/content/area/morytania/mort_myre_swamp/BillBlakey.kt @@ -1,7 +1,7 @@ package content.area.morytania.mort_myre_swamp +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Neutral -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.npc import world.gregs.voidps.engine.Script import world.gregs.voidps.engine.client.message @@ -13,15 +13,15 @@ class BillBlakey : Script { init { npcOperate("Talk-to", "bill_blakey") { if (equipped(EquipSlot.Amulet).id != "ghostspeak_amulet") { - npc("Woo, wooo. Woooo.") + npc("Woo, wooo. Woooo.") message("The ghost seems barely aware of your existence,") message("but you sense that resting here might recharge you for battle!") return@npcOperate } - npc("How sweet I roamed from fen to fen, And tasted all the Myre's pride, 'Till I the queen of love did ken, Who in the spirit beams did glide!") - npc("She shew'd me lilies in her hair, And blushing roses for her brow; She led me through her gardens fair, Where all her silver blooms do grow.") - npc("With sweet Myre dews my wings were wet, And Phoebus' kiss did slowly fade; She'd caught me in her silken net, And trap'd me as this silver shade.") - npc("She loves to sit and hear me sing, Then laughing, sports and plays with me; Then stretches out her silver wing, And mocks my loss of liberty.") + npc("How sweet I roamed from fen to fen, And tasted all the Myre's pride, 'Till I the queen of love did ken, Who in the spirit beams did glide!") + npc("She shew'd me lilies in her hair, And blushing roses for her brow; She led me through her gardens fair, Where all her silver blooms do grow.") + npc("With sweet Myre dews my wings were wet, And Phoebus' kiss did slowly fade; She'd caught me in her silken net, And trap'd me as this silver shade.") + npc("She loves to sit and hear me sing, Then laughing, sports and plays with me; Then stretches out her silver wing, And mocks my loss of liberty.") } } } diff --git a/game/src/main/kotlin/content/area/troll_country/god_wars_dungeon/SirGerry.kt b/game/src/main/kotlin/content/area/troll_country/god_wars_dungeon/SirGerry.kt index a90c486c58..13d5412041 100644 --- a/game/src/main/kotlin/content/area/troll_country/god_wars_dungeon/SirGerry.kt +++ b/game/src/main/kotlin/content/area/troll_country/god_wars_dungeon/SirGerry.kt @@ -3,8 +3,8 @@ package content.area.troll_country.god_wars_dungeon import content.entity.player.bank.ownsItem import content.entity.player.dialogue.Happy import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Scared -import content.entity.player.dialogue.Upset +import content.entity.player.dialogue.Sad +import content.entity.player.dialogue.Terrified import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -28,13 +28,13 @@ class SirGerry : Script { return@npcOperate } player("Who are you? What are you doing here in the snow?") - npc("My name is...Sir Gerry. I am...a member of a secret...society of knights. My time is short and I need...your help.") + npc("My name is...Sir Gerry. I am...a member of a secret...society of knights. My time is short and I need...your help.") if (questCompleted("recruitment_drive")) { player("A secret society of knights? You don't mean the Temple Knights, do you?") npc("Yes! Praise Saradomin! You...have been sent in...my hour of need. Please, take...this scroll to Sir Tiffy in Falador park... You should not...read it.") } else { player("A secret society of knights? What a surprise! Is there an old charter or decree that says if you're a knight you have to belong to a secret order?") - npc("I'm sorry, my friend... I do not understand your meaning. Please, time is short... Take this scroll to Sir Tiffy. You will find him in Falador park... You should not...read it... It contains information for his eyes only.") + npc("I'm sorry, my friend... I do not understand your meaning. Please, time is short... Take this scroll to Sir Tiffy. You will find him in Falador park... You should not...read it... It contains information for his eyes only.") } statement("The knight hands you a scroll.") inventory.add("knights_notes") @@ -69,7 +69,7 @@ class SirGerry : Script { inventory.remove("rope") set("godwars_entrance_rope", true) } else { - npc("sir_gerry_normal", "Cough... Hey, over here.") + npc("sir_gerry_normal", "Cough... Hey, over here.") } } diff --git a/game/src/main/kotlin/content/area/wilderness/DrunkenMusician.kt b/game/src/main/kotlin/content/area/wilderness/DrunkenMusician.kt index ff274e2cf0..7f085a0388 100644 --- a/game/src/main/kotlin/content/area/wilderness/DrunkenMusician.kt +++ b/game/src/main/kotlin/content/area/wilderness/DrunkenMusician.kt @@ -1,9 +1,9 @@ package content.area.wilderness +import content.entity.player.dialogue.Bored import content.entity.player.dialogue.Drunk import content.entity.player.dialogue.Pleased import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.RollEyes import content.entity.player.dialogue.type.* import world.gregs.voidps.engine.Script import world.gregs.voidps.engine.entity.character.player.Player @@ -24,7 +24,7 @@ class DrunkenMusician : Script { npc("I'm jus' relaxshed, mate.") player("I'm not sure I want to be as relaxed as you are.") npc("Youze'll never be as relaxshed as as I am, I worked hard to get this relaxshed.") - player("Clearly...") + player("Clearly...") choice() } option("Can I ask you some questions about resting?") { diff --git a/game/src/main/kotlin/content/area/wilderness/GhostlyPiper.kt b/game/src/main/kotlin/content/area/wilderness/GhostlyPiper.kt index 972042a8f0..8d8b46eb1a 100644 --- a/game/src/main/kotlin/content/area/wilderness/GhostlyPiper.kt +++ b/game/src/main/kotlin/content/area/wilderness/GhostlyPiper.kt @@ -33,8 +33,8 @@ class GhostlyPiper : Script { player("I see. How long have you been standing here then?") npc("Well, it is all a bit fuzzy. I remember standing at the front of the massed forces of Saradomin, and playing the Call to Arms, but after that I can't quite recall.") - player("I think you've been here for quite some time. You do know you're a gh-") - player("No, never mind, you look happy enough here, and your music is quite rousing. I might rest here a while.") + player("I think you've been here for quite some time. You do know you're a gh-") + player("No, never mind, you look happy enough here, and your music is quite rousing. I might rest here a while.") choice() } option("That's all for now") { diff --git a/game/src/main/kotlin/content/area/wilderness/GoblinMusician.kt b/game/src/main/kotlin/content/area/wilderness/GoblinMusician.kt index 49b56a783e..89cd95eb50 100644 --- a/game/src/main/kotlin/content/area/wilderness/GoblinMusician.kt +++ b/game/src/main/kotlin/content/area/wilderness/GoblinMusician.kt @@ -31,15 +31,15 @@ class GoblinMusician : Script { suspend fun Player.resting() { choice("Can I ask you some questions about resting?") { option("How does resting work?") { - npc("You stoopid. Goblin sit down, goblin rest, goblin feel better.") + npc("You stoopid. Goblin sit down, goblin rest, goblin feel better.") resting() } option("What's special about resting by a musician?") { - npc("Drumming good! Make you feel better, boom booms make you run longer!") + npc("Drumming good! Make you feel better, boom booms make you run longer!") resting() } option("Can you summarise the effects for me?") { - npc("Wot? You sit down, you rest. Listen to Thump-Thump is better.") + npc("Wot? You sit down, you rest. Listen to Thump-Thump is better.") resting() } exit() diff --git a/game/src/main/kotlin/content/area/wilderness/abyss/DarkMage.kt b/game/src/main/kotlin/content/area/wilderness/abyss/DarkMage.kt index 4201d1e02f..83681a4251 100644 --- a/game/src/main/kotlin/content/area/wilderness/abyss/DarkMage.kt +++ b/game/src/main/kotlin/content/area/wilderness/abyss/DarkMage.kt @@ -12,7 +12,7 @@ class DarkMage : Script { init { npcOperate("Talk-to", "dark_mage") { - player("Hello there.") + player("Hello there.") npc("Quiet! You must not break my concentration!") choice { whyNot() @@ -43,11 +43,11 @@ class DarkMage : Script { fun ChoiceOption.whyNot() { option("Why not?") { - npc("Well, if my concentration is broken while keeping this rift open, the results won't be pretty.") + npc("Well, if my concentration is broken while keeping this rift open, the results won't be pretty.") player("In what way?") - npc("If we are lucky, the heads of anyone within the Abyss will suddenly explode, including us.") - player("Err... And if we're unlucky?") - npc("If we are unlucky, then the entire universe will begin to fold in upon itself, and all reality as we know it will be annihilated in a single stroke.") + npc("If we are lucky, the heads of anyone within the Abyss will suddenly explode, including us.") + player("Err... And if we're unlucky?") + npc("If we are unlucky, then the entire universe will begin to fold in upon itself, and all reality as we know it will be annihilated in a single stroke.") npc("So leave me alone!") choice { whyAreYouHere() @@ -59,10 +59,10 @@ class DarkMage : Script { fun ChoiceOption.whyAreYouHere() { option("What are you doing here?") { - npc("Do you mean what am I doing here in the Abyss? Or are you asking me what I consider my ultimate role to be in this voyage that we call life?") - player("Err... The first one.") - player("By remaining here and holding this rift open, I am providing a permanent link between normal space and this strange dimension.") - npc("As long as my spell remains in effect, we have the capability to teleport into the Abyss.") + npc("Do you mean what am I doing here in the Abyss? Or are you asking me what I consider my ultimate role to be in this voyage that we call life?") + player("Err... The first one.") + player("By remaining here and holding this rift open, I am providing a permanent link between normal space and this strange dimension.") + npc("As long as my spell remains in effect, we have the capability to teleport into the Abyss.") npc("Now leave me be! I can afford no distraction in my task!") choice { whyNot() @@ -73,16 +73,16 @@ class DarkMage : Script { } fun ChoiceOption.needHelp() { - option("I need your help with something.") { + option("I need your help with something.") { npc("What? Oh... very well. What did you want?") choice { option("Can I have another Abyssal book?") { if (ownsItem("abyssal_book")) { - npc("You already have one, don't waste my time.") // TODO proper message (not in osrs) + npc("You already have one, don't waste my time.") // TODO proper message (not in osrs) } else if (inventory.isFull()) { npc("Don't waste my time if you don't have enough free space to take it.") } else { - npc("Here, take it. It is important to pool our research.") + npc("Here, take it. It is important to pool our research.") if (inventory.add("abyssal_book")) { item("abyssal_book", 400, "You have been given a book.") } else { @@ -90,14 +90,14 @@ class DarkMage : Script { } choice { askForPouch() - option("Thanks.") { + option("Thanks.") { npc("Now can you leave me alone? I can't keep affording these distractions!") } } } } askForPouch() - option("Actually, I don't need anything right now.") { + option("Actually, I don't need anything right now.") { npc("Then go away! Honestly, you have no idea of the pressure I am under. I can't afford any distractions!") } } @@ -105,7 +105,7 @@ class DarkMage : Script { } fun ChoiceOption.illGo() { - option("Sorry, I'll go.") { + option("Sorry, I'll go.") { npc("Good. I'm attempting to subdue the elemental mechanisms of the universe to my will. Inane chatter from random idiots is not helping me achieve this!") } } @@ -115,7 +115,7 @@ class DarkMage : Script { if (ownsItem("small_pouch")) { npc("You already have a Pouch. Are you aware of the dimensional turmoil you can cause by using too many pouches at the same time?") } else { - npc("Here. Be more careful with your belongings in future.") + npc("Here. Be more careful with your belongings in future.") item("small_pouch", 400, "You have been given a pouch.") } } diff --git a/game/src/main/kotlin/content/area/wilderness/abyss/MageOfZamorak.kt b/game/src/main/kotlin/content/area/wilderness/abyss/MageOfZamorak.kt index 017d8c099a..83d1508b1f 100644 --- a/game/src/main/kotlin/content/area/wilderness/abyss/MageOfZamorak.kt +++ b/game/src/main/kotlin/content/area/wilderness/abyss/MageOfZamorak.kt @@ -50,11 +50,11 @@ class MageOfZamorak : Script { if (questCompleted("rune_mysteries")) { when (get("enter_the_abyss", "unstarted")) { "unstarted" -> { - npc("If you want to talk, this isn't the place for it. Meet me in Varrock's Chaos Temple, by the rune shop. Unless you're here to buy something?") + npc("If you want to talk, this isn't the place for it. Meet me in Varrock's Chaos Temple, by the rune shop. Unless you're here to buy something?") set("enter_the_abyss", "started") } - "started" -> npc("I already told you to meet me in Varrock's Chaos Temple, by the rune shop. Unless you're here to buy something?") - else -> npc("This isn't the place to talk. Visit me in Varrock's Chaos Temple if you have something to discuss. Unless you're here to buy something?") + "started" -> npc("I already told you to meet me in Varrock's Chaos Temple, by the rune shop. Unless you're here to buy something?") + else -> npc("This isn't the place to talk. Visit me in Varrock's Chaos Temple if you have something to discuss. Unless you're here to buy something?") } } else { npc("This isn't the place to talk. Unless you're here to buy something, you should leave.") @@ -64,10 +64,12 @@ class MageOfZamorak : Script { option("Let's see what you're selling.") { openShop("mage_of_zamorak") } - option("Could you teleport me to the Abyss?", filter = { questCompleted("enter_the_abyss") }) { - teleport(this, target) + if (questCompleted("enter_the_abyss")) { + option("Could you teleport me to the Abyss?") { + teleport(this, target) + } } - option("Alright, I'll go.") + option("Alright, I'll go.") } } @@ -77,60 +79,60 @@ class MageOfZamorak : Script { return@npcOperate } if (questCompleted("enter_the_abyss")) { - npc("Ah, you again. What do you want?") + npc("Ah, you again. What do you want?") choice { aboutAbyss() aboutGroup() - option("Nothing. I'm just looking around.") { - npc("Very well.") + option("Nothing. I'm just looking around.") { + npc("Very well.") } } return@npcOperate } if (!get("enter_abyss_where_runes", false)) { - npc("Ah, you again. The Wilderness is hardly the appropriate place for a conversation now, is it? What was it you wanted?") - player("Err... I didn't really want anything.") - npc("So why did you approach me?") - player("I was just wondering why you sell runes in the Wilderness?") + npc("Ah, you again. The Wilderness is hardly the appropriate place for a conversation now, is it? What was it you wanted?") + player("Err... I didn't really want anything.") + npc("So why did you approach me?") + player("I was just wondering why you sell runes in the Wilderness?") npc("Well I can't go doing it in the middle of Varrock, can I? In case you hadn't noticed, I'm a servant of Zamorak. The Saradominists have made sure that people like me are not welcome in these parts.") set("enter_abyss_where_runes", true) choice { whereRunes() - option("Interesting. Thanks for the information.") + option("Interesting. Thanks for the information.") } } else if (get("enter_abyss_has_orb", false)) { npc("You again. Have you managed to use that scrying orb to obtain the information I need?") if (get("enter_abyss_taken_orb", false)) { takenOrb() } else if (ownsItem("scrying_orb_full")) { - player("Here you go.") + player("Here you go.") if (!inventory.remove("scrying_orb_full")) { return@npcOperate } set("enter_the_abyss", "orb_inspect") message("You hand the orb to the Mage of Zamorak.") item("scrying_orb", 400, "You hand the orb to the Mage of Zamorak.") - npc("Right, let's take a look at this orb...") + npc("Right, let's take a look at this orb...") npc("Yes, this will do nicely. Once again, the Zamorak Magical Institute has overcome the Order of Wizards!") set("enter_abyss_taken_orb", true) takenOrb() } else if (!ownsItem("scrying_orb")) { - player("I lost it. Could I have another?") + player("I lost it. Could I have another?") npc("Fool! Take this, and don't lose it this time!") item("scrying_orb", 400, "The Mage of Zamorak hands you an orb.") inventory.add("scrying_orb") } else { - player("Not yet.") - npc("You must carry it with you and teleport to the Rune Essence Mine from three different locations. Return to me once you have done so.") + player("Not yet.") + npc("You must carry it with you and teleport to the Rune Essence Mine from three different locations. Return to me once you have done so.") } } else if (get("enter_abyss_offer", false)) { npc("You again. Have you considered my offer? If you help us access the Rune Essence Mine, we will share our runecrafting secrets with you in return.") offer() } else if (get("enter_abyss_where_runes", false)) { - npc("Ah, you again. Do you need something?") + npc("Ah, you again. Do you need something?") choice { whereRunes() - option("Just looking around.") + option("Just looking around.") } } } @@ -138,7 +140,7 @@ class MageOfZamorak : Script { fun ChoiceOption.aboutGroup() { option("Can you tell me more about your group?") { - npc("I suppose you have proven yourself trustworthy. We are a group of mages in service to Zamorak. Our group is called the Zamorak Magical Institute, or Z.M.I. for short.") + npc("I suppose you have proven yourself trustworthy. We are a group of mages in service to Zamorak. Our group is called the Zamorak Magical Institute, or Z.M.I. for short.") npc("Few actually know of us. Saradominist groups like the Order of Wizards hold sway over these lands, so we are forced to work in the shadows. However, make no mistake, our power far exceeds theirs.") player("You don't seem to like the Order of Wizards very much.") npc("And why would we? Did you know that the Order of Wizards wasn't always a Saradominist group? Once they allowed mages of all faiths to study with them, but they became greedy.") @@ -148,12 +150,12 @@ class MageOfZamorak : Script { npc("They used it to perform a ritual, but their lack of understanding caused it to go wrong. The entire Wizards' Tower burnt down. Many were killed, and years of research was destroyed.") npc("Naturally, they blamed the Zamorakians. Claimed we intentionally burnt the tower down. After the tower was rebuilt, we were banished from the Order of Wizards and forced underground.") player("And that's how the Z.M.I. was formed?") - npc("Exactly.") + npc("Exactly.") npc("Now, did you want something else?") choice { aboutAbyss() - option("No thanks.") { - npc("Very well.") + option("No thanks.") { + npc("Very well.") } } } @@ -161,23 +163,23 @@ class MageOfZamorak : Script { fun ChoiceOption.aboutAbyss() { option("Can you tell me more about the Abyss?") { - npc("It is a hard place to describe. We often refer to it as another plane, but that isn't quite accurate. If anything, it is more like a plane that sits between all other planes.") + npc("It is a hard place to describe. We often refer to it as another plane, but that isn't quite accurate. If anything, it is more like a plane that sits between all other planes.") player("Right... And what does it have to do with runecrafting?") - npc("In truth, nothing at all. However, it has everything to do with teleportation. You see, time and space work differently in the Abyss.") - npc("For example, you can travel to the Abyss, walk a few steps and then exit, only to find yourself somewhere completely different from where you entered. You might even find yourself on a different plane.") - npc("You can also enter the Abyss and spend days there, but on your return, only moments have passed.") - npc("This is why the Abyss is so useful. It can be used as an effective hub for teleportation. In fact, all teleportation that we know of uses the Abyss, you just don't realise it.") + npc("In truth, nothing at all. However, it has everything to do with teleportation. You see, time and space work differently in the Abyss.") + npc("For example, you can travel to the Abyss, walk a few steps and then exit, only to find yourself somewhere completely different from where you entered. You might even find yourself on a different plane.") + npc("You can also enter the Abyss and spend days there, but on your return, only moments have passed.") + npc("This is why the Abyss is so useful. It can be used as an effective hub for teleportation. In fact, all teleportation that we know of uses the Abyss, you just don't realise it.") player("Wait... So when I teleport, I'm actually travelling through the Abyss?") - npc("In some ways, I suppose you are. Whenever you use a teleport spell, that spell is actually travelling through the Abyss and using it to link two places together.") + npc("In some ways, I suppose you are. Whenever you use a teleport spell, that spell is actually travelling through the Abyss and using it to link two places together.") player("So did you discover the Abyss?") - npc("No. Knowledge of the Abyss has existed for a long time, hence it being used for teleportation. However, we believe we may be the first to have properly gained access in centuries.") + npc("No. Knowledge of the Abyss has existed for a long time, hence it being used for teleportation. However, we believe we may be the first to have properly gained access in centuries.") player("How did you manage it?") - npc("By complete accident. One of our initiates was performing a routine teleportation experiment when something went wrong. Instead of ending up at their destination, they found themselves in the Abyss.") + npc("By complete accident. One of our initiates was performing a routine teleportation experiment when something went wrong. Instead of ending up at their destination, they found themselves in the Abyss.") npc("Now, did you want something else?") choice { aboutGroup() - option("No thanks.") { - npc("Very well.") + option("No thanks.") { + npc("Very well.") } } } @@ -185,15 +187,15 @@ class MageOfZamorak : Script { suspend fun Player.takenOrb() { npc("You have done well. Now, time for us to uphold our end of the bargin.") - npc("The reason we are able to craft so many runes is because we do not visit the runic altars in the traditional way. Instead, we have found a way to teleport to them directly.") + npc("The reason we are able to craft so many runes is because we do not visit the runic altars in the traditional way. Instead, we have found a way to teleport to them directly.") player("How?") - npc("Via another plane known as the Abyss. It is a complex place that cannot be easily explained, but I will share our research notes with you so you may better understand it.") + npc("Via another plane known as the Abyss. It is a complex place that cannot be easily explained, but I will share our research notes with you so you may better understand it.") player("So can I use the Abyss?") - npc("Yes. Visit me in the Wilderness whenever you wish to be teleported there. Just be careful, for it is a dangerous place. Still, I'm sure you'll agree that the risk is worth the reward.") - npc("There are creatures there that will hunt and attack any visitors on sight. The magic we use for teleporting there can also be a bit... unstable.") + npc("Yes. Visit me in the Wilderness whenever you wish to be teleported there. Just be careful, for it is a dangerous place. Still, I'm sure you'll agree that the risk is worth the reward.") + npc("There are creatures there that will hunt and attack any visitors on sight. The magic we use for teleporting there can also be a bit... unstable.") player("What do you mean?") npc("Just don't expect to be using any prayers in there.") - npc("Anyway, you may also have this pouch as well. I'm sure you will find it useful. Now, we're done here.") + npc("Anyway, you may also have this pouch as well. I'm sure you will find it useful. Now, we're done here.") if (!inventory.add("abyssal_book", "small_pouch")) { // TODO proper message items("abyssal_book", "small_pouch", "The Mage of Zamorak tries to hand you a book and a pouch, but you don't have enough room to take it.") @@ -207,28 +209,28 @@ class MageOfZamorak : Script { fun ChoiceOption.whereRunes() { option("Where do you get your runes from?") { - npc("Well we craft them of course.") - player("We?") + npc("Well we craft them of course.") + player("We?") npc("My associates and I. Despite the best attempts of the Saradominists, there's still more of us around than they'd like.") player("I can't imagine they like you crafting runes much. Do they not try and stop you?") - npc("Ha! I'm sure they'd love to, but we have methods of runecrafting that they can only dream of!") + npc("Ha! I'm sure they'd love to, but we have methods of runecrafting that they can only dream of!") player("Care to share?") - npc("Why would I? You are not a member of our institute. How do I know you won't just go and share all of our secrets with those Saradominist fools in the Order of Wizards.") + npc("Why would I? You are not a member of our institute. How do I know you won't just go and share all of our secrets with those Saradominist fools in the Order of Wizards.") choice { option("Maybe I could make it worth your while?") { npc("How? What do you have to offer?") player("Well what is it you want?") accessLostMine() } - option("But I'm a loyal servant of Zamorak as well!") { - npc("Even if you speak the truth, it takes more than just being a follower of Zamorak to gain the secrets of the institute. You would need to offer something in return.") + option("But I'm a loyal servant of Zamorak as well!") { + npc("Even if you speak the truth, it takes more than just being a follower of Zamorak to gain the secrets of the institute. You would need to offer something in return.") player("Like what?") accessLostMine() } - option("You're right. I'm a faithful follower of Saradomin.") { + option("You're right. I'm a faithful follower of Saradomin.") { npc("Then you have no place here! Leave, before I make you!") } - option("Actually, I'm not interested.") + option("Actually, I'm not interested.") } } } @@ -238,33 +240,33 @@ class MageOfZamorak : Script { npc("From what we can gather, they've somehow rediscovered how to access the lost Rune Essence Mine.") player("Ah, well I know all about that. I was actually the one to help them do it!") npc("You did what? You helped the Order of Wizards? I thought you claimed to be a servant of Zamorak?") - player("Err...") + player("Err...") choice { - option("I did it so that I could then steal their secrets.") { - npc("You did? Perhaps I underestimated you.") + option("I did it so that I could then steal their secrets.") { + npc("You did? Perhaps I underestimated you.") deal() } option("Okay, fine. I don't really serve Zamorak.") { npc("Then give me one good reason why I shouldn't have you teleported into the depths of a volcano!") choice { - option("Because I can still help you.") { - npc("You would help both sides for your own gain? I suppose as a Zamorakian, I can respect that, even if I don't like it.") + option("Because I can still help you.") { + npc("You would help both sides for your own gain? I suppose as a Zamorakian, I can respect that, even if I don't like it.") deal() } - option("Alright, I'll leave. Just don't go teleporting me anywhere.") { + option("Alright, I'll leave. Just don't go teleporting me anywhere.") { npc("Be glad that I am merciful! Now go!") } } } - option("Sorry, I just remembered that I have to take my pet rat for a walk.") { - npc("What?") - player("Yup! Got to go!") + option("Sorry, I just remembered that I have to take my pet rat for a walk.") { + npc("What?") + player("Yup! Got to go!") } } } suspend fun Player.deal() { - npc("Alright, if you help us access the Rune Essence Mine, we will share our runecrafting secrets with you in return.") + npc("Alright, if you help us access the Rune Essence Mine, we will share our runecrafting secrets with you in return.") set("enter_abyss_offer", true) offer() } @@ -299,18 +301,18 @@ class MageOfZamorak : Script { suspend fun Player.offer() { choice { - option("Deal.") { - npc("Good. Now, all I need from you is the spell that will teleport me to the Rune Essence Mine.") - player("Err... I don't actually know the spell.") - npc("What? Then how do you get there.") - player("Oh, well the people who do know the spell just teleport me there directly.") - npc("Hmm... I see. That makes this slightly more complex, but no matter. You can still help us.") + option("Deal.") { + npc("Good. Now, all I need from you is the spell that will teleport me to the Rune Essence Mine.") + player("Err... I don't actually know the spell.") + npc("What? Then how do you get there.") + player("Oh, well the people who do know the spell just teleport me there directly.") + npc("Hmm... I see. That makes this slightly more complex, but no matter. You can still help us.") player("How?") - npc("I'll give you a scrying orb with a standard cypher spell cast upon it. The orb will absorb mystical energies that it is exposed to.") - npc("If you teleport to the Rune Essence Mine from three different locations, the orb will absorb the energies of the spell and allow us to reverse-engineer the magic behind it.") + npc("I'll give you a scrying orb with a standard cypher spell cast upon it. The orb will absorb mystical energies that it is exposed to.") + npc("If you teleport to the Rune Essence Mine from three different locations, the orb will absorb the energies of the spell and allow us to reverse-engineer the magic behind it.") npc("Do you know of three different people who can teleport you there?") - player(if (get("last_npc_teleport_to_rune_essence_mine", "aubury") != "aubury") "I think so?" else "Maybe?") - npc("Well if not, I'm sure one of those fools in the Order of Wizards can tell you. Now, here's the orb.") + player(if (get("last_npc_teleport_to_rune_essence_mine", "aubury") != "aubury") "I think so?" else "Maybe?") + npc("Well if not, I'm sure one of those fools in the Order of Wizards can tell you. Now, here's the orb.") if (!inventory.add("scrying_orb")) { item("scrying_orb", 400, "The Mage of Zamorak tries to hand you an orb, but you don't have enough room to take it.") } else { @@ -319,11 +321,11 @@ class MageOfZamorak : Script { set("enter_abyss_has_orb", true) } } - option("No deal.") { + option("No deal.") { npc("Fine. I will find another way.") } - option("I need to think about it.") { - npc("I will be here once you have decided.") + option("I need to think about it.") { + npc("I will be here once you have decided.") } } } diff --git a/game/src/main/kotlin/content/entity/npc/Banker.kt b/game/src/main/kotlin/content/entity/npc/Banker.kt index 6aa22c43a7..df5a05955d 100644 --- a/game/src/main/kotlin/content/entity/npc/Banker.kt +++ b/game/src/main/kotlin/content/entity/npc/Banker.kt @@ -1,7 +1,7 @@ package content.entity.npc +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.social.trade.lend.Loan.getSecondsRemaining @@ -25,9 +25,9 @@ class Banker : Script { val collection = false if (loanReturned) { - npc("Before we go any further, I should inform you that an item you lent out has been returned to you.") + npc("Before we go any further, I should inform you that an item you lent out has been returned to you.") } else if (collection) { - npc("Before we go any further, I should inform you that you have items ready for collection from the Grand Exchange.") + npc("Before we go any further, I should inform you that you have items ready for collection from the Grand Exchange.") } menu() } @@ -60,14 +60,14 @@ class Banker : Script { option("I'd like to see my collection box.", block = { open("collection_box") }) option("I'd like to see my Returned Items box.", block = { open("returned_items") }) option("What is this place?") { - npc("This is a branch of the Bank of ${Settings["server.name"]}. We have branches in many towns.") + npc("This is a branch of the Bank of ${Settings["server.name"]}. We have branches in many towns.") choice { option("And what do you do?") { - npc("We will look after your items and money for you. Leave your valuables with us if you want to keep them safe.") + npc("We will look after your items and money for you. Leave your valuables with us if you want to keep them safe.") achievement() } option("Didn't you used to be called the Bank of Varrock?") { - npc("Yes we did, but people kept on coming into our branches outside of Varrock and telling us that our signs were wrong. They acted as if we didn't know what town we were in or something.") + npc("Yes we did, but people kept on coming into our branches outside of Varrock and telling us that our signs were wrong. They acted as if we didn't know what town we were in or something.") achievement() } } diff --git a/game/src/main/kotlin/content/entity/npc/Musician.kt b/game/src/main/kotlin/content/entity/npc/Musician.kt index 3f19d66267..0c5b6cbb87 100644 --- a/game/src/main/kotlin/content/entity/npc/Musician.kt +++ b/game/src/main/kotlin/content/entity/npc/Musician.kt @@ -1,9 +1,9 @@ package content.entity.npc import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Pleased import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.* import world.gregs.voidps.engine.Script import world.gregs.voidps.engine.entity.character.player.Player @@ -38,7 +38,7 @@ class Musician : Script { player("Yes, I can never run as far as I'd like.") npc("Well, you may rest anywhere, simply choose the Rest option on the run buttons.") npc("When you are nice and relaxed, you will recharge your run energy more quickly and your life points twice as fast as you would do so normally.") - npc("Of course, you can't do anything else while you're resting, other than talk.") + npc("Of course, you can't do anything else while you're resting, other than talk.") player("Why not?") npc("Well, you wouldn't be resting, now would you? Also, you should know that resting by a musician, has a similar effect but the benefits are greater.") resting() diff --git a/game/src/main/kotlin/content/entity/npc/Sheep.kt b/game/src/main/kotlin/content/entity/npc/Sheep.kt index 47bbeb8ca8..90163f1cdc 100644 --- a/game/src/main/kotlin/content/entity/npc/Sheep.kt +++ b/game/src/main/kotlin/content/entity/npc/Sheep.kt @@ -44,7 +44,7 @@ class Sheep : Script { shear(target, "black") } npcOperate("Talk-to", "sheep_penguin") { - player("That's a sheep...I think. I can't talk to sheep.") + player("That's a sheep...I think. I can't talk to sheep.") } npcSpawn("sheep*,black_sheep") { if (id != "sheep_penguin") { diff --git a/game/src/main/kotlin/content/entity/npc/shop/Shop.kt b/game/src/main/kotlin/content/entity/npc/shop/Shop.kt index 6754b4eb3b..19770459fb 100644 --- a/game/src/main/kotlin/content/entity/npc/shop/Shop.kt +++ b/game/src/main/kotlin/content/entity/npc/shop/Shop.kt @@ -1,7 +1,7 @@ package content.entity.npc.shop import content.entity.npc.shop.general.GeneralStores -import content.entity.player.dialogue.Sad +import content.entity.player.dialogue.Disheartened import content.entity.player.dialogue.type.player import world.gregs.voidps.engine.client.ui.InterfaceApi import world.gregs.voidps.engine.entity.character.player.Player @@ -38,7 +38,7 @@ suspend fun Player.buy(item: String, cost: Int, message: String = "Oh dear. I do when (inventory.transaction.error) { is TransactionError.Full -> inventoryFull() TransactionError.None -> return true - else -> player(message) + else -> player(message) } return false } diff --git a/game/src/main/kotlin/content/entity/npc/shop/general/GeneralStore.kt b/game/src/main/kotlin/content/entity/npc/shop/general/GeneralStore.kt index 92d8054d7e..a92e43bf24 100644 --- a/game/src/main/kotlin/content/entity/npc/shop/general/GeneralStore.kt +++ b/game/src/main/kotlin/content/entity/npc/shop/general/GeneralStore.kt @@ -2,8 +2,8 @@ package content.entity.npc.shop.general import content.entity.npc.shop.openShop import content.entity.player.dialogue.Happy +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Neutral -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.choice import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -17,20 +17,20 @@ class GeneralStore : Script { } npcOperate("Talk-to", "shopkeeper*") { (target) -> - npc("Can I help you at all?") + npc("Can I help you at all?") choice { option("Yes please. What are you selling?") { openShop(target.def.getOrNull("shop") ?: return@option) } option("How should I use your shop?") { if (target.id.endsWith("lumbridge")) { - npc("I'm glad you ask! The shop has two sections to it: 'Main stock' and 'Free sample items'.") - npc("From 'Main Stock' you can buy as many of the stocked items as you wish. I also offer free samples to help get you started and to keep you coming back.") - npc("Once you take a free sample, I won't give you another for about half an hour. I'm not make of money, you know!") - npc("You can also sell most items to the shop.") + npc("I'm glad you ask! The shop has two sections to it: 'Main stock' and 'Free sample items'.") + npc("From 'Main Stock' you can buy as many of the stocked items as you wish. I also offer free samples to help get you started and to keep you coming back.") + npc("Once you take a free sample, I won't give you another for about half an hour. I'm not make of money, you know!") + npc("You can also sell most items to the shop.") player("Thank you.") } else { - npc("I'm glad you ask! You can buy as many of the items stocked as you wish. You can also sell most items to the shop.") + npc("I'm glad you ask! You can buy as many of the items stocked as you wish. You can also sell most items to the shop.") player("Thank you.") } } @@ -49,10 +49,10 @@ class GeneralStore : Script { openShop(target.def.getOrNull("shop") ?: return@option) } option("How should I use your shop?") { - npc("I'm glad you ask! You can buy as many of the items stocked as you wish. You can also sell most items to the shop.") + npc("I'm glad you ask! You can buy as many of the items stocked as you wish. You can also sell most items to the shop.") player("Thank you.") } - option("No thanks.") + option("No thanks.") } } } diff --git a/game/src/main/kotlin/content/entity/obj/MilkCow.kt b/game/src/main/kotlin/content/entity/obj/MilkCow.kt index fca008f0f1..8e335ade62 100644 --- a/game/src/main/kotlin/content/entity/obj/MilkCow.kt +++ b/game/src/main/kotlin/content/entity/obj/MilkCow.kt @@ -1,9 +1,9 @@ package content.entity.obj import content.entity.player.bank.bank -import content.entity.player.dialogue.Chuckle +import content.entity.player.dialogue.Laugh +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.Quiz -import content.entity.player.dialogue.Talk import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player import content.entity.player.dialogue.type.statement @@ -45,12 +45,12 @@ class MilkCow : Script { inventory.replace("bucket", "bucket_of_milk") message("You milk the cow.") } else { - npc("gillie_groats", "Tee hee! You've never milked a cow before, have you?") + npc("gillie_groats", "Tee hee! You've never milked a cow before, have you?") player("Erm...no. How could you tell?") - npc("gillie_groats", "Because you're spilling milk all over the floor. What a waste! You need something to hold the milk.") - player("Ah, yes, I really should have guessed that one, shouldn't I?") - npc("gillie_groats", "You're from the city, aren't you? Try it again with an empty bucket.") - player("Right, I'll do that.") + npc("gillie_groats", "Because you're spilling milk all over the floor. What a waste! You need something to hold the milk.") + player("Ah, yes, I really should have guessed that one, shouldn't I?") + npc("gillie_groats", "You're from the city, aren't you? Try it again with an empty bucket.") + player("Right, I'll do that.") message("You'll need an empty bucket to collect the milk.") } } diff --git a/game/src/main/kotlin/content/entity/obj/Mill.kt b/game/src/main/kotlin/content/entity/obj/Mill.kt index 22c0ccaa36..da5437971e 100644 --- a/game/src/main/kotlin/content/entity/obj/Mill.kt +++ b/game/src/main/kotlin/content/entity/obj/Mill.kt @@ -1,7 +1,7 @@ package content.entity.obj import content.entity.player.bank.bank -import content.entity.player.dialogue.Talk +import content.entity.player.dialogue.Neutral import content.entity.player.dialogue.type.player import content.quest.quest import world.gregs.voidps.engine.Script @@ -48,7 +48,7 @@ class Mill : Script { return@itemOnObjectOperate } if (get("cooks_assistant_talked_to_millie", 0) == 0) { - player("Hmm. I should probably ask that lady downstairs how I can make extra fine flour.") + player("Hmm. I should probably ask that lady downstairs how I can make extra fine flour.") return@itemOnObjectOperate } if (holdsItem("extra_fine_flour")) { diff --git a/game/src/main/kotlin/content/entity/obj/canoe/Canoe.kt b/game/src/main/kotlin/content/entity/obj/canoe/Canoe.kt index 0eeea85973..7454db3f80 100644 --- a/game/src/main/kotlin/content/entity/obj/canoe/Canoe.kt +++ b/game/src/main/kotlin/content/entity/obj/canoe/Canoe.kt @@ -1,6 +1,6 @@ package content.entity.obj.canoe -import content.entity.player.dialogue.Neutral +import content.entity.player.dialogue.Idle import content.entity.player.dialogue.Quiz import content.entity.player.dialogue.type.npc import content.entity.player.dialogue.type.player @@ -10,9 +10,9 @@ import world.gregs.voidps.engine.entity.character.player.skill.Skill suspend fun Player.minimumCanoeLevel(): Boolean { player("Could you teach me about canoes?") if (levels.get(Skill.Woodcutting) < 12) { - npc("Well, you don't look like you have the skill to make a canoe.") - npc("You need to have at least level 12 woodcutting.") - npc("Once you are able to make a canoe it makes travel along the river much quicker!") + npc("Well, you don't look like you have the skill to make a canoe.") + npc("You need to have at least level 12 woodcutting.") + npc("Once you are able to make a canoe it makes travel along the river much quicker!") return true } return false diff --git a/game/src/main/kotlin/content/entity/obj/ship/CharterShip.kt b/game/src/main/kotlin/content/entity/obj/ship/CharterShip.kt index ee74a6e309..8f11e830af 100644 --- a/game/src/main/kotlin/content/entity/obj/ship/CharterShip.kt +++ b/game/src/main/kotlin/content/entity/obj/ship/CharterShip.kt @@ -56,12 +56,12 @@ class CharterShip : Script { player("Yes, who are you?") npc("${if (target.id == "trader_stan") "Why, I'm Trader Stan, owner and operator" else "I'm one of Trader Stan's crew; we are all part"} of the largest fleet of trading ships and chartered vessels to ever sail the seas!") if (target.id == "trader_stan") { - npc("If you want to get to a port in a hurry then you can charter one of my ships to take you there - if the price is right...") + npc("If you want to get to a port in a hurry then you can charter one of my ships to take you there - if the price is right...") } player("So, where exactly can I go with your ships?") - npc("We run ships from Port Phasmatys over to Port Tyras, stopping at Port Sarim, Catherby, Brimhaven, Musa Point, the Shipyard and Port Khazard.") + npc("We run ships from Port Phasmatys over to Port Tyras, stopping at Port Sarim, Catherby, Brimhaven, Musa Point, the Shipyard and Port Khazard.") npc("We might dock at Mos Le'Harmless once in a while, as well, if you catch my meaning...") - player("Wow, that's a lot of ports. I take it you have some exotic stuff to trade?") + player("Wow, that's a lot of ports. I take it you have some exotic stuff to trade?") npc("We certainly do! ${if (target.id == "trader_stan") "I and my crewmen" else "We"} have access to items bought and sold from around the world. Would you like to take a look? Or would you like to charter a ship?") choice { trading() @@ -69,26 +69,26 @@ class CharterShip : Script { if (target.id != "trader_stan") { option("Isn't it tricky to sail about in those clothes?") { player("Isn't it tricky to sail about in those clothes?") - npc("Tricky? Tricky!") - npc("Do you have even the slightest idea how tricky it is to sail in this stuff?") + npc("Tricky? Tricky!") + npc("Do you have even the slightest idea how tricky it is to sail in this stuff?") npc("Some of us tried tearing it and arguing that it was too fragile to wear when on a boat, but he just had it enchanted to re-stitch itself.") - player("Wow, that's kind of harsh.") - npc("Anyway, would you like to take a look at our exotic wares from around the world? Or would you like to charter a ship?") + player("Wow, that's kind of harsh.") + npc("Anyway, would you like to take a look at our exotic wares from around the world? Or would you like to charter a ship?") choice { trading() charter(target) - option("No thanks.") + option("No thanks.") } } } - option("No thanks.") + option("No thanks.") } } option("Yes, I would like to charter a ship.") { - player("Yes, I would like to charter a ship.") - npc("Certainly sir. Where would you like to go?") + player("Yes, I would like to charter a ship.") + npc("Certainly sir. Where would you like to go?") } - option("No thanks.") + option("No thanks.") } } @@ -142,14 +142,14 @@ class CharterShip : Script { } fun ChoiceOption.trading() { - option("Yes, let's see what you're trading.") { + option("Yes, let's see what you're trading.") { openShop("trader_stans_trading_post") } } fun ChoiceOption.charter(target: NPC) { - option("Yes, I would like to charter a ship.") { - npc("Certainly sir. Where would you like to go?") + option("Yes, I would like to charter a ship.") { + npc("Certainly sir. Where would you like to go?") set("charter_ship", location(target)) open("charter_ship_map") } diff --git a/game/src/main/kotlin/content/entity/player/dialogue/Expression.kt b/game/src/main/kotlin/content/entity/player/dialogue/Expression.kt index e28f1cc062..f9c1a556fd 100644 --- a/game/src/main/kotlin/content/entity/player/dialogue/Expression.kt +++ b/game/src/main/kotlin/content/entity/player/dialogue/Expression.kt @@ -3,7 +3,7 @@ package content.entity.player.dialogue sealed class Expression data object Admit : Expression() -data object Afraid : Expression() +data object Scared : Expression() data object Amazed : Expression() data object Frustrated : Expression() data object AngryFadeIn : Expression() @@ -12,7 +12,7 @@ data object Blink : Expression() data object Blinking : Expression() data object Happy : Expression() data object Chicken : Expression() -data object Chuckle : Expression() +data object Laugh : Expression() data object Condescending : Expression() data object Cry : Expression() data object Cursing : Expression() @@ -27,28 +27,28 @@ data object Giggles : Expression() data object Goofy : Expression() data object Pleased : Expression() data object Hysterics : Expression() -data object Laugh : Expression() +data object Cackle : Expression() data object LookDown : Expression() data object Mad : Expression() data object No : Expression() data object NoDisgust : Expression() -data object RollEyes : Expression() -data object Sad : Expression() -data object Scared : Expression() +data object Bored : Expression() +data object Disheartened : Expression() +data object Terrified : Expression() data object Shaking : Expression() -data object Shock : Expression() +data object Horrified : Expression() data object Sneer : Expression() data object Sob : Expression() -data object Surprised : Expression() +data object Shock : Expression() data object Shifty : Expression() -data object Talk : Expression() data object Neutral : Expression() +data object Idle : Expression() data object Teary : Expression() data object Unamused : Expression() -data object Uncertain : Expression() +data object Confused : Expression() data object Unimpressed : Expression() data object Unstable : Expression() data object Quiz : Expression() -data object Upset : Expression() +data object Sad : Expression() data object Yes : Expression() data object DoorHead : Expression() diff --git a/game/src/main/kotlin/content/entity/player/dialogue/type/Choice.kt b/game/src/main/kotlin/content/entity/player/dialogue/type/Choice.kt index 4846473c13..26b64023b3 100644 --- a/game/src/main/kotlin/content/entity/player/dialogue/type/Choice.kt +++ b/game/src/main/kotlin/content/entity/player/dialogue/type/Choice.kt @@ -17,14 +17,14 @@ private const val APPROXIMATE_WIDE_TITLE_LENGTH = 30 * } * option("two") { * } - * option("three", ::condition) { + * option("three") { * } * } */ suspend fun Player.choice(title: String? = null, block: suspend ChoiceOption.() -> Unit) { val builder = ChoiceOption() block.invoke(builder) - val lines = builder.build(this) + val lines = builder.build() if (lines.size == 1) { builder.invoke(0, this) return diff --git a/game/src/main/kotlin/content/entity/player/dialogue/type/ChoiceOption.kt b/game/src/main/kotlin/content/entity/player/dialogue/type/ChoiceOption.kt index 2dca0ab407..4c6e435cc0 100644 --- a/game/src/main/kotlin/content/entity/player/dialogue/type/ChoiceOption.kt +++ b/game/src/main/kotlin/content/entity/player/dialogue/type/ChoiceOption.kt @@ -5,41 +5,33 @@ import world.gregs.voidps.engine.entity.character.player.Player class ChoiceOption { - val values = mutableListOf