Add API function to receive the color for a given distance and token

This commit is contained in:
Manuel Vögele
2021-11-17 12:07:59 +01:00
parent 90a25f467b
commit 035cfb8969
5 changed files with 38 additions and 34 deletions
+14
View File
@@ -116,6 +116,20 @@ export function getCostFromSpeedProvider(token, area, options) {
}
}
export function getColorForDistanceAndToken(distance, token, ranges=null) {
if (!ranges) {
ranges = getRangesFromSpeedProvider(token);
}
if (ranges.length === 0)
return this.color;
const currentRange = ranges.reduce((minRange, currentRange) => {
if (distance <= currentRange.range && currentRange.range < minRange.range)
return currentRange;
return minRange;
}, {range: Infinity, color: getUnreachableColorFromSpeedProvider()});
return currentRange.color;
}
export function getMovedDistanceFromToken(token) {
const history = getMovementHistory(token);
const segments = Ruler.dragRulerGetRaysFromWaypoints(history, {x: token.x, y: token.y}).map(ray => {return {ray}});