Commit Graph

103 Commits

Author SHA1 Message Date
Mughur
5c80655d62
NETSCRIPT: Added ns.corporation.issueNewShares function (#261) 2022-12-25 03:35:18 -05:00
Mughur
556fe8dd33
NETSCRIPT: Added ns.corporation.getConstants, replacing many other corporation getter functions (#260) 2022-12-25 03:33:13 -05:00
Snarling
14e50e5533
Some corp fixes (#236) 2022-11-29 08:24:04 -05:00
Snarling
88d51e9a7e
MISC: A bunch of enums stuff. (#212)
* Some game enums moved to utils/enums. Others can eventually be moved there as well.
* findEnumMember function for performing fuzzy matching of player input with enum members, without needing separate fuzzy functions for every enum.
* Also used findEnumMember for safely loading save games (allows case changes in enum values)
* Changed capitalization on some enums.
* BREAKING: removed classGains work formulas function
* Split ClassType enum into UniversityClassType and GymType.
* Added universityGains and gymGains work formulas functions
* Provided the new split enums to the player on ns.enums.
2022-11-20 08:37:11 -05:00
Snarling
b275f88053
NETSCRIPT: Expose more enums for player use (#198)
* Add support for enums at other ns layers
* APIWrapper: simplified wrapping algorithm and modified to just use cloneDeep to copy enums instead of recursively wrapping enums as if they were new API layers
* Improve APIWrapper typing
* Changed some typings at RamCostGenerator to allow for enums at different levels without enums needing a ram cost
* Added enums to ns.corporation, removed getter functions that were being used instead.
* Add FactionWorkType for player use
* Add ClassType and CompanyWorkPos enums
* Change netscriptDefinitions to expect members of these new enums where appropriate.
2022-11-09 13:46:21 -05:00
Snarling
8e0e0eaa88
NETSCRIPT: ns.sleeve.getSleeve added. getPlayer and getSleeve can both be used for formulas. (#200)
* BREAKING CHANGE: Removed getSleeveStats and getSleeveInformation because this info is provided by getSleeve in a more usable form.
* BREAKING CHANGE: Removed tor, inBladeburner, and hasCorporation fields from ns.getPlayer. Functionality still exists via added functions ns.hasTorRouter, ns.corporation.hasCorporation, and ns.bladeburner.inBladeburner.
* Separated ns definitions for Person, Sleeve, and Player interfaces with both Player and Sleeve just extending Person.
Added getSleeve, which provides a Sleeve object similar to getPlayer.
* Renamed the sleeve ns layer's interface as sleeve lowercase because of name conflict. todo: May move all the ns layers interface names to lowercase for consistency
* Added ns.formulas.work.crimeSuccessChance and reworked to allow both sleeve and player calculations.
* Removed internal Person.getIntelligenceBonus function which was just a wrapper for calculateIntelligenceBonus. Any use of the former in formulas creates a conflict where ns-provided Person objects throw an error.
* Renamed helpers.player to helpers.person for netscript person validation. Reduced number of fields validated due to Person being a smaller interface.
* Fixed bug in bladeburner where Player multipliers and int were being used no matter which person was performing the task
* Fixed leak of Player.jobs at ns.getPlayer
* Person / Player / Sleeve classes now implement the netscript equivalent interfaces. Netscript helper for person no longer asserts that it's a real Person class member, only that it's a Person interface. Functions that use netscript persons have been changed to expect just a person interface to prevent needing this incorrect type assertion.
2022-11-09 07:26:26 -05:00
Snarling
5b2a96fa0c
CORPORATION: Happiness/Energy/Morale trend down even for productive corps (#157) 2022-10-25 10:32:20 -04:00
Snarling
5fe89d5599
CORPORATION: Reorganize Industry data (#154) 2022-10-24 21:54:54 -04:00
G4mingJon4s
6dc5990b63
CORPORATION: Added check to buy amount (#149) 2022-10-24 16:09:53 -04:00
Snarling
0a3ff56331
WIP: Remove corp employees as objects (#143)
* Removed employees as objects from corporations
* Remove employees from office JSON after loading / convert to new parameters
* Showed down morale/etc gain; added optional position to hireEmployee
* enum support for corp employee positions

Mostly authored-by: Kelenius <kelenius@ya.ru>
2022-10-24 08:44:01 -04:00
omuretsu
7a384d53f4 typefix netscriptFunctions (see desc)
* Types for InternalFunction and ExternalFunction have been modified to actually typecheck ns functions against docs.
* Internal functions are required to use unknown for any params on the inner function.
* Return types for internal function inner-function must match the respective external function.
* Added new typecheck assertion function for asserting dynamic object types, to allow unknownifying params that were previously hardcoded objec structures.
* Because type assertion for parameter types and return types is enforced by InternalAPI, removed all duplicate type declarations on NetscriptFunction params and returns.
2022-10-12 08:49:27 -04:00
Olivier Gagnon
0fdf74ceeb typo 2022-10-09 01:32:44 -04:00
Snarling
068533cd2f format, lint, more enums, revert fn rename 2022-10-05 14:52:48 -04:00
Snarling
50f14b4f58 Commit1 2022-10-03 12:12:16 -04:00
Snarling
bc7c15ad77 corp: classes are types 2022-09-27 15:35:42 -04:00
Snarling
83d357e758 commit1 2022-09-27 15:35:40 -04:00
hydroflame
5101b345ec
Merge pull request #4069 from Mughur/corp
API: Corp functions now return copy of constant arrays instead of the original
2022-09-23 00:58:32 -03:00
hydroflame
ee67aa90f9
Merge pull request #4131 from Mughur/valuation
CORPORATION: Gave investors some economics classes
2022-09-23 00:58:06 -03:00
hydroflame
a8e640e309
Merge pull request #4084 from Rasmoh/expose_exports
CORPORATION API: FIX #3655 Expose exports from Material
2022-09-23 00:46:28 -03:00
Mughur
d4c06eba24 Change corporatio valuation calculations 2022-09-23 05:05:18 +03:00
Rasmoh
cc0fd197c5 Expose exports from Material 2022-09-05 17:25:32 -07:00
phyzical
2a8ddb8147
fix up param order to match docs
hotfix/4058

File List:
src/NetscriptFunctions/Corporation.ts
2022-09-02 11:58:12 +08:00
Mughur
c467a49a38 corp functions now return copy instead of original 2022-08-31 12:05:36 +03:00
Risenafis
b224321222
fix selfFund was reversed 2022-08-20 23:37:39 +09:00
Snarling
ea7c2c4981 fixing other commits after rebase 2022-08-09 18:25:02 -04:00
Snarling
931ea730a5 Move entire ns object to top-level 2022-08-09 18:09:26 -04:00
Snarling
208495e269 Initial commit 2022-08-09 18:09:24 -04:00
Mughur
a88f36e2f4 add corp get functions, fix coffee hover text 2022-07-30 18:57:33 +03:00
Olivier Gagnon
18c3572423 removed the ability to bribe for shares 2022-07-26 08:20:22 -04:00
Olivier Gagnon
ec17cfdaf3 merge corp not async 2022-07-20 17:27:11 -04:00
Olivier Gagnon
ef42ee7232 few more api break 2022-07-20 17:03:08 -04:00
Staszek Welsh
75a9151e74 Merge branch 'dev' into corp-remove-async 2022-07-20 21:12:27 +01:00
hydroflame
17c2f06ae0
Merge pull request #3802 from stalefishies/corp-dividends
CORPORATION: (BREAKING) Dividend fixes and exposing dividends info via scripts
2022-07-20 15:08:41 -04:00
Olivier Gagnon
2442402af5 fix more anys 2022-07-19 16:46:03 -04:00
Olivier Gagnon
5629c16def extract multipliers in its own type 2022-07-14 18:43:33 -04:00
Staszek Welsh
02b07bb332 Fix relevant linter errors and run formatter 2022-06-02 22:54:50 +01:00
Staszek Welsh
ba7b76369b Remove industry upgrades
There are only two industry upgrades, one of which is buying coffee
which is not an upgrade, and for the office not the industry. Moving
that to the office leaves just hiring AdVerts, which is better as an
explicitly named set of methods.
2022-06-02 02:43:22 +01:00
Staszek Welsh
04efd899a0 Remove async from buyCoffee and throwParty 2022-06-01 23:36:15 +01:00
Staszek Welsh
ffaa38d086 Unify code paths for buying coffee and throwing parties 2022-06-01 23:26:32 +01:00
Staszek Welsh
7d3a43f7b5 Remove async from employee assignment functions 2022-06-01 18:18:53 +01:00
Staszek Welsh
b9356ea782 Only switch employee jobs at the start of corp cycles 2022-06-01 18:11:33 +01:00
Staszek Welsh
eb46e4d156 Rename getDividends to getCycleDividends for clarity 2022-06-01 12:59:45 +01:00
Staszek Welsh
4a3558098c Fix error check in issueDividends expecting 0-100 when it actually takes 0-1 2022-05-30 22:31:51 +01:00
Staszek Welsh
c117b55df9 Expose dividend info through ns.corporation.getCorporation() 2022-05-30 22:21:27 +01:00
Undeemiss
f8f3c099e0 Formatted/linted (There are some errors, but they aren't mine afaik) 2022-05-28 21:35:20 -05:00
T.J. Eckman
cfb0967634
Unassigned Employees Boost
Speed up assigning of employees currently without a job.
2022-05-25 18:55:34 -04:00
Olivier Gagnon
76ccb0ba36 lint 2022-05-25 11:43:43 -04:00
hydroflame
b80e2d5fd1
Merge branch 'dev' into wrap-api 2022-05-19 01:37:06 -04:00
Undeemiss
b00301f4e1 Renamed BN mult CorporationSoftCap to CorporationSoftcap
Replaced all instances of "CorporationSoftCap" in src/ with
"CorporationSoftcap". If files outside of src/ must be changed, I
do not know what those would be.
2022-05-09 14:45:19 -05:00
Olivier Gagnon
c6806caca2 Wrap most of the API 2022-05-07 19:08:07 -04:00