|
|
- let toChat = (content) => {
- let chatData = {
- user: game.user.id,
- content,
- speaker: ChatMessage.getSpeaker(),
- };
- ChatMessage.create(chatData, {});
- };
-
- let applyChanges = false;
- new Dialog({
- title: `Take a Breather`,
- content: `
- <div>Rest for 10 minutes, spend a resolve point, and regain stamina?</div>
- `,
- buttons: {
- yes: {
- icon: "<i class='fas fa-check'></i>",
- label: `Take a Breather`,
- callback: () => (applyChanges = true),
- },
- no: {
- icon: "<i class='fas fa-times'></i>",
- label: `Cancel`,
- },
- },
- default: "yes",
- close: (html) => {
- if (applyChanges) {
- for (let token of canvas.tokens.controlled) {
- const { name } = token;
- console.log(token);
- const { resolve, sp } = token.actor.system.attributes;
- console.log(resolve, sp);
- if (resolve.value > 0) {
- let oldSP = sp.value;
- toChat(
- `${name} has ${sp.value}/${sp.max} SP and spends a resolve point, taking a 10 minute breather. Stamina Refreshed.`
- );
- token.actor.update({
- "data.attributes.sp.value": sp.max,
- "data.attributes.resolve.value": resolve.value - 1,
- });
- } else {
- toChat(`${name} is tired and needs to go to bed! No resolve points remaining.`);
- }
- }
- }
- },
- }).render(true);
|