···1import KingdomSheet from "./kingdom-sheet";
2import { registerSocket } from "./socket";
3import { handlers } from "./kingdom-desc";
045Hooks.on("init", (): void => {
6 KingdomSheet.register();
···14 const button = el as HTMLButtonElement;
1516 button.onclick = (ev: PointerEvent): void => {
17- // TODO: figure out how to pass the actor ID at least to the chat message
18- console.log("clicked", ev);
019 };
20 });
21});
···1import KingdomSheet from "./kingdom-sheet";
2import { registerSocket } from "./socket";
3import { handlers } from "./kingdom-desc";
4+import type { KingdomActor } from "./global";
56Hooks.on("init", (): void => {
7 KingdomSheet.register();
···15 const button = el as HTMLButtonElement;
1617 button.onclick = (ev: PointerEvent): void => {
18+ const data: Record<string, any> = (ev.target as HTMLElement).dataset;
19+ const kingdomActor: KingdomActor = (game as foundry.Game).actors.get(data.kingdomActor!);
20+ handlers[data.action as string](kingdomActor, ev);
21 };
22 });
23});
+2-2
src/socket.ts
···2import type { Socket, isocketlib } from "./utils";
3import type * as Data from "./data";
4import type { AttributeInfo } from "./kingdom";
5-import { kmLocalize, capitalize, enrichAndLocalize } from "./utils";
6declare var socketlib: isocketlib;
78export let socket: Socket | null = null;
···228 "CritSuccess"
229 ];
230231- const msg = await enrichAndLocalize(true, "activities", activityId, "results", result.degreeOfSuccess.toString(), "msg");
232233 return `<b>${(game as foundry.Game).i18n!.localize(`PF2E.${keys[result.degreeOfSuccess]}`)}</b> ${msg}`;
234 }).then((msg: string): void => {
···2import type { Socket, isocketlib } from "./utils";
3import type * as Data from "./data";
4import type { AttributeInfo } from "./kingdom";
5+import { kmLocalize, capitalize, enrichAndLocalize, ealWithActor } from "./utils";
6declare var socketlib: isocketlib;
78export let socket: Socket | null = null;
···228 "CritSuccess"
229 ];
230231+ const msg = await ealWithActor(true, actor, "activities", activityId, "results", result.degreeOfSuccess.toString(), "msg");
232233 return `<b>${(game as foundry.Game).i18n!.localize(`PF2E.${keys[result.degreeOfSuccess]}`)}</b> ${msg}`;
234 }).then((msg: string): void => {