ttpg-darrell 1.0.81 → 1.0.82
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/timer/edit-timer.testp.js +3 -1
- package/build/cjs/lib/timer/edit-timer.testp.js.map +1 -1
- package/build/cjs/lib/timer/timer.d.ts +1 -10
- package/build/cjs/lib/timer/timer.js +3 -23
- package/build/cjs/lib/timer/timer.js.map +1 -1
- package/build/esm/lib/timer/edit-timer.testp.js +3 -1
- package/build/esm/lib/timer/edit-timer.testp.js.map +1 -1
- package/build/esm/lib/timer/timer.d.ts +1 -10
- package/build/esm/lib/timer/timer.js +3 -23
- package/build/esm/lib/timer/timer.js.map +1 -1
- package/package.json +1 -1
|
@@ -14,7 +14,9 @@ ui.position = new api_1.Vector(0, 0, api_1.world.getTableHeight() + 2);
|
|
|
14
14
|
ui.widget = editTimer.createWidget(onClose);
|
|
15
15
|
api_1.world.addUI(ui);
|
|
16
16
|
const timerText = new api_1.Text();
|
|
17
|
-
timer.
|
|
17
|
+
timer.onTimerTick.add(() => {
|
|
18
|
+
timerText.setText(timer.getTimeString());
|
|
19
|
+
});
|
|
18
20
|
const timerUi = new api_1.UIElement();
|
|
19
21
|
timerUi.position = new api_1.Vector(0, 0, api_1.world.getTableHeight() + 1);
|
|
20
22
|
timerUi.widget = timerText;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit-timer.testp.js","sourceRoot":"","sources":["../../../../src/lib/timer/edit-timer.testp.ts"],"names":[],"mappings":";;AAAA,kDAA0E;AAC1E,6CAAyC;AACzC,mCAAgC;AAEhC,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,aAAa,CAAC,CAAC;AACvC,MAAM,SAAS,GAAG,IAAI,sBAAS,CAAC,KAAK,CAAC,CAAC;AAEvC,MAAM,EAAE,GAAc,IAAI,eAAS,EAAE,CAAC;AACtC,MAAM,OAAO,GAAG,GAAS,EAAE;IACvB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClC,WAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,EAAE,CAAC,QAAQ,GAAG,IAAI,YAAM,CAAC,CAAC,EAAE,CAAC,EAAE,WAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;AAC3D,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AAC5C,WAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAEhB,MAAM,SAAS,GAAG,IAAI,UAAI,EAAE,CAAC;AAC7B,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"edit-timer.testp.js","sourceRoot":"","sources":["../../../../src/lib/timer/edit-timer.testp.ts"],"names":[],"mappings":";;AAAA,kDAA0E;AAC1E,6CAAyC;AACzC,mCAAgC;AAEhC,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,aAAa,CAAC,CAAC;AACvC,MAAM,SAAS,GAAG,IAAI,sBAAS,CAAC,KAAK,CAAC,CAAC;AAEvC,MAAM,EAAE,GAAc,IAAI,eAAS,EAAE,CAAC;AACtC,MAAM,OAAO,GAAG,GAAS,EAAE;IACvB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClC,WAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,EAAE,CAAC,QAAQ,GAAG,IAAI,YAAM,CAAC,CAAC,EAAE,CAAC,EAAE,WAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;AAC3D,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AAC5C,WAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAEhB,MAAM,SAAS,GAAG,IAAI,UAAI,EAAE,CAAC;AAC7B,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE;IACvB,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEH,MAAM,OAAO,GAAG,IAAI,eAAS,EAAE,CAAC;AAChC,OAAO,CAAC,QAAQ,GAAG,IAAI,YAAM,CAAC,CAAC,EAAE,CAAC,EAAE,WAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;AAChE,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;AAC3B,WAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAErB,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE;IAC1B,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Text } from "@tabletop-playground/api";
|
|
2
1
|
import { NamespaceId } from "../namespace-id/namespace-id";
|
|
3
2
|
import { TriggerableMulticastDelegate } from "../event/triggerable-multicast-delegate/triggerable-multicast-delegate";
|
|
4
3
|
/**
|
|
@@ -32,8 +31,8 @@ export declare class TimerBreakdown {
|
|
|
32
31
|
*/
|
|
33
32
|
export declare class Timer {
|
|
34
33
|
readonly onTimerExpired: TriggerableMulticastDelegate<() => void>;
|
|
34
|
+
readonly onTimerTick: TriggerableMulticastDelegate<() => void>;
|
|
35
35
|
private readonly _nameSpaceId;
|
|
36
|
-
private readonly _timerTexts;
|
|
37
36
|
private _anchorTimestamp;
|
|
38
37
|
private _anchorValue;
|
|
39
38
|
private _direction;
|
|
@@ -42,14 +41,6 @@ export declare class Timer {
|
|
|
42
41
|
_saveState(): void;
|
|
43
42
|
_loadState(): void;
|
|
44
43
|
constructor(nameSpaceId: NamespaceId);
|
|
45
|
-
/**
|
|
46
|
-
* Auto-update text with timer value.
|
|
47
|
-
*
|
|
48
|
-
* @param text
|
|
49
|
-
* @returns
|
|
50
|
-
*/
|
|
51
|
-
addTimerText(text: Text): this;
|
|
52
|
-
delTimerText(text: Text): this;
|
|
53
44
|
export(): TimerExportType;
|
|
54
45
|
getDirection(): -1 | 0 | 1;
|
|
55
46
|
/**
|
|
@@ -85,7 +85,7 @@ class Timer {
|
|
|
85
85
|
}
|
|
86
86
|
constructor(nameSpaceId) {
|
|
87
87
|
this.onTimerExpired = new triggerable_multicast_delegate_1.TriggerableMulticastDelegate();
|
|
88
|
-
this.
|
|
88
|
+
this.onTimerTick = new triggerable_multicast_delegate_1.TriggerableMulticastDelegate();
|
|
89
89
|
// Track based on start time, per-second timeouts can drift.
|
|
90
90
|
this._anchorTimestamp = 0;
|
|
91
91
|
this._anchorValue = 0;
|
|
@@ -93,23 +93,6 @@ class Timer {
|
|
|
93
93
|
this._active = false;
|
|
94
94
|
this._nameSpaceId = nameSpaceId;
|
|
95
95
|
}
|
|
96
|
-
/**
|
|
97
|
-
* Auto-update text with timer value.
|
|
98
|
-
*
|
|
99
|
-
* @param text
|
|
100
|
-
* @returns
|
|
101
|
-
*/
|
|
102
|
-
addTimerText(text) {
|
|
103
|
-
this._timerTexts.push(text);
|
|
104
|
-
return this;
|
|
105
|
-
}
|
|
106
|
-
delTimerText(text) {
|
|
107
|
-
const index = this._timerTexts.indexOf(text);
|
|
108
|
-
if (index !== -1) {
|
|
109
|
-
this._timerTexts.splice(index, 1);
|
|
110
|
-
}
|
|
111
|
-
return this;
|
|
112
|
-
}
|
|
113
96
|
export() {
|
|
114
97
|
return {
|
|
115
98
|
anchorTimestamp: this._anchorTimestamp,
|
|
@@ -148,12 +131,9 @@ class Timer {
|
|
|
148
131
|
this._intervalHandle = undefined;
|
|
149
132
|
}
|
|
150
133
|
let lastValue = this.getSeconds();
|
|
151
|
-
setInterval(() => {
|
|
134
|
+
this._intervalHandle = setInterval(() => {
|
|
152
135
|
this._saveState();
|
|
153
|
-
|
|
154
|
-
for (const text of this._timerTexts) {
|
|
155
|
-
text.setText(str);
|
|
156
|
-
}
|
|
136
|
+
this.onTimerTick.trigger();
|
|
157
137
|
if (this._direction === -1) {
|
|
158
138
|
const newValue = this.getSeconds();
|
|
159
139
|
if (lastValue > 0 && newValue <= 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timer.js","sourceRoot":"","sources":["../../../../src/lib/timer/timer.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"timer.js","sourceRoot":"","sources":["../../../../src/lib/timer/timer.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,9 @@ ui.position = new Vector(0, 0, world.getTableHeight() + 2);
|
|
|
12
12
|
ui.widget = editTimer.createWidget(onClose);
|
|
13
13
|
world.addUI(ui);
|
|
14
14
|
const timerText = new Text();
|
|
15
|
-
timer.
|
|
15
|
+
timer.onTimerTick.add(() => {
|
|
16
|
+
timerText.setText(timer.getTimeString());
|
|
17
|
+
});
|
|
16
18
|
const timerUi = new UIElement();
|
|
17
19
|
timerUi.position = new Vector(0, 0, world.getTableHeight() + 1);
|
|
18
20
|
timerUi.widget = timerText;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit-timer.testp.js","sourceRoot":"","sources":["../../../../src/lib/timer/edit-timer.testp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;AACvC,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;AAEvC,MAAM,EAAE,GAAc,IAAI,SAAS,EAAE,CAAC;AACtC,MAAM,OAAO,GAAG,GAAS,EAAE;IACvB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,EAAE,CAAC,QAAQ,GAAG,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;AAC3D,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AAC5C,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAEhB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;AAC7B,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"edit-timer.testp.js","sourceRoot":"","sources":["../../../../src/lib/timer/edit-timer.testp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;AACvC,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;AAEvC,MAAM,EAAE,GAAc,IAAI,SAAS,EAAE,CAAC;AACtC,MAAM,OAAO,GAAG,GAAS,EAAE;IACvB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,EAAE,CAAC,QAAQ,GAAG,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;AAC3D,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AAC5C,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAEhB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;AAC7B,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE;IACvB,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEH,MAAM,OAAO,GAAG,IAAI,SAAS,EAAE,CAAC;AAChC,OAAO,CAAC,QAAQ,GAAG,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;AAChE,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;AAC3B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAErB,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE;IAC1B,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Text } from "@tabletop-playground/api";
|
|
2
1
|
import { NamespaceId } from "../namespace-id/namespace-id";
|
|
3
2
|
import { TriggerableMulticastDelegate } from "../event/triggerable-multicast-delegate/triggerable-multicast-delegate";
|
|
4
3
|
/**
|
|
@@ -32,8 +31,8 @@ export declare class TimerBreakdown {
|
|
|
32
31
|
*/
|
|
33
32
|
export declare class Timer {
|
|
34
33
|
readonly onTimerExpired: TriggerableMulticastDelegate<() => void>;
|
|
34
|
+
readonly onTimerTick: TriggerableMulticastDelegate<() => void>;
|
|
35
35
|
private readonly _nameSpaceId;
|
|
36
|
-
private readonly _timerTexts;
|
|
37
36
|
private _anchorTimestamp;
|
|
38
37
|
private _anchorValue;
|
|
39
38
|
private _direction;
|
|
@@ -42,14 +41,6 @@ export declare class Timer {
|
|
|
42
41
|
_saveState(): void;
|
|
43
42
|
_loadState(): void;
|
|
44
43
|
constructor(nameSpaceId: NamespaceId);
|
|
45
|
-
/**
|
|
46
|
-
* Auto-update text with timer value.
|
|
47
|
-
*
|
|
48
|
-
* @param text
|
|
49
|
-
* @returns
|
|
50
|
-
*/
|
|
51
|
-
addTimerText(text: Text): this;
|
|
52
|
-
delTimerText(text: Text): this;
|
|
53
44
|
export(): TimerExportType;
|
|
54
45
|
getDirection(): -1 | 0 | 1;
|
|
55
46
|
/**
|
|
@@ -81,7 +81,7 @@ export class Timer {
|
|
|
81
81
|
}
|
|
82
82
|
constructor(nameSpaceId) {
|
|
83
83
|
this.onTimerExpired = new TriggerableMulticastDelegate();
|
|
84
|
-
this.
|
|
84
|
+
this.onTimerTick = new TriggerableMulticastDelegate();
|
|
85
85
|
// Track based on start time, per-second timeouts can drift.
|
|
86
86
|
this._anchorTimestamp = 0;
|
|
87
87
|
this._anchorValue = 0;
|
|
@@ -89,23 +89,6 @@ export class Timer {
|
|
|
89
89
|
this._active = false;
|
|
90
90
|
this._nameSpaceId = nameSpaceId;
|
|
91
91
|
}
|
|
92
|
-
/**
|
|
93
|
-
* Auto-update text with timer value.
|
|
94
|
-
*
|
|
95
|
-
* @param text
|
|
96
|
-
* @returns
|
|
97
|
-
*/
|
|
98
|
-
addTimerText(text) {
|
|
99
|
-
this._timerTexts.push(text);
|
|
100
|
-
return this;
|
|
101
|
-
}
|
|
102
|
-
delTimerText(text) {
|
|
103
|
-
const index = this._timerTexts.indexOf(text);
|
|
104
|
-
if (index !== -1) {
|
|
105
|
-
this._timerTexts.splice(index, 1);
|
|
106
|
-
}
|
|
107
|
-
return this;
|
|
108
|
-
}
|
|
109
92
|
export() {
|
|
110
93
|
return {
|
|
111
94
|
anchorTimestamp: this._anchorTimestamp,
|
|
@@ -144,12 +127,9 @@ export class Timer {
|
|
|
144
127
|
this._intervalHandle = undefined;
|
|
145
128
|
}
|
|
146
129
|
let lastValue = this.getSeconds();
|
|
147
|
-
setInterval(() => {
|
|
130
|
+
this._intervalHandle = setInterval(() => {
|
|
148
131
|
this._saveState();
|
|
149
|
-
|
|
150
|
-
for (const text of this._timerTexts) {
|
|
151
|
-
text.setText(str);
|
|
152
|
-
}
|
|
132
|
+
this.onTimerTick.trigger();
|
|
153
133
|
if (this._direction === -1) {
|
|
154
134
|
const newValue = this.getSeconds();
|
|
155
135
|
if (lastValue > 0 && newValue <= 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timer.js","sourceRoot":"","sources":["../../../../src/lib/timer/timer.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"timer.js","sourceRoot":"","sources":["../../../../src/lib/timer/timer.ts"],"names":[],"mappings":"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"}
|