ttpg-darrell 1.0.39 → 1.0.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.d.ts +14 -0
- package/build/cjs/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.js +58 -0
- package/build/cjs/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.js.map +1 -0
- package/build/cjs/lib/find/find.d.ts +3 -0
- package/build/cjs/lib/find/find.js +31 -0
- package/build/cjs/lib/find/find.js.map +1 -1
- package/build/cjs/lib/widget/turn-order-widget/turn-entry-wart.d.ts +3 -1
- package/build/cjs/lib/widget/turn-order-widget/turn-entry-wart.js.map +1 -1
- package/build/esm/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.d.ts +14 -0
- package/build/esm/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.js +54 -0
- package/build/esm/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.js.map +1 -0
- package/build/esm/lib/find/find.d.ts +3 -0
- package/build/esm/lib/find/find.js +31 -0
- package/build/esm/lib/find/find.js.map +1 -1
- package/build/esm/lib/widget/turn-order-widget/turn-entry-wart.d.ts +3 -1
- package/build/esm/lib/widget/turn-order-widget/turn-entry-wart.js.map +1 -1
- package/package.json +1 -1
package/build/cjs/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { GameObject } from "@tabletop-playground/api";
|
|
2
|
+
import { IGlobal } from "../../global/i-global";
|
|
3
|
+
export declare const DELTA: number;
|
|
4
|
+
/**
|
|
5
|
+
* Object transforms aren't getting replicated reliably.
|
|
6
|
+
* When an object stops moving, force a few trnaform updates.
|
|
7
|
+
*/
|
|
8
|
+
export declare class BugForceTransformUpdates implements IGlobal {
|
|
9
|
+
private readonly _idToRemainingPokeCount;
|
|
10
|
+
readonly _maybeStartPoking: (obj: GameObject) => void;
|
|
11
|
+
init(): void;
|
|
12
|
+
pokeAll(): void;
|
|
13
|
+
poke(obj: GameObject, dir: number): void;
|
|
14
|
+
}
|
package/build/cjs/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.js
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BugForceTransformUpdates = exports.DELTA = void 0;
|
|
4
|
+
const api_1 = require("@tabletop-playground/api");
|
|
5
|
+
exports.DELTA = 0.021;
|
|
6
|
+
/**
|
|
7
|
+
* Object transforms aren't getting replicated reliably.
|
|
8
|
+
* When an object stops moving, force a few trnaform updates.
|
|
9
|
+
*/
|
|
10
|
+
class BugForceTransformUpdates {
|
|
11
|
+
constructor() {
|
|
12
|
+
this._idToRemainingPokeCount = new Map();
|
|
13
|
+
// Only add if not already processing
|
|
14
|
+
this._maybeStartPoking = (obj) => {
|
|
15
|
+
const id = obj.getId();
|
|
16
|
+
const count = this._idToRemainingPokeCount.get(id);
|
|
17
|
+
if (count === undefined) {
|
|
18
|
+
this._idToRemainingPokeCount.set(id, 3);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
init() {
|
|
23
|
+
const linkObj = (obj) => {
|
|
24
|
+
obj.onMovementStopped.add(this._maybeStartPoking);
|
|
25
|
+
obj.onSnapped.add(this._maybeStartPoking);
|
|
26
|
+
};
|
|
27
|
+
for (const obj of api_1.world.getAllObjects()) {
|
|
28
|
+
linkObj(obj);
|
|
29
|
+
}
|
|
30
|
+
api_1.globalEvents.onObjectCreated.add(linkObj);
|
|
31
|
+
setInterval(() => {
|
|
32
|
+
this.pokeAll();
|
|
33
|
+
}, 100);
|
|
34
|
+
}
|
|
35
|
+
pokeAll() {
|
|
36
|
+
for (const [id, count] of this._idToRemainingPokeCount) {
|
|
37
|
+
const obj = api_1.world.getObjectById(id);
|
|
38
|
+
if (!obj || !obj.isValid() || count < -1 || obj.isHeld()) {
|
|
39
|
+
this._idToRemainingPokeCount.delete(id);
|
|
40
|
+
}
|
|
41
|
+
else if (count >= 0) {
|
|
42
|
+
this._idToRemainingPokeCount.set(id, count - 1);
|
|
43
|
+
const dir = count % 2 === 1 ? 1 : -1;
|
|
44
|
+
this.poke(obj, dir);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
poke(obj, dir) {
|
|
49
|
+
const pos = obj.getPosition();
|
|
50
|
+
const rot = obj.getRotation();
|
|
51
|
+
pos.x += dir * exports.DELTA;
|
|
52
|
+
rot.yaw += dir * exports.DELTA;
|
|
53
|
+
obj.setPosition(pos);
|
|
54
|
+
obj.setRotation(rot);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.BugForceTransformUpdates = BugForceTransformUpdates;
|
|
58
|
+
//# sourceMappingURL=bug-force-transform-updates.js.map
|
package/build/cjs/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bug-force-transform-updates.js","sourceRoot":"","sources":["../../../../../src/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.ts"],"names":[],"mappings":";;;AAAA,kDAA2E;AAG9D,QAAA,KAAK,GAAW,KAAK,CAAC;AAEnC;;;GAGG;AACH,MAAa,wBAAwB;IAArC;QACqB,4BAAuB,GAAwB,IAAI,GAAG,EAAE,CAAC;QAE1E,qCAAqC;QAC5B,sBAAiB,GAAG,CAAC,GAAe,EAAQ,EAAE;YACnD,MAAM,EAAE,GAAW,GAAG,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAuB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACvE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC,CAAC;IAsCN,CAAC;IApCG,IAAI;QACA,MAAM,OAAO,GAAG,CAAC,GAAe,EAAQ,EAAE;YACtC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAClD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9C,CAAC,CAAC;QACF,KAAK,MAAM,GAAG,IAAI,WAAK,CAAC,aAAa,EAAE,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;QACD,kBAAY,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE1C,WAAW,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC,EAAE,GAAG,CAAC,CAAC;IACZ,CAAC;IAED,OAAO;QACH,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACrD,MAAM,GAAG,GAA2B,WAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;gBACvD,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5C,CAAC;iBAAM,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACpB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;gBAChD,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACxB,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,CAAC,GAAe,EAAE,GAAW;QAC7B,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAC9B,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,aAAK,CAAC;QACrB,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,aAAK,CAAC;QACvB,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACrB,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACJ;AAhDD,4DAgDC"}
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { Card, CardHolder, Container, Dice, GameObject, MultistateObject, SnapPoint } from "@tabletop-playground/api";
|
|
2
|
+
import { Vector } from "ttpg-mock";
|
|
2
3
|
/**
|
|
3
4
|
* Find things in the game world. Generally speaking finds the first matching
|
|
4
5
|
* candidate; expecting objects to be unique.
|
|
5
6
|
*/
|
|
6
7
|
export declare class Find {
|
|
8
|
+
private _cardHolders;
|
|
7
9
|
private readonly _nsidAndSlotToGameObject;
|
|
8
10
|
private readonly _snapPointTagToSnapPoint;
|
|
9
11
|
private readonly _playerSlotToCardHolder;
|
|
12
|
+
closestOwnedCardHolderOwner(pos: Vector | [x: number, y: number, z: number]): number;
|
|
10
13
|
findCard(nsid: string, playerSlot?: number, skipContained?: boolean): Card | undefined;
|
|
11
14
|
findCardHolder(nsid: string, playerSlot?: number, skipContained?: boolean): CardHolder | undefined;
|
|
12
15
|
findCardHolderBySlot(playerSlot: number, skipContained?: boolean): CardHolder | undefined;
|
|
@@ -9,10 +9,41 @@ const nsid_1 = require("../nsid/nsid");
|
|
|
9
9
|
*/
|
|
10
10
|
class Find {
|
|
11
11
|
constructor() {
|
|
12
|
+
this._cardHolders = [];
|
|
12
13
|
this._nsidAndSlotToGameObject = {};
|
|
13
14
|
this._snapPointTagToSnapPoint = {};
|
|
14
15
|
this._playerSlotToCardHolder = {};
|
|
15
16
|
}
|
|
17
|
+
closestOwnedCardHolderOwner(pos) {
|
|
18
|
+
let closestOwner = -1;
|
|
19
|
+
let closestDistance = Number.MAX_VALUE;
|
|
20
|
+
if (this._cardHolders.length === 0) {
|
|
21
|
+
for (const obj of api_1.world.getAllObjects()) {
|
|
22
|
+
if (!(obj instanceof api_1.CardHolder)) {
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
this._cardHolders.push(obj);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
for (const cardHolder of this._cardHolders) {
|
|
29
|
+
if (!cardHolder.isValid()) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
const owner = cardHolder.getOwningPlayerSlot();
|
|
33
|
+
if (owner === -1) {
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
36
|
+
const distance = cardHolder
|
|
37
|
+
.getPosition()
|
|
38
|
+
.subtract(pos)
|
|
39
|
+
.magnitudeSquared();
|
|
40
|
+
if (distance < closestDistance) {
|
|
41
|
+
closestOwner = owner;
|
|
42
|
+
closestDistance = distance;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return closestOwner;
|
|
46
|
+
}
|
|
16
47
|
findCard(nsid, playerSlot, skipContained = false) {
|
|
17
48
|
const card = this.findGameObject(nsid, playerSlot, skipContained);
|
|
18
49
|
if (card && !(card instanceof api_1.Card)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../../../src/lib/find/find.ts"],"names":[],"mappings":";;;AAAA,kDAUkC;AAClC,uCAAoC;
|
|
1
|
+
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../../../src/lib/find/find.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { Color } from "@tabletop-playground/api";
|
|
2
|
-
|
|
2
|
+
import { TurnOrderWidgetParams } from "./turn-order-widget-params";
|
|
3
|
+
import { TurnEntryWidget } from "./turn-entry-widget";
|
|
4
|
+
export type TurnEntryWartGenerator = (widget: TurnEntryWidget, params: TurnOrderWidgetParams) => TurnEntryWart;
|
|
3
5
|
/**
|
|
4
6
|
* Augment a TurnEntryWidget. May update its own widgets independently of
|
|
5
7
|
* changes to turn order (e.g. change score value when score changes).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn-entry-wart.js","sourceRoot":"","sources":["../../../../../src/lib/widget/turn-order-widget/turn-entry-wart.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"turn-entry-wart.js","sourceRoot":"","sources":["../../../../../src/lib/widget/turn-order-widget/turn-entry-wart.ts"],"names":[],"mappings":";;;AASA;;;GAGG;AACH,MAAsB,aAAa;CAUlC;AAVD,sCAUC"}
|
package/build/esm/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { GameObject } from "@tabletop-playground/api";
|
|
2
|
+
import { IGlobal } from "../../global/i-global";
|
|
3
|
+
export declare const DELTA: number;
|
|
4
|
+
/**
|
|
5
|
+
* Object transforms aren't getting replicated reliably.
|
|
6
|
+
* When an object stops moving, force a few trnaform updates.
|
|
7
|
+
*/
|
|
8
|
+
export declare class BugForceTransformUpdates implements IGlobal {
|
|
9
|
+
private readonly _idToRemainingPokeCount;
|
|
10
|
+
readonly _maybeStartPoking: (obj: GameObject) => void;
|
|
11
|
+
init(): void;
|
|
12
|
+
pokeAll(): void;
|
|
13
|
+
poke(obj: GameObject, dir: number): void;
|
|
14
|
+
}
|
package/build/esm/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.js
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { globalEvents, world } from "@tabletop-playground/api";
|
|
2
|
+
export const DELTA = 0.021;
|
|
3
|
+
/**
|
|
4
|
+
* Object transforms aren't getting replicated reliably.
|
|
5
|
+
* When an object stops moving, force a few trnaform updates.
|
|
6
|
+
*/
|
|
7
|
+
export class BugForceTransformUpdates {
|
|
8
|
+
constructor() {
|
|
9
|
+
this._idToRemainingPokeCount = new Map();
|
|
10
|
+
// Only add if not already processing
|
|
11
|
+
this._maybeStartPoking = (obj) => {
|
|
12
|
+
const id = obj.getId();
|
|
13
|
+
const count = this._idToRemainingPokeCount.get(id);
|
|
14
|
+
if (count === undefined) {
|
|
15
|
+
this._idToRemainingPokeCount.set(id, 3);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
init() {
|
|
20
|
+
const linkObj = (obj) => {
|
|
21
|
+
obj.onMovementStopped.add(this._maybeStartPoking);
|
|
22
|
+
obj.onSnapped.add(this._maybeStartPoking);
|
|
23
|
+
};
|
|
24
|
+
for (const obj of world.getAllObjects()) {
|
|
25
|
+
linkObj(obj);
|
|
26
|
+
}
|
|
27
|
+
globalEvents.onObjectCreated.add(linkObj);
|
|
28
|
+
setInterval(() => {
|
|
29
|
+
this.pokeAll();
|
|
30
|
+
}, 100);
|
|
31
|
+
}
|
|
32
|
+
pokeAll() {
|
|
33
|
+
for (const [id, count] of this._idToRemainingPokeCount) {
|
|
34
|
+
const obj = world.getObjectById(id);
|
|
35
|
+
if (!obj || !obj.isValid() || count < -1 || obj.isHeld()) {
|
|
36
|
+
this._idToRemainingPokeCount.delete(id);
|
|
37
|
+
}
|
|
38
|
+
else if (count >= 0) {
|
|
39
|
+
this._idToRemainingPokeCount.set(id, count - 1);
|
|
40
|
+
const dir = count % 2 === 1 ? 1 : -1;
|
|
41
|
+
this.poke(obj, dir);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
poke(obj, dir) {
|
|
46
|
+
const pos = obj.getPosition();
|
|
47
|
+
const rot = obj.getRotation();
|
|
48
|
+
pos.x += dir * DELTA;
|
|
49
|
+
rot.yaw += dir * DELTA;
|
|
50
|
+
obj.setPosition(pos);
|
|
51
|
+
obj.setRotation(rot);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=bug-force-transform-updates.js.map
|
package/build/esm/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bug-force-transform-updates.js","sourceRoot":"","sources":["../../../../../src/lib/bug-workarounds/bug-force-transform-updates/bug-force-transform-updates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAG3E,MAAM,CAAC,MAAM,KAAK,GAAW,KAAK,CAAC;AAEnC;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IAArC;QACqB,4BAAuB,GAAwB,IAAI,GAAG,EAAE,CAAC;QAE1E,qCAAqC;QAC5B,sBAAiB,GAAG,CAAC,GAAe,EAAQ,EAAE;YACnD,MAAM,EAAE,GAAW,GAAG,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAuB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACvE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC,CAAC;IAsCN,CAAC;IApCG,IAAI;QACA,MAAM,OAAO,GAAG,CAAC,GAAe,EAAQ,EAAE;YACtC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAClD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9C,CAAC,CAAC;QACF,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;QACD,YAAY,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE1C,WAAW,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC,EAAE,GAAG,CAAC,CAAC;IACZ,CAAC;IAED,OAAO;QACH,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACrD,MAAM,GAAG,GAA2B,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;gBACvD,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5C,CAAC;iBAAM,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACpB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;gBAChD,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACxB,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,CAAC,GAAe,EAAE,GAAW;QAC7B,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAC9B,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,KAAK,CAAC;QACrB,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,KAAK,CAAC;QACvB,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACrB,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACJ"}
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { Card, CardHolder, Container, Dice, GameObject, MultistateObject, SnapPoint } from "@tabletop-playground/api";
|
|
2
|
+
import { Vector } from "ttpg-mock";
|
|
2
3
|
/**
|
|
3
4
|
* Find things in the game world. Generally speaking finds the first matching
|
|
4
5
|
* candidate; expecting objects to be unique.
|
|
5
6
|
*/
|
|
6
7
|
export declare class Find {
|
|
8
|
+
private _cardHolders;
|
|
7
9
|
private readonly _nsidAndSlotToGameObject;
|
|
8
10
|
private readonly _snapPointTagToSnapPoint;
|
|
9
11
|
private readonly _playerSlotToCardHolder;
|
|
12
|
+
closestOwnedCardHolderOwner(pos: Vector | [x: number, y: number, z: number]): number;
|
|
10
13
|
findCard(nsid: string, playerSlot?: number, skipContained?: boolean): Card | undefined;
|
|
11
14
|
findCardHolder(nsid: string, playerSlot?: number, skipContained?: boolean): CardHolder | undefined;
|
|
12
15
|
findCardHolderBySlot(playerSlot: number, skipContained?: boolean): CardHolder | undefined;
|
|
@@ -6,10 +6,41 @@ import { NSID } from "../nsid/nsid";
|
|
|
6
6
|
*/
|
|
7
7
|
export class Find {
|
|
8
8
|
constructor() {
|
|
9
|
+
this._cardHolders = [];
|
|
9
10
|
this._nsidAndSlotToGameObject = {};
|
|
10
11
|
this._snapPointTagToSnapPoint = {};
|
|
11
12
|
this._playerSlotToCardHolder = {};
|
|
12
13
|
}
|
|
14
|
+
closestOwnedCardHolderOwner(pos) {
|
|
15
|
+
let closestOwner = -1;
|
|
16
|
+
let closestDistance = Number.MAX_VALUE;
|
|
17
|
+
if (this._cardHolders.length === 0) {
|
|
18
|
+
for (const obj of world.getAllObjects()) {
|
|
19
|
+
if (!(obj instanceof CardHolder)) {
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
this._cardHolders.push(obj);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
for (const cardHolder of this._cardHolders) {
|
|
26
|
+
if (!cardHolder.isValid()) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
const owner = cardHolder.getOwningPlayerSlot();
|
|
30
|
+
if (owner === -1) {
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
const distance = cardHolder
|
|
34
|
+
.getPosition()
|
|
35
|
+
.subtract(pos)
|
|
36
|
+
.magnitudeSquared();
|
|
37
|
+
if (distance < closestDistance) {
|
|
38
|
+
closestOwner = owner;
|
|
39
|
+
closestDistance = distance;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return closestOwner;
|
|
43
|
+
}
|
|
13
44
|
findCard(nsid, playerSlot, skipContained = false) {
|
|
14
45
|
const card = this.findGameObject(nsid, playerSlot, skipContained);
|
|
15
46
|
if (card && !(card instanceof Card)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../../../src/lib/find/find.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,IAAI,EACJ,UAAU,EACV,SAAS,EACT,IAAI,EAEJ,gBAAgB,EAGhB,KAAK,GACR,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../../../src/lib/find/find.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { Color } from "@tabletop-playground/api";
|
|
2
|
-
|
|
2
|
+
import { TurnOrderWidgetParams } from "./turn-order-widget-params";
|
|
3
|
+
import { TurnEntryWidget } from "./turn-entry-widget";
|
|
4
|
+
export type TurnEntryWartGenerator = (widget: TurnEntryWidget, params: TurnOrderWidgetParams) => TurnEntryWart;
|
|
3
5
|
/**
|
|
4
6
|
* Augment a TurnEntryWidget. May update its own widgets independently of
|
|
5
7
|
* changes to turn order (e.g. change score value when score changes).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn-entry-wart.js","sourceRoot":"","sources":["../../../../../src/lib/widget/turn-order-widget/turn-entry-wart.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"turn-entry-wart.js","sourceRoot":"","sources":["../../../../../src/lib/widget/turn-order-widget/turn-entry-wart.ts"],"names":[],"mappings":"AASA;;;GAGG;AACH,MAAM,OAAgB,aAAa;CAUlC"}
|