ttpg-darrell 1.0.76 → 1.0.78
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/game-object/cardholder-player-name/cardholder-player-name.js +1 -1
- package/build/cjs/lib/layout-objects/layout-border.d.ts +2 -2
- package/build/cjs/lib/layout-objects/layout-border.js +8 -13
- package/build/cjs/lib/layout-objects/layout-border.js.map +1 -1
- package/build/cjs/lib/layout-objects/layout-border.testp.js +19 -0
- package/build/cjs/lib/layout-objects/layout-border.testp.js.map +1 -0
- package/build/cjs/lib/layout-objects/layout-objects.d.ts +1 -1
- package/build/cjs/lib/locale/locale.d.ts +1 -1
- package/build/cjs/lib-ext/color-mapping/color-mapping.js +2 -2
- package/build/cjs/lib-ext/color-mapping/color-mapping.js.map +1 -1
- package/build/cjs/lib-ext/color-mapping/raw-linear.js +0 -25
- package/build/cjs/lib-ext/color-mapping/raw-linear.js.map +1 -1
- package/build/cjs/lib-ext/create-assets/abstract-create-assets/abstract-create-assets.d.ts +0 -1
- package/build/cjs/lib-ext/create-assets/create-board/create-board.d.ts +0 -1
- package/build/cjs/lib-ext/create-assets/create-cardsheets/create-cardsheet-params.d.ts +12 -160
- package/build/cjs/lib-ext/create-assets/create-cardsheets/create-cardsheet.d.ts +0 -1
- package/build/cjs/lib-ext/create-assets/create-d6/create-d6-params.d.ts +10 -158
- package/build/cjs/lib-ext/create-assets/create-d6/create-d6.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/abstract-cell/abstract-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/bleed-cell/bleed-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/buffer-cell/buffer-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/canvas-cell/canvas-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/cell-parser/cell-schema.d.ts +40 -20
- package/build/cjs/lib-ext/image/cell/col-cell/col-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/grid-cell/grid-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/image-cell/image-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/padded-cell/padded-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/resize-cell/resize-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/row-cell/row-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/solid-cell/solid-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/text-cell/text-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/image-split/image-split.d.ts +0 -1
- package/build/cjs/lib-ext/nsid/extract-nsid-to-template-id.js +1 -1
- package/build/cjs/lib-ext/nsid/extract-nsid-to-template-id.js.map +1 -1
- package/build/cjs/lib-ext/template/cube-template/cube-template.js +4 -4
- package/build/cjs/lib-ext/template/cube-template/cube-template.js.map +1 -1
- package/build/esm/lib/game-object/cardholder-player-name/cardholder-player-name.js +1 -1
- package/build/esm/lib/layout-objects/layout-border.d.ts +2 -2
- package/build/esm/lib/layout-objects/layout-border.js +8 -13
- package/build/esm/lib/layout-objects/layout-border.js.map +1 -1
- package/build/esm/lib/layout-objects/layout-border.testp.js +17 -0
- package/build/esm/lib/layout-objects/layout-border.testp.js.map +1 -0
- package/build/esm/lib/layout-objects/layout-objects.d.ts +1 -1
- package/build/esm/lib/locale/locale.d.ts +1 -1
- package/build/esm/lib-ext/create-assets/abstract-create-assets/abstract-create-assets.d.ts +0 -1
- package/build/esm/lib-ext/create-assets/create-board/create-board.d.ts +0 -1
- package/build/esm/lib-ext/create-assets/create-cardsheets/create-cardsheet-params.d.ts +12 -160
- package/build/esm/lib-ext/create-assets/create-cardsheets/create-cardsheet.d.ts +0 -1
- package/build/esm/lib-ext/create-assets/create-d6/create-d6-params.d.ts +10 -158
- package/build/esm/lib-ext/create-assets/create-d6/create-d6.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/abstract-cell/abstract-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/bleed-cell/bleed-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/buffer-cell/buffer-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/canvas-cell/canvas-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/cell-parser/cell-schema.d.ts +40 -20
- package/build/esm/lib-ext/image/cell/col-cell/col-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/grid-cell/grid-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/image-cell/image-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/padded-cell/padded-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/resize-cell/resize-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/row-cell/row-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/solid-cell/solid-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/text-cell/text-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/image-split/image-split.d.ts +0 -1
- package/build/esm/lib-ext/nsid/extract-nsid-to-template-id.js +1 -1
- package/build/esm/lib-ext/nsid/extract-nsid-to-template-id.js.map +1 -1
- package/build/esm/lib-ext/template/cube-template/cube-template.js +4 -4
- package/build/esm/lib-ext/template/cube-template/cube-template.js.map +1 -1
- package/package.json +1 -1
- package/build/cjs/lib/bug-workarounds/bug-card-holder-assignment.d.ts +0 -8
- package/build/cjs/lib/bug-workarounds/bug-card-holder-assignment.js +0 -14
- package/build/cjs/lib/bug-workarounds/bug-card-holder-assignment.js.map +0 -1
- package/build/cjs/lib/bug-workarounds/bug-unique-cards.d.ts +0 -8
- package/build/cjs/lib/bug-workarounds/bug-unique-cards.js +0 -14
- package/build/cjs/lib/bug-workarounds/bug-unique-cards.js.map +0 -1
- package/build/cjs/lib/chess-clock/chess-clock-window.d.ts +0 -11
- package/build/cjs/lib/chess-clock/chess-clock-window.js +0 -47
- package/build/cjs/lib/chess-clock/chess-clock-window.js.map +0 -1
- package/build/cjs/lib/chess-clock/chess-clock-window.testp.d.ts +0 -1
- package/build/cjs/lib/chess-clock/chess-clock-window.testp.js +0 -23
- package/build/cjs/lib/chess-clock/chess-clock-window.testp.js.map +0 -1
- package/build/cjs/lib/context-menu/abstract-right-click-card.d.ts +0 -17
- package/build/cjs/lib/context-menu/abstract-right-click-card.js +0 -40
- package/build/cjs/lib/context-menu/abstract-right-click-card.js.map +0 -1
- package/build/cjs/lib/context-menu/abstract-right-click-deck.d.ts +0 -19
- package/build/cjs/lib/context-menu/abstract-right-click-deck.js +0 -46
- package/build/cjs/lib/context-menu/abstract-right-click-deck.js.map +0 -1
- package/build/cjs/lib/context-menu/leave-seat.d.ts +0 -19
- package/build/cjs/lib/context-menu/leave-seat.js +0 -51
- package/build/cjs/lib/context-menu/leave-seat.js.map +0 -1
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.d.ts +0 -30
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.js +0 -103
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.js.map +0 -1
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.testp.d.ts +0 -1
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.testp.js +0 -15
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.testp.js.map +0 -1
- package/build/cjs/lib/event/throttle-click-handler.d.ts +0 -9
- package/build/cjs/lib/event/throttle-click-handler.js +0 -28
- package/build/cjs/lib/event/throttle-click-handler.js.map +0 -1
- package/build/cjs/lib/event/triggerable-multicast-delegate.d.ts +0 -30
- package/build/cjs/lib/event/triggerable-multicast-delegate.js +0 -57
- package/build/cjs/lib/event/triggerable-multicast-delegate.js.map +0 -1
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.d.ts +0 -1
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.js +0 -6
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.js.map +0 -1
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation.d.ts +0 -7
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation.js +0 -27
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation.js.map +0 -1
- package/build/cjs/lib/jest-util/click-all/click-all.d.ts +0 -2
- package/build/cjs/lib/jest-util/click-all/click-all.js +0 -38
- package/build/cjs/lib/jest-util/click-all/click-all.js.map +0 -1
- package/build/cjs/lib/parse/parse-color.d.ts +0 -7
- package/build/cjs/lib/parse/parse-color.js +0 -47
- package/build/cjs/lib/parse/parse-color.js.map +0 -1
- package/build/cjs/lib/svg/svg-sparkline.d.ts +0 -12
- package/build/cjs/lib/svg/svg-sparkline.js +0 -44
- package/build/cjs/lib/svg/svg-sparkline.js.map +0 -1
- package/build/cjs/lib/ui-visibility/ui-visibility.d.ts +0 -17
- package/build/cjs/lib/ui-visibility/ui-visibility.js +0 -69
- package/build/cjs/lib/ui-visibility/ui-visibility.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-widget.d.ts +0 -9
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-widget.js +0 -82
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-widget.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-window.d.ts +0 -4
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-window.js +0 -40
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-window.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-data.d.ts +0 -46
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-data.js +0 -211
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-data.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-widget.d.ts +0 -15
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-widget.js +0 -227
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-widget.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.d.ts +0 -11
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.js +0 -47
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.testp.d.ts +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.testp.js +0 -22
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.testp.js.map +0 -1
- package/build/cjs/lib-ext/color-mapping/color-mapping-scikit.js +0 -140
- package/build/cjs/lib-ext/color-mapping/color-mapping-scikit.js.map +0 -1
- package/build/cjs/lib-ext/color-mapping/extracted-to-hex.js +0 -41
- package/build/cjs/lib-ext/color-mapping/extracted-to-hex.js.map +0 -1
- package/build/cjs/lib-ext/image-table.d.ts +0 -1
- package/build/cjs/lib-ext/image-table.js +0 -14
- package/build/cjs/lib-ext/image-table.js.map +0 -1
- package/build/esm/lib/bug-workarounds/bug-card-holder-assignment.d.ts +0 -8
- package/build/esm/lib/bug-workarounds/bug-card-holder-assignment.js +0 -10
- package/build/esm/lib/bug-workarounds/bug-card-holder-assignment.js.map +0 -1
- package/build/esm/lib/bug-workarounds/bug-unique-cards.d.ts +0 -8
- package/build/esm/lib/bug-workarounds/bug-unique-cards.js +0 -10
- package/build/esm/lib/bug-workarounds/bug-unique-cards.js.map +0 -1
- package/build/esm/lib/chess-clock/chess-clock-window.d.ts +0 -11
- package/build/esm/lib/chess-clock/chess-clock-window.js +0 -43
- package/build/esm/lib/chess-clock/chess-clock-window.js.map +0 -1
- package/build/esm/lib/chess-clock/chess-clock-window.testp.d.ts +0 -1
- package/build/esm/lib/chess-clock/chess-clock-window.testp.js +0 -21
- package/build/esm/lib/chess-clock/chess-clock-window.testp.js.map +0 -1
- package/build/esm/lib/context-menu/abstract-right-click-card.d.ts +0 -17
- package/build/esm/lib/context-menu/abstract-right-click-card.js +0 -36
- package/build/esm/lib/context-menu/abstract-right-click-card.js.map +0 -1
- package/build/esm/lib/context-menu/abstract-right-click-deck.d.ts +0 -19
- package/build/esm/lib/context-menu/abstract-right-click-deck.js +0 -42
- package/build/esm/lib/context-menu/abstract-right-click-deck.js.map +0 -1
- package/build/esm/lib/context-menu/leave-seat.d.ts +0 -19
- package/build/esm/lib/context-menu/leave-seat.js +0 -47
- package/build/esm/lib/context-menu/leave-seat.js.map +0 -1
- package/build/esm/lib/event/on-card-became-singleton-or-deck.d.ts +0 -30
- package/build/esm/lib/event/on-card-became-singleton-or-deck.js +0 -99
- package/build/esm/lib/event/on-card-became-singleton-or-deck.js.map +0 -1
- package/build/esm/lib/event/on-card-became-singleton-or-deck.testp.d.ts +0 -1
- package/build/esm/lib/event/on-card-became-singleton-or-deck.testp.js +0 -13
- package/build/esm/lib/event/on-card-became-singleton-or-deck.testp.js.map +0 -1
- package/build/esm/lib/event/throttle-click-handler.d.ts +0 -9
- package/build/esm/lib/event/throttle-click-handler.js +0 -24
- package/build/esm/lib/event/throttle-click-handler.js.map +0 -1
- package/build/esm/lib/event/triggerable-multicast-delegate.d.ts +0 -30
- package/build/esm/lib/event/triggerable-multicast-delegate.js +0 -53
- package/build/esm/lib/event/triggerable-multicast-delegate.js.map +0 -1
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.d.ts +0 -1
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.js +0 -4
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.js.map +0 -1
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation.d.ts +0 -4
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation.js +0 -20
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation.js.map +0 -1
- package/build/esm/lib/jest-util/click-all/click-all.d.ts +0 -2
- package/build/esm/lib/jest-util/click-all/click-all.js +0 -34
- package/build/esm/lib/jest-util/click-all/click-all.js.map +0 -1
- package/build/esm/lib/parse/parse-color.d.ts +0 -7
- package/build/esm/lib/parse/parse-color.js +0 -43
- package/build/esm/lib/parse/parse-color.js.map +0 -1
- package/build/esm/lib/svg/svg-sparkline.d.ts +0 -12
- package/build/esm/lib/svg/svg-sparkline.js +0 -40
- package/build/esm/lib/svg/svg-sparkline.js.map +0 -1
- package/build/esm/lib/ui-visibility/ui-visibility.d.ts +0 -17
- package/build/esm/lib/ui-visibility/ui-visibility.js +0 -65
- package/build/esm/lib/ui-visibility/ui-visibility.js.map +0 -1
- package/build/esm/lib-ext/image-table.d.ts +0 -1
- package/build/esm/lib-ext/image-table.js +0 -9
- package/build/esm/lib-ext/image-table.js.map +0 -1
- package/build/module_type_should_override_this/index.d.ts +0 -54
- package/build/module_type_should_override_this/index.js +0 -55
- package/build/module_type_should_override_this/index.js.map +0 -1
- package/build/module_type_should_override_this/lib/adjacency/adjacency.d.ts +0 -61
- package/build/module_type_should_override_this/lib/adjacency/adjacency.js +0 -212
- package/build/module_type_should_override_this/lib/adjacency/adjacency.js.map +0 -1
- package/build/module_type_should_override_this/lib/broadcast/broadcast.d.ts +0 -9
- package/build/module_type_should_override_this/lib/broadcast/broadcast.js +0 -42
- package/build/module_type_should_override_this/lib/broadcast/broadcast.js.map +0 -1
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-card-holder-assignment.d.ts +0 -8
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-card-holder-assignment.js +0 -10
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-card-holder-assignment.js.map +0 -1
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-unique-cards.d.ts +0 -8
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-unique-cards.js +0 -10
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-unique-cards.js.map +0 -1
- package/build/module_type_should_override_this/lib/card-util/card-util.d.ts +0 -45
- package/build/module_type_should_override_this/lib/card-util/card-util.js +0 -173
- package/build/module_type_should_override_this/lib/card-util/card-util.js.map +0 -1
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-card.d.ts +0 -17
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-card.js +0 -36
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-card.js.map +0 -1
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-deck.d.ts +0 -19
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-deck.js +0 -42
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-deck.js.map +0 -1
- package/build/module_type_should_override_this/lib/context-menu/leave-seat.d.ts +0 -19
- package/build/module_type_should_override_this/lib/context-menu/leave-seat.js +0 -47
- package/build/module_type_should_override_this/lib/context-menu/leave-seat.js.map +0 -1
- package/build/module_type_should_override_this/lib/data-store/data-store.d.ts +0 -104
- package/build/module_type_should_override_this/lib/data-store/data-store.js +0 -392
- package/build/module_type_should_override_this/lib/data-store/data-store.js.map +0 -1
- package/build/module_type_should_override_this/lib/dice-group/dice-group-testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/dice-group/dice-group-testp.js +0 -37
- package/build/module_type_should_override_this/lib/dice-group/dice-group-testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/dice-group/dice-group.d.ts +0 -83
- package/build/module_type_should_override_this/lib/dice-group/dice-group.js +0 -247
- package/build/module_type_should_override_this/lib/dice-group/dice-group.js.map +0 -1
- package/build/module_type_should_override_this/lib/error-handler/bugsplat-remote-reporter.d.ts +0 -21
- package/build/module_type_should_override_this/lib/error-handler/bugsplat-remote-reporter.js +0 -54
- package/build/module_type_should_override_this/lib/error-handler/bugsplat-remote-reporter.js.map +0 -1
- package/build/module_type_should_override_this/lib/error-handler/error-batcher.d.ts +0 -11
- package/build/module_type_should_override_this/lib/error-handler/error-batcher.js +0 -50
- package/build/module_type_should_override_this/lib/error-handler/error-batcher.js.map +0 -1
- package/build/module_type_should_override_this/lib/error-handler/error-handler.d.ts +0 -43
- package/build/module_type_should_override_this/lib/error-handler/error-handler.js +0 -234
- package/build/module_type_should_override_this/lib/error-handler/error-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/error-handler/error-handler.testp.d.ts +0 -4
- package/build/module_type_should_override_this/lib/error-handler/error-handler.testp.js +0 -13
- package/build/module_type_should_override_this/lib/error-handler/error-handler.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.d.ts +0 -30
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.js +0 -99
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.js.map +0 -1
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.testp.js +0 -13
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/event/throttle-click-handler.d.ts +0 -9
- package/build/module_type_should_override_this/lib/event/throttle-click-handler.js +0 -24
- package/build/module_type_should_override_this/lib/event/throttle-click-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/event/triggerable-multicast-delegate.d.ts +0 -30
- package/build/module_type_should_override_this/lib/event/triggerable-multicast-delegate.js +0 -53
- package/build/module_type_should_override_this/lib/event/triggerable-multicast-delegate.js.map +0 -1
- package/build/module_type_should_override_this/lib/facing/facing.d.ts +0 -4
- package/build/module_type_should_override_this/lib/facing/facing.js +0 -15
- package/build/module_type_should_override_this/lib/facing/facing.js.map +0 -1
- package/build/module_type_should_override_this/lib/find/find.d.ts +0 -19
- package/build/module_type_should_override_this/lib/find/find.js +0 -152
- package/build/module_type_should_override_this/lib/find/find.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name-obj.d.ts +0 -1
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name-obj.js +0 -10
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name-obj.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name.d.ts +0 -19
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name.js +0 -101
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container-obj.d.ts +0 -1
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container-obj.js +0 -5
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container-obj.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container.d.ts +0 -24
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container.js +0 -91
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container-obj.d.ts +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container-obj.js +0 -4
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container-obj.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container.d.ts +0 -43
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container.js +0 -116
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-card-garbage-handler.d.ts +0 -20
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-card-garbage-handler.js +0 -100
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-card-garbage-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-container-handler.d.ts +0 -16
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-container-handler.js +0 -44
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-container-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-snap-point-handler.d.ts +0 -19
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-snap-point-handler.js +0 -50
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-snap-point-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/global/global-init.d.ts +0 -10
- package/build/module_type_should_override_this/lib/global/global-init.js +0 -20
- package/build/module_type_should_override_this/lib/global/global-init.js.map +0 -1
- package/build/module_type_should_override_this/lib/global/i-global.d.ts +0 -3
- package/build/module_type_should_override_this/lib/global/i-global.js +0 -2
- package/build/module_type_should_override_this/lib/global/i-global.js.map +0 -1
- package/build/module_type_should_override_this/lib/heap/heap.d.ts +0 -8
- package/build/module_type_should_override_this/lib/heap/heap.js +0 -109
- package/build/module_type_should_override_this/lib/heap/heap.js.map +0 -1
- package/build/module_type_should_override_this/lib/layout-objects/layout-objects.d.ts +0 -49
- package/build/module_type_should_override_this/lib/layout-objects/layout-objects.js +0 -257
- package/build/module_type_should_override_this/lib/layout-objects/layout-objects.js.map +0 -1
- package/build/module_type_should_override_this/lib/locale/locale.d.ts +0 -8
- package/build/module_type_should_override_this/lib/locale/locale.js +0 -48
- package/build/module_type_should_override_this/lib/locale/locale.js.map +0 -1
- package/build/module_type_should_override_this/lib/namespace-id/namespace-id.d.ts +0 -1
- package/build/module_type_should_override_this/lib/namespace-id/namespace-id.js +0 -2
- package/build/module_type_should_override_this/lib/namespace-id/namespace-id.js.map +0 -1
- package/build/module_type_should_override_this/lib/nsid/nsid.d.ts +0 -54
- package/build/module_type_should_override_this/lib/nsid/nsid.js +0 -86
- package/build/module_type_should_override_this/lib/nsid/nsid.js.map +0 -1
- package/build/module_type_should_override_this/lib/parse/parse-color.d.ts +0 -7
- package/build/module_type_should_override_this/lib/parse/parse-color.js +0 -43
- package/build/module_type_should_override_this/lib/parse/parse-color.js.map +0 -1
- package/build/module_type_should_override_this/lib/perf/perf.d.ts +0 -29
- package/build/module_type_should_override_this/lib/perf/perf.js +0 -93
- package/build/module_type_should_override_this/lib/perf/perf.js.map +0 -1
- package/build/module_type_should_override_this/lib/setup/abstract-setup.d.ts +0 -18
- package/build/module_type_should_override_this/lib/setup/abstract-setup.js +0 -22
- package/build/module_type_should_override_this/lib/setup/abstract-setup.js.map +0 -1
- package/build/module_type_should_override_this/lib/shuffle/shuffle.d.ts +0 -7
- package/build/module_type_should_override_this/lib/shuffle/shuffle.js +0 -26
- package/build/module_type_should_override_this/lib/shuffle/shuffle.js.map +0 -1
- package/build/module_type_should_override_this/lib/spawn/spawn.d.ts +0 -21
- package/build/module_type_should_override_this/lib/spawn/spawn.js +0 -116
- package/build/module_type_should_override_this/lib/spawn/spawn.js.map +0 -1
- package/build/module_type_should_override_this/lib/svg/svg-sparkline.d.ts +0 -12
- package/build/module_type_should_override_this/lib/svg/svg-sparkline.js +0 -40
- package/build/module_type_should_override_this/lib/svg/svg-sparkline.js.map +0 -1
- package/build/module_type_should_override_this/lib/turn-order/turn-order.d.ts +0 -51
- package/build/module_type_should_override_this/lib/turn-order/turn-order.js +0 -200
- package/build/module_type_should_override_this/lib/turn-order/turn-order.js.map +0 -1
- package/build/module_type_should_override_this/lib/ui/screen-test.d.ts +0 -1
- package/build/module_type_should_override_this/lib/ui/screen-test.js +0 -20
- package/build/module_type_should_override_this/lib/ui/screen-test.js.map +0 -1
- package/build/module_type_should_override_this/lib/ui-visibility/ui-visibility.d.ts +0 -17
- package/build/module_type_should_override_this/lib/ui-visibility/ui-visibility.js +0 -65
- package/build/module_type_should_override_this/lib/ui-visibility/ui-visibility.js.map +0 -1
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter-locale.data.js +0 -4
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter.d.ts +0 -5
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter.js +0 -25
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/confirm-button/confirm-button.d.ts +0 -2
- package/build/module_type_should_override_this/lib/widget/confirm-button/confirm-button.js +0 -3
- package/build/module_type_should_override_this/lib/widget/confirm-button/confirm-button.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/d6widget/d6widget.d.ts +0 -48
- package/build/module_type_should_override_this/lib/widget/d6widget/d6widget.js +0 -84
- package/build/module_type_should_override_this/lib/widget/d6widget/d6widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.d.ts +0 -35
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.js +0 -109
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.testp.js +0 -10
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-locale.data.js +0 -4
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.d.ts +0 -28
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.js +0 -99
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.testp.js +0 -10
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-locale.data.js +0 -5
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget-locale.data.js +0 -4
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.d.ts +0 -19
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.js +0 -74
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.testp.js +0 -5
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-clicked-widget.d.ts +0 -22
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-clicked-widget.js +0 -136
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-clicked-widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-wart.d.ts +0 -16
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-wart.js +0 -7
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-wart.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-widget.d.ts +0 -29
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-widget.js +0 -131
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-locale.data.js +0 -13
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget-params.d.ts +0 -33
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget-params.js +0 -6
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget-params.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.d.ts +0 -25
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.js +0 -99
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.testp.js +0 -58
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib-ext/image-table.d.ts +0 -1
- package/build/module_type_should_override_this/lib-ext/image-table.js +0 -9
- package/build/module_type_should_override_this/lib-ext/image-table.js.map +0 -1
- package/build/module_type_should_override_this/locale.data.d.ts +0 -4
- package/build/module_type_should_override_this/locale.data.js +0 -5
- package/build/module_type_should_override_this/locale.data.js.map +0 -1
- /package/build/cjs/{lib-ext/color-mapping/color-mapping-scikit.d.ts → lib/layout-objects/layout-border.testp.d.ts} +0 -0
- /package/build/{cjs/lib-ext/color-mapping/extracted-to-hex.d.ts → esm/lib/layout-objects/layout-border.testp.d.ts} +0 -0
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { globalEvents } from "@tabletop-playground/api";
|
|
2
|
-
export class Perf {
|
|
3
|
-
static getInstance() {
|
|
4
|
-
if (!Perf._instance) {
|
|
5
|
-
Perf._instance = new Perf();
|
|
6
|
-
}
|
|
7
|
-
return Perf._instance;
|
|
8
|
-
}
|
|
9
|
-
constructor(windowSize = 50) {
|
|
10
|
-
this._nextWindowFrameMsecsIndex = 0;
|
|
11
|
-
this._windowFps = Array(60).fill(0);
|
|
12
|
-
this._nextWindowFpsIndex = 0;
|
|
13
|
-
this._lastFpsUpdateSecond = -1;
|
|
14
|
-
this._onTickHandler = (prevTickDurationSecs) => {
|
|
15
|
-
this._windowFrameSecs[this._nextWindowFrameMsecsIndex] =
|
|
16
|
-
prevTickDurationSecs;
|
|
17
|
-
this._nextWindowFrameMsecsIndex =
|
|
18
|
-
(this._nextWindowFrameMsecsIndex + 1) %
|
|
19
|
-
this._windowFrameSecs.length;
|
|
20
|
-
// Store one minute of FPS values, as per-second intervals.
|
|
21
|
-
const nowSeconds = Math.floor(Date.now() / 1000);
|
|
22
|
-
if (nowSeconds !== this._lastFpsUpdateSecond) {
|
|
23
|
-
this._lastFpsUpdateSecond = nowSeconds;
|
|
24
|
-
const fps = this.getReport().fps;
|
|
25
|
-
this._windowFps[this._nextWindowFpsIndex] = fps;
|
|
26
|
-
this._nextWindowFpsIndex =
|
|
27
|
-
(this._nextWindowFpsIndex + 1) % this._windowFps.length;
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
this._windowFrameSecs = Array(windowSize).fill(-1);
|
|
31
|
-
globalEvents.onTick.add(this._onTickHandler);
|
|
32
|
-
}
|
|
33
|
-
init() {
|
|
34
|
-
Perf.getInstance();
|
|
35
|
-
}
|
|
36
|
-
destroy() {
|
|
37
|
-
globalEvents.onTick.remove(this._onTickHandler);
|
|
38
|
-
}
|
|
39
|
-
getReport() {
|
|
40
|
-
const msecs = this._windowFrameSecs
|
|
41
|
-
.filter((seconds) => seconds > 0)
|
|
42
|
-
.map((seconds) => seconds * 1000);
|
|
43
|
-
if (msecs.length === 0) {
|
|
44
|
-
msecs.push(0);
|
|
45
|
-
}
|
|
46
|
-
const n = msecs.length;
|
|
47
|
-
const mean = msecs.reduce((a, b) => a + b, 0) / n;
|
|
48
|
-
const stdDev = Math.sqrt(msecs.map((x) => Math.pow(x - mean, 2)).reduce((a, b) => a + b) / n);
|
|
49
|
-
const sorted = msecs.sort((a, b) => b - a);
|
|
50
|
-
const median = sorted[Math.floor(sorted.length / 2)];
|
|
51
|
-
if (median === undefined) {
|
|
52
|
-
throw new Error("missing median");
|
|
53
|
-
}
|
|
54
|
-
// Mean of values within 3x stdDev (in the unlikely event of none,
|
|
55
|
-
// use the regular mean).
|
|
56
|
-
const tolerance = stdDev * 3;
|
|
57
|
-
const scrubbedArray = msecs.filter((x) => x > mean - tolerance && x < mean + tolerance);
|
|
58
|
-
const scrubbed = scrubbedArray.length > 0
|
|
59
|
-
? scrubbedArray.reduce((a, b) => a + b, 0) /
|
|
60
|
-
scrubbedArray.length
|
|
61
|
-
: mean;
|
|
62
|
-
const fps = scrubbed > 0 ? 1000 / scrubbed : 0;
|
|
63
|
-
// Round to 3 decimal places for cleaner log / json.
|
|
64
|
-
return {
|
|
65
|
-
median: Math.floor(median * 1000) / 1000,
|
|
66
|
-
mean: Math.floor(mean * 1000) / 1000,
|
|
67
|
-
scrubbed: Math.floor(scrubbed * 1000) / 1000,
|
|
68
|
-
stdDev: Math.floor(stdDev * 1000) / 1000,
|
|
69
|
-
fps: Math.floor(fps * 1000) / 1000,
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
getReportStr() {
|
|
73
|
-
const report = this.getReport();
|
|
74
|
-
const median = report.median.toFixed(1);
|
|
75
|
-
const mean = report.mean.toFixed(1);
|
|
76
|
-
const scrubbed = report.scrubbed.toFixed(1);
|
|
77
|
-
const stdDev = report.stdDev.toFixed(2);
|
|
78
|
-
const fps = report.fps.toFixed(1);
|
|
79
|
-
return `frame msecs: median=${median} mean=${mean} scrubbed=${scrubbed} stdDev=${stdDev} [${fps}]`;
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Get per-second FPS for the last minute, in time order.
|
|
83
|
-
*
|
|
84
|
-
* @returns
|
|
85
|
-
*/
|
|
86
|
-
getFpsHistory() {
|
|
87
|
-
return [
|
|
88
|
-
...this._windowFps.slice(this._nextWindowFpsIndex),
|
|
89
|
-
...this._windowFps.slice(0, this._nextWindowFpsIndex),
|
|
90
|
-
];
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
//# sourceMappingURL=perf.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"perf.js","sourceRoot":"","sources":["../../../../src/lib/perf/perf.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Color } from "@tabletop-playground/api";
|
|
2
|
-
export type AbstractSetupParams = {
|
|
3
|
-
playerSlot?: number;
|
|
4
|
-
primaryColor?: Color;
|
|
5
|
-
secondaryColor?: Color;
|
|
6
|
-
};
|
|
7
|
-
/**
|
|
8
|
-
* Store owner information.
|
|
9
|
-
*/
|
|
10
|
-
export declare abstract class AbstractSetup {
|
|
11
|
-
private readonly _playerSlot;
|
|
12
|
-
private readonly _primaryColor;
|
|
13
|
-
private readonly _secondaryColor;
|
|
14
|
-
constructor(params?: AbstractSetupParams);
|
|
15
|
-
getPlayerSlot(): number;
|
|
16
|
-
getPrimaryColor(): Color;
|
|
17
|
-
getSecondaryColor(): Color;
|
|
18
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { Color } from "@tabletop-playground/api";
|
|
2
|
-
/**
|
|
3
|
-
* Store owner information.
|
|
4
|
-
*/
|
|
5
|
-
export class AbstractSetup {
|
|
6
|
-
constructor(params) {
|
|
7
|
-
var _a, _b, _c;
|
|
8
|
-
this._playerSlot = (_a = params === null || params === void 0 ? void 0 : params.playerSlot) !== null && _a !== void 0 ? _a : -1;
|
|
9
|
-
this._primaryColor = (_b = params === null || params === void 0 ? void 0 : params.primaryColor) !== null && _b !== void 0 ? _b : new Color(1, 1, 1, 1);
|
|
10
|
-
this._secondaryColor = (_c = params === null || params === void 0 ? void 0 : params.secondaryColor) !== null && _c !== void 0 ? _c : new Color(0, 0, 0, 1);
|
|
11
|
-
}
|
|
12
|
-
getPlayerSlot() {
|
|
13
|
-
return this._playerSlot;
|
|
14
|
-
}
|
|
15
|
-
getPrimaryColor() {
|
|
16
|
-
return this._primaryColor;
|
|
17
|
-
}
|
|
18
|
-
getSecondaryColor() {
|
|
19
|
-
return this._secondaryColor;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=abstract-setup.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"abstract-setup.js","sourceRoot":"","sources":["../../../../src/lib/setup/abstract-setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAQjD;;GAEG;AACH,MAAM,OAAgB,aAAa;IAK/B,YAAY,MAA4B;;QACpC,IAAI,CAAC,WAAW,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,mCAAI,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,mCAAI,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,eAAe,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,cAAc,mCAAI,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,eAAe;QACX,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,iBAAiB;QACb,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;CACJ"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shuffle an array of objects.
|
|
3
|
-
*/
|
|
4
|
-
export class Shuffle {
|
|
5
|
-
static shuffle(items) {
|
|
6
|
-
// Fisher-Yates
|
|
7
|
-
for (let i = items.length - 1; i > 0; i--) {
|
|
8
|
-
const j = Math.floor(Math.random() * (i + 1));
|
|
9
|
-
const a = items[i];
|
|
10
|
-
const b = items[j];
|
|
11
|
-
if (a !== undefined && b !== undefined) {
|
|
12
|
-
items[i] = b;
|
|
13
|
-
items[j] = a;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
return items;
|
|
17
|
-
}
|
|
18
|
-
static choice(items) {
|
|
19
|
-
const item = items[Math.floor(Math.random() * items.length)];
|
|
20
|
-
if (item === undefined) {
|
|
21
|
-
throw new Error("item undefined");
|
|
22
|
-
}
|
|
23
|
-
return item;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=shuffle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shuffle.js","sourceRoot":"","sources":["../../../../src/lib/shuffle/shuffle.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,OAAO;IAChB,MAAM,CAAC,OAAO,CAAI,KAAU;QACxB,eAAe;QACf,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC,GAAkB,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,GAAkB,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACrC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACb,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,MAAM,CAAI,KAAU;QACvB,MAAM,IAAI,GACN,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACpD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Card, GameObject, Rotator, Vector } from "@tabletop-playground/api";
|
|
2
|
-
/**
|
|
3
|
-
* Registry for NSID to template id.
|
|
4
|
-
*/
|
|
5
|
-
export declare abstract class Spawn {
|
|
6
|
-
private static _nsidToTemplateId;
|
|
7
|
-
static spawn(nsid: string, position?: Vector | [x: number, y: number, z: number], rotation?: Rotator | [pitch: number, yaw: number, roll: number]): GameObject | undefined;
|
|
8
|
-
static spawnOrThrow(nsid: string, position?: Vector | [x: number, y: number, z: number], rotation?: Rotator | [pitch: number, yaw: number, roll: number]): GameObject;
|
|
9
|
-
static spawnMergeDecks(nsids: string[], position?: Vector | [x: number, y: number, z: number], rotation?: Rotator | [pitch: number, yaw: number, roll: number]): Card | undefined;
|
|
10
|
-
static spawnMergeDecksOrThrow(nsids: string[], position?: Vector | [x: number, y: number, z: number], rotation?: Rotator | [pitch: number, yaw: number, roll: number]): Card;
|
|
11
|
-
static inject(dict: {
|
|
12
|
-
[key: string]: string;
|
|
13
|
-
}): void;
|
|
14
|
-
static has(nsid: string): boolean;
|
|
15
|
-
static clear(): void;
|
|
16
|
-
static getAllNsids(): string[];
|
|
17
|
-
/**
|
|
18
|
-
* Make sure all registered templates exist.
|
|
19
|
-
*/
|
|
20
|
-
static validate(): void;
|
|
21
|
-
}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import { Card, world, } from "@tabletop-playground/api";
|
|
2
|
-
/**
|
|
3
|
-
* Registry for NSID to template id.
|
|
4
|
-
*/
|
|
5
|
-
export class Spawn {
|
|
6
|
-
static spawn(nsid, position, rotation) {
|
|
7
|
-
const templateId = Spawn._nsidToTemplateId[nsid];
|
|
8
|
-
if (!templateId) {
|
|
9
|
-
console.log(`Spawn.spawn: unknown nsid "${nsid}"`);
|
|
10
|
-
return undefined;
|
|
11
|
-
}
|
|
12
|
-
if (position === undefined) {
|
|
13
|
-
position = [0, 0, 0];
|
|
14
|
-
}
|
|
15
|
-
if (rotation === undefined) {
|
|
16
|
-
rotation = [0, 0, 0];
|
|
17
|
-
}
|
|
18
|
-
const obj = world.createObjectFromTemplate(templateId, position);
|
|
19
|
-
if (obj) {
|
|
20
|
-
const name = world.getTemplateName(templateId);
|
|
21
|
-
obj.setName(name);
|
|
22
|
-
obj.setRotation(rotation);
|
|
23
|
-
}
|
|
24
|
-
return obj;
|
|
25
|
-
}
|
|
26
|
-
static spawnOrThrow(nsid, position, rotation) {
|
|
27
|
-
const obj = Spawn.spawn(nsid, position, rotation);
|
|
28
|
-
if (!obj) {
|
|
29
|
-
throw new Error(`spawnOrThrow failed for "${nsid}"`);
|
|
30
|
-
}
|
|
31
|
-
return obj;
|
|
32
|
-
}
|
|
33
|
-
static spawnMergeDecks(nsids, position, rotation) {
|
|
34
|
-
if (nsids.length === 0) {
|
|
35
|
-
console.log("Spawn.spawnMergeDecks: empty nsid array");
|
|
36
|
-
return undefined;
|
|
37
|
-
}
|
|
38
|
-
let deck;
|
|
39
|
-
for (const nsid of nsids) {
|
|
40
|
-
const obj = Spawn.spawn(nsid, position, rotation);
|
|
41
|
-
// If any object fails, fail the whole spawn.
|
|
42
|
-
if (!obj) {
|
|
43
|
-
console.log(`Spawn.spawnMergeDecks: unknown nsid "${nsid}"`);
|
|
44
|
-
if (deck) {
|
|
45
|
-
deck.destroy();
|
|
46
|
-
}
|
|
47
|
-
return undefined;
|
|
48
|
-
}
|
|
49
|
-
if (!(obj instanceof Card)) {
|
|
50
|
-
console.log(`Spawn.spawnMergeDecks: nsid "${nsid}" not a Card`);
|
|
51
|
-
if (deck) {
|
|
52
|
-
deck.destroy();
|
|
53
|
-
}
|
|
54
|
-
return undefined;
|
|
55
|
-
}
|
|
56
|
-
if (deck) {
|
|
57
|
-
const success = deck.addCards(obj);
|
|
58
|
-
if (!success) {
|
|
59
|
-
console.log(`Spawn.spawnMergeDecks: nsid "${nsid}" failed to merge with existing deck (wrong size?)`);
|
|
60
|
-
if (deck) {
|
|
61
|
-
deck.destroy();
|
|
62
|
-
}
|
|
63
|
-
return undefined;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
deck = obj;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
return deck;
|
|
71
|
-
}
|
|
72
|
-
static spawnMergeDecksOrThrow(nsids, position, rotation) {
|
|
73
|
-
const obj = Spawn.spawnMergeDecks(nsids, position, rotation);
|
|
74
|
-
if (!obj) {
|
|
75
|
-
throw new Error(`spawnMergeDecksOrThrow failed for [${nsids.join(", ")}]`);
|
|
76
|
-
}
|
|
77
|
-
return obj;
|
|
78
|
-
}
|
|
79
|
-
static inject(dict) {
|
|
80
|
-
for (const [k, v] of Object.entries(dict)) {
|
|
81
|
-
Spawn._nsidToTemplateId[k] = v;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
static has(nsid) {
|
|
85
|
-
return Spawn._nsidToTemplateId[nsid] ? true : false;
|
|
86
|
-
}
|
|
87
|
-
static clear() {
|
|
88
|
-
Spawn._nsidToTemplateId = {};
|
|
89
|
-
}
|
|
90
|
-
static getAllNsids() {
|
|
91
|
-
return Object.keys(Spawn._nsidToTemplateId);
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Make sure all registered templates exist.
|
|
95
|
-
*/
|
|
96
|
-
static validate() {
|
|
97
|
-
const templateIds = new Set();
|
|
98
|
-
for (const pkg of world.getAllowedPackages()) {
|
|
99
|
-
for (const templateId of pkg.getTemplateIds()) {
|
|
100
|
-
templateIds.add(templateId);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
const missing = [];
|
|
104
|
-
for (const [nsid, templateId] of Object.entries(Spawn._nsidToTemplateId)) {
|
|
105
|
-
if (!templateIds.has(templateId)) {
|
|
106
|
-
missing.push(`${templateId} ("${nsid}")`);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
if (missing.length > 0) {
|
|
110
|
-
throw new Error(`Spawn.validate missing templateIds (${missing.length}):\n` +
|
|
111
|
-
missing.join("\n"));
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
Spawn._nsidToTemplateId = {};
|
|
116
|
-
//# sourceMappingURL=spawn.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spawn.js","sourceRoot":"","sources":["../../../../src/lib/spawn/spawn.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export declare class SvgSparkline {
|
|
2
|
-
static WIDTH: number;
|
|
3
|
-
static HEIGHT: number;
|
|
4
|
-
/**
|
|
5
|
-
* Create a sparkline from non-negative numbers.
|
|
6
|
-
*
|
|
7
|
-
* @param values
|
|
8
|
-
* @returns
|
|
9
|
-
*/
|
|
10
|
-
static svg(values: number[]): string;
|
|
11
|
-
static url(values: number[]): string;
|
|
12
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
export class SvgSparkline {
|
|
2
|
-
/**
|
|
3
|
-
* Create a sparkline from non-negative numbers.
|
|
4
|
-
*
|
|
5
|
-
* @param values
|
|
6
|
-
* @returns
|
|
7
|
-
*/
|
|
8
|
-
static svg(values) {
|
|
9
|
-
// Get the average non-zero value.
|
|
10
|
-
const nonZeroValues = values.filter((value) => value > 0);
|
|
11
|
-
if (nonZeroValues.length === 0) {
|
|
12
|
-
nonZeroValues.push(0);
|
|
13
|
-
}
|
|
14
|
-
const mean = nonZeroValues.reduce((a, b) => a + b, 0) / nonZeroValues.length;
|
|
15
|
-
// Compute an upper bound, cap at a multiple of the average.
|
|
16
|
-
let max = Math.min(Math.max(...values, 0), mean * 3);
|
|
17
|
-
if (max === 0) {
|
|
18
|
-
return `<svg xmlns='http://www.w3.org/2000/svg'></svg>`;
|
|
19
|
-
}
|
|
20
|
-
// Round up factor of 10, make sure there's some gap at top.
|
|
21
|
-
max = Math.ceil(max / 10) * 10 + 1;
|
|
22
|
-
// Convert to [0:100] for display.
|
|
23
|
-
const v = values.map((value) => SvgSparkline.HEIGHT -
|
|
24
|
-
Math.round((value * SvgSparkline.HEIGHT) / max));
|
|
25
|
-
const path = [`M 0 ${v[0]}`];
|
|
26
|
-
for (let i = 1; i < v.length; i++) {
|
|
27
|
-
path.push(`L ${i * 3} ${v[i]}`);
|
|
28
|
-
if (v[i + i] !== v[i]) {
|
|
29
|
-
path.push(`L ${i * 3 + 3} ${v[i]}`);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
return `<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 ${SvgSparkline.WIDTH} ${SvgSparkline.HEIGHT}'><path d='${path.join(" ")}' stroke-width='2' stroke='red' fill='transparent' /></svg>`;
|
|
33
|
-
}
|
|
34
|
-
static url(values) {
|
|
35
|
-
return "data:image/svg+xml," + SvgSparkline.svg(values);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
SvgSparkline.WIDTH = 180;
|
|
39
|
-
SvgSparkline.HEIGHT = 100;
|
|
40
|
-
//# sourceMappingURL=svg-sparkline.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"svg-sparkline.js","sourceRoot":"","sources":["../../../../src/lib/svg/svg-sparkline.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,YAAY;IAIrB;;;;;OAKG;IACH,MAAM,CAAC,GAAG,CAAC,MAAgB;QACvB,kCAAkC;QAClC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC1D,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;QACD,MAAM,IAAI,GACN,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC;QAEpE,4DAA4D;QAC5D,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACrD,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACZ,OAAO,gDAAgD,CAAC;QAC5D,CAAC;QAED,4DAA4D;QAC5D,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEnC,kCAAkC;QAClC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAChB,CAAC,KAAK,EAAE,EAAE,CACN,YAAY,CAAC,MAAM;YACnB,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CACtD,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAChC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;QACD,OAAO,wDAAwD,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,MAAM,cAAc,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,6DAA6D,CAAC;IACtM,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,MAAgB;QACvB,OAAO,qBAAqB,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5D,CAAC;;AA7Ca,kBAAK,GAAW,GAAG,CAAC;AACpB,mBAAM,GAAW,GAAG,CAAC"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { NamedspacedId } from "../namespace-id/namespace-id";
|
|
2
|
-
import { TriggerableMulticastDelegate } from "../event/triggerable-multicast-delegate";
|
|
3
|
-
export type Direction = "forward" | "reverse" | "snake";
|
|
4
|
-
export type PlayerSlot = number;
|
|
5
|
-
/**
|
|
6
|
-
* Specify turn order with direction (forward, reverse, snake).
|
|
7
|
-
* Provides a central, persistent state for passed and eliminiated players.
|
|
8
|
-
*/
|
|
9
|
-
export declare class TurnOrder {
|
|
10
|
-
static readonly onTurnStateChanged: TriggerableMulticastDelegate<(turnOrder: TurnOrder) => void>;
|
|
11
|
-
private static readonly _idToTurnOrder;
|
|
12
|
-
private readonly _savedDataKey;
|
|
13
|
-
private readonly _passed;
|
|
14
|
-
private readonly _eliminated;
|
|
15
|
-
private _order;
|
|
16
|
-
private _direction;
|
|
17
|
-
private _currentTurn;
|
|
18
|
-
private _snake;
|
|
19
|
-
private _snakeNeedsAnotherTurn;
|
|
20
|
-
static getInstance(savedDataKey: NamedspacedId): TurnOrder;
|
|
21
|
-
/**
|
|
22
|
-
* Constructor. Does NOT register with shared instance memory; ALWAYS
|
|
23
|
-
* use getInstance if you want to find/create a shared instance.
|
|
24
|
-
*
|
|
25
|
-
* @param savedDataKey
|
|
26
|
-
*/
|
|
27
|
-
constructor(savedDataKey: NamedspacedId);
|
|
28
|
-
getId(): NamedspacedId;
|
|
29
|
-
_saveState(): void;
|
|
30
|
-
_restoreState(): void;
|
|
31
|
-
nextTurn(): PlayerSlot;
|
|
32
|
-
getCurrentTurn(): PlayerSlot;
|
|
33
|
-
/**
|
|
34
|
-
* Set current turn.
|
|
35
|
-
*
|
|
36
|
-
* Do not require it be in the current turn order: perhaps the caller is
|
|
37
|
-
* about to chnage the order to match, or has some other wacky use in mind.
|
|
38
|
-
*
|
|
39
|
-
* @param playerSlot
|
|
40
|
-
* @returns
|
|
41
|
-
*/
|
|
42
|
-
setCurrentTurn(playerSlot: PlayerSlot): this;
|
|
43
|
-
getTurnOrder(): PlayerSlot[];
|
|
44
|
-
setTurnOrder(order: PlayerSlot[], direction: Direction, currentTurn: PlayerSlot): this;
|
|
45
|
-
getDirection(): Direction;
|
|
46
|
-
setDirection(direction: Direction): this;
|
|
47
|
-
getEliminated(playerSlot: PlayerSlot): boolean;
|
|
48
|
-
setEliminated(playerSlot: PlayerSlot, value: boolean): this;
|
|
49
|
-
getPassed(playerSlot: PlayerSlot): boolean;
|
|
50
|
-
setPassed(playerSlot: PlayerSlot, value: boolean): this;
|
|
51
|
-
}
|
|
@@ -1,200 +0,0 @@
|
|
|
1
|
-
import { world } from "@tabletop-playground/api";
|
|
2
|
-
import { TriggerableMulticastDelegate } from "../event/triggerable-multicast-delegate";
|
|
3
|
-
import { z } from "zod";
|
|
4
|
-
// Compact serialized format; global saved state space is precious.
|
|
5
|
-
// We could make some less used entries optional, but it's safer to consume
|
|
6
|
-
// that space so the state size is mostly stable.
|
|
7
|
-
const TURN_ORDER_STATE_SCHEMA = z
|
|
8
|
-
.object({
|
|
9
|
-
p: z.number().array(), // passed
|
|
10
|
-
e: z.number().array(), // eliminated
|
|
11
|
-
o: z.number().array(), // order
|
|
12
|
-
d: z.number(), // direction
|
|
13
|
-
c: z.number(), // current turn
|
|
14
|
-
s: z.number(), // snake
|
|
15
|
-
n: z.number(), // snake needs another turn
|
|
16
|
-
})
|
|
17
|
-
.strict();
|
|
18
|
-
/**
|
|
19
|
-
* Specify turn order with direction (forward, reverse, snake).
|
|
20
|
-
* Provides a central, persistent state for passed and eliminiated players.
|
|
21
|
-
*/
|
|
22
|
-
export class TurnOrder {
|
|
23
|
-
static getInstance(savedDataKey) {
|
|
24
|
-
let turnOrder = TurnOrder._idToTurnOrder[savedDataKey];
|
|
25
|
-
if (!turnOrder) {
|
|
26
|
-
turnOrder = new TurnOrder(savedDataKey);
|
|
27
|
-
TurnOrder._idToTurnOrder[savedDataKey] = turnOrder;
|
|
28
|
-
}
|
|
29
|
-
return turnOrder;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Constructor. Does NOT register with shared instance memory; ALWAYS
|
|
33
|
-
* use getInstance if you want to find/create a shared instance.
|
|
34
|
-
*
|
|
35
|
-
* @param savedDataKey
|
|
36
|
-
*/
|
|
37
|
-
constructor(savedDataKey) {
|
|
38
|
-
this._passed = new Set();
|
|
39
|
-
this._eliminated = new Set();
|
|
40
|
-
this._order = [];
|
|
41
|
-
this._direction = 1;
|
|
42
|
-
this._currentTurn = -1;
|
|
43
|
-
this._snake = false;
|
|
44
|
-
this._snakeNeedsAnotherTurn = false;
|
|
45
|
-
this._savedDataKey = savedDataKey;
|
|
46
|
-
this._restoreState();
|
|
47
|
-
}
|
|
48
|
-
getId() {
|
|
49
|
-
return this._savedDataKey;
|
|
50
|
-
}
|
|
51
|
-
_saveState() {
|
|
52
|
-
const state = {
|
|
53
|
-
p: Array.from(this._passed),
|
|
54
|
-
e: Array.from(this._eliminated),
|
|
55
|
-
o: this._order,
|
|
56
|
-
d: this._direction,
|
|
57
|
-
c: this._currentTurn,
|
|
58
|
-
s: this._snake ? 1 : 0,
|
|
59
|
-
n: this._snakeNeedsAnotherTurn ? 1 : 0,
|
|
60
|
-
};
|
|
61
|
-
TURN_ORDER_STATE_SCHEMA.parse(state); // validate
|
|
62
|
-
const jsonStr = JSON.stringify(state);
|
|
63
|
-
world.setSavedData(jsonStr, this._savedDataKey);
|
|
64
|
-
}
|
|
65
|
-
_restoreState() {
|
|
66
|
-
const jsonStr = world.getSavedData(this._savedDataKey);
|
|
67
|
-
if (!jsonStr || jsonStr.length === 0) {
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
const jsonObj = JSON.parse(jsonStr);
|
|
71
|
-
const state = TURN_ORDER_STATE_SCHEMA.parse(jsonObj);
|
|
72
|
-
this._passed.clear();
|
|
73
|
-
for (const playerSlot of state.p) {
|
|
74
|
-
this._passed.add(playerSlot);
|
|
75
|
-
}
|
|
76
|
-
this._eliminated.clear();
|
|
77
|
-
for (const playerSlot of state.e) {
|
|
78
|
-
this._eliminated.add(playerSlot);
|
|
79
|
-
}
|
|
80
|
-
this._order = state.o;
|
|
81
|
-
this._direction = state.d;
|
|
82
|
-
this._currentTurn = state.c;
|
|
83
|
-
this._snake = state.s === 1;
|
|
84
|
-
this._snakeNeedsAnotherTurn = state.n === 1;
|
|
85
|
-
}
|
|
86
|
-
nextTurn() {
|
|
87
|
-
var _a;
|
|
88
|
-
let cursor = this._order.indexOf(this._currentTurn);
|
|
89
|
-
if (cursor < 0) {
|
|
90
|
-
return -1;
|
|
91
|
-
}
|
|
92
|
-
let playerSlot = -1;
|
|
93
|
-
let attempts = this._order.length * 2 + 1;
|
|
94
|
-
while (attempts-- > 0) {
|
|
95
|
-
// Advance to next slot.
|
|
96
|
-
if (this._snake && this._snakeNeedsAnotherTurn) {
|
|
97
|
-
this._snakeNeedsAnotherTurn = false;
|
|
98
|
-
this._direction = -this._direction;
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
cursor =
|
|
102
|
-
(cursor + this._direction + this._order.length) %
|
|
103
|
-
this._order.length;
|
|
104
|
-
}
|
|
105
|
-
// If snake hit end, mark as needing another turn.
|
|
106
|
-
if (this._snake &&
|
|
107
|
-
((this._direction === 1 && cursor === this._order.length - 1) ||
|
|
108
|
-
(this._direction === -1 && cursor === 0))) {
|
|
109
|
-
this._snakeNeedsAnotherTurn = true;
|
|
110
|
-
}
|
|
111
|
-
// Is the candidate available?
|
|
112
|
-
playerSlot = (_a = this._order[cursor]) !== null && _a !== void 0 ? _a : -1;
|
|
113
|
-
if (playerSlot >= 0 &&
|
|
114
|
-
!this._passed.has(playerSlot) &&
|
|
115
|
-
!this._eliminated.has(playerSlot)) {
|
|
116
|
-
break; // use this player slot
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
this._currentTurn = playerSlot;
|
|
120
|
-
this._saveState();
|
|
121
|
-
TurnOrder.onTurnStateChanged.trigger(this);
|
|
122
|
-
return this._currentTurn;
|
|
123
|
-
}
|
|
124
|
-
getCurrentTurn() {
|
|
125
|
-
return this._currentTurn;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Set current turn.
|
|
129
|
-
*
|
|
130
|
-
* Do not require it be in the current turn order: perhaps the caller is
|
|
131
|
-
* about to chnage the order to match, or has some other wacky use in mind.
|
|
132
|
-
*
|
|
133
|
-
* @param playerSlot
|
|
134
|
-
* @returns
|
|
135
|
-
*/
|
|
136
|
-
setCurrentTurn(playerSlot) {
|
|
137
|
-
this._currentTurn = playerSlot;
|
|
138
|
-
this._saveState();
|
|
139
|
-
TurnOrder.onTurnStateChanged.trigger(this);
|
|
140
|
-
return this;
|
|
141
|
-
}
|
|
142
|
-
getTurnOrder() {
|
|
143
|
-
return [...this._order]; // copy
|
|
144
|
-
}
|
|
145
|
-
setTurnOrder(order, direction, currentTurn) {
|
|
146
|
-
this._order = order;
|
|
147
|
-
this._direction = direction === "reverse" ? -1 : 1;
|
|
148
|
-
this._snake = direction === "snake";
|
|
149
|
-
this._snakeNeedsAnotherTurn = false;
|
|
150
|
-
this._currentTurn = currentTurn;
|
|
151
|
-
this._saveState();
|
|
152
|
-
TurnOrder.onTurnStateChanged.trigger(this);
|
|
153
|
-
return this;
|
|
154
|
-
}
|
|
155
|
-
getDirection() {
|
|
156
|
-
if (this._snake) {
|
|
157
|
-
return "snake";
|
|
158
|
-
}
|
|
159
|
-
return this._direction === 1 ? "forward" : "reverse";
|
|
160
|
-
}
|
|
161
|
-
setDirection(direction) {
|
|
162
|
-
this._direction = direction === "reverse" ? -1 : 1;
|
|
163
|
-
this._snake = direction === "snake";
|
|
164
|
-
this._snakeNeedsAnotherTurn = false;
|
|
165
|
-
this._saveState();
|
|
166
|
-
TurnOrder.onTurnStateChanged.trigger(this);
|
|
167
|
-
return this;
|
|
168
|
-
}
|
|
169
|
-
getEliminated(playerSlot) {
|
|
170
|
-
return this._eliminated.has(playerSlot);
|
|
171
|
-
}
|
|
172
|
-
setEliminated(playerSlot, value) {
|
|
173
|
-
if (value) {
|
|
174
|
-
this._eliminated.add(playerSlot);
|
|
175
|
-
}
|
|
176
|
-
else {
|
|
177
|
-
this._eliminated.delete(playerSlot);
|
|
178
|
-
}
|
|
179
|
-
this._saveState();
|
|
180
|
-
TurnOrder.onTurnStateChanged.trigger(this);
|
|
181
|
-
return this;
|
|
182
|
-
}
|
|
183
|
-
getPassed(playerSlot) {
|
|
184
|
-
return this._passed.has(playerSlot);
|
|
185
|
-
}
|
|
186
|
-
setPassed(playerSlot, value) {
|
|
187
|
-
if (value) {
|
|
188
|
-
this._passed.add(playerSlot);
|
|
189
|
-
}
|
|
190
|
-
else {
|
|
191
|
-
this._passed.delete(playerSlot);
|
|
192
|
-
}
|
|
193
|
-
this._saveState();
|
|
194
|
-
TurnOrder.onTurnStateChanged.trigger(this);
|
|
195
|
-
return this;
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
TurnOrder.onTurnStateChanged = new TriggerableMulticastDelegate();
|
|
199
|
-
TurnOrder._idToTurnOrder = {};
|
|
200
|
-
//# sourceMappingURL=turn-order.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"turn-order.js","sourceRoot":"","sources":["../../../../src/lib/turn-order/turn-order.ts"],"names":[],"mappings":"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"}
|