Merge remote-tracking branch 'upstream/master'
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
package core.game.content.global.action;
|
||||
|
||||
import core.game.node.entity.player.Player;
|
||||
|
||||
interface LadderAchievementCheck {
|
||||
default void checkAchievement(Player player) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -21,8 +21,8 @@ public enum SpecialLadders implements LadderAchievementCheck {
|
||||
INTRO_LEAVE(Location.create(2522, 4999, 0),Location.create(3230, 3240, 0)),
|
||||
JATIZSO_MINE_UP(Location.create(2406,10188,0),Location.create(2397, 3811, 0)),
|
||||
JATIZSO_MINE_DOWN(Location.create(2397, 3812, 0), Location.create(2405, 10188, 0)),
|
||||
JATIZSO_TOWER_UP(Location.create(2373, 3800, 2),Location.create(2374, 3800, 0)),
|
||||
JATIZSO_TOWER_DOWN(Location.create(2373, 3800, 0),Location.create(2374, 3800, 2)),
|
||||
JATIZSO_SHOUT_TOWER_UP(Location.create(2373, 3800, 2),Location.create(2374, 3800, 0)),
|
||||
JATIZSO_SHOUT_TOWER_DOWN(Location.create(2373, 3800, 0),Location.create(2374, 3800, 2)),
|
||||
|
||||
DRAYNOR_SEWER_SOUTHEAST_DOWN(new Location(3118, 3244, 0), new Location(3118, 9643, 0)),
|
||||
DRAYNOR_SEWER_SOUTHEAST_UP(new Location(3118, 9643, 0), new Location(3118, 3243, 0)),
|
||||
@@ -78,9 +78,3 @@ public enum SpecialLadders implements LadderAchievementCheck {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
interface LadderAchievementCheck {
|
||||
default void checkAchievement(Player player) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import core.cache.def.impl.ItemDefinition
|
||||
import core.cache.def.impl.SceneryDefinition
|
||||
import core.game.component.Component
|
||||
import core.game.content.dialogue.FacialExpression
|
||||
import core.game.content.global.action.SpecialLadders
|
||||
import core.game.node.Node
|
||||
import core.game.node.`object`.Scenery
|
||||
import core.game.node.`object`.SceneryBuilder
|
||||
@@ -1125,4 +1126,14 @@ object ContentAPI {
|
||||
fun animateInterface(player: Player, iface: Int, child: Int, anim: Int){
|
||||
player.packetDispatch.sendAnimationInterface(anim,iface,child)
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds a climb destination to the ladder handler.
|
||||
* @param ladderLoc the location of the ladder/stairs object you want to climb.
|
||||
* @param dest the destination for the climb.
|
||||
*/
|
||||
@JvmStatic
|
||||
fun addClimbDest(ladderLoc: Location, dest: Location){
|
||||
SpecialLadders.add(ladderLoc,dest)
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package rs09.game.content.dialogue.area.jatizso
|
||||
package rs09.game.content.dialogue.region.jatizso
|
||||
|
||||
import core.game.content.dialogue.DialoguePlugin
|
||||
import core.game.content.dialogue.FacialExpression
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package rs09.game.content.dialogue.area.jatizso
|
||||
package rs09.game.content.dialogue.region.jatizso
|
||||
|
||||
import core.game.content.dialogue.DialoguePlugin
|
||||
import core.game.content.dialogue.FacialExpression
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package rs09.game.content.dialogue.area.jatizso
|
||||
package rs09.game.content.dialogue.region.jatizso
|
||||
|
||||
import core.game.content.dialogue.DialoguePlugin
|
||||
import core.game.content.dialogue.FacialExpression
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package rs09.game.content.dialogue.area.jatizso
|
||||
package rs09.game.content.dialogue.region.jatizso
|
||||
|
||||
import api.DialUtils
|
||||
import core.game.content.dialogue.FacialExpression
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package rs09.game.content.dialogue.area.jatizso
|
||||
package rs09.game.content.dialogue.region.jatizso
|
||||
|
||||
import core.game.content.dialogue.DialoguePlugin
|
||||
import core.game.content.dialogue.FacialExpression
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package rs09.game.content.dialogue.area.jatizso
|
||||
package rs09.game.content.dialogue.region.jatizso
|
||||
|
||||
import core.game.content.dialogue.DialoguePlugin
|
||||
import core.game.content.dialogue.FacialExpression
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package rs09.game.content.dialogue.area.jatizso
|
||||
package rs09.game.content.dialogue.region.jatizso
|
||||
|
||||
import core.game.content.dialogue.DialoguePlugin
|
||||
import core.game.content.dialogue.FacialExpression
|
||||
@@ -1,6 +1,8 @@
|
||||
package rs09.game.interaction.region.rellekka
|
||||
|
||||
import api.ContentAPI
|
||||
import core.game.content.dialogue.FacialExpression
|
||||
import core.game.content.global.action.SpecialLadders
|
||||
import core.game.node.entity.npc.NPC
|
||||
import core.game.node.entity.player.link.audio.Audio
|
||||
import core.game.system.task.Pulse
|
||||
@@ -8,7 +10,7 @@ import core.game.world.map.Direction
|
||||
import core.game.world.map.Location
|
||||
import core.game.world.map.zone.ZoneBorders
|
||||
import org.rs09.consts.NPCs
|
||||
import rs09.game.content.dialogue.area.jatizso.LeftieRightieDialogue
|
||||
import rs09.game.content.dialogue.region.jatizso.LeftieRightieDialogue
|
||||
import rs09.game.interaction.InteractionListener
|
||||
|
||||
class JatizsoListeners : InteractionListener() {
|
||||
@@ -18,6 +20,7 @@ class JatizsoListeners : InteractionListener() {
|
||||
val SOUTH_GAE_ZONE = ZoneBorders(2411,3795,2414,3799)
|
||||
val BELL = 21394
|
||||
val GUARDS = intArrayOf(NPCs.GUARD_5491, NPCs.GUARD_5492)
|
||||
val KING_CHEST = intArrayOf(21299,21300)
|
||||
val LINES = arrayOf(
|
||||
arrayOf(
|
||||
"YOU WOULDN'T KNOW HOW TO FIGHT A TROLL IF IT CAME UP AND BIT YER ARM OFF",
|
||||
@@ -40,32 +43,32 @@ class JatizsoListeners : InteractionListener() {
|
||||
if(NORTH_GATE_ZONE.insideBorder(player)){
|
||||
if(node.id == GATES_CLOSED.first()){
|
||||
val other = ContentAPI.getScenery(node.location.transform(1, 0, 0)) ?: return@on true
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, 10, Direction.EAST)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id - 1, 10, Direction.NORTH_EAST)
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, -1, Direction.EAST)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id - 1, -1, Direction.NORTH_EAST)
|
||||
} else {
|
||||
val other = ContentAPI.getScenery(node.location.transform(-1, 0, 0)) ?: return@on true
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, 10, Direction.NORTH_EAST)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id, 10, Direction.EAST)
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, -1, Direction.NORTH_EAST)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id, -1, Direction.EAST)
|
||||
}
|
||||
} else if(WEST_GATE_ZONE.insideBorder(player)){
|
||||
if(node.id == GATES_CLOSED.first()){
|
||||
val other = ContentAPI.getScenery(node.location.transform(0, 1, 0)) ?: return@on true
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, 10, Direction.WEST)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id + 1, 10, Direction.NORTH)
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, -1, Direction.WEST)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id + 1, -1, Direction.NORTH)
|
||||
} else {
|
||||
val other = ContentAPI.getScenery(node.location.transform(0, -1, 0)) ?: return@on true
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, 10, Direction.NORTH)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id + 1, 10, Direction.WEST)
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, -1, Direction.NORTH)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id + 1, -1, Direction.WEST)
|
||||
}
|
||||
} else if(SOUTH_GAE_ZONE.insideBorder(player)){
|
||||
if(node.id == GATES_CLOSED.first()){
|
||||
val other = ContentAPI.getScenery(node.location.transform(-1, 0, 0)) ?: return@on true
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, 10, Direction.SOUTH)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id - 1, 10, Direction.EAST)
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, -1, Direction.SOUTH)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id - 1, -1, Direction.EAST)
|
||||
} else {
|
||||
val other = ContentAPI.getScenery(node.location.transform(1, 0, 0)) ?: return@on true
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, 10, Direction.EAST)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id, 10, Direction.SOUTH)
|
||||
ContentAPI.replaceScenery(node.asScenery(), node.id + 1, -1, Direction.EAST)
|
||||
ContentAPI.replaceScenery(other.asScenery(), other.id, -1, Direction.SOUTH)
|
||||
}
|
||||
}
|
||||
ContentAPI.playAudio(player, ContentAPI.getAudio(81))
|
||||
@@ -128,8 +131,23 @@ class JatizsoListeners : InteractionListener() {
|
||||
return@on true
|
||||
}
|
||||
|
||||
on(KING_CHEST, SCENERY, "open"){player, node ->
|
||||
ContentAPI.sendPlayerDialogue(player, "I probably shouldn't mess with that.", FacialExpression.HALF_THINKING)
|
||||
return@on true
|
||||
}
|
||||
|
||||
setDest(NPC, NPCs.MAGNUS_GRAM_5488){_ ->
|
||||
return@setDest Location.create(2416, 3801, 0)
|
||||
}
|
||||
|
||||
//Climb handling for the ladders in the towers around the city walls.
|
||||
ContentAPI.addClimbDest(Location.create(2388, 3804, 0),Location.create(2387, 3804, 2))
|
||||
ContentAPI.addClimbDest(Location.create(2388, 3804, 2),Location.create(2387, 3804, 0))
|
||||
ContentAPI.addClimbDest(Location.create(2388, 3793, 0),Location.create(2387, 3793, 2))
|
||||
ContentAPI.addClimbDest(Location.create(2388, 3793, 2),Location.create(2387, 3793, 0))
|
||||
ContentAPI.addClimbDest(Location.create(2410, 3823, 0),Location.create(2410, 3824, 2))
|
||||
ContentAPI.addClimbDest(Location.create(2410, 3823, 2),Location.create(2410, 3824, 0))
|
||||
ContentAPI.addClimbDest(Location.create(2421, 3823, 0),Location.create(2421, 3824, 2))
|
||||
ContentAPI.addClimbDest(Location.create(2421, 3823, 2),Location.create(2421, 3824, 0))
|
||||
}
|
||||
}
|
||||
@@ -11,15 +11,19 @@ object PacketWriteQueue {
|
||||
@JvmStatic
|
||||
fun <T> handle(packet: OutgoingPacket<T>, context: T){
|
||||
when(packet){
|
||||
//Dynamic packets need to be sent immediately
|
||||
is UpdateSceneGraph,
|
||||
is BuildDynamicScene,
|
||||
is InstancedLocationUpdate -> packet.send(context)
|
||||
is InstancedLocationUpdate,
|
||||
is ClearRegionChunk -> packet.send(context)
|
||||
//Rest get queued up and sent at the end of the tick (authentic)
|
||||
else -> queue(packet,context)
|
||||
}
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun <T> queue(packet: OutgoingPacket<T>, context: T){
|
||||
SystemLogger.logInfo("Queueing ${packet.javaClass.simpleName}")
|
||||
PacketsToWrite.add(QueuedPacket(packet,context))
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user