2021-01-19 20:47:48 -05:00
|
|
|
/**
|
|
|
|
* A simple form to set actor movement speeds
|
2021-05-18 09:11:03 -04:00
|
|
|
* @extends {DocumentSheet}
|
2021-01-19 20:47:48 -05:00
|
|
|
*/
|
2021-05-18 09:11:03 -04:00
|
|
|
export default class ActorMovementConfig extends DocumentSheet {
|
2021-01-19 20:47:48 -05:00
|
|
|
|
|
|
|
/** @override */
|
|
|
|
static get defaultOptions() {
|
2021-05-18 09:11:03 -04:00
|
|
|
return foundry.utils.mergeObject(super.defaultOptions, {
|
2021-01-19 20:47:48 -05:00
|
|
|
classes: ["sw5e"],
|
|
|
|
template: "systems/sw5e/templates/apps/movement-config.html",
|
2021-01-19 20:52:33 -05:00
|
|
|
width: 300,
|
2021-01-19 20:47:48 -05:00
|
|
|
height: "auto"
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
/* -------------------------------------------- */
|
|
|
|
|
2021-01-19 20:52:33 -05:00
|
|
|
/** @override */
|
|
|
|
get title() {
|
2021-05-18 09:11:03 -04:00
|
|
|
return `${game.i18n.localize("SW5E.MovementConfig")}: ${this.document.name}`;
|
2021-01-19 20:52:33 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
/* -------------------------------------------- */
|
|
|
|
|
2021-01-19 20:47:48 -05:00
|
|
|
/** @override */
|
|
|
|
getData(options) {
|
2021-05-18 09:11:03 -04:00
|
|
|
const sourceMovement = foundry.utils.getProperty(this.document.data._source, "data.attributes.movement") || {};
|
2021-01-19 20:47:48 -05:00
|
|
|
const data = {
|
2021-05-18 09:11:03 -04:00
|
|
|
movement: foundry.utils.deepClone(sourceMovement),
|
2021-01-19 20:47:48 -05:00
|
|
|
units: CONFIG.SW5E.movementUnits
|
2021-05-18 09:11:03 -04:00
|
|
|
};
|
2021-01-19 20:47:48 -05:00
|
|
|
for ( let [k, v] of Object.entries(data.movement) ) {
|
|
|
|
if ( ["units", "hover"].includes(k) ) continue;
|
|
|
|
data.movement[k] = Number.isNumeric(v) ? v.toNearest(0.1) : 0;
|
|
|
|
}
|
|
|
|
return data;
|
|
|
|
}
|
|
|
|
}
|