Merge branch 'develop' into pathfinding

This commit is contained in:
Manuel Vögele
2022-02-01 12:03:53 +01:00
9 changed files with 38 additions and 17 deletions
+8 -9
View File
@@ -52,15 +52,14 @@ export function registerKeybindings() {
precedence: -1,
});
if (game.settings.get(settingsKey, "allowPathfinding")) {
game.keybindings.register(settingsKey, "togglePathfinding", {
name: "drag-ruler.keybindings.togglePathfinding.name",
hint: "drag-ruler.keybindings.togglePathfinding.hint",
onDown: handleTogglePathfinding,
onUp: handleTogglePathfinding,
precedence: -1,
});
}
game.keybindings.register(settingsKey, "togglePathfinding", {
name: "drag-ruler.keybindings.togglePathfinding.name",
hint: "drag-ruler.keybindings.togglePathfinding.hint",
onDown: handleTogglePathfinding,
onUp: handleTogglePathfinding,
precedence: -1,
restricted: !game.settings.get(settingsKey, "allowPathfinding"),
});
}
function handleDeleteWaypoint() {
+1 -1
View File
@@ -11,7 +11,7 @@ let use5105 = false;
let gridlessPathfinder = undefined;
export function isPathfindingEnabled() {
if (!game.settings.get(settingsKey, "allowPathfinding"))
if (!game.user.isGM && !game.settings.get(settingsKey, "allowPathfinding"))
return false;
return game.settings.get(settingsKey, "autoPathfinding") != togglePathfinding;
}
+2 -1
View File
@@ -1,5 +1,6 @@
import {availableSpeedProviders, currentSpeedProvider, getDefaultSpeedProvider, updateSpeedProvider} from "./api.js";
import {SpeedProvider} from "./speed_provider.js"
import { early_isGM } from "./util.js";
export const settingsKey = "drag-ruler";
@@ -96,7 +97,7 @@ export function registerSettings() {
name: "drag-ruler.settings.autoPathfinding.name",
hint: "drag-ruler.settings.autoPathfinding.hint",
scpoe: "client",
config: true,
config: early_isGM(),
type: Boolean,
defualt: false,
});
+3
View File
@@ -17,6 +17,8 @@ export function getDefaultSpeedAttribute() {
return "actor.data.data.movement.walk.value";
case "swade":
return "actor.data.data.stats.speed.adjusted";
case "ds4":
return "actor.data.data.combatValues.movement.total";
}
return ""
}
@@ -32,6 +34,7 @@ export function getDefaultDashMultiplier() {
case "D35E":
case "sfrpg":
case "shadowrun5e":
case "ds4":
return 2
case "CoC7":
return 5;
+7
View File
@@ -272,3 +272,10 @@ export function getMeasurePosition() {
const measurePosition = {x: mousePosition.x + rulerOffset.x, y: mousePosition.y + rulerOffset.y};
return measurePosition;
}
// isGM function for use during loading when game.user isn't available yet
export function early_isGM() {
const level = game.data.users.find(u => u._id == game.data.userId).role;
const gmLevel = CONST.USER_ROLES.ASSISTANT;
return level >= gmLevel;
}