From 59bece3966d76911b39692bc37d7807b6fa7bb89 Mon Sep 17 00:00:00 2001 From: thepaperpilot Date: Mon, 18 Jul 2022 02:48:03 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20profectu?= =?UTF-8?q?s-engine/profectus-docs@33366551fb08e4b23f718e6ecd5fdaf50057135?= =?UTF-8?q?a=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 404.html | 2 +- api/classes/lib/break_eternity.default.html | 2 +- api/components/ContextComponent.html | 2 +- api/components/InfoComponent.html | 2 +- api/components/LayerComponent.html | 2 +- api/components/MarkNodeComponent.html | 2 +- api/components/ModalComponent.html | 2 +- api/components/NodeComponent.html | 2 +- api/components/SaveComponent.html | 2 +- api/components/fields/DangerButtonComponent.html | 2 +- api/components/fields/FeedbackButtonComponent.html | 2 +- api/components/fields/SelectComponent.html | 2 +- api/components/fields/SliderComponent.html | 2 +- api/components/fields/TextComponent.html | 2 +- api/components/fields/ToggleComponent.html | 2 +- api/components/layout/CollapsibleComponent.html | 2 +- api/components/layout/ColumnComponent.html | 2 +- api/components/layout/RowComponent.html | 2 +- api/components/layout/SpacerComponent.html | 2 +- api/components/layout/StickyComponent.html | 2 +- api/components/layout/VerticalRuleComponent.html | 2 +- api/components/math/FloorComponent.html | 2 +- api/components/math/SqrtComponent.html | 2 +- api/enums/data/themes.Themes.html | 2 +- api/enums/features/boards/board.ProgressDisplay.html | 2 +- api/enums/features/boards/board.Shape.html | 2 +- api/enums/features/feature.Visibility.html | 2 +- .../features/milestones/milestone.MilestoneDisplay.html | 2 +- api/enums/util/common.Direction.html | 2 +- api/interfaces/data/common.LayerTreeNodeOptions.html | 2 +- api/interfaces/data/common.ResetButtonOptions.html | 2 +- api/interfaces/data/common.Section.html | 2 +- api/interfaces/data/themes.Theme.html | 2 +- api/interfaces/data/themes.ThemeVars.html | 2 +- .../achievements/achievement.AchievementOptions.html | 2 +- .../features/achievements/achievement.BaseAchievement.html | 2 +- api/interfaces/features/bars/bar.BarOptions.html | 2 +- api/interfaces/features/bars/bar.BaseBar.html | 2 +- api/interfaces/features/boards/board.BaseBoard.html | 2 +- .../features/boards/board.BaseBoardNodeAction.html | 2 +- api/interfaces/features/boards/board.BaseNodeType.html | 2 +- api/interfaces/features/boards/board.BoardNode.html | 2 +- .../features/boards/board.BoardNodeActionOptions.html | 2 +- api/interfaces/features/boards/board.BoardNodeLink.html | 2 +- api/interfaces/features/boards/board.BoardOptions.html | 2 +- api/interfaces/features/boards/board.NodeLabel.html | 2 +- api/interfaces/features/boards/board.NodeTypeOptions.html | 2 +- api/interfaces/features/buyable.BaseBuyable.html | 2 +- api/interfaces/features/buyable.BuyableOptions.html | 2 +- .../features/challenges/challenge.BaseChallenge.html | 2 +- .../features/challenges/challenge.ChallengeOptions.html | 2 +- .../features/clickables/clickable.BaseClickable.html | 2 +- .../features/clickables/clickable.ClickableOptions.html | 2 +- api/interfaces/features/conversion.BaseConversion.html | 2 +- api/interfaces/features/conversion.ConversionOptions.html | 2 +- api/interfaces/features/conversion.ScalingFunction.html | 2 +- api/interfaces/features/grids/grid.BaseGrid.html | 2 +- api/interfaces/features/grids/grid.GridCell.html | 2 +- api/interfaces/features/grids/grid.GridOptions.html | 2 +- api/interfaces/features/hotkey.BaseHotkey.html | 2 +- api/interfaces/features/hotkey.HotkeyOptions.html | 2 +- api/interfaces/features/infoboxes/infobox.BaseInfobox.html | 2 +- .../features/infoboxes/infobox.InfoboxOptions.html | 2 +- api/interfaces/features/links/links.BaseLinks.html | 2 +- api/interfaces/features/links/links.Link.html | 2 +- api/interfaces/features/links/links.LinksOptions.html | 2 +- .../features/milestones/milestone.BaseMilestone.html | 2 +- .../features/milestones/milestone.MilestoneOptions.html | 2 +- .../features/particles/particles.BaseParticles.html | 2 +- .../features/particles/particles.ParticlesOptions.html | 2 +- api/interfaces/features/reset.BaseReset.html | 2 +- api/interfaces/features/reset.ResetOptions.html | 2 +- api/interfaces/features/resources/resource.Resource.html | 2 +- api/interfaces/features/tabs/tab.BaseTab.html | 2 +- api/interfaces/features/tabs/tab.TabOptions.html | 2 +- api/interfaces/features/tabs/tabFamily.BaseTabButton.html | 2 +- api/interfaces/features/tabs/tabFamily.BaseTabFamily.html | 2 +- .../features/tabs/tabFamily.TabButtonOptions.html | 2 +- .../features/tabs/tabFamily.TabFamilyOptions.html | 2 +- api/interfaces/features/tooltips/tooltip.BaseTooltip.html | 2 +- .../features/tooltips/tooltip.TooltipOptions.html | 2 +- api/interfaces/features/trees/tree.BaseTree.html | 2 +- api/interfaces/features/trees/tree.BaseTreeNode.html | 2 +- api/interfaces/features/trees/tree.TreeBranch.html | 2 +- api/interfaces/features/trees/tree.TreeNodeOptions.html | 2 +- api/interfaces/features/trees/tree.TreeOptions.html | 2 +- api/interfaces/features/upgrades/upgrade.BaseUpgrade.html | 2 +- .../features/upgrades/upgrade.UpgradeOptions.html | 2 +- api/interfaces/game/events.GlobalEvents.html | 2 +- api/interfaces/game/layers.BaseLayer.html | 2 +- api/interfaces/game/layers.FeatureNode.html | 2 +- api/interfaces/game/layers.LayerEvents.html | 2 +- api/interfaces/game/layers.LayerOptions.html | 2 +- api/interfaces/game/layers.Position.html | 2 +- api/interfaces/game/modifiers.Modifier.html | 2 +- api/interfaces/game/player.PlayerData.html | 2 +- api/interfaces/game/settings.Settings.html | 2 +- api/interfaces/game/state.Transient.html | 2 +- api/interfaces/lib/pwa-register.RegisterSWOptions.html | 2 +- api/modules/data/common.html | 2 +- api/modules/data/projEntry.html | 2 +- api/modules/data/themes.html | 2 +- api/modules/features/achievements/AchievementComponent.html | 2 +- api/modules/features/achievements/achievement.html | 2 +- api/modules/features/bars/BarComponent.html | 2 +- api/modules/features/bars/bar.html | 2 +- api/modules/features/boards/BoardComponent.html | 2 +- api/modules/features/boards/BoardLinkComponent.html | 2 +- api/modules/features/boards/BoardNodeComponent.html | 2 +- api/modules/features/boards/board.html | 2 +- api/modules/features/buyable.html | 2 +- api/modules/features/challenges/ChallengeComponent.html | 2 +- api/modules/features/challenges/challenge.html | 2 +- api/modules/features/clickables/ClickableComponent.html | 2 +- api/modules/features/clickables/clickable.html | 2 +- api/modules/features/conversion.html | 2 +- api/modules/features/feature.html | 2 +- api/modules/features/grids/GridCellComponent.html | 2 +- api/modules/features/grids/GridComponent.html | 2 +- api/modules/features/grids/grid.html | 2 +- api/modules/features/hotkey.html | 2 +- api/modules/features/infoboxes/InfoboxComponent.html | 2 +- api/modules/features/infoboxes/infobox.html | 2 +- api/modules/features/links/LinkComponent.html | 2 +- api/modules/features/links/LinksComponent.html | 2 +- api/modules/features/links/links.html | 2 +- api/modules/features/milestones/MilestoneComponent.html | 2 +- api/modules/features/milestones/milestone.html | 2 +- api/modules/features/particles/ParticlesComponent.html | 2 +- api/modules/features/particles/particles.html | 2 +- api/modules/features/reset.html | 2 +- api/modules/features/resources/MainDisplayComponent.html | 2 +- api/modules/features/resources/ResourceComponent.html | 2 +- api/modules/features/resources/resource.html | 2 +- api/modules/features/tabs/TabButtonComponent.html | 2 +- api/modules/features/tabs/TabComponent.html | 2 +- api/modules/features/tabs/TabFamilyComponent.html | 2 +- api/modules/features/tabs/tab.html | 2 +- api/modules/features/tabs/tabFamily.html | 2 +- api/modules/features/tooltips/TooltipComponent.html | 2 +- api/modules/features/tooltips/tooltip.html | 2 +- api/modules/features/trees/TreeComponent.html | 2 +- api/modules/features/trees/TreeNodeComponent.html | 2 +- api/modules/features/trees/tree.html | 2 +- api/modules/features/upgrades/UpgradeComponent.html | 2 +- api/modules/features/upgrades/upgrade.html | 2 +- api/modules/game/events.html | 2 +- api/modules/game/layers.html | 2 +- api/modules/game/modifiers.html | 2 +- api/modules/game/notifications.html | 2 +- api/modules/game/persistence.html | 2 +- api/modules/game/player.html | 2 +- api/modules/game/settings.html | 2 +- api/modules/game/state.html | 2 +- api/modules/lib/break_eternity.html | 2 +- api/modules/lib/pwa-register.html | 2 +- api/modules/util/bignum.html | 2 +- api/modules/util/break_eternity.html | 2 +- api/modules/util/common.html | 2 +- api/modules/util/computed.html | 2 +- api/modules/util/proxies.html | 2 +- api/modules/util/save.html | 2 +- api/modules/util/vue.html | 2 +- api/overview.html | 2 +- ...uide_advanced-concepts_creating-features.md.0d34bbd9.js} | 2 +- ...advanced-concepts_creating-features.md.0d34bbd9.lean.js} | 2 +- ...> guide_advanced-concepts_dynamic-layers.md.b1fdfd3f.js} | 2 +- ...de_advanced-concepts_dynamic-layers.md.b1fdfd3f.lean.js} | 2 +- ...=> guide_creating-your-project_changelog.md.c0fb8c8f.js} | 2 +- ...ide_creating-your-project_changelog.md.c0fb8c8f.lean.js} | 2 +- ...uide_creating-your-project_project-entry.md.06b07710.js} | 2 +- ...creating-your-project_project-entry.md.06b07710.lean.js} | 2 +- ...guide_creating-your-project_project-info.md.2c1855e8.js} | 2 +- ..._creating-your-project_project-info.md.2c1855e8.lean.js} | 2 +- ...js => guide_creating-your-project_themes.md.ae164b17.js} | 2 +- ... guide_creating-your-project_themes.md.ae164b17.lean.js} | 2 +- ....js => guide_creating-your-project_utils.md.cbb851b0.js} | 2 +- ...> guide_creating-your-project_utils.md.cbb851b0.lean.js} | 2 +- ...379.js => guide_getting-started_examples.md.4df3b8a9.js} | 2 +- ...s => guide_getting-started_examples.md.4df3b8a9.lean.js} | 2 +- assets/guide_getting-started_setup.md.18784fa3.js | 1 - assets/guide_getting-started_setup.md.b46876d2.js | 1 + ...n.js => guide_getting-started_setup.md.b46876d2.lean.js} | 2 +- ...55d.js => guide_getting-started_updating.md.954bab42.js} | 2 +- ...s => guide_getting-started_updating.md.954bab42.lean.js} | 2 +- ...js => guide_important-concepts_coercable.md.2f60c9ea.js} | 2 +- ... guide_important-concepts_coercable.md.2f60c9ea.lean.js} | 2 +- ....js => guide_important-concepts_features.md.484070c2.js} | 2 +- ...> guide_important-concepts_features.md.484070c2.lean.js} | 2 +- ...09.js => guide_important-concepts_layers.md.7de77bbd.js} | 2 +- ... => guide_important-concepts_layers.md.7de77bbd.lean.js} | 2 +- ... => guide_important-concepts_persistence.md.acc0f0ee.js} | 2 +- ...uide_important-concepts_persistence.md.acc0f0ee.lean.js} | 2 +- ...s => guide_important-concepts_reactivity.md.ff5cecab.js} | 2 +- ...guide_important-concepts_reactivity.md.ff5cecab.lean.js} | 2 +- ...uide_index.md.62e0b322.js => guide_index.md.908ddb01.js} | 2 +- ....md.62e0b322.lean.js => guide_index.md.908ddb01.lean.js} | 2 +- ...b623d4.js => guide_recipes_save-progress.md.3e6a24a4.js} | 2 +- ...n.js => guide_recipes_save-progress.md.3e6a24a4.lean.js} | 2 +- assets/{index.md.84447adb.js => index.md.f650a852.js} | 2 +- ...{index.md.84447adb.lean.js => index.md.f650a852.lean.js} | 2 +- guide/advanced-concepts/creating-features.html | 6 +++--- guide/advanced-concepts/dynamic-layers.html | 6 +++--- guide/creating-your-project/changelog.html | 6 +++--- guide/creating-your-project/project-entry.html | 6 +++--- guide/creating-your-project/project-info.html | 6 +++--- guide/creating-your-project/themes.html | 6 +++--- guide/creating-your-project/utils.html | 6 +++--- guide/getting-started/examples.html | 6 +++--- guide/getting-started/setup.html | 6 +++--- guide/getting-started/updating.html | 6 +++--- guide/important-concepts/coercable.html | 6 +++--- guide/important-concepts/features.html | 6 +++--- guide/important-concepts/layers.html | 6 +++--- guide/important-concepts/persistence.html | 6 +++--- guide/important-concepts/reactivity.html | 6 +++--- guide/index.html | 6 +++--- guide/recipes/save-progress.html | 6 +++--- hashmap.json | 2 +- index.html | 4 ++-- 220 files changed, 254 insertions(+), 254 deletions(-) rename assets/{guide_advanced-concepts_creating-features.md.0ca7d072.js => guide_advanced-concepts_creating-features.md.0d34bbd9.js} (94%) rename assets/{guide_advanced-concepts_creating-features.md.0ca7d072.lean.js => guide_advanced-concepts_creating-features.md.0d34bbd9.lean.js} (85%) rename assets/{guide_advanced-concepts_dynamic-layers.md.d3364479.js => guide_advanced-concepts_dynamic-layers.md.b1fdfd3f.js} (98%) rename assets/{guide_advanced-concepts_dynamic-layers.md.d3364479.lean.js => guide_advanced-concepts_dynamic-layers.md.b1fdfd3f.lean.js} (84%) rename assets/{guide_creating-your-project_changelog.md.5749200d.js => guide_creating-your-project_changelog.md.c0fb8c8f.js} (98%) rename assets/{guide_creating-your-project_changelog.md.5749200d.lean.js => guide_creating-your-project_changelog.md.c0fb8c8f.lean.js} (84%) rename assets/{guide_creating-your-project_project-entry.md.3bed1026.js => guide_creating-your-project_project-entry.md.06b07710.js} (98%) rename assets/{guide_creating-your-project_project-entry.md.3bed1026.lean.js => guide_creating-your-project_project-entry.md.06b07710.lean.js} (90%) rename assets/{guide_creating-your-project_project-info.md.7c9b4461.js => guide_creating-your-project_project-info.md.2c1855e8.js} (99%) rename assets/{guide_creating-your-project_project-info.md.7c9b4461.lean.js => guide_creating-your-project_project-info.md.2c1855e8.lean.js} (95%) rename assets/{guide_creating-your-project_themes.md.43025d93.js => guide_creating-your-project_themes.md.ae164b17.js} (97%) rename assets/{guide_creating-your-project_themes.md.43025d93.lean.js => guide_creating-your-project_themes.md.ae164b17.lean.js} (90%) rename assets/{guide_creating-your-project_utils.md.2595396c.js => guide_creating-your-project_utils.md.cbb851b0.js} (95%) rename assets/{guide_creating-your-project_utils.md.2595396c.lean.js => guide_creating-your-project_utils.md.cbb851b0.lean.js} (95%) rename assets/{guide_getting-started_examples.md.18cf1379.js => guide_getting-started_examples.md.4df3b8a9.js} (94%) rename assets/{guide_getting-started_examples.md.18cf1379.lean.js => guide_getting-started_examples.md.4df3b8a9.lean.js} (86%) delete mode 100644 assets/guide_getting-started_setup.md.18784fa3.js create mode 100644 assets/guide_getting-started_setup.md.b46876d2.js rename assets/{guide_getting-started_setup.md.18784fa3.lean.js => guide_getting-started_setup.md.b46876d2.lean.js} (91%) rename assets/{guide_getting-started_updating.md.1b35755d.js => guide_getting-started_updating.md.954bab42.js} (97%) rename assets/{guide_getting-started_updating.md.1b35755d.lean.js => guide_getting-started_updating.md.954bab42.lean.js} (88%) rename assets/{guide_important-concepts_coercable.md.b3e4b201.js => guide_important-concepts_coercable.md.2f60c9ea.js} (98%) rename assets/{guide_important-concepts_coercable.md.b3e4b201.lean.js => guide_important-concepts_coercable.md.2f60c9ea.lean.js} (89%) rename assets/{guide_important-concepts_features.md.97d5dfdd.js => guide_important-concepts_features.md.484070c2.js} (99%) rename assets/{guide_important-concepts_features.md.97d5dfdd.lean.js => guide_important-concepts_features.md.484070c2.lean.js} (86%) rename assets/{guide_important-concepts_layers.md.4c778709.js => guide_important-concepts_layers.md.7de77bbd.js} (96%) rename assets/{guide_important-concepts_layers.md.4c778709.lean.js => guide_important-concepts_layers.md.7de77bbd.lean.js} (86%) rename assets/{guide_important-concepts_persistence.md.b6543d35.js => guide_important-concepts_persistence.md.acc0f0ee.js} (97%) rename assets/{guide_important-concepts_persistence.md.b6543d35.lean.js => guide_important-concepts_persistence.md.acc0f0ee.lean.js} (84%) rename assets/{guide_important-concepts_reactivity.md.7dc860e4.js => guide_important-concepts_reactivity.md.ff5cecab.js} (97%) rename assets/{guide_important-concepts_reactivity.md.7dc860e4.lean.js => guide_important-concepts_reactivity.md.ff5cecab.lean.js} (86%) rename assets/{guide_index.md.62e0b322.js => guide_index.md.908ddb01.js} (98%) rename assets/{guide_index.md.62e0b322.lean.js => guide_index.md.908ddb01.lean.js} (89%) rename assets/{guide_recipes_save-progress.md.1eb623d4.js => guide_recipes_save-progress.md.3e6a24a4.js} (99%) rename assets/{guide_recipes_save-progress.md.1eb623d4.lean.js => guide_recipes_save-progress.md.3e6a24a4.lean.js} (90%) rename assets/{index.md.84447adb.js => index.md.f650a852.js} (94%) rename assets/{index.md.84447adb.lean.js => index.md.f650a852.lean.js} (94%) diff --git a/404.html b/404.html index 57977c80..46bbd49b 100644 --- a/404.html +++ b/404.html @@ -19,7 +19,7 @@
Skip to content

404

PAGE NOT FOUND

But if you don't change your direction, and if you keep looking, you may end up where you are heading.
- + diff --git a/api/classes/lib/break_eternity.default.html b/api/classes/lib/break_eternity.default.html index 9962ebfe..73d3992d 100644 --- a/api/classes/lib/break_eternity.default.html +++ b/api/classes/lib/break_eternity.default.html @@ -20,7 +20,7 @@
Skip to content
On this page

Class: default

lib/break_eternity.default

The Decimal's value is simply mantissa * 10^exponent.

Constructors

constructor

• new default(value?)

Parameters

NameType
value?DecimalSource

Properties

layer

• layer: number = Number.NaN

Defined in

profectus/src/lib/break_eternity.ts:507


mag

• mag: number = Number.NaN

Defined in

profectus/src/lib/break_eternity.ts:506


sign

• sign: number = Number.NaN

Defined in

profectus/src/lib/break_eternity.ts:505


dInf

â–ª Static Readonly dInf: default

Defined in

profectus/src/lib/break_eternity.ts:500


dNaN

â–ª Static Readonly dNaN: default

Defined in

profectus/src/lib/break_eternity.ts:499


dNegInf

â–ª Static Readonly dNegInf: default

Defined in

profectus/src/lib/break_eternity.ts:501


dNegOne

â–ª Static Readonly dNegOne: default

Defined in

profectus/src/lib/break_eternity.ts:496


dNumberMax

â–ª Static Readonly dNumberMax: default

Defined in

profectus/src/lib/break_eternity.ts:502


dNumberMin

â–ª Static Readonly dNumberMin: default

Defined in

profectus/src/lib/break_eternity.ts:503


dOne

â–ª Static Readonly dOne: default

Defined in

profectus/src/lib/break_eternity.ts:495


dTen

â–ª Static Readonly dTen: default

Defined in

profectus/src/lib/break_eternity.ts:498


dTwo

â–ª Static Readonly dTwo: default

Defined in

profectus/src/lib/break_eternity.ts:497


dZero

â–ª Static Readonly dZero: default

Defined in

profectus/src/lib/break_eternity.ts:494

Accessors

e

• get e(): number

Returns

number

• set e(value): void

Parameters

NameType
valuenumber

Returns

void


exponent

• get exponent(): number

Returns

number

• set exponent(value): void

Parameters

NameType
valuenumber

Returns

void


m

• get m(): number

Returns

number

• set m(value): void

Parameters

NameType
valuenumber

Returns

void


mantissa

• get mantissa(): number

Returns

number

• set mantissa(value): void

Parameters

NameType
valuenumber

Returns

void


s

• get s(): number

Returns

number

• set s(value): void

Parameters

NameType
valuenumber

Returns

void

Methods

abs

â–¸ abs(): default

Returns

default


absLog10

â–¸ absLog10(): default

Returns

default


acos

â–¸ acos(): default

Returns

default


acosh

â–¸ acosh(): default

Returns

default


add

â–¸ add(value): default

Parameters

NameType
valueDecimalSource

Returns

default


ascensionPenalty

â–¸ ascensionPenalty(ascensions): default

Joke function from Realm Grinder

Parameters

NameType
ascensionsDecimalSource

Returns

default


asin

â–¸ asin(): default

Returns

default


asinh

â–¸ asinh(): default

Returns

default


atan

â–¸ atan(): default

Returns

default


atanh

â–¸ atanh(): default

Returns

default


cbrt

â–¸ cbrt(): default

Returns

default


ceil

â–¸ ceil(): default

Returns

default


clamp

â–¸ clamp(min, max): default

Parameters

NameType
minDecimalSource
maxDecimalSource

Returns

default


clampMax

â–¸ clampMax(max): default

Parameters

NameType
maxDecimalSource

Returns

default


clampMin

â–¸ clampMin(min): default

Parameters

NameType
minDecimalSource

Returns

default


cmp

â–¸ cmp(value): CompareResult

-1 for less than value, 0 for equals value, 1 for greater than value

Parameters

NameType
valueDecimalSource

Returns

CompareResult


cmp_tolerance

â–¸ cmp_tolerance(value, tolerance): CompareResult

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

CompareResult


cmpabs

â–¸ cmpabs(value): CompareResult

Parameters

NameType
valueDecimalSource

Returns

CompareResult


compare

â–¸ compare(value): CompareResult

Parameters

NameType
valueDecimalSource

Returns

CompareResult


compare_tolerance

â–¸ compare_tolerance(value, tolerance): CompareResult

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

CompareResult


cos

â–¸ cos(): default

Returns

default


cosh

â–¸ cosh(): default

Returns

default


cube

â–¸ cube(): default

Returns

default


div

â–¸ div(value): default

Parameters

NameType
valueDecimalSource

Returns

default


divide

â–¸ divide(value): default

Parameters

NameType
valueDecimalSource

Returns

default


divideBy

â–¸ divideBy(value): default

Parameters

NameType
valueDecimalSource

Returns

default


dividedBy

â–¸ dividedBy(value): default

Parameters

NameType
valueDecimalSource

Returns

default


egg

â–¸ egg(): default

Joke function from Cookie Clicker. It's 'egg'

Returns

default


eq

â–¸ eq(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


eq_tolerance

â–¸ eq_tolerance(value, tolerance): boolean

Tolerance is a relative tolerance, multiplied by the greater of the magnitudes of the two arguments. For example, if you put in 1e-9, then any number closer to the larger number than (larger number)*1e-9 will be considered equal.

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

boolean


equals

â–¸ equals(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


equals_tolerance

â–¸ equals_tolerance(value, tolerance): boolean

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

boolean


exp

â–¸ exp(): default

Returns

default


factorial

â–¸ factorial(): default

Returns

default


floor

â–¸ floor(): default

Returns

default


fromComponents

â–¸ fromComponents(sign, layer, mag): default

Parameters

NameType
signnumber
layernumber
magnumber

Returns

default


fromComponents_noNormalize

â–¸ fromComponents_noNormalize(sign, layer, mag): default

Parameters

NameType
signnumber
layernumber
magnumber

Returns

default


fromDecimal

â–¸ fromDecimal(value): default

Parameters

NameType
valuedefault

Returns

default


fromMantissaExponent

â–¸ fromMantissaExponent(mantissa, exponent): default

Parameters

NameType
mantissanumber
exponentnumber

Returns

default


fromMantissaExponent_noNormalize

â–¸ fromMantissaExponent_noNormalize(mantissa, exponent): default

Parameters

NameType
mantissanumber
exponentnumber

Returns

default


fromNumber

â–¸ fromNumber(value): default

Parameters

NameType
valuenumber

Returns

default


fromString

â–¸ fromString(value): default

Parameters

NameType
valuestring

Returns

default


fromValue

â–¸ fromValue(value): default

Parameters

NameType
valueDecimalSource

Returns

default


gamma

â–¸ gamma(): default

Returns

default


greaterThan

â–¸ greaterThan(other): boolean

Parameters

NameType
otherDecimalSource

Returns

boolean


greaterThanOrEqualTo

â–¸ greaterThanOrEqualTo(other): boolean

Parameters

NameType
otherDecimalSource

Returns

boolean


gt

â–¸ gt(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


gt_tolerance

â–¸ gt_tolerance(value, tolerance): boolean

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

boolean


gte

â–¸ gte(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


gte_tolerance

â–¸ gte_tolerance(value, tolerance): boolean

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

boolean


isFinite

â–¸ isFinite(): boolean

Returns

boolean


isNan

â–¸ isNan(): boolean

Returns

boolean


iteratedexp

â–¸ iteratedexp(height?, payload?): default

Parameters

NameTypeDefault value
heightnumber2
payloaddefaultundefined

Returns

default


iteratedlog

â–¸ iteratedlog(base?, times?): default

Parameters

NameTypeDefault value
baseDecimalSource10
timesnumber1

Returns

default


lambertw

â–¸ lambertw(): default

Returns

default


layeradd

â–¸ layeradd(diff, base): default

Parameters

NameType
diffnumber
baseDecimalSource

Returns

default


layeradd10

â–¸ layeradd10(diff): default

Parameters

NameType
diffDecimalSource

Returns

default


lessThan

â–¸ lessThan(other): boolean

Parameters

NameType
otherDecimalSource

Returns

boolean


lessThanOrEqualTo

â–¸ lessThanOrEqualTo(other): boolean

Parameters

NameType
otherDecimalSource

Returns

boolean


ln

â–¸ ln(): default

Returns

default


lngamma

â–¸ lngamma(): default

Returns

default


log

â–¸ log(base): default

Parameters

NameType
baseDecimalSource

Returns

default


log10

â–¸ log10(): default

Returns

default


log2

â–¸ log2(): default

Returns

default


logarithm

â–¸ logarithm(base): default

Parameters

NameType
baseDecimalSource

Returns

default


lt

â–¸ lt(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


lt_tolerance

â–¸ lt_tolerance(value, tolerance): boolean

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

boolean


lte

â–¸ lte(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


lte_tolerance

â–¸ lte_tolerance(value, tolerance): boolean

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

boolean


magnitudeWithDecimalPlaces

â–¸ magnitudeWithDecimalPlaces(places): number

Parameters

NameType
placesnumber

Returns

number


mantissaWithDecimalPlaces

â–¸ mantissaWithDecimalPlaces(places): number

Parameters

NameType
placesnumber

Returns

number


max

â–¸ max(value): default

Parameters

NameType
valueDecimalSource

Returns

default


maxabs

â–¸ maxabs(value): default

Parameters

NameType
valueDecimalSource

Returns

default


min

â–¸ min(value): default

Parameters

NameType
valueDecimalSource

Returns

default


minabs

â–¸ minabs(value): default

Parameters

NameType
valueDecimalSource

Returns

default


minus

â–¸ minus(value): default

Parameters

NameType
valueDecimalSource

Returns

default


mul

â–¸ mul(value): default

Parameters

NameType
valueDecimalSource

Returns

default


multiply

â–¸ multiply(value): default

Parameters

NameType
valueDecimalSource

Returns

default


neg

â–¸ neg(): default

Returns

default


negate

â–¸ negate(): default

Returns

default


negated

â–¸ negated(): default

Returns

default


neq

â–¸ neq(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


neq_tolerance

â–¸ neq_tolerance(value, tolerance): boolean

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

boolean


normalize

â–¸ normalize(): default

Returns

default


notEquals

â–¸ notEquals(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


notEquals_tolerance

â–¸ notEquals_tolerance(value, tolerance): boolean

Parameters

NameType
valueDecimalSource
tolerancenumber

Returns

boolean


pLog10

â–¸ pLog10(): default

Returns

default


pentate

â–¸ pentate(height?, payload?): default

Parameters

NameTypeDefault value
heightnumber2
payloadDecimalSourceundefined

Returns

default


plus

â–¸ plus(value): default

Parameters

NameType
valueDecimalSource

Returns

default


pow

â–¸ pow(value): default

Parameters

NameType
valueDecimalSource

Returns

default


pow10

â–¸ pow10(): default

Returns

default


pow_base

â–¸ pow_base(value): default

Parameters

NameType
valueDecimalSource

Returns

default


recip

â–¸ recip(): default

Returns

default


reciprocal

â–¸ reciprocal(): default

Returns

default


reciprocate

â–¸ reciprocate(): default

Returns

default


root

â–¸ root(value): default

Parameters

NameType
valueDecimalSource

Returns

default


round

â–¸ round(): default

Returns

default


sgn

â–¸ sgn(): number

Returns

number


sin

â–¸ sin(): default

Returns

default


sinh

â–¸ sinh(): default

Returns

default


slog

â–¸ slog(base?): default

Parameters

NameTypeDefault value
baseDecimalSource10

Returns

default


sqr

â–¸ sqr(): default

Returns

default


sqrt

â–¸ sqrt(): default

Returns

default


ssqrt

â–¸ ssqrt(): default

Returns

default


sub

â–¸ sub(value): default

Parameters

NameType
valueDecimalSource

Returns

default


subtract

â–¸ subtract(value): default

Parameters

NameType
valueDecimalSource

Returns

default


tan

â–¸ tan(): default

Returns

default


tanh

â–¸ tanh(): default

Returns

default


tetrate

â–¸ tetrate(height?, payload?): default

Parameters

NameTypeDefault value
heightnumber2
payloadDecimalSourceundefined

Returns

default


times

â–¸ times(value): default

Parameters

NameType
valueDecimalSource

Returns

default


toExponential

â–¸ toExponential(places): string

Parameters

NameType
placesnumber

Returns

string


toFixed

â–¸ toFixed(places): string

Parameters

NameType
placesnumber

Returns

string


toJSON

â–¸ toJSON(): string

Returns

string


toNumber

â–¸ toNumber(): number

Returns

number


toPrecision

â–¸ toPrecision(places): string

Parameters

NameType
placesnumber

Returns

string


toString

â–¸ toString(): string

Returns

string


toStringWithDecimalPlaces

â–¸ toStringWithDecimalPlaces(places): string

Parameters

NameType
placesnumber

Returns

string


trunc

â–¸ trunc(): default

Returns

default


valueOf

â–¸ valueOf(): string

Returns

string


abs

â–¸ Static abs(value): default

Parameters

NameType
valueDecimalSource

Returns

default


absLog10

â–¸ Static absLog10(value): default

Parameters

NameType
valueDecimalSource

Returns

default


add

â–¸ Static add(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


affordArithmeticSeries

â–¸ Static affordArithmeticSeries(resourcesAvailable, priceStart, priceAdd, currentOwned): default

If you're willing to spend 'resourcesAvailable' and want to buy something with additively increasing cost each purchase (start at priceStart, add by priceAdd, already own currentOwned), how much of it can you buy?

Parameters

NameType
resourcesAvailableDecimalSource
priceStartDecimalSource
priceAddDecimalSource
currentOwnedDecimalSource

Returns

default


affordArithmeticSeries_core

â–¸ Static affordArithmeticSeries_core(resourcesAvailable, priceStart, priceAdd, currentOwned): default

Parameters

NameType
resourcesAvailabledefault
priceStartdefault
priceAdddefault
currentOwneddefault

Returns

default


affordGeometricSeries

â–¸ Static affordGeometricSeries(resourcesAvailable, priceStart, priceRatio, currentOwned): default

If you're willing to spend 'resourcesAvailable' and want to buy something with exponentially increasing cost each purchase (start at priceStart, multiply by priceRatio, already own currentOwned), how much of it can you buy? Adapted from Trimps source code.

Parameters

NameType
resourcesAvailableDecimalSource
priceStartDecimalSource
priceRatioDecimalSource
currentOwnedDecimalSource

Returns

default


affordGeometricSeries_core

â–¸ Static affordGeometricSeries_core(resourcesAvailable, priceStart, priceRatio, currentOwned): default

Parameters

NameType
resourcesAvailabledefault
priceStartdefault
priceRatiodefault
currentOwnedDecimalSource

Returns

default


cbrt

â–¸ Static cbrt(value): default

Parameters

NameType
valueDecimalSource

Returns

default


ceil

â–¸ Static ceil(value): default

Parameters

NameType
valueDecimalSource

Returns

default


clamp

â–¸ Static clamp(value, min, max): default

Parameters

NameType
valueDecimalSource
minDecimalSource
maxDecimalSource

Returns

default


clampMax

â–¸ Static clampMax(value, max): default

Parameters

NameType
valueDecimalSource
maxDecimalSource

Returns

default


clampMin

â–¸ Static clampMin(value, min): default

Parameters

NameType
valueDecimalSource
minDecimalSource

Returns

default


cmp

â–¸ Static cmp(value, other): CompareResult

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

CompareResult


cmp_tolerance

â–¸ Static cmp_tolerance(value, other, tolerance): CompareResult

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

CompareResult


cmpabs

â–¸ Static cmpabs(value, other): CompareResult

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

CompareResult


compare

â–¸ Static compare(value, other): CompareResult

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

CompareResult


compare_tolerance

â–¸ Static compare_tolerance(value, other, tolerance): CompareResult

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

CompareResult


critical_section

â–¸ Static critical_section(base, height, grid): number

Parameters

NameType
basenumber
heightnumber
gridnumber[][]

Returns

number


cube

â–¸ Static cube(value): default

Parameters

NameType
valueDecimalSource

Returns

default


div

â–¸ Static div(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


divide

â–¸ Static divide(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


efficiencyOfPurchase

â–¸ Static efficiencyOfPurchase(cost, currentRpS, deltaRpS): default

When comparing two purchases that cost (resource) and increase your resource/sec by (deltaRpS), the lowest efficiency score is the better one to purchase. From Frozen Cookies: http://cookieclicker.wikia.com/wiki/Frozen_Cookies_(JavaScript_Add-on)#Efficiency.3F_What.27s_that.3F

Parameters

NameType
costDecimalSource
currentRpSDecimalSource
deltaRpSDecimalSource

Returns

default


efficiencyOfPurchase_core

â–¸ Static efficiencyOfPurchase_core(cost, currentRpS, deltaRpS): default

Parameters

NameType
costdefault
currentRpSdefault
deltaRpSdefault

Returns

default


eq

â–¸ Static eq(value, other): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

boolean


eq_tolerance

â–¸ Static eq_tolerance(value, other, tolerance): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

boolean


equals

â–¸ Static equals(value, other): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

boolean


equals_tolerance

â–¸ Static equals_tolerance(value, other, tolerance): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

boolean


exp

â–¸ Static exp(value): default

Parameters

NameType
valueDecimalSource

Returns

default


factorial

â–¸ Static factorial(value, _other?): default

Parameters

NameType
valueDecimalSource
_other?undefined

Returns

default


floor

â–¸ Static floor(value): default

Parameters

NameType
valueDecimalSource

Returns

default


fromComponents

â–¸ Static fromComponents(sign, layer, mag): default

Parameters

NameType
signnumber
layernumber
magnumber

Returns

default


fromComponents_noNormalize

â–¸ Static fromComponents_noNormalize(sign, layer, mag): default

Parameters

NameType
signnumber
layernumber
magnumber

Returns

default


fromDecimal

â–¸ Static fromDecimal(value): default

Parameters

NameType
valuedefault

Returns

default


fromMantissaExponent

â–¸ Static fromMantissaExponent(mantissa, exponent): default

Parameters

NameType
mantissanumber
exponentnumber

Returns

default


fromMantissaExponent_noNormalize

â–¸ Static fromMantissaExponent_noNormalize(mantissa, exponent): default

Parameters

NameType
mantissanumber
exponentnumber

Returns

default


fromNumber

â–¸ Static fromNumber(value): default

Parameters

NameType
valuenumber

Returns

default


fromString

â–¸ Static fromString(value): default

Parameters

NameType
valuestring

Returns

default


fromValue

â–¸ Static fromValue(value): default

Parameters

NameType
valueDecimalSource

Returns

default


fromValue_noAlloc

â–¸ Static fromValue_noAlloc(value): default

Parameters

NameType
valueDecimalSource

Returns

default


gamma

â–¸ Static gamma(value, _other?): default

Parameters

NameType
valueDecimalSource
_other?undefined

Returns

default


gt

â–¸ Static gt(value, other): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

boolean


gt_tolerance

â–¸ Static gt_tolerance(value, other, tolerance): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

boolean


gte

â–¸ Static gte(value, other): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

boolean


gte_tolerance

â–¸ Static gte_tolerance(value, other, tolerance): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

boolean


isFinite

â–¸ Static isFinite(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


isNaN

â–¸ Static isNaN(value): boolean

Parameters

NameType
valueDecimalSource

Returns

boolean


iteratedexp

â–¸ Static iteratedexp(value, height?, payload?): default

Parameters

NameTypeDefault value
valueDecimalSourceundefined
heightnumber2
payloaddefaultundefined

Returns

default


iteratedlog

â–¸ Static iteratedlog(value, base?, times?): default

Parameters

NameTypeDefault value
valueDecimalSourceundefined
baseDecimalSource10
timesnumber1

Returns

default


lambertw

â–¸ Static lambertw(value): default

Parameters

NameType
valueDecimalSource

Returns

default


layeradd

â–¸ Static layeradd(value, diff, base?): default

Parameters

NameTypeDefault value
valueDecimalSourceundefined
diffnumberundefined
basenumber10

Returns

default


layeradd10

â–¸ Static layeradd10(value, diff): default

Parameters

NameType
valueDecimalSource
diffDecimalSource

Returns

default


ln

â–¸ Static ln(value): default

Parameters

NameType
valueDecimalSource

Returns

default


lngamma

â–¸ Static lngamma(value, _other?): default

Parameters

NameType
valueDecimalSource
_other?undefined

Returns

default


log

â–¸ Static log(value, base): default

Parameters

NameType
valueDecimalSource
baseDecimalSource

Returns

default


log10

â–¸ Static log10(value): default

Parameters

NameType
valueDecimalSource

Returns

default


log2

â–¸ Static log2(value): default

Parameters

NameType
valueDecimalSource

Returns

default


logarithm

â–¸ Static logarithm(value, base): default

Parameters

NameType
valueDecimalSource
baseDecimalSource

Returns

default


lt

â–¸ Static lt(value, other): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

boolean


lt_tolerance

â–¸ Static lt_tolerance(value, other, tolerance): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

boolean


lte

â–¸ Static lte(value, other): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

boolean


lte_tolerance

â–¸ Static lte_tolerance(value, other, tolerance): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

boolean


max

â–¸ Static max(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


maxabs

â–¸ Static maxabs(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


min

â–¸ Static min(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


minabs

â–¸ Static minabs(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


minus

â–¸ Static minus(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


mul

â–¸ Static mul(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


multiply

â–¸ Static multiply(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


neg

â–¸ Static neg(value): default

Parameters

NameType
valueDecimalSource

Returns

default


negate

â–¸ Static negate(value): default

Parameters

NameType
valueDecimalSource

Returns

default


negated

â–¸ Static negated(value): default

Parameters

NameType
valueDecimalSource

Returns

default


neq

â–¸ Static neq(value, other): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

boolean


neq_tolerance

â–¸ Static neq_tolerance(value, other, tolerance): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

boolean


notEquals

â–¸ Static notEquals(value, other): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

boolean


notEquals_tolerance

â–¸ Static notEquals_tolerance(value, other, tolerance): boolean

Parameters

NameType
valueDecimalSource
otherDecimalSource
tolerancenumber

Returns

boolean


pLog10

â–¸ Static pLog10(value): default

Parameters

NameType
valueDecimalSource

Returns

default


pentate

â–¸ Static pentate(value, height?, payload?): default

Parameters

NameTypeDefault value
valueDecimalSourceundefined
heightnumber2
payloadDecimalSourceundefined

Returns

default


plus

â–¸ Static plus(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


pow

â–¸ Static pow(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


pow10

â–¸ Static pow10(value): default

Parameters

NameType
valueDecimalSource

Returns

default


randomDecimalForTesting

â–¸ Static randomDecimalForTesting(maxLayers): default

Parameters

NameType
maxLayersnumber

Returns

default


recip

â–¸ Static recip(value): default

Parameters

NameType
valueDecimalSource

Returns

default


reciprocal

â–¸ Static reciprocal(value): default

Parameters

NameType
valueDecimalSource

Returns

default


reciprocate

â–¸ Static reciprocate(value): default

Parameters

NameType
valueDecimalSource

Returns

default


root

â–¸ Static root(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


round

â–¸ Static round(value): default

Parameters

NameType
valueDecimalSource

Returns

default


sgn

â–¸ Static sgn(value): number

Parameters

NameType
valueDecimalSource

Returns

number


sign

â–¸ Static sign(value): number

Parameters

NameType
valueDecimalSource

Returns

number


slog

â–¸ Static slog(value, base?): default

Parameters

NameTypeDefault value
valueDecimalSourceundefined
basenumber10

Returns

default


slog_critical

â–¸ Static slog_critical(base, height): number

Parameters

NameType
basenumber
heightnumber

Returns

number


sqr

â–¸ Static sqr(value): default

Parameters

NameType
valueDecimalSource

Returns

default


sqrt

â–¸ Static sqrt(value): default

Parameters

NameType
valueDecimalSource

Returns

default


ssqrt

â–¸ Static ssqrt(value): default

Parameters

NameType
valueDecimalSource

Returns

default


sub

â–¸ Static sub(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


subtract

â–¸ Static subtract(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


sumArithmeticSeries

â–¸ Static sumArithmeticSeries(numItems, priceStart, priceAdd, currentOwned): default

How much resource would it cost to buy (numItems) items if you already have currentOwned, the initial price is priceStart and it adds priceAdd each purchase? Adapted from http://www.mathwords.com/a/arithmetic_series.htm

Parameters

NameType
numItemsDecimalSource
priceStartDecimalSource
priceAddDecimalSource
currentOwnedDecimalSource

Returns

default


sumArithmeticSeries_core

â–¸ Static sumArithmeticSeries_core(numItems, priceStart, priceAdd, currentOwned): default

Parameters

NameType
numItemsdefault
priceStartdefault
priceAdddefault
currentOwneddefault

Returns

default


sumGeometricSeries

â–¸ Static sumGeometricSeries(numItems, priceStart, priceRatio, currentOwned): default

How much resource would it cost to buy (numItems) items if you already have currentOwned, the initial price is priceStart and it multiplies by priceRatio each purchase?

Parameters

NameType
numItemsDecimalSource
priceStartDecimalSource
priceRatioDecimalSource
currentOwnedDecimalSource

Returns

default


sumGeometricSeries_core

â–¸ Static sumGeometricSeries_core(numItems, priceStart, priceRatio, currentOwned): default

Parameters

NameType
numItemsDecimalSource
priceStartdefault
priceRatiodefault
currentOwnedDecimalSource

Returns

default


tetrate

â–¸ Static tetrate(value, height?, payload?): default

Parameters

NameTypeDefault value
valueDecimalSourceundefined
heightnumber2
payloadDecimalSourceundefined

Returns

default


tetrate_critical

â–¸ Static tetrate_critical(base, height): number

Parameters

NameType
basenumber
heightnumber

Returns

number


times

â–¸ Static times(value, other): default

Parameters

NameType
valueDecimalSource
otherDecimalSource

Returns

default


trunc

â–¸ Static trunc(value): default

Parameters

NameType
valueDecimalSource

Returns

default

- + diff --git a/api/components/ContextComponent.html b/api/components/ContextComponent.html index af767187..77ae22be 100644 --- a/api/components/ContextComponent.html +++ b/api/components/ContextComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/InfoComponent.html b/api/components/InfoComponent.html index 07624100..1e5cc491 100644 --- a/api/components/InfoComponent.html +++ b/api/components/InfoComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/LayerComponent.html b/api/components/LayerComponent.html index d177c36b..adb9eea6 100644 --- a/api/components/LayerComponent.html +++ b/api/components/LayerComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/MarkNodeComponent.html b/api/components/MarkNodeComponent.html index 9abd5e00..9aae7fb3 100644 --- a/api/components/MarkNodeComponent.html +++ b/api/components/MarkNodeComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/ModalComponent.html b/api/components/ModalComponent.html index 83a249d8..1aa62116 100644 --- a/api/components/ModalComponent.html +++ b/api/components/ModalComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/NodeComponent.html b/api/components/NodeComponent.html index a0d6faa9..e1d51322 100644 --- a/api/components/NodeComponent.html +++ b/api/components/NodeComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/SaveComponent.html b/api/components/SaveComponent.html index 9462412d..1137c564 100644 --- a/api/components/SaveComponent.html +++ b/api/components/SaveComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/fields/DangerButtonComponent.html b/api/components/fields/DangerButtonComponent.html index 277748d9..1bf1ec0e 100644 --- a/api/components/fields/DangerButtonComponent.html +++ b/api/components/fields/DangerButtonComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/fields/FeedbackButtonComponent.html b/api/components/fields/FeedbackButtonComponent.html index ebd82e00..e66ffeb5 100644 --- a/api/components/fields/FeedbackButtonComponent.html +++ b/api/components/fields/FeedbackButtonComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/fields/SelectComponent.html b/api/components/fields/SelectComponent.html index 1c43bae5..5ac421be 100644 --- a/api/components/fields/SelectComponent.html +++ b/api/components/fields/SelectComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/fields/SliderComponent.html b/api/components/fields/SliderComponent.html index 7bf5154f..0c03ede9 100644 --- a/api/components/fields/SliderComponent.html +++ b/api/components/fields/SliderComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/fields/TextComponent.html b/api/components/fields/TextComponent.html index 05d2ac7e..e6dbda86 100644 --- a/api/components/fields/TextComponent.html +++ b/api/components/fields/TextComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/fields/ToggleComponent.html b/api/components/fields/ToggleComponent.html index de906a02..bda60075 100644 --- a/api/components/fields/ToggleComponent.html +++ b/api/components/fields/ToggleComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/layout/CollapsibleComponent.html b/api/components/layout/CollapsibleComponent.html index 9cf1f24c..ee5ddddd 100644 --- a/api/components/layout/CollapsibleComponent.html +++ b/api/components/layout/CollapsibleComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/layout/ColumnComponent.html b/api/components/layout/ColumnComponent.html index d57050d6..8e33578d 100644 --- a/api/components/layout/ColumnComponent.html +++ b/api/components/layout/ColumnComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/layout/RowComponent.html b/api/components/layout/RowComponent.html index c4433f0d..93d0e257 100644 --- a/api/components/layout/RowComponent.html +++ b/api/components/layout/RowComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/layout/SpacerComponent.html b/api/components/layout/SpacerComponent.html index 8e53c13a..10b748ef 100644 --- a/api/components/layout/SpacerComponent.html +++ b/api/components/layout/SpacerComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/layout/StickyComponent.html b/api/components/layout/StickyComponent.html index dfcfad6e..17575a3a 100644 --- a/api/components/layout/StickyComponent.html +++ b/api/components/layout/StickyComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/layout/VerticalRuleComponent.html b/api/components/layout/VerticalRuleComponent.html index 8f504313..798b16a2 100644 --- a/api/components/layout/VerticalRuleComponent.html +++ b/api/components/layout/VerticalRuleComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/math/FloorComponent.html b/api/components/math/FloorComponent.html index a447ef7c..b40d0340 100644 --- a/api/components/math/FloorComponent.html +++ b/api/components/math/FloorComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/components/math/SqrtComponent.html b/api/components/math/SqrtComponent.html index 9875eaa2..155cd2a7 100644 --- a/api/components/math/SqrtComponent.html +++ b/api/components/math/SqrtComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/enums/data/themes.Themes.html b/api/enums/data/themes.Themes.html index 76ea43fd..b945310a 100644 --- a/api/enums/data/themes.Themes.html +++ b/api/enums/data/themes.Themes.html @@ -20,7 +20,7 @@
- + diff --git a/api/enums/features/boards/board.ProgressDisplay.html b/api/enums/features/boards/board.ProgressDisplay.html index ff88dbf1..dc0e06f0 100644 --- a/api/enums/features/boards/board.ProgressDisplay.html +++ b/api/enums/features/boards/board.ProgressDisplay.html @@ -20,7 +20,7 @@
- + diff --git a/api/enums/features/boards/board.Shape.html b/api/enums/features/boards/board.Shape.html index 6c859af9..a01125cc 100644 --- a/api/enums/features/boards/board.Shape.html +++ b/api/enums/features/boards/board.Shape.html @@ -20,7 +20,7 @@
- + diff --git a/api/enums/features/feature.Visibility.html b/api/enums/features/feature.Visibility.html index ab6e2a0c..e33c51c8 100644 --- a/api/enums/features/feature.Visibility.html +++ b/api/enums/features/feature.Visibility.html @@ -20,7 +20,7 @@
- + diff --git a/api/enums/features/milestones/milestone.MilestoneDisplay.html b/api/enums/features/milestones/milestone.MilestoneDisplay.html index 31e37e50..02802cf5 100644 --- a/api/enums/features/milestones/milestone.MilestoneDisplay.html +++ b/api/enums/features/milestones/milestone.MilestoneDisplay.html @@ -20,7 +20,7 @@
- + diff --git a/api/enums/util/common.Direction.html b/api/enums/util/common.Direction.html index 407f3859..57d9ade4 100644 --- a/api/enums/util/common.Direction.html +++ b/api/enums/util/common.Direction.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/data/common.LayerTreeNodeOptions.html b/api/interfaces/data/common.LayerTreeNodeOptions.html index ba9911c5..1b8c7e2c 100644 --- a/api/interfaces/data/common.LayerTreeNodeOptions.html +++ b/api/interfaces/data/common.LayerTreeNodeOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: LayerTreeNodeOptions

data/common.LayerTreeNodeOptions

An object that configures a LayerTreeNode

Hierarchy

Properties

append

• Optional append: Computable<boolean>

Whether or not to append the layer to the tabs list. If set to false, then the tree node will instead always remove all tabs to its right and then add the layer tab. Defaults to true.

Defined in

profectus/src/data/common.tsx:185


canClick

• Optional canClick: Computable<boolean>

Inherited from

TreeNodeOptions.canClick

Defined in

profectus/src/features/trees/tree.ts:27


classes

• Optional classes: Computable<Record<string, boolean>>

Inherited from

TreeNodeOptions.classes

Defined in

profectus/src/features/trees/tree.ts:31


color

• color: Computable<string>

The color to display this tree node as

Overrides

TreeNodeOptions.color

Defined in

profectus/src/data/common.tsx:175


display

• Optional display: Computable<CoercableComponent>

The content to display in the tree node. Defaults to the layer's ID

Overrides

TreeNodeOptions.display

Defined in

profectus/src/data/common.tsx:180


glowColor

• Optional glowColor: Computable<string>

Inherited from

TreeNodeOptions.glowColor

Defined in

profectus/src/features/trees/tree.ts:30


layerID

• layerID: string

The ID of the layer this tree node is associated with

Defined in

profectus/src/data/common.tsx:173


mark

• Optional mark: Computable<string | boolean>

Inherited from

TreeNodeOptions.mark

Defined in

profectus/src/features/trees/tree.ts:33


onClick

• Optional onClick: (e?: MouseEvent | TouchEvent) => void

Type declaration

â–¸ (e?): void

Parameters
NameType
e?MouseEvent | TouchEvent
Returns

void

Inherited from

TreeNodeOptions.onClick

Defined in

profectus/src/features/trees/tree.ts:35


onHold

• Optional onHold: VoidFunction

Inherited from

TreeNodeOptions.onHold

Defined in

profectus/src/features/trees/tree.ts:36


reset

• Optional reset: GenericReset

Inherited from

TreeNodeOptions.reset

Defined in

profectus/src/features/trees/tree.ts:34


style

• Optional style: Computable<StyleValue>

Inherited from

TreeNodeOptions.style

Defined in

profectus/src/features/trees/tree.ts:32


visibility

• Optional visibility: Computable<Visibility>

Inherited from

TreeNodeOptions.visibility

Defined in

profectus/src/features/trees/tree.ts:26

- + diff --git a/api/interfaces/data/common.ResetButtonOptions.html b/api/interfaces/data/common.ResetButtonOptions.html index 11485732..37607122 100644 --- a/api/interfaces/data/common.ResetButtonOptions.html +++ b/api/interfaces/data/common.ResetButtonOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: ResetButtonOptions

data/common.ResetButtonOptions

An object that configures a ResetButton

Hierarchy

Properties

canClick

• Optional canClick: Computable<boolean>

Whether or not this button can currently be clicked. Defaults to checking the current gain amount is greater than minimumGain

Overrides

ClickableOptions.canClick

Defined in

profectus/src/data/common.tsx:52


classes

• Optional classes: Computable<Record<string, boolean>>

Inherited from

ClickableOptions.classes

Defined in

profectus/src/features/clickables/clickable.ts:21


conversion

• conversion: GenericConversion

The conversion the button uses to calculate how much resources will be gained on click

Defined in

profectus/src/data/common.tsx:31


display

• Optional display: Computable<CoercableComponent>

The content to display on the button. By default, this includes the reset description, and amount of currency to be gained.

Overrides

ClickableOptions.display

Defined in

profectus/src/data/common.tsx:47


mark

• Optional mark: Computable<string | boolean>

Inherited from

ClickableOptions.mark

Defined in

profectus/src/features/clickables/clickable.ts:23


minimumGain

• Optional minimumGain: Computable<DecimalSource>

When canClick is left to its default, minimumGain is used to only enable the reset button when a sufficient amount of currency to gain is available.

Defined in

profectus/src/data/common.tsx:56


onClick

• Optional onClick: (e?: MouseEvent | TouchEvent) => void

Type declaration

â–¸ (e?): void

Parameters
NameType
e?MouseEvent | TouchEvent
Returns

void

Inherited from

ClickableOptions.onClick

Defined in

profectus/src/features/clickables/clickable.ts:32


onHold

• Optional onHold: VoidFunction

Inherited from

ClickableOptions.onHold

Defined in

profectus/src/features/clickables/clickable.ts:33


resetDescription

• Optional resetDescription: Computable<string>

Text to display on low conversion amounts, describing what "resetting" is in this context. Defaults to "Reset for ".

Defined in

profectus/src/data/common.tsx:40


resetTime

• Optional resetTime: Persistent<DecimalSource>

A persistent ref to track how much time has passed since the last time this tree node was reset.

Defined in

profectus/src/data/common.tsx:58


showNextAt

• Optional showNextAt: Computable<boolean>

Whether or not to show how much currency would be required to make the gain amount increase.

Defined in

profectus/src/data/common.tsx:42


small

• Optional small: boolean

Inherited from

ClickableOptions.small

Defined in

profectus/src/features/clickables/clickable.ts:31


style

• Optional style: Computable<StyleValue>

Inherited from

ClickableOptions.style

Defined in

profectus/src/features/clickables/clickable.ts:22


tree

• tree: GenericTree

The tree this reset button is apart of

Defined in

profectus/src/data/common.tsx:33


treeNode

• treeNode: GenericTreeNode

The specific tree node associated with this reset button

Defined in

profectus/src/data/common.tsx:35


visibility

• Optional visibility: Computable<Visibility>

Inherited from

ClickableOptions.visibility

Defined in

profectus/src/features/clickables/clickable.ts:19

- + diff --git a/api/interfaces/data/common.Section.html b/api/interfaces/data/common.Section.html index 74267d2b..9486a7ea 100644 --- a/api/interfaces/data/common.Section.html +++ b/api/interfaces/data/common.Section.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: Section

data/common.Section

An option object for a modifier display as a single section. *

Properties

base

• Optional base: Computable<DecimalSource>

The base value being modified. *

Defined in

profectus/src/data/common.tsx:244


baseText

• Optional baseText: Computable<CoercableComponent>

The label to call the base amount. Defaults to "Base". *

Defined in

profectus/src/data/common.tsx:248


modifier

• modifier: WithRequired<Modifier, "description">

The modifier to be displaying in this section. *

Defined in

profectus/src/data/common.tsx:242


subtitle

• Optional subtitle: string

A subtitle for this modifier, e.g. to explain the context for the modifier. *

Defined in

profectus/src/data/common.tsx:240


title

• title: string

The header for this modifier. *

Defined in

profectus/src/data/common.tsx:238


unit

• Optional unit: string

The unit of measurement for the base. *

Defined in

profectus/src/data/common.tsx:246


visible

• Optional visible: Computable<boolean>

Whether or not this section should be currently visible to the player. *

Defined in

profectus/src/data/common.tsx:250

- + diff --git a/api/interfaces/data/themes.Theme.html b/api/interfaces/data/themes.Theme.html index c824ea5f..88ac76dd 100644 --- a/api/interfaces/data/themes.Theme.html +++ b/api/interfaces/data/themes.Theme.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: Theme

data/themes.Theme

An object representing a theme the player can use to change the look of the game.

Properties

floatingTabs

• floatingTabs: boolean

Whether or not tabs should "float" in the center of their container.

Defined in

profectus/src/data/themes.ts:28


mergeAdjacent

• mergeAdjacent: boolean

Whether or not adjacent features should merge together - removing the margin between them, and only applying the border radius to the first and last elements in the row or column.

Defined in

profectus/src/data/themes.ts:30


showPin

• showPin: boolean

Whether or not to show a pin icon on pinned tooltips.

Defined in

profectus/src/data/themes.ts:32


variables

• variables: ThemeVars

The values of the theme's CSS variables.

Defined in

profectus/src/data/themes.ts:26

- + diff --git a/api/interfaces/data/themes.ThemeVars.html b/api/interfaces/data/themes.ThemeVars.html index 6bb259f0..807cb929 100644 --- a/api/interfaces/data/themes.ThemeVars.html +++ b/api/interfaces/data/themes.ThemeVars.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: ThemeVars

data/themes.ThemeVars

A object of all CSS variables determined by the current theme.

Properties

--accent1

• --accent1: string

Defined in

profectus/src/data/themes.ts:15


--accent2

• --accent2: string

Defined in

profectus/src/data/themes.ts:16


--accent3

• --accent3: string

Defined in

profectus/src/data/themes.ts:17


--background

• --background: string

Defined in

profectus/src/data/themes.ts:4


--border-radius

• --border-radius: string

Defined in

profectus/src/data/themes.ts:18


--bought

• --bought: string

Defined in

profectus/src/data/themes.ts:11


--danger

• --danger: string

Defined in

profectus/src/data/themes.ts:12


--feature-foreground

• --feature-foreground: string

Defined in

profectus/src/data/themes.ts:5


--feature-margin

• --feature-margin: string

Defined in

profectus/src/data/themes.ts:20


--foreground

• --foreground: string

Defined in

profectus/src/data/themes.ts:3


--highlighted

• --highlighted: string

Defined in

profectus/src/data/themes.ts:10


• --link: string

Defined in

profectus/src/data/themes.ts:13


--locked

• --locked: string

Defined in

profectus/src/data/themes.ts:9


• --modal-border: string

Defined in

profectus/src/data/themes.ts:19


--outline

• --outline: string

Defined in

profectus/src/data/themes.ts:14


--points

• --points: string

Defined in

profectus/src/data/themes.ts:8


--raised-background

• --raised-background: string

Defined in

profectus/src/data/themes.ts:7


--tooltip-background

• --tooltip-background: string

Defined in

profectus/src/data/themes.ts:6

- + diff --git a/api/interfaces/features/achievements/achievement.AchievementOptions.html b/api/interfaces/features/achievements/achievement.AchievementOptions.html index a4523ff8..65b24713 100644 --- a/api/interfaces/features/achievements/achievement.AchievementOptions.html +++ b/api/interfaces/features/achievements/achievement.AchievementOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: AchievementOptions

features/achievements/achievement.AchievementOptions

Properties

classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/achievements/achievement.tsx:41


display

• Optional display: Computable<CoercableComponent>

Defined in

profectus/src/features/achievements/achievement.tsx:37


image

• Optional image: Computable<string>

Defined in

profectus/src/features/achievements/achievement.tsx:39


mark

• Optional mark: Computable<string | boolean>

Defined in

profectus/src/features/achievements/achievement.tsx:38


onComplete

• Optional onComplete: VoidFunction

Defined in

profectus/src/features/achievements/achievement.tsx:42


shouldEarn

• Optional shouldEarn: () => boolean

Type declaration

â–¸ (): boolean

Returns

boolean

Defined in

profectus/src/features/achievements/achievement.tsx:36


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/achievements/achievement.tsx:40


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/achievements/achievement.tsx:35

- + diff --git a/api/interfaces/features/achievements/achievement.BaseAchievement.html b/api/interfaces/features/achievements/achievement.BaseAchievement.html index f300a058..94f1c91b 100644 --- a/api/interfaces/features/achievements/achievement.BaseAchievement.html +++ b/api/interfaces/features/achievements/achievement.BaseAchievement.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseAchievement

features/achievements/achievement.BaseAchievement

Properties

[Component]

• [Component]: DefineComponent<{ classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: PropType<ProcessedComputable<CoercableComponent>> ; earned: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; id: { required: true = true; type: StringConstructor = String } ; image: PropType<ProcessedComputable<string>> ; mark: PropType<ProcessedComputable<string | boolean>> ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; component: ShallowRef<null | "" | Component<any, any, any, ComputedOptions, MethodOptions>> ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: PropType<ProcessedComputable<CoercableComponent>> ; earned: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; id: { required: true = true; type: StringConstructor = String } ; image: PropType<ProcessedComputable<string>> ; mark: PropType<ProcessedComputable<string | boolean>> ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, {}>

Defined in

profectus/src/features/achievements/achievement.tsx:50


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/achievements/achievement.tsx:51


complete

• complete: VoidFunction

Defined in

profectus/src/features/achievements/achievement.tsx:48


earned

• earned: Persistent<boolean>

Defined in

profectus/src/features/achievements/achievement.tsx:47


id

• id: string

Defined in

profectus/src/features/achievements/achievement.tsx:46


type

• type: typeof AchievementType

Defined in

profectus/src/features/achievements/achievement.tsx:49

- + diff --git a/api/interfaces/features/bars/bar.BarOptions.html b/api/interfaces/features/bars/bar.BarOptions.html index 5d149601..13a1e192 100644 --- a/api/interfaces/features/bars/bar.BarOptions.html +++ b/api/interfaces/features/bars/bar.BarOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BarOptions

features/bars/bar.BarOptions

Properties

baseStyle

• Optional baseStyle: Computable<StyleValue>

Defined in

profectus/src/features/bars/bar.ts:26


borderStyle

• Optional borderStyle: Computable<StyleValue>

Defined in

profectus/src/features/bars/bar.ts:25


classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/bars/bar.ts:24


direction

• direction: Computable<Direction>

Defined in

profectus/src/features/bars/bar.ts:22


display

• Optional display: Computable<CoercableComponent>

Defined in

profectus/src/features/bars/bar.ts:30


fillStyle

• Optional fillStyle: Computable<StyleValue>

Defined in

profectus/src/features/bars/bar.ts:28


height

• height: Computable<number>

Defined in

profectus/src/features/bars/bar.ts:21


mark

• Optional mark: Computable<string | boolean>

Defined in

profectus/src/features/bars/bar.ts:31


progress

• progress: Computable<DecimalSource>

Defined in

profectus/src/features/bars/bar.ts:29


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/bars/bar.ts:23


textStyle

• Optional textStyle: Computable<StyleValue>

Defined in

profectus/src/features/bars/bar.ts:27


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/bars/bar.ts:19


width

• width: Computable<number>

Defined in

profectus/src/features/bars/bar.ts:20

- + diff --git a/api/interfaces/features/bars/bar.BaseBar.html b/api/interfaces/features/bars/bar.BaseBar.html index f9e0e69c..15d1d21f 100644 --- a/api/interfaces/features/bars/bar.BaseBar.html +++ b/api/interfaces/features/bars/bar.BaseBar.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseBar

features/bars/bar.BaseBar

Properties

[Component]

• [Component]: DefineComponent<{ baseStyle: PropType<ProcessedComputable<StyleValue>> ; borderStyle: PropType<ProcessedComputable<StyleValue>> ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; direction: { required: true = true; type: PropType<ProcessedComputable<Direction>> } ; display: PropType<ProcessedComputable<CoercableComponent>> ; fillStyle: PropType<ProcessedComputable<StyleValue>> ; height: { required: true = true; type: PropType<ProcessedComputable<number>> } ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; progress: { required: true = true; type: PropType<ProcessedComputable<DecimalSource>> } ; style: PropType<ProcessedComputable<StyleValue>> ; textStyle: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } ; width: { required: true = true; type: PropType<ProcessedComputable<number>> } }, { Visibility: typeof Visibility ; barStyle: ComputedRef<Partial<CSSProperties>> ; component: ShallowRef<null | "" | Component<any, any, any, ComputedOptions, MethodOptions>> ; normalizedProgress: ComputedRef<number> ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ baseStyle: PropType<ProcessedComputable<StyleValue>> ; borderStyle: PropType<ProcessedComputable<StyleValue>> ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; direction: { required: true = true; type: PropType<ProcessedComputable<Direction>> } ; display: PropType<ProcessedComputable<CoercableComponent>> ; fillStyle: PropType<ProcessedComputable<StyleValue>> ; height: { required: true = true; type: PropType<ProcessedComputable<number>> } ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; progress: { required: true = true; type: PropType<ProcessedComputable<DecimalSource>> } ; style: PropType<ProcessedComputable<StyleValue>> ; textStyle: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } ; width: { required: true = true; type: PropType<ProcessedComputable<number>> } }>>, {}>

Defined in

profectus/src/features/bars/bar.ts:37


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/bars/bar.ts:38


id

• id: string

Defined in

profectus/src/features/bars/bar.ts:35


type

• type: typeof BarType

Defined in

profectus/src/features/bars/bar.ts:36

- + diff --git a/api/interfaces/features/boards/board.BaseBoard.html b/api/interfaces/features/boards/board.BaseBoard.html index fd88d434..2c5e5550 100644 --- a/api/interfaces/features/boards/board.BaseBoard.html +++ b/api/interfaces/features/boards/board.BaseBoard.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseBoard

features/boards/board.BaseBoard

A Ref that has been augmented with properties to allow it to be saved and loaded within the player save data object.

Hierarchy

Properties

[Component]

• [Component]: DefineComponent<__VLS_TypePropsToRuntimeProps<{ [PersistentState]: Ref<BoardData> ; classes?: ProcessedComputable<Record<string, boolean>> ; height?: ProcessedComputable<string> ; links: Ref<null | BoardNodeLink[]> ; nodes: Ref<BoardNode[]> ; selectedAction: Ref<null | GenericBoardNodeAction> ; selectedNode: Ref<null | BoardNode> ; style?: ProcessedComputable<StyleValue> ; types: Record<string, GenericNodeType> ; visibility: ProcessedComputable<Visibility> ; width?: ProcessedComputable<string> }>, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{ [PersistentState]: Ref<BoardData> ; classes?: ProcessedComputable<Record<string, boolean>> ; height?: ProcessedComputable<string> ; links: Ref<null | BoardNodeLink[]> ; nodes: Ref<BoardNode[]> ; selectedAction: Ref<null | GenericBoardNodeAction> ; selectedNode: Ref<null | BoardNode> ; style?: ProcessedComputable<StyleValue> ; types: Record<string, GenericNodeType> ; visibility: ProcessedComputable<Visibility> ; width?: ProcessedComputable<string> }>>>, {}>

Defined in

profectus/src/features/boards/board.ts:176


[DefaultValue]

• [DefaultValue]: BoardData

The value the ref should be set to in a fresh save, or when updating an old save to the current version.

Inherited from

Persistent.__@DefaultValue@25207

Defined in

profectus/src/game/persistence.ts:52


[Deleted]

• [Deleted]: boolean

This is a flag that can be set once the option func is evaluated, to mark that a persistent ref should not be saved to the player save data object.

See

deletePersistent for marking a persistent ref as deleted.

Inherited from

Persistent.__@Deleted@25209

Defined in

profectus/src/game/persistence.ts:59


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/boards/board.ts:177


[PersistentState]

• [PersistentState]: Ref<BoardData>

A flag that this is a persistent property. Typically a circular reference.

Inherited from

Persistent.__@PersistentState@25206

Defined in

profectus/src/game/persistence.ts:50


[RefSymbol]

• [RefSymbol]: true

Type differentiator only. We need this to be in public d.ts but don't want it to show up in IDE autocomplete, so we use a private Symbol instead.

Inherited from

Persistent.__@RefSymbol@17474

Defined in

node_modules/@vue/runtime-core/node_modules/@vue/reactivity/dist/reactivity.d.ts:198


[StackTrace]

• [StackTrace]: string

The stack trace of where the persistent ref was created. This is used for debugging purposes when a persistent ref is created but not placed in its layer object.

Inherited from

Persistent.__@StackTrace@25208

Defined in

profectus/src/game/persistence.ts:54


id

• id: string

Defined in

profectus/src/features/boards/board.ts:170


• links: Ref<null | BoardNodeLink[]>

Defined in

profectus/src/features/boards/board.ts:171


nodes

• nodes: Ref<BoardNode[]>

Defined in

profectus/src/features/boards/board.ts:172


selectedAction

• selectedAction: Ref<null | GenericBoardNodeAction>

Defined in

profectus/src/features/boards/board.ts:174


selectedNode

• selectedNode: Ref<null | BoardNode>

Defined in

profectus/src/features/boards/board.ts:173


type

• type: typeof BoardType

Defined in

profectus/src/features/boards/board.ts:175


value

• value: BoardData

Inherited from

Persistent.value

Defined in

node_modules/@vue/runtime-core/node_modules/@vue/reactivity/dist/reactivity.d.ts:192

- + diff --git a/api/interfaces/features/boards/board.BaseBoardNodeAction.html b/api/interfaces/features/boards/board.BaseBoardNodeAction.html index 3bf7153d..54330797 100644 --- a/api/interfaces/features/boards/board.BaseBoardNodeAction.html +++ b/api/interfaces/features/boards/board.BaseBoardNodeAction.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/boards/board.BaseNodeType.html b/api/interfaces/features/boards/board.BaseNodeType.html index f4db4bca..906536ca 100644 --- a/api/interfaces/features/boards/board.BaseNodeType.html +++ b/api/interfaces/features/boards/board.BaseNodeType.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/boards/board.BoardNode.html b/api/interfaces/features/boards/board.BoardNode.html index ad3fca23..1e38f757 100644 --- a/api/interfaces/features/boards/board.BoardNode.html +++ b/api/interfaces/features/boards/board.BoardNode.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/boards/board.BoardNodeActionOptions.html b/api/interfaces/features/boards/board.BoardNodeActionOptions.html index 6d47d573..90b073a1 100644 --- a/api/interfaces/features/boards/board.BoardNodeActionOptions.html +++ b/api/interfaces/features/boards/board.BoardNodeActionOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BoardNodeActionOptions

features/boards/board.BoardNodeActionOptions

Properties

fillColor

• Optional fillColor: NodeComputable<string>

Defined in

profectus/src/features/boards/board.ts:131


icon

• icon: NodeComputable<string>

Defined in

profectus/src/features/boards/board.ts:130


id

• id: string

Defined in

profectus/src/features/boards/board.ts:128


• Optional links: NodeComputable<BoardNodeLink[]>

Defined in

profectus/src/features/boards/board.ts:133


onClick

• onClick: (node: BoardNode) => undefined | boolean

Type declaration

â–¸ (node): undefined | boolean

Parameters
NameType
nodeBoardNode
Returns

undefined | boolean

Defined in

profectus/src/features/boards/board.ts:134


tooltip

• tooltip: NodeComputable<string>

Defined in

profectus/src/features/boards/board.ts:132


visibility

• Optional visibility: NodeComputable<Visibility>

Defined in

profectus/src/features/boards/board.ts:129

- + diff --git a/api/interfaces/features/boards/board.BoardNodeLink.html b/api/interfaces/features/boards/board.BoardNodeLink.html index 373f1e3c..4598bc43 100644 --- a/api/interfaces/features/boards/board.BoardNodeLink.html +++ b/api/interfaces/features/boards/board.BoardNodeLink.html @@ -20,7 +20,7 @@
Skip to content
On this page
- + diff --git a/api/interfaces/features/boards/board.BoardOptions.html b/api/interfaces/features/boards/board.BoardOptions.html index d940c69f..4306cf00 100644 --- a/api/interfaces/features/boards/board.BoardOptions.html +++ b/api/interfaces/features/boards/board.BoardOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BoardOptions

features/boards/board.BoardOptions

Properties

classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/boards/board.ts:163


height

• Optional height: Computable<string>

Defined in

profectus/src/features/boards/board.ts:161


startNodes

• startNodes: () => Omit<BoardNode, "id">[]

Type declaration

â–¸ (): Omit<BoardNode, "id">[]

Returns

Omit<BoardNode, "id">[]

Defined in

profectus/src/features/boards/board.ts:165


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/boards/board.ts:164


types

• types: Record<string, NodeTypeOptions>

Defined in

profectus/src/features/boards/board.ts:166


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/boards/board.ts:160


width

• Optional width: Computable<string>

Defined in

profectus/src/features/boards/board.ts:162

- + diff --git a/api/interfaces/features/boards/board.NodeLabel.html b/api/interfaces/features/boards/board.NodeLabel.html index 74d73fd7..849bb1ab 100644 --- a/api/interfaces/features/boards/board.NodeLabel.html +++ b/api/interfaces/features/boards/board.NodeLabel.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/boards/board.NodeTypeOptions.html b/api/interfaces/features/boards/board.NodeTypeOptions.html index 0165e538..23331289 100644 --- a/api/interfaces/features/boards/board.NodeTypeOptions.html +++ b/api/interfaces/features/boards/board.NodeTypeOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: NodeTypeOptions

features/boards/board.NodeTypeOptions

Properties

actionDistance

• Optional actionDistance: NodeComputable<number>

Defined in

profectus/src/features/boards/board.ts:84


actions

• Optional actions: BoardNodeActionOptions[]

Defined in

profectus/src/features/boards/board.ts:83


canAccept

• Optional canAccept: boolean | Ref<boolean> | (node: BoardNode, otherNode: BoardNode) => boolean

Defined in

profectus/src/features/boards/board.ts:76


draggable

• Optional draggable: NodeComputable<boolean>

Defined in

profectus/src/features/boards/board.ts:74


fillColor

• Optional fillColor: NodeComputable<string>

Defined in

profectus/src/features/boards/board.ts:80


label

• Optional label: NodeComputable<null | NodeLabel>

Defined in

profectus/src/features/boards/board.ts:72


onClick

• Optional onClick: (node: BoardNode) => void

Type declaration

â–¸ (node): void

Parameters
NameType
nodeBoardNode
Returns

void

Defined in

profectus/src/features/boards/board.ts:85


onDrop

• Optional onDrop: (node: BoardNode, otherNode: BoardNode) => void

Type declaration

â–¸ (node, otherNode): void

Parameters
NameType
nodeBoardNode
otherNodeBoardNode
Returns

void

Defined in

profectus/src/features/boards/board.ts:86


outlineColor

• Optional outlineColor: NodeComputable<string>

Defined in

profectus/src/features/boards/board.ts:81


progress

• Optional progress: NodeComputable<number>

Defined in

profectus/src/features/boards/board.ts:77


progressColor

• Optional progressColor: NodeComputable<string>

Defined in

profectus/src/features/boards/board.ts:79


progressDisplay

• Optional progressDisplay: NodeComputable<ProgressDisplay>

Defined in

profectus/src/features/boards/board.ts:78


shape

• shape: NodeComputable<Shape>

Defined in

profectus/src/features/boards/board.ts:75


size

• size: NodeComputable<number>

Defined in

profectus/src/features/boards/board.ts:73


title

• title: NodeComputable<string>

Defined in

profectus/src/features/boards/board.ts:71


titleColor

• Optional titleColor: NodeComputable<string>

Defined in

profectus/src/features/boards/board.ts:82


update

• Optional update: (node: BoardNode, diff: number) => void

Type declaration

â–¸ (node, diff): void

Parameters
NameType
nodeBoardNode
diffnumber
Returns

void

Defined in

profectus/src/features/boards/board.ts:87

- + diff --git a/api/interfaces/features/buyable.BaseBuyable.html b/api/interfaces/features/buyable.BaseBuyable.html index 023114c1..4403122d 100644 --- a/api/interfaces/features/buyable.BaseBuyable.html +++ b/api/interfaces/features/buyable.BaseBuyable.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseBuyable

features/buyable.BaseBuyable

Properties

[Component]

• [Component]: DefineComponent<{ canClick: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: { required: true = true; type: PropType<ProcessedComputable<undefined | CoercableComponent | { description: CoercableComponent ; title?: CoercableComponent } | { description: CoercableComponent ; title?: CoercableComponent }>> } ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; onClick: PropType<(e?: MouseEvent | TouchEvent) => void> ; onHold: PropType<VoidFunction> ; small: BooleanConstructor = Boolean; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; comp: ShallowRef<string | Component<any, any, any, ComputedOptions, MethodOptions>> ; start: (e: MouseEvent | TouchEvent) => void ; stop: VoidFunction ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ canClick: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: { required: true = true; type: PropType<ProcessedComputable<undefined | CoercableComponent | { description: CoercableComponent ; title?: CoercableComponent } | { description: CoercableComponent ; title?: CoercableComponent }>> } ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; onClick: PropType<(e?: MouseEvent | TouchEvent) => void> ; onHold: PropType<VoidFunction> ; small: BooleanConstructor = Boolean; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, { small: boolean = Boolean }>

Defined in

profectus/src/features/buyable.tsx:55


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/buyable.tsx:56


amount

• amount: Persistent<DecimalSource>

Defined in

profectus/src/features/buyable.tsx:48


canAfford

• canAfford: Ref<boolean>

Defined in

profectus/src/features/buyable.tsx:50


canClick

• canClick: ProcessedComputable<boolean>

Defined in

profectus/src/features/buyable.tsx:51


id

• id: string

Defined in

profectus/src/features/buyable.tsx:47


maxed

• maxed: Ref<boolean>

Defined in

profectus/src/features/buyable.tsx:49


onClick

• onClick: VoidFunction

Defined in

profectus/src/features/buyable.tsx:52


purchase

• purchase: VoidFunction

Defined in

profectus/src/features/buyable.tsx:53


type

• type: typeof BuyableType

Defined in

profectus/src/features/buyable.tsx:54

- + diff --git a/api/interfaces/features/buyable.BuyableOptions.html b/api/interfaces/features/buyable.BuyableOptions.html index 11fcac35..002b4f1a 100644 --- a/api/interfaces/features/buyable.BuyableOptions.html +++ b/api/interfaces/features/buyable.BuyableOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BuyableOptions

features/buyable.BuyableOptions

Properties

canPurchase

• Optional canPurchase: Computable<boolean>

Defined in

profectus/src/features/buyable.tsx:36


classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/buyable.tsx:38


cost

• Optional cost: Computable<DecimalSource>

Defined in

profectus/src/features/buyable.tsx:34


display

• Optional display: Computable<BuyableDisplay>

Defined in

profectus/src/features/buyable.tsx:42


mark

• Optional mark: Computable<string | boolean>

Defined in

profectus/src/features/buyable.tsx:40


onPurchase

• Optional onPurchase: (cost: undefined | DecimalSource) => void

Type declaration

â–¸ (cost): void

Parameters
NameType
costundefined | DecimalSource
Returns

void

Defined in

profectus/src/features/buyable.tsx:43


purchaseLimit

• Optional purchaseLimit: Computable<DecimalSource>

Defined in

profectus/src/features/buyable.tsx:37


resource

• Optional resource: Resource<DecimalSource>

Defined in

profectus/src/features/buyable.tsx:35


small

• Optional small: Computable<boolean>

Defined in

profectus/src/features/buyable.tsx:41


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/buyable.tsx:39


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/buyable.tsx:33

- + diff --git a/api/interfaces/features/challenges/challenge.BaseChallenge.html b/api/interfaces/features/challenges/challenge.BaseChallenge.html index 718b0716..87e29877 100644 --- a/api/interfaces/features/challenges/challenge.BaseChallenge.html +++ b/api/interfaces/features/challenges/challenge.BaseChallenge.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseChallenge

features/challenges/challenge.BaseChallenge

Properties

[Component]

• [Component]: DefineComponent<{ active: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; canComplete: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; canStart: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; completed: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; display: PropType<ProcessedComputable<undefined | CoercableComponent | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; goal?: CoercableComponent ; reward?: CoercableComponent ; title?: CoercableComponent } | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; goal?: CoercableComponent ; reward?: CoercableComponent ; title?: CoercableComponent }>> ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; maxed: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; style: PropType<ProcessedComputable<StyleValue>> ; toggle: { required: true = true; type: PropType<VoidFunction> } ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; buttonText: ComputedRef<"Finish" | "Exit Early" | "Completed" | "Start"> ; comp: ShallowRef<string | Component<any, any, any, ComputedOptions, MethodOptions>> ; notifyStyle: ComputedRef<{}> ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ active: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; canComplete: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; canStart: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; completed: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; display: PropType<ProcessedComputable<undefined | CoercableComponent | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; goal?: CoercableComponent ; reward?: CoercableComponent ; title?: CoercableComponent } | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; goal?: CoercableComponent ; reward?: CoercableComponent ; title?: CoercableComponent }>> ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; maxed: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; style: PropType<ProcessedComputable<StyleValue>> ; toggle: { required: true = true; type: PropType<VoidFunction> } ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, {}>

Defined in

profectus/src/features/challenges/challenge.tsx:62


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/challenges/challenge.tsx:63


active

• active: Persistent<boolean>

Defined in

profectus/src/features/challenges/challenge.tsx:58


complete

• complete: (remainInChallenge?: boolean) => void

Type declaration

â–¸ (remainInChallenge?): void

Parameters
NameType
remainInChallenge?boolean
Returns

void

Defined in

profectus/src/features/challenges/challenge.tsx:60


completed

• completed: Ref<boolean>

Defined in

profectus/src/features/challenges/challenge.tsx:56


completions

• completions: Persistent<DecimalSource>

Defined in

profectus/src/features/challenges/challenge.tsx:55


id

• id: string

Defined in

profectus/src/features/challenges/challenge.tsx:54


maxed

• maxed: Ref<boolean>

Defined in

profectus/src/features/challenges/challenge.tsx:57


toggle

• toggle: VoidFunction

Defined in

profectus/src/features/challenges/challenge.tsx:59


type

• type: typeof ChallengeType

Defined in

profectus/src/features/challenges/challenge.tsx:61

- + diff --git a/api/interfaces/features/challenges/challenge.ChallengeOptions.html b/api/interfaces/features/challenges/challenge.ChallengeOptions.html index 4448a3c3..d4e8b7a5 100644 --- a/api/interfaces/features/challenges/challenge.ChallengeOptions.html +++ b/api/interfaces/features/challenges/challenge.ChallengeOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: ChallengeOptions

features/challenges/challenge.ChallengeOptions

Properties

canComplete

• Optional canComplete: Computable<boolean | DecimalSource>

Defined in

profectus/src/features/challenges/challenge.tsx:31


canStart

• Optional canStart: Computable<boolean>

Defined in

profectus/src/features/challenges/challenge.tsx:29


classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/challenges/challenge.tsx:36


completionLimit

• Optional completionLimit: Computable<DecimalSource>

Defined in

profectus/src/features/challenges/challenge.tsx:32


display

• Optional display: Computable<CoercableComponent | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; goal?: CoercableComponent ; reward?: CoercableComponent ; title?: CoercableComponent }>

Defined in

profectus/src/features/challenges/challenge.tsx:38


goal

• Optional goal: Computable<DecimalSource>

Defined in

profectus/src/features/challenges/challenge.tsx:35


mark

• Optional mark: Computable<string | boolean>

Defined in

profectus/src/features/challenges/challenge.tsx:33


onComplete

• Optional onComplete: VoidFunction

Defined in

profectus/src/features/challenges/challenge.tsx:48


onEnter

• Optional onEnter: VoidFunction

Defined in

profectus/src/features/challenges/challenge.tsx:50


onExit

• Optional onExit: VoidFunction

Defined in

profectus/src/features/challenges/challenge.tsx:49


reset

• Optional reset: GenericReset

Defined in

profectus/src/features/challenges/challenge.tsx:30


resource

• Optional resource: Resource<DecimalSource>

Defined in

profectus/src/features/challenges/challenge.tsx:34


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/challenges/challenge.tsx:37


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/challenges/challenge.tsx:28

- + diff --git a/api/interfaces/features/clickables/clickable.BaseClickable.html b/api/interfaces/features/clickables/clickable.BaseClickable.html index e0cba6b8..42095bf3 100644 --- a/api/interfaces/features/clickables/clickable.BaseClickable.html +++ b/api/interfaces/features/clickables/clickable.BaseClickable.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseClickable

features/clickables/clickable.BaseClickable

Properties

[Component]

• [Component]: DefineComponent<{ canClick: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: { required: true = true; type: PropType<ProcessedComputable<undefined | CoercableComponent | { description: CoercableComponent ; title?: CoercableComponent } | { description: CoercableComponent ; title?: CoercableComponent }>> } ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; onClick: PropType<(e?: MouseEvent | TouchEvent) => void> ; onHold: PropType<VoidFunction> ; small: BooleanConstructor = Boolean; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; comp: ShallowRef<string | Component<any, any, any, ComputedOptions, MethodOptions>> ; start: (e: MouseEvent | TouchEvent) => void ; stop: VoidFunction ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ canClick: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: { required: true = true; type: PropType<ProcessedComputable<undefined | CoercableComponent | { description: CoercableComponent ; title?: CoercableComponent } | { description: CoercableComponent ; title?: CoercableComponent }>> } ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; onClick: PropType<(e?: MouseEvent | TouchEvent) => void> ; onHold: PropType<VoidFunction> ; small: BooleanConstructor = Boolean; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, { small: boolean = Boolean }>

Defined in

profectus/src/features/clickables/clickable.ts:39


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/clickables/clickable.ts:40


id

• id: string

Defined in

profectus/src/features/clickables/clickable.ts:37


type

• type: typeof ClickableType

Defined in

profectus/src/features/clickables/clickable.ts:38

- + diff --git a/api/interfaces/features/clickables/clickable.ClickableOptions.html b/api/interfaces/features/clickables/clickable.ClickableOptions.html index f61103a9..195cb1c5 100644 --- a/api/interfaces/features/clickables/clickable.ClickableOptions.html +++ b/api/interfaces/features/clickables/clickable.ClickableOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: ClickableOptions

features/clickables/clickable.ClickableOptions

Hierarchy

Properties

canClick

• Optional canClick: Computable<boolean>

Defined in

profectus/src/features/clickables/clickable.ts:20


classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/clickables/clickable.ts:21


display

• Optional display: Computable<CoercableComponent | { description: CoercableComponent ; title?: CoercableComponent }>

Defined in

profectus/src/features/clickables/clickable.ts:24


mark

• Optional mark: Computable<string | boolean>

Defined in

profectus/src/features/clickables/clickable.ts:23


onClick

• Optional onClick: (e?: MouseEvent | TouchEvent) => void

Type declaration

â–¸ (e?): void

Parameters
NameType
e?MouseEvent | TouchEvent
Returns

void

Defined in

profectus/src/features/clickables/clickable.ts:32


onHold

• Optional onHold: VoidFunction

Defined in

profectus/src/features/clickables/clickable.ts:33


small

• Optional small: boolean

Defined in

profectus/src/features/clickables/clickable.ts:31


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/clickables/clickable.ts:22


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/clickables/clickable.ts:19

- + diff --git a/api/interfaces/features/conversion.BaseConversion.html b/api/interfaces/features/conversion.BaseConversion.html index 3f8e66b6..f5e35b9e 100644 --- a/api/interfaces/features/conversion.BaseConversion.html +++ b/api/interfaces/features/conversion.BaseConversion.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/conversion.ConversionOptions.html b/api/interfaces/features/conversion.ConversionOptions.html index 7465ee15..56f6eafa 100644 --- a/api/interfaces/features/conversion.ConversionOptions.html +++ b/api/interfaces/features/conversion.ConversionOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: ConversionOptions

features/conversion.ConversionOptions

An object that configures a Conversion.

Properties

actualGain

• Optional actualGain: Computable<DecimalSource>

The absolute amount the output resource will be changed by. Typically this will be set for you in a conversion constructor. This will differ from currentGain in the cases where the conversion isn't just adding the converted amount to the output resource.

Defined in

profectus/src/features/conversion.ts:31


baseResource

• baseResource: Resource<DecimalSource>

The input Resource for this conversion.

Defined in

profectus/src/features/conversion.ts:46


buyMax

• Optional buyMax: Computable<boolean>

Whether or not to cap the amount of the output resource gained by converting at 1. Defaults to true.

Defined in

profectus/src/features/conversion.ts:55


convert

• Optional convert: VoidFunction

The function that performs the actual conversion from baseResource to gainResource. Typically this will be set for you in a conversion constructor.

Defined in

profectus/src/features/conversion.ts:64


costModifier

• Optional costModifier: WithRequired<Modifier, "revert">

A modifier that will be applied to the cost amounts. That is to say, this modifier will be applied to the amount of baseResource before going into the scaling function. A cost modifier of x0.5 would give gain amounts equal to the player having half the baseResource they actually have. Must be reversible in order to correctly calculate nextAt.

See

createSequentialModifier if you want to apply multiple modifiers.

Defined in

profectus/src/features/conversion.ts:89


currentAt

• Optional currentAt: Computable<DecimalSource>

The amount of the input resource currently being required in order to produce the currentGain. That is, if it went below this value then currentGain would decrease. Typically this will be set for you in a conversion constructor.

Defined in

profectus/src/features/conversion.ts:37


currentGain

• Optional currentGain: Computable<DecimalSource>

How much of the output resource the conversion can currently convert for. Typically this will be set for you in a conversion constructor.

Defined in

profectus/src/features/conversion.ts:25


gainModifier

• Optional gainModifier: WithRequired<Modifier, "revert">

An additional modifier that will be applied to the gain amounts. Must be reversible in order to correctly calculate nextAt.

See

createSequentialModifier if you want to apply multiple modifiers.

Defined in

profectus/src/features/conversion.ts:81


gainResource

• gainResource: Resource<DecimalSource>

The output Resource for this conversion. i.e. the resource being generated.

Defined in

profectus/src/features/conversion.ts:50


nextAt

• Optional nextAt: Computable<DecimalSource>

The amount of the input resource required to make currentGain increase. Typically this will be set for you in a conversion constructor.

Defined in

profectus/src/features/conversion.ts:42


onConvert

• Optional onConvert: (amountGained: DecimalSource) => void

Type declaration

â–¸ (amountGained): void

A callback that happens after a conversion has been completed. Receives the amount gained via conversion. This will not be called whenever using currentGain without calling convert (e.g. passive generation)

Parameters
NameType
amountGainedDecimalSource
Returns

void

Defined in

profectus/src/features/conversion.ts:75


roundUpCost

• Optional roundUpCost: Computable<boolean>

Whether or not to round up the cost to generate a given amount of the output resource.

Defined in

profectus/src/features/conversion.ts:59


scaling

• scaling: ScalingFunction

The scaling function that is used to determine the rate of conversion from one Resource to the other.

Defined in

profectus/src/features/conversion.ts:20


spend

• Optional spend: (amountGained: DecimalSource) => void

Type declaration

â–¸ (amountGained): void

The function that spends the baseResource as part of the conversion. Defaults to setting the baseResource amount to 0.

Parameters
NameType
amountGainedDecimalSource
Returns

void

Defined in

profectus/src/features/conversion.ts:69

- + diff --git a/api/interfaces/features/conversion.ScalingFunction.html b/api/interfaces/features/conversion.ScalingFunction.html index 88e08081..ee0c50e8 100644 --- a/api/interfaces/features/conversion.ScalingFunction.html +++ b/api/interfaces/features/conversion.ScalingFunction.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: ScalingFunction

features/conversion.ScalingFunction

A collection of functions that allow a conversion to scale the amount of resources gained based on the input resource. This typically shouldn't be created directly. Instead use one of the scaling function constructors.

See

Properties

currentAt

• currentAt: (conversion: GenericConversion) => DecimalSource

Type declaration

â–¸ (conversion): DecimalSource

Calculates the amount of the input resource that is required for the current value of conversion.currentGain. Note that conversion.currentGain has been modified by conversion.gainModifier, so you will need to revert that as appropriate. The conversion is responsible for rounding up the amount as appropriate. The returned value should not be below 0.

Parameters
NameType
conversionGenericConversion
Returns

DecimalSource

Defined in

profectus/src/features/conversion.ts:227


currentGain

• currentGain: (conversion: GenericConversion) => DecimalSource

Type declaration

â–¸ (conversion): DecimalSource

Calculates the amount of the output resource a conversion should be able to currently produce. This should be based off of conversion.baseResource.value. The conversion is responsible for applying the gainModifier, so this function should be un-modified. It does not need to be clamped or rounded.

Parameters
NameType
conversionGenericConversion
Returns

DecimalSource

Defined in

profectus/src/features/conversion.ts:220


nextAt

• nextAt: (conversion: GenericConversion) => DecimalSource

Type declaration

â–¸ (conversion): DecimalSource

Calculates the amount of the input resource that would be required for the current value of conversion.currentGain to increase. Note that conversion.currentGain has been modified by conversion.gainModifier, so you will need to revert that as appropriate. The conversion is responsible for rounding up the amount as appropriate. The returned value should not be below 0.

Parameters
NameType
conversionGenericConversion
Returns

DecimalSource

Defined in

profectus/src/features/conversion.ts:234

- + diff --git a/api/interfaces/features/grids/grid.BaseGrid.html b/api/interfaces/features/grids/grid.BaseGrid.html index 49a88d4b..37b959b7 100644 --- a/api/interfaces/features/grids/grid.BaseGrid.html +++ b/api/interfaces/features/grids/grid.BaseGrid.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseGrid

features/grids/grid.BaseGrid

Properties

[Component]

• [Component]: DefineComponent<{ cells: { required: true = true; type: PropType<ProcessedComputable<Record<string, GridCell>>> } ; cols: { required: true = true; type: PropType<ProcessedComputable<number>> } ; rows: { required: true = true; type: PropType<ProcessedComputable<number>> } ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; gatherCellProps: (cell: GridCell) => { canClick: boolean ; display: CoercableComponent ; id: string ; onClick: undefined | (e?: MouseEvent | TouchEvent) => void ; onHold: undefined | VoidFunction ; style: undefined | StyleValue ; title: undefined | CoercableComponent ; visibility: Visibility } ; mergeAdjacent: ComputedRef<boolean> ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ cells: { required: true = true; type: PropType<ProcessedComputable<Record<string, GridCell>>> } ; cols: { required: true = true; type: PropType<ProcessedComputable<number>> } ; rows: { required: true = true; type: PropType<ProcessedComputable<number>> } ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, {}>

Defined in

profectus/src/features/grids/grid.ts:209


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/grids/grid.ts:210


cellState

• cellState: Persistent<Record<string | number, State>>

Defined in

profectus/src/features/grids/grid.ts:207


cells

• cells: Record<string | number, GridCell>

Defined in

profectus/src/features/grids/grid.ts:206


getID

• getID: (id: string | number, state: State) => string

Type declaration

â–¸ (id, state): string

Parameters
NameType
idstring | number
stateState
Returns

string

Defined in

profectus/src/features/grids/grid.ts:203


getState

• getState: (id: string | number) => State

Type declaration

â–¸ (id): State

Parameters
NameType
idstring | number
Returns

State

Defined in

profectus/src/features/grids/grid.ts:204


id

• id: string

Defined in

profectus/src/features/grids/grid.ts:202


setState

• setState: (id: string | number, state: State) => void

Type declaration

â–¸ (id, state): void

Parameters
NameType
idstring | number
stateState
Returns

void

Defined in

profectus/src/features/grids/grid.ts:205


type

• type: typeof GridType

Defined in

profectus/src/features/grids/grid.ts:208

- + diff --git a/api/interfaces/features/grids/grid.GridCell.html b/api/interfaces/features/grids/grid.GridCell.html index 61386563..b1366087 100644 --- a/api/interfaces/features/grids/grid.GridCell.html +++ b/api/interfaces/features/grids/grid.GridCell.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: GridCell

features/grids/grid.GridCell

Properties

canClick

• canClick: boolean

Defined in

profectus/src/features/grids/grid.ts:175


classes

• Optional classes: Record<string, boolean>

Defined in

profectus/src/features/grids/grid.ts:179


display

• display: CoercableComponent

Defined in

profectus/src/features/grids/grid.ts:181


id

• id: string

Defined in

profectus/src/features/grids/grid.ts:173


onClick

• Optional onClick: (e?: MouseEvent | TouchEvent) => void

Type declaration

â–¸ (e?): void

Parameters
NameType
e?MouseEvent | TouchEvent
Returns

void

Defined in

profectus/src/features/grids/grid.ts:182


onHold

• Optional onHold: VoidFunction

Defined in

profectus/src/features/grids/grid.ts:183


startState

• startState: State

Defined in

profectus/src/features/grids/grid.ts:176


state

• state: State

Defined in

profectus/src/features/grids/grid.ts:177


style

• Optional style: StyleValue

Defined in

profectus/src/features/grids/grid.ts:178


title

• Optional title: CoercableComponent

Defined in

profectus/src/features/grids/grid.ts:180


visibility

• visibility: Visibility

Defined in

profectus/src/features/grids/grid.ts:174

- + diff --git a/api/interfaces/features/grids/grid.GridOptions.html b/api/interfaces/features/grids/grid.GridOptions.html index 7c2a40c8..c00571c6 100644 --- a/api/interfaces/features/grids/grid.GridOptions.html +++ b/api/interfaces/features/grids/grid.GridOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: GridOptions

features/grids/grid.GridOptions

Properties

cols

• cols: Computable<number>

Defined in

profectus/src/features/grids/grid.ts:189


getCanClick

• Optional getCanClick: CellComputable<boolean>

Defined in

profectus/src/features/grids/grid.ts:191


getClasses

• Optional getClasses: CellComputable<Record<string, boolean>>

Defined in

profectus/src/features/grids/grid.ts:194


getDisplay

• getDisplay: CellComputable<CoercableComponent>

Defined in

profectus/src/features/grids/grid.ts:196


getStartState

• getStartState: Computable<State> | (id: string | number) => State

Defined in

profectus/src/features/grids/grid.ts:192


getStyle

• Optional getStyle: CellComputable<StyleValue>

Defined in

profectus/src/features/grids/grid.ts:193


getTitle

• Optional getTitle: CellComputable<CoercableComponent>

Defined in

profectus/src/features/grids/grid.ts:195


getVisibility

• Optional getVisibility: CellComputable<Visibility>

Defined in

profectus/src/features/grids/grid.ts:190


onClick

• Optional onClick: (id: string | number, state: State, e?: MouseEvent | TouchEvent) => void

Type declaration

â–¸ (id, state, e?): void

Parameters
NameType
idstring | number
stateState
e?MouseEvent | TouchEvent
Returns

void

Defined in

profectus/src/features/grids/grid.ts:197


onHold

• Optional onHold: (id: string | number, state: State) => void

Type declaration

â–¸ (id, state): void

Parameters
NameType
idstring | number
stateState
Returns

void

Defined in

profectus/src/features/grids/grid.ts:198


rows

• rows: Computable<number>

Defined in

profectus/src/features/grids/grid.ts:188


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/grids/grid.ts:187

- + diff --git a/api/interfaces/features/hotkey.BaseHotkey.html b/api/interfaces/features/hotkey.BaseHotkey.html index 96e98931..ef936d13 100644 --- a/api/interfaces/features/hotkey.BaseHotkey.html +++ b/api/interfaces/features/hotkey.BaseHotkey.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/hotkey.HotkeyOptions.html b/api/interfaces/features/hotkey.HotkeyOptions.html index f2e684a2..4464002e 100644 --- a/api/interfaces/features/hotkey.HotkeyOptions.html +++ b/api/interfaces/features/hotkey.HotkeyOptions.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/infoboxes/infobox.BaseInfobox.html b/api/interfaces/features/infoboxes/infobox.BaseInfobox.html index d899c5d0..9cf91d58 100644 --- a/api/interfaces/features/infoboxes/infobox.BaseInfobox.html +++ b/api/interfaces/features/infoboxes/infobox.BaseInfobox.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseInfobox

features/infoboxes/infobox.BaseInfobox

Properties

[Component]

• [Component]: DefineComponent<{ bodyStyle: PropType<ProcessedComputable<StyleValue>> ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; collapsed: { required: true = true; type: PropType<Ref<boolean>> } ; color: PropType<ProcessedComputable<string>> ; display: { required: true = true; type: PropType<ProcessedComputable<CoercableComponent>> } ; id: { required: true = true; type: StringConstructor = String } ; style: PropType<ProcessedComputable<StyleValue>> ; title: { required: true = true; type: PropType<ProcessedComputable<CoercableComponent>> } ; titleStyle: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; bodyComponent: ShallowRef<"" | Component<any, any, any, ComputedOptions, MethodOptions>> ; stacked: ComputedRef<boolean> ; titleComponent: ShallowRef<"" | Component<any, any, any, ComputedOptions, MethodOptions>> ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ bodyStyle: PropType<ProcessedComputable<StyleValue>> ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; collapsed: { required: true = true; type: PropType<Ref<boolean>> } ; color: PropType<ProcessedComputable<string>> ; display: { required: true = true; type: PropType<ProcessedComputable<CoercableComponent>> } ; id: { required: true = true; type: StringConstructor = String } ; style: PropType<ProcessedComputable<StyleValue>> ; title: { required: true = true; type: PropType<ProcessedComputable<CoercableComponent>> } ; titleStyle: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, {}>

Defined in

profectus/src/features/infoboxes/infobox.ts:33


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/infoboxes/infobox.ts:34


collapsed

• collapsed: Persistent<boolean>

Defined in

profectus/src/features/infoboxes/infobox.ts:31


id

• id: string

Defined in

profectus/src/features/infoboxes/infobox.ts:30


type

• type: typeof InfoboxType

Defined in

profectus/src/features/infoboxes/infobox.ts:32

- + diff --git a/api/interfaces/features/infoboxes/infobox.InfoboxOptions.html b/api/interfaces/features/infoboxes/infobox.InfoboxOptions.html index cdef7d01..9d717d74 100644 --- a/api/interfaces/features/infoboxes/infobox.InfoboxOptions.html +++ b/api/interfaces/features/infoboxes/infobox.InfoboxOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: InfoboxOptions

features/infoboxes/infobox.InfoboxOptions

Properties

bodyStyle

• Optional bodyStyle: Computable<StyleValue>

Defined in

profectus/src/features/infoboxes/infobox.ts:23


classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/infoboxes/infobox.ts:24


color

• Optional color: Computable<string>

Defined in

profectus/src/features/infoboxes/infobox.ts:20


display

• display: Computable<CoercableComponent>

Defined in

profectus/src/features/infoboxes/infobox.ts:26


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/infoboxes/infobox.ts:21


title

• title: Computable<CoercableComponent>

Defined in

profectus/src/features/infoboxes/infobox.ts:25


titleStyle

• Optional titleStyle: Computable<StyleValue>

Defined in

profectus/src/features/infoboxes/infobox.ts:22


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/infoboxes/infobox.ts:19

- + diff --git a/api/interfaces/features/links/links.BaseLinks.html b/api/interfaces/features/links/links.BaseLinks.html index 39023bfa..81811d49 100644 --- a/api/interfaces/features/links/links.BaseLinks.html +++ b/api/interfaces/features/links/links.BaseLinks.html @@ -20,7 +20,7 @@
Skip to content
On this page
- + diff --git a/api/interfaces/features/links/links.Link.html b/api/interfaces/features/links/links.Link.html index 6ba4db8e..a6956bf5 100644 --- a/api/interfaces/features/links/links.Link.html +++ b/api/interfaces/features/links/links.Link.html @@ -20,7 +20,7 @@
Skip to content
On this page
- + diff --git a/api/interfaces/features/links/links.LinksOptions.html b/api/interfaces/features/links/links.LinksOptions.html index a16f6bf4..b5e8ef8b 100644 --- a/api/interfaces/features/links/links.LinksOptions.html +++ b/api/interfaces/features/links/links.LinksOptions.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/milestones/milestone.BaseMilestone.html b/api/interfaces/features/milestones/milestone.BaseMilestone.html index d96189c8..7a7856ff 100644 --- a/api/interfaces/features/milestones/milestone.BaseMilestone.html +++ b/api/interfaces/features/milestones/milestone.BaseMilestone.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseMilestone

features/milestones/milestone.BaseMilestone

Properties

[Component]

• [Component]: DefineComponent<{ classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: { required: true = true; type: PropType<ProcessedComputable<undefined | CoercableComponent | { effectDisplay?: CoercableComponent ; optionsDisplay?: CoercableComponent ; requirement: CoercableComponent } | { effectDisplay?: CoercableComponent ; optionsDisplay?: CoercableComponent ; requirement: CoercableComponent }>> } ; earned: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; id: { required: true = true; type: StringConstructor = String } ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; comp: ShallowRef<string | Component<any, any, any, ComputedOptions, MethodOptions>> ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: { required: true = true; type: PropType<ProcessedComputable<undefined | CoercableComponent | { effectDisplay?: CoercableComponent ; optionsDisplay?: CoercableComponent ; requirement: CoercableComponent } | { effectDisplay?: CoercableComponent ; optionsDisplay?: CoercableComponent ; requirement: CoercableComponent }>> } ; earned: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; id: { required: true = true; type: StringConstructor = String } ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, {}>

Defined in

profectus/src/features/milestones/milestone.tsx:57


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/milestones/milestone.tsx:58


complete

• complete: VoidFunction

Defined in

profectus/src/features/milestones/milestone.tsx:55


earned

• earned: Persistent<boolean>

Defined in

profectus/src/features/milestones/milestone.tsx:54


id

• id: string

Defined in

profectus/src/features/milestones/milestone.tsx:53


type

• type: typeof MilestoneType

Defined in

profectus/src/features/milestones/milestone.tsx:56

- + diff --git a/api/interfaces/features/milestones/milestone.MilestoneOptions.html b/api/interfaces/features/milestones/milestone.MilestoneOptions.html index e530311d..eddd56a6 100644 --- a/api/interfaces/features/milestones/milestone.MilestoneOptions.html +++ b/api/interfaces/features/milestones/milestone.MilestoneOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: MilestoneOptions

features/milestones/milestone.MilestoneOptions

Properties

classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/milestones/milestone.tsx:40


display

• Optional display: Computable<CoercableComponent | { effectDisplay?: CoercableComponent ; optionsDisplay?: CoercableComponent ; requirement: CoercableComponent }>

Defined in

profectus/src/features/milestones/milestone.tsx:41


onComplete

• Optional onComplete: VoidFunction

Defined in

profectus/src/features/milestones/milestone.tsx:49


shouldEarn

• Optional shouldEarn: () => boolean

Type declaration

â–¸ (): boolean

Returns

boolean

Defined in

profectus/src/features/milestones/milestone.tsx:38


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/milestones/milestone.tsx:39


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/milestones/milestone.tsx:37

- + diff --git a/api/interfaces/features/particles/particles.BaseParticles.html b/api/interfaces/features/particles/particles.BaseParticles.html index 389a3ea8..1e57ec13 100644 --- a/api/interfaces/features/particles/particles.BaseParticles.html +++ b/api/interfaces/features/particles/particles.BaseParticles.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseParticles

features/particles/particles.BaseParticles

Properties

[Component]

• [Component]: GenericComponent

Defined in

profectus/src/features/particles/particles.tsx:25


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/particles/particles.tsx:26


addEmitter

• addEmitter: (config: EmitterConfigV3) => Promise<Emitter>

Type declaration

â–¸ (config): Promise<Emitter>

Parameters
NameType
configEmitterConfigV3
Returns

Promise<Emitter>

Defined in

profectus/src/features/particles/particles.tsx:23


app

• app: Ref<null | Application>

Defined in

profectus/src/features/particles/particles.tsx:22


id

• id: string

Defined in

profectus/src/features/particles/particles.tsx:21


type

• type: typeof ParticlesType

Defined in

profectus/src/features/particles/particles.tsx:24

- + diff --git a/api/interfaces/features/particles/particles.ParticlesOptions.html b/api/interfaces/features/particles/particles.ParticlesOptions.html index db394cec..6c96d9b1 100644 --- a/api/interfaces/features/particles/particles.ParticlesOptions.html +++ b/api/interfaces/features/particles/particles.ParticlesOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: ParticlesOptions

features/particles/particles.ParticlesOptions

Properties

classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/particles/particles.tsx:14


onContainerResized

• Optional onContainerResized: (boundingRect: DOMRect) => void

Type declaration

â–¸ (boundingRect): void

Parameters
NameType
boundingRectDOMRect
Returns

void

Defined in

profectus/src/features/particles/particles.tsx:16


onHotReload

• Optional onHotReload: VoidFunction

Defined in

profectus/src/features/particles/particles.tsx:17


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/particles/particles.tsx:15

- + diff --git a/api/interfaces/features/reset.BaseReset.html b/api/interfaces/features/reset.BaseReset.html index 34aa4cc7..b04caf12 100644 --- a/api/interfaces/features/reset.BaseReset.html +++ b/api/interfaces/features/reset.BaseReset.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/reset.ResetOptions.html b/api/interfaces/features/reset.ResetOptions.html index 5c681217..60e8f701 100644 --- a/api/interfaces/features/reset.ResetOptions.html +++ b/api/interfaces/features/reset.ResetOptions.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/resources/resource.Resource.html b/api/interfaces/features/resources/resource.Resource.html index 488eb4af..25bf0a09 100644 --- a/api/interfaces/features/resources/resource.Resource.html +++ b/api/interfaces/features/resources/resource.Resource.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: Resource<T>

features/resources/resource.Resource

Type parameters

NameType
TDecimalSource

Hierarchy

  • Ref<T>

    ↳ Resource

Properties

[RefSymbol]

• [RefSymbol]: true

Type differentiator only. We need this to be in public d.ts but don't want it to show up in IDE autocomplete, so we use a private Symbol instead.

Inherited from

Ref.__@RefSymbol@17474

Defined in

node_modules/@vue/runtime-core/node_modules/@vue/reactivity/dist/reactivity.d.ts:198


displayName

• displayName: string

Defined in

profectus/src/features/resources/resource.ts:10


precision

• precision: number

Defined in

profectus/src/features/resources/resource.ts:11


small

• Optional small: boolean

Defined in

profectus/src/features/resources/resource.ts:12


value

• value: T

Inherited from

Ref.value

Defined in

node_modules/@vue/runtime-core/node_modules/@vue/reactivity/dist/reactivity.d.ts:192

- + diff --git a/api/interfaces/features/tabs/tab.BaseTab.html b/api/interfaces/features/tabs/tab.BaseTab.html index 2995e4e4..d782bd40 100644 --- a/api/interfaces/features/tabs/tab.BaseTab.html +++ b/api/interfaces/features/tabs/tab.BaseTab.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseTab

features/tabs/tab.BaseTab

Properties

[Component]

• [Component]: DefineComponent<__VLS_TypePropsToRuntimeProps<{ display: CoercableComponent }>, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{ display: CoercableComponent }>>>, {}>

Defined in

profectus/src/features/tabs/tab.ts:18


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/tabs/tab.ts:19


id

• id: string

Defined in

profectus/src/features/tabs/tab.ts:16


type

• type: typeof TabType

Defined in

profectus/src/features/tabs/tab.ts:17

- + diff --git a/api/interfaces/features/tabs/tab.TabOptions.html b/api/interfaces/features/tabs/tab.TabOptions.html index 19ca19f9..a954cd5d 100644 --- a/api/interfaces/features/tabs/tab.TabOptions.html +++ b/api/interfaces/features/tabs/tab.TabOptions.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/tabs/tabFamily.BaseTabButton.html b/api/interfaces/features/tabs/tabFamily.BaseTabButton.html index ea66eb40..701e141a 100644 --- a/api/interfaces/features/tabs/tabFamily.BaseTabButton.html +++ b/api/interfaces/features/tabs/tabFamily.BaseTabButton.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseTabButton

features/tabs/tabFamily.BaseTabButton

Properties

[Component]

• [Component]: DefineComponent<{ active: BooleanConstructor = Boolean; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: { required: true = true; type: PropType<ProcessedComputable<CoercableComponent>> } ; floating: BooleanConstructor = Boolean; glowColor: PropType<ProcessedComputable<string>> ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; component: ShallowRef<"" | Component<any, any, any, ComputedOptions, MethodOptions>> ; glowColorStyle: ComputedRef<{ borderColor: string = "rgba(0, 0, 0, 0.125)"; boxShadow: string ; transform: string = "scale(1.05, 1.05)"; zIndex: number = 1 } | { boxShadow: undefined } | { boxShadow: string }> ; selectTab: () => void ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "selectTab"[], "selectTab", PublicProps, Readonly<ExtractPropTypes<{ active: BooleanConstructor = Boolean; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; display: { required: true = true; type: PropType<ProcessedComputable<CoercableComponent>> } ; floating: BooleanConstructor = Boolean; glowColor: PropType<ProcessedComputable<string>> ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>> & { onSelectTab: undefined | (...args: any[]) => any }, { active: boolean = Boolean; floating: boolean = Boolean }>

Defined in

profectus/src/features/tabs/tabFamily.ts:33


type

• type: typeof TabButtonType

Defined in

profectus/src/features/tabs/tabFamily.ts:32

- + diff --git a/api/interfaces/features/tabs/tabFamily.BaseTabFamily.html b/api/interfaces/features/tabs/tabFamily.BaseTabFamily.html index b6b40e82..290e052e 100644 --- a/api/interfaces/features/tabs/tabFamily.BaseTabFamily.html +++ b/api/interfaces/features/tabs/tabFamily.BaseTabFamily.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseTabFamily

features/tabs/tabFamily.BaseTabFamily

Properties

[Component]

• [Component]: DefineComponent<{ activeTab: { required: true = true; type: PropType<ProcessedComputable<null | CoercableComponent | GenericTab>> } ; buttonContainerClasses: PropType<ProcessedComputable<Record<string, boolean>>> ; buttonContainerStyle: PropType<ProcessedComputable<StyleValue>> ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; selected: { required: true = true; type: PropType<Ref<string>> } ; style: PropType<ProcessedComputable<StyleValue>> ; tabs: { required: true = true; type: PropType<ProcessedComputable<Record<string, GenericTabButton>>> } ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; component: ShallowRef<string | Component<any, any, any, ComputedOptions, MethodOptions>> ; floating: ComputedRef<boolean> ; gatherButtonProps: (button: GenericTabButton) => { classes: undefined | Record<string, boolean> | Ref<Record<string, boolean>> ; display: CoercableComponent | Ref<CoercableComponent> ; glowColor: undefined | string | Ref<string> ; style: undefined | string | CSSProperties | (string | CSSProperties)[] ; visibility: ProcessedComputable<Visibility> } ; tabClasses: ComputedRef<undefined | Record<string, boolean>> ; tabStyle: ComputedRef<undefined | string | CSSProperties | (string | CSSProperties)[]> ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ activeTab: { required: true = true; type: PropType<ProcessedComputable<null | CoercableComponent | GenericTab>> } ; buttonContainerClasses: PropType<ProcessedComputable<Record<string, boolean>>> ; buttonContainerStyle: PropType<ProcessedComputable<StyleValue>> ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; selected: { required: true = true; type: PropType<Ref<string>> } ; style: PropType<ProcessedComputable<StyleValue>> ; tabs: { required: true = true; type: PropType<ProcessedComputable<Record<string, GenericTabButton>>> } ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, {}>

Defined in

profectus/src/features/tabs/tabFamily.ts:69


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/tabs/tabFamily.ts:70


activeTab

• activeTab: Ref<null | CoercableComponent | GenericTab>

Defined in

profectus/src/features/tabs/tabFamily.ts:66


id

• id: string

Defined in

profectus/src/features/tabs/tabFamily.ts:64


selected

• selected: Persistent<string>

Defined in

profectus/src/features/tabs/tabFamily.ts:67


tabs

• tabs: Record<string, TabButtonOptions>

Defined in

profectus/src/features/tabs/tabFamily.ts:65


type

• type: typeof TabFamilyType

Defined in

profectus/src/features/tabs/tabFamily.ts:68

- + diff --git a/api/interfaces/features/tabs/tabFamily.TabButtonOptions.html b/api/interfaces/features/tabs/tabFamily.TabButtonOptions.html index 2f2692c7..905815b5 100644 --- a/api/interfaces/features/tabs/tabFamily.TabButtonOptions.html +++ b/api/interfaces/features/tabs/tabFamily.TabButtonOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: TabButtonOptions

features/tabs/tabFamily.TabButtonOptions

Properties

classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/tabs/tabFamily.ts:26


display

• display: Computable<CoercableComponent>

Defined in

profectus/src/features/tabs/tabFamily.ts:25


glowColor

• Optional glowColor: Computable<string>

Defined in

profectus/src/features/tabs/tabFamily.ts:28


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/tabs/tabFamily.ts:27


tab

• tab: Computable<CoercableComponent | GenericTab>

Defined in

profectus/src/features/tabs/tabFamily.ts:24


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/tabs/tabFamily.ts:23

- + diff --git a/api/interfaces/features/tabs/tabFamily.TabFamilyOptions.html b/api/interfaces/features/tabs/tabFamily.TabFamilyOptions.html index 9ad0ee89..c4b60a29 100644 --- a/api/interfaces/features/tabs/tabFamily.TabFamilyOptions.html +++ b/api/interfaces/features/tabs/tabFamily.TabFamilyOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: TabFamilyOptions

features/tabs/tabFamily.TabFamilyOptions

Properties

buttonContainerClasses

• Optional buttonContainerClasses: Computable<Record<string, boolean>>

Defined in

profectus/src/features/tabs/tabFamily.ts:59


buttonContainerStyle

• Optional buttonContainerStyle: Computable<StyleValue>

Defined in

profectus/src/features/tabs/tabFamily.ts:60


classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/tabs/tabFamily.ts:57


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/tabs/tabFamily.ts:58


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/tabs/tabFamily.ts:56

- + diff --git a/api/interfaces/features/tooltips/tooltip.BaseTooltip.html b/api/interfaces/features/tooltips/tooltip.BaseTooltip.html index 3afd8070..66430c3c 100644 --- a/api/interfaces/features/tooltips/tooltip.BaseTooltip.html +++ b/api/interfaces/features/tooltips/tooltip.BaseTooltip.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/features/tooltips/tooltip.TooltipOptions.html b/api/interfaces/features/tooltips/tooltip.TooltipOptions.html index 2ad7bc92..728668f4 100644 --- a/api/interfaces/features/tooltips/tooltip.TooltipOptions.html +++ b/api/interfaces/features/tooltips/tooltip.TooltipOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: TooltipOptions

features/tooltips/tooltip.TooltipOptions

Properties

classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/tooltips/tooltip.ts:27


direction

• Optional direction: Computable<Direction>

Defined in

profectus/src/features/tooltips/tooltip.ts:29


display

• display: Computable<CoercableComponent>

Defined in

profectus/src/features/tooltips/tooltip.ts:26


pinnable

• Optional pinnable: boolean

Defined in

profectus/src/features/tooltips/tooltip.ts:25


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/tooltips/tooltip.ts:28


xoffset

• Optional xoffset: Computable<string>

Defined in

profectus/src/features/tooltips/tooltip.ts:30


yoffset

• Optional yoffset: Computable<string>

Defined in

profectus/src/features/tooltips/tooltip.ts:31

- + diff --git a/api/interfaces/features/trees/tree.BaseTree.html b/api/interfaces/features/trees/tree.BaseTree.html index c60025b0..8b1cb6a8 100644 --- a/api/interfaces/features/trees/tree.BaseTree.html +++ b/api/interfaces/features/trees/tree.BaseTree.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseTree

features/trees/tree.BaseTree

Properties

[Component]

• [Component]: DefineComponent<{ branches: PropType<ProcessedComputable<TreeBranch[]>> ; leftSideNodes: PropType<ProcessedComputable<GenericTreeNode[]>> ; nodes: { required: true = true; type: PropType<ProcessedComputable<GenericTreeNode[][]>> } ; rightSideNodes: PropType<ProcessedComputable<GenericTreeNode[]>> }, { leftNodesComp: ShallowRef<undefined | "" | Component<any, any, any, ComputedOptions, MethodOptions>> ; nodesComp: ShallowRef<undefined | "" | Component<any, any, any, ComputedOptions, MethodOptions>> ; rightNodesComp: ShallowRef<undefined | "" | Component<any, any, any, ComputedOptions, MethodOptions>> ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ branches: PropType<ProcessedComputable<TreeBranch[]>> ; leftSideNodes: PropType<ProcessedComputable<GenericTreeNode[]>> ; nodes: { required: true = true; type: PropType<ProcessedComputable<GenericTreeNode[][]>> } ; rightSideNodes: PropType<ProcessedComputable<GenericTreeNode[]>> }>>, {}>

Defined in

profectus/src/features/trees/tree.ts:160


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/trees/tree.ts:161


id

• id: string

Defined in

profectus/src/features/trees/tree.ts:154


isResetting

• isResetting: Ref<boolean>

Defined in

profectus/src/features/trees/tree.ts:157


• links: Ref<Link[]>

Defined in

profectus/src/features/trees/tree.ts:155


reset

• reset: (node: GenericTreeNode) => void

Type declaration

â–¸ (node): void

Parameters
NameType
nodeGenericTreeNode
Returns

void

Defined in

profectus/src/features/trees/tree.ts:156


resettingNode

• resettingNode: Ref<null | GenericTreeNode>

Defined in

profectus/src/features/trees/tree.ts:158


type

• type: typeof TreeType

Defined in

profectus/src/features/trees/tree.ts:159

- + diff --git a/api/interfaces/features/trees/tree.BaseTreeNode.html b/api/interfaces/features/trees/tree.BaseTreeNode.html index cd4f1cf3..8ea4d67b 100644 --- a/api/interfaces/features/trees/tree.BaseTreeNode.html +++ b/api/interfaces/features/trees/tree.BaseTreeNode.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseTreeNode

features/trees/tree.BaseTreeNode

Properties

[Component]

• [Component]: DefineComponent<{ canClick: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; color: PropType<ProcessedComputable<string>> ; display: PropType<ProcessedComputable<CoercableComponent>> ; glowColor: PropType<ProcessedComputable<string>> ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; onClick: PropType<(e?: MouseEvent | TouchEvent) => void> ; onHold: PropType<VoidFunction> ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; comp: ShallowRef<null | "" | Component<any, any, any, ComputedOptions, MethodOptions>> ; isCoercableComponent: (component: unknown) => component is CoercableComponent ; start: (e: MouseEvent | TouchEvent) => void ; stop: VoidFunction ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ canClick: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; color: PropType<ProcessedComputable<string>> ; display: PropType<ProcessedComputable<CoercableComponent>> ; glowColor: PropType<ProcessedComputable<string>> ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; onClick: PropType<(e?: MouseEvent | TouchEvent) => void> ; onHold: PropType<VoidFunction> ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, {}>

Defined in

profectus/src/features/trees/tree.ts:42


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/trees/tree.ts:43


id

• id: string

Defined in

profectus/src/features/trees/tree.ts:40


type

• type: typeof TreeNodeType

Defined in

profectus/src/features/trees/tree.ts:41

- + diff --git a/api/interfaces/features/trees/tree.TreeBranch.html b/api/interfaces/features/trees/tree.TreeBranch.html index 7fac5dc9..00511594 100644 --- a/api/interfaces/features/trees/tree.TreeBranch.html +++ b/api/interfaces/features/trees/tree.TreeBranch.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: TreeBranch

features/trees/tree.TreeBranch

Hierarchy

  • Omit<Link, "startNode" | "endNode">

    ↳ TreeBranch

Properties

accent-height

• Optional accent-height: Numberish

Inherited from

Omit.accent-height

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:926


accumulate

• Optional accumulate: "none" | "sum"

Inherited from

Omit.accumulate

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:927


additive

• Optional additive: "replace" | "sum"

Inherited from

Omit.additive

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:928


alignment-baseline

• Optional alignment-baseline: "alphabetic" | "hanging" | "ideographic" | "mathematical" | "auto" | "baseline" | "before-edge" | "text-before-edge" | "middle" | "central" | "after-edge" | "text-after-edge" | "inherit"

Inherited from

Omit.alignment-baseline

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:929


allowReorder

• Optional allowReorder: "no" | "yes"

Inherited from

Omit.allowReorder

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:943


alphabetic

• Optional alphabetic: Numberish

Inherited from

Omit.alphabetic

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:944


amplitude

• Optional amplitude: Numberish

Inherited from

Omit.amplitude

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:945


arabic-form

• Optional arabic-form: "initial" | "medial" | "terminal" | "isolated"

Inherited from

Omit.arabic-form

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:946


aria-activedescendant

• Optional aria-activedescendant: string

Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.

Inherited from

Omit.aria-activedescendant

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:220


aria-atomic

• Optional aria-atomic: Booleanish

Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.

Inherited from

Omit.aria-atomic

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:222


aria-autocomplete

• Optional aria-autocomplete: "none" | "inline" | "list" | "both"

Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input and specifies how predictions would be presented if they are made.

Inherited from

Omit.aria-autocomplete

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:227


aria-busy

• Optional aria-busy: Booleanish

Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.

Inherited from

Omit.aria-busy

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:229


aria-checked

• Optional aria-checked: Booleanish | "mixed"

Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.

See

  • aria-pressed
  • aria-selected.

Inherited from

Omit.aria-checked

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:234


aria-colcount

• Optional aria-colcount: Numberish

Defines the total number of columns in a table, grid, or treegrid.

See

aria-colindex.

Inherited from

Omit.aria-colcount

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:239


aria-colindex

• Optional aria-colindex: Numberish

Defines an element's column index or position with respect to the total number of columns within a table, grid, or treegrid.

See

  • aria-colcount
  • aria-colspan.

Inherited from

Omit.aria-colindex

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:244


aria-colspan

• Optional aria-colspan: Numberish

Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.

See

  • aria-colindex
  • aria-rowspan.

Inherited from

Omit.aria-colspan

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:249


aria-controls

• Optional aria-controls: string

Identifies the element (or elements) whose contents or presence are controlled by the current element.

See

aria-owns.

Inherited from

Omit.aria-controls

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:254


aria-current

• Optional aria-current: "time" | Booleanish | "page" | "step" | "location" | "date"

Indicates the element that represents the current item within a container or set of related elements.

Inherited from

Omit.aria-current

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:256


aria-describedby

• Optional aria-describedby: string

Identifies the element (or elements) that describes the object.

See

aria-labelledby

Inherited from

Omit.aria-describedby

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:261


aria-details

• Optional aria-details: string

Identifies the element that provides a detailed, extended description for the object.

See

aria-describedby.

Inherited from

Omit.aria-details

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:266


aria-disabled

• Optional aria-disabled: Booleanish

Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.

See

  • aria-hidden
  • aria-readonly.

Inherited from

Omit.aria-disabled

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:271


aria-dropeffect

• Optional aria-dropeffect: "link" | "none" | "copy" | "execute" | "move" | "popup"

Indicates what functions can be performed when a dragged object is released on the drop target.

Deprecated

in ARIA 1.1

Inherited from

Omit.aria-dropeffect

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:276


aria-errormessage

• Optional aria-errormessage: string

Identifies the element that provides an error message for the object.

See

  • aria-invalid
  • aria-describedby.

Inherited from

Omit.aria-errormessage

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:281


aria-expanded

• Optional aria-expanded: Booleanish

Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.

Inherited from

Omit.aria-expanded

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:283


aria-flowto

• Optional aria-flowto: string

Identifies the next element (or elements) in an alternate reading order of content which, at the user's discretion, allows assistive technology to override the general default of reading in document source order.

Inherited from

Omit.aria-flowto

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:288


aria-grabbed

• Optional aria-grabbed: Booleanish

Indicates an element's "grabbed" state in a drag-and-drop operation.

Deprecated

in ARIA 1.1

Inherited from

Omit.aria-grabbed

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:293


aria-haspopup

• Optional aria-haspopup: "tree" | "grid" | Booleanish | "menu" | "listbox" | "dialog"

Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.

Inherited from

Omit.aria-haspopup

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:295


aria-hidden

• Optional aria-hidden: Booleanish

Indicates whether the element is exposed to an accessibility API.

See

aria-disabled.

Inherited from

Omit.aria-hidden

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:300


aria-invalid

• Optional aria-invalid: Booleanish | "grammar" | "spelling"

Indicates the entered value does not conform to the format expected by the application.

See

aria-errormessage.

Inherited from

Omit.aria-invalid

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:305


aria-keyshortcuts

• Optional aria-keyshortcuts: string

Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.

Inherited from

Omit.aria-keyshortcuts

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:307


aria-label

• Optional aria-label: string

Defines a string value that labels the current element.

See

aria-labelledby.

Inherited from

Omit.aria-label

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:312


aria-labelledby

• Optional aria-labelledby: string

Identifies the element (or elements) that labels the current element.

See

aria-describedby.

Inherited from

Omit.aria-labelledby

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:317


aria-level

• Optional aria-level: Numberish

Defines the hierarchical level of an element within a structure.

Inherited from

Omit.aria-level

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:319


aria-live

• Optional aria-live: "off" | "assertive" | "polite"

Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.

Inherited from

Omit.aria-live

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:321


aria-modal

• Optional aria-modal: Booleanish

Indicates whether an element is modal when displayed.

Inherited from

Omit.aria-modal

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:323


aria-multiline

• Optional aria-multiline: Booleanish

Indicates whether a text box accepts multiple lines of input or only a single line.

Inherited from

Omit.aria-multiline

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:325


aria-multiselectable

• Optional aria-multiselectable: Booleanish

Indicates that the user may select more than one item from the current selectable descendants.

Inherited from

Omit.aria-multiselectable

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:327


aria-orientation

• Optional aria-orientation: "horizontal" | "vertical"

Indicates whether the element's orientation is horizontal, vertical, or unknown/ambiguous.

Inherited from

Omit.aria-orientation

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:329


aria-owns

• Optional aria-owns: string

Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship between DOM elements where the DOM hierarchy cannot be used to represent the relationship.

See

aria-controls.

Inherited from

Omit.aria-owns

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:335


aria-placeholder

• Optional aria-placeholder: string

Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value. A hint could be a sample value or a brief description of the expected format.

Inherited from

Omit.aria-placeholder

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:340


aria-posinset

• Optional aria-posinset: Numberish

Defines an element's number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.

See

aria-setsize.

Inherited from

Omit.aria-posinset

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:345


aria-pressed

• Optional aria-pressed: Booleanish | "mixed"

Indicates the current "pressed" state of toggle buttons.

See

  • aria-checked
  • aria-selected.

Inherited from

Omit.aria-pressed

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:350


aria-readonly

• Optional aria-readonly: Booleanish

Indicates that the element is not editable, but is otherwise operable.

See

aria-disabled.

Inherited from

Omit.aria-readonly

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:355


aria-relevant

• Optional aria-relevant: "all" | "additions" | "additions text" | "removals" | "text"

Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.

See

aria-atomic.

Inherited from

Omit.aria-relevant

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:360


aria-required

• Optional aria-required: Booleanish

Indicates that user input is required on the element before a form may be submitted.

Inherited from

Omit.aria-required

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:362


aria-roledescription

• Optional aria-roledescription: string

Defines a human-readable, author-localized description for the role of an element.

Inherited from

Omit.aria-roledescription

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:364


aria-rowcount

• Optional aria-rowcount: Numberish

Defines the total number of rows in a table, grid, or treegrid.

See

aria-rowindex.

Inherited from

Omit.aria-rowcount

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:369


aria-rowindex

• Optional aria-rowindex: Numberish

Defines an element's row index or position with respect to the total number of rows within a table, grid, or treegrid.

See

  • aria-rowcount
  • aria-rowspan.

Inherited from

Omit.aria-rowindex

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:374


aria-rowspan

• Optional aria-rowspan: Numberish

Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.

See

  • aria-rowindex
  • aria-colspan.

Inherited from

Omit.aria-rowspan

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:379


aria-selected

• Optional aria-selected: Booleanish

Indicates the current "selected" state of various widgets.

See

  • aria-checked
  • aria-pressed.

Inherited from

Omit.aria-selected

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:384


aria-setsize

• Optional aria-setsize: Numberish

Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.

See

aria-posinset.

Inherited from

Omit.aria-setsize

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:389


aria-sort

• Optional aria-sort: "none" | "ascending" | "descending" | "other"

Indicates if items in a table or grid are sorted in ascending or descending order.

Inherited from

Omit.aria-sort

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:391


aria-valuemax

• Optional aria-valuemax: Numberish

Defines the maximum allowed value for a range widget.

Inherited from

Omit.aria-valuemax

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:393


aria-valuemin

• Optional aria-valuemin: Numberish

Defines the minimum allowed value for a range widget.

Inherited from

Omit.aria-valuemin

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:395


aria-valuenow

• Optional aria-valuenow: Numberish

Defines the current value for a range widget.

See

aria-valuetext.

Inherited from

Omit.aria-valuenow

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:400


aria-valuetext

• Optional aria-valuetext: string

Defines the human readable text alternative of aria-valuenow for a range widget.

Inherited from

Omit.aria-valuetext

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:402


ascent

• Optional ascent: Numberish

Inherited from

Omit.ascent

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:947


attributeName

• Optional attributeName: string

Inherited from

Omit.attributeName

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:948


attributeType

• Optional attributeType: string

Inherited from

Omit.attributeType

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:949


autoReverse

• Optional autoReverse: Numberish

Inherited from

Omit.autoReverse

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:950


azimuth

• Optional azimuth: Numberish

Inherited from

Omit.azimuth

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:951


baseFrequency

• Optional baseFrequency: Numberish

Inherited from

Omit.baseFrequency

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:952


baseProfile

• Optional baseProfile: Numberish

Inherited from

Omit.baseProfile

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:954


baseline-shift

• Optional baseline-shift: Numberish

Inherited from

Omit.baseline-shift

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:953


bbox

• Optional bbox: Numberish

Inherited from

Omit.bbox

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:955


begin

• Optional begin: Numberish

Inherited from

Omit.begin

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:956


bias

• Optional bias: Numberish

Inherited from

Omit.bias

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:957


by

• Optional by: Numberish

Inherited from

Omit.by

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:958


calcMode

• Optional calcMode: Numberish

Inherited from

Omit.calcMode

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:959


cap-height

• Optional cap-height: Numberish

Inherited from

Omit.cap-height

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:960


class

• Optional class: any

SVG Styling Attributes

See

https://www.w3.org/TR/SVG/styling.html#ElementSpecificStyling

Inherited from

Omit.class

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:905


clip

• Optional clip: Numberish

Inherited from

Omit.clip

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:961


clip-path

• Optional clip-path: string

Inherited from

Omit.clip-path

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:962


clip-rule

• Optional clip-rule: Numberish

Inherited from

Omit.clip-rule

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:964


clipPathUnits

• Optional clipPathUnits: Numberish

Inherited from

Omit.clipPathUnits

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:963


color

• Optional color: string

Inherited from

Omit.color

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:908


color-interpolation

• Optional color-interpolation: Numberish

Inherited from

Omit.color-interpolation

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:965


color-interpolation-filters

• Optional color-interpolation-filters: "auto" | "inherit" | "sRGB" | "linearRGB"

Inherited from

Omit.color-interpolation-filters

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:966


color-profile

• Optional color-profile: Numberish

Inherited from

Omit.color-profile

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:967


color-rendering

• Optional color-rendering: Numberish

Inherited from

Omit.color-rendering

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:968


contentScriptType

• Optional contentScriptType: Numberish

Inherited from

Omit.contentScriptType

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:969


contentStyleType

• Optional contentStyleType: Numberish

Inherited from

Omit.contentStyleType

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:970


cursor

• Optional cursor: Numberish

Inherited from

Omit.cursor

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:971


cx

• Optional cx: Numberish

Inherited from

Omit.cx

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:972


cy

• Optional cy: Numberish

Inherited from

Omit.cy

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:973


d

• Optional d: string

Inherited from

Omit.d

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:974


decelerate

• Optional decelerate: Numberish

Inherited from

Omit.decelerate

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:975


descent

• Optional descent: Numberish

Inherited from

Omit.descent

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:976


diffuseConstant

• Optional diffuseConstant: Numberish

Inherited from

Omit.diffuseConstant

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:977


direction

• Optional direction: Numberish

Inherited from

Omit.direction

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:978


display

• Optional display: Numberish

Inherited from

Omit.display

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:979


divisor

• Optional divisor: Numberish

Inherited from

Omit.divisor

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:980


dominant-baseline

• Optional dominant-baseline: Numberish

Inherited from

Omit.dominant-baseline

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:981


dur

• Optional dur: Numberish

Inherited from

Omit.dur

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:982


dx

• Optional dx: Numberish

Inherited from

Omit.dx

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:983


dy

• Optional dy: Numberish

Inherited from

Omit.dy

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:984


edgeMode

• Optional edgeMode: Numberish

Inherited from

Omit.edgeMode

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:985


elevation

• Optional elevation: Numberish

Inherited from

Omit.elevation

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:986


enable-background

• Optional enable-background: Numberish

Inherited from

Omit.enable-background

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:987


end

• Optional end: Numberish

Inherited from

Omit.end

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:988


endNode

• endNode: GenericTreeNode

Defined in

profectus/src/features/trees/tree.ts:140


exponent

• Optional exponent: Numberish

Inherited from

Omit.exponent

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:989


externalResourcesRequired

• Optional externalResourcesRequired: Numberish

Inherited from

Omit.externalResourcesRequired

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:990


fill

• Optional fill: string

Inherited from

Omit.fill

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:991


fill-opacity

• Optional fill-opacity: Numberish

Inherited from

Omit.fill-opacity

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:992


fill-rule

• Optional fill-rule: "inherit" | "nonzero" | "evenodd"

Inherited from

Omit.fill-rule

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:993


filter

• Optional filter: string

Inherited from

Omit.filter

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:994


filterRes

• Optional filterRes: Numberish

Inherited from

Omit.filterRes

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:995


filterUnits

• Optional filterUnits: Numberish

Inherited from

Omit.filterUnits

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:996


flood-color

• Optional flood-color: Numberish

Inherited from

Omit.flood-color

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:997


flood-opacity

• Optional flood-opacity: Numberish

Inherited from

Omit.flood-opacity

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:998


focusable

• Optional focusable: Numberish

Inherited from

Omit.focusable

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:999


font-family

• Optional font-family: string

Inherited from

Omit.font-family

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1000


font-size

• Optional font-size: Numberish

Inherited from

Omit.font-size

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1001


font-size-adjust

• Optional font-size-adjust: Numberish

Inherited from

Omit.font-size-adjust

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1002


font-stretch

• Optional font-stretch: Numberish

Inherited from

Omit.font-stretch

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1003


font-style

• Optional font-style: Numberish

Inherited from

Omit.font-style

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1004


font-variant

• Optional font-variant: Numberish

Inherited from

Omit.font-variant

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1005


font-weight

• Optional font-weight: Numberish

Inherited from

Omit.font-weight

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1006


format

• Optional format: Numberish

Inherited from

Omit.format

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1007


from

• Optional from: Numberish

Inherited from

Omit.from

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1008


fx

• Optional fx: Numberish

Inherited from

Omit.fx

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1009


fy

• Optional fy: Numberish

Inherited from

Omit.fy

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1010


g1

• Optional g1: Numberish

Inherited from

Omit.g1

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1011


g2

• Optional g2: Numberish

Inherited from

Omit.g2

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1012


glyph-name

• Optional glyph-name: Numberish

Inherited from

Omit.glyph-name

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1013


glyph-orientation-horizontal

• Optional glyph-orientation-horizontal: Numberish

Inherited from

Omit.glyph-orientation-horizontal

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1014


glyph-orientation-vertical

• Optional glyph-orientation-vertical: Numberish

Inherited from

Omit.glyph-orientation-vertical

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1015


glyphRef

• Optional glyphRef: Numberish

Inherited from

Omit.glyphRef

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1016


gradientTransform

• Optional gradientTransform: string

Inherited from

Omit.gradientTransform

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1017


gradientUnits

• Optional gradientUnits: string

Inherited from

Omit.gradientUnits

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1018


hanging

• Optional hanging: Numberish

Inherited from

Omit.hanging

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1019


height

• Optional height: Numberish

Inherited from

Omit.height

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:909


horiz-adv-x

• Optional horiz-adv-x: Numberish

Inherited from

Omit.horiz-adv-x

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1020


horiz-origin-x

• Optional horiz-origin-x: Numberish

Inherited from

Omit.horiz-origin-x

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1021


href

• Optional href: string

Inherited from

Omit.href

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1022


id

• Optional id: string

Inherited from

Omit.id

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:910


ideographic

• Optional ideographic: Numberish

Inherited from

Omit.ideographic

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1023


image-rendering

• Optional image-rendering: Numberish

Inherited from

Omit.image-rendering

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1024


in

• Optional in: string

Inherited from

Omit.in

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1026


in2

• Optional in2: Numberish

Inherited from

Omit.in2

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1025


innerHTML

• Optional innerHTML: string

Inherited from

Omit.innerHTML

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:899


intercept

• Optional intercept: Numberish

Inherited from

Omit.intercept

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1027


k

• Optional k: Numberish

Inherited from

Omit.k

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1032


k1

• Optional k1: Numberish

Inherited from

Omit.k1

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1028


k2

• Optional k2: Numberish

Inherited from

Omit.k2

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1029


k3

• Optional k3: Numberish

Inherited from

Omit.k3

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1030


k4

• Optional k4: Numberish

Inherited from

Omit.k4

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1031


kernelMatrix

• Optional kernelMatrix: Numberish

Inherited from

Omit.kernelMatrix

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1033


kernelUnitLength

• Optional kernelUnitLength: Numberish

Inherited from

Omit.kernelUnitLength

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1034


kerning

• Optional kerning: Numberish

Inherited from

Omit.kerning

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1035


keyPoints

• Optional keyPoints: Numberish

Inherited from

Omit.keyPoints

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1036


keySplines

• Optional keySplines: Numberish

Inherited from

Omit.keySplines

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1037


keyTimes

• Optional keyTimes: Numberish

Inherited from

Omit.keyTimes

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1038


lang

• Optional lang: string

Inherited from

Omit.lang

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:911


lengthAdjust

• Optional lengthAdjust: Numberish

Inherited from

Omit.lengthAdjust

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1039


letter-spacing

• Optional letter-spacing: Numberish

Inherited from

Omit.letter-spacing

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1040


lighting-color

• Optional lighting-color: Numberish

Inherited from

Omit.lighting-color

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1041


limitingConeAngle

• Optional limitingConeAngle: Numberish

Inherited from

Omit.limitingConeAngle

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1042


local

• Optional local: Numberish

Inherited from

Omit.local

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1043


marker-end

• Optional marker-end: string

Inherited from

Omit.marker-end

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1044


marker-mid

• Optional marker-mid: string

Inherited from

Omit.marker-mid

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1046


marker-start

• Optional marker-start: string

Inherited from

Omit.marker-start

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1047


markerHeight

• Optional markerHeight: Numberish

Inherited from

Omit.markerHeight

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1045


markerUnits

• Optional markerUnits: Numberish

Inherited from

Omit.markerUnits

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1048


markerWidth

• Optional markerWidth: Numberish

Inherited from

Omit.markerWidth

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1049


mask

• Optional mask: string

Inherited from

Omit.mask

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1050


maskContentUnits

• Optional maskContentUnits: Numberish

Inherited from

Omit.maskContentUnits

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1051


maskUnits

• Optional maskUnits: Numberish

Inherited from

Omit.maskUnits

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1052


mathematical

• Optional mathematical: Numberish

Inherited from

Omit.mathematical

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1053


max

• Optional max: Numberish

Inherited from

Omit.max

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:912


media

• Optional media: string

Inherited from

Omit.media

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:913


method

• Optional method: string

Inherited from

Omit.method

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:914


min

• Optional min: Numberish

Inherited from

Omit.min

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:915


mode

• Optional mode: Numberish

Inherited from

Omit.mode

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1054


name

• Optional name: string

Inherited from

Omit.name

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:916


numOctaves

• Optional numOctaves: Numberish

Inherited from

Omit.numOctaves

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1055


offset

• Optional offset: Numberish

Inherited from

Omit.offset

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1056


offsetEnd

• Optional offsetEnd: Position

Inherited from

Omit.offsetEnd

Defined in

profectus/src/features/links/links.ts:16


offsetStart

• Optional offsetStart: Position

Inherited from

Omit.offsetStart

Defined in

profectus/src/features/links/links.ts:15


onAbort

• Optional onAbort: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onAbort

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1413


onAnimationend

• Optional onAnimationend: (payload: AnimationEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadAnimationEvent
Returns

void

Inherited from

Omit.onAnimationend

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1463


onAnimationiteration

• Optional onAnimationiteration: (payload: AnimationEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadAnimationEvent
Returns

void

Inherited from

Omit.onAnimationiteration

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1464


onAnimationstart

• Optional onAnimationstart: (payload: AnimationEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadAnimationEvent
Returns

void

Inherited from

Omit.onAnimationstart

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1462


onAuxclick

• Optional onAuxclick: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onAuxclick

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1400


onBeforeinput

• Optional onBeforeinput: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onBeforeinput

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1384


onBlur

• Optional onBlur: (payload: FocusEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadFocusEvent
Returns

void

Inherited from

Omit.onBlur

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1380


onCanplay

• Optional onCanplay: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onCanplay

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1414


onCanplaythrough

• Optional onCanplaythrough: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onCanplaythrough

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1415


onChange

• Optional onChange: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onChange

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1383


onClick

• Optional onClick: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onClick

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1401


onCompositionend

• Optional onCompositionend: (payload: CompositionEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadCompositionEvent
Returns

void

Inherited from

Omit.onCompositionend

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1362


onCompositionstart

• Optional onCompositionstart: (payload: CompositionEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadCompositionEvent
Returns

void

Inherited from

Omit.onCompositionstart

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1363


onCompositionupdate

• Optional onCompositionupdate: (payload: CompositionEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadCompositionEvent
Returns

void

Inherited from

Omit.onCompositionupdate

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1364


onContextmenu

• Optional onContextmenu: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onContextmenu

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1402


onCopy

• Optional onCopy: (payload: ClipboardEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadClipboardEvent
Returns

void

Inherited from

Omit.onCopy

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1357


onCut

• Optional onCut: (payload: ClipboardEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadClipboardEvent
Returns

void

Inherited from

Omit.onCut

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1358


onDblclick

• Optional onDblclick: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onDblclick

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1403


onDrag

• Optional onDrag: (payload: DragEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadDragEvent
Returns

void

Inherited from

Omit.onDrag

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1367


onDragend

• Optional onDragend: (payload: DragEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadDragEvent
Returns

void

Inherited from

Omit.onDragend

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1368


onDragenter

• Optional onDragenter: (payload: DragEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadDragEvent
Returns

void

Inherited from

Omit.onDragenter

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1369


onDragexit

• Optional onDragexit: (payload: DragEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadDragEvent
Returns

void

Inherited from

Omit.onDragexit

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1370


onDragleave

• Optional onDragleave: (payload: DragEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadDragEvent
Returns

void

Inherited from

Omit.onDragleave

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1371


onDragover

• Optional onDragover: (payload: DragEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadDragEvent
Returns

void

Inherited from

Omit.onDragover

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1372


onDragstart

• Optional onDragstart: (payload: DragEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadDragEvent
Returns

void

Inherited from

Omit.onDragstart

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1373


onDrop

• Optional onDrop: (payload: DragEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadDragEvent
Returns

void

Inherited from

Omit.onDrop

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1374


onDurationchange

• Optional onDurationchange: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onDurationchange

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1416


onEmptied

• Optional onEmptied: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onEmptied

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1417


onEncrypted

• Optional onEncrypted: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onEncrypted

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1418


onEnded

• Optional onEnded: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onEnded

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1419


onError

• Optional onError: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onError

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1392


onFocus

• Optional onFocus: (payload: FocusEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadFocusEvent
Returns

void

Inherited from

Omit.onFocus

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1377


onFocusin

• Optional onFocusin: (payload: FocusEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadFocusEvent
Returns

void

Inherited from

Omit.onFocusin

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1378


onFocusout

• Optional onFocusout: (payload: FocusEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadFocusEvent
Returns

void

Inherited from

Omit.onFocusout

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1379


onInput

• Optional onInput: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onInput

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1385


onInvalid

• Optional onInvalid: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onInvalid

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1388


onKeydown

• Optional onKeydown: (payload: KeyboardEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadKeyboardEvent
Returns

void

Inherited from

Omit.onKeydown

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1395


onKeypress

• Optional onKeypress: (payload: KeyboardEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadKeyboardEvent
Returns

void

Inherited from

Omit.onKeypress

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1396


onKeyup

• Optional onKeyup: (payload: KeyboardEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadKeyboardEvent
Returns

void

Inherited from

Omit.onKeyup

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1397


onLoad

• Optional onLoad: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onLoad

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1391


onLoadeddata

• Optional onLoadeddata: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onLoadeddata

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1420


onLoadedmetadata

• Optional onLoadedmetadata: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onLoadedmetadata

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1421


onLoadstart

• Optional onLoadstart: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onLoadstart

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1422


onMousedown

• Optional onMousedown: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onMousedown

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1404


onMouseenter

• Optional onMouseenter: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onMouseenter

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1405


onMouseleave

• Optional onMouseleave: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onMouseleave

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1406


onMousemove

• Optional onMousemove: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onMousemove

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1407


onMouseout

• Optional onMouseout: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onMouseout

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1408


onMouseover

• Optional onMouseover: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onMouseover

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1409


onMouseup

• Optional onMouseup: (payload: MouseEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadMouseEvent
Returns

void

Inherited from

Omit.onMouseup

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1410


onPaste

• Optional onPaste: (payload: ClipboardEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadClipboardEvent
Returns

void

Inherited from

Omit.onPaste

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1359


onPause

• Optional onPause: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onPause

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1423


onPlay

• Optional onPlay: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onPlay

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1424


onPlaying

• Optional onPlaying: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onPlaying

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1425


onPointercancel

• Optional onPointercancel: (payload: PointerEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadPointerEvent
Returns

void

Inherited from

Omit.onPointercancel

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1452


onPointerdown

• Optional onPointerdown: (payload: PointerEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadPointerEvent
Returns

void

Inherited from

Omit.onPointerdown

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1449


onPointerenter

• Optional onPointerenter: (payload: PointerEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadPointerEvent
Returns

void

Inherited from

Omit.onPointerenter

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1453


onPointerleave

• Optional onPointerleave: (payload: PointerEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadPointerEvent
Returns

void

Inherited from

Omit.onPointerleave

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1454


onPointermove

• Optional onPointermove: (payload: PointerEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadPointerEvent
Returns

void

Inherited from

Omit.onPointermove

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1450


onPointerout

• Optional onPointerout: (payload: PointerEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadPointerEvent
Returns

void

Inherited from

Omit.onPointerout

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1456


onPointerover

• Optional onPointerover: (payload: PointerEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadPointerEvent
Returns

void

Inherited from

Omit.onPointerover

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1455


onPointerup

• Optional onPointerup: (payload: PointerEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadPointerEvent
Returns

void

Inherited from

Omit.onPointerup

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1451


onProgress

• Optional onProgress: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onProgress

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1426


onRatechange

• Optional onRatechange: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onRatechange

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1427


onReset

• Optional onReset: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onReset

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1386


onScroll

• Optional onScroll: (payload: UIEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadUIEvent
Returns

void

Inherited from

Omit.onScroll

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1440


onSeeked

• Optional onSeeked: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onSeeked

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1428


onSeeking

• Optional onSeeking: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onSeeking

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1429


onSelect

• Optional onSelect: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onSelect

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1437


onStalled

• Optional onStalled: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onStalled

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1430


onSubmit

• Optional onSubmit: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onSubmit

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1387


onSuspend

• Optional onSuspend: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onSuspend

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1431


onTimeupdate

• Optional onTimeupdate: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onTimeupdate

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1432


onTouchcancel

• Optional onTouchcancel: (payload: TouchEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadTouchEvent
Returns

void

Inherited from

Omit.onTouchcancel

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1443


onTouchend

• Optional onTouchend: (payload: TouchEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadTouchEvent
Returns

void

Inherited from

Omit.onTouchend

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1444


onTouchmove

• Optional onTouchmove: (payload: TouchEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadTouchEvent
Returns

void

Inherited from

Omit.onTouchmove

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1445


onTouchstart

• Optional onTouchstart: (payload: TouchEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadTouchEvent
Returns

void

Inherited from

Omit.onTouchstart

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1446


onTransitionend

• Optional onTransitionend: (payload: TransitionEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadTransitionEvent
Returns

void

Inherited from

Omit.onTransitionend

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1467


onTransitionstart

• Optional onTransitionstart: (payload: TransitionEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadTransitionEvent
Returns

void

Inherited from

Omit.onTransitionstart

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1468


onVolumechange

• Optional onVolumechange: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onVolumechange

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1433


onWaiting

• Optional onWaiting: (payload: Event) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadEvent
Returns

void

Inherited from

Omit.onWaiting

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1434


onWheel

• Optional onWheel: (payload: WheelEvent) => void

Type declaration

â–¸ (payload): void

Parameters
NameType
payloadWheelEvent
Returns

void

Inherited from

Omit.onWheel

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1459


opacity

• Optional opacity: Numberish

Inherited from

Omit.opacity

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1057


operator

• Optional operator: Numberish

Inherited from

Omit.operator

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1058


order

• Optional order: Numberish

Inherited from

Omit.order

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1059


orient

• Optional orient: Numberish

Inherited from

Omit.orient

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1060


orientation

• Optional orientation: Numberish

Inherited from

Omit.orientation

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1061


origin

• Optional origin: Numberish

Inherited from

Omit.origin

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1062


overflow

• Optional overflow: Numberish

Inherited from

Omit.overflow

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1063


overline-position

• Optional overline-position: Numberish

Inherited from

Omit.overline-position

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1064


overline-thickness

• Optional overline-thickness: Numberish

Inherited from

Omit.overline-thickness

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1065


paint-order

• Optional paint-order: Numberish

Inherited from

Omit.paint-order

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1066


panose-1

• Optional panose-1: Numberish

Inherited from

Omit.panose-1

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1067


pathLength

• Optional pathLength: Numberish

Inherited from

Omit.pathLength

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1068


patternContentUnits

• Optional patternContentUnits: string

Inherited from

Omit.patternContentUnits

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1069


patternTransform

• Optional patternTransform: Numberish

Inherited from

Omit.patternTransform

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1070


patternUnits

• Optional patternUnits: string

Inherited from

Omit.patternUnits

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1071


pointer-events

• Optional pointer-events: Numberish

Inherited from

Omit.pointer-events

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1072


points

• Optional points: string

Inherited from

Omit.points

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1073


pointsAtX

• Optional pointsAtX: Numberish

Inherited from

Omit.pointsAtX

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1074


pointsAtY

• Optional pointsAtY: Numberish

Inherited from

Omit.pointsAtY

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1075


pointsAtZ

• Optional pointsAtZ: Numberish

Inherited from

Omit.pointsAtZ

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1076


preserveAlpha

• Optional preserveAlpha: Numberish

Inherited from

Omit.preserveAlpha

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1077


preserveAspectRatio

• Optional preserveAspectRatio: string

Inherited from

Omit.preserveAspectRatio

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1078


primitiveUnits

• Optional primitiveUnits: Numberish

Inherited from

Omit.primitiveUnits

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1079


r

• Optional r: Numberish

Inherited from

Omit.r

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1080


radius

• Optional radius: Numberish

Inherited from

Omit.radius

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1081


refX

• Optional refX: Numberish

Inherited from

Omit.refX

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1082


refY

• Optional refY: Numberish

Inherited from

Omit.refY

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1083


renderingIntent

• Optional renderingIntent: Numberish

Inherited from

Omit.renderingIntent

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1084


repeatCount

• Optional repeatCount: Numberish

Inherited from

Omit.repeatCount

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1085


repeatDur

• Optional repeatDur: Numberish

Inherited from

Omit.repeatDur

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1086


requiredExtensions

• Optional requiredExtensions: Numberish

Inherited from

Omit.requiredExtensions

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1087


requiredFeatures

• Optional requiredFeatures: Numberish

Inherited from

Omit.requiredFeatures

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1088


restart

• Optional restart: Numberish

Inherited from

Omit.restart

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1089


result

• Optional result: string

Inherited from

Omit.result

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1090


role

• Optional role: string

Inherited from

Omit.role

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:922


rotate

• Optional rotate: Numberish

Inherited from

Omit.rotate

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1091


rx

• Optional rx: Numberish

Inherited from

Omit.rx

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1092


ry

• Optional ry: Numberish

Inherited from

Omit.ry

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1093


scale

• Optional scale: Numberish

Inherited from

Omit.scale

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1094


seed

• Optional seed: Numberish

Inherited from

Omit.seed

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1095


shape-rendering

• Optional shape-rendering: Numberish

Inherited from

Omit.shape-rendering

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1096


slope

• Optional slope: Numberish

Inherited from

Omit.slope

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1097


spacing

• Optional spacing: Numberish

Inherited from

Omit.spacing

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1098


specularConstant

• Optional specularConstant: Numberish

Inherited from

Omit.specularConstant

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1099


specularExponent

• Optional specularExponent: Numberish

Inherited from

Omit.specularExponent

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1100


speed

• Optional speed: Numberish

Inherited from

Omit.speed

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1101


spreadMethod

• Optional spreadMethod: string

Inherited from

Omit.spreadMethod

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1102


startNode

• startNode: GenericTreeNode

Defined in

profectus/src/features/trees/tree.ts:139


startOffset

• Optional startOffset: Numberish

Inherited from

Omit.startOffset

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1103


stdDeviation

• Optional stdDeviation: Numberish

Inherited from

Omit.stdDeviation

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1104


stemh

• Optional stemh: Numberish

Inherited from

Omit.stemh

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1105


stemv

• Optional stemv: Numberish

Inherited from

Omit.stemv

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1106


stitchTiles

• Optional stitchTiles: Numberish

Inherited from

Omit.stitchTiles

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1107


stop-color

• Optional stop-color: string

Inherited from

Omit.stop-color

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1108


stop-opacity

• Optional stop-opacity: Numberish

Inherited from

Omit.stop-opacity

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1109


strikethrough-position

• Optional strikethrough-position: Numberish

Inherited from

Omit.strikethrough-position

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1110


strikethrough-thickness

• Optional strikethrough-thickness: Numberish

Inherited from

Omit.strikethrough-thickness

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1111


string

• Optional string: Numberish

Inherited from

Omit.string

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1112


stroke

• Optional stroke: string

Inherited from

Omit.stroke

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1113


stroke-dasharray

• Optional stroke-dasharray: Numberish

Inherited from

Omit.stroke-dasharray

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1114


stroke-dashoffset

• Optional stroke-dashoffset: Numberish

Inherited from

Omit.stroke-dashoffset

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1115


stroke-linecap

• Optional stroke-linecap: "inherit" | "butt" | "round" | "square"

Inherited from

Omit.stroke-linecap

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1116


stroke-linejoin

• Optional stroke-linejoin: "inherit" | "round" | "miter" | "bevel"

Inherited from

Omit.stroke-linejoin

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1117


stroke-miterlimit

• Optional stroke-miterlimit: Numberish

Inherited from

Omit.stroke-miterlimit

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1118


stroke-opacity

• Optional stroke-opacity: Numberish

Inherited from

Omit.stroke-opacity

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1119


stroke-width

• Optional stroke-width: Numberish

Inherited from

Omit.stroke-width

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1120


style

• Optional style: string | CSSProperties

Inherited from

Omit.style

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:906


surfaceScale

• Optional surfaceScale: Numberish

Inherited from

Omit.surfaceScale

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1121


systemLanguage

• Optional systemLanguage: Numberish

Inherited from

Omit.systemLanguage

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1122


tabindex

• Optional tabindex: Numberish

Inherited from

Omit.tabindex

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:923


tableValues

• Optional tableValues: Numberish

Inherited from

Omit.tableValues

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1123


target

• Optional target: string

Inherited from

Omit.target

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:917


targetX

• Optional targetX: Numberish

Inherited from

Omit.targetX

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1124


targetY

• Optional targetY: Numberish

Inherited from

Omit.targetY

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1125


text-anchor

• Optional text-anchor: string

Inherited from

Omit.text-anchor

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1126


text-decoration

• Optional text-decoration: Numberish

Inherited from

Omit.text-decoration

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1127


text-rendering

• Optional text-rendering: Numberish

Inherited from

Omit.text-rendering

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1129


textLength

• Optional textLength: Numberish

Inherited from

Omit.textLength

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1128


to

• Optional to: Numberish

Inherited from

Omit.to

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1130


transform

• Optional transform: string

Inherited from

Omit.transform

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1131


type

• Optional type: string

Inherited from

Omit.type

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:918


u1

• Optional u1: Numberish

Inherited from

Omit.u1

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1132


u2

• Optional u2: Numberish

Inherited from

Omit.u2

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1133


underline-position

• Optional underline-position: Numberish

Inherited from

Omit.underline-position

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1134


underline-thickness

• Optional underline-thickness: Numberish

Inherited from

Omit.underline-thickness

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1135


unicode

• Optional unicode: Numberish

Inherited from

Omit.unicode

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1136


unicode-bidi

• Optional unicode-bidi: Numberish

Inherited from

Omit.unicode-bidi

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1137


unicode-range

• Optional unicode-range: Numberish

Inherited from

Omit.unicode-range

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1138


unitsPer-em

• Optional unitsPer-em: Numberish

Inherited from

Omit.unitsPer-em

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1139


v-alphabetic

• Optional v-alphabetic: Numberish

Inherited from

Omit.v-alphabetic

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1140


v-hanging

• Optional v-hanging: Numberish

Inherited from

Omit.v-hanging

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1147


v-ideographic

• Optional v-ideographic: Numberish

Inherited from

Omit.v-ideographic

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1148


v-mathematical

• Optional v-mathematical: Numberish

Inherited from

Omit.v-mathematical

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1152


values

• Optional values: string

Inherited from

Omit.values

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1141


vector-effect

• Optional vector-effect: Numberish

Inherited from

Omit.vector-effect

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1142


version

• Optional version: string

Inherited from

Omit.version

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1143


vert-adv-y

• Optional vert-adv-y: Numberish

Inherited from

Omit.vert-adv-y

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1144


vert-origin-x

• Optional vert-origin-x: Numberish

Inherited from

Omit.vert-origin-x

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1145


vert-origin-y

• Optional vert-origin-y: Numberish

Inherited from

Omit.vert-origin-y

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1146


viewBox

• Optional viewBox: string

Inherited from

Omit.viewBox

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1149


viewTarget

• Optional viewTarget: Numberish

Inherited from

Omit.viewTarget

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1150


visibility

• Optional visibility: Numberish

Inherited from

Omit.visibility

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1151


width

• Optional width: Numberish

Inherited from

Omit.width

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:919


widths

• Optional widths: Numberish

Inherited from

Omit.widths

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1153


word-spacing

• Optional word-spacing: Numberish

Inherited from

Omit.word-spacing

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1154


writing-mode

• Optional writing-mode: Numberish

Inherited from

Omit.writing-mode

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1155


x

• Optional x: Numberish

Inherited from

Omit.x

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1158


x-height

• Optional x-height: Numberish

Inherited from

Omit.x-height

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1160


x1

• Optional x1: Numberish

Inherited from

Omit.x1

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1156


x2

• Optional x2: Numberish

Inherited from

Omit.x2

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1157


xChannelSelector

• Optional xChannelSelector: string

Inherited from

Omit.xChannelSelector

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1159


xlinkActuate

• Optional xlinkActuate: string

Inherited from

Omit.xlinkActuate

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1161


xlinkArcrole

• Optional xlinkArcrole: string

Inherited from

Omit.xlinkArcrole

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1162


xlinkHref

• Optional xlinkHref: string

Inherited from

Omit.xlinkHref

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1163


xlinkRole

• Optional xlinkRole: string

Inherited from

Omit.xlinkRole

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1164


xlinkShow

• Optional xlinkShow: string

Inherited from

Omit.xlinkShow

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1165


xlinkTitle

• Optional xlinkTitle: string

Inherited from

Omit.xlinkTitle

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1166


xlinkType

• Optional xlinkType: string

Inherited from

Omit.xlinkType

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1167


xmlns

• Optional xmlns: string

Inherited from

Omit.xmlns

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1168


y

• Optional y: Numberish

Inherited from

Omit.y

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1171


y1

• Optional y1: Numberish

Inherited from

Omit.y1

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1169


y2

• Optional y2: Numberish

Inherited from

Omit.y2

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1170


yChannelSelector

• Optional yChannelSelector: string

Inherited from

Omit.yChannelSelector

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1172


z

• Optional z: Numberish

Inherited from

Omit.z

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1173


zoomAndPan

• Optional zoomAndPan: string

Inherited from

Omit.zoomAndPan

Defined in

node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts:1174

- + diff --git a/api/interfaces/features/trees/tree.TreeNodeOptions.html b/api/interfaces/features/trees/tree.TreeNodeOptions.html index b052146e..ad558492 100644 --- a/api/interfaces/features/trees/tree.TreeNodeOptions.html +++ b/api/interfaces/features/trees/tree.TreeNodeOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: TreeNodeOptions

features/trees/tree.TreeNodeOptions

Hierarchy

Properties

canClick

• Optional canClick: Computable<boolean>

Defined in

profectus/src/features/trees/tree.ts:27


classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/trees/tree.ts:31


color

• Optional color: Computable<string>

Defined in

profectus/src/features/trees/tree.ts:28


display

• Optional display: Computable<CoercableComponent>

Defined in

profectus/src/features/trees/tree.ts:29


glowColor

• Optional glowColor: Computable<string>

Defined in

profectus/src/features/trees/tree.ts:30


mark

• Optional mark: Computable<string | boolean>

Defined in

profectus/src/features/trees/tree.ts:33


onClick

• Optional onClick: (e?: MouseEvent | TouchEvent) => void

Type declaration

â–¸ (e?): void

Parameters
NameType
e?MouseEvent | TouchEvent
Returns

void

Defined in

profectus/src/features/trees/tree.ts:35


onHold

• Optional onHold: VoidFunction

Defined in

profectus/src/features/trees/tree.ts:36


reset

• Optional reset: GenericReset

Defined in

profectus/src/features/trees/tree.ts:34


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/trees/tree.ts:32


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/trees/tree.ts:26

- + diff --git a/api/interfaces/features/trees/tree.TreeOptions.html b/api/interfaces/features/trees/tree.TreeOptions.html index a1b635bc..efaa20d2 100644 --- a/api/interfaces/features/trees/tree.TreeOptions.html +++ b/api/interfaces/features/trees/tree.TreeOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: TreeOptions

features/trees/tree.TreeOptions

Properties

branches

• Optional branches: Computable<TreeBranch[]>

Defined in

profectus/src/features/trees/tree.ts:148


leftSideNodes

• Optional leftSideNodes: Computable<GenericTreeNode[]>

Defined in

profectus/src/features/trees/tree.ts:146


nodes

• nodes: Computable<GenericTreeNode[][]>

Defined in

profectus/src/features/trees/tree.ts:145


onReset

• Optional onReset: (node: GenericTreeNode) => void

Type declaration

â–¸ (node): void

Parameters
NameType
nodeGenericTreeNode
Returns

void

Defined in

profectus/src/features/trees/tree.ts:150


resetPropagation

• Optional resetPropagation: ResetPropagation

Defined in

profectus/src/features/trees/tree.ts:149


rightSideNodes

• Optional rightSideNodes: Computable<GenericTreeNode[]>

Defined in

profectus/src/features/trees/tree.ts:147


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/trees/tree.ts:144

- + diff --git a/api/interfaces/features/upgrades/upgrade.BaseUpgrade.html b/api/interfaces/features/upgrades/upgrade.BaseUpgrade.html index a0c40da4..d5a5732d 100644 --- a/api/interfaces/features/upgrades/upgrade.BaseUpgrade.html +++ b/api/interfaces/features/upgrades/upgrade.BaseUpgrade.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseUpgrade

features/upgrades/upgrade.BaseUpgrade

Properties

[Component]

• [Component]: DefineComponent<{ bought: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; canPurchase: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; cost: PropType<ProcessedComputable<DecimalSource>> ; display: { required: true = true; type: PropType<ProcessedComputable<undefined | CoercableComponent | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; title?: CoercableComponent } | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; title?: CoercableComponent }>> } ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; purchase: { required: true = true; type: PropType<VoidFunction> } ; resource: PropType<Resource<DecimalSource>> ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }, { Visibility: typeof Visibility ; component: ShallowRef<string | Component<any, any, any, ComputedOptions, MethodOptions>> ; unref: <T>(ref: T | Ref<T>) => T }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, PublicProps, Readonly<ExtractPropTypes<{ bought: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; canPurchase: { required: true = true; type: PropType<ProcessedComputable<boolean>> } ; classes: PropType<ProcessedComputable<Record<string, boolean>>> ; cost: PropType<ProcessedComputable<DecimalSource>> ; display: { required: true = true; type: PropType<ProcessedComputable<undefined | CoercableComponent | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; title?: CoercableComponent } | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; title?: CoercableComponent }>> } ; id: { required: true = true; type: StringConstructor = String } ; mark: PropType<ProcessedComputable<string | boolean>> ; purchase: { required: true = true; type: PropType<VoidFunction> } ; resource: PropType<Resource<DecimalSource>> ; style: PropType<ProcessedComputable<StyleValue>> ; visibility: { required: true = true; type: PropType<ProcessedComputable<Visibility>> } }>>, {}>

Defined in

profectus/src/features/upgrades/upgrade.ts:56


[GatherProps]

• [GatherProps]: () => Record<string, unknown>

Type declaration

â–¸ (): Record<string, unknown>

Returns

Record<string, unknown>

Defined in

profectus/src/features/upgrades/upgrade.ts:57


bought

• bought: Persistent<boolean>

Defined in

profectus/src/features/upgrades/upgrade.ts:52


canPurchase

• canPurchase: Ref<boolean>

Defined in

profectus/src/features/upgrades/upgrade.ts:53


id

• id: string

Defined in

profectus/src/features/upgrades/upgrade.ts:51


purchase

• purchase: VoidFunction

Defined in

profectus/src/features/upgrades/upgrade.ts:54


type

• type: typeof UpgradeType

Defined in

profectus/src/features/upgrades/upgrade.ts:55

- + diff --git a/api/interfaces/features/upgrades/upgrade.UpgradeOptions.html b/api/interfaces/features/upgrades/upgrade.UpgradeOptions.html index 504ae529..e82aefd8 100644 --- a/api/interfaces/features/upgrades/upgrade.UpgradeOptions.html +++ b/api/interfaces/features/upgrades/upgrade.UpgradeOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: UpgradeOptions

features/upgrades/upgrade.UpgradeOptions

Properties

canAfford

• Optional canAfford: Computable<boolean>

Defined in

profectus/src/features/upgrades/upgrade.ts:46


classes

• Optional classes: Computable<Record<string, boolean>>

Defined in

profectus/src/features/upgrades/upgrade.ts:33


cost

• Optional cost: Computable<DecimalSource>

Defined in

profectus/src/features/upgrades/upgrade.ts:44


display

• Optional display: Computable<CoercableComponent | { description: CoercableComponent ; effectDisplay?: CoercableComponent ; title?: CoercableComponent }>

Defined in

profectus/src/features/upgrades/upgrade.ts:35


mark

• Optional mark: Computable<string | boolean>

Defined in

profectus/src/features/upgrades/upgrade.ts:43


onPurchase

• Optional onPurchase: VoidFunction

Defined in

profectus/src/features/upgrades/upgrade.ts:47


resource

• Optional resource: Resource<DecimalSource>

Defined in

profectus/src/features/upgrades/upgrade.ts:45


style

• Optional style: Computable<StyleValue>

Defined in

profectus/src/features/upgrades/upgrade.ts:34


visibility

• Optional visibility: Computable<Visibility>

Defined in

profectus/src/features/upgrades/upgrade.ts:32

- + diff --git a/api/interfaces/game/events.GlobalEvents.html b/api/interfaces/game/events.GlobalEvents.html index 24c86357..4c04300b 100644 --- a/api/interfaces/game/events.GlobalEvents.html +++ b/api/interfaces/game/events.GlobalEvents.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: GlobalEvents

game/events.GlobalEvents

All types of events able to be sent or emitted from the global event bus.

Properties

addLayer

• addLayer: (layer: GenericLayer, saveData: Record<string, unknown>) => void

Type declaration

â–¸ (layer, saveData): void

Sent whenever a layer is added.

Parameters
NameTypeDescription
layerGenericLayerThe layer being added.
saveDataRecord<string, unknown>The layer's save data object within player.
Returns

void

Defined in

profectus/src/game/events.ts:19


gameWon

• gameWon: VoidFunction

Sent when the game has ended.

Defined in

profectus/src/game/events.ts:41


loadSettings

• loadSettings: (settings: Partial<Settings>) => void

Type declaration

â–¸ (settings): void

Sent when constructing the Settings object. Use it to add default values for custom properties to the object.

See

features/features.setDefault for setting default values.

Parameters
NameTypeDescription
settingsPartial<Settings>The settings object being constructed.
Returns

void

Defined in

profectus/src/game/events.ts:37


removeLayer

• removeLayer: (layer: GenericLayer) => void

Type declaration

â–¸ (layer): void

Sent whenever a layer is removed.

Parameters
NameTypeDescription
layerGenericLayerThe layer being removed.
Returns

void

Defined in

profectus/src/game/events.ts:24


reset

• reset: (reset: GenericReset) => void

Type declaration

â–¸ (reset): void

Parameters
NameType
resetGenericReset
Returns

void

Defined in

profectus/src/features/reset.ts:95


setupVue

• setupVue: (vue: App<any>) => void

Type declaration

â–¸ (vue): void

Sent when setting up the Vue Application instance. Use it to register global components or otherwise set up things that should affect Vue globally.

Parameters
NameTypeDescription
vueApp<any>The Vue App being constructed.
Returns

void

Defined in

profectus/src/game/events.ts:47


update

• update: (diff: number, trueDiff: number) => void

Type declaration

â–¸ (diff, trueDiff): void

Sent every game tick. Runs the life cycle of the project.

Parameters
NameTypeDescription
diffnumberThe delta time since last tick, in ms.
trueDiffnumberThe delta time since last tick, in ms. Unaffected by time modifiers like game/player.Player.devSpeed or game/player.Player.offlineTime. Intended for things like updating animations.
Returns

void

Defined in

profectus/src/game/events.ts:30

- + diff --git a/api/interfaces/game/layers.BaseLayer.html b/api/interfaces/game/layers.BaseLayer.html index 0e1d2de6..36ad2610 100644 --- a/api/interfaces/game/layers.BaseLayer.html +++ b/api/interfaces/game/layers.BaseLayer.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: BaseLayer

game/layers.BaseLayer

The properties that are added onto a processed LayerOptions to create a Layer

Properties

emit

• emit: <K>(...args: [K, ...Parameters<LayerEvents[K]>[]]) => void

Type declaration

â–¸ <K>(...args): void

A function to emit a LayerEvents event to this layer.

Type parameters
NameType
Kextends keyof LayerEvents
Parameters
NameType
...args[K, ...Parameters<LayerEvents[K]>[]]
Returns

void

Defined in

profectus/src/game/layers.tsx:157


emitter

• emitter: Emitter<LayerEvents>

An emitter for sending LayerEvents events for this layer.

Defined in

profectus/src/game/layers.tsx:153


id

• id: string

The ID of the layer. Populated from the createLayer parameters. Used for saving and tracking open tabs.

Defined in

profectus/src/game/layers.tsx:149


minimized

• minimized: Persistent<boolean>

A persistent ref tracking if the tab is minimized or not.

Defined in

profectus/src/game/layers.tsx:151


nodes

• nodes: Ref<Record<string, undefined | FeatureNode>>

A map of FeatureNodes present in this layer's ContextComponent component.

Defined in

profectus/src/game/layers.tsx:159


on

• on: (...args: [event: keyof LayerEvents, cb: Function | Function | Function]) => Unsubscribe

Type declaration

â–¸ (...args): Unsubscribe

A function to register an event listener on emitter.

Parameters
NameType
...args[event: keyof LayerEvents, cb: Function | Function | Function]
Returns

Unsubscribe

Defined in

profectus/src/game/layers.tsx:155

- + diff --git a/api/interfaces/game/layers.FeatureNode.html b/api/interfaces/game/layers.FeatureNode.html index 89a862fa..f8da484a 100644 --- a/api/interfaces/game/layers.FeatureNode.html +++ b/api/interfaces/game/layers.FeatureNode.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/game/layers.LayerEvents.html b/api/interfaces/game/layers.LayerEvents.html index d6d66868..914bee81 100644 --- a/api/interfaces/game/layers.LayerEvents.html +++ b/api/interfaces/game/layers.LayerEvents.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: LayerEvents

game/layers.LayerEvents

All types of events able to be sent or emitted from a layer's emitter.

Properties

postUpdate

• postUpdate: (diff: number) => void

Type declaration

â–¸ (diff): void

Sent every game tick, after the update event. Intended for checking state.

Parameters
NameTypeDescription
diffnumberThe delta time since last tick, in ms.
Returns

void

Defined in

profectus/src/game/layers.tsx:70


preUpdate

• preUpdate: (diff: number) => void

Type declaration

â–¸ (diff): void

Sent every game tick, before the update event. Intended for "generation" type actions.

Parameters
NameTypeDescription
diffnumberThe delta time since last tick, in ms.
Returns

void

Defined in

profectus/src/game/layers.tsx:60


update

• update: (diff: number) => void

Type declaration

â–¸ (diff): void

Sent every game tick. Intended for "automation" type actions.

Parameters
NameTypeDescription
diffnumberThe delta time since last tick, in ms.
Returns

void

Defined in

profectus/src/game/layers.tsx:65

- + diff --git a/api/interfaces/game/layers.LayerOptions.html b/api/interfaces/game/layers.LayerOptions.html index 795519e8..4e907354 100644 --- a/api/interfaces/game/layers.LayerOptions.html +++ b/api/interfaces/game/layers.LayerOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: LayerOptions

game/layers.LayerOptions

An object that configures a Layer. Even moreso than features, the developer is expected to include extra properties in this object. All Persistent refs must be included somewhere within the layer object.

Properties

classes

• Optional classes: Computable<Record<string, boolean>>

An object of classes that should be applied to the display.

Defined in

profectus/src/game/layers.tsx:116


color

• Optional color: Computable<string>

The color of the layer, used to theme the entire layer's display.

Defined in

profectus/src/game/layers.tsx:109


display

• display: Computable<CoercableComponent>

The layout of this layer's features. When the layer is open in tabs, this is the content that is display.

Defined in

profectus/src/game/layers.tsx:114


forceHideGoBack

• Optional forceHideGoBack: Computable<boolean>

Whether or not to force the go back button to be hidden. If true, go back will be hidden regardless of data/projInfo.allowGoBack.

Defined in

profectus/src/game/layers.tsx:133


minWidth

• Optional minWidth: Computable<string | number>

A CSS min-width value that is applied to the layer. Can be a number, in which case the unit is assumed to be px. Defaults to 600px.

Defined in

profectus/src/game/layers.tsx:139


minimizable

• Optional minimizable: Computable<boolean>

Whether or not the layer can be minimized. Defaults to true.

Defined in

profectus/src/game/layers.tsx:128


name

• Optional name: Computable<string>

The name of the layer, used on minimized tabs. Defaults to id.

Defined in

profectus/src/game/layers.tsx:123


style

• Optional style: Computable<StyleValue>

Styles that should be applied to the display.

Defined in

profectus/src/game/layers.tsx:118

- + diff --git a/api/interfaces/game/layers.Position.html b/api/interfaces/game/layers.Position.html index 57ed6408..43092bc7 100644 --- a/api/interfaces/game/layers.Position.html +++ b/api/interfaces/game/layers.Position.html @@ -20,7 +20,7 @@
- + diff --git a/api/interfaces/game/modifiers.Modifier.html b/api/interfaces/game/modifiers.Modifier.html index 3a1d6272..147c1518 100644 --- a/api/interfaces/game/modifiers.Modifier.html +++ b/api/interfaces/game/modifiers.Modifier.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: Modifier

game/modifiers.Modifier

An object that can be used to apply or unapply some modification to a number. Being reversible requires the operation being invertible, but some features may rely on that. Descriptions can be optionally included for displaying them to the player. The built-in modifier creators are designed to display the modifiers using. createModifierSection.

Properties

apply

• apply: (gain: DecimalSource) => DecimalSource

Type declaration

â–¸ (gain): DecimalSource

Applies some operation on the input and returns the result.

Parameters
NameType
gainDecimalSource
Returns

DecimalSource

Defined in

profectus/src/game/modifiers.tsx:21


description

• Optional description: ProcessedComputable<CoercableComponent>

A description of this modifier.

See

createModifierSection.

Defined in

profectus/src/game/modifiers.tsx:33


enabled

• Optional enabled: ProcessedComputable<boolean>

Whether or not this modifier should be considered enabled. Typically for use with modifiers passed into createSequentialModifier.

Defined in

profectus/src/game/modifiers.tsx:28


revert

• Optional revert: (gain: DecimalSource) => DecimalSource

Type declaration

â–¸ (gain): DecimalSource

Reverses the operation applied by the apply property. Required by some features.

Parameters
NameType
gainDecimalSource
Returns

DecimalSource

Defined in

profectus/src/game/modifiers.tsx:23

- + diff --git a/api/interfaces/game/player.PlayerData.html b/api/interfaces/game/player.PlayerData.html index 7d779c98..64bb82ef 100644 --- a/api/interfaces/game/player.PlayerData.html +++ b/api/interfaces/game/player.PlayerData.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: PlayerData

game/player.PlayerData

The player save data object.

Properties

autosave

• autosave: boolean

Whether or not to automatically save every couple of seconds and on tab close.

Defined in

profectus/src/game/player.ts:22


devSpeed

• devSpeed: null | number

A multiplier for time passing. Set to 0 when the game is paused.

Defined in

profectus/src/game/player.ts:14


id

• id: string

The ID of this save.

Defined in

profectus/src/game/player.ts:12


keepGoing

• keepGoing: boolean

Whether or not to continue playing after hasWon is true.

Defined in

profectus/src/game/player.ts:30


layers

• layers: Record<string, LayerData<unknown>>

A dictionary of layer save data.

Defined in

profectus/src/game/player.ts:36


modID

• modID: string

The ID of this project, to make sure saves aren't imported into the wrong project.

Defined in

profectus/src/game/player.ts:32


modVersion

• modVersion: string

The version of the project this save was created by. Used for upgrading saves for new versions.

Defined in

profectus/src/game/player.ts:34


name

• name: string

The display name of this save.

Defined in

profectus/src/game/player.ts:16


offlineProd

• offlineProd: boolean

Whether or not to apply offline time when loading this save.

Defined in

profectus/src/game/player.ts:24


offlineTime

• offlineTime: null | number

How much offline time has been accumulated and not yet processed.

Defined in

profectus/src/game/player.ts:26


tabs

• tabs: string[]

The open tabs.

Defined in

profectus/src/game/player.ts:18


time

• time: number

The current time this save was last opened at, in ms since the unix epoch.

Defined in

profectus/src/game/player.ts:20


timePlayed

• timePlayed: number

How long, in ms, this game has been played.

Defined in

profectus/src/game/player.ts:28

- + diff --git a/api/interfaces/game/settings.Settings.html b/api/interfaces/game/settings.Settings.html index 097b13e2..a83ed306 100644 --- a/api/interfaces/game/settings.Settings.html +++ b/api/interfaces/game/settings.Settings.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: Settings

game/settings.Settings

The player's settings object.

Properties

active

• active: string

The ID of the active save.

Defined in

profectus/src/game/settings.ts:12


hideChallenges

• hideChallenges: boolean

Defined in

profectus/src/features/challenges/challenge.tsx:291


msDisplay

• msDisplay: MilestoneDisplay

Defined in

profectus/src/features/milestones/milestone.tsx:170


saves

• saves: string[]

The IDs of all created saves.

Defined in

profectus/src/game/settings.ts:14


showTPS

• showTPS: boolean

Whether or not to show the current ticks per second in the lower left corner of the page.

Defined in

profectus/src/game/settings.ts:16


theme

• theme: Themes

The current theme to display the game in.

Defined in

profectus/src/game/settings.ts:18


unthrottled

• unthrottled: boolean

Whether or not to cap the project at 20 ticks per second.

Defined in

profectus/src/game/settings.ts:20

- + diff --git a/api/interfaces/game/state.Transient.html b/api/interfaces/game/state.Transient.html index d3c0ea41..15635ded 100644 --- a/api/interfaces/game/state.Transient.html +++ b/api/interfaces/game/state.Transient.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: Transient

game/state.Transient

An object of global data that is not persistent.

Properties

NaNPath

• Optional NaNPath: string[]

The location within the player save data object of the NaN value.

Defined in

profectus/src/game/state.ts:10


NaNReceiver

• Optional NaNReceiver: Record<string, unknown>

The parent object of the NaN value.

Defined in

profectus/src/game/state.ts:12


hasNaN

• hasNaN: boolean

Whether or not a NaN value has been detected and undealt with.

Defined in

profectus/src/game/state.ts:8


lastTenTicks

• lastTenTicks: number[]

A list of the duration, in ms, of the last 10 game ticks. Used for calculating TPS.

Defined in

profectus/src/game/state.ts:6

- + diff --git a/api/interfaces/lib/pwa-register.RegisterSWOptions.html b/api/interfaces/lib/pwa-register.RegisterSWOptions.html index 58e8e03b..5c9ddfc4 100644 --- a/api/interfaces/lib/pwa-register.RegisterSWOptions.html +++ b/api/interfaces/lib/pwa-register.RegisterSWOptions.html @@ -20,7 +20,7 @@
Skip to content
On this page

Interface: RegisterSWOptions

lib/pwa-register.RegisterSWOptions

Properties

immediate

• Optional immediate: boolean

Defined in

profectus/src/lib/pwa-register.d.ts:5


onNeedRefresh

• Optional onNeedRefresh: () => void

Type declaration

â–¸ (): void

Returns

void

Defined in

profectus/src/lib/pwa-register.d.ts:6


onOfflineReady

• Optional onOfflineReady: () => void

Type declaration

â–¸ (): void

Returns

void

Defined in

profectus/src/lib/pwa-register.d.ts:7


onRegisterError

• Optional onRegisterError: (error: any) => void

Type declaration

â–¸ (error): void

Parameters
NameType
errorany
Returns

void

Defined in

profectus/src/lib/pwa-register.d.ts:9


onRegistered

• Optional onRegistered: (registration: undefined | ServiceWorkerRegistration) => void

Type declaration

â–¸ (registration): void

Parameters
NameType
registrationundefined | ServiceWorkerRegistration
Returns

void

Defined in

profectus/src/lib/pwa-register.d.ts:8

- + diff --git a/api/modules/data/common.html b/api/modules/data/common.html index a64a2dc1..7d856168 100644 --- a/api/modules/data/common.html +++ b/api/modules/data/common.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: data/common

Interfaces

Type Aliases

GenericLayerTreeNode

Ƭ GenericLayerTreeNode: Replace<LayerTreeNode<LayerTreeNodeOptions>, { append?: ProcessedComputable<boolean> ; display: ProcessedComputable<CoercableComponent> }>

A type that matches any valid LayerTreeNode object.

Defined in

profectus/src/data/common.tsx:196


GenericResetButton

Ƭ GenericResetButton: Replace<GenericClickable & ResetButton<ResetButtonOptions>, { canClick: ProcessedComputable<boolean> ; display: ProcessedComputable<CoercableComponent> ; minimumGain: ProcessedComputable<DecimalSource> ; resetDescription: ProcessedComputable<string> ; showNextAt: ProcessedComputable<boolean> }>

A type that matches any valid ResetButton object.

Defined in

profectus/src/data/common.tsx:79


LayerTreeNode

Ƭ LayerTreeNode<T>: Replace<TreeNode<T>, { append: GetComputableType<T["append"]> ; display: GetComputableTypeWithDefault<T["display"], T["layerID"]> }>

A tree node that is associated with a given layer, and which opens the layer when clicked.

Type parameters

NameType
Textends LayerTreeNodeOptions

Defined in

profectus/src/data/common.tsx:188


ResetButton

Ƭ ResetButton<T>: Replace<Clickable<T>, { canClick: GetComputableTypeWithDefault<T["canClick"], Ref<boolean>> ; display: GetComputableTypeWithDefault<T["display"], Ref<JSX.Element>> ; minimumGain: GetComputableTypeWithDefault<T["minimumGain"], 1> ; onClick: VoidFunction ; resetDescription: GetComputableTypeWithDefault<T["resetDescription"], Ref<string>> ; showNextAt: GetComputableTypeWithDefault<T["showNextAt"], true> }>

A button that is used to control a conversion. It will show how much can be converted currently, and can show when that amount will go up, as well as handle only being clickable when a sufficient amount of currency can be gained. Assumes this button is associated with a specific node on a tree, and triggers that tree's reset propagation.

Type parameters

NameType
Textends ResetButtonOptions

Defined in

profectus/src/data/common.tsx:66

Functions

colorText

â–¸ colorText(textToColor, color?): JSX.Element

Creates an HTML string for a span that writes some given text in a given color.

Parameters

NameTypeDefault valueDescription
textToColorstringundefinedThe content to change the color of
colorstring"var(--accent2)"The color to change the content to look like. Defaults to the current theme's accent 2 variable.

Returns

JSX.Element


createCollapsibleModifierSections

â–¸ createCollapsibleModifierSections(sections): [JSXFunction, Persistent<boolean>[]]

Takes an array of modifier "sections", and creates a JSXFunction that can render all those sections, and allow each section to be collapsed. Also returns a list of persistent refs that are used to control which sections are currently collapsed.

Parameters

NameType
sectionsSection[]

Returns

[JSXFunction, Persistent<boolean>[]]


createLayerTreeNode

â–¸ createLayerTreeNode<T>(optionsFunc): LayerTreeNode<T>

Lazily creates a tree node that's associated with a specific layer, with the given options.

Type parameters

NameType
Textends LayerTreeNodeOptions

Parameters

NameTypeDescription
optionsFuncOptionsFunc<T, Record<string, unknown>, Record<string, unknown>>A function that returns the options object for this tree node.

Returns

LayerTreeNode<T>


createResetButton

â–¸ createResetButton<T>(optionsFunc): ResetButton<T>

Lazily creates a reset button with the given options.

Type parameters

NameType
Textends ClickableOptions & ResetButtonOptions

Parameters

NameTypeDescription
optionsFuncOptionsFunc<T, Record<string, unknown>, Record<string, unknown>>A function that returns the options object for this reset button.

Returns

ResetButton<T>

- + diff --git a/api/modules/data/projEntry.html b/api/modules/data/projEntry.html index e05625f7..f6bc6487 100644 --- a/api/modules/data/projEntry.html +++ b/api/modules/data/projEntry.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: data/projEntry

Variables

hasWon

• Const hasWon: ComputedRef<boolean>

A computed ref whose value is true whenever the game is over.

Defined in

profectus/src/data/projEntry.tsx:88

Functions

fixOldSave

â–¸ fixOldSave(oldVersion, player): void

Given a player save data object being loaded with a different version, update the save data object to match the structure of the current version.

Parameters

NameTypeDescription
oldVersionundefined | stringThe version of the save being loaded in
playerPartial<PlayerData>The save data being loaded in

Returns

void


getInitialLayers

â–¸ getInitialLayers(player): GenericLayer[]

Given a player save data object being loaded, return a list of layers that should currently be enabled. If your project does not use dynamic layers, this should just return all layers.

Parameters

NameType
playerPartial<PlayerData>

Returns

GenericLayer[]

- + diff --git a/api/modules/data/themes.html b/api/modules/data/themes.html index 7dd0f423..2ac4ec05 100644 --- a/api/modules/data/themes.html +++ b/api/modules/data/themes.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/achievements/AchievementComponent.html b/api/modules/features/achievements/AchievementComponent.html index a5a40eff..ea9fc627 100644 --- a/api/modules/features/achievements/AchievementComponent.html +++ b/api/modules/features/achievements/AchievementComponent.html @@ -20,7 +20,7 @@
Skip to content
On this page

Component: Achievement

Props

NameTypes
visibility
*
processedPropType<Visibility>(Number)
display
processedPropType<CoercableComponent>(Object, String, Function)
earned
*
processedPropType<boolean>(Boolean)
image
processedPropType<string>(String)
style
processedPropType<StyleValue>(String, Object, Array)
classes
processedPropType<Record<string, boolean>>(Object)
mark
processedPropType<boolean | string>(Boolean, String)
id
*
string
- + diff --git a/api/modules/features/achievements/achievement.html b/api/modules/features/achievements/achievement.html index 9a56cf46..eae39149 100644 --- a/api/modules/features/achievements/achievement.html +++ b/api/modules/features/achievements/achievement.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/achievements/achievement

Components

Interfaces

Type Aliases

Achievement

Ƭ Achievement<T>: Replace<T & BaseAchievement, { classes: GetComputableType<T["classes"]> ; display: GetComputableType<T["display"]> ; image: GetComputableType<T["image"]> ; mark: GetComputableType<T["mark"]> ; style: GetComputableType<T["style"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends AchievementOptions

Defined in

profectus/src/features/achievements/achievement.tsx:54


GenericAchievement

Ƭ GenericAchievement: Replace<Achievement<AchievementOptions>, { visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/achievements/achievement.tsx:66

Variables

AchievementType

• Const AchievementType: typeof AchievementType

Defined in

profectus/src/features/achievements/achievement.tsx:32

Functions

createAchievement

â–¸ createAchievement<T>(optionsFunc?): Achievement<T>

Type parameters

NameType
Textends AchievementOptions

Parameters

NameType
optionsFunc?OptionsFunc<T, BaseAchievement, GenericAchievement>

Returns

Achievement<T>

- + diff --git a/api/modules/features/bars/BarComponent.html b/api/modules/features/bars/BarComponent.html index 1b96dd42..b3144d15 100644 --- a/api/modules/features/bars/BarComponent.html +++ b/api/modules/features/bars/BarComponent.html @@ -20,7 +20,7 @@
Skip to content
On this page

Component: Bar

Props

NameTypes
progress
*
processedPropType<DecimalSource>(String, Object, Number)
width
*
processedPropType<number>(Number)
height
*
processedPropType<number>(Number)
direction
*
processedPropType<Direction>(String)
display
processedPropType<CoercableComponent>(Object, String, Function)
visibility
*
processedPropType<Visibility>(Number)
style
processedPropType<StyleValue>(Object, String, Array)
classes
processedPropType<Record<string, boolean>>(Object)
borderStyle
processedPropType<StyleValue>(Object, String, Array)
textStyle
processedPropType<StyleValue>(Object, String, Array)
baseStyle
processedPropType<StyleValue>(Object, String, Array)
fillStyle
processedPropType<StyleValue>(Object, String, Array)
mark
processedPropType<boolean | string>(Boolean, String)
id
*
string
- + diff --git a/api/modules/features/bars/bar.html b/api/modules/features/bars/bar.html index 492497ce..8d9eed09 100644 --- a/api/modules/features/bars/bar.html +++ b/api/modules/features/bars/bar.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/bars/bar

Components

Interfaces

Type Aliases

Bar

Ƭ Bar<T>: Replace<T & BaseBar, { baseStyle: GetComputableType<T["baseStyle"]> ; borderStyle: GetComputableType<T["borderStyle"]> ; classes: GetComputableType<T["classes"]> ; direction: GetComputableType<T["direction"]> ; display: GetComputableType<T["display"]> ; fillStyle: GetComputableType<T["fillStyle"]> ; height: GetComputableType<T["height"]> ; mark: GetComputableType<T["mark"]> ; progress: GetComputableType<T["progress"]> ; style: GetComputableType<T["style"]> ; textStyle: GetComputableType<T["textStyle"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> ; width: GetComputableType<T["width"]> }>

Type parameters

NameType
Textends BarOptions

Defined in

profectus/src/features/bars/bar.ts:41


GenericBar

Ƭ GenericBar: Replace<Bar<BarOptions>, { visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/bars/bar.ts:60

Variables

BarType

• Const BarType: typeof BarType

Defined in

profectus/src/features/bars/bar.ts:16

Functions

createBar

â–¸ createBar<T>(optionsFunc): Bar<T>

Type parameters

NameType
Textends BarOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseBar, GenericBar>

Returns

Bar<T>

- + diff --git a/api/modules/features/boards/BoardComponent.html b/api/modules/features/boards/BoardComponent.html index 1fbc948d..827e5687 100644 --- a/api/modules/features/boards/BoardComponent.html +++ b/api/modules/features/boards/BoardComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/boards/BoardLinkComponent.html b/api/modules/features/boards/BoardLinkComponent.html index 2a4f3666..b99fce1a 100644 --- a/api/modules/features/boards/BoardLinkComponent.html +++ b/api/modules/features/boards/BoardLinkComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/boards/BoardNodeComponent.html b/api/modules/features/boards/BoardNodeComponent.html index bf91ad0f..8a2fe65b 100644 --- a/api/modules/features/boards/BoardNodeComponent.html +++ b/api/modules/features/boards/BoardNodeComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/boards/board.html b/api/modules/features/boards/board.html index 16846d13..e06f54e5 100644 --- a/api/modules/features/boards/board.html +++ b/api/modules/features/boards/board.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/boards/board

Components

Enumerations

Interfaces

Type Aliases

Board

Ƭ Board<T>: Replace<T & BaseBoard, { classes: GetComputableType<T["classes"]> ; height: GetComputableType<T["height"]> ; style: GetComputableType<T["style"]> ; types: Record<string, GenericNodeType> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> ; width: GetComputableType<T["width"]> }>

Type parameters

NameType
Textends BoardOptions

Defined in

profectus/src/features/boards/board.ts:180


BoardData

Ƭ BoardData: Object

Type declaration

NameType
nodesBoardNode[]
selectedActionstring | null
selectedNodenumber | null

Defined in

profectus/src/features/boards/board.ts:64


BoardNodeAction

Ƭ BoardNodeAction<T>: Replace<T & BaseBoardNodeAction, { fillColor: GetComputableType<T["fillColor"]> ; icon: GetComputableType<T["icon"]> ; links: GetComputableType<T["links"]> ; tooltip: GetComputableType<T["tooltip"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends BoardNodeActionOptions

Defined in

profectus/src/features/boards/board.ts:141


GenericBoard

Ƭ GenericBoard: Replace<Board<BoardOptions>, { visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/boards/board.ts:192


GenericBoardNodeAction

Ƭ GenericBoardNodeAction: Replace<BoardNodeAction<BoardNodeActionOptions>, { visibility: NodeComputable<Visibility> }>

Defined in

profectus/src/features/boards/board.ts:152


GenericNodeType

Ƭ GenericNodeType: Replace<NodeType<NodeTypeOptions>, { actionDistance: NodeComputable<number> ; canAccept: NodeComputable<boolean> ; draggable: NodeComputable<boolean> ; progressColor: NodeComputable<string> ; progressDisplay: NodeComputable<ProgressDisplay> ; shape: NodeComputable<Shape> ; size: NodeComputable<number> }>

Defined in

profectus/src/features/boards/board.ts:114


NodeComputable

Ƭ NodeComputable<T>: Computable<T> | (node: BoardNode) => T

Type parameters

Name
T

Defined in

profectus/src/features/boards/board.ts:29


NodeType

Ƭ NodeType<T>: Replace<T & BaseNodeType, { actionDistance: GetComputableTypeWithDefault<T["actionDistance"], number> ; actions?: GenericBoardNodeAction[] ; canAccept: GetComputableTypeWithDefault<T["canAccept"], false> ; draggable: GetComputableTypeWithDefault<T["draggable"], false> ; fillColor: GetComputableType<T["fillColor"]> ; label: GetComputableType<T["label"]> ; outlineColor: GetComputableType<T["outlineColor"]> ; progress: GetComputableType<T["progress"]> ; progressColor: GetComputableTypeWithDefault<T["progressColor"], "none"> ; progressDisplay: GetComputableTypeWithDefault<T["progressDisplay"], Fill> ; shape: GetComputableTypeWithDefault<T["shape"], Circle> ; size: GetComputableTypeWithDefault<T["size"], 50> ; title: GetComputableType<T["title"]> ; titleColor: GetComputableType<T["titleColor"]> }>

Type parameters

NameType
Textends NodeTypeOptions

Defined in

profectus/src/features/boards/board.ts:94

Variables

BoardType

• Const BoardType: typeof BoardType

Defined in

profectus/src/features/boards/board.ts:27

Functions

createBoard

â–¸ createBoard<T>(optionsFunc): Board<T>

Type parameters

NameType
Textends BoardOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseBoard, GenericBoard>

Returns

Board<T>


getNodeProperty

â–¸ getNodeProperty<T>(property, node): T

Type parameters

Name
T

Parameters

NameType
propertyNodeComputable<T>
nodeBoardNode

Returns

T


getUniqueNodeID

â–¸ getUniqueNodeID(board): number

Parameters

NameType
boardGenericBoard

Returns

number

- + diff --git a/api/modules/features/buyable.html b/api/modules/features/buyable.html index cacbdffa..939a7c6e 100644 --- a/api/modules/features/buyable.html +++ b/api/modules/features/buyable.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/buyable

Interfaces

Type Aliases

Buyable

Ƭ Buyable<T>: Replace<T & BaseBuyable, { canPurchase: GetComputableTypeWithDefault<T["canPurchase"], Ref<boolean>> ; classes: GetComputableType<T["classes"]> ; cost: GetComputableType<T["cost"]> ; display: Ref<CoercableComponent> ; mark: GetComputableType<T["mark"]> ; purchaseLimit: GetComputableTypeWithDefault<T["purchaseLimit"], default> ; resource: GetComputableType<T["resource"]> ; small: GetComputableType<T["small"]> ; style: GetComputableType<T["style"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends BuyableOptions

Defined in

profectus/src/features/buyable.tsx:59


BuyableDisplay

Ƭ BuyableDisplay: CoercableComponent | { description?: CoercableComponent ; effectDisplay?: CoercableComponent ; showAmount?: boolean ; title?: CoercableComponent }

Defined in

profectus/src/features/buyable.tsx:23


GenericBuyable

Ƭ GenericBuyable: Replace<Buyable<BuyableOptions>, { canPurchase: ProcessedComputable<boolean> ; purchaseLimit: ProcessedComputable<DecimalSource> ; visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/buyable.tsx:75

Variables

BuyableType

• Const BuyableType: typeof BuyableType

Defined in

profectus/src/features/buyable.tsx:21

Functions

createBuyable

â–¸ createBuyable<T>(optionsFunc): Buyable<T>

Type parameters

NameType
Textends BuyableOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseBuyable, GenericBuyable>

Returns

Buyable<T>

- + diff --git a/api/modules/features/challenges/ChallengeComponent.html b/api/modules/features/challenges/ChallengeComponent.html index 7422a1e0..aaaca9a0 100644 --- a/api/modules/features/challenges/ChallengeComponent.html +++ b/api/modules/features/challenges/ChallengeComponent.html @@ -20,7 +20,7 @@
Skip to content
On this page

Component: Challenge

Props

NameTypes
active
*
processedPropType<boolean>(Boolean)
maxed
*
processedPropType<boolean>(Boolean)
canComplete
*
processedPropType<boolean>(Boolean)
display
processedPropType<UnwrapRef<GenericChallenge["display"]>>(
String,
Object,
Function
)
visibility
*
processedPropType<Visibility>(Number)
style
processedPropType<StyleValue>(String, Object, Array)
classes
processedPropType<Record<string, boolean>>(Object)
completed
*
processedPropType<boolean>(Boolean)
canStart
*
processedPropType<boolean>(Boolean)
mark
processedPropType<boolean | string>(Boolean, String)
id
*
string
toggle
*
VoidFunction
- + diff --git a/api/modules/features/challenges/challenge.html b/api/modules/features/challenges/challenge.html index 855d70c6..be52fef0 100644 --- a/api/modules/features/challenges/challenge.html +++ b/api/modules/features/challenges/challenge.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/challenges/challenge

Components

Interfaces

Type Aliases

Challenge

Ƭ Challenge<T>: Replace<T & BaseChallenge, { canComplete: GetComputableTypeWithDefault<T["canComplete"], Ref<boolean>> ; canStart: GetComputableTypeWithDefault<T["canStart"], true> ; classes: GetComputableType<T["classes"]> ; completionLimit: GetComputableTypeWithDefault<T["completionLimit"], 1> ; display: GetComputableType<T["display"]> ; goal: GetComputableType<T["goal"]> ; mark: GetComputableTypeWithDefault<T["mark"], Ref<boolean>> ; style: GetComputableType<T["style"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends ChallengeOptions

Defined in

profectus/src/features/challenges/challenge.tsx:66


GenericChallenge

Ƭ GenericChallenge: Replace<Challenge<ChallengeOptions>, { canComplete: ProcessedComputable<boolean | DecimalSource> ; canStart: ProcessedComputable<boolean> ; completionLimit: ProcessedComputable<DecimalSource> ; mark: ProcessedComputable<boolean> ; visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/challenges/challenge.tsx:81

Variables

ChallengeType

• Const ChallengeType: typeof ChallengeType

Defined in

profectus/src/features/challenges/challenge.tsx:25

Functions

createActiveChallenge

â–¸ createActiveChallenge(challenges): Ref<GenericChallenge | undefined>

Parameters

NameType
challengesGenericChallenge[]

Returns

Ref<GenericChallenge | undefined>


createChallenge

â–¸ createChallenge<T>(optionsFunc): Challenge<T>

Type parameters

NameType
Textends ChallengeOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseChallenge, GenericChallenge>

Returns

Challenge<T>


isAnyChallengeActive

â–¸ isAnyChallengeActive(challenges): Ref<boolean>

Parameters

NameType
challengesGenericChallenge[] | Ref<undefined | GenericChallenge>

Returns

Ref<boolean>


setupAutoComplete

â–¸ setupAutoComplete(challenge, autoActive?, exitOnComplete?): WatchStopHandle

Parameters

NameTypeDefault value
challengeGenericChallengeundefined
autoActiveComputable<boolean>true
exitOnCompletebooleantrue

Returns

WatchStopHandle

- + diff --git a/api/modules/features/clickables/ClickableComponent.html b/api/modules/features/clickables/ClickableComponent.html index 51c1480a..1fe0be8e 100644 --- a/api/modules/features/clickables/ClickableComponent.html +++ b/api/modules/features/clickables/ClickableComponent.html @@ -20,7 +20,7 @@
Skip to content
On this page

Component: Clickable

Props

NameTypes
display
*
processedPropType<UnwrapRef<GenericClickable["display"]>>(
Object,
String,
Function
)
visibility
*
processedPropType<Visibility>(Number)
style
processedPropType<StyleValue>(Object, String, Array)
classes
processedPropType<Record<string, boolean>>(Object)
onClick
(e?: MouseEvent | TouchEvent) => void
onHold
VoidFunction
canClick
*
processedPropType<boolean>(Boolean)
small
boolean
mark
processedPropType<boolean | string>(Boolean, String)
id
*
string
- + diff --git a/api/modules/features/clickables/clickable.html b/api/modules/features/clickables/clickable.html index e37d12f7..a6bd382a 100644 --- a/api/modules/features/clickables/clickable.html +++ b/api/modules/features/clickables/clickable.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/clickables/clickable

Components

Interfaces

Type Aliases

Clickable

Ƭ Clickable<T>: Replace<T & BaseClickable, { canClick: GetComputableTypeWithDefault<T["canClick"], true> ; classes: GetComputableType<T["classes"]> ; display: GetComputableType<T["display"]> ; mark: GetComputableType<T["mark"]> ; style: GetComputableType<T["style"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends ClickableOptions

Defined in

profectus/src/features/clickables/clickable.ts:43


GenericClickable

Ƭ GenericClickable: Replace<Clickable<ClickableOptions>, { canClick: ProcessedComputable<boolean> ; visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/clickables/clickable.ts:55

Variables

ClickableType

• Const ClickableType: typeof ClickableType

Defined in

profectus/src/features/clickables/clickable.ts:16

Functions

createClickable

â–¸ createClickable<T>(optionsFunc?): Clickable<T>

Type parameters

NameType
Textends ClickableOptions

Parameters

NameType
optionsFunc?OptionsFunc<T, BaseClickable, GenericClickable>

Returns

Clickable<T>


setupAutoClick

â–¸ setupAutoClick(layer, clickable, autoActive?): Unsubscribe

Parameters

NameTypeDefault value
layerBaseLayerundefined
clickableGenericClickableundefined
autoActiveComputable<boolean>true

Returns

Unsubscribe

- + diff --git a/api/modules/features/conversion.html b/api/modules/features/conversion.html index b68d7711..786c67b1 100644 --- a/api/modules/features/conversion.html +++ b/api/modules/features/conversion.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/conversion

Interfaces

Type Aliases

Conversion

Ƭ Conversion<T>: Replace<T & BaseConversion, { actualGain: GetComputableTypeWithDefault<T["actualGain"], Ref<DecimalSource>> ; buyMax: GetComputableTypeWithDefault<T["buyMax"], true> ; currentAt: GetComputableTypeWithDefault<T["currentAt"], Ref<DecimalSource>> ; currentGain: GetComputableTypeWithDefault<T["currentGain"], Ref<DecimalSource>> ; nextAt: GetComputableTypeWithDefault<T["nextAt"], Ref<DecimalSource>> ; roundUpCost: GetComputableTypeWithDefault<T["roundUpCost"], true> ; spend: undefined extends T["spend"] ? (amountGained: DecimalSource) => void : T["spend"] }>

An object that converts one Resource into another at a given rate.

Type parameters

NameType
Textends ConversionOptions

Defined in

profectus/src/features/conversion.ts:103


GenericConversion

Ƭ GenericConversion: Replace<Conversion<ConversionOptions>, { actualGain: ProcessedComputable<DecimalSource> ; buyMax: ProcessedComputable<boolean> ; currentAt: ProcessedComputable<DecimalSource> ; currentGain: ProcessedComputable<DecimalSource> ; nextAt: ProcessedComputable<DecimalSource> ; roundUpCost: ProcessedComputable<boolean> ; spend: (amountGained: DecimalSource) => void }>

A type that matches any valid Conversion object.

Defined in

profectus/src/features/conversion.ts:117

Functions

addHardcap

â–¸ addHardcap(scaling, cap): ScalingFunction

Creates a scaling function off an existing function, with a hardcap applied to it. The harcap will ensure that the currentGain will stop at a given cap.

Parameters

NameTypeDescription
scalingScalingFunctionThe raw scaling function.
capProcessedComputable<DecimalSource>The maximum value the scaling function can output.

Returns

ScalingFunction


addSoftcap

â–¸ addSoftcap(scaling, cap, power?): ScalingFunction

Creates a scaling function based off an existing scaling function, with a softcap applied to it. The softcap will take any value above a certain value and raise it to a power. If the power is <1, this will effectively make the value scale slower after the cap.

See

softcap.

Parameters

NameTypeDefault valueDescription
scalingScalingFunctionundefinedThe raw scaling function.
capProcessedComputable<DecimalSource>undefinedThe value after which the softcap should be applied.
powerProcessedComputable<DecimalSource>0.5The power to raise value about the cap to.

Returns

ScalingFunction


createConversion

â–¸ createConversion<T>(optionsFunc): Conversion<T>

Lazily creates a conversion with the given options. You typically shouldn't use this function directly. Instead use one of the other conversion constructors, which will then call this.

See

Type parameters

NameType
Textends ConversionOptions

Parameters

NameTypeDescription
optionsFuncOptionsFunc<T, BaseConversion, GenericConversion>Conversion options.

Returns

Conversion<T>


createCumulativeConversion

â–¸ createCumulativeConversion<S>(optionsFunc): Conversion<S>

Creates a conversion that simply adds to the gainResource amount upon converting. This is similar to the behavior of "normal" layers in The Modding Tree. This is equivalent to just calling createConversion directly.

Type parameters

NameType
Sextends ConversionOptions

Parameters

NameTypeDescription
optionsFuncOptionsFunc<S, BaseConversion, GenericConversion>Conversion options.

Returns

Conversion<S>


createIndependentConversion

â–¸ createIndependentConversion<S>(optionsFunc): Conversion<S>

Creates a conversion that will replace the gainResource amount with the new amount upon converting. This is similar to the behavior of "static" layers in The Modding Tree.

Type parameters

NameType
Sextends ConversionOptions

Parameters

NameTypeDescription
optionsFuncOptionsFunc<S, BaseConversion, GenericConversion>Converison options.

Returns

Conversion<S>


createLinearScaling

â–¸ createLinearScaling(base, coefficient): ScalingFunction

Creates a scaling function based off the formula (baseResource - base) * coefficient. If the baseResource value is less than base then the currentGain will be 0.

Example

A scaling function created via createLinearScaling(10, 0.5) would produce the following values:

Base ResourceCurrent Gain
101
122
206

Parameters

NameTypeDescription
baseComputable<DecimalSource>The base variable in the scaling formula.
coefficientComputable<DecimalSource>The coefficient variable in the scaling formula.

Returns

ScalingFunction


createPolynomialScaling

â–¸ createPolynomialScaling(base, exponent): ScalingFunction

Creates a scaling function based off the formula (baseResource / base) ^ exponent. If the baseResource value is less than base then the currentGain will be 0.

Example

A scaling function created via createPolynomialScaling(10, 0.5) would produce the following values:

Base ResourceCurrent Gain
101
402
2505

Parameters

NameTypeDescription
baseComputable<DecimalSource>The base variable in the scaling formula.
exponentComputable<DecimalSource>The exponent variable in the scaling formula.

Returns

ScalingFunction


setupPassiveGeneration

â–¸ setupPassiveGeneration(layer, conversion, rate?, cap?): void

This will automatically increase the value of conversion.gainResource without lowering the value of the input resource. It will by default perform 100% of a conversion's currentGain per second. If you use a ref for the rate you can set it's value to 0 when passive generation should be disabled.

Parameters

NameTypeDefault valueDescription
layerBaseLayerundefinedThe layer this passive generation will be associated with. Typically this when calling this function from inside a layer's options function.
conversionGenericConversionundefinedThe conversion that will determine how much generation there is.
rateComputable<DecimalSource>1A multiplier to multiply against the conversion's currentGain.
capComputable<null | DecimalSource>nullA value that should not be passed via passive generation. If null, no cap is applied.

Returns

void


softcap

â–¸ softcap(value, cap, power?): DecimalSource

Given a value, this function finds the amount above a certain value and raises it to a power. If the power is <1, this will effectively make the value scale slower after the cap.

Example

A softcap added via addSoftcap(scaling, 100, 0.5) would produce the following values:

Raw ValueSoftcapped Value
11
100100
125105
200110

Parameters

NameTypeDefault valueDescription
valueDecimalSourceundefinedThe raw value.
capDecimalSourceundefinedThe value after which the softcap should be applied.
powerDecimalSource0.5The power to raise value above the cap to.

Returns

DecimalSource

- + diff --git a/api/modules/features/feature.html b/api/modules/features/feature.html index f5863c89..e6205290 100644 --- a/api/modules/features/feature.html +++ b/api/modules/features/feature.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/feature

Enumerations

Type Aliases

CoercableComponent

Ƭ CoercableComponent: string | DefineComponent | JSXFunction

Any value that can be coerced into (or is) a vue component

Defined in

profectus/src/features/feature.ts:25


GenericComponent

Ƭ GenericComponent: DefineComponent<any, any, any>

A type that refers to any vue component

Defined in

profectus/src/features/feature.ts:35


JSXFunction

Ƭ JSXFunction: () => JSX.Element & { [DoNotCache]: true }

A type referring to a function that returns JSX and is marked that it shouldn't be wrapped in a ComputedRef

See

jsx

Defined in

profectus/src/features/feature.ts:21


OptionsFunc

Ƭ OptionsFunc<T, R, S>: () => T & Partial<R> & ThisType<T & S>

Type parameters

NameType
TT
RRecord<string, unknown>
SR

Type declaration

â–¸ (): T & Partial<R> & ThisType<T & S>

Utility function for a function that returns an object of a given type, with "this" bound to what the type will eventually be processed into. Intended for making lazily evaluated objects.

Returns

T & Partial<R> & ThisType<T & S>

Defined in

profectus/src/features/feature.ts:45


Replace

Ƭ Replace<T, S>: S & Omit<T, keyof S>

Utility type that is S, with any properties from T that aren't already present in S

Type parameters

Name
T
S

Defined in

profectus/src/features/feature.ts:38


StyleValue

Ƭ StyleValue: string | CSSProperties | (string | CSSProperties)[]

Any value that can be passed into an HTML element's style attribute. Note that Profectus uses its own StyleValue and CSSProperties that are extended, in order to have additional properties added to them, such as variable CSS variables.

Defined in

profectus/src/features/feature.ts:31

Variables

Component

• Const Component: typeof Component

A symbol to use as a key for a vue component a feature can be rendered with

See

VueFeature

Defined in

profectus/src/features/feature.ts:10


GatherProps

• Const GatherProps: typeof GatherProps

A symbol to use as a key for a prop gathering function that a feature can use to send to its component

See

VueFeature

Defined in

profectus/src/features/feature.ts:15

Functions

excludeFeatures

â–¸ excludeFeatures(obj, ...types): unknown[]

Traverses an object and returns all features that are not any of the given types. Features are any object with a "type" property that has a symbol value.

Parameters

NameTypeDescription
objRecord<string, unknown>The object to traverse
...typessymbol[]The feature types that will be skipped over

Returns

unknown[]


findFeatures

â–¸ findFeatures(obj, ...types): unknown[]

Traverses an object and returns all features of the given type(s)

Parameters

NameTypeDescription
objRecord<string, unknown>The object to traverse
...typessymbol[]The feature types that will be searched for

Returns

unknown[]


getUniqueID

â–¸ getUniqueID(prefix?): string

Gets a unique ID to give to each feature, used for any sort of system that needs to identify elements in the DOM rather than references to the feature itself. (For example, branches) IDs are guaranteed unique, but NOT persistent - they likely will change between updates.

Parameters

NameTypeDefault valueDescription
prefixstring"feature-"A string to prepend to the id to make it more readable in the inspector tools

Returns

string


jsx

â–¸ jsx(func): JSXFunction

Takes a function and marks it as JSX so it won't get auto-wrapped into a ComputedRef. The function may also return empty string as empty JSX tags cause issues.

Parameters

NameType
func() => "" | Element

Returns

JSXFunction


setDefault

â–¸ setDefault<T, K>(object, key, value): asserts object is Exclude<T, K> & Required<Pick<T, K>>

Utility function to set a property on an object if and only if it doesn't already exist

Type parameters

NameType
TT
Kextends string | number | symbol

Parameters

NameType
objectT
keyK
valueT[K]

Returns

asserts object is Exclude<T, K> & Required<Pick<T, K>>


showIf

â–¸ showIf(condition, otherwise?): Visibility

Utility function to convert a boolean value into a Visbility value

Parameters

NameTypeDefault value
conditionbooleanundefined
otherwiseVisibilityVisibility.None

Returns

Visibility

- + diff --git a/api/modules/features/grids/GridCellComponent.html b/api/modules/features/grids/GridCellComponent.html index 3082e9dd..cfb821fc 100644 --- a/api/modules/features/grids/GridCellComponent.html +++ b/api/modules/features/grids/GridCellComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/grids/GridComponent.html b/api/modules/features/grids/GridComponent.html index 8463f8ca..cc3d5adc 100644 --- a/api/modules/features/grids/GridComponent.html +++ b/api/modules/features/grids/GridComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/grids/grid.html b/api/modules/features/grids/grid.html index d8eeace6..488cd5ff 100644 --- a/api/modules/features/grids/grid.html +++ b/api/modules/features/grids/grid.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/grids/grid

Components

Interfaces

Type Aliases

CellComputable

Ƭ CellComputable<T>: Computable<T> | (id: string | number, state: State) => T

Type parameters

Name
T

Defined in

profectus/src/features/grids/grid.ts:20


GenericGrid

Ƭ GenericGrid: Replace<Grid<GridOptions>, { getCanClick: ProcessedComputable<boolean> ; getVisibility: ProcessedComputable<Visibility> ; visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/grids/grid.ts:229


Grid

Ƭ Grid<T>: Replace<T & BaseGrid, { cols: GetComputableType<T["cols"]> ; getCanClick: GetComputableTypeWithDefault<T["getCanClick"], true> ; getClasses: GetComputableType<T["getClasses"]> ; getDisplay: GetComputableType<T["getDisplay"]> ; getStartState: GetComputableType<T["getStartState"]> ; getStyle: GetComputableType<T["getStyle"]> ; getTitle: GetComputableType<T["getTitle"]> ; getVisibility: GetComputableTypeWithDefault<T["getVisibility"], Visible> ; rows: GetComputableType<T["rows"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends GridOptions

Defined in

profectus/src/features/grids/grid.ts:213

Variables

GridType

• Const GridType: typeof GridType

Defined in

profectus/src/features/grids/grid.ts:18

Functions

createGrid

â–¸ createGrid<T>(optionsFunc): Grid<T>

Type parameters

NameType
Textends GridOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseGrid, GenericGrid>

Returns

Grid<T>

- + diff --git a/api/modules/features/hotkey.html b/api/modules/features/hotkey.html index e411f696..84971f7a 100644 --- a/api/modules/features/hotkey.html +++ b/api/modules/features/hotkey.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/hotkey

Interfaces

Type Aliases

GenericHotkey

Ƭ GenericHotkey: Replace<Hotkey<HotkeyOptions>, { enabled: ProcessedComputable<boolean> }>

Defined in

profectus/src/features/hotkey.tsx:39


Hotkey

Ƭ Hotkey<T>: Replace<T & BaseHotkey, { description: GetComputableType<T["description"]> ; enabled: GetComputableTypeWithDefault<T["enabled"], true> }>

Type parameters

NameType
Textends HotkeyOptions

Defined in

profectus/src/features/hotkey.tsx:31

Variables

HotkeyType

• Const HotkeyType: typeof HotkeyType

Defined in

profectus/src/features/hotkey.tsx:18


hotkeys

• Const hotkeys: Record<string, GenericHotkey | undefined>

Defined in

profectus/src/features/hotkey.tsx:17

Functions

createHotkey

â–¸ createHotkey<T>(optionsFunc): Hotkey<T>

Type parameters

NameType
Textends HotkeyOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseHotkey, GenericHotkey>

Returns

Hotkey<T>

- + diff --git a/api/modules/features/infoboxes/InfoboxComponent.html b/api/modules/features/infoboxes/InfoboxComponent.html index bd9ca404..c8ce181a 100644 --- a/api/modules/features/infoboxes/InfoboxComponent.html +++ b/api/modules/features/infoboxes/InfoboxComponent.html @@ -20,7 +20,7 @@
Skip to content
On this page

Component: Infobox

Props

NameTypes
visibility
*
processedPropType<Visibility>(Number)
display
*
processedPropType<CoercableComponent>(Object, String, Function)
title
*
processedPropType<CoercableComponent>(Object, String, Function)
color
processedPropType<string>(String)
collapsed
*
Ref<boolean>
style
processedPropType<StyleValue>(Object, String, Array)
titleStyle
processedPropType<StyleValue>(Object, String, Array)
bodyStyle
processedPropType<StyleValue>(Object, String, Array)
classes
processedPropType<Record<string, boolean>>(Object)
id
*
string
- + diff --git a/api/modules/features/infoboxes/infobox.html b/api/modules/features/infoboxes/infobox.html index 594fc99e..c0d8279b 100644 --- a/api/modules/features/infoboxes/infobox.html +++ b/api/modules/features/infoboxes/infobox.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/infoboxes/infobox

Components

Interfaces

Type Aliases

GenericInfobox

Ƭ GenericInfobox: Replace<Infobox<InfoboxOptions>, { visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/infoboxes/infobox.ts:51


Infobox

Ƭ Infobox<T>: Replace<T & BaseInfobox, { bodyStyle: GetComputableType<T["bodyStyle"]> ; classes: GetComputableType<T["classes"]> ; color: GetComputableType<T["color"]> ; display: GetComputableType<T["display"]> ; style: GetComputableType<T["style"]> ; title: GetComputableType<T["title"]> ; titleStyle: GetComputableType<T["titleStyle"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends InfoboxOptions

Defined in

profectus/src/features/infoboxes/infobox.ts:37

Variables

InfoboxType

• Const InfoboxType: typeof InfoboxType

Defined in

profectus/src/features/infoboxes/infobox.ts:16

Functions

createInfobox

â–¸ createInfobox<T>(optionsFunc): Infobox<T>

Type parameters

NameType
Textends InfoboxOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseInfobox, GenericInfobox>

Returns

Infobox<T>

- + diff --git a/api/modules/features/links/LinkComponent.html b/api/modules/features/links/LinkComponent.html index 449c0892..f271fa24 100644 --- a/api/modules/features/links/LinkComponent.html +++ b/api/modules/features/links/LinkComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/links/LinksComponent.html b/api/modules/features/links/LinksComponent.html index 0201d481..f3d31c40 100644 --- a/api/modules/features/links/LinksComponent.html +++ b/api/modules/features/links/LinksComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/links/links.html b/api/modules/features/links/links.html index f553cd43..cffde798 100644 --- a/api/modules/features/links/links.html +++ b/api/modules/features/links/links.html @@ -20,7 +20,7 @@
Skip to content
On this page
- + diff --git a/api/modules/features/milestones/MilestoneComponent.html b/api/modules/features/milestones/MilestoneComponent.html index 3a3e878f..b1e99ff7 100644 --- a/api/modules/features/milestones/MilestoneComponent.html +++ b/api/modules/features/milestones/MilestoneComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/milestones/milestone.html b/api/modules/features/milestones/milestone.html index b18e9a81..6f0ef772 100644 --- a/api/modules/features/milestones/milestone.html +++ b/api/modules/features/milestones/milestone.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/milestones/milestone

Components

Enumerations

Interfaces

Type Aliases

GenericMilestone

Ƭ GenericMilestone: Replace<Milestone<MilestoneOptions>, { visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/milestones/milestone.tsx:71


Milestone

Ƭ Milestone<T>: Replace<T & BaseMilestone, { classes: GetComputableType<T["classes"]> ; display: GetComputableType<T["display"]> ; style: GetComputableType<T["style"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends MilestoneOptions

Defined in

profectus/src/features/milestones/milestone.tsx:61

Variables

MilestoneType

• Const MilestoneType: typeof MilestoneType

Defined in

profectus/src/features/milestones/milestone.tsx:26

Functions

createMilestone

â–¸ createMilestone<T>(optionsFunc?): Milestone<T>

Type parameters

NameType
Textends MilestoneOptions

Parameters

NameType
optionsFunc?OptionsFunc<T, BaseMilestone, GenericMilestone>

Returns

Milestone<T>

- + diff --git a/api/modules/features/particles/ParticlesComponent.html b/api/modules/features/particles/ParticlesComponent.html index e647453a..78e7f7ac 100644 --- a/api/modules/features/particles/ParticlesComponent.html +++ b/api/modules/features/particles/ParticlesComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/particles/particles.html b/api/modules/features/particles/particles.html index 6e8b1412..c2f76655 100644 --- a/api/modules/features/particles/particles.html +++ b/api/modules/features/particles/particles.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/particles/particles

Components

Interfaces

Type Aliases

GenericParticles

Ƭ GenericParticles: Particles<ParticlesOptions>

Defined in

profectus/src/features/particles/particles.tsx:37


Particles

Ƭ Particles<T>: Replace<T & BaseParticles, { classes: GetComputableType<T["classes"]> ; style: GetComputableType<T["style"]> }>

Type parameters

NameType
Textends ParticlesOptions

Defined in

profectus/src/features/particles/particles.tsx:29

Variables

ParticlesType

• Const ParticlesType: typeof ParticlesType

Defined in

profectus/src/features/particles/particles.tsx:11

Functions

createParticles

â–¸ createParticles<T>(optionsFunc?): Particles<T>

Type parameters

NameType
Textends ParticlesOptions

Parameters

NameType
optionsFunc?OptionsFunc<T, BaseParticles, GenericParticles>

Returns

Particles<T>

- + diff --git a/api/modules/features/reset.html b/api/modules/features/reset.html index fe27c492..af27ca77 100644 --- a/api/modules/features/reset.html +++ b/api/modules/features/reset.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/reset

Interfaces

Type Aliases

GenericReset

Ƭ GenericReset: Reset<ResetOptions>

Defined in

profectus/src/features/reset.ts:34


Reset

Ƭ Reset<T>: Replace<T & BaseReset, { thingsToReset: GetComputableType<T["thingsToReset"]> }>

Type parameters

NameType
Textends ResetOptions

Defined in

profectus/src/features/reset.ts:27

Variables

ResetType

• Const ResetType: typeof ResetType

Defined in

profectus/src/features/reset.ts:14

Functions

createReset

â–¸ createReset<T>(optionsFunc): Reset<T>

Type parameters

NameType
Textends ResetOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseReset, GenericReset>

Returns

Reset<T>


trackResetTime

â–¸ trackResetTime(layer, reset): Persistent<default>

Parameters

NameType
layerBaseLayer
resetGenericReset

Returns

Persistent<default>

- + diff --git a/api/modules/features/resources/MainDisplayComponent.html b/api/modules/features/resources/MainDisplayComponent.html index e694a664..6d90cabe 100644 --- a/api/modules/features/resources/MainDisplayComponent.html +++ b/api/modules/features/resources/MainDisplayComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/resources/ResourceComponent.html b/api/modules/features/resources/ResourceComponent.html index e94f11b1..b7da64c7 100644 --- a/api/modules/features/resources/ResourceComponent.html +++ b/api/modules/features/resources/ResourceComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/resources/resource.html b/api/modules/features/resources/resource.html index 206f75db..36ebaccc 100644 --- a/api/modules/features/resources/resource.html +++ b/api/modules/features/resources/resource.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/resources/resource

Components

Interfaces

Functions

createResource

â–¸ createResource<T>(defaultValue, displayName?, precision?, small?): Resource<T>

Type parameters

NameType
Textends State

Parameters

NameTypeDefault value
defaultValueT | Ref<T>undefined
displayNamestring"points"
precisionnumber0
smallundefinedundefined

Returns

Resource<T>


displayResource

â–¸ displayResource(resource, overrideAmount?): string

Parameters

NameType
resourceResource<DecimalSource>
overrideAmount?DecimalSource

Returns

string


trackBest

â–¸ trackBest(resource): Ref<DecimalSource>

Parameters

NameType
resourceResource<DecimalSource>

Returns

Ref<DecimalSource>


trackOOMPS

â–¸ trackOOMPS(resource, pointGain?): Ref<string>

Parameters

NameType
resourceResource<DecimalSource>
pointGain?ComputedRef<DecimalSource>

Returns

Ref<string>


trackTotal

â–¸ trackTotal(resource): Ref<DecimalSource>

Parameters

NameType
resourceResource<DecimalSource>

Returns

Ref<DecimalSource>

- + diff --git a/api/modules/features/tabs/TabButtonComponent.html b/api/modules/features/tabs/TabButtonComponent.html index 27f2ecbe..62621075 100644 --- a/api/modules/features/tabs/TabButtonComponent.html +++ b/api/modules/features/tabs/TabButtonComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/tabs/TabComponent.html b/api/modules/features/tabs/TabComponent.html index d52dbe1d..67112580 100644 --- a/api/modules/features/tabs/TabComponent.html +++ b/api/modules/features/tabs/TabComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/tabs/TabFamilyComponent.html b/api/modules/features/tabs/TabFamilyComponent.html index 1e80dc98..d650ab97 100644 --- a/api/modules/features/tabs/TabFamilyComponent.html +++ b/api/modules/features/tabs/TabFamilyComponent.html @@ -20,7 +20,7 @@
Skip to content
On this page

Component: TabFamily

Props

NameTypes
visibility
*
processedPropType<Visibility>(Number)
activeTab
*
processedPropType<GenericTab | CoercableComponent | null>(Object)
selected
*
Ref<string>
tabs
*
processedPropType<Record<string, GenericTabButton>>(Object)
style
processedPropType<StyleValue>(String, Object, Array)
classes
processedPropType<Record<string, boolean>>(Object)
buttonContainerStyle
processedPropType<StyleValue>(String, Object, Array)
buttonContainerClasses
processedPropType<Record<string, boolean>>(Object)
- + diff --git a/api/modules/features/tabs/tab.html b/api/modules/features/tabs/tab.html index c847d46e..b4e258a8 100644 --- a/api/modules/features/tabs/tab.html +++ b/api/modules/features/tabs/tab.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/tabs/tab

Components

Interfaces

Type Aliases

GenericTab

Ƭ GenericTab: Tab<TabOptions>

Defined in

profectus/src/features/tabs/tab.ts:31


Tab

Ƭ Tab<T>: Replace<T & BaseTab, { classes: GetComputableType<T["classes"]> ; display: GetComputableType<T["display"]> ; style: GetComputableType<T["style"]> }>

Type parameters

NameType
Textends TabOptions

Defined in

profectus/src/features/tabs/tab.ts:22

Variables

TabType

• Const TabType: typeof TabType

Defined in

profectus/src/features/tabs/tab.ts:7

Functions

createTab

â–¸ createTab<T>(optionsFunc): Tab<T>

Type parameters

NameType
Textends TabOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseTab, GenericTab>

Returns

Tab<T>

- + diff --git a/api/modules/features/tabs/tabFamily.html b/api/modules/features/tabs/tabFamily.html index 48c0e6e0..f3ca3076 100644 --- a/api/modules/features/tabs/tabFamily.html +++ b/api/modules/features/tabs/tabFamily.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/tabs/tabFamily

Components

Interfaces

Type Aliases

GenericTabButton

Ƭ GenericTabButton: Replace<TabButton<TabButtonOptions>, { visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/tabs/tabFamily.ts:48


GenericTabFamily

Ƭ GenericTabFamily: Replace<TabFamily<TabFamilyOptions>, { visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/tabs/tabFamily.ts:81


TabButton

Ƭ TabButton<T>: Replace<T & BaseTabButton, { classes: GetComputableType<T["classes"]> ; display: GetComputableType<T["display"]> ; glowColor: GetComputableType<T["glowColor"]> ; style: GetComputableType<T["style"]> ; tab: GetComputableType<T["tab"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends TabButtonOptions

Defined in

profectus/src/features/tabs/tabFamily.ts:36


TabFamily

Ƭ TabFamily<T>: Replace<T & BaseTabFamily, { tabs: Record<string, GenericTabButton> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends TabFamilyOptions

Defined in

profectus/src/features/tabs/tabFamily.ts:73

Variables

TabButtonType

• Const TabButtonType: typeof TabButtonType

Defined in

profectus/src/features/tabs/tabFamily.ts:19


TabFamilyType

• Const TabFamilyType: typeof TabFamilyType

Defined in

profectus/src/features/tabs/tabFamily.ts:20

Functions

createTabFamily

â–¸ createTabFamily<T>(tabs, optionsFunc?): TabFamily<T>

Type parameters

NameType
Textends TabFamilyOptions

Parameters

NameType
tabsRecord<string, () => TabButtonOptions>
optionsFunc?OptionsFunc<T, BaseTabFamily, GenericTabFamily>

Returns

TabFamily<T>

- + diff --git a/api/modules/features/tooltips/TooltipComponent.html b/api/modules/features/tooltips/TooltipComponent.html index 0b4de273..2862f753 100644 --- a/api/modules/features/tooltips/TooltipComponent.html +++ b/api/modules/features/tooltips/TooltipComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/tooltips/tooltip.html b/api/modules/features/tooltips/tooltip.html index 091c5988..8c63d193 100644 --- a/api/modules/features/tooltips/tooltip.html +++ b/api/modules/features/tooltips/tooltip.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/tooltips/tooltip

Components

Interfaces

Type Aliases

GenericTooltip

Ƭ GenericTooltip: Replace<Tooltip<TooltipOptions>, { direction: ProcessedComputable<Direction> ; pinnable: boolean ; pinned: Ref<boolean> | undefined }>

Defined in

profectus/src/features/tooltips/tooltip.ts:52


Tooltip

Ƭ Tooltip<T>: Replace<T & BaseTooltip, { classes: GetComputableType<T["classes"]> ; direction: GetComputableTypeWithDefault<T["direction"], Up> ; display: GetComputableType<T["display"]> ; pinnable: T["pinnable"] extends undefined ? false : T["pinnable"] ; pinned: T["pinnable"] extends true ? Ref<boolean> : undefined ; style: GetComputableType<T["style"]> ; xoffset: GetComputableType<T["xoffset"]> ; yoffset: GetComputableType<T["yoffset"]> }>

Type parameters

NameType
Textends TooltipOptions

Defined in

profectus/src/features/tooltips/tooltip.ts:38

Functions

addTooltip

â–¸ addTooltip<T>(element, options): Tooltip<T>

Type parameters

NameType
Textends TooltipOptions

Parameters

NameType
elementVueFeature
optionsT & ThisType<Tooltip<T>> & Partial<BaseTooltip>

Returns

Tooltip<T>

- + diff --git a/api/modules/features/trees/TreeComponent.html b/api/modules/features/trees/TreeComponent.html index 04911f8f..d5a8f3d7 100644 --- a/api/modules/features/trees/TreeComponent.html +++ b/api/modules/features/trees/TreeComponent.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/features/trees/TreeNodeComponent.html b/api/modules/features/trees/TreeNodeComponent.html index ea638067..54eda957 100644 --- a/api/modules/features/trees/TreeNodeComponent.html +++ b/api/modules/features/trees/TreeNodeComponent.html @@ -20,7 +20,7 @@
Skip to content
On this page

Component: TreeNode

Props

NameTypes
display
processedPropType<CoercableComponent>(Object, String, Function)
visibility
*
processedPropType<Visibility>(Number)
style
processedPropType<StyleValue>(String, Object, Array)
classes
processedPropType<Record<string, boolean>>(Object)
onClick
(e?: MouseEvent | TouchEvent) => void
onHold
VoidFunction
color
processedPropType<string>(String)
glowColor
processedPropType<string>(String)
canClick
*
processedPropType<boolean>(Boolean)
mark
processedPropType<boolean | string>(Boolean, String)
id
*
string
- + diff --git a/api/modules/features/trees/tree.html b/api/modules/features/trees/tree.html index eae6df40..c54773e5 100644 --- a/api/modules/features/trees/tree.html +++ b/api/modules/features/trees/tree.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/trees/tree

Components

Interfaces

Type Aliases

GenericTree

Ƭ GenericTree: Replace<Tree<TreeOptions>, { visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/trees/tree.ts:175


GenericTreeNode

Ƭ GenericTreeNode: Replace<TreeNode<TreeNodeOptions>, { canClick: ProcessedComputable<boolean> ; visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/trees/tree.ts:60


ResetPropagation

Ƭ ResetPropagation: (tree: GenericTree, resettingNode: GenericTreeNode) => void

Type declaration

â–¸ (tree, resettingNode): void

Parameters
NameType
treeGenericTree
resettingNodeGenericTreeNode
Returns

void

Defined in

profectus/src/features/trees/tree.ts:224


Tree

Ƭ Tree<T>: Replace<T & BaseTree, { branches: GetComputableType<T["branches"]> ; leftSideNodes: GetComputableType<T["leftSideNodes"]> ; nodes: GetComputableType<T["nodes"]> ; rightSideNodes: GetComputableType<T["rightSideNodes"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends TreeOptions

Defined in

profectus/src/features/trees/tree.ts:164


TreeNode

Ƭ TreeNode<T>: Replace<T & BaseTreeNode, { canClick: GetComputableTypeWithDefault<T["canClick"], true> ; classes: GetComputableType<T["classes"]> ; color: GetComputableType<T["color"]> ; display: GetComputableType<T["display"]> ; glowColor: GetComputableType<T["glowColor"]> ; mark: GetComputableType<T["mark"]> ; style: GetComputableType<T["style"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends TreeNodeOptions

Defined in

profectus/src/features/trees/tree.ts:46

Variables

TreeNodeType

• Const TreeNodeType: typeof TreeNodeType

Defined in

profectus/src/features/trees/tree.ts:22


TreeType

• Const TreeType: typeof TreeType

Defined in

profectus/src/features/trees/tree.ts:23

Functions

branchedResetPropagation

â–¸ branchedResetPropagation(tree, resettingNode): void

Parameters

NameType
treeGenericTree
resettingNodeGenericTreeNode

Returns

void


createResourceTooltip

â–¸ createResourceTooltip(resource, requiredResource?, requirement?): Ref<string>

Parameters

NameTypeDefault value
resourceResource<DecimalSource>undefined
requiredResourcenull | Resource<DecimalSource>null
requirementComputable<DecimalSource>0

Returns

Ref<string>


createTree

â–¸ createTree<T>(optionsFunc): Tree<T>

Type parameters

NameType
Textends TreeOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseTree, GenericTree>

Returns

Tree<T>


createTreeNode

â–¸ createTreeNode<T>(optionsFunc?): TreeNode<T>

Type parameters

NameType
Textends TreeNodeOptions

Parameters

NameType
optionsFunc?OptionsFunc<T, BaseTreeNode, GenericTreeNode>

Returns

TreeNode<T>


defaultResetPropagation

â–¸ defaultResetPropagation(tree, resettingNode): void

Parameters

NameType
treeGenericTree
resettingNodeGenericTreeNode

Returns

void


invertedResetPropagation

â–¸ invertedResetPropagation(tree, resettingNode): void

Parameters

NameType
treeGenericTree
resettingNodeGenericTreeNode

Returns

void

- + diff --git a/api/modules/features/upgrades/UpgradeComponent.html b/api/modules/features/upgrades/UpgradeComponent.html index c7e1d60f..bb7ba7f5 100644 --- a/api/modules/features/upgrades/UpgradeComponent.html +++ b/api/modules/features/upgrades/UpgradeComponent.html @@ -20,7 +20,7 @@
Skip to content
On this page

Component: Upgrade

Props

NameTypes
display
*
processedPropType<UnwrapRef<GenericUpgrade["display"]>>(String, Object, Function)
visibility
*
processedPropType<Visibility>(Number)
style
processedPropType<StyleValue>(String, Object, Array)
classes
processedPropType<Record<string, boolean>>(Object)
resource
Resource
cost
processedPropType<DecimalSource>(String, Object, Number)
canPurchase
*
processedPropType<boolean>(Boolean)
bought
*
processedPropType<boolean>(Boolean)
mark
processedPropType<boolean | string>(Boolean, String)
id
*
string
purchase
*
VoidFunction
- + diff --git a/api/modules/features/upgrades/upgrade.html b/api/modules/features/upgrades/upgrade.html index 163b7734..9fc800c0 100644 --- a/api/modules/features/upgrades/upgrade.html +++ b/api/modules/features/upgrades/upgrade.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: features/upgrades/upgrade

Components

Interfaces

Type Aliases

GenericUpgrade

Ƭ GenericUpgrade: Replace<Upgrade<UpgradeOptions>, { canPurchase: ProcessedComputable<boolean> ; visibility: ProcessedComputable<Visibility> }>

Defined in

profectus/src/features/upgrades/upgrade.ts:73


Upgrade

Ƭ Upgrade<T>: Replace<T & BaseUpgrade, { canAfford: GetComputableTypeWithDefault<T["canAfford"], Ref<boolean>> ; classes: GetComputableType<T["classes"]> ; cost: GetComputableType<T["cost"]> ; display: GetComputableType<T["display"]> ; mark: GetComputableType<T["mark"]> ; style: GetComputableType<T["style"]> ; visibility: GetComputableTypeWithDefault<T["visibility"], Visible> }>

Type parameters

NameType
Textends UpgradeOptions

Defined in

profectus/src/features/upgrades/upgrade.ts:60

Variables

UpgradeType

• Const UpgradeType: typeof UpgradeType

Defined in

profectus/src/features/upgrades/upgrade.ts:29

Functions

createUpgrade

â–¸ createUpgrade<T>(optionsFunc): Upgrade<T>

Type parameters

NameType
Textends UpgradeOptions

Parameters

NameType
optionsFuncOptionsFunc<T, BaseUpgrade, GenericUpgrade>

Returns

Upgrade<T>


setupAutoPurchase

â–¸ setupAutoPurchase(layer, autoActive, upgrades?): void

Parameters

NameTypeDefault value
layerGenericLayerundefined
autoActiveComputable<boolean>undefined
upgradesGenericUpgrade[][]

Returns

void

- + diff --git a/api/modules/game/events.html b/api/modules/game/events.html index 9dca3a9c..4319b1dc 100644 --- a/api/modules/game/events.html +++ b/api/modules/game/events.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/game/layers.html b/api/modules/game/layers.html index 499089f9..e273ed50 100644 --- a/api/modules/game/layers.html +++ b/api/modules/game/layers.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: game/layers

Interfaces

Type Aliases

GenericLayer

Ƭ GenericLayer: Replace<Layer<LayerOptions>, { minWidth: ProcessedComputable<number> ; minimizable: ProcessedComputable<boolean> ; name: ProcessedComputable<string> }>

A type that matches any valid Layer object.

Defined in

profectus/src/game/layers.tsx:178


Layer

Ƭ Layer<T>: Replace<T & BaseLayer, { classes: GetComputableType<T["classes"]> ; color: GetComputableType<T["color"]> ; display: GetComputableType<T["display"]> ; forceHideGoBack: GetComputableType<T["forceHideGoBack"]> ; minWidth: GetComputableTypeWithDefault<T["minWidth"], 600> ; minimizable: GetComputableTypeWithDefault<T["minimizable"], true> ; name: GetComputableTypeWithDefault<T["name"], string> ; style: GetComputableType<T["style"]> }>

An unit of game content. Displayed to the user as a tab or modal.

Type parameters

NameType
Textends LayerOptions

Defined in

profectus/src/game/layers.tsx:163

Variables

BoundsInjectionKey

• Const BoundsInjectionKey: InjectionKey<Ref<DOMRect | undefined>>

An injection key that a ContextComponent will use to provide a ref to a bounding rect of the Context.

Defined in

profectus/src/game/layers.tsx:52


NodesInjectionKey

• Const NodesInjectionKey: InjectionKey<Ref<Record<string, FeatureNode | undefined>>>

An injection key that a ContextComponent will use to provide a ref to a map of all currently registered FeatureNodes.

Defined in

profectus/src/game/layers.tsx:47


RegisterNodeInjectionKey

• Const RegisterNodeInjectionKey: InjectionKey<(id: string, element: HTMLElement) => void>

An injection key that a ContextComponent will use to provide a function that registers a FeatureNode with the given id and HTML element.

Defined in

profectus/src/game/layers.tsx:37


UnregisterNodeInjectionKey

• Const UnregisterNodeInjectionKey: InjectionKey<(id: string) => void>

An injection key that a ContextComponent will use to provide a function that unregisters a FeatureNode with the given id.

Defined in

profectus/src/game/layers.tsx:42


addingLayers

• Const addingLayers: string[] = []

When creating layers, this array stores the layers currently being created, as a stack.

Defined in

profectus/src/game/layers.tsx:194


layers

• Const layers: Record<string, Readonly<GenericLayer> | undefined>

A reference to all the current layers. It is shallow reactive so it will update when layers are added or removed, but not interfere with the existing refs within each layer.

Defined in

profectus/src/game/layers.tsx:77


persistentRefs

• Const persistentRefs: Record<string, Set<Persistent>> = {}

When creating layers, this object a map of layer ID to a set of any created persistent refs in order to check they're all included in the final layer object.

Defined in

profectus/src/game/layers.tsx:190

Functions

addLayer

â–¸ addLayer(layer, player): void

Enables a layer object, so it will be updated every tick. Note that accessing a layer/its properties does NOT require it to be enabled. For dynamic layers you can call this function and removeLayer as necessary. Just make sure getInitialLayers will provide an accurate list of layers based on the player data object. For static layers just make getInitialLayers return all the layers.

Parameters

NameTypeDescription
layerGenericLayerThe layer to add.
playerObjectThe player data object, which will have a data object for this layer.
player.layers?Record<string, Record<string, unknown>>-

Returns

void


createLayer

â–¸ createLayer<T>(id, optionsFunc): Layer<T>

Lazily creates a layer with the given options.

Type parameters

NameType
Textends LayerOptions

Parameters

NameTypeDescription
idstringThe ID this layer will have. See id.
optionsFuncOptionsFunc<T, BaseLayer, BaseLayer>Layer options.

Returns

Layer<T>


getLayer

â–¸ getLayer<T>(layerID): T

Convenience method for getting a layer by its ID with correct typing.

Type parameters

NameType
Textends GenericLayer

Parameters

NameTypeDescription
layerIDstringThe ID of the layer to get.

Returns

T


reloadLayer

â–¸ reloadLayer(layer): void

Convenience method for removing and immediately re-adding a layer. This is useful for layers with dynamic content, to ensure persistent refs are correctly configured.

Parameters

NameTypeDescription
layerGenericLayerLayer to remove and then re-add

Returns

void


removeLayer

â–¸ removeLayer(layer): void

Disables a layer, so it will no longer be updated every tick. Note that accessing a layer/its properties does NOT require it to be enabled.

Parameters

NameTypeDescription
layerGenericLayerThe layer to remove.

Returns

void


setupLayerModal

â–¸ setupLayerModal(layer): Object

Utility function for creating a modal that display's a display. Returns the modal itself, which can be rendered anywhere you need, as well as a function to open the modal.

Parameters

NameTypeDescription
layerGenericLayerThe layer to display in the modal.

Returns

Object

NameType
modalJSXFunction
openModalVoidFunction
- + diff --git a/api/modules/game/modifiers.html b/api/modules/game/modifiers.html index 5853c9f9..dafd9593 100644 --- a/api/modules/game/modifiers.html +++ b/api/modules/game/modifiers.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: game/modifiers

Interfaces

Type Aliases

ModifierFromOptionalParams

Ƭ ModifierFromOptionalParams<T, S>: T extends undefined ? S extends undefined ? Omit<WithRequired<Modifier, "revert">, "description" | "enabled"> : Omit<WithRequired<Modifier, "revert" | "enabled">, "description"> : S extends undefined ? Omit<WithRequired<Modifier, "revert" | "description">, "enabled"> : WithRequired<Modifier, "revert" | "enabled" | "description">

Utility type used to narrow down a modifier type that will have a description and/or enabled property based on optional parameters, T and S (respectively).

Type parameters

Name
T
S

Defined in

profectus/src/game/modifiers.tsx:39

Functions

createAdditiveModifier

â–¸ createAdditiveModifier<T, S, R>(addend, description?, enabled?): R

Create a modifier that adds some value to the input value.

Type parameters

NameType
Textends undefined | Computable<CoercableComponent>
Sextends undefined | Computable<boolean>
RModifierFromOptionalParams<T, S>

Parameters

NameTypeDescription
addendComputable<DecimalSource>The amount to add to the input value.
description?TDescription of what this modifier is doing.
enabled?SA computable that will be processed and passed directly into the returned modifier.

Returns

R


createExponentialModifier

â–¸ createExponentialModifier<T, S, R>(exponent, description?, enabled?): R

Create a modifier that raises the input value to the power of some value.

Type parameters

NameType
Textends undefined | Computable<CoercableComponent>
Sextends undefined | Computable<boolean>
RModifierFromOptionalParams<T, S>

Parameters

NameTypeDescription
exponentComputable<DecimalSource>The value to raise the input value to the power of.
description?TDescription of what this modifier is doing.
enabled?SA computable that will be processed and passed directly into the returned modifier.

Returns

R


createModifierSection

â–¸ createModifierSection(title, subtitle, modifier, base?, unit?, baseText?): Element

Create a JSX element that displays a modifier. Intended to be used with the output from createSequentialModifier.

Parameters

NameTypeDefault valueDescription
titlestringundefinedThe header for the section.
subtitlestringundefinedSmaller text that appears in the header after the title.
modifierWithRequired<Modifier, "description">undefinedThe modifier to render.
baseDecimalSource1The base value that'll be passed into the modifier.
unitstring""The unit of the value being modified, if any.
baseTextCoercableComponent"Base"The label to use for the base value.

Returns

Element


createMultiplicativeModifier

â–¸ createMultiplicativeModifier<T, S, R>(multiplier, description?, enabled?): R

Create a modifier that multiplies the input value by some value.

Type parameters

NameType
Textends undefined | Computable<CoercableComponent>
Sextends undefined | Computable<boolean>
RModifierFromOptionalParams<T, S>

Parameters

NameTypeDescription
multiplierComputable<DecimalSource>The value to multiply the input value by.
description?TDescription of what this modifier is doing.
enabled?SA computable that will be processed and passed directly into the returned modifier.

Returns

R


createSequentialModifier

â–¸ createSequentialModifier<T, S>(...modifiers): S

Takes an array of modifiers and applies and reverses them in order. Modifiers that are not enabled will not be applied nor reversed. Also joins their descriptions together.

See

createModifierSection.

Type parameters

NameType
Textends Modifier[]
ST extends WithRequired<Modifier, "revert">[] ? WithRequired<Modifier, "description" | "revert"> : Omit<WithRequired<Modifier, "description">, "revert">

Parameters

NameTypeDescription
...modifiersTThe modifiers to perform sequentially.

Returns

S

- + diff --git a/api/modules/game/notifications.html b/api/modules/game/notifications.html index de31bf33..964cbc5e 100644 --- a/api/modules/game/notifications.html +++ b/api/modules/game/notifications.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: game/notifications

Functions

getHighNotifyStyle

â–¸ getHighNotifyStyle(): Object

Utility function to call getNotifyStyle with "high importance" parameters

Returns

Object

NameType
borderColorstring
boxShadowstring
transformstring
zIndexnumber

getNotifyStyle

â–¸ getNotifyStyle(color?, strength?): Object

Gives a CSSProperties object that makes an object glow, to bring focus to it. Default values are for a "soft" white notif effect.

Parameters

NameTypeDefault valueDescription
colorstring"white"The color of the glow effect.
strengthstring"8px"The strength of the glow effect - affects its spread.

Returns

Object

NameType
borderColorstring
boxShadowstring
transformstring
zIndexnumber
- + diff --git a/api/modules/game/persistence.html b/api/modules/game/persistence.html index c51d19e3..98f363f5 100644 --- a/api/modules/game/persistence.html +++ b/api/modules/game/persistence.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: game/persistence

Type Aliases

Persistent

Ƭ Persistent<T>: Ref<T> & { [DefaultValue]: T ; [Deleted]: boolean ; [PersistentState]: Ref<T> ; [StackTrace]: string }

A Ref that has been augmented with properties to allow it to be saved and loaded within the player save data object.

Type parameters

NameType
Textends State = State

Defined in

profectus/src/game/persistence.ts:48


State

Ƭ State: string | number | boolean | DecimalSource | { [key: string]: State; } | { [key: number]: State; }

This is a union of things that should be safely stringifiable without needing special processes or knowing what to load them in as.

  • Decimals aren't allowed because we'd need to know to parse them back.
  • DecimalSources are allowed because the string is a valid value for them

Defined in

profectus/src/game/persistence.ts:37

Variables

DefaultValue

• Const DefaultValue: typeof DefaultValue

A symbol used in Persistent objects.

See

[DefaultValue]

Defined in

profectus/src/game/persistence.ts:20


Deleted

• Const Deleted: typeof Deleted

A symbol used in Persistent objects.

See

[Deleted]

Defined in

profectus/src/game/persistence.ts:30


PersistentState

• Const PersistentState: typeof PersistentState

A symbol used in Persistent objects.

See

[PersistentState]

Defined in

profectus/src/game/persistence.ts:15


StackTrace

• Const StackTrace: typeof StackTrace

A symbol used in Persistent objects.

See

[StackTrace]

Defined in

profectus/src/game/persistence.ts:25

Functions

deletePersistent

â–¸ deletePersistent(persistent): void

Mark a Persistent as deleted, so it won't be saved and loaded. Since persistent refs must be created during a layer's options func, features can not create persistent refs after evaluating their own options funcs. As a result, it must create any persistent refs it might need. This function can then be called after the options func is evaluated to mark the persistent ref to not be saved or loaded.

Parameters

NameType
persistentPersistent<State>

Returns

void


persistent

â–¸ persistent<T>(defaultValue): Persistent<T>

Create a persistent ref, which can be saved and loaded. All (non-deleted) persistent refs must be included somewhere within the layer object returned by that layer's options func.

Type parameters

NameType
Textends State

Parameters

NameTypeDescription
defaultValueT | Ref<T>The value the persistent ref should start at on fresh saves or when reset.

Returns

Persistent<T>

- + diff --git a/api/modules/game/player.html b/api/modules/game/player.html index 10559d36..06034813 100644 --- a/api/modules/game/player.html +++ b/api/modules/game/player.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: game/player

Interfaces

Type Aliases

LayerData

Ƭ LayerData<T>: { [P in keyof T]?: T[P] extends infer U[] ? Record<string, LayerData<U>> : T[P] extends Record<string, never> ? never : T[P] extends Ref<infer S> ? S : T[P] extends object ? LayerData<T[P]> : T[P] }

A layer's save data. Automatically unwraps refs.

Type parameters

Name
T

Defined in

profectus/src/game/player.ts:43


Player

Ƭ Player: ProxiedWithState<PlayerData>

The proxied player that is used to track NaN values.

Defined in

profectus/src/game/player.ts:40

Variables

default

• default: { autosave: boolean ; devSpeed: null | number ; id: string ; keepGoing: boolean ; layers: { [x: string]: {} & { [ProxyState]: LayerData<unknown>; [ProxyPath]: string[]; }; } & { [ProxyPath]: string[] ; [ProxyState]: Record<string, LayerData<unknown>> } ; modID: string ; modVersion: string ; name: string ; offlineProd: boolean ; offlineTime: null | number ; tabs: string[] & { [ProxyPath]: string[] ; [ProxyState]: string[] } ; time: number ; timePlayed: number } & { [ProxyPath]: string[] ; [ProxyState]: PlayerData }

The player save data object.

Defined in

profectus/src/game/player.ts:154

Functions

stringifySave

â–¸ stringifySave(player): string

Convert a player save data object into a JSON string. Unwraps refs.

Parameters

NameType
playerPlayerData

Returns

string

- + diff --git a/api/modules/game/settings.html b/api/modules/game/settings.html index ebc16cd2..e717afd7 100644 --- a/api/modules/game/settings.html +++ b/api/modules/game/settings.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: game/settings

Interfaces

Variables

default

• default: Settings

The player settings object. Stores data that persists across all saves. Automatically saved to localStorage whenever changed.

Defined in

profectus/src/game/settings.ts:53


gameComponents

• Const gameComponents: CoercableComponent[]

A list of components to add to the root of the page.

Defined in

profectus/src/game/settings.ts:115


infoComponents

• Const infoComponents: CoercableComponent[]

A list of components to show in the info modal.

Defined in

profectus/src/game/settings.ts:108


settingFields

• Const settingFields: CoercableComponent[]

A list of fields to append to the settings modal.

Defined in

profectus/src/game/settings.ts:101

Functions

hardResetSettings

â–¸ hardResetSettings(): void

Returns

void


loadSettings

â–¸ loadSettings(): void

Loads the player settings from localStorage. Calls the GlobalEvents.loadSettings event for custom properties to be included. Custom properties should be added by the file they relate to, so they won't be included if the file is tree shaken away. Custom properties should also register the field to modify said setting using registerSettingField.

Returns

void


registerGameComponent

â–¸ registerGameComponent(component): void

Register a component to be displayed at the root of the page.

Parameters

NameType
componentCoercableComponent

Returns

void


registerInfoComponent

â–¸ registerInfoComponent(component): void

Register a component to be displayed in the info modal.

Parameters

NameType
componentCoercableComponent

Returns

void


registerSettingField

â–¸ registerSettingField(component): void

Register a field to be displayed in the settings modal.

Parameters

NameType
componentCoercableComponent

Returns

void

- + diff --git a/api/modules/game/state.html b/api/modules/game/state.html index 8c7f164c..5f6aa94f 100644 --- a/api/modules/game/state.html +++ b/api/modules/game/state.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/lib/break_eternity.html b/api/modules/lib/break_eternity.html index 6c37d6ea..0e3dbecd 100644 --- a/api/modules/lib/break_eternity.html +++ b/api/modules/lib/break_eternity.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/lib/pwa-register.html b/api/modules/lib/pwa-register.html index 76e4759c..2616d6d6 100644 --- a/api/modules/lib/pwa-register.html +++ b/api/modules/lib/pwa-register.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/util/bignum.html b/api/modules/util/bignum.html index 8ca8f0a1..c3f21702 100644 --- a/api/modules/util/bignum.html +++ b/api/modules/util/bignum.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: util/bignum

References

default

Re-exports default

Type Aliases

DecimalSource

Ƭ DecimalSource: DecimalSource

Defined in

profectus/src/util/bignum.ts:18

Functions

commaFormat

â–¸ commaFormat(num, precision): string

Parameters

NameType
numDecimalSource
precisionnumber

Returns

string


exponentialFormat

â–¸ exponentialFormat(num, precision, mantissa?): string

Parameters

NameTypeDefault value
numDecimalSourceundefined
precisionnumberundefined
mantissabooleantrue

Returns

string


format

â–¸ format(num, precision?, small?): string

Parameters

NameType
numDecimalSource
precision?number
small?boolean

Returns

string


formatSmall

â–¸ formatSmall(x, precision?): string

Parameters

NameType
xDecimalSource
precision?number

Returns

string


formatTime

â–¸ formatTime(seconds): string

Parameters

NameType
secondsDecimalSource

Returns

string


formatWhole

â–¸ formatWhole(num): string

Parameters

NameType
numDecimalSource

Returns

string


invertOOM

â–¸ invertOOM(x): default

Parameters

NameType
xDecimalSource

Returns

default


regularFormat

â–¸ regularFormat(num, precision): string

Parameters

NameType
numDecimalSource
precisionnumber

Returns

string


toPlaces

â–¸ toPlaces(x, precision, maxAccepted): string

Parameters

NameType
xDecimalSource
precisionnumber
maxAcceptedDecimalSource

Returns

string

- + diff --git a/api/modules/util/break_eternity.html b/api/modules/util/break_eternity.html index 0760714b..42ef3e16 100644 --- a/api/modules/util/break_eternity.html +++ b/api/modules/util/break_eternity.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: util/break_eternity

References

default

Re-exports default

Functions

commaFormat

â–¸ commaFormat(num, precision): string

Parameters

NameType
numDecimalSource
precisionnumber

Returns

string


exponentialFormat

â–¸ exponentialFormat(num, precision, mantissa?): string

Parameters

NameTypeDefault value
numDecimalSourceundefined
precisionnumberundefined
mantissabooleantrue

Returns

string


format

â–¸ format(num, precision?, small?): string

Parameters

NameType
numDecimalSource
precision?number
small?boolean

Returns

string


formatSmall

â–¸ formatSmall(x, precision?): string

Parameters

NameType
xDecimalSource
precision?number

Returns

string


formatTime

â–¸ formatTime(seconds): string

Parameters

NameType
secondsDecimalSource

Returns

string


formatWhole

â–¸ formatWhole(num): string

Parameters

NameType
numDecimalSource

Returns

string


invertOOM

â–¸ invertOOM(x): default

Parameters

NameType
xDecimalSource

Returns

default


regularFormat

â–¸ regularFormat(num, precision): string

Parameters

NameType
numDecimalSource
precisionnumber

Returns

string


toPlaces

â–¸ toPlaces(x, precision, maxAccepted): string

Parameters

NameType
xDecimalSource
precisionnumber
maxAcceptedDecimalSource

Returns

string

- + diff --git a/api/modules/util/common.html b/api/modules/util/common.html index 270b230c..7f5e8a0c 100644 --- a/api/modules/util/common.html +++ b/api/modules/util/common.html @@ -20,7 +20,7 @@
- + diff --git a/api/modules/util/computed.html b/api/modules/util/computed.html index 7ed81291..0c30f98c 100644 --- a/api/modules/util/computed.html +++ b/api/modules/util/computed.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: util/computed

Type Aliases

Computable

Ƭ Computable<T>: T | Ref<T> | () => T

Type parameters

Name
T

Defined in

profectus/src/util/computed.ts:7


ComputableKeysOf

Ƭ ComputableKeysOf<T>: Pick<T, { [K in keyof T]: T[K] extends Computable<unknown> ? K : never }[keyof T]>

Type parameters

Name
T

Defined in

profectus/src/util/computed.ts:21


GetComputableType

Ƭ GetComputableType<T>: T extends { [DoNotCache]: true } ? T : T extends () => infer S ? Ref<S> : undefined extends T ? undefined : T

Type parameters

Name
T

Defined in

profectus/src/util/computed.ts:9


GetComputableTypeWithDefault

Ƭ GetComputableTypeWithDefault<T, S>: undefined extends T ? S : GetComputableType<NonNullable<T>>

Type parameters

Name
T
S

Defined in

profectus/src/util/computed.ts:16


ProcessedComputable

Ƭ ProcessedComputable<T>: T | Ref<T>

Type parameters

Name
T

Defined in

profectus/src/util/computed.ts:8


UnwrapComputableType

Ƭ UnwrapComputableType<T>: T extends Ref<infer S> ? S : T extends () => infer S ? S : T

Type parameters

Name
T

Defined in

profectus/src/util/computed.ts:19

Variables

DoNotCache

• Const DoNotCache: typeof DoNotCache

Defined in

profectus/src/util/computed.ts:5

Functions

convertComputable

â–¸ convertComputable<T>(obj): ProcessedComputable<T>

Type parameters

Name
T

Parameters

NameType
objComputable<T>

Returns

ProcessedComputable<T>


processComputable

â–¸ processComputable<T, S>(obj, key): asserts obj is T & { [K in string | number | symbol]: ProcessedComputable<UnwrapComputableType<T[S]>> }

Type parameters

NameType
TT
Sextends string | number | symbol

Parameters

NameType
objT
keyS

Returns

asserts obj is T & { [K in string | number | symbol]: ProcessedComputable<UnwrapComputableType<T[S]>> }

- + diff --git a/api/modules/util/proxies.html b/api/modules/util/proxies.html index 6d067a55..5789918f 100644 --- a/api/modules/util/proxies.html +++ b/api/modules/util/proxies.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: util/proxies

Type Aliases

ProxiedWithState

Ƭ ProxiedWithState<T>: NonNullable<T> extends Record<PropertyKey, any> ? NonNullable<T> extends default ? T : { [K in keyof T]: ProxiedWithState<T[K]> } & { [ProxyPath]: string[] ; [ProxyState]: T } : T

Type parameters

Name
T

Defined in

profectus/src/util/proxies.ts:7

Variables

ProxyPath

• Const ProxyPath: typeof ProxyPath

Defined in

profectus/src/util/proxies.ts:4


ProxyState

• Const ProxyState: typeof ProxyState

Defined in

profectus/src/util/proxies.ts:3

Functions

createLazyProxy

â–¸ createLazyProxy<T, S>(objectFunc, baseObject?): T

Type parameters

NameType
Textends object
SS

Parameters

NameType
objectFunc(baseObject: S) => T & S
baseObjectS

Returns

T

- + diff --git a/api/modules/util/save.html b/api/modules/util/save.html index 4e8fb6ae..95040163 100644 --- a/api/modules/util/save.html +++ b/api/modules/util/save.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: util/save

Functions

getUniqueID

â–¸ getUniqueID(): string

Returns

string


hardReset

â–¸ hardReset(): Promise<void>

Returns

Promise<void>


load

â–¸ load(): Promise<void>

Returns

Promise<void>


loadSave

â–¸ loadSave(playerObj): Promise<void>

Parameters

NameType
playerObjPartial<PlayerData>

Returns

Promise<void>


newSave

â–¸ newSave(): PlayerData

Returns

PlayerData


save

â–¸ save(playerData?): string

Parameters

NameType
playerData?PlayerData

Returns

string


setupInitialStore

â–¸ setupInitialStore(player?): Player

Parameters

NameType
playerPartial<PlayerData>

Returns

Player

- + diff --git a/api/modules/util/vue.html b/api/modules/util/vue.html index abedbed9..59c2e287 100644 --- a/api/modules/util/vue.html +++ b/api/modules/util/vue.html @@ -20,7 +20,7 @@
Skip to content
On this page

Module: util/vue

Type Aliases

PropTypes

Ƭ PropTypes: typeof Boolean | typeof String | typeof Number | typeof Function | typeof Object | typeof Array

Defined in

profectus/src/util/vue.tsx:199


VueFeature

Ƭ VueFeature: Object

Type declaration

NameType
[Component]GenericComponent
[GatherProps]() => Record<string, unknown>

Defined in

profectus/src/util/vue.tsx:40

Functions

coerceComponent

â–¸ coerceComponent(component, defaultWrapper?): DefineComponent

Parameters

NameTypeDefault value
componentCoercableComponentundefined
defaultWrapperstring"span"

Returns

DefineComponent


computeComponent

â–¸ computeComponent(component, defaultWrapper?): ShallowRef<Component | "">

Parameters

NameTypeDefault value
componentRef<ProcessedComputable<CoercableComponent>>undefined
defaultWrapperstring"div"

Returns

ShallowRef<Component | "">


computeOptionalComponent

â–¸ computeOptionalComponent(component, defaultWrapper?): ShallowRef<Component | "" | null>

Parameters

NameTypeDefault value
componentRef<ProcessedComputable<undefined | CoercableComponent>>undefined
defaultWrapperstring"div"

Returns

ShallowRef<Component | "" | null>


getFirstFeature

â–¸ getFirstFeature<T>(features, filter): Object

Type parameters

NameType
Textends VueFeature & { visibility: ProcessedComputable<Visibility> }

Parameters

NameType
featuresT[]
filter(feature: T) => boolean

Returns

Object

NameType
collapsedContentJSXFunction
firstFeatureRef<T | undefined>
hasCollapsedContentRef<boolean>

isCoercableComponent

â–¸ isCoercableComponent(component): component is CoercableComponent

Parameters

NameType
componentunknown

Returns

component is CoercableComponent


processedPropType

â–¸ processedPropType<T>(...types): PropType<ProcessedComputable<T>>

Type parameters

Name
T

Parameters

NameType
...typesPropTypes[]

Returns

PropType<ProcessedComputable<T>>


render

â–¸ render(object): JSX.Element | DefineComponent

Parameters

NameType
objectCoercableComponent | VueFeature

Returns

JSX.Element | DefineComponent


renderCol

â–¸ renderCol(...objects): JSX.Element

Parameters

NameType
...objects(CoercableComponent | VueFeature)[]

Returns

JSX.Element


renderColJSX

â–¸ renderColJSX(...objects): JSX.Element

Parameters

NameType
...objects(CoercableComponent | VueFeature)[]

Returns

JSX.Element


renderJSX

â–¸ renderJSX(object): JSX.Element

Parameters

NameType
objectCoercableComponent | VueFeature

Returns

JSX.Element


renderRow

â–¸ renderRow(...objects): JSX.Element

Parameters

NameType
...objects(CoercableComponent | VueFeature)[]

Returns

JSX.Element


renderRowJSX

â–¸ renderRowJSX(...objects): JSX.Element

Parameters

NameType
...objects(CoercableComponent | VueFeature)[]

Returns

JSX.Element


setRefValue

â–¸ setRefValue<T>(ref, value): void

Type parameters

Name
T

Parameters

NameType
refRef<T | Ref<T>>
valueT

Returns

void


setupHoldToClick

â–¸ setupHoldToClick(onClick?, onHold?): Object

Parameters

NameType
onClick?Ref<undefined | (e?: MouseEvent | TouchEvent) => void>
onHold?Ref<undefined | VoidFunction>

Returns

Object

NameType
handleHoldingVoidFunction
start(e: MouseEvent | TouchEvent) => void
stopVoidFunction

unwrapRef

â–¸ unwrapRef<T>(ref): T

Type parameters

Name
T

Parameters

NameType
refRef<ProcessedComputable<T>>

Returns

T


wrapRef

â–¸ wrapRef<T>(ref): ComputedRef<T>

Type parameters

Name
T

Parameters

NameType
refRef<ProcessedComputable<T>>

Returns

ComputedRef<T>

- + diff --git a/api/overview.html b/api/overview.html index 6a12b9e9..994a806c 100644 --- a/api/overview.html +++ b/api/overview.html @@ -20,7 +20,7 @@
- + diff --git a/assets/guide_advanced-concepts_creating-features.md.0ca7d072.js b/assets/guide_advanced-concepts_creating-features.md.0d34bbd9.js similarity index 94% rename from assets/guide_advanced-concepts_creating-features.md.0ca7d072.js rename to assets/guide_advanced-concepts_creating-features.md.0d34bbd9.js index 1a938c83..4ed23cb5 100644 --- a/assets/guide_advanced-concepts_creating-features.md.0ca7d072.js +++ b/assets/guide_advanced-concepts_creating-features.md.0d34bbd9.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as n}from"./app.ab34650d.js";const h=JSON.parse('{"title":"Creating Features","description":"","frontmatter":{},"headers":[],"relativePath":"guide/advanced-concepts/creating-features.md","lastUpdated":1658112303000}'),o={name:"guide/advanced-concepts/creating-features.md"},i=n('

Creating Features

# TODO

Because typescript does not emit JS, if a value is supposed to be a function it is impossible to determine if a given function is the intended value or a function that returns the actual value. For this reason it is not recommended for any feature types to include properties that are Computable<Function>s, and all functions will be wrapped in computed. The notable exception to this is JSX, which uses a utility function to mark that a function should not be wrapped.

',3),r=[i];function s(c,d,u,p,l,_){return a(),t("div",null,r)}var m=e(o,[["render",s]]);export{h as __pageData,m as default}; +import{_ as e,c as t,o as a,a as n}from"./app.ab34650d.js";const h=JSON.parse('{"title":"Creating Features","description":"","frontmatter":{},"headers":[],"relativePath":"guide/advanced-concepts/creating-features.md","lastUpdated":1658112388000}'),o={name:"guide/advanced-concepts/creating-features.md"},i=n('

Creating Features

# TODO

Because typescript does not emit JS, if a value is supposed to be a function it is impossible to determine if a given function is the intended value or a function that returns the actual value. For this reason it is not recommended for any feature types to include properties that are Computable<Function>s, and all functions will be wrapped in computed. The notable exception to this is JSX, which uses a utility function to mark that a function should not be wrapped.

',3),r=[i];function s(c,d,u,p,l,_){return a(),t("div",null,r)}var m=e(o,[["render",s]]);export{h as __pageData,m as default}; diff --git a/assets/guide_advanced-concepts_creating-features.md.0ca7d072.lean.js b/assets/guide_advanced-concepts_creating-features.md.0d34bbd9.lean.js similarity index 85% rename from assets/guide_advanced-concepts_creating-features.md.0ca7d072.lean.js rename to assets/guide_advanced-concepts_creating-features.md.0d34bbd9.lean.js index 0e79ae10..bf18e006 100644 --- a/assets/guide_advanced-concepts_creating-features.md.0ca7d072.lean.js +++ b/assets/guide_advanced-concepts_creating-features.md.0d34bbd9.lean.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as n}from"./app.ab34650d.js";const h=JSON.parse('{"title":"Creating Features","description":"","frontmatter":{},"headers":[],"relativePath":"guide/advanced-concepts/creating-features.md","lastUpdated":1658112303000}'),o={name:"guide/advanced-concepts/creating-features.md"},i=n("",3),r=[i];function s(c,d,u,p,l,_){return a(),t("div",null,r)}var m=e(o,[["render",s]]);export{h as __pageData,m as default}; +import{_ as e,c as t,o as a,a as n}from"./app.ab34650d.js";const h=JSON.parse('{"title":"Creating Features","description":"","frontmatter":{},"headers":[],"relativePath":"guide/advanced-concepts/creating-features.md","lastUpdated":1658112388000}'),o={name:"guide/advanced-concepts/creating-features.md"},i=n("",3),r=[i];function s(c,d,u,p,l,_){return a(),t("div",null,r)}var m=e(o,[["render",s]]);export{h as __pageData,m as default}; diff --git a/assets/guide_advanced-concepts_dynamic-layers.md.d3364479.js b/assets/guide_advanced-concepts_dynamic-layers.md.b1fdfd3f.js similarity index 98% rename from assets/guide_advanced-concepts_dynamic-layers.md.d3364479.js rename to assets/guide_advanced-concepts_dynamic-layers.md.b1fdfd3f.js index fe2a5258..80a60f21 100644 --- a/assets/guide_advanced-concepts_dynamic-layers.md.d3364479.js +++ b/assets/guide_advanced-concepts_dynamic-layers.md.b1fdfd3f.js @@ -1,4 +1,4 @@ -import{_ as a,c as s,o as n,a as e}from"./app.ab34650d.js";const u=JSON.parse('{"title":"Dynamic Layers","description":"","frontmatter":{},"headers":[],"relativePath":"guide/advanced-concepts/dynamic-layers.md","lastUpdated":1658112303000}'),o={name:"guide/advanced-concepts/dynamic-layers.md"},l=e(`

Dynamic Layers

You can dynamically add and remove layers using the addLayer and removeLayer functions. Note that removing a layer does not change the player save data in any way, so you can safely add and remove the same layer. In fact, there is a reloadLayer to do just that, which is used for when the structure of a layer changes - e.g., adding a new feature.

If you're going to be procedurally generating layers, all with a similar structure, it might make sense to use a utility function like the following in order to easily access a correctly typed reference to a layer with a given ID:

function getDynLayer(id: string): DynamicLayer {
+import{_ as a,c as s,o as n,a as e}from"./app.ab34650d.js";const u=JSON.parse('{"title":"Dynamic Layers","description":"","frontmatter":{},"headers":[],"relativePath":"guide/advanced-concepts/dynamic-layers.md","lastUpdated":1658112388000}'),o={name:"guide/advanced-concepts/dynamic-layers.md"},l=e(`

Dynamic Layers

You can dynamically add and remove layers using the addLayer and removeLayer functions. Note that removing a layer does not change the player save data in any way, so you can safely add and remove the same layer. In fact, there is a reloadLayer to do just that, which is used for when the structure of a layer changes - e.g., adding a new feature.

If you're going to be procedurally generating layers, all with a similar structure, it might make sense to use a utility function like the following in order to easily access a correctly typed reference to a layer with a given ID:

function getDynLayer(id: string): DynamicLayer {
   const layer = layers[id];
   if (!layer) throw "Layer does not exist";
   return layer as DynamicLayer; // you might need an "as unknown" after layer
diff --git a/assets/guide_advanced-concepts_dynamic-layers.md.d3364479.lean.js b/assets/guide_advanced-concepts_dynamic-layers.md.b1fdfd3f.lean.js
similarity index 84%
rename from assets/guide_advanced-concepts_dynamic-layers.md.d3364479.lean.js
rename to assets/guide_advanced-concepts_dynamic-layers.md.b1fdfd3f.lean.js
index 466e7165..4efdeb10 100644
--- a/assets/guide_advanced-concepts_dynamic-layers.md.d3364479.lean.js
+++ b/assets/guide_advanced-concepts_dynamic-layers.md.b1fdfd3f.lean.js
@@ -1 +1 @@
-import{_ as a,c as s,o as n,a as e}from"./app.ab34650d.js";const u=JSON.parse('{"title":"Dynamic Layers","description":"","frontmatter":{},"headers":[],"relativePath":"guide/advanced-concepts/dynamic-layers.md","lastUpdated":1658112303000}'),o={name:"guide/advanced-concepts/dynamic-layers.md"},l=e("",4),t=[l];function p(r,c,y,i,d,F){return n(),s("div",null,t)}var h=a(o,[["render",p]]);export{u as __pageData,h as default};
+import{_ as a,c as s,o as n,a as e}from"./app.ab34650d.js";const u=JSON.parse('{"title":"Dynamic Layers","description":"","frontmatter":{},"headers":[],"relativePath":"guide/advanced-concepts/dynamic-layers.md","lastUpdated":1658112388000}'),o={name:"guide/advanced-concepts/dynamic-layers.md"},l=e("",4),t=[l];function p(r,c,y,i,d,F){return n(),s("div",null,t)}var h=a(o,[["render",p]]);export{u as __pageData,h as default};
diff --git a/assets/guide_creating-your-project_changelog.md.5749200d.js b/assets/guide_creating-your-project_changelog.md.c0fb8c8f.js
similarity index 98%
rename from assets/guide_creating-your-project_changelog.md.5749200d.js
rename to assets/guide_creating-your-project_changelog.md.c0fb8c8f.js
index 6c4c1d74..828b3a42 100644
--- a/assets/guide_creating-your-project_changelog.md.5749200d.js
+++ b/assets/guide_creating-your-project_changelog.md.c0fb8c8f.js
@@ -1,4 +1,4 @@
-import{_ as s,c as a,o as n,a as e}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"guide/creating-your-project/changelog.md","lastUpdated":1658112303000}'),l={name:"guide/creating-your-project/changelog.md"},o=e(`

Changelog

This is a Vue component stored at /src/data/Changelog.vue used to display all the changes version to version. You can use any features you'd like within here, but it's recommended to simply add new <details> elements for each new major release, and mark the most recent one as open by default. It is strongly advised to not change any of the code relating to making the changelog appear in a modal.

There is a single version included by default that can serve as a reference of how it is recommended to add a version to the changelog:

<details open>
+import{_ as s,c as a,o as n,a as e}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"guide/creating-your-project/changelog.md","lastUpdated":1658112388000}'),l={name:"guide/creating-your-project/changelog.md"},o=e(`

Changelog

This is a Vue component stored at /src/data/Changelog.vue used to display all the changes version to version. You can use any features you'd like within here, but it's recommended to simply add new <details> elements for each new major release, and mark the most recent one as open by default. It is strongly advised to not change any of the code relating to making the changelog appear in a modal.

There is a single version included by default that can serve as a reference of how it is recommended to add a version to the changelog:

<details open>
 	<summary>v0.0 Initial Commit - <time>2021-09-04</time></summary>
 	This is the first release :D
 	<ul>
diff --git a/assets/guide_creating-your-project_changelog.md.5749200d.lean.js b/assets/guide_creating-your-project_changelog.md.c0fb8c8f.lean.js
similarity index 84%
rename from assets/guide_creating-your-project_changelog.md.5749200d.lean.js
rename to assets/guide_creating-your-project_changelog.md.c0fb8c8f.lean.js
index 99d78a51..a38b2352 100644
--- a/assets/guide_creating-your-project_changelog.md.5749200d.lean.js
+++ b/assets/guide_creating-your-project_changelog.md.c0fb8c8f.lean.js
@@ -1 +1 @@
-import{_ as s,c as a,o as n,a as e}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"guide/creating-your-project/changelog.md","lastUpdated":1658112303000}'),l={name:"guide/creating-your-project/changelog.md"},o=e("",6),t=[o];function p(c,r,D,F,y,i){return n(),a("div",null,t)}var h=s(l,[["render",p]]);export{g as __pageData,h as default};
+import{_ as s,c as a,o as n,a as e}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"guide/creating-your-project/changelog.md","lastUpdated":1658112388000}'),l={name:"guide/creating-your-project/changelog.md"},o=e("",6),t=[o];function p(c,r,D,F,y,i){return n(),a("div",null,t)}var h=s(l,[["render",p]]);export{g as __pageData,h as default};
diff --git a/assets/guide_creating-your-project_project-entry.md.3bed1026.js b/assets/guide_creating-your-project_project-entry.md.06b07710.js
similarity index 98%
rename from assets/guide_creating-your-project_project-entry.md.3bed1026.js
rename to assets/guide_creating-your-project_project-entry.md.06b07710.js
index efccac4c..9a166748 100644
--- a/assets/guide_creating-your-project_project-entry.md.3bed1026.js
+++ b/assets/guide_creating-your-project_project-entry.md.06b07710.js
@@ -1,2 +1,2 @@
-import{_ as e,c as a,o as t,a as s}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Project Entry","description":"","frontmatter":{},"headers":[{"level":2,"title":"Required Exports","slug":"required-exports"},{"level":3,"title":"getInitialLayers","slug":"getinitiallayers"},{"level":3,"title":"hasWon","slug":"haswon"},{"level":3,"title":"fixOldSave","slug":"fixoldsave"}],"relativePath":"guide/creating-your-project/project-entry.md","lastUpdated":1658112303000}'),o={name:"guide/creating-your-project/project-entry.md"},r=s(`

Project Entry

This is a TypeScript file containing the non-static parts of your project, and acts as the entry point for it.

It is stored at /src/data/projEntry.jsx.

This file has 3 things it must export, but beyond that can export anything the creator wants it to. Typically in addition to the required 3, the initial/"main" layer will be exported. Typically utilites belong in common.tsx, which exists next to projEntry.tsx.

Required Exports

getInitialLayers

  • Type: (player: Partial<PlayerData>) => GenericLayer[]

A function that is given a player save data object currently being loaded, and returns a list of layers that should be active for that player. If a project does not have dynamic layers, this should always return a list of all layers.

hasWon

  • Type: ComputedRef<boolean>

A computed ref whose value is true whenever the game is over.

For example, in a game where the goal is to have a resource reach 10:

export const hasWon = computed(() => Decimal.gte(resource.value, 10));
+import{_ as e,c as a,o as t,a as s}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Project Entry","description":"","frontmatter":{},"headers":[{"level":2,"title":"Required Exports","slug":"required-exports"},{"level":3,"title":"getInitialLayers","slug":"getinitiallayers"},{"level":3,"title":"hasWon","slug":"haswon"},{"level":3,"title":"fixOldSave","slug":"fixoldsave"}],"relativePath":"guide/creating-your-project/project-entry.md","lastUpdated":1658112388000}'),o={name:"guide/creating-your-project/project-entry.md"},r=s(`

Project Entry

This is a TypeScript file containing the non-static parts of your project, and acts as the entry point for it.

It is stored at /src/data/projEntry.jsx.

This file has 3 things it must export, but beyond that can export anything the creator wants it to. Typically in addition to the required 3, the initial/"main" layer will be exported. Typically utilites belong in common.tsx, which exists next to projEntry.tsx.

Required Exports

getInitialLayers

  • Type: (player: Partial<PlayerData>) => GenericLayer[]

A function that is given a player save data object currently being loaded, and returns a list of layers that should be active for that player. If a project does not have dynamic layers, this should always return a list of all layers.

hasWon

  • Type: ComputedRef<boolean>

A computed ref whose value is true whenever the game is over.

For example, in a game where the goal is to have a resource reach 10:

export const hasWon = computed(() => Decimal.gte(resource.value, 10));
 

fixOldSave

  • Type: (oldVersion: string | undefined, player: Partial<PlayerData>) => void

This function will be run whenever a save is loaded that has a different version than the one in project info. It will be given the old version number, and the player save data object currently being loaded.

The purpose of this function is to perform any necessary migrations, such as capping a resource that accidentally inflated in a previous version of the project. By default it will do nothing.

`,17),n=[r];function l(i,p,c,d,h,y){return t(),a("div",null,n)}var g=e(o,[["render",l]]);export{f as __pageData,g as default}; diff --git a/assets/guide_creating-your-project_project-entry.md.3bed1026.lean.js b/assets/guide_creating-your-project_project-entry.md.06b07710.lean.js similarity index 90% rename from assets/guide_creating-your-project_project-entry.md.3bed1026.lean.js rename to assets/guide_creating-your-project_project-entry.md.06b07710.lean.js index 113172ba..6ea74ad1 100644 --- a/assets/guide_creating-your-project_project-entry.md.3bed1026.lean.js +++ b/assets/guide_creating-your-project_project-entry.md.06b07710.lean.js @@ -1 +1 @@ -import{_ as e,c as a,o as t,a as s}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Project Entry","description":"","frontmatter":{},"headers":[{"level":2,"title":"Required Exports","slug":"required-exports"},{"level":3,"title":"getInitialLayers","slug":"getinitiallayers"},{"level":3,"title":"hasWon","slug":"haswon"},{"level":3,"title":"fixOldSave","slug":"fixoldsave"}],"relativePath":"guide/creating-your-project/project-entry.md","lastUpdated":1658112303000}'),o={name:"guide/creating-your-project/project-entry.md"},r=s("",17),n=[r];function l(i,p,c,d,h,y){return t(),a("div",null,n)}var g=e(o,[["render",l]]);export{f as __pageData,g as default}; +import{_ as e,c as a,o as t,a as s}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Project Entry","description":"","frontmatter":{},"headers":[{"level":2,"title":"Required Exports","slug":"required-exports"},{"level":3,"title":"getInitialLayers","slug":"getinitiallayers"},{"level":3,"title":"hasWon","slug":"haswon"},{"level":3,"title":"fixOldSave","slug":"fixoldsave"}],"relativePath":"guide/creating-your-project/project-entry.md","lastUpdated":1658112388000}'),o={name:"guide/creating-your-project/project-entry.md"},r=s("",17),n=[r];function l(i,p,c,d,h,y){return t(),a("div",null,n)}var g=e(o,[["render",l]]);export{f as __pageData,g as default}; diff --git a/assets/guide_creating-your-project_project-info.md.7c9b4461.js b/assets/guide_creating-your-project_project-info.md.2c1855e8.js similarity index 99% rename from assets/guide_creating-your-project_project-info.md.7c9b4461.js rename to assets/guide_creating-your-project_project-info.md.2c1855e8.js index d8d2799b..00fd7ca4 100644 --- a/assets/guide_creating-your-project_project-info.md.7c9b4461.js +++ b/assets/guide_creating-your-project_project-info.md.2c1855e8.js @@ -1 +1 @@ -import{_ as e,c as a,o as i,a as l}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Project Info","description":"","frontmatter":{},"headers":[{"level":2,"title":"Basic Config","slug":"basic-config"},{"level":3,"title":"title","slug":"title"},{"level":3,"title":"id","slug":"id"},{"level":3,"title":"author","slug":"author"},{"level":3,"title":"discordName","slug":"discordname"},{"level":3,"title":"discordLink","slug":"discordlink"},{"level":2,"title":"Version Config","slug":"version-config"},{"level":3,"title":"versionNumber","slug":"versionnumber"},{"level":3,"title":"versionTitle","slug":"versiontitle"},{"level":2,"title":"Display Config","slug":"display-config"},{"level":3,"title":"allowGoBack","slug":"allowgoback"},{"level":3,"title":"defaultShowSmall","slug":"defaultshowsmall"},{"level":3,"title":"defaultDecimalsShown","slug":"defaultdecimalsshown"},{"level":3,"title":"useHeader","slug":"useheader"},{"level":3,"title":"banner","slug":"banner"},{"level":3,"title":"logo","slug":"logo"},{"level":3,"title":"initialTabs","slug":"initialtabs"},{"level":2,"title":"Advanced Config","slug":"advanced-config"},{"level":3,"title":"maxTickLength","slug":"maxticklength"},{"level":3,"title":"offlineLimit","slug":"offlinelimit"},{"level":3,"title":"enablePausing","slug":"enablepausing"}],"relativePath":"guide/creating-your-project/project-info.md","lastUpdated":1658112303000}'),t={name:"guide/creating-your-project/project-info.md"},o=l('

Project Info

This is a JSON file containing information that describes your project and configures parts of how Profectus should represent it.

It is stored at /src/data/projInfo.json.

Basic Config

title

  • Type: string
  • Default: Profectus

The name of the project, which will appear in the info tab and in the header, if enabled. The page title will also be set to this value.

id

  • Type: string
  • Default: ""

This is a unique ID used when saving player data. Changing this will effectively erase all save data for all players.

WARNING

This ID MUST be unique to your project, and should not be left as the default value. Otherwise your project may use the save data from another project and cause issues for both projects.

author

  • Type: string
  • Default: ""

The author of the project, which will appear in the info tab.

discordName

  • Type: string
  • Default: The Paper Pilot Community

The text to display for the discord server to point user's to. This will appear when hovering over the discord icon, inside the info tab, the game over screen, as well as the NaN detected screen.

By default, this is The Paper Pilot Community, which can act as a catch-all for any Profectus projects without their own servers. If you change the discord server with your own, The Paper Pilot Community will still display underneath the custom server when hovering over the discord icon and within the info tab. Those places will also contain a link to the Modding Tree discord server.

  • Type: string
  • Default: https://discord.gg/WzejVAx

The link for the discord server to point user's to. See discordName for more details.

Version Config

versionNumber

  • Type: string
  • Default: 0.0

The current version of the project loaded. If the player data was last saved in a different version of the project, fixOldSave will be run, so you can perform any save migrations necessary. This will also appear in the nav, the info tab, and the game over screen.

versionTitle

  • Type: string
  • Default: Initial Commit

The display name for the current version of the project loaded. This will also appear in the nav, the info tab, and the game over screen, unless set to an empty string.

Display Config

allowGoBack

  • Type: boolean
  • Default: true

Whether or not to allow tabs (besides the first) to display a "back" button to close them (and any other tabs to the right of them).

defaultShowSmall

  • Type: boolean
  • Default: false

Whether or not to allow resources to display small values (<.001). If false they'll just display as 0. Individual resources can also be configured to override this value.

defaultDecimalsShown

  • Type: number
  • Default: 2

Default precision to display numbers at when passed into format. Individual format calls can override this value, and resources can be configured with a custom precision as well.

useHeader

  • Type: boolean
  • Default: true

Whether or not to display the nav as a header at the top of the screen. If disabled, the nav will appear on the left side of the screen laid over the first tab.

  • Type: string | null
  • Default: null

A path to an image file to display as the logo of the app. If null, the title will be shown instead. This will appear in the nav when useHeader is true.

  • Type: string
  • Default: ""

A path to an image file to display as the logo of the app within the info tab. If left blank no logo will be shown.

initialTabs

  • Type: string[]
  • Default: ["main"]

The list of initial tabs to display on new saves. This value must have at least one element. Each element should be the ID of the layer to display in that tab.

Advanced Config

maxTickLength

  • Type: number
  • Default: 3600

The longest duration a single tick can be, in seconds. When calculating things like offline time, a single tick will be forced to be this amount or lower. This will make calculating offline time spread out across many ticks as necessary. The default value is 1 hour.

offlineLimit

  • Type: number
  • Default: 1

The max amount of time that can be stored as offline time, in hours.

enablePausing

  • Type: boolean
  • Default: true

Whether or not to allow the player to pause the game. Turning this off disables the toggle from the options menu as well as the NaN screen. Developers can still manually pause by just running player.devSpeed = 0 in console (or = 1 to resume).

',60),n=[o];function r(d,s,h,c,u,f){return i(),a("div",null,n)}var m=e(t,[["render",r]]);export{g as __pageData,m as default}; +import{_ as e,c as a,o as i,a as l}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Project Info","description":"","frontmatter":{},"headers":[{"level":2,"title":"Basic Config","slug":"basic-config"},{"level":3,"title":"title","slug":"title"},{"level":3,"title":"id","slug":"id"},{"level":3,"title":"author","slug":"author"},{"level":3,"title":"discordName","slug":"discordname"},{"level":3,"title":"discordLink","slug":"discordlink"},{"level":2,"title":"Version Config","slug":"version-config"},{"level":3,"title":"versionNumber","slug":"versionnumber"},{"level":3,"title":"versionTitle","slug":"versiontitle"},{"level":2,"title":"Display Config","slug":"display-config"},{"level":3,"title":"allowGoBack","slug":"allowgoback"},{"level":3,"title":"defaultShowSmall","slug":"defaultshowsmall"},{"level":3,"title":"defaultDecimalsShown","slug":"defaultdecimalsshown"},{"level":3,"title":"useHeader","slug":"useheader"},{"level":3,"title":"banner","slug":"banner"},{"level":3,"title":"logo","slug":"logo"},{"level":3,"title":"initialTabs","slug":"initialtabs"},{"level":2,"title":"Advanced Config","slug":"advanced-config"},{"level":3,"title":"maxTickLength","slug":"maxticklength"},{"level":3,"title":"offlineLimit","slug":"offlinelimit"},{"level":3,"title":"enablePausing","slug":"enablepausing"}],"relativePath":"guide/creating-your-project/project-info.md","lastUpdated":1658112388000}'),t={name:"guide/creating-your-project/project-info.md"},o=l('

Project Info

This is a JSON file containing information that describes your project and configures parts of how Profectus should represent it.

It is stored at /src/data/projInfo.json.

Basic Config

title

  • Type: string
  • Default: Profectus

The name of the project, which will appear in the info tab and in the header, if enabled. The page title will also be set to this value.

id

  • Type: string
  • Default: ""

This is a unique ID used when saving player data. Changing this will effectively erase all save data for all players.

WARNING

This ID MUST be unique to your project, and should not be left as the default value. Otherwise your project may use the save data from another project and cause issues for both projects.

author

  • Type: string
  • Default: ""

The author of the project, which will appear in the info tab.

discordName

  • Type: string
  • Default: The Paper Pilot Community

The text to display for the discord server to point user's to. This will appear when hovering over the discord icon, inside the info tab, the game over screen, as well as the NaN detected screen.

By default, this is The Paper Pilot Community, which can act as a catch-all for any Profectus projects without their own servers. If you change the discord server with your own, The Paper Pilot Community will still display underneath the custom server when hovering over the discord icon and within the info tab. Those places will also contain a link to the Modding Tree discord server.

  • Type: string
  • Default: https://discord.gg/WzejVAx

The link for the discord server to point user's to. See discordName for more details.

Version Config

versionNumber

  • Type: string
  • Default: 0.0

The current version of the project loaded. If the player data was last saved in a different version of the project, fixOldSave will be run, so you can perform any save migrations necessary. This will also appear in the nav, the info tab, and the game over screen.

versionTitle

  • Type: string
  • Default: Initial Commit

The display name for the current version of the project loaded. This will also appear in the nav, the info tab, and the game over screen, unless set to an empty string.

Display Config

allowGoBack

  • Type: boolean
  • Default: true

Whether or not to allow tabs (besides the first) to display a "back" button to close them (and any other tabs to the right of them).

defaultShowSmall

  • Type: boolean
  • Default: false

Whether or not to allow resources to display small values (<.001). If false they'll just display as 0. Individual resources can also be configured to override this value.

defaultDecimalsShown

  • Type: number
  • Default: 2

Default precision to display numbers at when passed into format. Individual format calls can override this value, and resources can be configured with a custom precision as well.

useHeader

  • Type: boolean
  • Default: true

Whether or not to display the nav as a header at the top of the screen. If disabled, the nav will appear on the left side of the screen laid over the first tab.

  • Type: string | null
  • Default: null

A path to an image file to display as the logo of the app. If null, the title will be shown instead. This will appear in the nav when useHeader is true.

  • Type: string
  • Default: ""

A path to an image file to display as the logo of the app within the info tab. If left blank no logo will be shown.

initialTabs

  • Type: string[]
  • Default: ["main"]

The list of initial tabs to display on new saves. This value must have at least one element. Each element should be the ID of the layer to display in that tab.

Advanced Config

maxTickLength

  • Type: number
  • Default: 3600

The longest duration a single tick can be, in seconds. When calculating things like offline time, a single tick will be forced to be this amount or lower. This will make calculating offline time spread out across many ticks as necessary. The default value is 1 hour.

offlineLimit

  • Type: number
  • Default: 1

The max amount of time that can be stored as offline time, in hours.

enablePausing

  • Type: boolean
  • Default: true

Whether or not to allow the player to pause the game. Turning this off disables the toggle from the options menu as well as the NaN screen. Developers can still manually pause by just running player.devSpeed = 0 in console (or = 1 to resume).

',60),n=[o];function r(d,s,h,c,u,f){return i(),a("div",null,n)}var m=e(t,[["render",r]]);export{g as __pageData,m as default}; diff --git a/assets/guide_creating-your-project_project-info.md.7c9b4461.lean.js b/assets/guide_creating-your-project_project-info.md.2c1855e8.lean.js similarity index 95% rename from assets/guide_creating-your-project_project-info.md.7c9b4461.lean.js rename to assets/guide_creating-your-project_project-info.md.2c1855e8.lean.js index 3387ce1c..37a4542d 100644 --- a/assets/guide_creating-your-project_project-info.md.7c9b4461.lean.js +++ b/assets/guide_creating-your-project_project-info.md.2c1855e8.lean.js @@ -1 +1 @@ -import{_ as e,c as a,o as i,a as l}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Project Info","description":"","frontmatter":{},"headers":[{"level":2,"title":"Basic Config","slug":"basic-config"},{"level":3,"title":"title","slug":"title"},{"level":3,"title":"id","slug":"id"},{"level":3,"title":"author","slug":"author"},{"level":3,"title":"discordName","slug":"discordname"},{"level":3,"title":"discordLink","slug":"discordlink"},{"level":2,"title":"Version Config","slug":"version-config"},{"level":3,"title":"versionNumber","slug":"versionnumber"},{"level":3,"title":"versionTitle","slug":"versiontitle"},{"level":2,"title":"Display Config","slug":"display-config"},{"level":3,"title":"allowGoBack","slug":"allowgoback"},{"level":3,"title":"defaultShowSmall","slug":"defaultshowsmall"},{"level":3,"title":"defaultDecimalsShown","slug":"defaultdecimalsshown"},{"level":3,"title":"useHeader","slug":"useheader"},{"level":3,"title":"banner","slug":"banner"},{"level":3,"title":"logo","slug":"logo"},{"level":3,"title":"initialTabs","slug":"initialtabs"},{"level":2,"title":"Advanced Config","slug":"advanced-config"},{"level":3,"title":"maxTickLength","slug":"maxticklength"},{"level":3,"title":"offlineLimit","slug":"offlinelimit"},{"level":3,"title":"enablePausing","slug":"enablepausing"}],"relativePath":"guide/creating-your-project/project-info.md","lastUpdated":1658112303000}'),t={name:"guide/creating-your-project/project-info.md"},o=l("",60),n=[o];function r(d,s,h,c,u,f){return i(),a("div",null,n)}var m=e(t,[["render",r]]);export{g as __pageData,m as default}; +import{_ as e,c as a,o as i,a as l}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Project Info","description":"","frontmatter":{},"headers":[{"level":2,"title":"Basic Config","slug":"basic-config"},{"level":3,"title":"title","slug":"title"},{"level":3,"title":"id","slug":"id"},{"level":3,"title":"author","slug":"author"},{"level":3,"title":"discordName","slug":"discordname"},{"level":3,"title":"discordLink","slug":"discordlink"},{"level":2,"title":"Version Config","slug":"version-config"},{"level":3,"title":"versionNumber","slug":"versionnumber"},{"level":3,"title":"versionTitle","slug":"versiontitle"},{"level":2,"title":"Display Config","slug":"display-config"},{"level":3,"title":"allowGoBack","slug":"allowgoback"},{"level":3,"title":"defaultShowSmall","slug":"defaultshowsmall"},{"level":3,"title":"defaultDecimalsShown","slug":"defaultdecimalsshown"},{"level":3,"title":"useHeader","slug":"useheader"},{"level":3,"title":"banner","slug":"banner"},{"level":3,"title":"logo","slug":"logo"},{"level":3,"title":"initialTabs","slug":"initialtabs"},{"level":2,"title":"Advanced Config","slug":"advanced-config"},{"level":3,"title":"maxTickLength","slug":"maxticklength"},{"level":3,"title":"offlineLimit","slug":"offlinelimit"},{"level":3,"title":"enablePausing","slug":"enablepausing"}],"relativePath":"guide/creating-your-project/project-info.md","lastUpdated":1658112388000}'),t={name:"guide/creating-your-project/project-info.md"},o=l("",60),n=[o];function r(d,s,h,c,u,f){return i(),a("div",null,n)}var m=e(t,[["render",r]]);export{g as __pageData,m as default}; diff --git a/assets/guide_creating-your-project_themes.md.43025d93.js b/assets/guide_creating-your-project_themes.md.ae164b17.js similarity index 97% rename from assets/guide_creating-your-project_themes.md.43025d93.js rename to assets/guide_creating-your-project_themes.md.ae164b17.js index 06b562d0..aacc4494 100644 --- a/assets/guide_creating-your-project_themes.md.43025d93.js +++ b/assets/guide_creating-your-project_themes.md.ae164b17.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Themes","description":"","frontmatter":{},"headers":[{"level":2,"title":"Modifying Themes","slug":"modifying-themes"},{"level":2,"title":"Theme Options","slug":"theme-options"},{"level":3,"title":"floatingTabs","slug":"floatingtabs"},{"level":3,"title":"mergeAdjacent","slug":"mergeadjacent"}],"relativePath":"guide/creating-your-project/themes.md","lastUpdated":1658112303000}'),i={name:"guide/creating-your-project/themes.md"},s=o('

Themes

Themes are objects that change how the project's interface should look. This is done mostly by changing the values of various CSS variables. You can look at the existing themes as a reference for the kind of values these CSS variables expect. They can also set various theme options that change how parts of the screen are laid out, which are described below.

They are stored in /src/data/themes.ts.

Modifying Themes

You can add a theme by adding a property to the Themes enum and then including the theme in the exported object. It's recommended to use the spread operator if you'd like to have a theme look like another, but override specific options / CSS variables.

Themes added in this way will be automatically included in the Themes dropdown in the Options tab. Removing themes from the enum and exported object will similarly hide them from the dropdown.

If you'd like to change which theme is the default, you may modify the initial player settings object in the /src/game/settings.ts file. Keep in mind you'll also want to change it in the hardResetSettings function in the same file.

Theme Options

floatingTabs

  • Type: boolean

Toggles whether to display tab buttons in a tab list, similar to how a browser displays tabs; or to display them as floating buttons, similar to how TMT displays buttons.

mergeAdjacent

  • Type: boolean

If true, elements in a row or column will have their margins removed and border radiuses set to 0 between elements. This will cause the elements to appear as segments in a single object.

Currently, this can only merge in a single dimension. Rows of columns or columns of rows will not merge into a single rectangular object.

',15),n=[s];function h(r,d,l,c,m,p){return a(),t("div",null,n)}var f=e(i,[["render",h]]);export{g as __pageData,f as default}; +import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Themes","description":"","frontmatter":{},"headers":[{"level":2,"title":"Modifying Themes","slug":"modifying-themes"},{"level":2,"title":"Theme Options","slug":"theme-options"},{"level":3,"title":"floatingTabs","slug":"floatingtabs"},{"level":3,"title":"mergeAdjacent","slug":"mergeadjacent"}],"relativePath":"guide/creating-your-project/themes.md","lastUpdated":1658112388000}'),i={name:"guide/creating-your-project/themes.md"},s=o('

Themes

Themes are objects that change how the project's interface should look. This is done mostly by changing the values of various CSS variables. You can look at the existing themes as a reference for the kind of values these CSS variables expect. They can also set various theme options that change how parts of the screen are laid out, which are described below.

They are stored in /src/data/themes.ts.

Modifying Themes

You can add a theme by adding a property to the Themes enum and then including the theme in the exported object. It's recommended to use the spread operator if you'd like to have a theme look like another, but override specific options / CSS variables.

Themes added in this way will be automatically included in the Themes dropdown in the Options tab. Removing themes from the enum and exported object will similarly hide them from the dropdown.

If you'd like to change which theme is the default, you may modify the initial player settings object in the /src/game/settings.ts file. Keep in mind you'll also want to change it in the hardResetSettings function in the same file.

Theme Options

floatingTabs

  • Type: boolean

Toggles whether to display tab buttons in a tab list, similar to how a browser displays tabs; or to display them as floating buttons, similar to how TMT displays buttons.

mergeAdjacent

  • Type: boolean

If true, elements in a row or column will have their margins removed and border radiuses set to 0 between elements. This will cause the elements to appear as segments in a single object.

Currently, this can only merge in a single dimension. Rows of columns or columns of rows will not merge into a single rectangular object.

',15),n=[s];function h(r,d,l,c,m,p){return a(),t("div",null,n)}var f=e(i,[["render",h]]);export{g as __pageData,f as default}; diff --git a/assets/guide_creating-your-project_themes.md.43025d93.lean.js b/assets/guide_creating-your-project_themes.md.ae164b17.lean.js similarity index 90% rename from assets/guide_creating-your-project_themes.md.43025d93.lean.js rename to assets/guide_creating-your-project_themes.md.ae164b17.lean.js index 85e97178..803266e8 100644 --- a/assets/guide_creating-your-project_themes.md.43025d93.lean.js +++ b/assets/guide_creating-your-project_themes.md.ae164b17.lean.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Themes","description":"","frontmatter":{},"headers":[{"level":2,"title":"Modifying Themes","slug":"modifying-themes"},{"level":2,"title":"Theme Options","slug":"theme-options"},{"level":3,"title":"floatingTabs","slug":"floatingtabs"},{"level":3,"title":"mergeAdjacent","slug":"mergeadjacent"}],"relativePath":"guide/creating-your-project/themes.md","lastUpdated":1658112303000}'),i={name:"guide/creating-your-project/themes.md"},s=o("",15),n=[s];function h(r,d,l,c,m,p){return a(),t("div",null,n)}var f=e(i,[["render",h]]);export{g as __pageData,f as default}; +import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const g=JSON.parse('{"title":"Themes","description":"","frontmatter":{},"headers":[{"level":2,"title":"Modifying Themes","slug":"modifying-themes"},{"level":2,"title":"Theme Options","slug":"theme-options"},{"level":3,"title":"floatingTabs","slug":"floatingtabs"},{"level":3,"title":"mergeAdjacent","slug":"mergeadjacent"}],"relativePath":"guide/creating-your-project/themes.md","lastUpdated":1658112388000}'),i={name:"guide/creating-your-project/themes.md"},s=o("",15),n=[s];function h(r,d,l,c,m,p){return a(),t("div",null,n)}var f=e(i,[["render",h]]);export{g as __pageData,f as default}; diff --git a/assets/guide_creating-your-project_utils.md.2595396c.js b/assets/guide_creating-your-project_utils.md.cbb851b0.js similarity index 95% rename from assets/guide_creating-your-project_utils.md.2595396c.js rename to assets/guide_creating-your-project_utils.md.cbb851b0.js index 703e3a14..4ec9269e 100644 --- a/assets/guide_creating-your-project_utils.md.2595396c.js +++ b/assets/guide_creating-your-project_utils.md.cbb851b0.js @@ -1 +1 @@ -import{_ as a,c as o,o as s,b as e,d as t}from"./app.ab34650d.js";const b=JSON.parse('{"title":"Utilities","description":"","frontmatter":{},"headers":[],"relativePath":"guide/creating-your-project/utils.md","lastUpdated":1658112303000}'),i={name:"guide/creating-your-project/utils.md"},r=e("h1",{id:"utilities",tabindex:"-1"},[t("Utilities "),e("a",{class:"header-anchor",href:"#utilities","aria-hidden":"true"},"#")],-1),n=e("p",null,"There are often concepts that aren't inherent to a single feature, but rather work with joining different features together. For example, a reset clickable that activates a conversion and resets a tree, which happens to be a common use case but isn't inherent to clickables, conversions, or trees.",-1),c=e("p",null,[t("These are perfect situations for utilities, and so to encourage creators to learn to identify and take advantage of these situations, a file called "),e("code",null,"src/data/common.tsx"),t(" has been created to demo some of the more common utility functions a project might use. Adding new utilities to this file is encouraged, as is creating utils in general. It also works as a good stepping stone to creating your own features.")],-1),d=[r,n,c];function l(u,h,p,f,m,_){return s(),o("div",null,d)}var k=a(i,[["render",l]]);export{b as __pageData,k as default}; +import{_ as a,c as o,o as s,b as e,d as t}from"./app.ab34650d.js";const b=JSON.parse('{"title":"Utilities","description":"","frontmatter":{},"headers":[],"relativePath":"guide/creating-your-project/utils.md","lastUpdated":1658112388000}'),i={name:"guide/creating-your-project/utils.md"},r=e("h1",{id:"utilities",tabindex:"-1"},[t("Utilities "),e("a",{class:"header-anchor",href:"#utilities","aria-hidden":"true"},"#")],-1),n=e("p",null,"There are often concepts that aren't inherent to a single feature, but rather work with joining different features together. For example, a reset clickable that activates a conversion and resets a tree, which happens to be a common use case but isn't inherent to clickables, conversions, or trees.",-1),c=e("p",null,[t("These are perfect situations for utilities, and so to encourage creators to learn to identify and take advantage of these situations, a file called "),e("code",null,"src/data/common.tsx"),t(" has been created to demo some of the more common utility functions a project might use. Adding new utilities to this file is encouraged, as is creating utils in general. It also works as a good stepping stone to creating your own features.")],-1),d=[r,n,c];function l(u,h,p,f,m,_){return s(),o("div",null,d)}var k=a(i,[["render",l]]);export{b as __pageData,k as default}; diff --git a/assets/guide_creating-your-project_utils.md.2595396c.lean.js b/assets/guide_creating-your-project_utils.md.cbb851b0.lean.js similarity index 95% rename from assets/guide_creating-your-project_utils.md.2595396c.lean.js rename to assets/guide_creating-your-project_utils.md.cbb851b0.lean.js index 703e3a14..4ec9269e 100644 --- a/assets/guide_creating-your-project_utils.md.2595396c.lean.js +++ b/assets/guide_creating-your-project_utils.md.cbb851b0.lean.js @@ -1 +1 @@ -import{_ as a,c as o,o as s,b as e,d as t}from"./app.ab34650d.js";const b=JSON.parse('{"title":"Utilities","description":"","frontmatter":{},"headers":[],"relativePath":"guide/creating-your-project/utils.md","lastUpdated":1658112303000}'),i={name:"guide/creating-your-project/utils.md"},r=e("h1",{id:"utilities",tabindex:"-1"},[t("Utilities "),e("a",{class:"header-anchor",href:"#utilities","aria-hidden":"true"},"#")],-1),n=e("p",null,"There are often concepts that aren't inherent to a single feature, but rather work with joining different features together. For example, a reset clickable that activates a conversion and resets a tree, which happens to be a common use case but isn't inherent to clickables, conversions, or trees.",-1),c=e("p",null,[t("These are perfect situations for utilities, and so to encourage creators to learn to identify and take advantage of these situations, a file called "),e("code",null,"src/data/common.tsx"),t(" has been created to demo some of the more common utility functions a project might use. Adding new utilities to this file is encouraged, as is creating utils in general. It also works as a good stepping stone to creating your own features.")],-1),d=[r,n,c];function l(u,h,p,f,m,_){return s(),o("div",null,d)}var k=a(i,[["render",l]]);export{b as __pageData,k as default}; +import{_ as a,c as o,o as s,b as e,d as t}from"./app.ab34650d.js";const b=JSON.parse('{"title":"Utilities","description":"","frontmatter":{},"headers":[],"relativePath":"guide/creating-your-project/utils.md","lastUpdated":1658112388000}'),i={name:"guide/creating-your-project/utils.md"},r=e("h1",{id:"utilities",tabindex:"-1"},[t("Utilities "),e("a",{class:"header-anchor",href:"#utilities","aria-hidden":"true"},"#")],-1),n=e("p",null,"There are often concepts that aren't inherent to a single feature, but rather work with joining different features together. For example, a reset clickable that activates a conversion and resets a tree, which happens to be a common use case but isn't inherent to clickables, conversions, or trees.",-1),c=e("p",null,[t("These are perfect situations for utilities, and so to encourage creators to learn to identify and take advantage of these situations, a file called "),e("code",null,"src/data/common.tsx"),t(" has been created to demo some of the more common utility functions a project might use. Adding new utilities to this file is encouraged, as is creating utils in general. It also works as a good stepping stone to creating your own features.")],-1),d=[r,n,c];function l(u,h,p,f,m,_){return s(),o("div",null,d)}var k=a(i,[["render",l]]);export{b as __pageData,k as default}; diff --git a/assets/guide_getting-started_examples.md.18cf1379.js b/assets/guide_getting-started_examples.md.4df3b8a9.js similarity index 94% rename from assets/guide_getting-started_examples.md.18cf1379.js rename to assets/guide_getting-started_examples.md.4df3b8a9.js index 4a938b27..4eeebe74 100644 --- a/assets/guide_getting-started_examples.md.18cf1379.js +++ b/assets/guide_getting-started_examples.md.4df3b8a9.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as r}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Example Projects","description":"","frontmatter":{},"headers":[{"level":2,"title":"TMT-Demo","slug":"tmt-demo"}],"relativePath":"guide/getting-started/examples.md","lastUpdated":1658112303000}'),o={name:"guide/getting-started/examples.md"},s=r('

Example Projects

TMT-Demo

View Source | View Project

A project loosely based off the Demo project for TMT. Uses most of the different features of Profectus, but doesn't have any real gameplay.

',4),n=[s];function d(c,p,i,l,m,_){return a(),t("div",null,n)}var u=e(o,[["render",d]]);export{f as __pageData,u as default}; +import{_ as e,c as t,o as a,a as r}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Example Projects","description":"","frontmatter":{},"headers":[{"level":2,"title":"TMT-Demo","slug":"tmt-demo"}],"relativePath":"guide/getting-started/examples.md","lastUpdated":1658112388000}'),o={name:"guide/getting-started/examples.md"},s=r('

Example Projects

TMT-Demo

View Source | View Project

A project loosely based off the Demo project for TMT. Uses most of the different features of Profectus, but doesn't have any real gameplay.

',4),n=[s];function d(c,p,i,l,m,_){return a(),t("div",null,n)}var u=e(o,[["render",d]]);export{f as __pageData,u as default}; diff --git a/assets/guide_getting-started_examples.md.18cf1379.lean.js b/assets/guide_getting-started_examples.md.4df3b8a9.lean.js similarity index 86% rename from assets/guide_getting-started_examples.md.18cf1379.lean.js rename to assets/guide_getting-started_examples.md.4df3b8a9.lean.js index c816ad0c..44fc17d9 100644 --- a/assets/guide_getting-started_examples.md.18cf1379.lean.js +++ b/assets/guide_getting-started_examples.md.4df3b8a9.lean.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as r}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Example Projects","description":"","frontmatter":{},"headers":[{"level":2,"title":"TMT-Demo","slug":"tmt-demo"}],"relativePath":"guide/getting-started/examples.md","lastUpdated":1658112303000}'),o={name:"guide/getting-started/examples.md"},s=r("",4),n=[s];function d(c,p,i,l,m,_){return a(),t("div",null,n)}var u=e(o,[["render",d]]);export{f as __pageData,u as default}; +import{_ as e,c as t,o as a,a as r}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Example Projects","description":"","frontmatter":{},"headers":[{"level":2,"title":"TMT-Demo","slug":"tmt-demo"}],"relativePath":"guide/getting-started/examples.md","lastUpdated":1658112388000}'),o={name:"guide/getting-started/examples.md"},s=r("",4),n=[s];function d(c,p,i,l,m,_){return a(),t("div",null,n)}var u=e(o,[["render",d]]);export{f as __pageData,u as default}; diff --git a/assets/guide_getting-started_setup.md.18784fa3.js b/assets/guide_getting-started_setup.md.18784fa3.js deleted file mode 100644 index e94a8d64..00000000 --- a/assets/guide_getting-started_setup.md.18784fa3.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,c as t,o,a}from"./app.ab34650d.js";var r="/assets/actionsbutton.f1ba9d8e.png",n="/assets/gh-pages.a24cefcf.png";const y=JSON.parse('{"title":"Setting Up","description":"","frontmatter":{},"headers":[{"level":2,"title":"Local Development","slug":"local-development"},{"level":3,"title":"Deploying","slug":"deploying"},{"level":3,"title":"Visual Studio Code Setup","slug":"visual-studio-code-setup"},{"level":2,"title":"Replit","slug":"replit"},{"level":2,"title":"Glitch","slug":"glitch"}],"relativePath":"guide/getting-started/setup.md","lastUpdated":1658112303000}'),i={name:"guide/getting-started/setup.md"},l=a('

Setting Up

Profectus requires a node development environment in order to work on a project. If you are comfortable with the command line, it is recommended to use a local development environment.

Local Development

You will require the following tools for local development:

Create a new project from the Profectus repository via the "Use this template" button. You can then copy the link for the repository to clone it locally.

INFO

Since the repository is a template repository, you can easily create multiple projects from one repository. However, it does make updating an existing project to a newer version of Profectus more difficult.

It's recommended to create a new git branch for development, so you can push your changes without it affecting the live build. This allows you to continue working with smaller commits, and only release new versions when you're actually ready to. The github workflow will automatically rebuild the page whenever you push to the main branch.

The next step is to install Profectus' dependencies. This is as simple as running npm install.

You can now run npm run serve to start a local server that will host your project so you can work on it. As you change files the site will automatically reload them.

Also, you might consider following the steps to update Profectus before you start working, as it'll make updating in the future easier without needing to worry about unrelated histories.

Deploying

If you're using git, deploying is as easy as pushing your changes to the main branch. In a couple minutes the site will be updated fully automatically. If you'd like to see progress on it, or look at any errors that happened, you can do so from the actions tab on your repository.

actions button

Before github knows to actually host the generated site, you'll have to enable github pages in the repo settings. This just means selecting the branch to use - gh-pages. You will only need to perform this step once. This will automatically start another github action to deploy the website.

github pages

Once the action completes, your project should be available at https://<YOUR_GITHUB_USERNAME>.github.io/<YOUR_REPO_NAME>/. For example, the TMT Demo project hosted at https://github.com/profectus-engine/TMT-Demo is available at https://profectus-engine.github.io/TMT-Demo/.

Visual Studio Code Setup

If you don't already have a preferred IDE, Profectus is currently developed in Visual Studio Code and is known to work well with that IDE in particular.

Recommendations:

  • Use Take Over Mode for proper type analysis
  • Turn off .value autocomplete by running the Preferences: Open Settings command and setting volar.autoCompleteRefs to false
  • Install the Vitest VS Code extension for running and debugging unit tests (if you plan on working on the engine itself)

Replit

As an alternative to local development, you may use replit, which will automatically set up your development environment for you and also host your project itself.

However, on the free plan you will be limited by the amount of resources you can use, and the program will need to start up occasionally.

To create a Profectus project on replit, all you have to do is click this button:

Run on Repl.it

You can then start the developing by clicking the "Run" button at the top of the screen. This will also make the project run publicly, so you could consider it as automatically deployed. This does mean you cannot have a separate development environment from your production environment, however.

Glitch

Glitch is a site similar to replit, with much the same pros and cons. To create a projectus project on glitch, select "New Project", "Import from GitHub", and then type in profectus-engine/Profectus. The new project will be created and should be automatically configured and ready to go.

',29),s=[l];function p(c,u,h,d,g,m){return o(),t("div",null,s)}var b=e(i,[["render",p]]);export{y as __pageData,b as default}; diff --git a/assets/guide_getting-started_setup.md.b46876d2.js b/assets/guide_getting-started_setup.md.b46876d2.js new file mode 100644 index 00000000..563ac422 --- /dev/null +++ b/assets/guide_getting-started_setup.md.b46876d2.js @@ -0,0 +1 @@ +import{_ as e,c as t,o,a}from"./app.ab34650d.js";var r="/assets/actionsbutton.f1ba9d8e.png",n="/assets/gh-pages.a24cefcf.png";const y=JSON.parse('{"title":"Setting Up","description":"","frontmatter":{},"headers":[{"level":2,"title":"Local Development","slug":"local-development"},{"level":3,"title":"Deploying","slug":"deploying"},{"level":3,"title":"Visual Studio Code Setup","slug":"visual-studio-code-setup"},{"level":2,"title":"Replit","slug":"replit"},{"level":2,"title":"Glitch","slug":"glitch"}],"relativePath":"guide/getting-started/setup.md","lastUpdated":1658112388000}'),i={name:"guide/getting-started/setup.md"},l=a('

Setting Up

Profectus requires a node development environment in order to work on a project. If you are comfortable with the command line, it is recommended to use a local development environment.

Local Development

You will require the following tools for local development:

Create a new project from the Profectus repository via the "Use this template" button. You can then copy the link for the repository to clone it locally.

INFO

Since the repository is a template repository, you can easily create multiple projects from one repository. However, it does make updating an existing project to a newer version of Profectus more difficult. Consider updating Profectus before you start developing, to avoid the issue with unrelated histories.

It's recommended to create a new git branch for development, so you can push your changes without it affecting the live build. This allows you to continue working with smaller commits, and only release new versions when you're actually ready to. The github workflow will automatically rebuild the page whenever you push to the main branch.

The next step is to install Profectus' dependencies. This is as simple as running npm install.

You can now run npm run serve to start a local server that will host your project so you can work on it. As you change files the site will automatically reload them.

Also, you might consider following the steps to update Profectus before you start working, as it'll make updating in the future easier without needing to worry about unrelated histories.

Deploying

If you're using git, deploying is as easy as pushing your changes to the main branch. In a couple minutes the site will be updated fully automatically. If you'd like to see progress on it, or look at any errors that happened, you can do so from the actions tab on your repository.

actions button

Before github knows to actually host the generated site, you'll have to enable github pages in the repo settings. This just means selecting the branch to use - gh-pages. You will only need to perform this step once. This will automatically start another github action to deploy the website.

github pages

Once the action completes, your project should be available at https://<YOUR_GITHUB_USERNAME>.github.io/<YOUR_REPO_NAME>/. For example, the TMT Demo project hosted at https://github.com/profectus-engine/TMT-Demo is available at https://profectus-engine.github.io/TMT-Demo/.

Visual Studio Code Setup

If you don't already have a preferred IDE, Profectus is currently developed in Visual Studio Code and is known to work well with that IDE in particular.

Recommendations:

  • Use Take Over Mode for proper type analysis
  • Turn off .value autocomplete by running the Preferences: Open Settings command and setting volar.autoCompleteRefs to false
  • Install the Vitest VS Code extension for running and debugging unit tests (if you plan on working on the engine itself)

Replit

As an alternative to local development, you may use replit, which will automatically set up your development environment for you and also host your project itself.

However, on the free plan you will be limited by the amount of resources you can use, and the program will need to start up occasionally.

To create a Profectus project on replit, all you have to do is click this button:

Run on Repl.it

You can then start the developing by clicking the "Run" button at the top of the screen. This will also make the project run publicly, so you could consider it as automatically deployed. This does mean you cannot have a separate development environment from your production environment, however.

Glitch

Glitch is a site similar to replit, with much the same pros and cons. To create a projectus project on glitch, select "New Project", "Import from GitHub", and then type in profectus-engine/Profectus. The new project will be created and should be automatically configured and ready to go.

',29),s=[l];function p(c,u,h,d,g,m){return o(),t("div",null,s)}var b=e(i,[["render",p]]);export{y as __pageData,b as default}; diff --git a/assets/guide_getting-started_setup.md.18784fa3.lean.js b/assets/guide_getting-started_setup.md.b46876d2.lean.js similarity index 91% rename from assets/guide_getting-started_setup.md.18784fa3.lean.js rename to assets/guide_getting-started_setup.md.b46876d2.lean.js index ea3d65f6..c15fceb1 100644 --- a/assets/guide_getting-started_setup.md.18784fa3.lean.js +++ b/assets/guide_getting-started_setup.md.b46876d2.lean.js @@ -1 +1 @@ -import{_ as e,c as t,o,a}from"./app.ab34650d.js";var r="/assets/actionsbutton.f1ba9d8e.png",n="/assets/gh-pages.a24cefcf.png";const y=JSON.parse('{"title":"Setting Up","description":"","frontmatter":{},"headers":[{"level":2,"title":"Local Development","slug":"local-development"},{"level":3,"title":"Deploying","slug":"deploying"},{"level":3,"title":"Visual Studio Code Setup","slug":"visual-studio-code-setup"},{"level":2,"title":"Replit","slug":"replit"},{"level":2,"title":"Glitch","slug":"glitch"}],"relativePath":"guide/getting-started/setup.md","lastUpdated":1658112303000}'),i={name:"guide/getting-started/setup.md"},l=a("",29),s=[l];function p(c,u,h,d,g,m){return o(),t("div",null,s)}var b=e(i,[["render",p]]);export{y as __pageData,b as default}; +import{_ as e,c as t,o,a}from"./app.ab34650d.js";var r="/assets/actionsbutton.f1ba9d8e.png",n="/assets/gh-pages.a24cefcf.png";const y=JSON.parse('{"title":"Setting Up","description":"","frontmatter":{},"headers":[{"level":2,"title":"Local Development","slug":"local-development"},{"level":3,"title":"Deploying","slug":"deploying"},{"level":3,"title":"Visual Studio Code Setup","slug":"visual-studio-code-setup"},{"level":2,"title":"Replit","slug":"replit"},{"level":2,"title":"Glitch","slug":"glitch"}],"relativePath":"guide/getting-started/setup.md","lastUpdated":1658112388000}'),i={name:"guide/getting-started/setup.md"},l=a("",29),s=[l];function p(c,u,h,d,g,m){return o(),t("div",null,s)}var b=e(i,[["render",p]]);export{y as __pageData,b as default}; diff --git a/assets/guide_getting-started_updating.md.1b35755d.js b/assets/guide_getting-started_updating.md.954bab42.js similarity index 97% rename from assets/guide_getting-started_updating.md.1b35755d.js rename to assets/guide_getting-started_updating.md.954bab42.js index 6c1ed6d5..2d470ea9 100644 --- a/assets/guide_getting-started_updating.md.1b35755d.js +++ b/assets/guide_getting-started_updating.md.954bab42.js @@ -1,4 +1,4 @@ -import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Updating Profectus","description":"","frontmatter":{},"headers":[{"level":2,"title":"Github","slug":"github"},{"level":2,"title":"Replit","slug":"replit"},{"level":2,"title":"Glitch","slug":"glitch"}],"relativePath":"guide/getting-started/updating.md","lastUpdated":1658112303000}'),r={name:"guide/getting-started/updating.md"},n=o(`

Updating Profectus

Github

Due to Profectus being a template repository, your projects do not share a git history with Profectus. In order to update changes, you will need to run the following:

git remote add template https://github.com/profectus-engine/Profectus
+import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Updating Profectus","description":"","frontmatter":{},"headers":[{"level":2,"title":"Github","slug":"github"},{"level":2,"title":"Replit","slug":"replit"},{"level":2,"title":"Glitch","slug":"glitch"}],"relativePath":"guide/getting-started/updating.md","lastUpdated":1658112388000}'),r={name:"guide/getting-started/updating.md"},n=o(`

Updating Profectus

Github

Due to Profectus being a template repository, your projects do not share a git history with Profectus. In order to update changes, you will need to run the following:

git remote add template https://github.com/profectus-engine/Profectus
 git fetch --all
 git merge template/main --allow-unrelated-histories
 

The first command only has to be performed once. The third command may require you to merge conflicts between code both you and Profectus have changed - however, due to the modularity of Profectus, this should be fairly rare. Unfortunately, due to the unrelated histories the first time you do this every change will be marked as a conflict, and you'll need to accept each one.

Replit

The sidebar has a tab labelled "Version Control", which you can use to merge all changes made to Profectus into your project. Unfortunately, replit does not have a merge tool so this process may irrecoverably erase changes you've made - I'd recommend making a backup first.

Glitch

Unfortunately glitch does not provide any method by which to update a project from a github repository. If you've only changed things in the data folder you may consider creating a new project, importing the current version of Profectus, and then placing your data folder in the new project.

`,9),i=[n];function s(l,c,d,h,p,u){return a(),t("div",null,i)}var m=e(r,[["render",s]]);export{f as __pageData,m as default}; diff --git a/assets/guide_getting-started_updating.md.1b35755d.lean.js b/assets/guide_getting-started_updating.md.954bab42.lean.js similarity index 88% rename from assets/guide_getting-started_updating.md.1b35755d.lean.js rename to assets/guide_getting-started_updating.md.954bab42.lean.js index 3c66cd51..2169393d 100644 --- a/assets/guide_getting-started_updating.md.1b35755d.lean.js +++ b/assets/guide_getting-started_updating.md.954bab42.lean.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Updating Profectus","description":"","frontmatter":{},"headers":[{"level":2,"title":"Github","slug":"github"},{"level":2,"title":"Replit","slug":"replit"},{"level":2,"title":"Glitch","slug":"glitch"}],"relativePath":"guide/getting-started/updating.md","lastUpdated":1658112303000}'),r={name:"guide/getting-started/updating.md"},n=o("",9),i=[n];function s(l,c,d,h,p,u){return a(),t("div",null,i)}var m=e(r,[["render",s]]);export{f as __pageData,m as default}; +import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Updating Profectus","description":"","frontmatter":{},"headers":[{"level":2,"title":"Github","slug":"github"},{"level":2,"title":"Replit","slug":"replit"},{"level":2,"title":"Glitch","slug":"glitch"}],"relativePath":"guide/getting-started/updating.md","lastUpdated":1658112388000}'),r={name:"guide/getting-started/updating.md"},n=o("",9),i=[n];function s(l,c,d,h,p,u){return a(),t("div",null,i)}var m=e(r,[["render",s]]);export{f as __pageData,m as default}; diff --git a/assets/guide_important-concepts_coercable.md.b3e4b201.js b/assets/guide_important-concepts_coercable.md.2f60c9ea.js similarity index 98% rename from assets/guide_important-concepts_coercable.md.b3e4b201.js rename to assets/guide_important-concepts_coercable.md.2f60c9ea.js index 72fc7bf9..480347a6 100644 --- a/assets/guide_important-concepts_coercable.md.b3e4b201.js +++ b/assets/guide_important-concepts_coercable.md.2f60c9ea.js @@ -1,4 +1,4 @@ -import{_ as e,c as s,o as n,a}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Coercable Components","description":"","frontmatter":{},"headers":[{"level":2,"title":"Template Strings","slug":"template-strings"},{"level":2,"title":"Render Functions (JSX)","slug":"render-functions-jsx"},{"level":2,"title":"Components","slug":"components"}],"relativePath":"guide/important-concepts/coercable.md","lastUpdated":1658112303000}'),o={name:"guide/important-concepts/coercable.md"},t=a(`

Coercable Components

Most times a feature has some sort of dynamic display, it'll allow you to pass a "Coercable Component", or rather, something that can be coerced into a Vue component. This page goes over the different types of values you can use

Template Strings

If you provide a string, it will be wrapped in a component using it as the template. This is the simplest method, although not suitable for complex displays, and realistically cannot use Vue components as none are registered globally (by default). Recommended for static or simple dynamic displays, such as displays on features.

Template strings need to be wrapped in some HTML element. By default, they'll be wrapped in a <span> element, although certain features may wrap things in div or header elements instead, as appropriate.

Render Functions (JSX)

You can provide a render function and it will be wrapped in a component as well. The intended use for this is to write JSX inside a function, which will get automatically converted into a render function. You can read more about that process on the Vue docs on Render Functions & JSX. Note that JSX must be returned in a function - it does not work "standalone". The CoercableComponent type will enforce this for you.

JSX can use imported components, making this suited for writing the display properties on things like Tabs or Layers. There are also built-in functions to render features (either as their own or in a layout via renderRow and renderCol), so you don't need to import the Vue component for every feature you plan on using.

Typically a feature will accept a Computable<CoercableComponent>, which means functions would (normally) be wrapped in a computed (see Computable for more details). This would break render functions, so when passing a render function as a CoercableComponent it must be specially marked that it shouldn't be cached. You can use the built-in jsx function to mark a function for you.

Example

{
+import{_ as e,c as s,o as n,a}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Coercable Components","description":"","frontmatter":{},"headers":[{"level":2,"title":"Template Strings","slug":"template-strings"},{"level":2,"title":"Render Functions (JSX)","slug":"render-functions-jsx"},{"level":2,"title":"Components","slug":"components"}],"relativePath":"guide/important-concepts/coercable.md","lastUpdated":1658112388000}'),o={name:"guide/important-concepts/coercable.md"},t=a(`

Coercable Components

Most times a feature has some sort of dynamic display, it'll allow you to pass a "Coercable Component", or rather, something that can be coerced into a Vue component. This page goes over the different types of values you can use

Template Strings

If you provide a string, it will be wrapped in a component using it as the template. This is the simplest method, although not suitable for complex displays, and realistically cannot use Vue components as none are registered globally (by default). Recommended for static or simple dynamic displays, such as displays on features.

Template strings need to be wrapped in some HTML element. By default, they'll be wrapped in a <span> element, although certain features may wrap things in div or header elements instead, as appropriate.

Render Functions (JSX)

You can provide a render function and it will be wrapped in a component as well. The intended use for this is to write JSX inside a function, which will get automatically converted into a render function. You can read more about that process on the Vue docs on Render Functions & JSX. Note that JSX must be returned in a function - it does not work "standalone". The CoercableComponent type will enforce this for you.

JSX can use imported components, making this suited for writing the display properties on things like Tabs or Layers. There are also built-in functions to render features (either as their own or in a layout via renderRow and renderCol), so you don't need to import the Vue component for every feature you plan on using.

Typically a feature will accept a Computable<CoercableComponent>, which means functions would (normally) be wrapped in a computed (see Computable for more details). This would break render functions, so when passing a render function as a CoercableComponent it must be specially marked that it shouldn't be cached. You can use the built-in jsx function to mark a function for you.

Example

{
 	display: jsx(() => (
         <>
             <MainDisplay resource={points} color={color} />
diff --git a/assets/guide_important-concepts_coercable.md.b3e4b201.lean.js b/assets/guide_important-concepts_coercable.md.2f60c9ea.lean.js
similarity index 89%
rename from assets/guide_important-concepts_coercable.md.b3e4b201.lean.js
rename to assets/guide_important-concepts_coercable.md.2f60c9ea.lean.js
index f83837d5..c4562b22 100644
--- a/assets/guide_important-concepts_coercable.md.b3e4b201.lean.js
+++ b/assets/guide_important-concepts_coercable.md.2f60c9ea.lean.js
@@ -1 +1 @@
-import{_ as e,c as s,o as n,a}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Coercable Components","description":"","frontmatter":{},"headers":[{"level":2,"title":"Template Strings","slug":"template-strings"},{"level":2,"title":"Render Functions (JSX)","slug":"render-functions-jsx"},{"level":2,"title":"Components","slug":"components"}],"relativePath":"guide/important-concepts/coercable.md","lastUpdated":1658112303000}'),o={name:"guide/important-concepts/coercable.md"},t=a("",13),l=[t];function p(r,c,i,d,u,y){return n(),s("div",null,l)}var F=e(o,[["render",p]]);export{m as __pageData,F as default};
+import{_ as e,c as s,o as n,a}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Coercable Components","description":"","frontmatter":{},"headers":[{"level":2,"title":"Template Strings","slug":"template-strings"},{"level":2,"title":"Render Functions (JSX)","slug":"render-functions-jsx"},{"level":2,"title":"Components","slug":"components"}],"relativePath":"guide/important-concepts/coercable.md","lastUpdated":1658112388000}'),o={name:"guide/important-concepts/coercable.md"},t=a("",13),l=[t];function p(r,c,i,d,u,y){return n(),s("div",null,l)}var F=e(o,[["render",p]]);export{m as __pageData,F as default};
diff --git a/assets/guide_important-concepts_features.md.97d5dfdd.js b/assets/guide_important-concepts_features.md.484070c2.js
similarity index 99%
rename from assets/guide_important-concepts_features.md.97d5dfdd.js
rename to assets/guide_important-concepts_features.md.484070c2.js
index bbd62fa4..88b0b2f2 100644
--- a/assets/guide_important-concepts_features.md.97d5dfdd.js
+++ b/assets/guide_important-concepts_features.md.484070c2.js
@@ -1,4 +1,4 @@
-import{_ as e,c as s,o as a,a as n}from"./app.ab34650d.js";const D=JSON.parse('{"title":"Features","description":"","frontmatter":{},"headers":[{"level":2,"title":"Tree Shaking","slug":"tree-shaking"}],"relativePath":"guide/important-concepts/features.md","lastUpdated":1658112303000}'),t={name:"guide/important-concepts/features.md"},o=n(`

Features

A layer is made up of features. There are many types of features included in Profectus, and more can be created once you become familiar with the engine.

To create a feature, the feature type will have one or more functions to help you. They'll typically look something like this:

const addGainUpgrade = createUpgrade(() => ({
+import{_ as e,c as s,o as a,a as n}from"./app.ab34650d.js";const D=JSON.parse('{"title":"Features","description":"","frontmatter":{},"headers":[{"level":2,"title":"Tree Shaking","slug":"tree-shaking"}],"relativePath":"guide/important-concepts/features.md","lastUpdated":1658112388000}'),t={name:"guide/important-concepts/features.md"},o=n(`

Features

A layer is made up of features. There are many types of features included in Profectus, and more can be created once you become familiar with the engine.

To create a feature, the feature type will have one or more functions to help you. They'll typically look something like this:

const addGainUpgrade = createUpgrade(() => ({
     display: {
         title: "Generator of Genericness",
         description: "Gain 1 point every second"
diff --git a/assets/guide_important-concepts_features.md.97d5dfdd.lean.js b/assets/guide_important-concepts_features.md.484070c2.lean.js
similarity index 86%
rename from assets/guide_important-concepts_features.md.97d5dfdd.lean.js
rename to assets/guide_important-concepts_features.md.484070c2.lean.js
index 61a63cc4..0bdd5d4d 100644
--- a/assets/guide_important-concepts_features.md.97d5dfdd.lean.js
+++ b/assets/guide_important-concepts_features.md.484070c2.lean.js
@@ -1 +1 @@
-import{_ as e,c as s,o as a,a as n}from"./app.ab34650d.js";const D=JSON.parse('{"title":"Features","description":"","frontmatter":{},"headers":[{"level":2,"title":"Tree Shaking","slug":"tree-shaking"}],"relativePath":"guide/important-concepts/features.md","lastUpdated":1658112303000}'),t={name:"guide/important-concepts/features.md"},o=n("",12),l=[o];function p(r,c,i,y,d,h){return a(),s("div",null,l)}var A=e(t,[["render",p]]);export{D as __pageData,A as default};
+import{_ as e,c as s,o as a,a as n}from"./app.ab34650d.js";const D=JSON.parse('{"title":"Features","description":"","frontmatter":{},"headers":[{"level":2,"title":"Tree Shaking","slug":"tree-shaking"}],"relativePath":"guide/important-concepts/features.md","lastUpdated":1658112388000}'),t={name:"guide/important-concepts/features.md"},o=n("",12),l=[o];function p(r,c,i,y,d,h){return a(),s("div",null,l)}var A=e(t,[["render",p]]);export{D as __pageData,A as default};
diff --git a/assets/guide_important-concepts_layers.md.4c778709.js b/assets/guide_important-concepts_layers.md.7de77bbd.js
similarity index 96%
rename from assets/guide_important-concepts_layers.md.4c778709.js
rename to assets/guide_important-concepts_layers.md.7de77bbd.js
index ab725385..96384950 100644
--- a/assets/guide_important-concepts_layers.md.4c778709.js
+++ b/assets/guide_important-concepts_layers.md.7de77bbd.js
@@ -1 +1 @@
-import{_ as e,c as a,o as t,a as r}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Layers","description":"","frontmatter":{},"headers":[{"level":2,"title":"Lazy Proxies","slug":"lazy-proxies"}],"relativePath":"guide/important-concepts/layers.md","lastUpdated":1658112303000}'),s={name:"guide/important-concepts/layers.md"},i=r('

Layers

Profectus content is organized into units called "Layers". When displaying content to the user, the screen will be divided into several tabs that each display the content of a layer. These layers are stored in /src/data/layers.

Each layer is ultimately a collection of different features, and a display function. While there are a couple reserved properties for layers, most of its structure is fully up to the creator.

Layers can be dynamically added or removed at any time, which also allows for effectively disabling or enabling content based on arbitrary conditions. Just make sure getInitialLayers can process the player save data object and determine which layers should be currently active.

Lazy Proxies

Layers (and features) are not actually created immediately. Instead, their options are gotten through a function which is then run the first time something inside the layer is accessed. This is a concept called lazy evaluation, which is also used for things like computed, and allows for features to reference each other without worrying about cyclical dependencies.

',6),o=[i];function n(c,l,d,h,y,p){return t(),a("div",null,o)}var _=e(s,[["render",n]]);export{f as __pageData,_ as default}; +import{_ as e,c as a,o as t,a as r}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Layers","description":"","frontmatter":{},"headers":[{"level":2,"title":"Lazy Proxies","slug":"lazy-proxies"}],"relativePath":"guide/important-concepts/layers.md","lastUpdated":1658112388000}'),s={name:"guide/important-concepts/layers.md"},i=r('

Layers

Profectus content is organized into units called "Layers". When displaying content to the user, the screen will be divided into several tabs that each display the content of a layer. These layers are stored in /src/data/layers.

Each layer is ultimately a collection of different features, and a display function. While there are a couple reserved properties for layers, most of its structure is fully up to the creator.

Layers can be dynamically added or removed at any time, which also allows for effectively disabling or enabling content based on arbitrary conditions. Just make sure getInitialLayers can process the player save data object and determine which layers should be currently active.

Lazy Proxies

Layers (and features) are not actually created immediately. Instead, their options are gotten through a function which is then run the first time something inside the layer is accessed. This is a concept called lazy evaluation, which is also used for things like computed, and allows for features to reference each other without worrying about cyclical dependencies.

',6),o=[i];function n(c,l,d,h,y,p){return t(),a("div",null,o)}var _=e(s,[["render",n]]);export{f as __pageData,_ as default}; diff --git a/assets/guide_important-concepts_layers.md.4c778709.lean.js b/assets/guide_important-concepts_layers.md.7de77bbd.lean.js similarity index 86% rename from assets/guide_important-concepts_layers.md.4c778709.lean.js rename to assets/guide_important-concepts_layers.md.7de77bbd.lean.js index 875bfabd..c978bc6e 100644 --- a/assets/guide_important-concepts_layers.md.4c778709.lean.js +++ b/assets/guide_important-concepts_layers.md.7de77bbd.lean.js @@ -1 +1 @@ -import{_ as e,c as a,o as t,a as r}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Layers","description":"","frontmatter":{},"headers":[{"level":2,"title":"Lazy Proxies","slug":"lazy-proxies"}],"relativePath":"guide/important-concepts/layers.md","lastUpdated":1658112303000}'),s={name:"guide/important-concepts/layers.md"},i=r("",6),o=[i];function n(c,l,d,h,y,p){return t(),a("div",null,o)}var _=e(s,[["render",n]]);export{f as __pageData,_ as default}; +import{_ as e,c as a,o as t,a as r}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Layers","description":"","frontmatter":{},"headers":[{"level":2,"title":"Lazy Proxies","slug":"lazy-proxies"}],"relativePath":"guide/important-concepts/layers.md","lastUpdated":1658112388000}'),s={name:"guide/important-concepts/layers.md"},i=r("",6),o=[i];function n(c,l,d,h,y,p){return t(),a("div",null,o)}var _=e(s,[["render",n]]);export{f as __pageData,_ as default}; diff --git a/assets/guide_important-concepts_persistence.md.b6543d35.js b/assets/guide_important-concepts_persistence.md.acc0f0ee.js similarity index 97% rename from assets/guide_important-concepts_persistence.md.b6543d35.js rename to assets/guide_important-concepts_persistence.md.acc0f0ee.js index 3e91a536..ef425d7a 100644 --- a/assets/guide_important-concepts_persistence.md.b6543d35.js +++ b/assets/guide_important-concepts_persistence.md.acc0f0ee.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as s}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Persistence","description":"","frontmatter":{},"headers":[],"relativePath":"guide/important-concepts/persistence.md","lastUpdated":1658112303000}'),r={name:"guide/important-concepts/persistence.md"},n=s('

Persistence

Persistence refers to data that is saved, so that it persists when the user closes the tab and opens it again in the future.

In Profectus, this is handled by creating "persistent refs", which act like refs but whose value is stored in an object that gets saved to localStorage. Other than that you can treat them like any other ref - when adding the layer, any persistent refs will automatically have their values updated to the ones saved in localStorage. If there isn't a saved value, it'll use the default value passed to the persistent ref constructor.

Many features in Profectus, such as upgrades, milestones, and challenges, internally have persistent refs to save things like whether the upgrade has been purchased, the milestone achieved, or the challenge completed. Creators can also create their own custom persistent refs to store any arbitrary (but serializable) data they need - that means Numbers (including big numbers), strings, booleans, or objects containing only serializable values. Another notable function is the resource constructor. If you pass a default value into its contructor, it will automatically create a persistent ref for that resource. If you pass in a ref, it will NOT make the ref persistent.

It's important for saving and loading these properties for these refs to be in a well known location. This is implemented based on the location of the persistent ref within a layer. That means its important that all persistent refs are located within the object returned by the createLayer options function. If a persistent ref is not within that object, it will NOT be saved and loaded - regardless of whether its a persistent ref within a feature, one you manually created, or otherwise.

Additionally, this structure should typically remain consistent between project versions. If a value is in a new location, it will not load the value from localStorage correctly. This is exacerbated if two values swap places, such as when an array is re-ordered. In the event a creator changes this structure anyways, the fixOldSave function can be used to migrate the old player save data to the new structure expected by the current version of the project.

',6),i=[n];function o(c,l,h,d,p,u){return a(),t("div",null,i)}var y=e(r,[["render",o]]);export{m as __pageData,y as default}; +import{_ as e,c as t,o as a,a as s}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Persistence","description":"","frontmatter":{},"headers":[],"relativePath":"guide/important-concepts/persistence.md","lastUpdated":1658112388000}'),r={name:"guide/important-concepts/persistence.md"},n=s('

Persistence

Persistence refers to data that is saved, so that it persists when the user closes the tab and opens it again in the future.

In Profectus, this is handled by creating "persistent refs", which act like refs but whose value is stored in an object that gets saved to localStorage. Other than that you can treat them like any other ref - when adding the layer, any persistent refs will automatically have their values updated to the ones saved in localStorage. If there isn't a saved value, it'll use the default value passed to the persistent ref constructor.

Many features in Profectus, such as upgrades, milestones, and challenges, internally have persistent refs to save things like whether the upgrade has been purchased, the milestone achieved, or the challenge completed. Creators can also create their own custom persistent refs to store any arbitrary (but serializable) data they need - that means Numbers (including big numbers), strings, booleans, or objects containing only serializable values. Another notable function is the resource constructor. If you pass a default value into its contructor, it will automatically create a persistent ref for that resource. If you pass in a ref, it will NOT make the ref persistent.

It's important for saving and loading these properties for these refs to be in a well known location. This is implemented based on the location of the persistent ref within a layer. That means its important that all persistent refs are located within the object returned by the createLayer options function. If a persistent ref is not within that object, it will NOT be saved and loaded - regardless of whether its a persistent ref within a feature, one you manually created, or otherwise.

Additionally, this structure should typically remain consistent between project versions. If a value is in a new location, it will not load the value from localStorage correctly. This is exacerbated if two values swap places, such as when an array is re-ordered. In the event a creator changes this structure anyways, the fixOldSave function can be used to migrate the old player save data to the new structure expected by the current version of the project.

',6),i=[n];function o(c,l,h,d,p,u){return a(),t("div",null,i)}var y=e(r,[["render",o]]);export{m as __pageData,y as default}; diff --git a/assets/guide_important-concepts_persistence.md.b6543d35.lean.js b/assets/guide_important-concepts_persistence.md.acc0f0ee.lean.js similarity index 84% rename from assets/guide_important-concepts_persistence.md.b6543d35.lean.js rename to assets/guide_important-concepts_persistence.md.acc0f0ee.lean.js index 696d27c5..d7ea85ad 100644 --- a/assets/guide_important-concepts_persistence.md.b6543d35.lean.js +++ b/assets/guide_important-concepts_persistence.md.acc0f0ee.lean.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as s}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Persistence","description":"","frontmatter":{},"headers":[],"relativePath":"guide/important-concepts/persistence.md","lastUpdated":1658112303000}'),r={name:"guide/important-concepts/persistence.md"},n=s("",6),i=[n];function o(c,l,h,d,p,u){return a(),t("div",null,i)}var y=e(r,[["render",o]]);export{m as __pageData,y as default}; +import{_ as e,c as t,o as a,a as s}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Persistence","description":"","frontmatter":{},"headers":[],"relativePath":"guide/important-concepts/persistence.md","lastUpdated":1658112388000}'),r={name:"guide/important-concepts/persistence.md"},n=s("",6),i=[n];function o(c,l,h,d,p,u){return a(),t("div",null,i)}var y=e(r,[["render",o]]);export{m as __pageData,y as default}; diff --git a/assets/guide_important-concepts_reactivity.md.7dc860e4.js b/assets/guide_important-concepts_reactivity.md.ff5cecab.js similarity index 97% rename from assets/guide_important-concepts_reactivity.md.7dc860e4.js rename to assets/guide_important-concepts_reactivity.md.ff5cecab.js index b9c59030..5a222875 100644 --- a/assets/guide_important-concepts_reactivity.md.7dc860e4.js +++ b/assets/guide_important-concepts_reactivity.md.ff5cecab.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Reactivity","description":"","frontmatter":{},"headers":[{"level":2,"title":"Computable","slug":"computable"}],"relativePath":"guide/important-concepts/reactivity.md","lastUpdated":1658112303000}'),r={name:"guide/important-concepts/reactivity.md"},s=o('

Reactivity

Profectus takes large advantage of Vue's reactivity system. It's recommended to read up on how refs and computed refs work. Ultimately this means that sometimes you'll need to type .value to get the actual value of something, but also you are able to pass things around by reference instead of by value. Indeed, it is recommended to only unwrap the actual value when you actually need it. .value is guaranteed to be correct and up to date only on the exact moment it is accessed.

With a proper IDE, such as Visual Studio Code, you should be able to see whether or not something is a ref or not from type hints. If in doubt, you can always wrap the property in an unref call.

Vue's reactivity is probably the "quirkiest" part of Profectus, and not even the documentation makes all of those quirks clear. It is recommend to read this thread of common misconceptions around Vue reactivity.

Computable

Most properties on features will accept Computable values. Computable values can either be a raw value, a ref to the value, or a function that returns the value. In the lattermost case it will be wrapped in computed, turning it into a ref. The feature type will handle it being a ref or a raw value by using unref when accessing those values. With type hints, your IDE should correctly identify these values as refs or raw values so you can treat them as the types they actually are.

Because functions are automatically wrapped in computed for many properties, it might be expected to happen to custom properties you add to a feature that isn't defined by the feature type. These functions will not be wrapped, and if you want it cached you should wrap it in a computed yourself. This does, however, allow you to include custom methods on a feature without worry.

',7),i=[s];function n(c,u,d,l,p,h){return a(),t("div",null,i)}var y=e(r,[["render",n]]);export{f as __pageData,y as default}; +import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Reactivity","description":"","frontmatter":{},"headers":[{"level":2,"title":"Computable","slug":"computable"}],"relativePath":"guide/important-concepts/reactivity.md","lastUpdated":1658112388000}'),r={name:"guide/important-concepts/reactivity.md"},s=o('

Reactivity

Profectus takes large advantage of Vue's reactivity system. It's recommended to read up on how refs and computed refs work. Ultimately this means that sometimes you'll need to type .value to get the actual value of something, but also you are able to pass things around by reference instead of by value. Indeed, it is recommended to only unwrap the actual value when you actually need it. .value is guaranteed to be correct and up to date only on the exact moment it is accessed.

With a proper IDE, such as Visual Studio Code, you should be able to see whether or not something is a ref or not from type hints. If in doubt, you can always wrap the property in an unref call.

Vue's reactivity is probably the "quirkiest" part of Profectus, and not even the documentation makes all of those quirks clear. It is recommend to read this thread of common misconceptions around Vue reactivity.

Computable

Most properties on features will accept Computable values. Computable values can either be a raw value, a ref to the value, or a function that returns the value. In the lattermost case it will be wrapped in computed, turning it into a ref. The feature type will handle it being a ref or a raw value by using unref when accessing those values. With type hints, your IDE should correctly identify these values as refs or raw values so you can treat them as the types they actually are.

Because functions are automatically wrapped in computed for many properties, it might be expected to happen to custom properties you add to a feature that isn't defined by the feature type. These functions will not be wrapped, and if you want it cached you should wrap it in a computed yourself. This does, however, allow you to include custom methods on a feature without worry.

',7),i=[s];function n(c,u,d,l,p,h){return a(),t("div",null,i)}var y=e(r,[["render",n]]);export{f as __pageData,y as default}; diff --git a/assets/guide_important-concepts_reactivity.md.7dc860e4.lean.js b/assets/guide_important-concepts_reactivity.md.ff5cecab.lean.js similarity index 86% rename from assets/guide_important-concepts_reactivity.md.7dc860e4.lean.js rename to assets/guide_important-concepts_reactivity.md.ff5cecab.lean.js index 06a1d64c..d2061131 100644 --- a/assets/guide_important-concepts_reactivity.md.7dc860e4.lean.js +++ b/assets/guide_important-concepts_reactivity.md.ff5cecab.lean.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Reactivity","description":"","frontmatter":{},"headers":[{"level":2,"title":"Computable","slug":"computable"}],"relativePath":"guide/important-concepts/reactivity.md","lastUpdated":1658112303000}'),r={name:"guide/important-concepts/reactivity.md"},s=o("",7),i=[s];function n(c,u,d,l,p,h){return a(),t("div",null,i)}var y=e(r,[["render",n]]);export{f as __pageData,y as default}; +import{_ as e,c as t,o as a,a as o}from"./app.ab34650d.js";const f=JSON.parse('{"title":"Reactivity","description":"","frontmatter":{},"headers":[{"level":2,"title":"Computable","slug":"computable"}],"relativePath":"guide/important-concepts/reactivity.md","lastUpdated":1658112388000}'),r={name:"guide/important-concepts/reactivity.md"},s=o("",7),i=[s];function n(c,u,d,l,p,h){return a(),t("div",null,i)}var y=e(r,[["render",n]]);export{f as __pageData,y as default}; diff --git a/assets/guide_index.md.62e0b322.js b/assets/guide_index.md.908ddb01.js similarity index 98% rename from assets/guide_index.md.62e0b322.js rename to assets/guide_index.md.908ddb01.js index 6220ec80..bb307b7b 100644 --- a/assets/guide_index.md.62e0b322.js +++ b/assets/guide_index.md.908ddb01.js @@ -1 +1 @@ -import{_ as e,c as o,o as t,a as n}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"title":"Introduction"},"headers":[{"level":2,"title":"Should you use Profectus?","slug":"should-you-use-profectus"},{"level":3,"title":"Alternative Engines","slug":"alternative-engines"},{"level":2,"title":"Design Philosophies","slug":"design-philosophies"}],"relativePath":"guide/index.md","lastUpdated":1658112303000}'),a={name:"guide/index.md"},r=n('

Introduction

Profectus is a web-based game engine. You can write your content using many built in features, write your own features, and build up complex gameplay quickly and easily.

The purpose of creating profectus was to create an easy to use engine that does not create a ceiling for a programmer's personal growth. This engine will grow in complexity with you, empowering you to create increasingly complex designs and mechanics.

Should you use Profectus?

While this engine is intended to make game development (and web app development) easier, it still requires you to be comfortable with programming in general and javascript in particular. Fortunately, that is a solvable problem.

If you've never used Javascript before, learn-js.org is a good resource for learning the important concepts. If you'd like a more thorough lesson on all the ins and outs of web development, javascript.info and MDN's tutorials should have you covered. MDN is also a great resource to use as a reference - for example, if you want to know more about something and you google it, there'll typically be a MDN link that'll explain it thoroughly.

Beyond the basics, Profectus uses a modern web development pipeline, using tools like node, typescript, and JSX. While most of it should be relatively easy to pick up through context, if this becomes too complicated you may be interested in The Modding Tree, a predecessor of Profectus that uses plain old javascript.

Alternative Engines

There are many popular game engines out there, such as GameMaker Studio 2, Unity3D, Unreal Engine 4, and Godot, that are all general purpose and also more useful if you're planning on going into a career in game development. These are all more mature and robust game engines compared to Profectus, and are used by actual game development studios.

Profectus, on the other hand, is a very opinionated engine that is better at specific types of projects. Where the above engines will require you to design and create your own interfaces, menus, save management systems, etc. Profectus will include those out of the box. Profectus will also output games that run natively in the browser, and will typically be easier for players to play than traditional engines.

If you are not interested in programming but still want to get into game development, the above engines also all support "visual programming", which may be more amenable to you. Each engine will have varying levels of support, and of course with varying complexities, but ultimately any of these will help you learn the concepts of programming and game development, and all of them also offer traditional programming for when you think you're ready.

Design Philosophies

While absolute purity is impossible, design decisions have been and will continue to be made using these principles in mind.

  • An engine should be intuitive, and code readable without context
  • An engine should not constrain a creator
  • An engine should be consistent
  • An engine should be extensible, and those extensions sharable
  • An engine should be efficient
  • An engine should report issues early and thoroughly
  • Passing by reference is one honking great idea -- let's do more of that!
',14),i=[r];function s(l,u,h,p,d,c){return t(),o("div",null,i)}var f=e(a,[["render",s]]);export{m as __pageData,f as default}; +import{_ as e,c as o,o as t,a as n}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"title":"Introduction"},"headers":[{"level":2,"title":"Should you use Profectus?","slug":"should-you-use-profectus"},{"level":3,"title":"Alternative Engines","slug":"alternative-engines"},{"level":2,"title":"Design Philosophies","slug":"design-philosophies"}],"relativePath":"guide/index.md","lastUpdated":1658112388000}'),a={name:"guide/index.md"},r=n('

Introduction

Profectus is a web-based game engine. You can write your content using many built in features, write your own features, and build up complex gameplay quickly and easily.

The purpose of creating profectus was to create an easy to use engine that does not create a ceiling for a programmer's personal growth. This engine will grow in complexity with you, empowering you to create increasingly complex designs and mechanics.

Should you use Profectus?

While this engine is intended to make game development (and web app development) easier, it still requires you to be comfortable with programming in general and javascript in particular. Fortunately, that is a solvable problem.

If you've never used Javascript before, learn-js.org is a good resource for learning the important concepts. If you'd like a more thorough lesson on all the ins and outs of web development, javascript.info and MDN's tutorials should have you covered. MDN is also a great resource to use as a reference - for example, if you want to know more about something and you google it, there'll typically be a MDN link that'll explain it thoroughly.

Beyond the basics, Profectus uses a modern web development pipeline, using tools like node, typescript, and JSX. While most of it should be relatively easy to pick up through context, if this becomes too complicated you may be interested in The Modding Tree, a predecessor of Profectus that uses plain old javascript.

Alternative Engines

There are many popular game engines out there, such as GameMaker Studio 2, Unity3D, Unreal Engine 4, and Godot, that are all general purpose and also more useful if you're planning on going into a career in game development. These are all more mature and robust game engines compared to Profectus, and are used by actual game development studios.

Profectus, on the other hand, is a very opinionated engine that is better at specific types of projects. Where the above engines will require you to design and create your own interfaces, menus, save management systems, etc. Profectus will include those out of the box. Profectus will also output games that run natively in the browser, and will typically be easier for players to play than traditional engines.

If you are not interested in programming but still want to get into game development, the above engines also all support "visual programming", which may be more amenable to you. Each engine will have varying levels of support, and of course with varying complexities, but ultimately any of these will help you learn the concepts of programming and game development, and all of them also offer traditional programming for when you think you're ready.

Design Philosophies

While absolute purity is impossible, design decisions have been and will continue to be made using these principles in mind.

  • An engine should be intuitive, and code readable without context
  • An engine should not constrain a creator
  • An engine should be consistent
  • An engine should be extensible, and those extensions sharable
  • An engine should be efficient
  • An engine should report issues early and thoroughly
  • Passing by reference is one honking great idea -- let's do more of that!
',14),i=[r];function s(l,u,h,p,d,c){return t(),o("div",null,i)}var f=e(a,[["render",s]]);export{m as __pageData,f as default}; diff --git a/assets/guide_index.md.62e0b322.lean.js b/assets/guide_index.md.908ddb01.lean.js similarity index 89% rename from assets/guide_index.md.62e0b322.lean.js rename to assets/guide_index.md.908ddb01.lean.js index 8d508c5f..2da978b2 100644 --- a/assets/guide_index.md.62e0b322.lean.js +++ b/assets/guide_index.md.908ddb01.lean.js @@ -1 +1 @@ -import{_ as e,c as o,o as t,a as n}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"title":"Introduction"},"headers":[{"level":2,"title":"Should you use Profectus?","slug":"should-you-use-profectus"},{"level":3,"title":"Alternative Engines","slug":"alternative-engines"},{"level":2,"title":"Design Philosophies","slug":"design-philosophies"}],"relativePath":"guide/index.md","lastUpdated":1658112303000}'),a={name:"guide/index.md"},r=n("",14),i=[r];function s(l,u,h,p,d,c){return t(),o("div",null,i)}var f=e(a,[["render",s]]);export{m as __pageData,f as default}; +import{_ as e,c as o,o as t,a as n}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"title":"Introduction"},"headers":[{"level":2,"title":"Should you use Profectus?","slug":"should-you-use-profectus"},{"level":3,"title":"Alternative Engines","slug":"alternative-engines"},{"level":2,"title":"Design Philosophies","slug":"design-philosophies"}],"relativePath":"guide/index.md","lastUpdated":1658112388000}'),a={name:"guide/index.md"},r=n("",14),i=[r];function s(l,u,h,p,d,c){return t(),o("div",null,i)}var f=e(a,[["render",s]]);export{m as __pageData,f as default}; diff --git a/assets/guide_recipes_save-progress.md.1eb623d4.js b/assets/guide_recipes_save-progress.md.3e6a24a4.js similarity index 99% rename from assets/guide_recipes_save-progress.md.1eb623d4.js rename to assets/guide_recipes_save-progress.md.3e6a24a4.js index bb0353ec..986058da 100644 --- a/assets/guide_recipes_save-progress.md.1eb623d4.js +++ b/assets/guide_recipes_save-progress.md.3e6a24a4.js @@ -1,4 +1,4 @@ -import{_ as s,c as a,o as e,a as n}from"./app.ab34650d.js";var o="/assets/save-progress.2c9d1bae.png";const u=JSON.parse('{"title":"Display Save Progress","description":"","frontmatter":{},"headers":[{"level":2,"title":"Creating the component","slug":"creating-the-component"},{"level":2,"title":"Working with save data","slug":"working-with-save-data"},{"level":2,"title":"Displaying the component","slug":"displaying-the-component"}],"relativePath":"guide/recipes/save-progress.md","lastUpdated":1658112303000}'),t={name:"guide/recipes/save-progress.md"},l=n('

Display Save Progress

This is a recipe to add a section to each save in the Saves Manager that will describe the amount of progress within that save. This can allow the player to more easily compare the saves to determine which is which. This would be in addition to the game version, last time played, and the name of the save itself, which can already be used for comparing saves without any configuration.

save progress display

This recipe will involve modifying the Save.vue file within your project to include an extra component in the saves details. It will go over creating the new component, how to work with the save data object, and then displaying the component.

Creating the component

Let's start with creating the coerced component. For this recipe we're going to make a couple assumptions about what this display should be. We'll assume the text will be more complex than displaying a single value. That is, at different stages of the game progress will be indicated by different metrics. We'll also assume it will be a single line of descriptive text - no images or anything else that would justify making a new .vue component. Breaking these assumptions is left as an exercise for the reader. But for now, with those assumptions in mind, we'll write our component (in the <script> tag in Save.vue) similar to this example:

const progressDisplay = computeComponent(
+import{_ as s,c as a,o as e,a as n}from"./app.ab34650d.js";var o="/assets/save-progress.2c9d1bae.png";const u=JSON.parse('{"title":"Display Save Progress","description":"","frontmatter":{},"headers":[{"level":2,"title":"Creating the component","slug":"creating-the-component"},{"level":2,"title":"Working with save data","slug":"working-with-save-data"},{"level":2,"title":"Displaying the component","slug":"displaying-the-component"}],"relativePath":"guide/recipes/save-progress.md","lastUpdated":1658112388000}'),t={name:"guide/recipes/save-progress.md"},l=n('

Display Save Progress

This is a recipe to add a section to each save in the Saves Manager that will describe the amount of progress within that save. This can allow the player to more easily compare the saves to determine which is which. This would be in addition to the game version, last time played, and the name of the save itself, which can already be used for comparing saves without any configuration.

save progress display

This recipe will involve modifying the Save.vue file within your project to include an extra component in the saves details. It will go over creating the new component, how to work with the save data object, and then displaying the component.

Creating the component

Let's start with creating the coerced component. For this recipe we're going to make a couple assumptions about what this display should be. We'll assume the text will be more complex than displaying a single value. That is, at different stages of the game progress will be indicated by different metrics. We'll also assume it will be a single line of descriptive text - no images or anything else that would justify making a new .vue component. Breaking these assumptions is left as an exercise for the reader. But for now, with those assumptions in mind, we'll write our component (in the <script> tag in Save.vue) similar to this example:

const progressDisplay = computeComponent(
     computed(() => {
     	if (someCondition) {
     		return "Just started";
diff --git a/assets/guide_recipes_save-progress.md.1eb623d4.lean.js b/assets/guide_recipes_save-progress.md.3e6a24a4.lean.js
similarity index 90%
rename from assets/guide_recipes_save-progress.md.1eb623d4.lean.js
rename to assets/guide_recipes_save-progress.md.3e6a24a4.lean.js
index ee83554e..a779e394 100644
--- a/assets/guide_recipes_save-progress.md.1eb623d4.lean.js
+++ b/assets/guide_recipes_save-progress.md.3e6a24a4.lean.js
@@ -1 +1 @@
-import{_ as s,c as a,o as e,a as n}from"./app.ab34650d.js";var o="/assets/save-progress.2c9d1bae.png";const u=JSON.parse('{"title":"Display Save Progress","description":"","frontmatter":{},"headers":[{"level":2,"title":"Creating the component","slug":"creating-the-component"},{"level":2,"title":"Working with save data","slug":"working-with-save-data"},{"level":2,"title":"Displaying the component","slug":"displaying-the-component"}],"relativePath":"guide/recipes/save-progress.md","lastUpdated":1658112303000}'),t={name:"guide/recipes/save-progress.md"},l=n("",16),p=[l];function r(c,i,y,D,F,d){return e(),a("div",null,p)}var m=s(t,[["render",r]]);export{u as __pageData,m as default};
+import{_ as s,c as a,o as e,a as n}from"./app.ab34650d.js";var o="/assets/save-progress.2c9d1bae.png";const u=JSON.parse('{"title":"Display Save Progress","description":"","frontmatter":{},"headers":[{"level":2,"title":"Creating the component","slug":"creating-the-component"},{"level":2,"title":"Working with save data","slug":"working-with-save-data"},{"level":2,"title":"Displaying the component","slug":"displaying-the-component"}],"relativePath":"guide/recipes/save-progress.md","lastUpdated":1658112388000}'),t={name:"guide/recipes/save-progress.md"},l=n("",16),p=[l];function r(c,i,y,D,F,d){return e(),a("div",null,p)}var m=s(t,[["render",r]]);export{u as __pageData,m as default};
diff --git a/assets/index.md.84447adb.js b/assets/index.md.f650a852.js
similarity index 94%
rename from assets/index.md.84447adb.js
rename to assets/index.md.f650a852.js
index bffcb80b..80988750 100644
--- a/assets/index.md.84447adb.js
+++ b/assets/index.md.f650a852.js
@@ -1 +1 @@
-import{_ as e,c as t,o as i}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Home","description":"","frontmatter":{"layout":"home","title":"Home","hero":{"name":"Profectus","text":"A game engine that grows with you","tagline":"Starts at your skill level and encourages your ambition to make your projects bigger and better.","actions":[{"theme":"brand","text":"Get Started","link":"/guide/getting-started/setup"},{"theme":"alt","text":"Learn More","link":"/guide/"}]},"features":[{"title":"Easy to Use","details":"Everything is written to be as intuitive to use as possible, through consistent design."},{"title":"Helpful","details":"Built with TypeScript to guide you as you write. Seamlessly deploy your project with pre-configured github workflows, and more."},{"title":"Incremental","details":"Designed to actively encourage you to become better at programming. The engine will never limit you."}]},"headers":[],"relativePath":"index.md","lastUpdated":1658112303000}'),o={name:"index.md"};function a(r,n,s,l,d,u){return i(),t("div")}var g=e(o,[["render",a]]);export{m as __pageData,g as default};
+import{_ as e,c as t,o as i}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Home","description":"","frontmatter":{"layout":"home","title":"Home","hero":{"name":"Profectus","text":"A game engine that grows with you","tagline":"Starts at your skill level and encourages your ambition to make your projects bigger and better.","actions":[{"theme":"brand","text":"Get Started","link":"/guide/getting-started/setup"},{"theme":"alt","text":"Learn More","link":"/guide/"}]},"features":[{"title":"Easy to Use","details":"Everything is written to be as intuitive to use as possible, through consistent design."},{"title":"Helpful","details":"Built with TypeScript to guide you as you write. Seamlessly deploy your project with pre-configured github workflows, and more."},{"title":"Incremental","details":"Designed to actively encourage you to become better at programming. The engine will never limit you."}]},"headers":[],"relativePath":"index.md","lastUpdated":1658112388000}'),o={name:"index.md"};function a(r,n,s,l,d,u){return i(),t("div")}var g=e(o,[["render",a]]);export{m as __pageData,g as default};
diff --git a/assets/index.md.84447adb.lean.js b/assets/index.md.f650a852.lean.js
similarity index 94%
rename from assets/index.md.84447adb.lean.js
rename to assets/index.md.f650a852.lean.js
index bffcb80b..80988750 100644
--- a/assets/index.md.84447adb.lean.js
+++ b/assets/index.md.f650a852.lean.js
@@ -1 +1 @@
-import{_ as e,c as t,o as i}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Home","description":"","frontmatter":{"layout":"home","title":"Home","hero":{"name":"Profectus","text":"A game engine that grows with you","tagline":"Starts at your skill level and encourages your ambition to make your projects bigger and better.","actions":[{"theme":"brand","text":"Get Started","link":"/guide/getting-started/setup"},{"theme":"alt","text":"Learn More","link":"/guide/"}]},"features":[{"title":"Easy to Use","details":"Everything is written to be as intuitive to use as possible, through consistent design."},{"title":"Helpful","details":"Built with TypeScript to guide you as you write. Seamlessly deploy your project with pre-configured github workflows, and more."},{"title":"Incremental","details":"Designed to actively encourage you to become better at programming. The engine will never limit you."}]},"headers":[],"relativePath":"index.md","lastUpdated":1658112303000}'),o={name:"index.md"};function a(r,n,s,l,d,u){return i(),t("div")}var g=e(o,[["render",a]]);export{m as __pageData,g as default};
+import{_ as e,c as t,o as i}from"./app.ab34650d.js";const m=JSON.parse('{"title":"Home","description":"","frontmatter":{"layout":"home","title":"Home","hero":{"name":"Profectus","text":"A game engine that grows with you","tagline":"Starts at your skill level and encourages your ambition to make your projects bigger and better.","actions":[{"theme":"brand","text":"Get Started","link":"/guide/getting-started/setup"},{"theme":"alt","text":"Learn More","link":"/guide/"}]},"features":[{"title":"Easy to Use","details":"Everything is written to be as intuitive to use as possible, through consistent design."},{"title":"Helpful","details":"Built with TypeScript to guide you as you write. Seamlessly deploy your project with pre-configured github workflows, and more."},{"title":"Incremental","details":"Designed to actively encourage you to become better at programming. The engine will never limit you."}]},"headers":[],"relativePath":"index.md","lastUpdated":1658112388000}'),o={name:"index.md"};function a(r,n,s,l,d,u){return i(),t("div")}var g=e(o,[["render",a]]);export{m as __pageData,g as default};
diff --git a/guide/advanced-concepts/creating-features.html b/guide/advanced-concepts/creating-features.html
index 7f74d891..214434d1 100644
--- a/guide/advanced-concepts/creating-features.html
+++ b/guide/advanced-concepts/creating-features.html
@@ -7,7 +7,7 @@
     
     
     
-    
+    
     
     
   
@@ -19,8 +19,8 @@
   
   
   
-    
Skip to content

Creating Features

# TODO

Because typescript does not emit JS, if a value is supposed to be a function it is impossible to determine if a given function is the intended value or a function that returns the actual value. For this reason it is not recommended for any feature types to include properties that are Computable<Function>s, and all functions will be wrapped in computed. The notable exception to this is JSX, which uses a utility function to mark that a function should not be wrapped.

- +
Skip to content

Creating Features

# TODO

Because typescript does not emit JS, if a value is supposed to be a function it is impossible to determine if a given function is the intended value or a function that returns the actual value. For this reason it is not recommended for any feature types to include properties that are Computable<Function>s, and all functions will be wrapped in computed. The notable exception to this is JSX, which uses a utility function to mark that a function should not be wrapped.

+ diff --git a/guide/advanced-concepts/dynamic-layers.html b/guide/advanced-concepts/dynamic-layers.html index 7192fb80..ac47b018 100644 --- a/guide/advanced-concepts/dynamic-layers.html +++ b/guide/advanced-concepts/dynamic-layers.html @@ -7,7 +7,7 @@ - + @@ -24,8 +24,8 @@ if (!layer) throw "Layer does not exist"; return layer as DynamicLayer; // you might need an "as unknown" after layer } -
- +
+ diff --git a/guide/creating-your-project/changelog.html b/guide/creating-your-project/changelog.html index f2678e32..cbd30451 100644 --- a/guide/creating-your-project/changelog.html +++ b/guide/creating-your-project/changelog.html @@ -7,7 +7,7 @@ - + @@ -29,8 +29,8 @@ <li class="balancing">Created some bugs to fix later</li> </ul> </details> -

The details and summary tags will create a section that can be collapsed and uncollapsed. While collapsed only the text in the summary tag will appear. By default sections are collapsed, although adding the open attribute to the details element will change that.

Within the details of the version, you can add a description and a list of changes for that version. CSS classes have been defined to automatically mark a change as a feature, fix, breaking change, or balancing tweak. You can of course add additional tags as you have full control over the entire component.

- +

The details and summary tags will create a section that can be collapsed and uncollapsed. While collapsed only the text in the summary tag will appear. By default sections are collapsed, although adding the open attribute to the details element will change that.

Within the details of the version, you can add a description and a list of changes for that version. CSS classes have been defined to automatically mark a change as a feature, fix, breaking change, or balancing tweak. You can of course add additional tags as you have full control over the entire component.

+ diff --git a/guide/creating-your-project/project-entry.html b/guide/creating-your-project/project-entry.html index f26572bc..2964e165 100644 --- a/guide/creating-your-project/project-entry.html +++ b/guide/creating-your-project/project-entry.html @@ -7,7 +7,7 @@ - + @@ -20,8 +20,8 @@
Skip to content
On this page

Project Entry

This is a TypeScript file containing the non-static parts of your project, and acts as the entry point for it.

It is stored at /src/data/projEntry.jsx.

This file has 3 things it must export, but beyond that can export anything the creator wants it to. Typically in addition to the required 3, the initial/"main" layer will be exported. Typically utilites belong in common.tsx, which exists next to projEntry.tsx.

Required Exports

getInitialLayers

  • Type: (player: Partial<PlayerData>) => GenericLayer[]

A function that is given a player save data object currently being loaded, and returns a list of layers that should be active for that player. If a project does not have dynamic layers, this should always return a list of all layers.

hasWon

  • Type: ComputedRef<boolean>

A computed ref whose value is true whenever the game is over.

For example, in a game where the goal is to have a resource reach 10:

export const hasWon = computed(() => Decimal.gte(resource.value, 10));
-

fixOldSave

  • Type: (oldVersion: string | undefined, player: Partial<PlayerData>) => void

This function will be run whenever a save is loaded that has a different version than the one in project info. It will be given the old version number, and the player save data object currently being loaded.

The purpose of this function is to perform any necessary migrations, such as capping a resource that accidentally inflated in a previous version of the project. By default it will do nothing.

- +

fixOldSave

This function will be run whenever a save is loaded that has a different version than the one in project info. It will be given the old version number, and the player save data object currently being loaded.

The purpose of this function is to perform any necessary migrations, such as capping a resource that accidentally inflated in a previous version of the project. By default it will do nothing.

+ diff --git a/guide/creating-your-project/project-info.html b/guide/creating-your-project/project-info.html index b7040337..0a7b3ac5 100644 --- a/guide/creating-your-project/project-info.html +++ b/guide/creating-your-project/project-info.html @@ -7,7 +7,7 @@ - + @@ -19,8 +19,8 @@ -
Skip to content
On this page

Project Info

This is a JSON file containing information that describes your project and configures parts of how Profectus should represent it.

It is stored at /src/data/projInfo.json.

Basic Config

title

  • Type: string
  • Default: Profectus

The name of the project, which will appear in the info tab and in the header, if enabled. The page title will also be set to this value.

id

  • Type: string
  • Default: ""

This is a unique ID used when saving player data. Changing this will effectively erase all save data for all players.

WARNING

This ID MUST be unique to your project, and should not be left as the default value. Otherwise your project may use the save data from another project and cause issues for both projects.

author

  • Type: string
  • Default: ""

The author of the project, which will appear in the info tab.

discordName

  • Type: string
  • Default: The Paper Pilot Community

The text to display for the discord server to point user's to. This will appear when hovering over the discord icon, inside the info tab, the game over screen, as well as the NaN detected screen.

By default, this is The Paper Pilot Community, which can act as a catch-all for any Profectus projects without their own servers. If you change the discord server with your own, The Paper Pilot Community will still display underneath the custom server when hovering over the discord icon and within the info tab. Those places will also contain a link to the Modding Tree discord server.

  • Type: string
  • Default: https://discord.gg/WzejVAx

The link for the discord server to point user's to. See discordName for more details.

Version Config

versionNumber

  • Type: string
  • Default: 0.0

The current version of the project loaded. If the player data was last saved in a different version of the project, fixOldSave will be run, so you can perform any save migrations necessary. This will also appear in the nav, the info tab, and the game over screen.

versionTitle

  • Type: string
  • Default: Initial Commit

The display name for the current version of the project loaded. This will also appear in the nav, the info tab, and the game over screen, unless set to an empty string.

Display Config

allowGoBack

  • Type: boolean
  • Default: true

Whether or not to allow tabs (besides the first) to display a "back" button to close them (and any other tabs to the right of them).

defaultShowSmall

  • Type: boolean
  • Default: false

Whether or not to allow resources to display small values (<.001). If false they'll just display as 0. Individual resources can also be configured to override this value.

defaultDecimalsShown

  • Type: number
  • Default: 2

Default precision to display numbers at when passed into format. Individual format calls can override this value, and resources can be configured with a custom precision as well.

useHeader

  • Type: boolean
  • Default: true

Whether or not to display the nav as a header at the top of the screen. If disabled, the nav will appear on the left side of the screen laid over the first tab.

  • Type: string | null
  • Default: null

A path to an image file to display as the logo of the app. If null, the title will be shown instead. This will appear in the nav when useHeader is true.

  • Type: string
  • Default: ""

A path to an image file to display as the logo of the app within the info tab. If left blank no logo will be shown.

initialTabs

  • Type: string[]
  • Default: ["main"]

The list of initial tabs to display on new saves. This value must have at least one element. Each element should be the ID of the layer to display in that tab.

Advanced Config

maxTickLength

  • Type: number
  • Default: 3600

The longest duration a single tick can be, in seconds. When calculating things like offline time, a single tick will be forced to be this amount or lower. This will make calculating offline time spread out across many ticks as necessary. The default value is 1 hour.

offlineLimit

  • Type: number
  • Default: 1

The max amount of time that can be stored as offline time, in hours.

enablePausing

  • Type: boolean
  • Default: true

Whether or not to allow the player to pause the game. Turning this off disables the toggle from the options menu as well as the NaN screen. Developers can still manually pause by just running player.devSpeed = 0 in console (or = 1 to resume).

- +
Skip to content
On this page

Project Info

This is a JSON file containing information that describes your project and configures parts of how Profectus should represent it.

It is stored at /src/data/projInfo.json.

Basic Config

title

  • Type: string
  • Default: Profectus

The name of the project, which will appear in the info tab and in the header, if enabled. The page title will also be set to this value.

id

  • Type: string
  • Default: ""

This is a unique ID used when saving player data. Changing this will effectively erase all save data for all players.

WARNING

This ID MUST be unique to your project, and should not be left as the default value. Otherwise your project may use the save data from another project and cause issues for both projects.

author

  • Type: string
  • Default: ""

The author of the project, which will appear in the info tab.

discordName

  • Type: string
  • Default: The Paper Pilot Community

The text to display for the discord server to point user's to. This will appear when hovering over the discord icon, inside the info tab, the game over screen, as well as the NaN detected screen.

By default, this is The Paper Pilot Community, which can act as a catch-all for any Profectus projects without their own servers. If you change the discord server with your own, The Paper Pilot Community will still display underneath the custom server when hovering over the discord icon and within the info tab. Those places will also contain a link to the Modding Tree discord server.

  • Type: string
  • Default: https://discord.gg/WzejVAx

The link for the discord server to point user's to. See discordName for more details.

Version Config

versionNumber

  • Type: string
  • Default: 0.0

The current version of the project loaded. If the player data was last saved in a different version of the project, fixOldSave will be run, so you can perform any save migrations necessary. This will also appear in the nav, the info tab, and the game over screen.

versionTitle

  • Type: string
  • Default: Initial Commit

The display name for the current version of the project loaded. This will also appear in the nav, the info tab, and the game over screen, unless set to an empty string.

Display Config

allowGoBack

  • Type: boolean
  • Default: true

Whether or not to allow tabs (besides the first) to display a "back" button to close them (and any other tabs to the right of them).

defaultShowSmall

  • Type: boolean
  • Default: false

Whether or not to allow resources to display small values (<.001). If false they'll just display as 0. Individual resources can also be configured to override this value.

defaultDecimalsShown

  • Type: number
  • Default: 2

Default precision to display numbers at when passed into format. Individual format calls can override this value, and resources can be configured with a custom precision as well.

useHeader

  • Type: boolean
  • Default: true

Whether or not to display the nav as a header at the top of the screen. If disabled, the nav will appear on the left side of the screen laid over the first tab.

  • Type: string | null
  • Default: null

A path to an image file to display as the logo of the app. If null, the title will be shown instead. This will appear in the nav when useHeader is true.

  • Type: string
  • Default: ""

A path to an image file to display as the logo of the app within the info tab. If left blank no logo will be shown.

initialTabs

  • Type: string[]
  • Default: ["main"]

The list of initial tabs to display on new saves. This value must have at least one element. Each element should be the ID of the layer to display in that tab.

Advanced Config

maxTickLength

  • Type: number
  • Default: 3600

The longest duration a single tick can be, in seconds. When calculating things like offline time, a single tick will be forced to be this amount or lower. This will make calculating offline time spread out across many ticks as necessary. The default value is 1 hour.

offlineLimit

  • Type: number
  • Default: 1

The max amount of time that can be stored as offline time, in hours.

enablePausing

  • Type: boolean
  • Default: true

Whether or not to allow the player to pause the game. Turning this off disables the toggle from the options menu as well as the NaN screen. Developers can still manually pause by just running player.devSpeed = 0 in console (or = 1 to resume).

+ diff --git a/guide/creating-your-project/themes.html b/guide/creating-your-project/themes.html index 34736c8e..e37fe224 100644 --- a/guide/creating-your-project/themes.html +++ b/guide/creating-your-project/themes.html @@ -7,7 +7,7 @@ - + @@ -19,8 +19,8 @@ -
Skip to content
On this page

Themes

Themes are objects that change how the project's interface should look. This is done mostly by changing the values of various CSS variables. You can look at the existing themes as a reference for the kind of values these CSS variables expect. They can also set various theme options that change how parts of the screen are laid out, which are described below.

They are stored in /src/data/themes.ts.

Modifying Themes

You can add a theme by adding a property to the Themes enum and then including the theme in the exported object. It's recommended to use the spread operator if you'd like to have a theme look like another, but override specific options / CSS variables.

Themes added in this way will be automatically included in the Themes dropdown in the Options tab. Removing themes from the enum and exported object will similarly hide them from the dropdown.

If you'd like to change which theme is the default, you may modify the initial player settings object in the /src/game/settings.ts file. Keep in mind you'll also want to change it in the hardResetSettings function in the same file.

Theme Options

floatingTabs

  • Type: boolean

Toggles whether to display tab buttons in a tab list, similar to how a browser displays tabs; or to display them as floating buttons, similar to how TMT displays buttons.

mergeAdjacent

  • Type: boolean

If true, elements in a row or column will have their margins removed and border radiuses set to 0 between elements. This will cause the elements to appear as segments in a single object.

Currently, this can only merge in a single dimension. Rows of columns or columns of rows will not merge into a single rectangular object.

- +
Skip to content
On this page

Themes

Themes are objects that change how the project's interface should look. This is done mostly by changing the values of various CSS variables. You can look at the existing themes as a reference for the kind of values these CSS variables expect. They can also set various theme options that change how parts of the screen are laid out, which are described below.

They are stored in /src/data/themes.ts.

Modifying Themes

You can add a theme by adding a property to the Themes enum and then including the theme in the exported object. It's recommended to use the spread operator if you'd like to have a theme look like another, but override specific options / CSS variables.

Themes added in this way will be automatically included in the Themes dropdown in the Options tab. Removing themes from the enum and exported object will similarly hide them from the dropdown.

If you'd like to change which theme is the default, you may modify the initial player settings object in the /src/game/settings.ts file. Keep in mind you'll also want to change it in the hardResetSettings function in the same file.

Theme Options

floatingTabs

  • Type: boolean

Toggles whether to display tab buttons in a tab list, similar to how a browser displays tabs; or to display them as floating buttons, similar to how TMT displays buttons.

mergeAdjacent

  • Type: boolean

If true, elements in a row or column will have their margins removed and border radiuses set to 0 between elements. This will cause the elements to appear as segments in a single object.

Currently, this can only merge in a single dimension. Rows of columns or columns of rows will not merge into a single rectangular object.

+ diff --git a/guide/creating-your-project/utils.html b/guide/creating-your-project/utils.html index fea86fa6..2684c46b 100644 --- a/guide/creating-your-project/utils.html +++ b/guide/creating-your-project/utils.html @@ -7,7 +7,7 @@ - + @@ -19,8 +19,8 @@ -
Skip to content

Utilities

There are often concepts that aren't inherent to a single feature, but rather work with joining different features together. For example, a reset clickable that activates a conversion and resets a tree, which happens to be a common use case but isn't inherent to clickables, conversions, or trees.

These are perfect situations for utilities, and so to encourage creators to learn to identify and take advantage of these situations, a file called src/data/common.tsx has been created to demo some of the more common utility functions a project might use. Adding new utilities to this file is encouraged, as is creating utils in general. It also works as a good stepping stone to creating your own features.

- +
Skip to content

Utilities

There are often concepts that aren't inherent to a single feature, but rather work with joining different features together. For example, a reset clickable that activates a conversion and resets a tree, which happens to be a common use case but isn't inherent to clickables, conversions, or trees.

These are perfect situations for utilities, and so to encourage creators to learn to identify and take advantage of these situations, a file called src/data/common.tsx has been created to demo some of the more common utility functions a project might use. Adding new utilities to this file is encouraged, as is creating utils in general. It also works as a good stepping stone to creating your own features.

+ diff --git a/guide/getting-started/examples.html b/guide/getting-started/examples.html index 3c6ea067..d17f3fe2 100644 --- a/guide/getting-started/examples.html +++ b/guide/getting-started/examples.html @@ -7,7 +7,7 @@ - + @@ -19,8 +19,8 @@ -
Skip to content
On this page

Example Projects

TMT-Demo

View Source | View Project

A project loosely based off the Demo project for TMT. Uses most of the different features of Profectus, but doesn't have any real gameplay.

- +
Skip to content
On this page

Example Projects

TMT-Demo

View Source | View Project

A project loosely based off the Demo project for TMT. Uses most of the different features of Profectus, but doesn't have any real gameplay.

+ diff --git a/guide/getting-started/setup.html b/guide/getting-started/setup.html index 93e8a24e..bc980af0 100644 --- a/guide/getting-started/setup.html +++ b/guide/getting-started/setup.html @@ -7,7 +7,7 @@ - + @@ -19,8 +19,8 @@ -
Skip to content
On this page

Setting Up

Profectus requires a node development environment in order to work on a project. If you are comfortable with the command line, it is recommended to use a local development environment.

Local Development

You will require the following tools for local development:

Create a new project from the Profectus repository via the "Use this template" button. You can then copy the link for the repository to clone it locally.

INFO

Since the repository is a template repository, you can easily create multiple projects from one repository. However, it does make updating an existing project to a newer version of Profectus more difficult.

It's recommended to create a new git branch for development, so you can push your changes without it affecting the live build. This allows you to continue working with smaller commits, and only release new versions when you're actually ready to. The github workflow will automatically rebuild the page whenever you push to the main branch.

The next step is to install Profectus' dependencies. This is as simple as running npm install.

You can now run npm run serve to start a local server that will host your project so you can work on it. As you change files the site will automatically reload them.

Also, you might consider following the steps to update Profectus before you start working, as it'll make updating in the future easier without needing to worry about unrelated histories.

Deploying

If you're using git, deploying is as easy as pushing your changes to the main branch. In a couple minutes the site will be updated fully automatically. If you'd like to see progress on it, or look at any errors that happened, you can do so from the actions tab on your repository.

actions button

Before github knows to actually host the generated site, you'll have to enable github pages in the repo settings. This just means selecting the branch to use - gh-pages. You will only need to perform this step once. This will automatically start another github action to deploy the website.

github pages

Once the action completes, your project should be available at https://<YOUR_GITHUB_USERNAME>.github.io/<YOUR_REPO_NAME>/. For example, the TMT Demo project hosted at https://github.com/profectus-engine/TMT-Demo is available at https://profectus-engine.github.io/TMT-Demo/.

Visual Studio Code Setup

If you don't already have a preferred IDE, Profectus is currently developed in Visual Studio Code and is known to work well with that IDE in particular.

Recommendations:

  • Use Take Over Mode for proper type analysis
  • Turn off .value autocomplete by running the Preferences: Open Settings command and setting volar.autoCompleteRefs to false
  • Install the Vitest VS Code extension for running and debugging unit tests (if you plan on working on the engine itself)

Replit

As an alternative to local development, you may use replit, which will automatically set up your development environment for you and also host your project itself.

However, on the free plan you will be limited by the amount of resources you can use, and the program will need to start up occasionally.

To create a Profectus project on replit, all you have to do is click this button:

Run on Repl.it

You can then start the developing by clicking the "Run" button at the top of the screen. This will also make the project run publicly, so you could consider it as automatically deployed. This does mean you cannot have a separate development environment from your production environment, however.

Glitch

Glitch is a site similar to replit, with much the same pros and cons. To create a projectus project on glitch, select "New Project", "Import from GitHub", and then type in profectus-engine/Profectus. The new project will be created and should be automatically configured and ready to go.

- +
Skip to content
On this page

Setting Up

Profectus requires a node development environment in order to work on a project. If you are comfortable with the command line, it is recommended to use a local development environment.

Local Development

You will require the following tools for local development:

Create a new project from the Profectus repository via the "Use this template" button. You can then copy the link for the repository to clone it locally.

INFO

Since the repository is a template repository, you can easily create multiple projects from one repository. However, it does make updating an existing project to a newer version of Profectus more difficult. Consider updating Profectus before you start developing, to avoid the issue with unrelated histories.

It's recommended to create a new git branch for development, so you can push your changes without it affecting the live build. This allows you to continue working with smaller commits, and only release new versions when you're actually ready to. The github workflow will automatically rebuild the page whenever you push to the main branch.

The next step is to install Profectus' dependencies. This is as simple as running npm install.

You can now run npm run serve to start a local server that will host your project so you can work on it. As you change files the site will automatically reload them.

Also, you might consider following the steps to update Profectus before you start working, as it'll make updating in the future easier without needing to worry about unrelated histories.

Deploying

If you're using git, deploying is as easy as pushing your changes to the main branch. In a couple minutes the site will be updated fully automatically. If you'd like to see progress on it, or look at any errors that happened, you can do so from the actions tab on your repository.

actions button

Before github knows to actually host the generated site, you'll have to enable github pages in the repo settings. This just means selecting the branch to use - gh-pages. You will only need to perform this step once. This will automatically start another github action to deploy the website.

github pages

Once the action completes, your project should be available at https://<YOUR_GITHUB_USERNAME>.github.io/<YOUR_REPO_NAME>/. For example, the TMT Demo project hosted at https://github.com/profectus-engine/TMT-Demo is available at https://profectus-engine.github.io/TMT-Demo/.

Visual Studio Code Setup

If you don't already have a preferred IDE, Profectus is currently developed in Visual Studio Code and is known to work well with that IDE in particular.

Recommendations:

  • Use Take Over Mode for proper type analysis
  • Turn off .value autocomplete by running the Preferences: Open Settings command and setting volar.autoCompleteRefs to false
  • Install the Vitest VS Code extension for running and debugging unit tests (if you plan on working on the engine itself)

Replit

As an alternative to local development, you may use replit, which will automatically set up your development environment for you and also host your project itself.

However, on the free plan you will be limited by the amount of resources you can use, and the program will need to start up occasionally.

To create a Profectus project on replit, all you have to do is click this button:

Run on Repl.it

You can then start the developing by clicking the "Run" button at the top of the screen. This will also make the project run publicly, so you could consider it as automatically deployed. This does mean you cannot have a separate development environment from your production environment, however.

Glitch

Glitch is a site similar to replit, with much the same pros and cons. To create a projectus project on glitch, select "New Project", "Import from GitHub", and then type in profectus-engine/Profectus. The new project will be created and should be automatically configured and ready to go.

+ diff --git a/guide/getting-started/updating.html b/guide/getting-started/updating.html index 7844ac2c..0903901c 100644 --- a/guide/getting-started/updating.html +++ b/guide/getting-started/updating.html @@ -7,7 +7,7 @@ - + @@ -22,8 +22,8 @@
Skip to content
On this page

Updating Profectus

Github

Due to Profectus being a template repository, your projects do not share a git history with Profectus. In order to update changes, you will need to run the following:

git remote add template https://github.com/profectus-engine/Profectus
 git fetch --all
 git merge template/main --allow-unrelated-histories
-

The first command only has to be performed once. The third command may require you to merge conflicts between code both you and Profectus have changed - however, due to the modularity of Profectus, this should be fairly rare. Unfortunately, due to the unrelated histories the first time you do this every change will be marked as a conflict, and you'll need to accept each one.

Replit

The sidebar has a tab labelled "Version Control", which you can use to merge all changes made to Profectus into your project. Unfortunately, replit does not have a merge tool so this process may irrecoverably erase changes you've made - I'd recommend making a backup first.

Glitch

Unfortunately glitch does not provide any method by which to update a project from a github repository. If you've only changed things in the data folder you may consider creating a new project, importing the current version of Profectus, and then placing your data folder in the new project.

- +

The first command only has to be performed once. The third command may require you to merge conflicts between code both you and Profectus have changed - however, due to the modularity of Profectus, this should be fairly rare. Unfortunately, due to the unrelated histories the first time you do this every change will be marked as a conflict, and you'll need to accept each one.

Replit

The sidebar has a tab labelled "Version Control", which you can use to merge all changes made to Profectus into your project. Unfortunately, replit does not have a merge tool so this process may irrecoverably erase changes you've made - I'd recommend making a backup first.

Glitch

Unfortunately glitch does not provide any method by which to update a project from a github repository. If you've only changed things in the data folder you may consider creating a new project, importing the current version of Profectus, and then placing your data folder in the new project.

+ diff --git a/guide/important-concepts/coercable.html b/guide/important-concepts/coercable.html index 1deb47a4..28144dd2 100644 --- a/guide/important-concepts/coercable.html +++ b/guide/important-concepts/coercable.html @@ -7,7 +7,7 @@ - + @@ -28,8 +28,8 @@ </> )), } -

Components

This one might be the most obvious, but you can also just give it a Vue component to display outright. Keep in mind it will not be passed any props, so it should not depend on any. You can read more about creating Vue components on Components Basics.

- +

Components

This one might be the most obvious, but you can also just give it a Vue component to display outright. Keep in mind it will not be passed any props, so it should not depend on any. You can read more about creating Vue components on Components Basics.

+ diff --git a/guide/important-concepts/features.html b/guide/important-concepts/features.html index 9236c92f..f8325035 100644 --- a/guide/important-concepts/features.html +++ b/guide/important-concepts/features.html @@ -7,7 +7,7 @@ - + @@ -29,8 +29,8 @@ }));

The result will be a lazy proxy of the feature being created. The feature can then be used throughout the rest of the layer. The main thing to keep in mind when creating features is that they should typically be included in the layer object that gets returned. If a feature has any persistent refs they must be included or else they will not have their values saved and loaded correctly.

While the structure of layers is intentionally left up to the creator, it is recommended to avoid storing them in arrays. If you ever remove an upgrade from an array, or add an upgrade in between others, then it will interfere with the save data of existing users. You can manually fix these issues in fixOldSave, but it's recommended to avoid the error entirely.

Since usually you want to access a specific feature, storing them in an object is much more reliable and makes the code easier to read. For things like checking number of upgrades bought, for example, you can still use Object.values to get an array of the objects instead.

Example

const upgrades = { addGainUpgrade, gainMultUpgrade, upgMultUpgrade };
 const numUpgrades = computed(() => Object.values(upgrades).length);
-

Tree Shaking

Since Profectus takes advantage of tree shaking, and type of feature that is not used will not be included in the output of the project. That means users have less code to download, a slight performance boost, and you don't need to worry about feature type-specific settings appearing (such as whether to show maxed challenges).

It should be noted that a couple features depend on each other, such as Buyables depending on Clickables. That means you may see features included in the output despite not directly using them. Some features, such as Links and Tooltips, are used by the engine itself and will always be included in the output.

- +

Tree Shaking

Since Profectus takes advantage of tree shaking, and type of feature that is not used will not be included in the output of the project. That means users have less code to download, a slight performance boost, and you don't need to worry about feature type-specific settings appearing (such as whether to show maxed challenges).

It should be noted that a couple features depend on each other, such as Buyables depending on Clickables. That means you may see features included in the output despite not directly using them. Some features, such as Links and Tooltips, are used by the engine itself and will always be included in the output.

+ diff --git a/guide/important-concepts/layers.html b/guide/important-concepts/layers.html index 26ba8e25..6ea70cf0 100644 --- a/guide/important-concepts/layers.html +++ b/guide/important-concepts/layers.html @@ -7,7 +7,7 @@ - + @@ -19,8 +19,8 @@ -
Skip to content
On this page

Layers

Profectus content is organized into units called "Layers". When displaying content to the user, the screen will be divided into several tabs that each display the content of a layer. These layers are stored in /src/data/layers.

Each layer is ultimately a collection of different features, and a display function. While there are a couple reserved properties for layers, most of its structure is fully up to the creator.

Layers can be dynamically added or removed at any time, which also allows for effectively disabling or enabling content based on arbitrary conditions. Just make sure getInitialLayers can process the player save data object and determine which layers should be currently active.

Lazy Proxies

Layers (and features) are not actually created immediately. Instead, their options are gotten through a function which is then run the first time something inside the layer is accessed. This is a concept called lazy evaluation, which is also used for things like computed, and allows for features to reference each other without worrying about cyclical dependencies.

- +
Skip to content
On this page

Layers

Profectus content is organized into units called "Layers". When displaying content to the user, the screen will be divided into several tabs that each display the content of a layer. These layers are stored in /src/data/layers.

Each layer is ultimately a collection of different features, and a display function. While there are a couple reserved properties for layers, most of its structure is fully up to the creator.

Layers can be dynamically added or removed at any time, which also allows for effectively disabling or enabling content based on arbitrary conditions. Just make sure getInitialLayers can process the player save data object and determine which layers should be currently active.

Lazy Proxies

Layers (and features) are not actually created immediately. Instead, their options are gotten through a function which is then run the first time something inside the layer is accessed. This is a concept called lazy evaluation, which is also used for things like computed, and allows for features to reference each other without worrying about cyclical dependencies.

+ diff --git a/guide/important-concepts/persistence.html b/guide/important-concepts/persistence.html index 2d8d33ea..9093f238 100644 --- a/guide/important-concepts/persistence.html +++ b/guide/important-concepts/persistence.html @@ -7,7 +7,7 @@ - + @@ -19,8 +19,8 @@ -
Skip to content

Persistence

Persistence refers to data that is saved, so that it persists when the user closes the tab and opens it again in the future.

In Profectus, this is handled by creating "persistent refs", which act like refs but whose value is stored in an object that gets saved to localStorage. Other than that you can treat them like any other ref - when adding the layer, any persistent refs will automatically have their values updated to the ones saved in localStorage. If there isn't a saved value, it'll use the default value passed to the persistent ref constructor.

Many features in Profectus, such as upgrades, milestones, and challenges, internally have persistent refs to save things like whether the upgrade has been purchased, the milestone achieved, or the challenge completed. Creators can also create their own custom persistent refs to store any arbitrary (but serializable) data they need - that means Numbers (including big numbers), strings, booleans, or objects containing only serializable values. Another notable function is the resource constructor. If you pass a default value into its contructor, it will automatically create a persistent ref for that resource. If you pass in a ref, it will NOT make the ref persistent.

It's important for saving and loading these properties for these refs to be in a well known location. This is implemented based on the location of the persistent ref within a layer. That means its important that all persistent refs are located within the object returned by the createLayer options function. If a persistent ref is not within that object, it will NOT be saved and loaded - regardless of whether its a persistent ref within a feature, one you manually created, or otherwise.

Additionally, this structure should typically remain consistent between project versions. If a value is in a new location, it will not load the value from localStorage correctly. This is exacerbated if two values swap places, such as when an array is re-ordered. In the event a creator changes this structure anyways, the fixOldSave function can be used to migrate the old player save data to the new structure expected by the current version of the project.

- +
Skip to content

Persistence

Persistence refers to data that is saved, so that it persists when the user closes the tab and opens it again in the future.

In Profectus, this is handled by creating "persistent refs", which act like refs but whose value is stored in an object that gets saved to localStorage. Other than that you can treat them like any other ref - when adding the layer, any persistent refs will automatically have their values updated to the ones saved in localStorage. If there isn't a saved value, it'll use the default value passed to the persistent ref constructor.

Many features in Profectus, such as upgrades, milestones, and challenges, internally have persistent refs to save things like whether the upgrade has been purchased, the milestone achieved, or the challenge completed. Creators can also create their own custom persistent refs to store any arbitrary (but serializable) data they need - that means Numbers (including big numbers), strings, booleans, or objects containing only serializable values. Another notable function is the resource constructor. If you pass a default value into its contructor, it will automatically create a persistent ref for that resource. If you pass in a ref, it will NOT make the ref persistent.

It's important for saving and loading these properties for these refs to be in a well known location. This is implemented based on the location of the persistent ref within a layer. That means its important that all persistent refs are located within the object returned by the createLayer options function. If a persistent ref is not within that object, it will NOT be saved and loaded - regardless of whether its a persistent ref within a feature, one you manually created, or otherwise.

Additionally, this structure should typically remain consistent between project versions. If a value is in a new location, it will not load the value from localStorage correctly. This is exacerbated if two values swap places, such as when an array is re-ordered. In the event a creator changes this structure anyways, the fixOldSave function can be used to migrate the old player save data to the new structure expected by the current version of the project.

+ diff --git a/guide/important-concepts/reactivity.html b/guide/important-concepts/reactivity.html index 417c443f..cf0a34bd 100644 --- a/guide/important-concepts/reactivity.html +++ b/guide/important-concepts/reactivity.html @@ -7,7 +7,7 @@ - + @@ -19,8 +19,8 @@ -
Skip to content
On this page

Reactivity

Profectus takes large advantage of Vue's reactivity system. It's recommended to read up on how refs and computed refs work. Ultimately this means that sometimes you'll need to type .value to get the actual value of something, but also you are able to pass things around by reference instead of by value. Indeed, it is recommended to only unwrap the actual value when you actually need it. .value is guaranteed to be correct and up to date only on the exact moment it is accessed.

With a proper IDE, such as Visual Studio Code, you should be able to see whether or not something is a ref or not from type hints. If in doubt, you can always wrap the property in an unref call.

Vue's reactivity is probably the "quirkiest" part of Profectus, and not even the documentation makes all of those quirks clear. It is recommend to read this thread of common misconceptions around Vue reactivity.

Computable

Most properties on features will accept Computable values. Computable values can either be a raw value, a ref to the value, or a function that returns the value. In the lattermost case it will be wrapped in computed, turning it into a ref. The feature type will handle it being a ref or a raw value by using unref when accessing those values. With type hints, your IDE should correctly identify these values as refs or raw values so you can treat them as the types they actually are.

Because functions are automatically wrapped in computed for many properties, it might be expected to happen to custom properties you add to a feature that isn't defined by the feature type. These functions will not be wrapped, and if you want it cached you should wrap it in a computed yourself. This does, however, allow you to include custom methods on a feature without worry.

- +
Skip to content
On this page

Reactivity

Profectus takes large advantage of Vue's reactivity system. It's recommended to read up on how refs and computed refs work. Ultimately this means that sometimes you'll need to type .value to get the actual value of something, but also you are able to pass things around by reference instead of by value. Indeed, it is recommended to only unwrap the actual value when you actually need it. .value is guaranteed to be correct and up to date only on the exact moment it is accessed.

With a proper IDE, such as Visual Studio Code, you should be able to see whether or not something is a ref or not from type hints. If in doubt, you can always wrap the property in an unref call.

Vue's reactivity is probably the "quirkiest" part of Profectus, and not even the documentation makes all of those quirks clear. It is recommend to read this thread of common misconceptions around Vue reactivity.

Computable

Most properties on features will accept Computable values. Computable values can either be a raw value, a ref to the value, or a function that returns the value. In the lattermost case it will be wrapped in computed, turning it into a ref. The feature type will handle it being a ref or a raw value by using unref when accessing those values. With type hints, your IDE should correctly identify these values as refs or raw values so you can treat them as the types they actually are.

Because functions are automatically wrapped in computed for many properties, it might be expected to happen to custom properties you add to a feature that isn't defined by the feature type. These functions will not be wrapped, and if you want it cached you should wrap it in a computed yourself. This does, however, allow you to include custom methods on a feature without worry.

+ diff --git a/guide/index.html b/guide/index.html index b9021f13..02b11182 100644 --- a/guide/index.html +++ b/guide/index.html @@ -7,7 +7,7 @@ - + @@ -19,8 +19,8 @@ -
Skip to content
On this page

Introduction

Profectus is a web-based game engine. You can write your content using many built in features, write your own features, and build up complex gameplay quickly and easily.

The purpose of creating profectus was to create an easy to use engine that does not create a ceiling for a programmer's personal growth. This engine will grow in complexity with you, empowering you to create increasingly complex designs and mechanics.

Should you use Profectus?

While this engine is intended to make game development (and web app development) easier, it still requires you to be comfortable with programming in general and javascript in particular. Fortunately, that is a solvable problem.

If you've never used Javascript before, learn-js.org is a good resource for learning the important concepts. If you'd like a more thorough lesson on all the ins and outs of web development, javascript.info and MDN's tutorials should have you covered. MDN is also a great resource to use as a reference - for example, if you want to know more about something and you google it, there'll typically be a MDN link that'll explain it thoroughly.

Beyond the basics, Profectus uses a modern web development pipeline, using tools like node, typescript, and JSX. While most of it should be relatively easy to pick up through context, if this becomes too complicated you may be interested in The Modding Tree, a predecessor of Profectus that uses plain old javascript.

Alternative Engines

There are many popular game engines out there, such as GameMaker Studio 2, Unity3D, Unreal Engine 4, and Godot, that are all general purpose and also more useful if you're planning on going into a career in game development. These are all more mature and robust game engines compared to Profectus, and are used by actual game development studios.

Profectus, on the other hand, is a very opinionated engine that is better at specific types of projects. Where the above engines will require you to design and create your own interfaces, menus, save management systems, etc. Profectus will include those out of the box. Profectus will also output games that run natively in the browser, and will typically be easier for players to play than traditional engines.

If you are not interested in programming but still want to get into game development, the above engines also all support "visual programming", which may be more amenable to you. Each engine will have varying levels of support, and of course with varying complexities, but ultimately any of these will help you learn the concepts of programming and game development, and all of them also offer traditional programming for when you think you're ready.

Design Philosophies

While absolute purity is impossible, design decisions have been and will continue to be made using these principles in mind.

  • An engine should be intuitive, and code readable without context
  • An engine should not constrain a creator
  • An engine should be consistent
  • An engine should be extensible, and those extensions sharable
  • An engine should be efficient
  • An engine should report issues early and thoroughly
  • Passing by reference is one honking great idea -- let's do more of that!
- +
Skip to content
On this page

Introduction

Profectus is a web-based game engine. You can write your content using many built in features, write your own features, and build up complex gameplay quickly and easily.

The purpose of creating profectus was to create an easy to use engine that does not create a ceiling for a programmer's personal growth. This engine will grow in complexity with you, empowering you to create increasingly complex designs and mechanics.

Should you use Profectus?

While this engine is intended to make game development (and web app development) easier, it still requires you to be comfortable with programming in general and javascript in particular. Fortunately, that is a solvable problem.

If you've never used Javascript before, learn-js.org is a good resource for learning the important concepts. If you'd like a more thorough lesson on all the ins and outs of web development, javascript.info and MDN's tutorials should have you covered. MDN is also a great resource to use as a reference - for example, if you want to know more about something and you google it, there'll typically be a MDN link that'll explain it thoroughly.

Beyond the basics, Profectus uses a modern web development pipeline, using tools like node, typescript, and JSX. While most of it should be relatively easy to pick up through context, if this becomes too complicated you may be interested in The Modding Tree, a predecessor of Profectus that uses plain old javascript.

Alternative Engines

There are many popular game engines out there, such as GameMaker Studio 2, Unity3D, Unreal Engine 4, and Godot, that are all general purpose and also more useful if you're planning on going into a career in game development. These are all more mature and robust game engines compared to Profectus, and are used by actual game development studios.

Profectus, on the other hand, is a very opinionated engine that is better at specific types of projects. Where the above engines will require you to design and create your own interfaces, menus, save management systems, etc. Profectus will include those out of the box. Profectus will also output games that run natively in the browser, and will typically be easier for players to play than traditional engines.

If you are not interested in programming but still want to get into game development, the above engines also all support "visual programming", which may be more amenable to you. Each engine will have varying levels of support, and of course with varying complexities, but ultimately any of these will help you learn the concepts of programming and game development, and all of them also offer traditional programming for when you think you're ready.

Design Philosophies

While absolute purity is impossible, design decisions have been and will continue to be made using these principles in mind.

  • An engine should be intuitive, and code readable without context
  • An engine should not constrain a creator
  • An engine should be consistent
  • An engine should be extensible, and those extensions sharable
  • An engine should be efficient
  • An engine should report issues early and thoroughly
  • Passing by reference is one honking great idea -- let's do more of that!
+ diff --git a/guide/recipes/save-progress.html b/guide/recipes/save-progress.html index 7a320445..be47f804 100644 --- a/guide/recipes/save-progress.html +++ b/guide/recipes/save-progress.html @@ -7,7 +7,7 @@ - + @@ -43,8 +43,8 @@ <div v-if="currentTime">Last played {{ dateFormat.format(currentTime) }}</div> ++ <div v-if="progressDisplay"><component :is="progressDisplay" /></div> </div> -

And there you have it! Your dev environment should now show the component in all its glory in the saves manager.

- +

And there you have it! Your dev environment should now show the component in all its glory in the saves manager.

+ diff --git a/hashmap.json b/hashmap.json index 620ec402..0c76ed9b 100644 --- a/hashmap.json +++ b/hashmap.json @@ -1 +1 @@ -{"api_classes_lib_break_eternity.default.md":"ec3bd615","api_components_contextcomponent.md":"d8857c87","api_components_infocomponent.md":"a3ada40e","api_components_layercomponent.md":"719b2b23","api_components_marknodecomponent.md":"9ff2021c","api_components_modalcomponent.md":"c6af37d6","api_components_nodecomponent.md":"e6b27589","api_components_savecomponent.md":"377941ea","api_components_fields_dangerbuttoncomponent.md":"9c7ae321","api_components_fields_feedbackbuttoncomponent.md":"fd493d2b","api_components_fields_selectcomponent.md":"b358625d","api_components_fields_slidercomponent.md":"626bc315","api_components_fields_textcomponent.md":"8e30567c","api_components_fields_togglecomponent.md":"7f5f7bd8","api_components_layout_collapsiblecomponent.md":"d360a794","api_components_layout_columncomponent.md":"a60adb9c","api_components_layout_rowcomponent.md":"3996636f","api_components_layout_spacercomponent.md":"4b7102a5","api_components_layout_stickycomponent.md":"7b034b7f","api_components_layout_verticalrulecomponent.md":"a5a98edf","api_components_math_floorcomponent.md":"b5ec3a74","api_components_math_sqrtcomponent.md":"d1a98a8b","api_enums_data_themes.themes.md":"ce1616c6","api_enums_features_boards_board.progressdisplay.md":"741a7ff2","api_enums_features_boards_board.shape.md":"278f2ce8","api_enums_features_feature.visibility.md":"9a5ea101","api_enums_features_milestones_milestone.milestonedisplay.md":"5e0f1cc7","api_enums_util_common.direction.md":"1605449c","api_interfaces_data_common.layertreenodeoptions.md":"d6d4781f","api_interfaces_data_common.resetbuttonoptions.md":"04fd9e95","api_interfaces_data_common.section.md":"312dd836","api_interfaces_data_themes.theme.md":"88454cdb","api_interfaces_data_themes.themevars.md":"6cdbb155","api_interfaces_features_achievements_achievement.achievementoptions.md":"91ab9a56","api_interfaces_features_achievements_achievement.baseachievement.md":"97b4cefa","api_interfaces_features_bars_bar.baroptions.md":"bc5ba27a","api_interfaces_features_bars_bar.basebar.md":"551f907e","api_interfaces_features_boards_board.baseboard.md":"05df971a","api_interfaces_features_boards_board.baseboardnodeaction.md":"5db9b79b","api_interfaces_features_boards_board.basenodetype.md":"9bcb1e02","api_interfaces_features_boards_board.boardnode.md":"0760e1b2","api_interfaces_features_boards_board.boardnodeactionoptions.md":"503ade87","api_interfaces_features_boards_board.boardnodelink.md":"a8c6a80b","api_interfaces_features_boards_board.boardoptions.md":"9688b36d","api_interfaces_features_boards_board.nodelabel.md":"4548f176","api_interfaces_features_boards_board.nodetypeoptions.md":"d581f918","api_interfaces_features_buyable.basebuyable.md":"a812cacf","api_interfaces_features_buyable.buyableoptions.md":"2acf2a52","api_interfaces_features_challenges_challenge.basechallenge.md":"21a456dd","api_interfaces_features_challenges_challenge.challengeoptions.md":"61546b34","api_interfaces_features_clickables_clickable.baseclickable.md":"1cd935c2","api_interfaces_features_clickables_clickable.clickableoptions.md":"013fd1c2","api_interfaces_features_conversion.baseconversion.md":"5e58fbbf","api_interfaces_features_conversion.conversionoptions.md":"4a125d3b","api_interfaces_features_conversion.scalingfunction.md":"2faa9291","api_interfaces_features_grids_grid.basegrid.md":"f7e5c5c3","api_interfaces_features_grids_grid.gridcell.md":"7b871a61","api_interfaces_features_grids_grid.gridoptions.md":"dcb941e1","api_interfaces_features_hotkey.basehotkey.md":"0f08b51a","api_interfaces_features_hotkey.hotkeyoptions.md":"8549f95c","api_interfaces_features_infoboxes_infobox.baseinfobox.md":"8bae4eb5","api_interfaces_features_infoboxes_infobox.infoboxoptions.md":"777e2db0","api_interfaces_features_links_links.baselinks.md":"d485d3cd","api_interfaces_features_links_links.link.md":"bdb55cf8","api_interfaces_features_links_links.linksoptions.md":"97ef5a90","api_interfaces_features_milestones_milestone.basemilestone.md":"b538fc47","api_interfaces_features_milestones_milestone.milestoneoptions.md":"ae94a7f4","api_interfaces_features_particles_particles.baseparticles.md":"0d140c8a","api_interfaces_features_particles_particles.particlesoptions.md":"71d2687b","api_interfaces_features_reset.basereset.md":"e9ffbb9f","api_interfaces_features_reset.resetoptions.md":"880f8f7d","api_interfaces_features_resources_resource.resource.md":"1517bf4f","api_interfaces_features_tabs_tab.basetab.md":"8ec58b5d","api_interfaces_features_tabs_tab.taboptions.md":"0bc1397c","api_interfaces_features_tabs_tabfamily.basetabbutton.md":"12b814da","api_interfaces_features_tabs_tabfamily.basetabfamily.md":"f76b48b6","api_interfaces_features_tabs_tabfamily.tabbuttonoptions.md":"9a953b72","api_interfaces_features_tabs_tabfamily.tabfamilyoptions.md":"956aba14","api_interfaces_features_tooltips_tooltip.basetooltip.md":"eddedb22","api_interfaces_features_tooltips_tooltip.tooltipoptions.md":"14a74fe8","api_interfaces_features_trees_tree.basetree.md":"86afbd2b","api_interfaces_features_trees_tree.basetreenode.md":"7bcb5592","api_interfaces_features_trees_tree.treebranch.md":"ab174cac","api_interfaces_features_trees_tree.treenodeoptions.md":"f652f612","api_interfaces_features_trees_tree.treeoptions.md":"ce676b41","api_interfaces_features_upgrades_upgrade.baseupgrade.md":"b77583e0","api_interfaces_features_upgrades_upgrade.upgradeoptions.md":"7c69ab8f","api_interfaces_game_events.globalevents.md":"2416a194","api_interfaces_game_layers.baselayer.md":"57810f96","api_interfaces_game_layers.featurenode.md":"112d1569","api_interfaces_game_layers.layerevents.md":"9623ae3c","api_interfaces_game_layers.layeroptions.md":"01801654","api_interfaces_game_layers.position.md":"8591021a","api_interfaces_game_modifiers.modifier.md":"ad1c4779","api_interfaces_game_player.playerdata.md":"f53c5c0b","api_interfaces_game_settings.settings.md":"e8f40252","api_interfaces_game_state.transient.md":"5c4227fb","api_interfaces_lib_pwa-register.registerswoptions.md":"f467fe2f","api_modules_data_common.md":"a26be679","api_modules_data_projentry.md":"cea38379","api_modules_data_themes.md":"ad6353dc","api_modules_features_achievements_achievementcomponent.md":"6d787eea","api_modules_features_achievements_achievement.md":"c1fa5c48","api_modules_features_bars_barcomponent.md":"5e7717f8","api_modules_features_bars_bar.md":"6b70aa7c","api_modules_features_boards_boardcomponent.md":"7da59571","api_modules_features_boards_boardlinkcomponent.md":"9e5467a6","api_modules_features_boards_boardnodecomponent.md":"a7b1dd7e","api_modules_features_boards_board.md":"298d230b","api_modules_features_buyable.md":"762147f7","api_modules_features_challenges_challengecomponent.md":"846d8b8e","api_modules_features_challenges_challenge.md":"4dd62d8c","api_modules_features_clickables_clickablecomponent.md":"8a74f64d","api_modules_features_clickables_clickable.md":"7c2258f9","api_modules_features_conversion.md":"e2d6443b","api_modules_features_feature.md":"fd956c2b","api_modules_features_grids_gridcellcomponent.md":"9b34a274","api_modules_features_grids_gridcomponent.md":"ce17cbe7","api_modules_features_grids_grid.md":"e788e024","api_modules_features_hotkey.md":"85ede901","api_modules_features_infoboxes_infoboxcomponent.md":"63ba9291","api_modules_features_infoboxes_infobox.md":"91707f7b","api_modules_features_links_linkcomponent.md":"11b0d97e","api_modules_features_links_linkscomponent.md":"2c32c4b5","api_modules_features_links_links.md":"0ad03241","api_modules_features_milestones_milestonecomponent.md":"a452ab04","api_modules_features_milestones_milestone.md":"b631a34c","api_modules_features_particles_particlescomponent.md":"94c44f12","api_modules_features_particles_particles.md":"8df0c711","api_modules_features_reset.md":"56a69ef7","api_modules_features_resources_maindisplaycomponent.md":"2ee12087","api_modules_features_resources_resourcecomponent.md":"e37af5e2","api_modules_features_resources_resource.md":"a1e39127","api_modules_features_tabs_tabbuttoncomponent.md":"244fc06e","api_modules_features_tabs_tabcomponent.md":"923254b8","api_modules_features_tabs_tabfamilycomponent.md":"424df151","api_modules_features_tabs_tab.md":"3563d375","api_modules_features_tabs_tabfamily.md":"79dcc0db","api_modules_features_tooltips_tooltipcomponent.md":"09a578eb","api_modules_features_tooltips_tooltip.md":"c4c675ca","api_modules_features_trees_treecomponent.md":"55dce179","api_modules_features_trees_treenodecomponent.md":"1158642d","api_modules_features_trees_tree.md":"d0def30b","api_modules_features_upgrades_upgradecomponent.md":"c26dec10","api_modules_features_upgrades_upgrade.md":"ab850bb5","api_modules_game_events.md":"b2bd404c","api_modules_game_layers.md":"75c50f81","api_modules_game_modifiers.md":"023a82e6","api_modules_game_notifications.md":"74be3f72","api_modules_game_persistence.md":"24c8859a","api_modules_game_player.md":"dcc586cc","api_modules_game_settings.md":"10d4f8c7","api_modules_game_state.md":"40d5873c","api_modules_lib_break_eternity.md":"6f7c45a0","api_modules_lib_pwa-register.md":"93dfaf81","api_modules_util_bignum.md":"6badd954","api_modules_util_break_eternity.md":"f46b0d30","api_modules_util_common.md":"46f3cad2","api_modules_util_computed.md":"1faabe86","api_modules_util_proxies.md":"feb8b3ae","api_modules_util_save.md":"1d2634b2","api_modules_util_vue.md":"d5358aef","api_overview.md":"24570ec0","guide_advanced-concepts_creating-features.md":"0ca7d072","guide_advanced-concepts_dynamic-layers.md":"d3364479","guide_creating-your-project_changelog.md":"5749200d","guide_creating-your-project_project-entry.md":"3bed1026","guide_creating-your-project_project-info.md":"7c9b4461","guide_creating-your-project_themes.md":"43025d93","guide_creating-your-project_utils.md":"2595396c","guide_getting-started_examples.md":"18cf1379","guide_getting-started_setup.md":"18784fa3","guide_getting-started_updating.md":"1b35755d","guide_important-concepts_coercable.md":"b3e4b201","guide_important-concepts_features.md":"97d5dfdd","guide_important-concepts_layers.md":"4c778709","guide_important-concepts_persistence.md":"b6543d35","guide_important-concepts_reactivity.md":"7dc860e4","guide_index.md":"62e0b322","guide_recipes_save-progress.md":"1eb623d4","index.md":"84447adb"} +{"api_classes_lib_break_eternity.default.md":"ec3bd615","api_components_contextcomponent.md":"d8857c87","api_components_infocomponent.md":"a3ada40e","api_components_layercomponent.md":"719b2b23","api_components_marknodecomponent.md":"9ff2021c","api_components_modalcomponent.md":"c6af37d6","api_components_nodecomponent.md":"e6b27589","api_components_savecomponent.md":"377941ea","api_components_fields_dangerbuttoncomponent.md":"9c7ae321","api_components_fields_feedbackbuttoncomponent.md":"fd493d2b","api_components_fields_selectcomponent.md":"b358625d","api_components_fields_slidercomponent.md":"626bc315","api_components_fields_textcomponent.md":"8e30567c","api_components_fields_togglecomponent.md":"7f5f7bd8","api_components_layout_collapsiblecomponent.md":"d360a794","api_components_layout_columncomponent.md":"a60adb9c","api_components_layout_rowcomponent.md":"3996636f","api_components_layout_spacercomponent.md":"4b7102a5","api_components_layout_stickycomponent.md":"7b034b7f","api_components_layout_verticalrulecomponent.md":"a5a98edf","api_components_math_floorcomponent.md":"b5ec3a74","api_components_math_sqrtcomponent.md":"d1a98a8b","api_enums_data_themes.themes.md":"ce1616c6","api_enums_features_boards_board.progressdisplay.md":"741a7ff2","api_enums_features_boards_board.shape.md":"278f2ce8","api_enums_features_feature.visibility.md":"9a5ea101","api_enums_features_milestones_milestone.milestonedisplay.md":"5e0f1cc7","api_enums_util_common.direction.md":"1605449c","api_interfaces_data_common.layertreenodeoptions.md":"d6d4781f","api_interfaces_data_common.resetbuttonoptions.md":"04fd9e95","api_interfaces_data_common.section.md":"312dd836","api_interfaces_data_themes.theme.md":"88454cdb","api_interfaces_data_themes.themevars.md":"6cdbb155","api_interfaces_features_achievements_achievement.achievementoptions.md":"91ab9a56","api_interfaces_features_achievements_achievement.baseachievement.md":"97b4cefa","api_interfaces_features_bars_bar.baroptions.md":"bc5ba27a","api_interfaces_features_bars_bar.basebar.md":"551f907e","api_interfaces_features_boards_board.baseboard.md":"05df971a","api_interfaces_features_boards_board.baseboardnodeaction.md":"5db9b79b","api_interfaces_features_boards_board.basenodetype.md":"9bcb1e02","api_interfaces_features_boards_board.boardnode.md":"0760e1b2","api_interfaces_features_boards_board.boardnodeactionoptions.md":"503ade87","api_interfaces_features_boards_board.boardnodelink.md":"a8c6a80b","api_interfaces_features_boards_board.boardoptions.md":"9688b36d","api_interfaces_features_boards_board.nodelabel.md":"4548f176","api_interfaces_features_boards_board.nodetypeoptions.md":"d581f918","api_interfaces_features_buyable.basebuyable.md":"a812cacf","api_interfaces_features_buyable.buyableoptions.md":"2acf2a52","api_interfaces_features_challenges_challenge.basechallenge.md":"21a456dd","api_interfaces_features_challenges_challenge.challengeoptions.md":"61546b34","api_interfaces_features_clickables_clickable.baseclickable.md":"1cd935c2","api_interfaces_features_clickables_clickable.clickableoptions.md":"013fd1c2","api_interfaces_features_conversion.baseconversion.md":"5e58fbbf","api_interfaces_features_conversion.conversionoptions.md":"4a125d3b","api_interfaces_features_conversion.scalingfunction.md":"2faa9291","api_interfaces_features_grids_grid.basegrid.md":"f7e5c5c3","api_interfaces_features_grids_grid.gridcell.md":"7b871a61","api_interfaces_features_grids_grid.gridoptions.md":"dcb941e1","api_interfaces_features_hotkey.basehotkey.md":"0f08b51a","api_interfaces_features_hotkey.hotkeyoptions.md":"8549f95c","api_interfaces_features_infoboxes_infobox.baseinfobox.md":"8bae4eb5","api_interfaces_features_infoboxes_infobox.infoboxoptions.md":"777e2db0","api_interfaces_features_links_links.baselinks.md":"d485d3cd","api_interfaces_features_links_links.link.md":"bdb55cf8","api_interfaces_features_links_links.linksoptions.md":"97ef5a90","api_interfaces_features_milestones_milestone.basemilestone.md":"b538fc47","api_interfaces_features_milestones_milestone.milestoneoptions.md":"ae94a7f4","api_interfaces_features_particles_particles.baseparticles.md":"0d140c8a","api_interfaces_features_particles_particles.particlesoptions.md":"71d2687b","api_interfaces_features_reset.basereset.md":"e9ffbb9f","api_interfaces_features_reset.resetoptions.md":"880f8f7d","api_interfaces_features_resources_resource.resource.md":"1517bf4f","api_interfaces_features_tabs_tab.basetab.md":"8ec58b5d","api_interfaces_features_tabs_tab.taboptions.md":"0bc1397c","api_interfaces_features_tabs_tabfamily.basetabbutton.md":"12b814da","api_interfaces_features_tabs_tabfamily.basetabfamily.md":"f76b48b6","api_interfaces_features_tabs_tabfamily.tabbuttonoptions.md":"9a953b72","api_interfaces_features_tabs_tabfamily.tabfamilyoptions.md":"956aba14","api_interfaces_features_tooltips_tooltip.basetooltip.md":"eddedb22","api_interfaces_features_tooltips_tooltip.tooltipoptions.md":"14a74fe8","api_interfaces_features_trees_tree.basetree.md":"86afbd2b","api_interfaces_features_trees_tree.basetreenode.md":"7bcb5592","api_interfaces_features_trees_tree.treebranch.md":"ab174cac","api_interfaces_features_trees_tree.treenodeoptions.md":"f652f612","api_interfaces_features_trees_tree.treeoptions.md":"ce676b41","api_interfaces_features_upgrades_upgrade.baseupgrade.md":"b77583e0","api_interfaces_features_upgrades_upgrade.upgradeoptions.md":"7c69ab8f","api_interfaces_game_events.globalevents.md":"2416a194","api_interfaces_game_layers.baselayer.md":"57810f96","api_interfaces_game_layers.featurenode.md":"112d1569","api_interfaces_game_layers.layerevents.md":"9623ae3c","api_interfaces_game_layers.layeroptions.md":"01801654","api_interfaces_game_layers.position.md":"8591021a","api_interfaces_game_modifiers.modifier.md":"ad1c4779","api_interfaces_game_player.playerdata.md":"f53c5c0b","api_interfaces_game_settings.settings.md":"e8f40252","api_interfaces_game_state.transient.md":"5c4227fb","api_interfaces_lib_pwa-register.registerswoptions.md":"f467fe2f","api_modules_data_common.md":"a26be679","api_modules_data_projentry.md":"cea38379","api_modules_data_themes.md":"ad6353dc","api_modules_features_achievements_achievementcomponent.md":"6d787eea","api_modules_features_achievements_achievement.md":"c1fa5c48","api_modules_features_bars_barcomponent.md":"5e7717f8","api_modules_features_bars_bar.md":"6b70aa7c","api_modules_features_boards_boardcomponent.md":"7da59571","api_modules_features_boards_boardlinkcomponent.md":"9e5467a6","api_modules_features_boards_boardnodecomponent.md":"a7b1dd7e","api_modules_features_boards_board.md":"298d230b","api_modules_features_buyable.md":"762147f7","api_modules_features_challenges_challengecomponent.md":"846d8b8e","api_modules_features_challenges_challenge.md":"4dd62d8c","api_modules_features_clickables_clickablecomponent.md":"8a74f64d","api_modules_features_clickables_clickable.md":"7c2258f9","api_modules_features_conversion.md":"e2d6443b","api_modules_features_feature.md":"fd956c2b","api_modules_features_grids_gridcellcomponent.md":"9b34a274","api_modules_features_grids_gridcomponent.md":"ce17cbe7","api_modules_features_grids_grid.md":"e788e024","api_modules_features_hotkey.md":"85ede901","api_modules_features_infoboxes_infoboxcomponent.md":"63ba9291","api_modules_features_infoboxes_infobox.md":"91707f7b","api_modules_features_links_linkcomponent.md":"11b0d97e","api_modules_features_links_linkscomponent.md":"2c32c4b5","api_modules_features_links_links.md":"0ad03241","api_modules_features_milestones_milestonecomponent.md":"a452ab04","api_modules_features_milestones_milestone.md":"b631a34c","api_modules_features_particles_particlescomponent.md":"94c44f12","api_modules_features_particles_particles.md":"8df0c711","api_modules_features_reset.md":"56a69ef7","api_modules_features_resources_maindisplaycomponent.md":"2ee12087","api_modules_features_resources_resourcecomponent.md":"e37af5e2","api_modules_features_resources_resource.md":"a1e39127","api_modules_features_tabs_tabbuttoncomponent.md":"244fc06e","api_modules_features_tabs_tabcomponent.md":"923254b8","api_modules_features_tabs_tabfamilycomponent.md":"424df151","api_modules_features_tabs_tab.md":"3563d375","api_modules_features_tabs_tabfamily.md":"79dcc0db","api_modules_features_tooltips_tooltipcomponent.md":"09a578eb","api_modules_features_tooltips_tooltip.md":"c4c675ca","api_modules_features_trees_treecomponent.md":"55dce179","api_modules_features_trees_treenodecomponent.md":"1158642d","api_modules_features_trees_tree.md":"d0def30b","api_modules_features_upgrades_upgradecomponent.md":"c26dec10","api_modules_features_upgrades_upgrade.md":"ab850bb5","api_modules_game_events.md":"b2bd404c","api_modules_game_layers.md":"75c50f81","api_modules_game_modifiers.md":"023a82e6","api_modules_game_notifications.md":"74be3f72","api_modules_game_persistence.md":"24c8859a","api_modules_game_player.md":"dcc586cc","api_modules_game_settings.md":"10d4f8c7","api_modules_game_state.md":"40d5873c","api_modules_lib_break_eternity.md":"6f7c45a0","api_modules_lib_pwa-register.md":"93dfaf81","api_modules_util_bignum.md":"6badd954","api_modules_util_break_eternity.md":"f46b0d30","api_modules_util_common.md":"46f3cad2","api_modules_util_computed.md":"1faabe86","api_modules_util_proxies.md":"feb8b3ae","api_modules_util_save.md":"1d2634b2","api_modules_util_vue.md":"d5358aef","api_overview.md":"24570ec0","guide_advanced-concepts_creating-features.md":"0d34bbd9","guide_advanced-concepts_dynamic-layers.md":"b1fdfd3f","guide_creating-your-project_changelog.md":"c0fb8c8f","guide_creating-your-project_project-entry.md":"06b07710","guide_creating-your-project_project-info.md":"2c1855e8","guide_creating-your-project_themes.md":"ae164b17","guide_creating-your-project_utils.md":"cbb851b0","guide_getting-started_examples.md":"4df3b8a9","guide_getting-started_setup.md":"b46876d2","guide_getting-started_updating.md":"954bab42","guide_important-concepts_coercable.md":"2f60c9ea","guide_important-concepts_features.md":"484070c2","guide_important-concepts_layers.md":"7de77bbd","guide_important-concepts_persistence.md":"acc0f0ee","guide_important-concepts_reactivity.md":"ff5cecab","guide_index.md":"908ddb01","guide_recipes_save-progress.md":"3e6a24a4","index.md":"f650a852"} diff --git a/index.html b/index.html index 076c9aa7..3f40bc5e 100644 --- a/index.html +++ b/index.html @@ -7,7 +7,7 @@ - + @@ -20,7 +20,7 @@
Skip to content

Profectus

A game engine that grows with you

Starts at your skill level and encourages your ambition to make your projects bigger and better.

Easy to Use

Everything is written to be as intuitive to use as possible, through consistent design.

Helpful

Built with TypeScript to guide you as you write. Seamlessly deploy your project with pre-configured github workflows, and more.

Incremental

Designed to actively encourage you to become better at programming. The engine will never limit you.

- +