From 66030f36d61335ad7eb9bb557304d76aaa436069 Mon Sep 17 00:00:00 2001 From: Kennynes Date: Tue, 25 Nov 2025 13:01:34 +0000 Subject: [PATCH] Evil Bob's fishing event cutscene now much more authentic --- .../ame/events/evilbob/ServantCutscene.kt | 134 +++++++++++------- 1 file changed, 83 insertions(+), 51 deletions(-) diff --git a/Server/src/main/content/global/ame/events/evilbob/ServantCutscene.kt b/Server/src/main/content/global/ame/events/evilbob/ServantCutscene.kt index db54e0db9..4dfc72698 100644 --- a/Server/src/main/content/global/ame/events/evilbob/ServantCutscene.kt +++ b/Server/src/main/content/global/ame/events/evilbob/ServantCutscene.kt @@ -3,38 +3,47 @@ package content.global.ame.events.evilbob import core.api.* import core.game.activity.Cutscene import core.game.node.entity.player.Player +import core.game.world.map.Direction class ServantCutsceneN(player: Player) : Cutscene(player) { override fun setup() { setExit(player.location.transform(0, 0, 0)) loadRegion(13642) + addNPC(2479, 28, 41, Direction.SOUTH) // Evil Bob + addNPC(2481, 31, 41, Direction.SOUTH_WEST) // Servant } override fun runStage(stage: Int) { when (stage) { 0 -> { - fadeToBlack() - timedUpdate(4) + teleport(player, 30, 41) + moveCamera(30, 37, 400, 255) + rotateCamera(30, 50, 400, 255) + openInterface(player, 186) + timedUpdate(0) } 1 -> { - teleport(player, 29, 41) - moveCamera(30, 43) // +7 from statue - openInterface(player, 186) + timedUpdate(0) + } + 2 -> { // Slow start + moveCamera(30, 49, 400, 2) timedUpdate(2) } - 2 -> { + 3 -> { // Fast middle + moveCamera(30, 44, 380, 4) + timedUpdate(6) + } + 4 -> { // Slow end + moveCamera(30, 45, 340, 2) timedUpdate(2) - rotateCamera(30, 51, 300, 100) // the statue loc - fadeFromBlack() } - 3 -> { - timedUpdate(9) - moveCamera(30, 46, 300, 2) // +4 from statue + 5 -> { + timedUpdate(2) } - 4 -> { - end{ player.locks.lockTeleport(1000000) } + 6 -> { closeInterface(player) + end(fade = false) { player.locks.lockTeleport(1000000) } } } } @@ -45,32 +54,40 @@ class ServantCutsceneS(player: Player) : Cutscene(player) { override fun setup() { setExit(player.location.transform(0, 0, 0)) loadRegion(13642) + addNPC(2479, 28, 41, Direction.SOUTH) // Evil Bob + addNPC(2481, 31, 41, Direction.SOUTH_WEST) // Servant } override fun runStage(stage: Int) { when (stage) { 0 -> { - fadeToBlack() - timedUpdate(4) + teleport(player, 30, 41) + moveCamera(31, 46, 365, 255) + rotateCamera(29, 30, 365, 255) + openInterface(player, 186) + timedUpdate(0) } 1 -> { - teleport(player, 29, 41) - moveCamera(29, 38) // +7 from statue - openInterface(player, 186) - timedUpdate(2) + timedUpdate(0) } 2 -> { + moveCamera(31, 43, 480, 2) timedUpdate(2) - rotateCamera(29, 30, 300, 100) // the statue loc - fadeFromBlack() } 3 -> { - timedUpdate(9) - moveCamera(29, 35, 300, 2) // +4 from statue + moveCamera(31, 37, 455, 4) + timedUpdate(8) } 4 -> { - end{ player.locks.lockTeleport(1000000) } + moveCamera(31, 36, 395, 2) + timedUpdate(2) + } + 5 -> { + timedUpdate(3) + } + 6 -> { closeInterface(player) + end(fade = false) { player.locks.lockTeleport(1000000) } } } } @@ -81,32 +98,40 @@ class ServantCutsceneE(player: Player) : Cutscene(player) { override fun setup() { setExit(player.location.transform(0, 0, 0)) loadRegion(13642) + addNPC(2479, 28, 41, Direction.SOUTH) // Evil Bob + addNPC(2481, 31, 41, Direction.SOUTH_WEST) // Servant } override fun runStage(stage: Int) { when (stage) { 0 -> { - fadeToBlack() - timedUpdate(4) + teleport(player, 30, 41) + moveCamera(25, 41, 440, 255) + rotateCamera(42, 41, 440, 255) + openInterface(player, 186) + timedUpdate(0) } 1 -> { - teleport(player, 29, 41) - moveCamera(35, 41) // +7 from statue - openInterface(player, 186) + timedUpdate(0) + } + 2 -> { // Slow start + moveCamera(28, 41, 500, 3) timedUpdate(2) } - 2 -> { + 3 -> { // Fast middle + moveCamera(34, 41, 390, 5) + timedUpdate(6) + } + 4 -> { // Slow end + moveCamera(36, 41, 340, 2) timedUpdate(2) - rotateCamera(43, 41, 300, 100) // the statue loc - fadeFromBlack() } - 3 -> { - timedUpdate(9) - moveCamera(38, 41, 300, 2) // +4 from statue + 5 -> { + timedUpdate(4) } - 4 -> { - end{ player.locks.lockTeleport(1000000) } + 6 -> { closeInterface(player) + end(fade = false) { player.locks.lockTeleport(1000000) } } } } @@ -117,34 +142,41 @@ class ServantCutsceneW(player: Player) : Cutscene(player) { override fun setup() { setExit(player.location.transform(0, 0, 0)) loadRegion(13642) + addNPC(2479, 28, 41, Direction.SOUTH) // Evil Bob + addNPC(2481, 31, 41, Direction.SOUTH_WEST) // Servant } override fun runStage(stage: Int) { when (stage) { 0 -> { - fadeToBlack() - timedUpdate(4) + teleport(player, 30, 41) + moveCamera(34, 41, 325, 255) + rotateCamera(16, 40, 300, 255) + openInterface(player, 186) + timedUpdate(0) } 1 -> { - teleport(player, 29, 41) - moveCamera(25, 40) // +7 from statue - openInterface(player, 186) + timedUpdate(0) + } + 2 -> { // Slow start + moveCamera(31, 41, 440, 3) timedUpdate(2) } - 2 -> { + 3 -> { // Fast middle + moveCamera(24, 41, 330, 5) + timedUpdate(7) + } + 4 -> { // Slow end + moveCamera(23, 41, 300, 2) timedUpdate(2) - rotateCamera(18, 40, 300, 100) // the statue loc - fadeFromBlack() } - 3 -> { - timedUpdate(9) - moveCamera(22, 40, 300, 2) // +4 from statue + 5 -> { + timedUpdate(3) } - 4 -> { - end{ player.locks.lockTeleport(1000000) } + 6 -> { closeInterface(player) + end(fade = false) { player.locks.lockTeleport(1000000) } } - } } } \ No newline at end of file