diff --git a/Server/src/main/content/region/kandarin/seers/quest/elementalworkshop2/EW2Cutscene.kt b/Server/src/main/content/region/kandarin/seers/quest/elementalworkshop2/EW2Cutscene.kt index 683dc8b6d..6f421ec1d 100644 --- a/Server/src/main/content/region/kandarin/seers/quest/elementalworkshop2/EW2Cutscene.kt +++ b/Server/src/main/content/region/kandarin/seers/quest/elementalworkshop2/EW2Cutscene.kt @@ -6,6 +6,7 @@ import content.region.kandarin.seers.quest.elementalworkshop2.EW2Listeners.Compa import content.region.kandarin.seers.quest.elementalworkshop2.EW2Listeners.Companion.EXTRACTOR_GOOD import content.region.kandarin.seers.quest.elementalworkshop2.EW2Listeners.Companion.EXTRACTOR_GOOD_GFX import content.region.kandarin.seers.quest.elementalworkshop2.EW2Listeners.Companion.EXTR_GUN +import content.region.kandarin.seers.quest.elementalworkshop2.EW2Listeners.Companion.toInstance import content.region.kandarin.seers.quest.elementalworkshop2.EW2Session.Companion.EW2_REGION import content.region.kandarin.seers.quest.elementalworkshop2.ElementalWorkshop2.Companion.EW2ExtractorGun import content.region.kandarin.seers.quest.elementalworkshop2.ElementalWorkshop2.Companion.EW2StageVarbit @@ -23,8 +24,7 @@ import org.rs09.consts.Sounds class EW2Cutscene(player: Player, good: Boolean) : Cutscene(player) { override fun setup() { - // returns to the non-instanced region, since lower portion of the workshop isn't instanced - setExit(Location.create(1961, 5150, 0)) + setExit(toInstance(player, Location.create(1961, 5150, 0))) loadRegion(EW2_REGION) } @@ -82,7 +82,10 @@ class EW2Cutscene(player: Player, good: Boolean) : Cutscene(player) { } 4 -> { - endWithoutFade { } + endWithoutFade { + EW2Session(player).start(Location.create(1961, 5150, 0)) + setExit(toInstance(player, Location.create(1961, 5150, 0))) + } } } } diff --git a/Server/src/main/content/region/kandarin/seers/quest/elementalworkshop2/EW2Listeners.kt b/Server/src/main/content/region/kandarin/seers/quest/elementalworkshop2/EW2Listeners.kt index 3ae7324c0..da724c0a1 100644 --- a/Server/src/main/content/region/kandarin/seers/quest/elementalworkshop2/EW2Listeners.kt +++ b/Server/src/main/content/region/kandarin/seers/quest/elementalworkshop2/EW2Listeners.kt @@ -705,8 +705,7 @@ class EW2Listeners : InteractionListener { // stairs to EW2 lower level on(Scenery.STAIRWELL_18597, IntType.SCENERY, "climb-down") { player, _ -> - // non-instanced - teleport(player, location(1948, 5158, 0)) + teleport(player, toInstance(player, location(1948, 5158, 0))) sendMessage(player, "You climb down the stairs.") return@on true } @@ -714,10 +713,7 @@ class EW2Listeners : InteractionListener { // stairs from EW2 lower level back up to EW2 main level on(Scenery.STAIRS_18599, IntType.SCENERY, "climb-up") { player, _ -> sendMessage(player, "You climb up the stairs.") - - // start the instanced workshop session - EW2Session(player).start(Location.create(1948, 5157, 2)) - + teleport(player, toInstance(player, location(1948, 5157, 2))) return@on true } @@ -1439,5 +1435,15 @@ class EW2Listeners : InteractionListener { ) { entity, _ -> return@setDest toInstance(entity as Player, Location.create(1958, 5156, 2)) } + + // the extractor gun + setDest( + IntType.SCENERY, intArrayOf( + Scenery.EXTRACTOR_GUN_18693, Scenery.EXTRACTOR_GUN_18694, + Scenery.EXTRACTOR_GUN_18695, Scenery.EXTRACTOR_GUN_18696 + ), "use", "take-from" + ) { entity, _ -> + return@setDest toInstance(entity as Player, Location.create(1961, 5148, 0)) + } } } \ No newline at end of file