Rewrote stiles
Added a new ContentAPI function, animationCycles, that returns the exact number of cycles an animation lasts for (useful for forced movement) Added a new function to Vector objects that allows convertion into Direction objects (useful for transforming locations)
This commit is contained in:
@@ -5,6 +5,8 @@ import content.global.skill.slayer.Master
|
||||
import content.global.skill.slayer.SlayerManager
|
||||
import content.global.skill.slayer.Tasks
|
||||
import core.game.node.item.Item
|
||||
import core.api.utils.Vector
|
||||
import core.game.world.map.Direction
|
||||
import org.json.simple.JSONObject
|
||||
import org.json.simple.parser.JSONParser
|
||||
import org.junit.jupiter.api.Assertions
|
||||
@@ -348,4 +350,24 @@ class APITests {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Test fun vectorToDirectionShouldReturnExpectedDirections() {
|
||||
val testData = arrayOf(
|
||||
Pair(Vector(1.0, 0.0), Direction.EAST),
|
||||
Pair(Vector(-1.0, 0.0), Direction.WEST),
|
||||
Pair(Vector(0.0, 1.0), Direction.NORTH),
|
||||
Pair(Vector(0.0, -1.0), Direction.SOUTH),
|
||||
Pair(Vector(1.0, 1.0), Direction.NORTH_EAST),
|
||||
Pair(Vector(1.0, -1.0), Direction.SOUTH_EAST),
|
||||
Pair(Vector(-1.0, 1.0), Direction.NORTH_WEST),
|
||||
Pair(Vector(-1.0, -1.0), Direction.SOUTH_WEST),
|
||||
Pair(Vector(15.0, 0.0), Direction.EAST),
|
||||
Pair(Vector(15.0, 1.0), Direction.EAST),
|
||||
Pair(Vector(-15.0, -9.7), Direction.SOUTH_WEST)
|
||||
)
|
||||
|
||||
for ((vec, expDir) in testData) {
|
||||
Assertions.assertEquals(expDir, vec.toDirection(), "Vector: $vec")
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package content.skill.agility
|
||||
|
||||
import content.global.skill.agility.shortcuts.StileShortcut
|
||||
import core.game.world.map.Direction
|
||||
import core.game.world.map.Location
|
||||
import org.junit.jupiter.api.Assertions
|
||||
import org.junit.jupiter.api.Test
|
||||
|
||||
class ShortcutTests {
|
||||
@Test fun stileGetInteractionLocShouldReturnCorrectLoc() {
|
||||
data class StileTestData (val playerLoc: Location, val expectedLoc: Location, val stileLoc: Location, val stileOrientation: StileShortcut.Orientation)
|
||||
val testData = arrayOf(
|
||||
//Horizontal
|
||||
StileTestData(Location.create(3044, 3308, 0), Location.create(3045, 3305, 0), Location.create(3043, 3305, 0), StileShortcut.Orientation.Horizontal),
|
||||
StileTestData(Location.create(3048, 3303, 0), Location.create(3045, 3305, 0), Location.create(3043, 3305, 0), StileShortcut.Orientation.Horizontal),
|
||||
StileTestData(Location.create(3043, 3307, 0), Location.create(3042, 3305, 0), Location.create(3043, 3305, 0), StileShortcut.Orientation.Horizontal),
|
||||
StileTestData(Location.create(3039, 3301, 0), Location.create(3042, 3305, 0), Location.create(3043, 3305, 0), StileShortcut.Orientation.Horizontal),
|
||||
//Vertical
|
||||
StileTestData(Location.create(3203, 3276, 0), Location.create(3197, 3275, 0), Location.create(3197, 3276, 0), StileShortcut.Orientation.Vertical),
|
||||
StileTestData(Location.create(3195, 3274, 0), Location.create(3197, 3275, 0), Location.create(3197, 3276, 0), StileShortcut.Orientation.Vertical),
|
||||
StileTestData(Location.create(3191, 3280, 0), Location.create(3197, 3278, 0), Location.create(3197, 3276, 0), StileShortcut.Orientation.Vertical),
|
||||
StileTestData(Location.create(3206, 3281, 0), Location.create(3197, 3278, 0), Location.create(3197, 3276, 0), StileShortcut.Orientation.Vertical)
|
||||
)
|
||||
|
||||
for ((pLoc, expLoc, sLoc, ori) in testData) {
|
||||
Assertions.assertEquals(expLoc, StileShortcut.getInteractLocation(pLoc, sLoc, ori))
|
||||
}
|
||||
}
|
||||
|
||||
@Test fun stileGetOrientationShouldReturnCorrectOrientation() {
|
||||
val testData = arrayOf(
|
||||
Pair (Direction.NORTH, StileShortcut.Orientation.Vertical),
|
||||
Pair (Direction.SOUTH, StileShortcut.Orientation.Vertical),
|
||||
Pair (Direction.NORTH_WEST, StileShortcut.Orientation.Vertical),
|
||||
Pair (Direction.NORTH_EAST, StileShortcut.Orientation.Vertical),
|
||||
Pair (Direction.SOUTH_EAST, StileShortcut.Orientation.Vertical),
|
||||
Pair (Direction.SOUTH_WEST, StileShortcut.Orientation.Vertical),
|
||||
Pair (Direction.EAST, StileShortcut.Orientation.Horizontal),
|
||||
Pair (Direction.WEST, StileShortcut.Orientation.Horizontal)
|
||||
)
|
||||
|
||||
for ((dir, expOri) in testData) {
|
||||
Assertions.assertEquals(expOri, StileShortcut.getOrientation(dir))
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user