Commit graph

467 commits

Author SHA1 Message Date
9370b0ed6f Improved typing for player.layers 2022-06-26 23:44:05 -05:00
b6d5eaa72d Added math components folder 2022-06-26 23:44:02 -05:00
d658455eb0 Added spend function to conversions
(for custom handling of changing baseResource)
2022-06-26 22:12:53 -05:00
3130e0add7 Improve setupPassiveGeneration
- Handles independent conversions better
- Now can be given a cap
2022-06-26 20:34:46 -05:00
b639d91032 Made several projInfo properties default to empty strings 2022-06-26 19:24:03 -05:00
ab81a140c9 Make all type-only imports explicit 2022-06-26 19:17:22 -05:00
a2b5820906 Implemented PWA 2022-06-26 15:22:22 -05:00
7fe57798bb Switched from vue-cli-service to vite
Should be thoroughly tested still
Also involved removing operator overloads, which weren't good anyways
2022-06-25 22:34:18 -05:00
6411ee4e34 Replace isPlainObject 2022-06-23 11:31:10 -05:00
39f92040aa Added onConvert callback to conversions 2022-05-23 23:40:26 -05:00
d123ed3feb Made resetTime more useful and various setup functions use BaseLayer 2022-05-23 23:34:59 -05:00
5b62080786 Added costModifier to conversions 2022-05-23 23:06:21 -05:00
90114f6eb3 Fix reset buttons not displaying Req if buyMax is true (but computed) 2022-05-23 22:54:56 -05:00
6a87e34a1d Make Context mutation observers ignore attributes
I can't find any edge cases where this would really be useful,
and it prevents a _lot_ of false node updates
2022-05-23 22:54:54 -05:00
7398a861ed Fixed nodes not being accessible on tabs that weren't initially visible 2022-05-23 22:54:52 -05:00
2568a8b3a0 Fixed links being in the wrong spot after above elements added/removed 2022-05-23 22:54:50 -05:00
d650cda84f Using getFirstFeature and Collapsible won't re-render each frame 2022-05-23 22:54:48 -05:00
7db806afc6 Fix particle effects not reloading when the Particles component is re-mounted 2022-05-23 22:54:46 -05:00
65e265768b Improved regularFormat on small numbers 2022-05-23 22:54:44 -05:00
3f10abbb09 Fix buyables' onPurchase not being called 2022-05-23 22:54:42 -05:00
1e6104a349 Fixed additive modifier description using + on negative modifiers 2022-05-23 22:54:40 -05:00
061b4f24da Fixed collapsibles having wrong width on buttons + collapsed content 2022-05-23 22:54:38 -05:00
0ead4e8ce0 Made slider tooltips appear below the slider 2022-05-23 22:54:36 -05:00
2e3f1de158 Fix presets dropdown not deselecting after creating a save 2022-05-10 23:37:43 -05:00
55c4476edf Fixed exporting the currently active save not using exportEncoding 2022-05-10 21:49:35 -05:00
01ade0984c Add tooltips to icons in saves manager 2022-05-10 21:42:45 -05:00
ce2f9f8ee0 Make buyables' onClick/purchase function support custom canPurchases
They can also now be overidden from the options function
2022-05-10 21:23:05 -05:00
3118db1402 Fixed offline time amount always showing when offline limit is 0 2022-05-10 21:01:57 -05:00
868a77af29 Saving is now always lz-string. saveEncoding renamed to exportEncoding.
exportEncoding only affects exports, and defaults to base64 so it's
obfuscated but doesn't have issues with being pasted in discord
2022-05-10 20:58:13 -05:00
521c0d1ea4 Wrote documentation for feature.ts
Also slightly cleaned up modifiers.tsx due to slightly new comment style
2022-05-10 20:04:08 -05:00
2ec1a03d8f Fixed some typings on Board component
also removed FeatureComponent type since it's no longer used
2022-05-10 19:39:39 -05:00
05eb2a2bed Made findFeatures take multiple types, and added excludeFeatures 2022-05-10 19:08:16 -05:00
86688b5bb1 Fix tab buttons not getting style refs 2022-05-10 08:11:43 -05:00
eec494370c Made layer style and classes 2022-05-10 08:11:11 -05:00
223b1cfcd4 Fix createModifierSection requiring revert and enabled properties 2022-05-10 08:10:56 -05:00
b82bf8eee3 Made most touch events passive 2022-05-03 01:36:07 -05:00
2c14b2193d Fix links sometimes using nodes that were removed 2022-05-03 01:36:00 -05:00
4058fad711 Removed unused import 2022-05-03 01:35:54 -05:00
9a40249c00 Fixed error when switching between saves with different layers 2022-05-03 01:35:48 -05:00
2d9de00424 Make nested player proxies of arrays as well as objects 2022-05-03 01:35:30 -05:00
4f3d73acd7 Make scaling functions use computables instead of processed computables 2022-05-01 19:24:50 -05:00
17642b95a6 Documented conversion.ts 2022-05-01 19:24:44 -05:00
eb1d394f04 Added periods to modifiers doc comments 2022-05-01 19:24:39 -05:00
b7789563e2 Made modifier constructors have more explicit typing 2022-05-01 19:24:12 -05:00
22f3415069 Fix adding new layers not allowing them to be displayed until refresh 2022-05-01 19:24:03 -05:00
75fde0f099 Fix tooltip component expecting direction to be a number instead of string 2022-05-01 19:23:56 -05:00
7eaae981d8 Fixed createCollapsibleModifierSections typing 2022-05-01 19:23:52 -05:00
ade00f2ebd Remove unused lib file 2022-05-01 19:23:46 -05:00
8f7160c725 Add comments for modifiers 2022-05-01 19:23:43 -05:00
665ddff196 Replaced the two Direction enums with a single one 2022-04-30 23:54:14 -05:00
77bcc10580 Open newly created saves automatically 2022-04-30 23:54:02 -05:00
c692578da7 Made createCollapsibleModifierSections utility function 2022-04-30 23:53:53 -05:00
1479c1d44d Fixed tree nodes not being clickable on the edges 2022-04-27 08:21:04 -05:00
d4c1e16fb4 Fix tree branches not appearing in the correct positions 2022-04-27 08:20:59 -05:00
8e6fc852d7 Made modifier section's base customizable 2022-04-27 08:20:47 -05:00
64533b55dc Fix Particles causing scroll issues 2022-04-24 22:07:47 -05:00
f49edc3de2 Made goBack and minimize buttons look more consistent 2022-04-24 22:07:43 -05:00
eb81fdfb2c Fixed separators getting cut off if the tab on the left can be scrolled
This also required some cleanup around the stick CSS
2022-04-24 21:49:17 -05:00
dc8a5fb558 Fix layer.minWidth being ignored 2022-04-24 21:49:13 -05:00
5156193a60 Fixed save manager loading old version of save previously opened 2022-04-24 20:21:57 -05:00
94a7f41fd1 Made several options functions optional 2022-04-24 17:05:28 -05:00
aae6455ea6 Made no features extend Persistent 2022-04-24 16:59:31 -05:00
cfe378020a Added support for reading/loading from different encodings 2022-04-24 16:59:20 -05:00
819c3c674a Fix tooltips sometimes causing issues with cyclical dependencies 2022-04-24 16:45:27 -05:00
eb06435821 Fix style attribute not working on tooltips 2022-04-24 16:45:24 -05:00
f70273425e Fixed spacing in Tree.vue 2022-04-24 13:41:57 -05:00
5427f200c1 Fixed updating displays sometimes eating clicks 2022-04-24 01:03:25 -05:00
76c81dc5b5 Fixed createLayerTreeNode not using display option correctly 2022-04-23 23:54:23 -05:00
7f63bf5d79 Made default theme's feature foreground dark rather than light 2022-04-23 23:37:52 -05:00
b161151424 Add tooltip to example layer 2022-04-23 22:23:46 -05:00
f1e5f177bf Made projEntry default display avoid rendering things rather than hiding them 2022-04-23 22:15:15 -05:00
1e276adce5 Made createResourceTooltip show the resource name 2022-04-23 22:15:10 -05:00
ba2bb3a5fd Fixed tooltips' classes and style props 2022-04-23 22:15:07 -05:00
8add09841e Make modifiers sections accept DecimalSources for the base 2022-04-23 22:15:04 -05:00
6e53678991 Moved createModifierSection to modifiers.tsx 2022-04-23 22:14:58 -05:00
f04cb69726 Show pin on pinned tooltips 2022-04-23 22:14:56 -05:00
bef5272ab5 Made tooltips' onClick in capture mode 2022-04-23 22:14:54 -05:00
6ed9f3da53 Improved tooltip typing 2022-04-23 22:14:52 -05:00
5b45642a58 Made TreeNodes VueFeatures 2022-04-23 22:14:49 -05:00
d988b37e8d Clean up typing 2022-04-23 22:14:47 -05:00
f76d5deb6e Tooltips overhaul 2022-04-23 22:14:45 -05:00
89861dfbd5 Allowed layer.minWidth to take string values as well 2022-04-23 22:14:42 -05:00
ba7f877581 Made tab family's options function optional 2022-04-23 22:14:37 -05:00
9c2dcddcbe Updated some modifiers CSS 2022-04-23 22:14:35 -05:00
6efd01fc43 Made modifier descriptions use CoercableComponents 2022-04-23 22:14:32 -05:00
c918f1b54b Add render functions that ensure returned type is always a JSX element 2022-04-23 22:14:29 -05:00
4e2095fd51 Implemented modifiers 2022-04-23 22:14:25 -05:00
52864964a2 Fixed independent conversions showing values over 1 when buyMax is false 2022-04-10 23:02:15 -05:00
78262996ad Fixed independent conversions with buyMax false capping incorrectly 2022-04-10 23:01:02 -05:00
b478999e7e Cap gain in nextAt and currentAt to 0 after modifier 2022-04-10 22:28:39 -05:00
eb434656b3 Fix Req showing wrong value 2022-04-10 21:53:11 -05:00
3694e2be1f Cap independent conversion's actualGain to 1 if buyMax is false 2022-04-10 21:22:00 -05:00
98c7cd7724 Added minimumGain to resetButton 2022-04-10 21:16:20 -05:00
42fe66c891 Display Req: instead of Next: when buy max is disabled 2022-04-10 19:33:44 -05:00
6bbd9b990a Update default layers to use new createLayer signature 2022-04-10 19:26:33 -05:00
99cda9f344 Fixed attempting to delete persistent ref when there's no layer being added 2022-04-10 19:26:33 -05:00
64f1b460b0 Added FeatureOptionsFunc to simplify features 2022-04-10 19:26:33 -05:00
838ac46cf9 Fixed missed references to PersistentRef 2022-04-10 19:26:33 -05:00
5a59aaf4fc Persistence rework
- Removed makePersistent
- Removed Persistent, renamed PersistentRef to Persistent
- createLazyProxy now takes optional base object
  - For use where previously makePersistent would be used
- Added warnings when creating refs outside a layer
- Added warnings when persistent refs aren't included in their layer object
- createLayer now takes id as a parameter rather than an option
2022-04-10 19:26:33 -05:00
bd084e51c5 Fixed issue with dynamically loading layers 2022-04-10 19:26:33 -05:00
Seth Posner
099c19d712 Fix independent gain, add current cost 2022-04-10 15:05:49 -07:00
ecc4b9fb5f Replaced tsparticles with pixi-emitter 2022-04-01 01:08:29 -05:00
69468d88c0 Update bounding rects when fonts have loaded in
This fixes the issue with everything shifting slightly once they load,
invalidating all the bounding rects until they are next updated
2022-04-01 01:08:26 -05:00
af9b2a8d19 Print key and value in lazy proxy's setter error message 2022-04-01 01:08:22 -05:00
f40765e4de Changed how conversion gain modifiers work, so nextAt will be correct 2022-03-29 21:32:40 -05:00
84ed880533 Made overlay nav not overlap leftmost layer 2022-03-28 21:24:26 -05:00
572e543ba8 Made all properties in FeatureNode non-optional 2022-03-27 19:23:31 -05:00
3fa7ccf0c1 Added collapsibles 2022-03-27 19:23:20 -05:00
270894f59d Cleaned up milestone css slightly 2022-03-27 19:23:16 -05:00
6cbf313faa Fixed double glow on tree nodes 2022-03-27 10:25:14 -05:00
c00a695edc Removed unused updateMouse function 2022-03-27 00:49:04 -05:00
561dd35570 Added events to onClick 2022-03-27 00:47:34 -05:00
887002e95b Added support for non-fullscreen particles
This also drastically improves positioning effects based on elements
2022-03-27 00:47:25 -05:00
8d0489c8e1 Default Challenge.canStart to true 2022-03-27 00:47:14 -05:00
da6a47b1da Fixed position of links 2022-03-27 00:46:42 -05:00
5ce8195779 Separated Links into a feature and Context 2022-03-27 00:39:38 -05:00
b60d170657 Made node positions more general purpose 2022-03-27 00:39:35 -05:00
0acfebb412 Implemented Particles feature 2022-03-27 00:39:23 -05:00
765e2cfc5f Coerce buyable's currDisplay first 2022-03-16 11:24:54 -05:00
e076c84483 Fix buyables not supporting CoercableComponents for displays 2022-03-16 11:20:53 -05:00
496ea34a9b Enabled using the BaseLayer features while creating the layer 2022-03-13 23:06:25 -05:00
77a3d92075 Fixed z-index issues when stopping hovering on .can 2022-03-13 23:06:17 -05:00
acc9622d49 Fix features not handling refs passed to style props correctly 2022-03-13 23:06:10 -05:00
de4bb44e02 Bind onClick and onHold functions before wrapping them 2022-03-13 23:05:59 -05:00
8170f240c8 Fix clickables not obeying mergeAdjacent 2022-03-13 23:05:48 -05:00
56d3a21440 Add dontMerge class to allow features to disable mergeAdjacent 2022-03-12 20:40:28 -06:00
ac598fa3a7 Added support for resources of non-persistent refs 2022-03-12 20:40:22 -06:00
a7ff83dfd4 Fixed banner not having correct width 2022-03-11 18:46:05 -06:00
1ecab3716e Added gameWon global event 2022-03-11 17:26:39 -06:00
563bf76bee setupHoldToClick calls stop on unmount 2022-03-11 17:01:22 -06:00
3682582fc3 Added enablePausing config 2022-03-11 16:58:11 -06:00
1cf72b4337 Added hotkeys to info modal 2022-03-11 16:38:49 -06:00
ada566b53a Added isAnyChallengeActive 2022-03-11 15:41:13 -06:00
e56f34c13c Converted variables that track time to numbers 2022-03-11 15:33:08 -06:00
b33de01a96 Added setupAutoComplete 2022-03-11 12:48:53 -06:00
14b1420b55 Add complete function to challenge 2022-03-11 12:48:44 -06:00
9c45653b8b Add setupAutoClick 2022-03-11 10:02:28 -06:00
1f48622314 Cache decimals used for trackOOMPS 2022-03-11 09:59:45 -06:00
bb2c61e425 Removed setupAutoReset 2022-03-11 09:22:16 -06:00
e5da55d26a Made buyables default to infinite purchase limit 2022-03-11 09:16:19 -06:00
d8edac1c9a Add manual complete function for milestones 2022-03-11 08:54:36 -06:00
1fac1edb46 Use watchEffect instead of event listener for completing achievements 2022-03-11 08:54:05 -06:00
7524ed3164 Export more types 2022-03-08 19:40:51 -06:00
a12fae5fae Added stub declaration files for libs that don't provide one 2022-03-08 01:13:53 -06:00
a76182c0bd Hide things from documentation that don't apply 2022-03-08 00:25:08 -06:00
1b765e8b50 Corrected exponential scaling to polynomial 2022-03-05 22:49:35 -06:00
d1cdfd2c9c Fixed layer tree node options 2022-03-05 16:42:55 -06:00
79dd822b3a Remove unused parameter from exponential scaling function 2022-03-05 16:06:23 -06:00
0d0db90b77 Changed more path aliasing 2022-03-03 22:45:25 -06:00
322ad1529a Removed unused parameter from exponential scaling function 2022-03-03 22:28:37 -06:00
8f7acf2e17 Don't copy App 2022-03-03 21:41:59 -06:00
46fc9ea1ba Set document title slightly sooner 2022-03-03 21:41:26 -06:00
49474b1518 Changed path aliasing 2022-03-03 21:39:48 -06:00
7b2b3de788 Fixed lifting up on certain elements not stopping the auto-clicker 2022-03-02 21:34:32 -06:00
4ddfc8e07f Fix reset buttons activating when held down when canClick is false 2022-03-02 21:09:37 -06:00
79c50a2366 Fixed hotkeys accessing hasWon incorrectly 2022-03-02 20:34:39 -06:00
9efabf9cf6 Removed redundant Theme properties 2022-03-02 20:30:52 -06:00
b9f28f764f allowSmall -> defaultShowSmall, allow it to be overrided 2022-03-02 20:28:11 -06:00
48ef321c89 Changed some default values in projInfo 2022-03-02 20:21:24 -06:00
0f498ab2f7 Fix saves manager displaying "default body" while closing 2022-03-02 20:21:24 -06:00
5e58da0de3 Hide versionTitle if blank 2022-03-02 20:21:23 -06:00
52a9f51510 Renamed modInfo -> projInfo, mod -> projEntry 2022-03-02 20:12:56 -06:00
f352c7d316 Cache decimals used for formatting numbers 2022-03-01 23:40:27 -06:00
189dbfe725 Fixed branches' positions not being accurate 2022-03-01 23:32:21 -06:00
707e24d64b Fixed some files still looking for persistence from wrong file 2022-03-01 21:10:19 -06:00
d8cbb14efe Fix spacing on discord logos in NaN screen 2022-03-01 17:08:05 -06:00
f0e5442898 Ignore the error about using let instead of const :eye_roll:
It's most likely to change once the creator starts working on it
2022-02-27 22:10:42 -06:00
da44b8c4c3 Replaced demo mod with placeholder mod 2022-02-27 18:31:51 -06:00
12438b67b3 Added some logic to reduce redundancies in player data 2022-02-27 18:07:21 -06:00
690b963afd Created utility function for opening layers as a modal 2022-02-27 17:06:38 -06:00
53d4c40aba Fixed game over screen graphical issues 2022-02-27 16:55:43 -06:00
c9d3613d64 Make tab family take TabButtonOptions directly instead of TabButton 2022-02-27 16:49:13 -06:00
5beecba267 Have features register settings fields dynamically 2022-02-27 16:41:39 -06:00
a81040d6a2 Moved persistence related code to its own file 2022-02-27 16:18:13 -06:00
a8af84f581 Reorganized components 2022-02-27 16:04:56 -06:00
552aca20e4 Added Profectus branding 2022-02-27 14:24:48 -06:00
e2126472b2 Fixed runtime issues with vue
Entire demo tree has been tested and is fully functional,
including all the options and save manager functionality
2022-02-27 13:49:34 -06:00
ebf26c58e7 Call Decimal.fromValue on objects that are Decimal-like
I _already_ know I'm going to update b_e.js without remembering I made
this change. If you've noticed that has occurred please link me to this
commit and shame me.
2022-02-20 16:02:39 -06:00
067ba6ce90 Make layers lazy instantiate 2022-01-27 22:47:26 -06:00
90e49e196f Fixing more issues 2022-01-24 22:25:34 -06:00
15a460bf42 Fixing building / cleanup 2022-01-24 22:23:30 -06:00
6f781b33fa New layer API WIP 2022-01-13 22:25:47 -06:00
e499447cf5 Added operator overloading for Decimals
Note: This feature is being enabled through babel, and unfortunately
doesn't really have any typescript support. Using an overloaded operator
will show an error and be typed as "any". If ecmascript ever
support operator overloading, then typescript will follow suit and these
issues can be resolved.
Here's the current proposal for how that could look like, although it's
a long way's off from being accepted, if it ever is:
https://github.com/tc39/proposal-operator-overloading

Alternatively, there's a proposal for declaring that certain types have
operator overloads, which would also work just perfectly:
https://github.com/microsoft/TypeScript/issues/42218

In the meantime, the errors will unfortunately remain present, although
they won't cause any issues in production.

BTW, the rhs can be any DecimalSource, but the lhs has to be a Decimal.
2021-09-19 23:10:01 -05:00
bc8622f219 Added forums link to nav bar 2021-09-19 21:06:56 -05:00
16467bb0d9 Made tooltips not try to use component names when coercing display 2021-09-19 19:29:20 -05:00
c414fdf451 Made nav bar icons more consistent 2021-09-19 16:59:43 -05:00
21dbcc0d66 Fixed tooltips not animating in 2021-09-19 12:40:30 -05:00
34487cb3da Hide tabs list when there's only a single tab 2021-09-19 12:04:55 -05:00
54cfb28bd6 Made it so by default, challenges can't be entered when complete 2021-09-19 11:28:44 -05:00
1acf01014f Added fade out to danger buttons 2021-09-19 11:08:47 -05:00
cc01f35d65 Modified board to not use ID selector 2021-09-19 10:54:13 -05:00
7c0f93b7ad Renamed grid data -> state 2021-09-19 10:40:18 -05:00
2eeb96a66f Added unthrottled setting 2021-09-05 19:13:56 -05:00
c617737788 Cleanup 2021-09-05 19:03:50 -05:00
eaf47bb946 Moved properties from player data to new settings and state objects 2021-09-05 18:53:04 -05:00
bc808098ff Made microtabs not show the tab buttons if forced to specific tab 2021-09-05 13:19:44 -05:00
d0bb9c1e99 Fixed several issues with Microtabs 2021-09-05 13:18:17 -05:00
8842da90ec Fixed minimize button scrolling up with the tab 2021-09-04 22:46:06 -05:00
59a1b171dc Fixed branches not showing up 2021-09-04 22:16:29 -05:00
9e2cc02dce Added badges to changelog 2021-09-04 22:02:13 -05:00