mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2024-12-23 06:32:26 +01:00
add corp safeguard
This commit is contained in:
parent
ceb4e304fd
commit
c987c91a11
2
dist/engine.bundle.js
vendored
2
dist/engine.bundle.js
vendored
File diff suppressed because one or more lines are too long
@ -958,7 +958,6 @@ Industry.prototype.processProducts = function(marketCycles=1, corporation) {
|
|||||||
const mgmtProd = office.employeeProd[EmployeePositions.Management];
|
const mgmtProd = office.employeeProd[EmployeePositions.Management];
|
||||||
const opProd = office.employeeProd[EmployeePositions.Operations];
|
const opProd = office.employeeProd[EmployeePositions.Operations];
|
||||||
const total = engrProd + mgmtProd + opProd;
|
const total = engrProd + mgmtProd + opProd;
|
||||||
|
|
||||||
if (total <= 0) { break; }
|
if (total <= 0) { break; }
|
||||||
|
|
||||||
// Management is a multiplier for the production from Engineers
|
// Management is a multiplier for the production from Engineers
|
||||||
@ -1126,7 +1125,6 @@ Industry.prototype.processProduct = function(marketCycles=1, product, corporatio
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var maxSell = 0.5
|
var maxSell = 0.5
|
||||||
* Math.pow(product.rat, 0.65)
|
* Math.pow(product.rat, 0.65)
|
||||||
* marketFactor
|
* marketFactor
|
||||||
@ -1441,11 +1439,11 @@ Industry.prototype.createResearchBox = function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Industry.prototype.toJSON = function() {
|
Industry.prototype.toJSON = function() {
|
||||||
return Generic_toJSON("Industry", this);
|
return Generic_toJSON("Industry", this);
|
||||||
}
|
}
|
||||||
|
|
||||||
Industry.fromJSON = function(value) {
|
Industry.fromJSON = function(value) {
|
||||||
return Generic_fromJSON(Industry, value.data);
|
return Generic_fromJSON(Industry, value.data);
|
||||||
}
|
}
|
||||||
|
|
||||||
Reviver.constructors.Industry = Industry;
|
Reviver.constructors.Industry = Industry;
|
||||||
@ -1602,11 +1600,11 @@ Employee.prototype.createUI = function(panel, corporation, industry) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Employee.prototype.toJSON = function() {
|
Employee.prototype.toJSON = function() {
|
||||||
return Generic_toJSON("Employee", this);
|
return Generic_toJSON("Employee", this);
|
||||||
}
|
}
|
||||||
|
|
||||||
Employee.fromJSON = function(value) {
|
Employee.fromJSON = function(value) {
|
||||||
return Generic_fromJSON(Employee, value.data);
|
return Generic_fromJSON(Employee, value.data);
|
||||||
}
|
}
|
||||||
|
|
||||||
Reviver.constructors.Employee = Employee;
|
Reviver.constructors.Employee = Employee;
|
||||||
@ -1901,11 +1899,11 @@ OfficeSpace.prototype.unassignEmployeeFromJob = function(job) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
OfficeSpace.prototype.toJSON = function() {
|
OfficeSpace.prototype.toJSON = function() {
|
||||||
return Generic_toJSON("OfficeSpace", this);
|
return Generic_toJSON("OfficeSpace", this);
|
||||||
}
|
}
|
||||||
|
|
||||||
OfficeSpace.fromJSON = function(value) {
|
OfficeSpace.fromJSON = function(value) {
|
||||||
return Generic_fromJSON(OfficeSpace, value.data);
|
return Generic_fromJSON(OfficeSpace, value.data);
|
||||||
}
|
}
|
||||||
|
|
||||||
Reviver.constructors.OfficeSpace = OfficeSpace;
|
Reviver.constructors.OfficeSpace = OfficeSpace;
|
||||||
@ -1943,6 +1941,12 @@ function Corporation(params={}) {
|
|||||||
this.state = new CorporationState();
|
this.state = new CorporationState();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Corporation.prototype.addFunds = function(amt) {
|
||||||
|
if(!isFinite(amt))
|
||||||
|
console.error('Trying to add invalid amount of funds. Report to a developper.');
|
||||||
|
this.funds = this.funds.plus(amt);
|
||||||
|
}
|
||||||
|
|
||||||
Corporation.prototype.getState = function() {
|
Corporation.prototype.getState = function() {
|
||||||
return this.state.getState();
|
return this.state.getState();
|
||||||
}
|
}
|
||||||
@ -1982,7 +1986,7 @@ Corporation.prototype.process = function() {
|
|||||||
});
|
});
|
||||||
var profit = this.revenue.minus(this.expenses);
|
var profit = this.revenue.minus(this.expenses);
|
||||||
const cycleProfit = profit.times(marketCycles * SecsPerMarketCycle);
|
const cycleProfit = profit.times(marketCycles * SecsPerMarketCycle);
|
||||||
if (isNaN(this.funds)) {
|
if (isNaN(this.funds) || this.funds === Infinity || this.funds === -Infinity) {
|
||||||
dialogBoxCreate("There was an error calculating your Corporations funds and they got reset to 0. " +
|
dialogBoxCreate("There was an error calculating your Corporations funds and they got reset to 0. " +
|
||||||
"This is a bug. Please report to game developer.<br><br>" +
|
"This is a bug. Please report to game developer.<br><br>" +
|
||||||
"(Your funds have been set to $150b for the inconvenience)");
|
"(Your funds have been set to $150b for the inconvenience)");
|
||||||
@ -2001,10 +2005,10 @@ Corporation.prototype.process = function() {
|
|||||||
const profit = this.numShares * dividendsPerShare * (1 - (this.dividendTaxPercentage / 100));
|
const profit = this.numShares * dividendsPerShare * (1 - (this.dividendTaxPercentage / 100));
|
||||||
Player.gainMoney(profit);
|
Player.gainMoney(profit);
|
||||||
Player.recordMoneySource(profit, "corporation");
|
Player.recordMoneySource(profit, "corporation");
|
||||||
this.funds = this.funds.plus(retainedEarnings);
|
this.addFunds(retainedEarnings);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
this.funds = this.funds.plus(cycleProfit);
|
this.addFunds(cycleProfit);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.updateSharePrice();
|
this.updateSharePrice();
|
||||||
@ -2071,7 +2075,7 @@ Corporation.prototype.getInvestment = function() {
|
|||||||
noBtn.innerHML = "Reject";
|
noBtn.innerHML = "Reject";
|
||||||
yesBtn.addEventListener("click", () => {
|
yesBtn.addEventListener("click", () => {
|
||||||
++this.fundingRound;
|
++this.fundingRound;
|
||||||
this.funds = this.funds.plus(funding);
|
this.addFunds(funding);
|
||||||
this.numShares -= investShares;
|
this.numShares -= investShares;
|
||||||
this.rerender();
|
this.rerender();
|
||||||
return yesNoBoxClose();
|
return yesNoBoxClose();
|
||||||
@ -2125,7 +2129,7 @@ Corporation.prototype.goPublic = function() {
|
|||||||
this.sharePrice = initialSharePrice;
|
this.sharePrice = initialSharePrice;
|
||||||
this.issuedShares = numShares;
|
this.issuedShares = numShares;
|
||||||
this.numShares -= numShares;
|
this.numShares -= numShares;
|
||||||
this.funds = this.funds.plus(numShares * initialSharePrice);
|
this.addFunds(numShares * initialSharePrice);
|
||||||
this.rerender();
|
this.rerender();
|
||||||
removeElementById(goPublicPopupId);
|
removeElementById(goPublicPopupId);
|
||||||
dialogBoxCreate(`You took your ${this.name} public and earned ` +
|
dialogBoxCreate(`You took your ${this.name} public and earned ` +
|
||||||
@ -2378,11 +2382,11 @@ Corporation.prototype.clearUI = function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Corporation.prototype.toJSON = function() {
|
Corporation.prototype.toJSON = function() {
|
||||||
return Generic_toJSON("Corporation", this);
|
return Generic_toJSON("Corporation", this);
|
||||||
}
|
}
|
||||||
|
|
||||||
Corporation.fromJSON = function(value) {
|
Corporation.fromJSON = function(value) {
|
||||||
return Generic_fromJSON(Corporation, value.data);
|
return Generic_fromJSON(Corporation, value.data);
|
||||||
}
|
}
|
||||||
|
|
||||||
Reviver.constructors.Corporation = Corporation;
|
Reviver.constructors.Corporation = Corporation;
|
||||||
|
Loading…
Reference in New Issue
Block a user