Commit Graph

543 Commits

Author SHA1 Message Date
Olivier Gagnon
3aabbb7aaa dont hide int anymore 2022-03-16 15:42:25 -04:00
nickofolas
230d68aab2 Implement common stats row element 2022-03-12 15:49:07 -06:00
Olivier Gagnon
30776e5aca added arcade 2022-03-11 15:19:10 -05:00
Olivier Gagnon
81d3246cb8 fix not being able to work on program 2022-03-10 23:05:35 -05:00
hydroflame
b7ffdeb5e2
Merge pull request #3076 from ApamNapat/turned_two_eslint_rules_on
Trailing whitespace and files not ending with \n are now illegal
2022-03-10 22:12:17 -05:00
hydroflame
1ed27bb88a
Merge pull request #3104 from MartinFournier/fix/bladeburner-early-routing
Attempt to fix `bladeburner.process()` early routing issue
2022-03-10 22:10:06 -05:00
hydroflame
459296c160
Merge pull request #3068 from phyzical/hotfix/2902
Fix for work in progress modal when augmenting
2022-03-10 21:41:48 -05:00
hydroflame
c13ff7ea52
Merge branch 'dev' into improvement/aug-page-link 2022-03-10 21:40:58 -05:00
nickofolas
e39817cb57 Very slightly adjust router.toFaction
- Faction argument is now required
- Added augPage argument
2022-03-10 18:37:57 -06:00
Martin Fournier
6588bbb8b1 Attempt to fix bladeburner.process() issue
For a certain user, it appears that the engine attempts to route to the
bitverse screen before the router is properly initialized. I could not
reproduce the problem on my side and we were not able to extract his
save game, so this is a blind shot if it'll work or not.
2022-03-09 15:44:19 -05:00
Jack
a3555d101e
Update src/ui/WorkInProgressRoot.tsx 2022-03-09 22:50:41 +08:00
phyzical
e5acd10c86 moved to only apply when working for faction 2022-03-09 22:14:42 +08:00
phyzical
f7dcf5ca97 add early out to say "sorry not part of faction when working and augmenting" 2022-03-09 22:09:14 +08:00
BB
2f4d879c16 Trailing whitespace and files not ending with \n are now illegal 2022-03-08 22:51:02 +01:00
hydroflame
6ed4268173
Merge pull request #3075 from ApamNapat/simplified_imports
Simplified some relative imports
2022-03-08 16:30:37 -05:00
hydroflame
46628cb636
Merge pull request #3052 from ApamNapat/remove_unused_eslint_disable
Removed unnecessary eslint-disable lines
2022-03-07 17:31:59 -05:00
hydroflame
3310928598
Merge pull request #2710 from nickofolas/improvement/tabs
Update `<Tabs>` sizing and style
2022-03-07 17:22:06 -05:00
Jack
d4f5f54fb6
Update src/ui/WorkInProgressRoot.tsx
Co-authored-by: ApamNapat <ApamNapat@users.noreply.github.com>
2022-03-06 12:42:35 +08:00
BB
2c3e0985c4 Simplified some relative imports 2022-03-06 05:05:55 +01:00
phyzical
a389b515df fix for work in progress modal when augmenting
* added an early out to turns a basic error for the work modal when the current work faction to show the faction or faction not found
2022-03-05 13:05:37 +08:00
BB
7212cc2f1c Removed unnecessary eslint-disable lines 2022-03-01 17:33:27 +01:00
hydroflame
d721c1e65a
Merge pull request #2968 from phyzical/bugfix/2520
added pre tags to support \n
2022-03-01 10:56:32 -05:00
citrusmunch
6e09241ff4 FIX: tutorial typo
"connect so it" -> "connect to it"
2022-02-13 16:46:13 -05:00
phyzical
1931734694 added pre tags to support \n 2022-02-13 18:49:24 +08:00
Phil
378f67097c Amending NetscriptDefinitions 2022-01-31 18:15:13 +00:00
Phil
af43e63415 Blanking Prompt value on close 2022-01-30 14:21:46 +00:00
Phil
08d0b4cbae Adding support for text/select options in Prompt command 2022-01-30 14:06:18 +00:00
Martin Fournier
a47eae8b25 Add function to enable/disable routing
Wraps the toX() functions of the Router to add a check to only run the
function when it is allowed.

The check is used in the import page to prevent user scripts from
redirecting away to a crime or something else.
2022-01-26 03:56:19 -05:00
Martin Fournier
855a4e622d Add Electron preload script to allow communication
Adds a channel to communicate between the main process & the renderer
process, so that the game can easily ship data back to the main process.

It uses the Electron contextBridge & ipcRenderer/ipcMain.

Connects those events to various save functions. Adds triggered events
on game save, game load, and imported game. Adds way for the Electron
app to ask for certain actions or data.

Hook handlers to disable automatic restore

Allows to temporarily disable restore when the game just did an import
or deleted a save game. Prevents looping screens.
2022-01-26 03:56:19 -05:00
Martin Fournier
26432082e2 Add an import save comparison page
This adds a new page reachable from the import save file
options menu. It shows the difference between the current save
and the data that is being imported, for confirmation.

Includes an "automatic" variant, which has different wording for when
Electron decides it has access to a newer version of the game.

While in this screen, the autosave is disabled.

This also adds a new BypassWrapper component around the game's tree.
It allows for content to be displayed without rendering the nested
pages (import, recovery). This prevents player scripts from messing
with the screen.
2022-01-26 03:56:17 -05:00
Martin Fournier
974344545d Move import save functionality into SaveObject
Adds a lot of metadata to be able to easily compare the new save to the
current player.

- Adds lastSaved & identifier to the PlayerObject
- Includes a hash method used to generate an identifier
2022-01-26 03:42:52 -05:00
nickofolas
c0a27e7d66 Active scripts tab sizing 2022-01-26 00:53:16 -06:00
hydroflame
2f36fb107f
Merge pull request #2803 from MartinFournier/feat/github-actions
Adds GitHub workflows to fetch a changelog & to bump the app's version
2022-01-26 00:52:06 -05:00
hydroflame
3654a238ae
Merge pull request #2726 from SagePtr/recheck-achievements
Force achievements recalculation on bitnode completion
2022-01-26 00:50:06 -05:00
hydroflame
7a5dfd0e72
Merge pull request #2707 from MartinFournier/feature/theme-browser
Add Theme Browser accessible from GameOptions
2022-01-26 00:46:17 -05:00
Martin Fournier
8a2cad6c4a Reset styles for html changelogs in getUpdateText
Adds an optional sxProps to the DialogBox component.
2022-01-25 10:20:36 -05:00
nickofolas
259071e3d5 Align slider endpoints in settings 2022-01-21 16:32:32 -06:00
Martin Fournier
a26b9c8dcf Add theme browser page accessible from game options
Removed the themes buttons that were in the ThemeEditorModal and only
left a "Revert to Default" button along with a link to the ThemeBrowser
page.

Split off the buttons into reusable components since they are now used
in two pages.

Display the themes in big cards with a zoomable screenshot. Applying the
theme now shows a toast with an option to undo the action.

The snackbar now allows ReactNode instead of only strings.

- Add link with details on how to create a new theme in the game.
- Add link to the theme-sharing discord channel.
- Add icons to the theme & style buttons in GameOptions
- Add "Theme Editor" button to ThemeBrowser
- Add "Style Editor" button to ThemeBrowser
- Move Styles related files into Themes folder
- Includes a modal that shows a bigger version of the screenshot.
- Change Snackbar to allow for ReactNode as the message
2022-01-20 18:41:49 -05:00
Martin Fournier
a9e2e35446 Move theme related things into its own subfolder
This will make contributions easier and less prone to conflicts.
2022-01-20 18:41:48 -05:00
SagePtr
32ba81883f Force achievements recalculation on bitnode completion 2022-01-21 00:04:47 +02:00
Olivier Gagnon
f7d18efaf6 Merge branch 'dev' of github.com:danielyxie/bitburner into dev 2022-01-20 16:14:35 -05:00
Olivier Gagnon
77f525c98c rm blob caching 2022-01-20 16:11:48 -05:00
Martin Fournier
6e908814db Add game version in document.title
Also add [dev] prefix when in development mode.
2022-01-20 09:26:07 -05:00
Olivier Gagnon
53727f6222 typo 2022-01-18 19:20:16 -05:00
nickofolas
eb7a0ebace Use background primary before #000000 for body 2022-01-18 16:15:36 -06:00
hydroflame
c5089ab82a Merge pull request #2664 from MartinFournier/feature/recovery
Add information to the recovery page
2022-01-17 16:05:00 -05:00
hydroflame
1d83247f8d
Merge pull request #2671 from gianfun/fix_ns_tail_behavior
Fix ns.tail() behaviour for multiple calls
2022-01-17 16:01:34 -05:00
hydroflame
25112acefb
Merge pull request #2654 from SlyCedix/bounded-logs
Bound log windows to screen
2022-01-17 16:01:16 -05:00
Martin Fournier
f9daf5df64 Keep the sidebar opened or closed on reload
Previously, going to a full-width page and heading back to the terminal would default the sidebar to its opened state regardless of what it was before.

Now it stores it in the GameRoot's state and also in the Settings so
that it persists over reloads.
2022-01-16 17:00:06 -05:00
Gian P
e38010a9a4 Revert "Logs button reopens log window"
This reverts commit 01efd372e95628d419575ade0e6536a458fd61d2.
2022-01-16 18:21:02 -03:00
Martin Fournier
65964c84b2 Add information to the recovery page
Adds error & environment information to the recovery page when
available. The info will be displayed when the error boundary catches an error only.

Otherwise, does a few minor tweaks to the UI of the page.

- Add DevPage button to throw an uncaught error to go into recovery
- Add "Delete Save" button in recovery from Game Options (refactored into its own
component)
- Use "Soft Reset" button from Game Options (refactored into its own
component)
- The "Soft Reset" & "Delete Save" buttons now have confirmations
- Add tooltip on "Disable Recovery Mode" button
- Add timestamp to the RECOVERY.json filename
- Add textarea containing markdown with the current error details, if
available
  - Error
  - Page
  - Version
  - Environment
  - Platform
  - UserAgent
  - Features
  - Source
  - Stack Trace
- Change GitHub new issue link to contain default body & title, if possible
- Change links to not take the full width (they were clickable by mistake)
- Fix "Disable Recovery Mode" not resetting the ErrorBoundary's state,
making going back to terminal impossible
2022-01-16 09:07:53 -05:00
Cyn
8d7b71c5aa Prevent dragging log window off screen & reset log window position if resized off screen 2022-01-15 20:52:02 -05:00
SlyCedix
c25067c062 bound log box to parent div 2022-01-15 20:52:02 -05:00
Olivier Gagnon
d5c3d89613 fix bug 2022-01-15 18:13:35 -05:00
hydroflame
a454e21977
Merge branch 'dev' into feature-catch-errors-and-softreset-recovery 2022-01-15 18:00:33 -05:00
hydroflame
0db08c3477
Merge pull request #2476 from nickofolas/reopen-log-windows
Logs button reopens log window
2022-01-15 17:18:59 -05:00
nickofolas
0359229af6 Grid-align buttons in location UIs (and options) 2022-01-15 10:21:45 -06:00
Olivier Gagnon
5126d72742 rm some stuff from netdef to make it work in-game 2022-01-13 14:26:05 -05:00
Martin Fournier
6633c00f5d Clear timers when unmounting CorruptableText
The interval was cleared, but not the setTimeout to replace the character
2022-01-13 09:34:08 -05:00
hydroflame
d274e21a10
Merge pull request #2596 from MartinFournier/feature/ns-ui-styles
Add ns.ui.[getStyles, setStyles, resetStyles]
2022-01-12 19:18:54 -05:00
Martin Fournier
0a2187bdf5 Revert "Add toPreviousPage in router"
This reverts commit b0bc3236fdcd2c9f6cfb9c540010e9520c2cbe01.
2022-01-12 18:49:53 -05:00
Martin Fournier
9033640c0c Revert "Fix duplicate previous pages"
This reverts commit 16f7058e536648ddce8f9949b276071ae6baa854.
2022-01-12 18:46:01 -05:00
Martin Fournier
9b638b911f Add ns.ui.[getStyles, setStyles, resetStyles]
Adds three Netscript functions to manipulate the user's styles like the
player can with theme.
2022-01-12 18:34:05 -05:00
hydroflame
3e7a9ac896
Merge pull request #2578 from MartinFournier/feature/work-overview
Add details to work in overview
2022-01-12 11:16:20 -05:00
Martin Fournier
16f7058e53 Fix duplicate previous pages 2022-01-11 21:49:10 -05:00
Martin Fournier
9d0a63734d Add details to work in overview
Add a reusable component for the focus section, add a bit of details &
some styling.
2022-01-11 20:46:34 -05:00
nickofolas
a41104f51a Add tooltips to unfocused work 2022-01-11 17:46:59 -06:00
TheMas3212
562d4ee800 Add ErrorBoundary component to catch rendering error and redirect to recovery page
also add softreset button on recovery page
2022-01-12 09:43:58 +11:00
hydroflame
b7fb59691b
Merge pull request #2570 from MartinFournier/feature/save-exclude-running-scripts
Add option to exclude running scripts from save
2022-01-11 17:24:53 -05:00
Martin Fournier
b22eb58aba Add option to exclude running scripts from save 2022-01-11 16:48:00 -05:00
Martin Fournier
4bd67113c1 Fix root min-height being over 100vh with padding
It was causing a very small scrollable content.
2022-01-11 12:58:27 -05:00
Martin Fournier
b0bc3236fd Add toPreviousPage in router
- Allows the WorkInProgress cancel & unfocus to go back to the previous
page instead of a default one.
- Change layout of overview buttons
- Add a back button in the overview, only visible in pages with a
sidebar
- Clear the history on augmentation install & on prestige
2022-01-11 09:38:52 -05:00
Martin Fournier
7ee2612c17 Allow drag on character overview
Makes the character overview (and tutorial) draggable, persisting the
{x, y, opened} in the user's settings.

- Remove margin & padding from html, body and ensure main content is
full height
- Add setting to disable progress bars
- Refactor options to use new OptionSwitch
- Add exclusions to prettierignore
- Specify line ending in prettier & gitattributes
2022-01-10 07:37:01 -05:00
Olivier Gagnon
d8a5f5b03c many fixes 2022-01-09 15:24:32 -05:00
hydroflame
f6bc3b0b5e
Merge pull request #2495 from TheMas3212/fix-2163
Clear input field for CodingContractModal after submission
2022-01-09 13:01:34 -05:00
hydroflame
ee07942d3e
Merge pull request #2500 from MartinFournier/fix/server-list-alphabetical
Sort server list alphabetically
2022-01-09 12:58:54 -05:00
Martin Fournier
0ede6c4295 Add fontFamily & lineHeight settings 2022-01-09 08:40:57 -05:00
Martin Fournier
d6fa672fac Sort server list alphabetically 2022-01-09 05:43:50 -05:00
TheMas3212
5901312184
Clear input field for CodingContractModal after submission 2022-01-09 15:26:36 +11:00
nickofolas
01efd372e9 Logs button reopens log window 2022-01-08 14:31:58 -06:00
TheMas3212
2e31dda75e
make Popups use variable like Sidebar does 2022-01-09 07:25:41 +11:00
TheMas3212
84845ff9a2
Refactor GameRoot.tsc to use a switch case statement instead of 20
nested ternarys
2022-01-09 07:15:28 +11:00
hydroflame
b8eb07dda5
Merge branch 'dev' into feature/achievements 2022-01-08 14:51:36 -05:00
hydroflame
20ca1239df
Merge pull request #2229 from FaintSpeaker/update-theme-engine-missing-elements
Update theme engine to cover some themeless elements
2022-01-08 14:13:53 -05:00
hydroflame
8d7bc1755c
Merge pull request #2429 from MartinFournier/fix/export-bonus
Fix export bonus not being applied when using options menu
2022-01-08 12:43:28 -05:00
hydroflame
30f5559bdf
Merge pull request #2441 from Feodoric/fix-duplicate-messages
fix #2174 - icarus message will no longer stack infinitely
2022-01-08 12:42:19 -05:00
Martin Fournier
2b0a248673 Make toasts appear above tail popups 2022-01-08 10:07:35 -05:00
Martin Fournier
844d518684 Add achievements to base game
- Add a script to generate achievement data from Steamworks API
- Add achievements page with a link in sidebar
- Calculate achievements (1/min) with an engine counter
- Store achievements with a timestamp on unlocked in the PlayerObject
- Add a script to generate monochrome icons from Steam icons
- Add toast when unlocking an achievement
2022-01-08 05:45:32 -05:00
Russell Stringer
1cb65e3f31 fix #2174 - icarus message will no longer stack an unbounded number of alerts
AlertManager now stores a hash for each incoming alert and compares the
hash of any newly arriving alert against those still in the queue.
2022-01-07 15:19:36 -05:00
Martin Fournier
b9ad1d3082 Apply export bonus when using options menu
Also applies the bonus before saving the game instead of after
2022-01-07 09:03:04 -05:00
Martin Fournier
3562671772 Add SaveTimestamp to saveString, used in import 2022-01-07 09:02:35 -05:00
Martin Fournier
46fe8cc94c Change SuppressSaveToast to only work on auto-save
Before this, this setting also suppressed the toast for the manual clicks.
2022-01-05 14:56:28 -05:00
Olivier Gagnon
4860d6dc83 Merge branch 'dev' of github.com:danielyxie/bitburner into dev 2022-01-04 19:09:38 -05:00
Olivier Gagnon
c59a267437 change sf4 2022-01-04 19:09:34 -05:00
nickofolas
c445df4168 Allow notifications to be dismissed by clicking 2022-01-04 16:25:00 -06:00
Olivier Gagnon
449df63dd8 fix tuto 2022-01-04 10:58:47 -05:00
Martin Fournier
dfabc0ac11 Fix import save issue with large files
The base64 regex was throwing a maximum stack size exceeded error with
large files.
The whole check was a bit redundant since we already try to parse the
file from base64 just below.
2022-01-03 11:02:29 -05:00
hydroflame
cd9fad06d0
Merge pull request #2231 from ErzengelLichtes/use-numeraljs-for-ram
Use numeral.js to format memory, allow use of GiB with an option
2022-01-02 11:43:33 -05:00
hydroflame
1a07399312
Merge pull request #2248 from MartinFournier/feature/confirm-save-import
Add validation & confirm prompt for save import
2022-01-02 11:39:10 -05:00
Martin Fournier
59d8e1f979 Remove alpha from color picker
rgba is not currently supported in the themes, so might as well remove
the option from the picker.
2021-12-31 10:13:53 -05:00