@turnipxenon/pineapple 1.1.2
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/README.md +38 -0
- package/dist/app.postcss +94 -0
- package/dist/assets/bg_tiled/bg_tiled_ares.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_corn.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_pineapple.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_reinhard.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_tomato.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_turnip.png +0 -0
- package/dist/assets/characters/ares/ares_blushing.webp +0 -0
- package/dist/assets/characters/ares/ares_disappointed.webp +0 -0
- package/dist/assets/characters/ares/ares_happy.webp +0 -0
- package/dist/assets/characters/ares/ares_lets_go.webp +0 -0
- package/dist/assets/characters/ares/ares_logo.webp +0 -0
- package/dist/assets/characters/ares/ares_mad.webp +0 -0
- package/dist/assets/characters/ares/ares_neutral.webp +0 -0
- package/dist/assets/characters/ares/ares_slightly_mad.webp +0 -0
- package/dist/assets/characters/ares/ares_surprised.webp +0 -0
- package/dist/assets/characters/ares/ares_yay.webp +0 -0
- package/dist/assets/game_dev/footage-chef-wings.gif +0 -0
- package/dist/assets/game_dev/footage-depreciation.webm +0 -0
- package/dist/assets/game_dev/footage-thinking-of-flowers.webm +0 -0
- package/dist/assets/game_dev/screenshot-game-jam-mama.png +0 -0
- package/dist/assets/game_dev/screenshot-string-hop.png +0 -0
- package/dist/assets/game_dev/screenshot-wet-ass-road.png +0 -0
- package/dist/assets/icons/chat_cursor.svg +47 -0
- package/dist/assets/icons/external_link.svg +50 -0
- package/dist/assets/temp/background-image.jpg +0 -0
- package/dist/assets/temp/bitbucket-logo.png +0 -0
- package/dist/assets/temp/github-logo.png +0 -0
- package/dist/assets/temp/header-hep-cat.mp4 +0 -0
- package/dist/assets/temp/header-hep-cat.ogg +0 -0
- package/dist/assets/temp/header-hep-cat.webm +0 -0
- package/dist/assets/temp/header-pengi.mp4 +0 -0
- package/dist/assets/temp/header-pengi.webm +0 -0
- package/dist/assets/temp/header-soulwork.mp4 +0 -0
- package/dist/assets/temp/header-soulwork.ogg +0 -0
- package/dist/assets/temp/header-soulwork.webm +0 -0
- package/dist/components/DialogOverlay.svelte +93 -0
- package/dist/components/DialogOverlay.svelte.d.ts +14 -0
- package/dist/components/LazyAsset.svelte +96 -0
- package/dist/components/LazyAsset.svelte.d.ts +20 -0
- package/dist/components/LazyAssetType.d.ts +10 -0
- package/dist/components/LazyAssetType.js +12 -0
- package/dist/components/PineappleBaseLayout.svelte +186 -0
- package/dist/components/PineappleBaseLayout.svelte.d.ts +19 -0
- package/dist/components/RandomizedBackground.svelte +62 -0
- package/dist/components/RandomizedBackground.svelte.d.ts +16 -0
- package/dist/components/RandomizedImage.svelte +29 -0
- package/dist/components/RandomizedImage.svelte.d.ts +17 -0
- package/dist/components/dialog_manager/DialogManager.d.ts +77 -0
- package/dist/components/dialog_manager/DialogManager.js +239 -0
- package/dist/components/dialog_manager/DialogManagerStore.d.ts +41 -0
- package/dist/components/dialog_manager/DialogManagerStore.js +45 -0
- package/dist/components/dialog_manager/DialogProcessor.d.ts +13 -0
- package/dist/components/dialog_manager/DialogProcessor.js +62 -0
- package/dist/components/dialog_manager/DialogUtils.d.ts +5 -0
- package/dist/components/dialog_manager/DialogUtils.js +8 -0
- package/dist/components/dialog_manager/behavior_tree/core/BTreeUtils.d.ts +15 -0
- package/dist/components/dialog_manager/behavior_tree/core/BTreeUtils.js +34 -0
- package/dist/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.d.ts +4 -0
- package/dist/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.js +1 -0
- package/dist/components/dialog_manager/behavior_tree/core/BehaviorNode.d.ts +3 -0
- package/dist/components/dialog_manager/behavior_tree/core/BehaviorNode.js +1 -0
- package/dist/components/dialog_manager/behavior_tree/core/BehaviorStatus.d.ts +5 -0
- package/dist/components/dialog_manager/behavior_tree/core/BehaviorStatus.js +6 -0
- package/dist/components/dialog_manager/behavior_tree/core/SelectorNode.d.ts +12 -0
- package/dist/components/dialog_manager/behavior_tree/core/SelectorNode.js +22 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionArguments.d.ts +5 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionArguments.js +1 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.d.ts +4 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.js +1 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.d.ts +15 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.js +220 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionResult.d.ts +5 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionResult.js +1 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.d.ts +8 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.js +15 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionState.d.ts +3 -0
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionState.js +1 -0
- package/dist/components/dialog_manager/behavior_tree/expression/OperandNode.d.ts +10 -0
- package/dist/components/dialog_manager/behavior_tree/expression/OperandNode.js +15 -0
- package/dist/components/dialog_manager/behavior_tree/expression/OperatorNode.d.ts +11 -0
- package/dist/components/dialog_manager/behavior_tree/expression/OperatorNode.js +30 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.d.ts +6 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.js +21 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.d.ts +9 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.js +19 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandMap.d.ts +9 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandMap.js +18 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.d.ts +15 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.js +24 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.d.ts +20 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.js +32 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.d.ts +13 -0
- package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.js +25 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/AndOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/AndOperator.js +15 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.js +14 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.js +12 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.js +12 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.js +12 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.js +12 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.js +12 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.js +13 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.d.ts +17 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.js +32 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.d.ts +9 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.js +47 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OrOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OrOperator.js +13 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/XorOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/XorOperator.js +17 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.js +14 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.js +14 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.js +12 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.js +14 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.d.ts +7 -0
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.js +14 -0
- package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.d.ts +4 -0
- package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.js +1 -0
- package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.d.ts +6 -0
- package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.js +1 -0
- package/dist/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.d.ts +6 -0
- package/dist/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.js +1 -0
- package/dist/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.d.ts +8 -0
- package/dist/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.js +15 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/BehaviorState.d.ts +5 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/BehaviorState.js +5 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.d.ts +11 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.js +53 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/ElseNode.d.ts +11 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/ElseNode.js +49 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/EndIfNode.d.ts +11 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/EndIfNode.js +23 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/IfMode.d.ts +6 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/IfMode.js +8 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/IfNode.d.ts +12 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/IfNode.js +43 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.d.ts +11 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.js +25 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.d.ts +6 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.js +18 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.d.ts +6 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.js +17 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.d.ts +10 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.js +38 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.d.ts +11 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.js +31 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.d.ts +8 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.js +39 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.d.ts +8 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.js +40 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.d.ts +9 -0
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.js +28 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.js +8 -0
- package/dist/scripts/SetDefaultEnvironment.d.ts +1 -0
- package/dist/scripts/SetDefaultEnvironment.js +41 -0
- package/dist/scripts/pineapple_fiber/PineappleWeaver.d.ts +9 -0
- package/dist/scripts/pineapple_fiber/PineappleWeaver.js +201 -0
- package/dist/scripts/util/FileManagement.d.ts +7 -0
- package/dist/scripts/util/FileManagement.js +35 -0
- package/dist/scripts/util/ManualCheck.d.ts +1 -0
- package/dist/scripts/util/ManualCheck.js +28 -0
- package/dist/scripts/util/ManualCheckRun.d.ts +1 -0
- package/dist/scripts/util/ManualCheckRun.js +6 -0
- package/dist/store.d.ts +17 -0
- package/dist/store.js +17 -0
- package/dist/styles/DefaultGridContainer.css +61 -0
- package/dist/theme.postcss +107 -0
- package/dist/types/BlogBlurbMeta.d.ts +11 -0
- package/dist/types/BlogBlurbMeta.js +16 -0
- package/dist/types/BreadcrumbData.d.ts +4 -0
- package/dist/types/BreadcrumbData.js +1 -0
- package/dist/types/pineapple_fiber/DialogDetail.d.ts +6 -0
- package/dist/types/pineapple_fiber/DialogDetail.js +1 -0
- package/dist/types/pineapple_fiber/DialogState.d.ts +5 -0
- package/dist/types/pineapple_fiber/DialogState.js +6 -0
- package/dist/types/pineapple_fiber/DialogVariableStore.d.ts +2 -0
- package/dist/types/pineapple_fiber/DialogVariableStore.js +20 -0
- package/dist/types/pineapple_fiber/PortraitType.d.ts +11 -0
- package/dist/types/pineapple_fiber/PortraitType.js +12 -0
- package/dist/util/stable_random.d.ts +2 -0
- package/dist/util/stable_random.js +15 -0
- package/package.json +67 -0
- package/src/app.html +13 -0
- package/src/lib/app.postcss +94 -0
- package/src/lib/assets/bg_tiled/bg_tiled_ares.png +0 -0
- package/src/lib/assets/bg_tiled/bg_tiled_corn.png +0 -0
- package/src/lib/assets/bg_tiled/bg_tiled_pineapple.png +0 -0
- package/src/lib/assets/bg_tiled/bg_tiled_reinhard.png +0 -0
- package/src/lib/assets/bg_tiled/bg_tiled_tomato.png +0 -0
- package/src/lib/assets/bg_tiled/bg_tiled_turnip.png +0 -0
- package/src/lib/assets/characters/ares/ares_blushing.webp +0 -0
- package/src/lib/assets/characters/ares/ares_disappointed.webp +0 -0
- package/src/lib/assets/characters/ares/ares_happy.webp +0 -0
- package/src/lib/assets/characters/ares/ares_lets_go.webp +0 -0
- package/src/lib/assets/characters/ares/ares_logo.webp +0 -0
- package/src/lib/assets/characters/ares/ares_mad.webp +0 -0
- package/src/lib/assets/characters/ares/ares_neutral.webp +0 -0
- package/src/lib/assets/characters/ares/ares_slightly_mad.webp +0 -0
- package/src/lib/assets/characters/ares/ares_surprised.webp +0 -0
- package/src/lib/assets/characters/ares/ares_yay.webp +0 -0
- package/src/lib/assets/game_dev/footage-chef-wings.gif +0 -0
- package/src/lib/assets/game_dev/footage-depreciation.webm +0 -0
- package/src/lib/assets/game_dev/footage-thinking-of-flowers.webm +0 -0
- package/src/lib/assets/game_dev/screenshot-game-jam-mama.png +0 -0
- package/src/lib/assets/game_dev/screenshot-string-hop.png +0 -0
- package/src/lib/assets/game_dev/screenshot-wet-ass-road.png +0 -0
- package/src/lib/assets/icons/chat_cursor.svg +47 -0
- package/src/lib/assets/icons/external_link.svg +50 -0
- package/src/lib/assets/temp/background-image.jpg +0 -0
- package/src/lib/assets/temp/bitbucket-logo.png +0 -0
- package/src/lib/assets/temp/github-logo.png +0 -0
- package/src/lib/assets/temp/header-hep-cat.mp4 +0 -0
- package/src/lib/assets/temp/header-hep-cat.ogg +0 -0
- package/src/lib/assets/temp/header-hep-cat.webm +0 -0
- package/src/lib/assets/temp/header-pengi.mp4 +0 -0
- package/src/lib/assets/temp/header-pengi.webm +0 -0
- package/src/lib/assets/temp/header-soulwork.mp4 +0 -0
- package/src/lib/assets/temp/header-soulwork.ogg +0 -0
- package/src/lib/assets/temp/header-soulwork.webm +0 -0
- package/src/lib/components/DialogOverlay.svelte +100 -0
- package/src/lib/components/LazyAsset.svelte +114 -0
- package/src/lib/components/LazyAssetType.ts +11 -0
- package/src/lib/components/PineappleBaseLayout.svelte +165 -0
- package/src/lib/components/RandomizedBackground.svelte +77 -0
- package/src/lib/components/RandomizedImage.svelte +31 -0
- package/src/lib/components/dialog_manager/DialogManager.ts +282 -0
- package/src/lib/components/dialog_manager/DialogManagerStore.ts +52 -0
- package/src/lib/components/dialog_manager/DialogProcessor.ts +68 -0
- package/src/lib/components/dialog_manager/DialogUtils.ts +10 -0
- package/src/lib/components/dialog_manager/behavior_tree/core/BTreeUtils.ts +40 -0
- package/src/lib/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.ts +5 -0
- package/src/lib/components/dialog_manager/behavior_tree/core/BehaviorNode.ts +3 -0
- package/src/lib/components/dialog_manager/behavior_tree/core/BehaviorStatus.ts +5 -0
- package/src/lib/components/dialog_manager/behavior_tree/core/SelectorNode.ts +32 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionArguments.ts +6 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.ts +5 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.ts +236 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionResult.ts +6 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.ts +20 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionState.ts +3 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/OperandNode.ts +19 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/OperatorNode.ts +37 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.ts +28 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.ts +34 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/commands/CommandMap.ts +26 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.ts +31 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.ts +38 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.ts +28 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/AndOperator.ts +24 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.ts +21 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.ts +21 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.ts +21 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.ts +19 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.ts +21 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.ts +21 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.ts +20 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.ts +42 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.ts +53 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/OrOperator.ts +22 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/XorOperator.ts +24 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.ts +23 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.ts +23 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.ts +21 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.ts +23 -0
- package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.ts +23 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.ts +5 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.ts +7 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.ts +7 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.ts +20 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/BehaviorState.ts +6 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.ts +59 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/ElseNode.ts +55 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/EndIfNode.ts +28 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/IfMode.ts +7 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/IfNode.ts +49 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.ts +30 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.ts +24 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.ts +22 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.ts +48 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.ts +37 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.ts +48 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.ts +51 -0
- package/src/lib/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.ts +34 -0
- package/src/lib/index.ts +9 -0
- package/src/lib/scripts/SetDefaultEnvironment.ts +45 -0
- package/src/lib/scripts/pineapple_fiber/PineappleWeaver.ts +252 -0
- package/src/lib/scripts/util/FileManagement.ts +38 -0
- package/src/lib/scripts/util/ManualCheck.ts +32 -0
- package/src/lib/scripts/util/ManualCheckRun.ts +7 -0
- package/src/lib/store.ts +18 -0
- package/src/lib/styles/DefaultGridContainer.css +61 -0
- package/src/lib/theme.postcss +107 -0
- package/src/lib/types/BlogBlurbMeta.ts +16 -0
- package/src/lib/types/BreadcrumbData.ts +4 -0
- package/src/lib/types/pineapple_fiber/DialogDetail.ts +7 -0
- package/src/lib/types/pineapple_fiber/DialogState.ts +5 -0
- package/src/lib/types/pineapple_fiber/DialogVariableStore.ts +24 -0
- package/src/lib/types/pineapple_fiber/PortraitType.ts +11 -0
- package/src/lib/util/stable_random.ts +16 -0
- package/src/routes/+error.svelte +26 -0
- package/src/routes/+layout.svelte +23 -0
- package/src/routes/+page.svelte +41 -0
- package/src/routes/Error.yarn +7 -0
- package/src/routes/ErrorYarn.ts +24 -0
- package/src/routes/portfolio/+page.svelte +0 -0
- package/src/types.d.ts +8 -0
- package/static/default-card.png +0 -0
- package/static/favicon.png +0 -0
package/README.md
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# create-svelte
|
|
2
|
+
|
|
3
|
+
Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
|
|
4
|
+
|
|
5
|
+
## Creating a project
|
|
6
|
+
|
|
7
|
+
If you're seeing this, you've probably already done this step. Congrats!
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# create a new project in the current directory
|
|
11
|
+
npm create svelte@latest
|
|
12
|
+
|
|
13
|
+
# create a new project in my-app
|
|
14
|
+
npm create svelte@latest my-app
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Developing
|
|
18
|
+
|
|
19
|
+
Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npm run dev
|
|
23
|
+
|
|
24
|
+
# or start the server and open the app in a new browser tab
|
|
25
|
+
npm run dev -- --open
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Building
|
|
29
|
+
|
|
30
|
+
To create a production version of your app:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
npm run build
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
You can preview the production build with `npm run preview`.
|
|
37
|
+
|
|
38
|
+
> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.
|
package/dist/app.postcss
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/*place global styles here */
|
|
2
|
+
:root {
|
|
3
|
+
--default-card-max-width: calc(4rem + 4rem + 40rem);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
html,
|
|
7
|
+
body {
|
|
8
|
+
@apply h-full overflow-hidden;
|
|
9
|
+
@apply bg-surface-400-500-token;
|
|
10
|
+
background-color: transparent;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/*
|
|
14
|
+
|
|
15
|
+
//for reference left here
|
|
16
|
+
|
|
17
|
+
.bg-surface-custom-token {
|
|
18
|
+
@apply bg-surface-200 dark:bg-surface-700;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.app-bar {
|
|
22
|
+
@apply bg-surface-custom-token;
|
|
23
|
+
}
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
.card {
|
|
27
|
+
--tw-ring-offset-color: rgb(var(--color-text-300));
|
|
28
|
+
--tw-ring-offset-width: var(--theme-border-base);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.dark .card {
|
|
32
|
+
--tw-ring-offset-color: rgb(var(--color-text-600));
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.variant-ghost-primary {
|
|
36
|
+
background-color: rgb(var(--color-primary-500) / 0.8);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.dark .variant-ghost-primary {
|
|
40
|
+
background-color: rgb(var(--color-primary-400) / 0.8);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.default-card {
|
|
44
|
+
@apply variant-ghost-primary text-center p-16;
|
|
45
|
+
text-align: start;
|
|
46
|
+
padding-inline-end: clamp(0rem, 10vw, 8rem);
|
|
47
|
+
max-width: var(--default-card-max-width);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
h1,
|
|
51
|
+
h2,
|
|
52
|
+
p {
|
|
53
|
+
margin-bottom: 0.5em;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
ul {
|
|
57
|
+
list-style-type: circle;
|
|
58
|
+
padding-left: 1em;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
a:not(.unstyled):not(.permalink):is(:not(.prose *)):not(.btn):not(.btn-icon):not(.app-bar a):not(.logo-item):not(
|
|
62
|
+
a.card
|
|
63
|
+
):not(.list-nav a) {
|
|
64
|
+
color: rgb(var(--color-secondary-500) / var(--tw-text-opacity));
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.dark
|
|
68
|
+
a:not(.unstyled):not(.permalink):is(:not(.prose *)):not(.btn):not(.btn-icon):not(.app-bar a):not(.logo-item):not(
|
|
69
|
+
a.card
|
|
70
|
+
):not(.list-nav a) {
|
|
71
|
+
color: rgb(var(--color-secondary-700) / var(--tw-text-opacity));
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.default-page-container {
|
|
75
|
+
@apply flex justify-center items-center;
|
|
76
|
+
margin-top: 4em;
|
|
77
|
+
margin-left: clamp(1em, 15vw, 10em);
|
|
78
|
+
margin-right: 1em;
|
|
79
|
+
flex-direction: column;
|
|
80
|
+
z-index: 0;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.footer-space {
|
|
84
|
+
width: 100%;
|
|
85
|
+
height: calc(var(--dialog-box-height) + 4em);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
a.dialog-choice {
|
|
89
|
+
cursor: url("$lib/assets/icons/chat_cursor.svg"), auto;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
a.external-link {
|
|
93
|
+
cursor: url("$lib/assets/icons/external_link.svg"), auto;
|
|
94
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<svg
|
|
3
|
+
height="48"
|
|
4
|
+
viewBox="0 -960 960 960"
|
|
5
|
+
width="48"
|
|
6
|
+
version="1.1"
|
|
7
|
+
id="svg384"
|
|
8
|
+
sodipodi:docname="chat_FILL0_wght400_GRAD0_opsz48.svg"
|
|
9
|
+
inkscape:version="1.2.2 (732a01da63, 2022-12-09)"
|
|
10
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
11
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
12
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
13
|
+
xmlns:svg="http://www.w3.org/2000/svg">
|
|
14
|
+
<defs
|
|
15
|
+
id="defs388" />
|
|
16
|
+
<sodipodi:namedview
|
|
17
|
+
id="namedview386"
|
|
18
|
+
pagecolor="#ffffff"
|
|
19
|
+
bordercolor="#000000"
|
|
20
|
+
borderopacity="0.25"
|
|
21
|
+
inkscape:showpageshadow="2"
|
|
22
|
+
inkscape:pageopacity="0.0"
|
|
23
|
+
inkscape:pagecheckerboard="0"
|
|
24
|
+
inkscape:deskcolor="#d1d1d1"
|
|
25
|
+
showgrid="true"
|
|
26
|
+
inkscape:zoom="6.1650873"
|
|
27
|
+
inkscape:cx="12.084176"
|
|
28
|
+
inkscape:cy="16.220371"
|
|
29
|
+
inkscape:window-width="1920"
|
|
30
|
+
inkscape:window-height="1017"
|
|
31
|
+
inkscape:window-x="-8"
|
|
32
|
+
inkscape:window-y="-8"
|
|
33
|
+
inkscape:window-maximized="1"
|
|
34
|
+
inkscape:current-layer="svg384">
|
|
35
|
+
<inkscape:grid
|
|
36
|
+
type="xygrid"
|
|
37
|
+
id="grid390" />
|
|
38
|
+
</sodipodi:namedview>
|
|
39
|
+
<path
|
|
40
|
+
d="m 288.1745,-415.25889 h 250.17242 v -47.95638 H 288.1745 Z m 0,-103.90548 h 383.651 v -47.95638 h -383.651 z m 0,-103.90548 h 383.651 v -47.95638 h -383.651 z m -127.88367,462.77902 v -591.46196 q 0,-19.18255 14.38692,-33.56946 14.38691,-14.38692 33.56946,-14.38692 h 543.50558 q 19.18255,0 33.56946,14.38692 14.38692,14.38691 14.38692,33.56946 v 415.62191 q 0,19.18255 -14.38692,33.56947 -14.38691,14.38691 -33.56946,14.38691 H 288.1745 Z M 267.3934,-336.13088 H 751.75279 V -751.75279 H 208.24721 v 479.56375 z m -59.14619,0 v -415.62191 z"
|
|
41
|
+
id="path382"
|
|
42
|
+
style="stroke-width:0.799273" />
|
|
43
|
+
<path
|
|
44
|
+
style="fill:#000000;stroke-width:20"
|
|
45
|
+
d="m 99.34977,-880.52018 v 140.71172 l 140.71171,-140.71172 z"
|
|
46
|
+
id="path394" />
|
|
47
|
+
</svg>
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<svg
|
|
3
|
+
height="48"
|
|
4
|
+
viewBox="0 -960 960 960"
|
|
5
|
+
width="48"
|
|
6
|
+
version="1.1"
|
|
7
|
+
id="svg12"
|
|
8
|
+
sodipodi:docname="external_link.svg"
|
|
9
|
+
inkscape:version="1.2.2 (732a01da63, 2022-12-09)"
|
|
10
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
11
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
12
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
13
|
+
xmlns:svg="http://www.w3.org/2000/svg">
|
|
14
|
+
<defs
|
|
15
|
+
id="defs16" />
|
|
16
|
+
<sodipodi:namedview
|
|
17
|
+
id="namedview14"
|
|
18
|
+
pagecolor="#ffffff"
|
|
19
|
+
bordercolor="#000000"
|
|
20
|
+
borderopacity="0.25"
|
|
21
|
+
inkscape:showpageshadow="2"
|
|
22
|
+
inkscape:pageopacity="0.0"
|
|
23
|
+
inkscape:pagecheckerboard="0"
|
|
24
|
+
inkscape:deskcolor="#d1d1d1"
|
|
25
|
+
showgrid="true"
|
|
26
|
+
inkscape:zoom="4.359375"
|
|
27
|
+
inkscape:cx="-21.677419"
|
|
28
|
+
inkscape:cy="73.175627"
|
|
29
|
+
inkscape:window-width="1920"
|
|
30
|
+
inkscape:window-height="1017"
|
|
31
|
+
inkscape:window-x="1912"
|
|
32
|
+
inkscape:window-y="-8"
|
|
33
|
+
inkscape:window-maximized="1"
|
|
34
|
+
inkscape:current-layer="svg12">
|
|
35
|
+
<inkscape:grid
|
|
36
|
+
type="xygrid"
|
|
37
|
+
id="grid362" />
|
|
38
|
+
</sodipodi:namedview>
|
|
39
|
+
<path
|
|
40
|
+
d="m 595.00431,-626.20279 128.00001,-128.00001 -103.00001,-10e-6 10e-6,-59.99998 h 205.99999 l 2e-5,205.99999 -60.00002,-10e-6 V -712.2028 l -127.99999,128 z"
|
|
41
|
+
id="path301" />
|
|
42
|
+
<path
|
|
43
|
+
id="path10"
|
|
44
|
+
d="m 394,-789 q -26,40 -43,82.5 -17,42.5 -28,96.5 H 172 q 35,-70 91,-115 56,-45 131,-64 z m -242,239 h 160 q -3,24 -4,43.5 -1,19.5 -1,44.5 0,21 0.5,42.5 0.5,21.5 3.5,48.5 H 152 q -7,-24 -9.5,-44.5 -2.5,-20.5 -2.5,-46.5 0,-26 2.5,-45 2.5,-19 9.5,-43 z m 20,239 h 150 q 12,55 30,99 18,44 43,82 -85,-29 -135,-69.5 Q 210,-240 172,-311 Z m 212,0 h 193 q -15,64 -38.5,110.5 Q 515,-154 480,-118 445,-155 421.5,-203 398,-251 384,-311 Z m 255,0 h 149 q -35,65 -92.5,111 -57.5,46 -129.5,69 25,-38 42.5,-82 17.5,-44 30.5,-98 z M 480,-860 q -84,0 -157,30.5 -73,30.5 -127,84.5 -54,54 -85,126.5 -31,72.5 -31,156.5 0,84 31,157.5 31,73.5 85,127.5 54,54 127,85.5 73,31.5 157,31.5 84,0 157,-31.5 73,-31.5 127,-85.5 54,-54 85,-127.5 31,-73.5 31,-157.5 0,-17 -1,-34 -1,-17 -4,-34 h -62 q 4,17 5.5,32.5 1.5,15.5 1.5,35.5 0,26 -2.5,46.5 Q 815,-395 808,-371 H 648 q 3,-30 4.5,-49.5 1.5,-19.5 1.5,-41.5 0,-14 -0.5,-28.5 Q 653,-505 651,-530 h -61 q 2,21 3,36 1,15 1,32 0,21 -1,40.5 -1,19.5 -5,50.5 H 373 q -4,-31 -5,-50.5 -1,-19.5 -1,-40.5 0,-20 1,-38.5 1,-18.5 5,-49.5 h 177 v -60 H 384 q 20,-75 42,-119 22,-44 54,-71 21,22 38.5,49 17.5,27 31.5,56 v -159 q -17,-3 -34.5,-4.5 Q 498,-860 480,-860 Z"
|
|
45
|
+
style="display:inline" />
|
|
46
|
+
<path
|
|
47
|
+
style="display:inline;fill:#000000;stroke-width:26.5796"
|
|
48
|
+
d="m 80.286738,-860.28674 v 161.55451 L 239.7891,-859.71249 Z"
|
|
49
|
+
id="path364" />
|
|
50
|
+
</svg>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
<script>import AresHappy from "../assets/characters/ares/ares_happy.webp";
|
|
2
|
+
import { onMount } from "svelte";
|
|
3
|
+
import { dialogManager } from "./dialog_manager/DialogManagerStore";
|
|
4
|
+
let currentMessage = "";
|
|
5
|
+
dialogManager.currentMessage.subscribe((value) => {
|
|
6
|
+
currentMessage = value;
|
|
7
|
+
});
|
|
8
|
+
let currentPortrait = AresHappy;
|
|
9
|
+
dialogManager.currentPortrait.subscribe((value) => {
|
|
10
|
+
if (value) {
|
|
11
|
+
currentPortrait = value;
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
onMount(() => {
|
|
15
|
+
dialogManager.update(0);
|
|
16
|
+
});
|
|
17
|
+
let hidePercent = 100;
|
|
18
|
+
dialogManager.hidePercent.subscribe((value) => {
|
|
19
|
+
hidePercent = value * 0.4;
|
|
20
|
+
});
|
|
21
|
+
const onDialogClick = () => {
|
|
22
|
+
dialogManager.skipAnimation();
|
|
23
|
+
};
|
|
24
|
+
</script>
|
|
25
|
+
|
|
26
|
+
<div class="dialog-elements" style="--hidePercentWidth: -{hidePercent}vw; --hidePercentHeight: {hidePercent}vh">
|
|
27
|
+
<img src={currentPortrait} alt="Ares" class="dialog-portrait" />
|
|
28
|
+
<div class="card dialog-box variant-ghost-primary" on:click={onDialogClick}>
|
|
29
|
+
<div class="card dialog-name">
|
|
30
|
+
<p><b>Turnip</b></p>
|
|
31
|
+
</div>
|
|
32
|
+
<section class="dialog-padding">
|
|
33
|
+
<!-- Made for 140 characters, like the original tweets -->
|
|
34
|
+
{@html currentMessage}
|
|
35
|
+
</section>
|
|
36
|
+
</div>
|
|
37
|
+
</div>
|
|
38
|
+
|
|
39
|
+
<style>
|
|
40
|
+
.dialog-elements {
|
|
41
|
+
position: absolute;
|
|
42
|
+
z-index: 10;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.dialog-elements > img {
|
|
46
|
+
transform: translateX(var(--hidePercentWidth));
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.dialog-elements > div {
|
|
50
|
+
transform: translateY(var(--hidePercentHeight));
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.dialog-box {
|
|
54
|
+
background-color: rgb(var(--color-surface-500) / 0.9);
|
|
55
|
+
position: fixed;
|
|
56
|
+
bottom: 0;
|
|
57
|
+
left: var(--dialog-left-pad);
|
|
58
|
+
|
|
59
|
+
width: var(--dialog-box-width); /*75em + 4em padding*/
|
|
60
|
+
height: var(--dialog-box-height);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.dialog-box *,
|
|
64
|
+
.dialog-name * {
|
|
65
|
+
font-size: clamp(1em, 5vw, 1.3em);
|
|
66
|
+
line-height: 1.5em;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.dialog-padding :global(p) {
|
|
70
|
+
font-size: clamp(1em, 5vw, 1.3em) !important;
|
|
71
|
+
line-height: 1.5em !important;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.dialog-padding {
|
|
75
|
+
padding: clamp(1.5em, 5vw, 1.75em) clamp(0em, 5vw - 0.5em, 2em) 0;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.dialog-name {
|
|
79
|
+
@apply pt-2 px-4;
|
|
80
|
+
position: fixed;
|
|
81
|
+
|
|
82
|
+
/* for centering vertically */
|
|
83
|
+
transform: translateX(clamp(0em, 5vw - 0.5em, 1em)) translateY(-50%);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.dialog-portrait {
|
|
87
|
+
position: fixed;
|
|
88
|
+
bottom: 0;
|
|
89
|
+
left: clamp(-4rem, calc(5vw - 5em), 0rem);
|
|
90
|
+
height: clamp(30rem, 75vw, 40rem);
|
|
91
|
+
width: auto;
|
|
92
|
+
}
|
|
93
|
+
</style>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: Record<string, never>;
|
|
4
|
+
events: {
|
|
5
|
+
[evt: string]: CustomEvent<any>;
|
|
6
|
+
};
|
|
7
|
+
slots: {};
|
|
8
|
+
};
|
|
9
|
+
export type DialogOverlayProps = typeof __propDef.props;
|
|
10
|
+
export type DialogOverlayEvents = typeof __propDef.events;
|
|
11
|
+
export type DialogOverlaySlots = typeof __propDef.slots;
|
|
12
|
+
export default class DialogOverlay extends SvelteComponent<DialogOverlayProps, DialogOverlayEvents, DialogOverlaySlots> {
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
<script>import { LazyAssetStatus, LazyAssetType } from "./LazyAssetType";
|
|
2
|
+
import BgTiledAres from "../assets/bg_tiled/bg_tiled_ares.png";
|
|
3
|
+
import { onMount } from "svelte";
|
|
4
|
+
export let src;
|
|
5
|
+
export let alt;
|
|
6
|
+
export let width;
|
|
7
|
+
export let height;
|
|
8
|
+
export let props = {};
|
|
9
|
+
props = {
|
|
10
|
+
...props,
|
|
11
|
+
alt,
|
|
12
|
+
width,
|
|
13
|
+
height
|
|
14
|
+
};
|
|
15
|
+
let extension = "";
|
|
16
|
+
const getAssetType = () => {
|
|
17
|
+
const srcArray = src.split(".");
|
|
18
|
+
extension = srcArray[srcArray.length - 1];
|
|
19
|
+
switch (extension) {
|
|
20
|
+
case "png":
|
|
21
|
+
case "webp":
|
|
22
|
+
case "gif":
|
|
23
|
+
case "jpg":
|
|
24
|
+
return LazyAssetType.Image;
|
|
25
|
+
case "ogg":
|
|
26
|
+
case "webm":
|
|
27
|
+
case "mp4":
|
|
28
|
+
return LazyAssetType.Video;
|
|
29
|
+
default:
|
|
30
|
+
console.log(`Unknown asset type for: ${src}`);
|
|
31
|
+
return LazyAssetType.Unknown;
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
const assetType = getAssetType();
|
|
35
|
+
let actualSrc = "";
|
|
36
|
+
let status = LazyAssetStatus.Loading;
|
|
37
|
+
onMount(async () => {
|
|
38
|
+
const path = src.includes("https://") ? src : `${window.location.origin}${src}`;
|
|
39
|
+
switch (assetType) {
|
|
40
|
+
case LazyAssetType.Image: {
|
|
41
|
+
const img = new Image();
|
|
42
|
+
img.onload = () => {
|
|
43
|
+
actualSrc = path;
|
|
44
|
+
status = LazyAssetStatus.Loaded;
|
|
45
|
+
};
|
|
46
|
+
img.src = path;
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
case LazyAssetType.Video: {
|
|
50
|
+
fetch(path).then((resp) => resp.blob()).then((blob) => {
|
|
51
|
+
actualSrc = URL.createObjectURL(blob);
|
|
52
|
+
status = LazyAssetStatus.Loaded;
|
|
53
|
+
}).catch((error) => {
|
|
54
|
+
console.warn(error);
|
|
55
|
+
status = LazyAssetStatus.Error;
|
|
56
|
+
});
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
case LazyAssetType.Unknown: {
|
|
60
|
+
console.warn("Unknown asset: ", path);
|
|
61
|
+
status = LazyAssetStatus.Error;
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
</script>
|
|
67
|
+
|
|
68
|
+
{#if status === LazyAssetStatus.Loaded}
|
|
69
|
+
{#if assetType === LazyAssetType.Image}
|
|
70
|
+
<img src={actualSrc} alt="Placeholder image" {...props} />
|
|
71
|
+
{:else if assetType === LazyAssetType.Video}
|
|
72
|
+
<video playsinline autoplay muted loop {...props} poster={BgTiledAres} style="object-fit: scale-down">
|
|
73
|
+
<source src={actualSrc} type={`video/${extension}`} />
|
|
74
|
+
Your browser does not support the video tag.
|
|
75
|
+
</video>
|
|
76
|
+
{:else}
|
|
77
|
+
<img src={actualSrc} alt="Placeholder image" />
|
|
78
|
+
{/if}
|
|
79
|
+
{:else}
|
|
80
|
+
<img class="rotate" src={BgTiledAres} {...props} style="object-fit: scale-down" />
|
|
81
|
+
{/if}
|
|
82
|
+
|
|
83
|
+
<style>
|
|
84
|
+
.rotate {
|
|
85
|
+
animation: rotation 4s infinite linear;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
@keyframes rotation {
|
|
89
|
+
from {
|
|
90
|
+
transform: rotate(0deg);
|
|
91
|
+
}
|
|
92
|
+
to {
|
|
93
|
+
transform: rotate(359deg);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
</style>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
src: string;
|
|
5
|
+
alt: string;
|
|
6
|
+
width: string;
|
|
7
|
+
height: string;
|
|
8
|
+
props?: {} | undefined;
|
|
9
|
+
};
|
|
10
|
+
events: {
|
|
11
|
+
[evt: string]: CustomEvent<any>;
|
|
12
|
+
};
|
|
13
|
+
slots: {};
|
|
14
|
+
};
|
|
15
|
+
export type LazyAssetProps = typeof __propDef.props;
|
|
16
|
+
export type LazyAssetEvents = typeof __propDef.events;
|
|
17
|
+
export type LazyAssetSlots = typeof __propDef.slots;
|
|
18
|
+
export default class LazyAsset extends SvelteComponent<LazyAssetProps, LazyAssetEvents, LazyAssetSlots> {
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export var LazyAssetType;
|
|
2
|
+
(function (LazyAssetType) {
|
|
3
|
+
LazyAssetType[LazyAssetType["Image"] = 0] = "Image";
|
|
4
|
+
LazyAssetType[LazyAssetType["Video"] = 1] = "Video";
|
|
5
|
+
LazyAssetType[LazyAssetType["Unknown"] = 2] = "Unknown";
|
|
6
|
+
})(LazyAssetType || (LazyAssetType = {}));
|
|
7
|
+
export var LazyAssetStatus;
|
|
8
|
+
(function (LazyAssetStatus) {
|
|
9
|
+
LazyAssetStatus[LazyAssetStatus["Loading"] = 0] = "Loading";
|
|
10
|
+
LazyAssetStatus[LazyAssetStatus["Loaded"] = 1] = "Loaded";
|
|
11
|
+
LazyAssetStatus[LazyAssetStatus["Error"] = 2] = "Error";
|
|
12
|
+
})(LazyAssetStatus || (LazyAssetStatus = {}));
|